libbonobo-2.32.1/0000775000076400007640000000000011546334243010564 500000000000000libbonobo-2.32.1/configure0000775000076400007640000171476511546333026012436 00000000000000#! /bin/sh # Guess values for system-dependent variables and create Makefiles. # Generated by GNU Autoconf 2.65 for libbonobo 2.32.1. # # Report bugs to . # # # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, # 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 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. 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" 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. BASH_ENV=/dev/null ENV=/dev/null (unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV export CONFIG_SHELL exec "$CONFIG_SHELL" "$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://bugzilla.gnome.org/enter_bug.cgi?product=bonobo&component=libbonobo $0: about your system, including any error possibly output $0: before this message. Then install a modern shell, or $0: manually run the script under such a shell if you do $0: 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 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=$?; test $as_status -eq 0 && as_status=1 if test "$3"; then as_lineno=${as_lineno-"$2"} as_lineno_stack=as_lineno_stack=$as_lineno_stack $as_echo "$as_me:${as_lineno-$LINENO}: error: $1" >&$3 fi $as_echo "$as_me: error: $1" >&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'" # Check that we are running under the correct shell. SHELL=${CONFIG_SHELL-/bin/sh} case X$lt_ECHO in X*--fallback-echo) # Remove one level of quotation (which was required for Make). ECHO=`echo "$lt_ECHO" | sed 's,\\\\\$\\$0,'$0','` ;; esac ECHO=${lt_ECHO-echo} if test "X$1" = X--no-reexec; then # Discard the --no-reexec flag, and continue. shift elif test "X$1" = X--fallback-echo; then # Avoid inline document here, it may be left over : elif test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' ; then # Yippee, $ECHO works! : else # Restart under the correct shell. exec $SHELL "$0" --no-reexec ${1+"$@"} fi if test "X$1" = X--fallback-echo; then # used as fallback echo shift cat <<_LT_EOF $* _LT_EOF exit 0 fi # The HP-UX ksh and POSIX shell print the target directory to stdout # if CDPATH is set. (unset CDPATH) >/dev/null 2>&1 && unset CDPATH if test -z "$lt_ECHO"; then if test "X${echo_test_string+set}" != Xset; then # find a string as large as possible, as long as the shell can cope with it for cmd in 'sed 50q "$0"' 'sed 20q "$0"' 'sed 10q "$0"' 'sed 2q "$0"' 'echo test'; do # expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ... if { echo_test_string=`eval $cmd`; } 2>/dev/null && { test "X$echo_test_string" = "X$echo_test_string"; } 2>/dev/null then break fi done fi if test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' && echo_testing_string=`{ $ECHO "$echo_test_string"; } 2>/dev/null` && test "X$echo_testing_string" = "X$echo_test_string"; then : else # The Solaris, AIX, and Digital Unix default echo programs unquote # backslashes. This makes it impossible to quote backslashes using # echo "$something" | sed 's/\\/\\\\/g' # # So, first we look for a working echo in the user's PATH. lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR for dir in $PATH /usr/ucb; do IFS="$lt_save_ifs" if (test -f $dir/echo || test -f $dir/echo$ac_exeext) && test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' && echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` && test "X$echo_testing_string" = "X$echo_test_string"; then ECHO="$dir/echo" break fi done IFS="$lt_save_ifs" if test "X$ECHO" = Xecho; then # We didn't find a better echo, so look for alternatives. if test "X`{ print -r '\t'; } 2>/dev/null`" = 'X\t' && echo_testing_string=`{ print -r "$echo_test_string"; } 2>/dev/null` && test "X$echo_testing_string" = "X$echo_test_string"; then # This shell has a builtin print -r that does the trick. ECHO='print -r' elif { test -f /bin/ksh || test -f /bin/ksh$ac_exeext; } && test "X$CONFIG_SHELL" != X/bin/ksh; then # If we have ksh, try running configure again with it. ORIGINAL_CONFIG_SHELL=${CONFIG_SHELL-/bin/sh} export ORIGINAL_CONFIG_SHELL CONFIG_SHELL=/bin/ksh export CONFIG_SHELL exec $CONFIG_SHELL "$0" --no-reexec ${1+"$@"} else # Try using printf. ECHO='printf %s\n' if test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' && echo_testing_string=`{ $ECHO "$echo_test_string"; } 2>/dev/null` && test "X$echo_testing_string" = "X$echo_test_string"; then # Cool, printf works : elif echo_testing_string=`($ORIGINAL_CONFIG_SHELL "$0" --fallback-echo '\t') 2>/dev/null` && test "X$echo_testing_string" = 'X\t' && echo_testing_string=`($ORIGINAL_CONFIG_SHELL "$0" --fallback-echo "$echo_test_string") 2>/dev/null` && test "X$echo_testing_string" = "X$echo_test_string"; then CONFIG_SHELL=$ORIGINAL_CONFIG_SHELL export CONFIG_SHELL SHELL="$CONFIG_SHELL" export SHELL ECHO="$CONFIG_SHELL $0 --fallback-echo" elif echo_testing_string=`($CONFIG_SHELL "$0" --fallback-echo '\t') 2>/dev/null` && test "X$echo_testing_string" = 'X\t' && echo_testing_string=`($CONFIG_SHELL "$0" --fallback-echo "$echo_test_string") 2>/dev/null` && test "X$echo_testing_string" = "X$echo_test_string"; then ECHO="$CONFIG_SHELL $0 --fallback-echo" else # maybe with a smaller string... prev=: for cmd in 'echo test' 'sed 2q "$0"' 'sed 10q "$0"' 'sed 20q "$0"' 'sed 50q "$0"'; do if { test "X$echo_test_string" = "X`eval $cmd`"; } 2>/dev/null then break fi prev="$cmd" done if test "$prev" != 'sed 50q "$0"'; then echo_test_string=`eval $prev` export echo_test_string exec ${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}} "$0" ${1+"$@"} else # Oops. We lost completely, so just stick with echo. ECHO=echo fi fi fi fi fi fi # Copy echo and quote the copy suitably for passing to libtool from # the Makefile, instead of quoting the original, which is used later. lt_ECHO=$ECHO if test "X$lt_ECHO" = "X$CONFIG_SHELL $0 --fallback-echo"; then lt_ECHO="$CONFIG_SHELL \\\$\$0 --fallback-echo" fi test -n "$DJDIR" || exec 7<&0 &1 # Name of the host. # hostname on some systems (SVR3.2, 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='libbonobo' PACKAGE_TARNAME='libbonobo' PACKAGE_VERSION='2.32.1' PACKAGE_STRING='libbonobo 2.32.1' PACKAGE_BUGREPORT='http://bugzilla.gnome.org/enter_bug.cgi?product=bonobo&component=libbonobo' PACKAGE_URL='' ac_unique_file="bonobo/bonobo-moniker.h" # 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 IF_CYGWIN_PS IF_POSIX_PS IF_BSD_PS BONOBO_SLAY PS_PATH PERL_PATH GTK_DOC_USE_REBASE_FALSE GTK_DOC_USE_REBASE_TRUE GTK_DOC_USE_LIBTOOL_FALSE GTK_DOC_USE_LIBTOOL_TRUE GTK_DOC_BUILD_PDF_FALSE GTK_DOC_BUILD_PDF_TRUE GTK_DOC_BUILD_HTML_FALSE GTK_DOC_BUILD_HTML_TRUE ENABLE_GTK_DOC_FALSE ENABLE_GTK_DOC_TRUE HTML_DIR GTKDOC_MKPDF GTKDOC_REBASE GTKDOC_CHECK GLIB_GENMARSHAL GTHREAD_LIBS GTHREAD_CFLAGS ORBIT_IDL DISABLE_DEPRECATED_CFLAGS SERVER_LIBS SERVER_CFLAGS LIBBONOBO_LIBS LIBBONOBO_CFLAGS PKG_CONFIG WARN_CFLAGS ACLOCAL_AMFLAGS MKINSTALLDIRS POSUB POFILES PO_IN_DATADIR_FALSE PO_IN_DATADIR_TRUE INTLLIBS INSTOBJEXT GMOFILES CATOBJEXT CATALOGS MSGFMT_OPTS GETTEXT_PACKAGE 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_EXTRACT INTLTOOL_MERGE INTLTOOL_UPDATE USE_NLS YFLAGS YACC OTOOL64 OTOOL LIPO NMEDIT DSYMUTIL lt_ECHO RANLIB AR NM ac_ct_DUMPBIN DUMPBIN LD FGREP LIBTOOL OBJDUMP DLLTOOL AS LN_S EGREP GREP CPP LFLAGS LEXLIB LEX_OUTPUT_ROOT LEX SED am__fastdepCC_FALSE am__fastdepCC_TRUE CCDEPMODE AMDEPBACKSLASH AMDEP_FALSE AMDEP_TRUE am__quote am__include DEPDIR OBJEXT EXEEXT ac_ct_CC CPPFLAGS LDFLAGS CFLAGS CC SEARCHPATHSEP SOPREFIX OS_WIN32_FALSE OS_WIN32_TRUE host_os host_vendor host_cpu host build_os build_vendor build_cpu build BONOBO_ACTIVATION_LT_VERSION_INFO LIBBONOBO_LT_VERSION_INFO MAINT MAINTAINER_MODE_FALSE MAINTAINER_MODE_TRUE BONOBO_MICRO_VERSION BONOBO_MINOR_VERSION BONOBO_MAJOR_VERSION AM_BACKSLASH AM_DEFAULT_VERBOSITY 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_silent_rules enable_maintainer_mode enable_dependency_tracking enable_shared enable_static with_pic enable_fast_install with_gnu_ld enable_libtool_lock enable_nls enable_compile_warnings enable_iso_c enable_threads with_html_dir enable_gtk_doc enable_gtk_doc_html enable_gtk_doc_pdf enable_debug enable_bonobo_activation_debug ' ac_precious_vars='build_alias host_alias target_alias CC CFLAGS LDFLAGS LIBS CPPFLAGS CPP YACC YFLAGS PKG_CONFIG LIBBONOBO_CFLAGS LIBBONOBO_LIBS SERVER_CFLAGS SERVER_LIBS GTHREAD_CFLAGS GTHREAD_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=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 libbonobo 2.32.1 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/libbonobo] --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 libbonobo 2.32.1:";; esac cat <<\_ACEOF Optional Features: --disable-option-checking ignore unrecognized --enable/--with options --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) --enable-FEATURE[=ARG] include FEATURE [ARG=yes] --enable-silent-rules less verbose build output (undo: `make V=1') --disable-silent-rules verbose build output (undo: `make V=0') --enable-maintainer-mode enable make rules and dependencies not useful (and sometimes confusing) to the casual installer --disable-dependency-tracking speeds up one-time build --enable-dependency-tracking do not reject slow dependency extractors --enable-shared[=PKGS] build shared libraries [default=yes] --enable-static[=PKGS] build static libraries [default=yes] --enable-fast-install[=PKGS] optimize for fast installation [default=yes] --disable-libtool-lock avoid locking (might break parallel builds) --disable-nls do not use Native Language Support --enable-compile-warnings=[no/minimum/yes/maximum/error] Turn on compiler warnings --enable-iso-c Try to warn if code is not ISO C --disable-threads Disable multithread support [default=enabled] --enable-gtk-doc use gtk-doc to build documentation [[default=no]] --enable-gtk-doc-html build documentation in html format [[default=yes]] --enable-gtk-doc-pdf build documentation in pdf format [[default=no]] --enable-debug Enable debugging code [default=disabled] --enable-bonobo-activation-debug turn on debugging [default=no] Optional Packages: --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) --with-pic try to use only PIC/non-PIC objects [default=use both] --with-gnu-ld assume the C compiler uses GNU ld [default=no] --with-html-dir=PATH path to installed docs 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 YACC The `Yet Another C Compiler' implementation to use. Defaults to the first program found out of: `bison -y', `byacc', `yacc'. YFLAGS The list of arguments that will be passed by default to $YACC. This script will default YFLAGS to the empty string to avoid a default value of `-d' given by some make applications. PKG_CONFIG path to pkg-config utility LIBBONOBO_CFLAGS C compiler flags for LIBBONOBO, overriding pkg-config LIBBONOBO_LIBS linker flags for LIBBONOBO, overriding pkg-config SERVER_CFLAGS C compiler flags for SERVER, overriding pkg-config SERVER_LIBS linker flags for SERVER, overriding pkg-config GTHREAD_CFLAGS C compiler flags for GTHREAD, overriding pkg-config GTHREAD_LIBS linker flags for GTHREAD, 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 libbonobo configure 2.32.1 generated by GNU Autoconf 2.65 Copyright (C) 2009 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; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} as_fn_set_status $ac_retval } # ac_fn_c_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; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} as_fn_set_status $ac_retval } # ac_fn_c_try_link # 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; } >/dev/null && { 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; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} as_fn_set_status $ac_retval } # ac_fn_c_try_cpp # 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; test "x$as_lineno_stack" = x && { as_lineno=; 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 { as_var=$3; eval "test \"\${$as_var+set}\" = set"; }; 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; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} } # ac_fn_c_check_header_compile # 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 { as_var=$3; eval "test \"\${$as_var+set}\" = set"; }; 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; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} } # ac_fn_c_check_func # 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 { as_var=$3; eval "test \"\${$as_var+set}\" = set"; }; then : { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 $as_echo_n "checking for $2... " >&6; } if { as_var=$3; eval "test \"\${$as_var+set}\" = set"; }; 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.$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;} ( cat <<\_ASBOX ## ----------------------------------------------------------------------------------------- ## ## Report this to http://bugzilla.gnome.org/enter_bug.cgi?product=bonobo&component=libbonobo ## ## ----------------------------------------------------------------------------------------- ## _ASBOX ) | 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 { as_var=$3; eval "test \"\${$as_var+set}\" = set"; }; 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; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} } # ac_fn_c_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 libbonobo $as_me 2.32.1, which was generated by GNU Autoconf 2.65. 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 cat <<\_ASBOX ## ---------------- ## ## Cache variables. ## ## ---------------- ## _ASBOX 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 cat <<\_ASBOX ## ----------------- ## ## Output variables. ## ## ----------------- ## _ASBOX 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 cat <<\_ASBOX ## ------------------- ## ## File substitutions. ## ## ------------------- ## _ASBOX 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 cat <<\_ASBOX ## ----------- ## ## confdefs.h. ## ## ----------- ## _ASBOX 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 ac_site_file1=$CONFIG_SITE 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" 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 ac_config_headers="$ac_config_headers config.h" am__api_version='1.11' ac_aux_dir= for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do for ac_t in install-sh install.sh shtool; do if test -f "$ac_dir/$ac_t"; then ac_aux_dir=$ac_dir ac_install_sh="$ac_aux_dir/$ac_t -c" break 2 fi done 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 test "${ac_cv_path_install+set}" = set; 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 test "${ac_cv_prog_STRIP+set}" = set; 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 test "${ac_cv_prog_ac_ct_STRIP+set}" = set; 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 test "${ac_cv_path_mkdir+set}" = set; 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 test "${ac_cv_prog_AWK+set}" = set; 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 { as_var=ac_cv_prog_make_${ac_make}_set; eval "test \"\${$as_var+set}\" = set"; }; 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='libbonobo' VERSION='2.32.1' 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. AMTAR=${AMTAR-"${am_missing_run}tar"} am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -' # 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_BACKSLASH='\' BONOBO_MAJOR_VERSION=2 BONOBO_MINOR_VERSION=32 BONOBO_MICRO_VERSION=1 { $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 LIBBONOBO_LT_VERSION_INFO='-version-info 0:0:0' BONOBO_ACTIVATION_LT_VERSION_INFO='-version-info 4:0:0' # 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 test "${ac_cv_build+set}" = set; 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 test "${ac_cv_host+set}" = set; 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 case "$host" in *-*-cygwin*) os_win32=no SOPREFIX=cyg ;; *-*-mingw*) os_win32=yes SOPREFIX=lib # Autoconf also puts stuff in configure to set PATH_SEPARATOR, but # if you run the configure script with a Cygwin shell, it gets set # to ":" while we do want the semicolon here. SEARCHPATHSEP=";" ;; *) os_win32=no SOPREFIX=lib SEARCHPATHSEP=":" $as_echo "#define HAVE_DBUS 1" >>confdefs.h ;; esac if test $os_win32 = yes; then OS_WIN32_TRUE= OS_WIN32_FALSE='#' else OS_WIN32_TRUE='#' OS_WIN32_FALSE= fi if test "$os_win32" = "yes"; then if test x$enable_static = xyes -o x$enable_static = x; then { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Disabling static library build, must build as DLL on Windows." >&5 $as_echo "$as_me: WARNING: Disabling static library build, must build as DLL on Windows." >&2;} enable_static=no fi if test x$enable_shared = xno; then { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Enabling shared library build, must build as DLL on Windows." >&5 $as_echo "$as_me: WARNING: Enabling shared library build, must build as DLL on Windows." >&2;} fi enable_shared=yes fi 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='\' 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 test "${ac_cv_prog_CC+set}" = set; 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 test "${ac_cv_prog_ac_ct_CC+set}" = set; 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 test "${ac_cv_prog_CC+set}" = set; 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 test "${ac_cv_prog_CC+set}" = set; 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 test "${ac_cv_prog_CC+set}" = set; 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 test "${ac_cv_prog_ac_ct_CC+set}" = set; 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_set_status 77 as_fn_error "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 test "${ac_cv_objext+set}" = set; 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 test "${ac_cv_c_compiler_gnu+set}" = set; 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 test "${ac_cv_prog_cc_g+set}" = set; 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 test "${ac_cv_prog_cc_c89+set}" = set; 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 test "${am_cv_CC_dependencies_compiler_type+set}" = set; 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'. 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 ;; 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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing strerror" >&5 $as_echo_n "checking for library containing strerror... " >&6; } if test "${ac_cv_search_strerror+set}" = set; 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 test "${ac_cv_search_strerror+set}" = set; then : break fi done if test "${ac_cv_search_strerror+set}" = set; 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 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 test "${ac_cv_prog_CC+set}" = set; 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 test "${ac_cv_prog_ac_ct_CC+set}" = set; 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 test "${ac_cv_prog_CC+set}" = set; 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 test "${ac_cv_prog_CC+set}" = set; 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 test "${ac_cv_prog_CC+set}" = set; 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 test "${ac_cv_prog_ac_ct_CC+set}" = set; 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 test "${ac_cv_c_compiler_gnu+set}" = set; 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 test "${ac_cv_prog_cc_g+set}" = set; 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 test "${ac_cv_prog_cc_c89+set}" = set; 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 test "${am_cv_CC_dependencies_compiler_type+set}" = set; 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'. 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 ;; 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 { $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 test "${ac_cv_path_SED+set}" = set; 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 for ac_prog in flex lex 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 test "${ac_cv_prog_LEX+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$LEX"; then ac_cv_prog_LEX="$LEX" # 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_LEX="$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 LEX=$ac_cv_prog_LEX if test -n "$LEX"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LEX" >&5 $as_echo "$LEX" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi test -n "$LEX" && break done test -n "$LEX" || LEX=":" if test "x$LEX" != "x:"; then cat >conftest.l <<_ACEOF %% a { ECHO; } b { REJECT; } c { yymore (); } d { yyless (1); } e { yyless (input () != 0); } f { unput (yytext[0]); } . { BEGIN INITIAL; } %% #ifdef YYTEXT_POINTER extern char *yytext; #endif int main (void) { return ! yylex () + ! yywrap (); } _ACEOF { { ac_try="$LEX conftest.l" 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 "$LEX conftest.l") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking lex output file root" >&5 $as_echo_n "checking lex output file root... " >&6; } if test "${ac_cv_prog_lex_root+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -f lex.yy.c; then ac_cv_prog_lex_root=lex.yy elif test -f lexyy.c; then ac_cv_prog_lex_root=lexyy else as_fn_error "cannot find output from $LEX; giving up" "$LINENO" 5 fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_lex_root" >&5 $as_echo "$ac_cv_prog_lex_root" >&6; } LEX_OUTPUT_ROOT=$ac_cv_prog_lex_root if test -z "${LEXLIB+set}"; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking lex library" >&5 $as_echo_n "checking lex library... " >&6; } if test "${ac_cv_lib_lex+set}" = set; then : $as_echo_n "(cached) " >&6 else ac_save_LIBS=$LIBS ac_cv_lib_lex='none needed' for ac_lib in '' -lfl -ll; do LIBS="$ac_lib $ac_save_LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ `cat $LEX_OUTPUT_ROOT.c` _ACEOF if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_lex=$ac_lib fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext test "$ac_cv_lib_lex" != 'none needed' && break done LIBS=$ac_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_lex" >&5 $as_echo "$ac_cv_lib_lex" >&6; } test "$ac_cv_lib_lex" != 'none needed' && LEXLIB=$ac_cv_lib_lex fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether yytext is a pointer" >&5 $as_echo_n "checking whether yytext is a pointer... " >&6; } if test "${ac_cv_prog_lex_yytext_pointer+set}" = set; then : $as_echo_n "(cached) " >&6 else # POSIX says lex can declare yytext either as a pointer or an array; the # default is implementation-dependent. Figure out which it is, since # not all implementations provide the %pointer and %array declarations. ac_cv_prog_lex_yytext_pointer=no ac_save_LIBS=$LIBS LIBS="$LEXLIB $ac_save_LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #define YYTEXT_POINTER 1 `cat $LEX_OUTPUT_ROOT.c` _ACEOF if ac_fn_c_try_link "$LINENO"; then : ac_cv_prog_lex_yytext_pointer=yes fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_lex_yytext_pointer" >&5 $as_echo "$ac_cv_prog_lex_yytext_pointer" >&6; } if test $ac_cv_prog_lex_yytext_pointer = yes; then $as_echo "#define YYTEXT_POINTER 1" >>confdefs.h fi rm -f conftest.l $LEX_OUTPUT_ROOT.c fi if test "$LEX" = :; then LEX=${am_missing_run}flex fi if [ "$LEX" != "flex" ]; then as_fn_error "flex is required to build bonobo-activation" "$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 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 test "${ac_cv_prog_CPP+set}" = set; 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.$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.$ac_ext done # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. rm -f 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.$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.$ac_ext done # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. rm -f 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 test "${ac_cv_path_GREP+set}" = set; 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 test "${ac_cv_path_EGREP+set}" = set; 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 test "${ac_cv_header_stdc+set}" = set; 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 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 { $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 { as_var=ac_cv_prog_make_${ac_make}_set; eval "test \"\${$as_var+set}\" = set"; }; 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 enable_win32_dll=yes case $host in *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-cegcc*) if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}as", so it can be a program name with args. set dummy ${ac_tool_prefix}as; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_AS+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$AS"; then ac_cv_prog_AS="$AS" # 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_AS="${ac_tool_prefix}as" $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 AS=$ac_cv_prog_AS if test -n "$AS"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AS" >&5 $as_echo "$AS" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$ac_cv_prog_AS"; then ac_ct_AS=$AS # Extract the first word of "as", so it can be a program name with args. set dummy as; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_ac_ct_AS+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_AS"; then ac_cv_prog_ac_ct_AS="$ac_ct_AS" # 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_AS="as" $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_AS=$ac_cv_prog_ac_ct_AS if test -n "$ac_ct_AS"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AS" >&5 $as_echo "$ac_ct_AS" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_AS" = x; then AS="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 AS=$ac_ct_AS fi else AS="$ac_cv_prog_AS" fi 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 test "${ac_cv_prog_DLLTOOL+set}" = set; 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 test "${ac_cv_prog_ac_ct_DLLTOOL+set}" = set; 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 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 test "${ac_cv_prog_OBJDUMP+set}" = set; 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 test "${ac_cv_prog_ac_ct_OBJDUMP+set}" = set; 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 ;; esac test -z "$AS" && AS=as test -z "$DLLTOOL" && DLLTOOL=dlltool test -z "$OBJDUMP" && OBJDUMP=objdump 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.2.6b' macro_revision='1.3017' ltmain="$ac_aux_dir/ltmain.sh" { $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 test "${ac_cv_path_SED+set}" = set; 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 test "${ac_cv_path_FGREP+set}" = set; 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 test "${lt_cv_path_LD+set}" = set; 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 test "${lt_cv_prog_gnu_ld+set}" = set; 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 test "${lt_cv_path_NM+set}" = set; 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 "$ac_tool_prefix"; then for ac_prog in "dumpbin -symbols" "link -dump -symbols" 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 test "${ac_cv_prog_DUMPBIN+set}" = set; 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 -symbols" "link -dump -symbols" 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 test "${ac_cv_prog_ac_ct_DUMPBIN+set}" = set; 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 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 test "${lt_cv_nm_interface+set}" = set; 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:6272: $ac_compile\"" >&5) (eval "$ac_compile" 2>conftest.err) cat conftest.err >&5 (eval echo "\"\$as_me:6275: $NM \\\"conftest.$ac_objext\\\"\"" >&5) (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out) cat conftest.err >&5 (eval echo "\"\$as_me:6278: 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; } # 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 test "${lt_cv_sys_max_cmd_len+set}" = set; 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; ;; amigaos*) # On AmigaOS with pdksh, this test takes hours, literally. # So we just punt and use a minimum line length of 8192. lt_cv_sys_max_cmd_len=8192; ;; netbsd* | freebsd* | openbsd* | darwin* | dragonfly*) # This has been around since 386BSD, at least. Likely further. if test -x /sbin/sysctl; then lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax` elif test -x /usr/sbin/sysctl; then lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax` else lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs fi # And add a safety zone lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4` lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3` ;; interix*) # We know the value 262144 and hardcode it with a safety zone (like BSD) lt_cv_sys_max_cmd_len=196608 ;; osf*) # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not # nice to cause kernel panics so lets avoid the loop below. # First set a reasonable default. lt_cv_sys_max_cmd_len=16384 # if test -x /sbin/sysconfig; then case `/sbin/sysconfig -q proc exec_disable_arg_limit` in *1*) lt_cv_sys_max_cmd_len=-1 ;; esac fi ;; sco3.2v5*) lt_cv_sys_max_cmd_len=102400 ;; sysv5* | sco5v6* | sysv4.2uw2*) kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null` if test -n "$kargmax"; then lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[ ]//'` else lt_cv_sys_max_cmd_len=32768 fi ;; *) lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null` if test -n "$lt_cv_sys_max_cmd_len"; then lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4` lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3` else # Make teststring a little bigger before we do anything with it. # a 1K string should be a reasonable start. for i in 1 2 3 4 5 6 7 8 ; do teststring=$teststring$teststring done SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}} # If test is not a shell built-in, we'll probably end up computing a # maximum length that is only half of the actual maximum length, but # we can't tell. while { test "X"`$SHELL $0 --fallback-echo "X$teststring$teststring" 2>/dev/null` \ = "XX$teststring$teststring"; } >/dev/null 2>&1 && test $i != 17 # 1/2 MB should be enough do i=`expr $i + 1` teststring=$teststring$teststring done # Only check the string length outside the loop. lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1` teststring= # Add a significant safety factor because C++ compilers can tack on # massive amounts of additional arguments before passing them to the # linker. It appears as though 1/2 is a usable value. lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2` fi ;; esac 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"}, \ = c,a/b,, \ && 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 for $LD option to reload object files" >&5 $as_echo_n "checking for $LD option to reload object files... " >&6; } if test "${lt_cv_ld_reload_flag+set}" = set; 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 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 test "${ac_cv_prog_OBJDUMP+set}" = set; 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 test "${ac_cv_prog_ac_ct_OBJDUMP+set}" = set; 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 test "${lt_cv_deplibs_check_method+set}" = set; 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. if ( file / ) >/dev/null 2>&1; then lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL' lt_cv_file_magic_cmd='func_win32_libid' else lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?' lt_cv_file_magic_cmd='$OBJDUMP -f' fi ;; cegcc) # use the weaker test based on 'objdump'. See mingw*. lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?' lt_cv_file_magic_cmd='$OBJDUMP -f' ;; darwin* | rhapsody*) lt_cv_deplibs_check_method=pass_all ;; freebsd* | dragonfly*) if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then case $host_cpu in i*86 ) # Not sure whether the presence of OpenBSD here was a mistake. # Let's accept both of them until this is cleared up. lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[3-9]86 (compact )?demand paged shared library' lt_cv_file_magic_cmd=/usr/bin/file lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` ;; esac else lt_cv_deplibs_check_method=pass_all fi ;; gnu*) lt_cv_deplibs_check_method=pass_all ;; hpux10.20* | hpux11*) lt_cv_file_magic_cmd=/usr/bin/file case $host_cpu in ia64*) lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - IA64' lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so ;; hppa*64*) lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - PA-RISC [0-9].[0-9]' lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl ;; *) lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|PA-RISC[0-9].[0-9]) shared library' lt_cv_file_magic_test_file=/usr/lib/libc.sl ;; esac ;; interix[3-9]*) # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so|\.a)$' ;; irix5* | irix6* | nonstopux*) case $LD in *-32|*"-32 ") libmagic=32-bit;; *-n32|*"-n32 ") libmagic=N32;; *-64|*"-64 ") libmagic=64-bit;; *) libmagic=never-match;; esac lt_cv_deplibs_check_method=pass_all ;; # This must be Linux ELF. linux* | k*bsd*-gnu) 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_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}ar", so it can be a program name with args. set dummy ${ac_tool_prefix}ar; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_AR+set}" = set; 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}ar" $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 fi if test -z "$ac_cv_prog_AR"; then ac_ct_AR=$AR # Extract the first word of "ar", so it can be a program name with args. set dummy ar; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_ac_ct_AR+set}" = set; 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="ar" $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 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 else AR="$ac_cv_prog_AR" fi test -z "$AR" && AR=ar test -z "$AR_FLAGS" && AR_FLAGS=cru 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 test "${ac_cv_prog_STRIP+set}" = set; 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 test "${ac_cv_prog_ac_ct_STRIP+set}" = set; 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 test "${ac_cv_prog_RANLIB+set}" = set; 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 test "${ac_cv_prog_ac_ct_RANLIB+set}" = set; 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 \$oldlib" ;; *) old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$oldlib" ;; esac old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib" fi # 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 test "${lt_cv_sys_global_symbol_pipe+set}" = set; 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};"\ " /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\ " \$ 0!~/External *\|/{next};"\ " / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\ " {if(hide[section]) next};"\ " {f=0}; \$ 0~/\(\).*\|/{f=1}; {printf f ? \"T \" : \"D \"};"\ " {split(\$ 0, a, /\||\r/); split(a[2], s)};"\ " s[1]~/^[@?]/{print s[1], s[1]; next};"\ " s[1]~prfx {split(s[1],t,\"@\"); print t[1], substr(t[1],length(prfx))}"\ " ' prfx=^$ac_symprfx" else lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[ ]\($symcode$symcode*\)[ ][ ]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'" fi # Check to see that the pipe works correctly. pipe_works=no rm -f conftest* cat > conftest.$ac_ext <<_LT_EOF #ifdef __cplusplus extern "C" { #endif char nm_test_var; void nm_test_func(void); void nm_test_func(void){} #ifdef __cplusplus } #endif int main(){nm_test_var='a';nm_test_func();return(0);} _LT_EOF if { { 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 #ifdef __cplusplus extern "C" { #endif _LT_EOF # Now generate the symbol file. eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext' cat <<_LT_EOF >> conftest.$ac_ext /* The mapping between symbol names and symbols. */ const struct { const char *name; void *address; } lt__PROGRAM__LTX_preloaded_symbols[] = { { "@PROGRAM@", (void *) 0 }, _LT_EOF $SED "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (void *) \&\2},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext cat <<\_LT_EOF >> conftest.$ac_ext {0, (void *) 0} }; /* This works around a problem in FreeBSD linker */ #ifdef FREEBSD_WORKAROUND static const void *lt_preloaded_setup() { return lt__PROGRAM__LTX_preloaded_symbols; } #endif #ifdef __cplusplus } #endif _LT_EOF # Now try linking the two files. mv conftest.$ac_objext conftstm.$ac_objext lt_save_LIBS="$LIBS" lt_save_CFLAGS="$CFLAGS" LIBS="conftstm.$ac_objext" CFLAGS="$CFLAGS$lt_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_save_LIBS" CFLAGS="$lt_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 # 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 7469 "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 test "${lt_cv_cc_needs_belf+set}" = set; 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 ;; sparc*-*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*) LD="${LD-ld} -m elf64_sparc" ;; *) if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then LD="${LD-ld} -64" fi ;; esac ;; esac fi rm -rf conftest* ;; esac need_locks="$enable_libtool_lock" 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 test "${ac_cv_prog_DSYMUTIL+set}" = set; 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 test "${ac_cv_prog_ac_ct_DSYMUTIL+set}" = set; 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 test "${ac_cv_prog_NMEDIT+set}" = set; 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 test "${ac_cv_prog_ac_ct_NMEDIT+set}" = set; 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 test "${ac_cv_prog_LIPO+set}" = set; 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 test "${ac_cv_prog_ac_ct_LIPO+set}" = set; 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 test "${ac_cv_prog_OTOOL+set}" = set; 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 test "${ac_cv_prog_ac_ct_OTOOL+set}" = set; 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 test "${ac_cv_prog_OTOOL64+set}" = set; 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 test "${ac_cv_prog_ac_ct_OTOOL64+set}" = set; 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 test "${lt_cv_apple_cc_single_mod+set}" = set; 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 test -f libconftest.dylib && test ! -s conftest.err && test $_lt_result = 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 test "${lt_cv_ld_exported_symbols_list+set}" = set; 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; } case $host_os in rhapsody* | darwin1.[012]) _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;; darwin1.*) _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;; darwin*) # darwin 5.x on # if running on 10.5 or later, the deployment target defaults # to the OS version, if on x86, and 10.4, the deployment # target defaults to 10.4. Don't you love it? case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in 10.0,*86*-darwin8*|10.0,*-darwin[91]*) _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;; 10.[012]*) _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;; 10.*) _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;; esac ;; esac if test "$lt_cv_apple_cc_single_mod" = "yes"; then _lt_dar_single_mod='$single_module' fi if test "$lt_cv_ld_exported_symbols_list" = "yes"; then _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym' else _lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}' fi if test "$DSYMUTIL" != ":"; then _lt_dsymutil='~$DSYMUTIL $lib || :' else _lt_dsymutil= fi ;; esac # 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 " eval as_val=\$$as_ac_Header if test "x$as_val" = x""yes; then : cat >>confdefs.h <<_ACEOF #define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 _ACEOF fi done 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" = x""yes; then : cat >>confdefs.h <<_ACEOF #define HAVE_DLFCN_H 1 _ACEOF fi done # Set options enable_dlopen=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 --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=yes fi # Check whether --with-pic was given. if test "${with_pic+set}" = set; then : withval=$with_pic; pic_mode="$withval" 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 test "${lt_cv_objdir+set}" = set; 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 # Sed substitution that helps us do robust quoting. It backslashifies # metacharacters that are still active within double-quoted strings. sed_quote_subst='s/\(["`$\\]\)/\\\1/g' # Same as above, but do not quote variable references. double_quote_subst='s/\(["`\\]\)/\\\1/g' # Sed substitution to delay expansion of an escaped shell variable in a # double_quote_subst'ed string. delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g' # Sed substitution to delay expansion of an escaped single quote. delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g' # Sed substitution to avoid accidental globbing in evaled expressions no_glob_subst='s/\*/\\\*/g' # Global variables: ofile=libtool can_build_shared=yes # All known linkers require a `.a' archive for static linking (except MSVC, # which needs '.lib'). libext=a with_gnu_ld="$lt_cv_prog_gnu_ld" old_CC="$CC" old_CFLAGS="$CFLAGS" # Set sane defaults for various variables test -z "$CC" && CC=cc test -z "$LTCC" && LTCC=$CC test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS test -z "$LD" && LD=ld test -z "$ac_objext" && ac_objext=o for cc_temp in $compiler""; do case $cc_temp in compile | *[\\/]compile | ccache | *[\\/]ccache ) ;; distcc | *[\\/]distcc | purify | *[\\/]purify ) ;; \-*) ;; *) break;; esac done cc_basename=`$ECHO "X$cc_temp" | $Xsed -e 's%.*/%%' -e "s%^$host_alias-%%"` # 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 test "${lt_cv_path_MAGIC_CMD+set}" = set; 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 test "${lt_cv_path_MAGIC_CMD+set}" = set; 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* if test -n "$compiler"; then lt_prog_compiler_no_builtin_flag= if test "$GCC" = yes; then lt_prog_compiler_no_builtin_flag=' -fno-builtin' { $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 test "${lt_cv_prog_compiler_rtti_exceptions+set}" = set; 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:8743: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 echo "$as_me:8747: \$? = $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 "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' >conftest.exp $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then 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= { $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 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' ;; 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 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) 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' ;; pgcc* | pgf77* | pgf90* | pgf95*) # 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*) # IBM XL C 8.0/Fortran 10.1 on PPC lt_prog_compiler_wl='-Wl,' lt_prog_compiler_pic='-qpic' lt_prog_compiler_static='-qstaticlink' ;; *) case `$CC -V 2>&1 | sed 5q` in *Sun\ C*) # Sun C 5.9 lt_prog_compiler_pic='-KPIC' lt_prog_compiler_static='-Bstatic' lt_prog_compiler_wl='-Wl,' ;; *Sun\ F*) # 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='' ;; 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*) 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}: result: $lt_prog_compiler_pic" >&5 $as_echo "$lt_prog_compiler_pic" >&6; } # # 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 test "${lt_cv_prog_compiler_pic_works+set}" = set; 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:9082: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 echo "$as_me:9086: \$? = $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 "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' >conftest.exp $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then 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 test "${lt_cv_prog_compiler_static_works+set}" = set; 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 "X$_lt_linker_boilerplate" | $Xsed -e '/^$/d' > conftest.exp $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 if diff conftest.exp conftest.er2 >/dev/null; then 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 test "${lt_cv_prog_compiler_c_o+set}" = set; 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:9187: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 echo "$as_me:9191: \$? = $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 "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' > out/conftest.exp $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2 if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then lt_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 test "${lt_cv_prog_compiler_c_o+set}" = set; 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:9242: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 echo "$as_me:9246: \$? = $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 "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' > out/conftest.exp $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2 if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then lt_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_flag_spec_ld= 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 if test "$with_gnu_ld" = yes; then # If archive_cmds runs LD, not CC, wlarc should be empty wlarc='${wl}' # Set some defaults for GNU ld with shared library support. These # are reset later if shared libraries are not supported. Putting them # here allows them to be overridden if necessary. runpath_var=LD_RUN_PATH 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 *\ [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.9.1, is reported *** to be unable to reliably create shared libraries on AIX. *** Therefore, libtool is disabling shared libraries support. If you *** really care for shared libraries, you may want to modify your PATH *** so that a non-GNU linker is found, and then restart. _LT_EOF fi ;; amigaos*) case $host_cpu in powerpc) # see comment about AmigaOS4 .so support 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' 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/'\'' | $SED -e '\''/^[AITW][ ]/s/.*[ ]//'\'' | sort | uniq > $export_symbols' 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 ;; 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) tmp_diet=no if test "$host_os" = linux-dietlibc; then case $cc_basename in diet\ *) tmp_diet=yes;; # linux-dietlibc with static linking (!diet-dyn) esac fi if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \ && test "$tmp_diet" = no then tmp_addflag= tmp_sharedflag='-shared' case $cc_basename,$host_cpu in pgcc*) # Portland Group C compiler whole_archive_flag_spec='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive' tmp_addflag=' $pic_flag' ;; pgf77* | pgf90* | pgf95*) # Portland Group f77 and f90 compilers whole_archive_flag_spec='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive' tmp_addflag=' $pic_flag -Mnomain' ;; ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64 tmp_addflag=' -i_dynamic' ;; efc*,ia64* | ifort*,ia64*) # Intel Fortran compiler on ia64 tmp_addflag=' -i_dynamic -nofor_main' ;; ifc* | ifort*) # Intel Fortran compiler tmp_addflag=' -nofor_main' ;; lf95*) # Lahey Fortran 8.1 whole_archive_flag_spec= tmp_sharedflag='--shared' ;; xl[cC]*) # IBM XL C 8.0 on PPC (deal with xlf below) tmp_sharedflag='-qmkshrobj' tmp_addflag= ;; esac case `$CC -V 2>&1 | sed 5q` in *Sun\ C*) # Sun C 5.9 whole_archive_flag_spec='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive' 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*) # 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= hardcode_libdir_flag_spec_ld='-rpath $libdir' archive_cmds='$LD -shared $libobjs $deplibs $compiler_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 $compiler_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 $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' 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 $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 ;; 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 $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 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 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")) && (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. 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 } }' aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` # Check for a 64-bit object if we didn't find anything. if test -z "$aix_libpath"; then aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` fi fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; 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 $ECHO "X${wl}${allow_undefined_flag}" | $Xsed; 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. 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 } }' aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` # Check for a 64-bit object if we didn't find anything. if test -z "$aix_libpath"; then aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` fi fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; 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' # Exported symbols can be pulled into shared objects from archives whole_archive_flag_spec='$convenience' 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. 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 `$ECHO "X$deplibs" | $Xsed -e '\''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' fix_srcfile_path='`cygpath -w "$srcfile"`' enable_shared_with_static_runtimes=yes ;; darwin* | rhapsody*) archive_cmds_need_lc=no hardcode_direct=no hardcode_automatic=yes hardcode_shlibpath_var=unsupported whole_archive_flag_spec='' 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=echo 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 ;; freebsd1*) ld_shlibs=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 -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 -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' else 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 -a "$with_gnu_ld" = no; then archive_cmds='$CC -shared -fPIC ${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_flag_spec_ld='+b $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 -a "$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 -fPIC ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' ;; *) archive_cmds='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags' ;; esac else case $host_cpu in hppa*64*) 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' ;; *) archive_cmds='$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 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 $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' # Try to use the -exported_symbol ld option, if it does not # work, assume that -exports_file does not work either and # implicitly export all symbols. save_LDFLAGS="$LDFLAGS" LDFLAGS="$LDFLAGS -shared ${wl}-exported_symbol ${wl}foo ${wl}-update_registry ${wl}/dev/null" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int foo(void) {} _ACEOF if ac_fn_c_try_link "$LINENO"; then : archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations ${wl}-exports_file ${wl}$export_symbols -o $lib' fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LDFLAGS="$save_LDFLAGS" else archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib' archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib' fi 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" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${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" && $ECHO "X-set_version $verstring" | $Xsed` -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} $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' 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" && $ECHO "X-set_version $verstring" | $Xsed` -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 "X-set_version $verstring" | $Xsed` -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 ${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 ${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; } $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 archive_cmds_need_lc=no else archive_cmds_need_lc=yes fi allow_undefined_flag=$lt_save_allow_undefined_flag else cat conftest.err 1>&5 fi $RM conftest* { $as_echo "$as_me:${as_lineno-$LINENO}: result: $archive_cmds_need_lc" >&5 $as_echo "$archive_cmds_need_lc" >&6; } ;; 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 lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e "s,=/,/,g"` if $ECHO "$lt_search_path_spec" | $GREP ';' >/dev/null ; then # if the path contains ";" then we assume it to be the separator # otherwise default to the standard path separator (i.e. ":") - it is # assumed that no part of a normal pathname contains ";" but that should # okay in the real world where ";" in dirpaths is itself problematic. lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED -e 's/;/ /g'` else lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` fi # Ok, now we have the path, separated by spaces, we can step through it # and add multilib dir if necessary. lt_tmp_lt_search_path_spec= lt_multi_os_dir=`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null` for lt_sys_path in $lt_search_path_spec; do if test -d "$lt_sys_path/$lt_multi_os_dir"; then lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path/$lt_multi_os_dir" else test -d "$lt_sys_path" && \ lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path" fi done lt_search_path_spec=`$ECHO $lt_tmp_lt_search_path_spec | awk ' BEGIN {RS=" "; FS="/|\n";} { lt_foo=""; lt_count=0; for (lt_i = NF; lt_i > 0; lt_i--) { if ($lt_i != "" && $lt_i != ".") { if ($lt_i == "..") { lt_count++; } else { if (lt_count == 0) { lt_foo="/" $lt_i lt_foo; } else { lt_count--; } } } } if (lt_foo != "") { lt_freq[lt_foo]++; } if (lt_freq[lt_foo] == 1) { print lt_foo; } }'` sys_lib_search_path_spec=`$ECHO $lt_search_path_spec` else sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" fi library_names_spec= libname_spec='lib$name' soname_spec= shrext_cmds=".so" postinstall_cmds= postuninstall_cmds= finish_cmds= finish_eval= shlibpath_var= shlibpath_overrides_runpath=unknown version_type=none dynamic_linker="$host_os ld.so" sys_lib_dlsearch_path_spec="/lib /usr/lib" need_lib_prefix=unknown hardcode_into_libs=no # when you set need_version to no, make sure it does not cause -set_version # flags to be left without arguments need_version=unknown case $host_os in aix3*) version_type=linux library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a' shlibpath_var=LIBPATH # AIX 3 has no versioning support, so we append a major version to the name. soname_spec='${libname}${release}${shared_ext}$major' ;; aix[4-9]*) version_type=linux need_lib_prefix=no need_version=no hardcode_into_libs=yes if test "$host_cpu" = ia64; then # AIX 5 supports IA64 library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}' shlibpath_var=LD_LIBRARY_PATH else # With GCC up to 2.95.x, collect2 would create an import file # for dependence libraries. The import file would start with # the line `#! .'. This would cause the generated library to # depend on `.', always an invalid library. This was fixed in # development snapshots of GCC prior to 3.0. case $host_os in aix4 | aix4.[01] | aix4.[01].*) if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)' echo ' yes ' echo '#endif'; } | ${CC} -E - | $GREP yes > /dev/null; then : else can_build_shared=no fi ;; esac # AIX (on Power*) has no versioning support, so currently we can not hardcode correct # soname into executable. Probably we can add versioning support to # collect2, so additional links can be useful in future. if test "$aix_use_runtimelinking" = yes; then # If using run time linking (on AIX 4.2 or later) use lib.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=`$ECHO "X$lib" | $Xsed -e '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done' ;; esac ;; beos*) library_names_spec='${libname}${shared_ext}' dynamic_linker="$host_os ld.so" shlibpath_var=LIBRARY_PATH ;; bsdi[45]*) version_type=linux need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir' shlibpath_var=LD_LIBRARY_PATH sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib" sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib" # the default ld.so.conf also contains /usr/contrib/lib and # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow # libtool to hard-code these into programs ;; cygwin* | mingw* | pw32* | cegcc*) version_type=windows shrext_cmds=".dll" need_version=no need_lib_prefix=no case $GCC,$host_os in yes,cygwin* | yes,mingw* | yes,pw32* | yes,cegcc*) library_names_spec='$libname.dll.a' # DLL is installed to $(libdir)/../bin by postinstall_cmds postinstall_cmds='base_file=`basename \${file}`~ dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~ dldir=$destdir/`dirname \$dlpath`~ test -d \$dldir || mkdir -p \$dldir~ $install_prog $dir/$dlname \$dldir/$dlname~ chmod a+x \$dldir/$dlname~ if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then eval '\''$striplib \$dldir/$dlname'\'' || exit \$?; fi' postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~ dlpath=$dir/\$dldll~ $RM \$dlpath' shlibpath_overrides_runpath=yes case $host_os in cygwin*) # Cygwin DLLs use 'cyg' prefix rather than 'lib' soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}' sys_lib_search_path_spec="/usr/lib /lib/w32api /lib /usr/local/lib" ;; mingw* | cegcc*) # MinGW DLLs use traditional 'lib' prefix soname_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}' sys_lib_search_path_spec=`$CC -print-search-dirs | $GREP "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"` if $ECHO "$sys_lib_search_path_spec" | $GREP ';[c-zC-Z]:/' >/dev/null; then # It is most probably a Windows format PATH printed by # mingw gcc, but we are running on Cygwin. Gcc prints its search # path with ; separators, and with drive letters. We can handle the # drive letters (cygwin fileutils understands them), so leave them, # especially as we might pass files found there to a mingw objdump, # which wouldn't understand a cygwinified path. Ahh. sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'` else sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` fi ;; pw32*) # pw32 DLLs use 'pw' prefix rather than 'lib' library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}' ;; esac ;; *) library_names_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext} $libname.lib' ;; esac dynamic_linker='Win32 ld.exe' # FIXME: first we should search . and the directory the executable is in shlibpath_var=PATH ;; darwin* | rhapsody*) dynamic_linker="$host_os dyld" version_type=darwin need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${major}$shared_ext ${libname}$shared_ext' soname_spec='${libname}${release}${major}$shared_ext' shlibpath_overrides_runpath=yes shlibpath_var=DYLD_LIBRARY_PATH shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`' sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib" sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib' ;; dgux*) version_type=linux need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext' soname_spec='${libname}${release}${shared_ext}$major' shlibpath_var=LD_LIBRARY_PATH ;; freebsd1*) dynamic_linker=no ;; freebsd* | dragonfly*) # DragonFly does not have aout. When/if they implement a new # versioning mechanism, adjust this. if test -x /usr/bin/objformat; then objformat=`/usr/bin/objformat` else case $host_os in freebsd[123]*) objformat=aout ;; *) objformat=elf ;; esac fi version_type=freebsd-$objformat case $version_type in freebsd-elf*) library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}' need_version=no need_lib_prefix=no ;; freebsd-*) library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix' need_version=yes ;; esac shlibpath_var=LD_LIBRARY_PATH case $host_os in freebsd2*) shlibpath_overrides_runpath=yes ;; freebsd3.[01]* | freebsdelf3.[01]*) shlibpath_overrides_runpath=yes hardcode_into_libs=yes ;; freebsd3.[2-9]* | freebsdelf3.[2-9]* | \ freebsd4.[0-5] | freebsdelf4.[0-5] | freebsd4.1.1 | freebsdelf4.1.1) shlibpath_overrides_runpath=no hardcode_into_libs=yes ;; *) # from 4.6 on, and DragonFly shlibpath_overrides_runpath=yes hardcode_into_libs=yes ;; esac ;; gnu*) version_type=linux need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' shlibpath_var=LD_LIBRARY_PATH hardcode_into_libs=yes ;; hpux9* | hpux10* | hpux11*) # Give a soname corresponding to the major version so that dld.sl refuses to # link against other versions. version_type=sunos need_lib_prefix=no need_version=no case $host_cpu in ia64*) shrext_cmds='.so' hardcode_into_libs=yes dynamic_linker="$host_os dld.so" shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' if test "X$HPUX_IA64_MODE" = X32; then sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib" else sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64" fi sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec ;; hppa*64*) shrext_cmds='.sl' hardcode_into_libs=yes dynamic_linker="$host_os dld.sl" shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64" sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec ;; *) shrext_cmds='.sl' dynamic_linker="$host_os dld.sl" shlibpath_var=SHLIB_PATH shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' ;; esac # HP-UX runs *really* slowly unless shared libraries are mode 555. postinstall_cmds='chmod 555 $lib' ;; interix[3-9]*) version_type=linux need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=no hardcode_into_libs=yes ;; irix5* | irix6* | nonstopux*) case $host_os in nonstopux*) version_type=nonstopux ;; *) if test "$lt_cv_prog_gnu_ld" = yes; then version_type=linux else version_type=irix fi ;; esac need_lib_prefix=no need_version=no soname_spec='${libname}${release}${shared_ext}$major' library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}' case $host_os in irix5* | nonstopux*) libsuff= shlibsuff= ;; *) case $LD in # libtool.m4 will add one of these switches to LD *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ") libsuff= shlibsuff= libmagic=32-bit;; *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ") libsuff=32 shlibsuff=N32 libmagic=N32;; *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ") libsuff=64 shlibsuff=64 libmagic=64-bit;; *) libsuff= shlibsuff= libmagic=never-match;; esac ;; esac shlibpath_var=LD_LIBRARY${shlibsuff}_PATH shlibpath_overrides_runpath=no sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}" sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}" hardcode_into_libs=yes ;; # No shared lib support for Linux oldld, aout, or coff. linux*oldld* | linux*aout* | linux*coff*) dynamic_linker=no ;; # This must be Linux ELF. linux* | k*bsd*-gnu) version_type=linux need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=no # Some binutils ld are patched to set DT_RUNPATH save_LDFLAGS=$LDFLAGS save_libdir=$libdir eval "libdir=/foo; wl=\"$lt_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 : 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 # 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;/^$/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 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes ;; *nto* | *qnx*) version_type=qnx need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=no hardcode_into_libs=yes dynamic_linker='ldqnx.so' ;; openbsd*) version_type=sunos sys_lib_dlsearch_path_spec="/usr/lib" need_lib_prefix=no # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs. case $host_os in openbsd3.3 | openbsd3.3.*) need_version=yes ;; *) need_version=no ;; esac library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' shlibpath_var=LD_LIBRARY_PATH if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then case $host_os in openbsd2.[89] | openbsd2.[89].*) shlibpath_overrides_runpath=no ;; *) shlibpath_overrides_runpath=yes ;; esac else shlibpath_overrides_runpath=yes fi ;; os2*) libname_spec='$name' shrext_cmds=".dll" need_lib_prefix=no library_names_spec='$libname${shared_ext} $libname.a' dynamic_linker='OS/2 ld.exe' shlibpath_var=LIBPATH ;; osf3* | osf4* | osf5*) version_type=osf need_lib_prefix=no need_version=no soname_spec='${libname}${release}${shared_ext}$major' library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' shlibpath_var=LD_LIBRARY_PATH sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib" sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec" ;; rdos*) dynamic_linker=no ;; solaris*) version_type=linux need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes hardcode_into_libs=yes # ldd complains unless libraries are executable postinstall_cmds='chmod +x $lib' ;; sunos4*) version_type=sunos library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes if test "$with_gnu_ld" = yes; then need_lib_prefix=no fi need_version=yes ;; sysv4 | sysv4.3*) version_type=linux library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' shlibpath_var=LD_LIBRARY_PATH case $host_vendor in sni) shlibpath_overrides_runpath=no need_lib_prefix=no runpath_var=LD_RUN_PATH ;; siemens) need_lib_prefix=no ;; motorola) need_lib_prefix=no need_version=no shlibpath_overrides_runpath=no sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib' ;; esac ;; sysv4*MP*) if test -d /usr/nec ;then version_type=linux library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}' soname_spec='$libname${shared_ext}.$major' shlibpath_var=LD_LIBRARY_PATH fi ;; sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) version_type=freebsd-elf need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes hardcode_into_libs=yes if test "$with_gnu_ld" = yes; then sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib' else sys_lib_search_path_spec='/usr/ccs/lib /usr/lib' case $host_os in sco3.2v5*) sys_lib_search_path_spec="$sys_lib_search_path_spec /lib" ;; esac fi sys_lib_dlsearch_path_spec='/usr/lib' ;; tpf*) # TPF is a cross-target only. Preferred cross-host = GNU/Linux. version_type=linux need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=no hardcode_into_libs=yes ;; uts4*) version_type=linux library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' shlibpath_var=LD_LIBRARY_PATH ;; *) dynamic_linker=no ;; esac { $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 test "${ac_cv_lib_dl_dlopen+set}" = set; 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" = x""yes; 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" = x""yes; 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 test "${ac_cv_lib_dld_shl_load+set}" = set; 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" = x""yes; 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" = x""yes; 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 test "${ac_cv_lib_dl_dlopen+set}" = set; 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" = x""yes; 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 test "${ac_cv_lib_svld_dlopen+set}" = set; 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" = x""yes; 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 test "${ac_cv_lib_dld_dld_link+set}" = set; 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" = x""yes; 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 test "${lt_cv_dlopen_self+set}" = set; 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 11612 "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 void fnord() { int i=42;} int main () { void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW); int status = $lt_dlunknown; if (self) { if (dlsym (self,"fnord")) status = $lt_dlno_uscore; else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; /* dlclose (self); */ } else puts (dlerror ()); return status; } _LT_EOF if { { 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 test "${lt_cv_dlopen_self_static+set}" = set; 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 11708 "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 void fnord() { int i=42;} int main () { void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW); int status = $lt_dlunknown; if (self) { if (dlsym (self,"fnord")) status = $lt_dlno_uscore; else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; /* dlclose (self); */ } else puts (dlerror ()); return status; } _LT_EOF if { { 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" ac_config_commands="$ac_config_commands libtool" # Only expand once: for ac_prog in 'bison -y' byacc 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 test "${ac_cv_prog_YACC+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$YACC"; then ac_cv_prog_YACC="$YACC" # 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_YACC="$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 YACC=$ac_cv_prog_YACC if test -n "$YACC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $YACC" >&5 $as_echo "$YACC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi test -n "$YACC" && break done test -n "$YACC" || YACC="yacc" 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" = x""yes; then : cat >>confdefs.h <<_ACEOF #define HAVE_BIND_TEXTDOMAIN_CODESET 1 _ACEOF fi done # **** # i18n # **** { $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 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; } 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; }'` { $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 test "${ac_cv_path_INTLTOOL_UPDATE+set}" = set; 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 test "${ac_cv_path_INTLTOOL_MERGE+set}" = set; 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 test "${ac_cv_path_INTLTOOL_EXTRACT+set}" = set; 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 INTLTOOL_DESKTOP_RULE='%.desktop: %.desktop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_DIRECTORY_RULE='%.directory: %.directory.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_KEYS_RULE='%.keys: %.keys.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -k -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_PROP_RULE='%.prop: %.prop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_OAF_RULE='%.oaf: %.oaf.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -o -p $(top_srcdir)/po $< $@' INTLTOOL_PONG_RULE='%.pong: %.pong.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_SERVER_RULE='%.server: %.server.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -o -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_SHEET_RULE='%.sheet: %.sheet.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_SOUNDLIST_RULE='%.soundlist: %.soundlist.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_UI_RULE='%.ui: %.ui.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_XML_RULE='%.xml: %.xml.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_XML_NOMERGE_RULE='%.xml: %.xml.in $(INTLTOOL_MERGE) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u /tmp $< $@' INTLTOOL_XAM_RULE='%.xam: %.xml.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_KBD_RULE='%.kbd: %.kbd.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -m -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_CAVES_RULE='%.caves: %.caves.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_SCHEMAS_RULE='%.schemas: %.schemas.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -s -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_THEME_RULE='%.theme: %.theme.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_SERVICE_RULE='%.service: %.service.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_POLICY_RULE='%.policy: %.policy.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' # 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 test "${ac_cv_path_XGETTEXT+set}" = set; 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 test "${ac_cv_path_MSGMERGE+set}" = set; 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 test "${ac_cv_path_MSGFMT+set}" = set; 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 test "${ac_cv_path_GMSGFMT+set}" = set; 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 test "${ac_cv_path_INTLTOOL_PERL+set}" = set; 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" = x""yes; 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 GETTEXT_PACKAGE=libbonobo-2.0 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" = x""yes; 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 test "${am_cv_val_LC_MESSAGES+set}" = set; 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" = x""yes; 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 test "${gt_cv_func_ngettext_libc+set}" = set; 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 test "${gt_cv_func_dgettext_libc+set}" = set; 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" = x""yes; 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 test "${ac_cv_lib_intl_bindtextdomain+set}" = set; 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" = x""yes; then : { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ngettext in -lintl" >&5 $as_echo_n "checking for ngettext in -lintl... " >&6; } if test "${ac_cv_lib_intl_ngettext+set}" = set; 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" = x""yes; then : { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dgettext in -lintl" >&5 $as_echo_n "checking for dgettext in -lintl... " >&6; } if test "${ac_cv_lib_intl_dgettext+set}" = set; 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" = x""yes; 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 test "${ac_cv_lib_intl_ngettext+set}" = set; 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" = x""yes; then : { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dcgettext in -lintl" >&5 $as_echo_n "checking for dcgettext in -lintl... " >&6; } if test "${ac_cv_lib_intl_dcgettext+set}" = set; 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" = x""yes; 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" = x""yes; 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 test "${ac_cv_path_MSGFMT+set}" = set; 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" = x""yes; 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 test "${ac_cv_path_GMSGFMT+set}" = set; 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 test "${ac_cv_path_XGETTEXT+set}" = set; 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" = x""yes; then : CATOBJEXT=.gmo DATADIRNAME=share else CATOBJEXT=.mo DATADIRNAME=lib fi ;; *) 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 ACLOCAL_AMFLAGS="\${ACLOCAL_FLAGS}" if test -n "$ac_macro_dir"; then ACLOCAL_AMFLAGS="-I $ac_macro_dir $ACLOCAL_AMFLAGS" fi # Check whether --enable-compile-warnings was given. if test "${enable_compile_warnings+set}" = set; then : enableval=$enable_compile_warnings; else enable_compile_warnings="yes" fi warnCFLAGS= if test "x$GCC" != xyes; then enable_compile_warnings=no fi warning_flags= realsave_CFLAGS="$CFLAGS" case "$enable_compile_warnings" in no) warning_flags= ;; minimum) warning_flags="-Wall" ;; yes) warning_flags="-Wall -Wmissing-prototypes" ;; maximum|error) warning_flags="-Wall -Wmissing-prototypes -Wnested-externs -Wpointer-arith" CFLAGS="$warning_flags $CFLAGS" for option in -Wno-sign-compare; do SAVE_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS $option" { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether gcc understands $option" >&5 $as_echo_n "checking whether gcc understands $option... " >&6; } cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : has_option=yes else has_option=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext CFLAGS="$SAVE_CFLAGS" { $as_echo "$as_me:${as_lineno-$LINENO}: result: $has_option" >&5 $as_echo "$has_option" >&6; } if test $has_option = yes; then warning_flags="$warning_flags $option" fi unset has_option unset SAVE_CFLAGS done unset option if test "$enable_compile_warnings" = "error" ; then warning_flags="$warning_flags -Werror" fi ;; *) as_fn_error "Unknown argument '$enable_compile_warnings' to --enable-compile-warnings" "$LINENO" 5 ;; esac CFLAGS="$realsave_CFLAGS" { $as_echo "$as_me:${as_lineno-$LINENO}: checking what warning flags to pass to the C compiler" >&5 $as_echo_n "checking what warning flags to pass to the C compiler... " >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: result: $warning_flags" >&5 $as_echo "$warning_flags" >&6; } # Check whether --enable-iso-c was given. if test "${enable_iso_c+set}" = set; then : enableval=$enable_iso_c; else enable_iso_c=no fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking what language compliance flags to pass to the C compiler" >&5 $as_echo_n "checking what language compliance flags to pass to the C compiler... " >&6; } complCFLAGS= if test "x$enable_iso_c" != "xno"; then if test "x$GCC" = "xyes"; then case " $CFLAGS " in *\ \ -ansi\ \ *) ;; *) complCFLAGS="$complCFLAGS -ansi" ;; esac case " $CFLAGS " in *\ \ -pedantic\ \ *) ;; *) complCFLAGS="$complCFLAGS -pedantic" ;; esac fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $complCFLAGS" >&5 $as_echo "$complCFLAGS" >&6; } WARN_CFLAGS="$warning_flags $complCFLAGS" for ac_func in usleep nanosleep sigaction setsid do : as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" eval as_val=\$$as_ac_var if test "x$as_val" = x""yes; then : cat >>confdefs.h <<_ACEOF #define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 _ACEOF fi done for ac_header in sys/wait.h syslog.h do : as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default" eval as_val=\$$as_ac_Header if test "x$as_val" = x""yes; then : cat >>confdefs.h <<_ACEOF #define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 _ACEOF fi done # # Start of pkg-config checks # ORBIT_VERSION=2.11.2 GLIB_VERSION=2.25.7 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 test "${ac_cv_path_PKG_CONFIG+set}" = set; 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 test "${ac_cv_path_ac_pt_PKG_CONFIG+set}" = set; 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 LIBBONOBO" >&5 $as_echo_n "checking for LIBBONOBO... " >&6; } if test -n "$LIBBONOBO_CFLAGS"; then pkg_cv_LIBBONOBO_CFLAGS="$LIBBONOBO_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"\\ ORBit-2.0 >= \$ORBIT_VERSION \\ ORBit-CosNaming-2.0 >= \$ORBIT_VERSION \\ gmodule-2.0 >= 2.0.1 \\ glib-2.0 >= \$GLIB_VERSION \\ gobject-2.0 >= \$GLIB_VERSION \\ gthread-2.0 >= \$GLIB_VERSION \\ gio-2.0 >= \$GLIB_VERSION\""; } >&5 ($PKG_CONFIG --exists --print-errors "\ ORBit-2.0 >= $ORBIT_VERSION \ ORBit-CosNaming-2.0 >= $ORBIT_VERSION \ gmodule-2.0 >= 2.0.1 \ glib-2.0 >= $GLIB_VERSION \ gobject-2.0 >= $GLIB_VERSION \ gthread-2.0 >= $GLIB_VERSION \ gio-2.0 >= $GLIB_VERSION") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_LIBBONOBO_CFLAGS=`$PKG_CONFIG --cflags "\ ORBit-2.0 >= $ORBIT_VERSION \ ORBit-CosNaming-2.0 >= $ORBIT_VERSION \ gmodule-2.0 >= 2.0.1 \ glib-2.0 >= $GLIB_VERSION \ gobject-2.0 >= $GLIB_VERSION \ gthread-2.0 >= $GLIB_VERSION \ gio-2.0 >= $GLIB_VERSION" 2>/dev/null` else pkg_failed=yes fi else pkg_failed=untried fi if test -n "$LIBBONOBO_LIBS"; then pkg_cv_LIBBONOBO_LIBS="$LIBBONOBO_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"\\ ORBit-2.0 >= \$ORBIT_VERSION \\ ORBit-CosNaming-2.0 >= \$ORBIT_VERSION \\ gmodule-2.0 >= 2.0.1 \\ glib-2.0 >= \$GLIB_VERSION \\ gobject-2.0 >= \$GLIB_VERSION \\ gthread-2.0 >= \$GLIB_VERSION \\ gio-2.0 >= \$GLIB_VERSION\""; } >&5 ($PKG_CONFIG --exists --print-errors "\ ORBit-2.0 >= $ORBIT_VERSION \ ORBit-CosNaming-2.0 >= $ORBIT_VERSION \ gmodule-2.0 >= 2.0.1 \ glib-2.0 >= $GLIB_VERSION \ gobject-2.0 >= $GLIB_VERSION \ gthread-2.0 >= $GLIB_VERSION \ gio-2.0 >= $GLIB_VERSION") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_LIBBONOBO_LIBS=`$PKG_CONFIG --libs "\ ORBit-2.0 >= $ORBIT_VERSION \ ORBit-CosNaming-2.0 >= $ORBIT_VERSION \ gmodule-2.0 >= 2.0.1 \ glib-2.0 >= $GLIB_VERSION \ gobject-2.0 >= $GLIB_VERSION \ gthread-2.0 >= $GLIB_VERSION \ gio-2.0 >= $GLIB_VERSION" 2>/dev/null` else pkg_failed=yes fi else pkg_failed=untried fi if test $pkg_failed = yes; then 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 LIBBONOBO_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "\ ORBit-2.0 >= $ORBIT_VERSION \ ORBit-CosNaming-2.0 >= $ORBIT_VERSION \ gmodule-2.0 >= 2.0.1 \ glib-2.0 >= $GLIB_VERSION \ gobject-2.0 >= $GLIB_VERSION \ gthread-2.0 >= $GLIB_VERSION \ gio-2.0 >= $GLIB_VERSION" 2>&1` else LIBBONOBO_PKG_ERRORS=`$PKG_CONFIG --print-errors "\ ORBit-2.0 >= $ORBIT_VERSION \ ORBit-CosNaming-2.0 >= $ORBIT_VERSION \ gmodule-2.0 >= 2.0.1 \ glib-2.0 >= $GLIB_VERSION \ gobject-2.0 >= $GLIB_VERSION \ gthread-2.0 >= $GLIB_VERSION \ gio-2.0 >= $GLIB_VERSION" 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$LIBBONOBO_PKG_ERRORS" >&5 as_fn_error "Package requirements (\ ORBit-2.0 >= $ORBIT_VERSION \ ORBit-CosNaming-2.0 >= $ORBIT_VERSION \ gmodule-2.0 >= 2.0.1 \ glib-2.0 >= $GLIB_VERSION \ gobject-2.0 >= $GLIB_VERSION \ gthread-2.0 >= $GLIB_VERSION \ gio-2.0 >= $GLIB_VERSION) were not met: $LIBBONOBO_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 LIBBONOBO_CFLAGS and LIBBONOBO_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}: 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 LIBBONOBO_CFLAGS and LIBBONOBO_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 LIBBONOBO_CFLAGS=$pkg_cv_LIBBONOBO_CFLAGS LIBBONOBO_LIBS=$pkg_cv_LIBBONOBO_LIBS { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } : fi pkg_failed=no { $as_echo "$as_me:${as_lineno-$LINENO}: checking for SERVER" >&5 $as_echo_n "checking for SERVER... " >&6; } if test -n "$SERVER_CFLAGS"; then pkg_cv_SERVER_CFLAGS="$SERVER_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"\\ gmodule-2.0 >= 2.0.1 \\ gio-2.0 >= 2.25.5 \\ ORBit-2.0 >= 2.4.0 \\ ORBit-CosNaming-2.0 >= 2.4.0 \\ libxml-2.0 >= 2.4.20\""; } >&5 ($PKG_CONFIG --exists --print-errors "\ gmodule-2.0 >= 2.0.1 \ gio-2.0 >= 2.25.5 \ ORBit-2.0 >= 2.4.0 \ ORBit-CosNaming-2.0 >= 2.4.0 \ libxml-2.0 >= 2.4.20") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_SERVER_CFLAGS=`$PKG_CONFIG --cflags "\ gmodule-2.0 >= 2.0.1 \ gio-2.0 >= 2.25.5 \ ORBit-2.0 >= 2.4.0 \ ORBit-CosNaming-2.0 >= 2.4.0 \ libxml-2.0 >= 2.4.20" 2>/dev/null` else pkg_failed=yes fi else pkg_failed=untried fi if test -n "$SERVER_LIBS"; then pkg_cv_SERVER_LIBS="$SERVER_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"\\ gmodule-2.0 >= 2.0.1 \\ gio-2.0 >= 2.25.5 \\ ORBit-2.0 >= 2.4.0 \\ ORBit-CosNaming-2.0 >= 2.4.0 \\ libxml-2.0 >= 2.4.20\""; } >&5 ($PKG_CONFIG --exists --print-errors "\ gmodule-2.0 >= 2.0.1 \ gio-2.0 >= 2.25.5 \ ORBit-2.0 >= 2.4.0 \ ORBit-CosNaming-2.0 >= 2.4.0 \ libxml-2.0 >= 2.4.20") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_SERVER_LIBS=`$PKG_CONFIG --libs "\ gmodule-2.0 >= 2.0.1 \ gio-2.0 >= 2.25.5 \ ORBit-2.0 >= 2.4.0 \ ORBit-CosNaming-2.0 >= 2.4.0 \ libxml-2.0 >= 2.4.20" 2>/dev/null` else pkg_failed=yes fi else pkg_failed=untried fi if test $pkg_failed = yes; then 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 SERVER_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "\ gmodule-2.0 >= 2.0.1 \ gio-2.0 >= 2.25.5 \ ORBit-2.0 >= 2.4.0 \ ORBit-CosNaming-2.0 >= 2.4.0 \ libxml-2.0 >= 2.4.20" 2>&1` else SERVER_PKG_ERRORS=`$PKG_CONFIG --print-errors "\ gmodule-2.0 >= 2.0.1 \ gio-2.0 >= 2.25.5 \ ORBit-2.0 >= 2.4.0 \ ORBit-CosNaming-2.0 >= 2.4.0 \ libxml-2.0 >= 2.4.20" 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$SERVER_PKG_ERRORS" >&5 as_fn_error "Package requirements (\ gmodule-2.0 >= 2.0.1 \ gio-2.0 >= 2.25.5 \ ORBit-2.0 >= 2.4.0 \ ORBit-CosNaming-2.0 >= 2.4.0 \ libxml-2.0 >= 2.4.20) were not met: $SERVER_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 SERVER_CFLAGS and SERVER_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}: 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 SERVER_CFLAGS and SERVER_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 SERVER_CFLAGS=$pkg_cv_SERVER_CFLAGS SERVER_LIBS=$pkg_cv_SERVER_LIBS { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } : fi if test "$enable_maintainer_mode" = "yes"; then DISABLE_DEPRECATED_CFLAGS="-DG_DISABLE_DEPRECATED -DG_DISABLE_SINGLE_INCLUDES" fi # orbit-idl test x$ORBIT_IDL = x && ORBIT_IDL="`$PKG_CONFIG --variable=orbit_idl ORBit-2.0`" ac_fn_c_check_header_mongrel "$LINENO" "popt.h" "ac_cv_header_popt_h" "$ac_includes_default" if test "x$ac_cv_header_popt_h" = x""yes; then : else as_fn_error "Failed to find popt.h - you may have to adjust your environment" "$LINENO" 5 fi pkg_failed=no { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GTHREAD" >&5 $as_echo_n "checking for GTHREAD... " >&6; } if test -n "$GTHREAD_CFLAGS"; then pkg_cv_GTHREAD_CFLAGS="$GTHREAD_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gthread-2.0 >= \$GLIB_VERSION\""; } >&5 ($PKG_CONFIG --exists --print-errors "gthread-2.0 >= $GLIB_VERSION") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_GTHREAD_CFLAGS=`$PKG_CONFIG --cflags "gthread-2.0 >= $GLIB_VERSION" 2>/dev/null` else pkg_failed=yes fi else pkg_failed=untried fi if test -n "$GTHREAD_LIBS"; then pkg_cv_GTHREAD_LIBS="$GTHREAD_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gthread-2.0 >= \$GLIB_VERSION\""; } >&5 ($PKG_CONFIG --exists --print-errors "gthread-2.0 >= $GLIB_VERSION") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_GTHREAD_LIBS=`$PKG_CONFIG --libs "gthread-2.0 >= $GLIB_VERSION" 2>/dev/null` else pkg_failed=yes fi else pkg_failed=untried fi if test $pkg_failed = yes; then 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 GTHREAD_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "gthread-2.0 >= $GLIB_VERSION" 2>&1` else GTHREAD_PKG_ERRORS=`$PKG_CONFIG --print-errors "gthread-2.0 >= $GLIB_VERSION" 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$GTHREAD_PKG_ERRORS" >&5 as_fn_error "Package requirements (gthread-2.0 >= $GLIB_VERSION) were not met: $GTHREAD_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 GTHREAD_CFLAGS and GTHREAD_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}: 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 GTHREAD_CFLAGS and GTHREAD_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 GTHREAD_CFLAGS=$pkg_cv_GTHREAD_CFLAGS GTHREAD_LIBS=$pkg_cv_GTHREAD_LIBS { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } : fi # checks for working GThread # Aware: "make check" fails with --disable-threads # Check whether --enable-threads was given. if test "${enable_threads+set}" = set; then : enableval=$enable_threads; enable_threads="$enableval" else enable_threads=yes fi if test x$enable_threads != xno; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for working gthread-2.0 support" >&5 $as_echo_n "checking for working gthread-2.0 support... " >&6; } libbonobo_save_CFLAGS=$CFLAGS libbonobo_save_LIBS=$LIBS CFLAGS="$CFLAGS $GTHREAD_CFLAGS" LIBS="$LIBS $GTHREAD_LIBS" if test "$cross_compiling" = yes; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: unknown" >&5 $as_echo "unknown" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Couldn't check for working gthread-2.0 support while crosscompiling " >&5 $as_echo "$as_me: WARNING: Couldn't check for working gthread-2.0 support while crosscompiling " >&2;} else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include int main (void) { if (!g_thread_supported()) g_thread_init(NULL); return NULL == g_mutex_new(); } _ACEOF if ac_fn_c_try_run "$LINENO"; 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_fn_error "No working gthread-2.0 support found, using --disable-threads IS DISCOURAGED" "$LINENO" 5 fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ conftest.$ac_objext conftest.beam conftest.$ac_ext fi CFLAGS=$libbonobo_save_CFLAGS LIBS=$libbonobo_save_LIBS $as_echo "#define HAVE_GTHREADS /**/" >>confdefs.h fi # Checks for Apple Darwin ac_fn_c_check_func "$LINENO" "_NSGetEnviron" "ac_cv_func__NSGetEnviron" if test "x$ac_cv_func__NSGetEnviron" = x""yes; then : have_ns_getenviron=yes fi if test x$have_ns_getenviron = xyes; then $as_echo "#define HAVE_NSGETENVIRON 1" >>confdefs.h fi ac_fn_c_check_header_mongrel "$LINENO" "crt_externs.h" "ac_cv_header_crt_externs_h" "$ac_includes_default" if test "x$ac_cv_header_crt_externs_h" = x""yes; then : have_crt_externs=yes fi if test x$have_crt_externs = xyes; then $as_echo "#define HAVE_CRT_EXTERNS_H 1" >>confdefs.h fi # glib-genmarshal # Extract the first word of "glib-genmarshal", so it can be a program name with args. set dummy glib-genmarshal; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_path_GLIB_GENMARSHAL+set}" = set; then : $as_echo_n "(cached) " >&6 else case $GLIB_GENMARSHAL in [\\/]* | ?:[\\/]*) ac_cv_path_GLIB_GENMARSHAL="$GLIB_GENMARSHAL" # 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_GLIB_GENMARSHAL="$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 GLIB_GENMARSHAL=$ac_cv_path_GLIB_GENMARSHAL if test -n "$GLIB_GENMARSHAL"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GLIB_GENMARSHAL" >&5 $as_echo "$GLIB_GENMARSHAL" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi # Extract the first word of "gtkdoc-check", so it can be a program name with args. set dummy gtkdoc-check; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_path_GTKDOC_CHECK+set}" = set; then : $as_echo_n "(cached) " >&6 else case $GTKDOC_CHECK in [\\/]* | ?:[\\/]*) ac_cv_path_GTKDOC_CHECK="$GTKDOC_CHECK" # 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_GTKDOC_CHECK="$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 GTKDOC_CHECK=$ac_cv_path_GTKDOC_CHECK if test -n "$GTKDOC_CHECK"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GTKDOC_CHECK" >&5 $as_echo "$GTKDOC_CHECK" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi for ac_prog in gtkdoc-rebase do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_path_GTKDOC_REBASE+set}" = set; then : $as_echo_n "(cached) " >&6 else case $GTKDOC_REBASE in [\\/]* | ?:[\\/]*) ac_cv_path_GTKDOC_REBASE="$GTKDOC_REBASE" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS 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_GTKDOC_REBASE="$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 GTKDOC_REBASE=$ac_cv_path_GTKDOC_REBASE if test -n "$GTKDOC_REBASE"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GTKDOC_REBASE" >&5 $as_echo "$GTKDOC_REBASE" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi test -n "$GTKDOC_REBASE" && break done test -n "$GTKDOC_REBASE" || GTKDOC_REBASE="true" # Extract the first word of "gtkdoc-mkpdf", so it can be a program name with args. set dummy gtkdoc-mkpdf; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_path_GTKDOC_MKPDF+set}" = set; then : $as_echo_n "(cached) " >&6 else case $GTKDOC_MKPDF in [\\/]* | ?:[\\/]*) ac_cv_path_GTKDOC_MKPDF="$GTKDOC_MKPDF" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS 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_GTKDOC_MKPDF="$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 GTKDOC_MKPDF=$ac_cv_path_GTKDOC_MKPDF if test -n "$GTKDOC_MKPDF"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GTKDOC_MKPDF" >&5 $as_echo "$GTKDOC_MKPDF" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi # Check whether --with-html-dir was given. if test "${with_html_dir+set}" = set; then : withval=$with_html_dir; else with_html_dir='${datadir}/gtk-doc/html' fi HTML_DIR="$with_html_dir" # Check whether --enable-gtk-doc was given. if test "${enable_gtk_doc+set}" = set; then : enableval=$enable_gtk_doc; else enable_gtk_doc=no fi if test x$enable_gtk_doc = xyes; then if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gtk-doc >= 1.0\""; } >&5 ($PKG_CONFIG --exists --print-errors "gtk-doc >= 1.0") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then : else as_fn_error "You need to have gtk-doc >= 1.0 installed to build $PACKAGE_NAME" "$LINENO" 5 fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build gtk-doc documentation" >&5 $as_echo_n "checking whether to build gtk-doc documentation... " >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_gtk_doc" >&5 $as_echo "$enable_gtk_doc" >&6; } # Check whether --enable-gtk-doc-html was given. if test "${enable_gtk_doc_html+set}" = set; then : enableval=$enable_gtk_doc_html; else enable_gtk_doc_html=yes fi # Check whether --enable-gtk-doc-pdf was given. if test "${enable_gtk_doc_pdf+set}" = set; then : enableval=$enable_gtk_doc_pdf; else enable_gtk_doc_pdf=no fi if test -z "$GTKDOC_MKPDF"; then enable_gtk_doc_pdf=no fi if test x$enable_gtk_doc = xyes; then ENABLE_GTK_DOC_TRUE= ENABLE_GTK_DOC_FALSE='#' else ENABLE_GTK_DOC_TRUE='#' ENABLE_GTK_DOC_FALSE= fi if test x$enable_gtk_doc_html = xyes; then GTK_DOC_BUILD_HTML_TRUE= GTK_DOC_BUILD_HTML_FALSE='#' else GTK_DOC_BUILD_HTML_TRUE='#' GTK_DOC_BUILD_HTML_FALSE= fi if test x$enable_gtk_doc_pdf = xyes; then GTK_DOC_BUILD_PDF_TRUE= GTK_DOC_BUILD_PDF_FALSE='#' else GTK_DOC_BUILD_PDF_TRUE='#' GTK_DOC_BUILD_PDF_FALSE= fi if test -n "$LIBTOOL"; then GTK_DOC_USE_LIBTOOL_TRUE= GTK_DOC_USE_LIBTOOL_FALSE='#' else GTK_DOC_USE_LIBTOOL_TRUE='#' GTK_DOC_USE_LIBTOOL_FALSE= fi if test -n "$GTKDOC_REBASE"; then GTK_DOC_USE_REBASE_TRUE= GTK_DOC_USE_REBASE_FALSE='#' else GTK_DOC_USE_REBASE_TRUE='#' GTK_DOC_USE_REBASE_FALSE= fi # Check whether --enable-debug was given. if test "${enable_debug+set}" = set; then : enableval=$enable_debug; enable_debug="$enableval" else enable_debug=no fi if test x$enable_debug = xyes; then $as_echo "#define G_ENABLE_DEBUG 1" >>confdefs.h fi # Check whether --enable-bonobo-activation-debug was given. if test "${enable_bonobo_activation_debug+set}" = set; then : enableval=$enable_bonobo_activation_debug; enable_bonobo_activation_debug=$enableval else enable_bonobo_activation_debug=no fi if test "x$enable_bonobo_activation_debug" = "xyes"; then $as_echo "#define BONOBO_ACTIVATION_DEBUG 1" >>confdefs.h 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 test "${ac_cv_path_PERL_PATH+set}" = set; then : $as_echo_n "(cached) " >&6 else case $PERL_PATH in [\\/]* | ?:[\\/]*) ac_cv_path_PERL_PATH="$PERL_PATH" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS 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_PERL_PATH="$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 PERL_PATH=$ac_cv_path_PERL_PATH if test -n "$PERL_PATH"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PERL_PATH" >&5 $as_echo "$PERL_PATH" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test -n "$PERL_PATH"; then BONOBO_SLAY=bonobo-slay # Extract the first word of "ps", so it can be a program name with args. set dummy ps; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_path_PS_PATH+set}" = set; then : $as_echo_n "(cached) " >&6 else case $PS_PATH in [\\/]* | ?:[\\/]*) ac_cv_path_PS_PATH="$PS_PATH" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS 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_PS_PATH="$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 PS_PATH=$ac_cv_path_PS_PATH if test -n "$PS_PATH"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PS_PATH" >&5 $as_echo "$PS_PATH" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for POSIX ps" >&5 $as_echo_n "checking for POSIX ps... " >&6; } if test "${ac_cv_prog_ps_posix+set}" = set; then : $as_echo_n "(cached) " >&6 else USER=${USER:-${LOGNAME:-`logname`}} if $PS_PATH -U $USER -opid,args >/dev/null 2>&1; then ac_cv_prog_ps_posix=yes else ac_cv_prog_ps_posix=no fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_ps_posix" >&5 $as_echo "$ac_cv_prog_ps_posix" >&6; } if test "$ac_cv_prog_ps_posix" = yes; then IF_BSD_PS=# else IF_POSIX_PS=# fi case "$target_os" in cygwin*) IF_BSD_PS=# IF_POSIX_PS=# ;; *) IF_CYGWIN_PS=# ;; esac fi # ***************************************************************************** # ***************************************************************************** ac_config_files="$ac_config_files Makefile libbonobo-zip po/Makefile.in idl/Makefile bonobo/Makefile bonobo/libbonobo-2.0.pc bonobo/libbonobo-2.0-uninstalled.pc bonobo-activation/Makefile bonobo-activation/bonobo-activation-2.0.pc bonobo-activation/bonobo-activation-2.0-uninstalled.pc bonobo-activation/bonobo-activation-version.h activation-server/Makefile monikers/Makefile samples/Makefile samples/echo/Makefile utils/Makefile utils/bonobo-slay tests/Makefile tests/test-activation/Makefile tests/models/Makefile doc/Makefile doc/api/Makefile doc/api/figures/Makefile doc/activation/Makefile doc/activation-api/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 test "x$cache_file" != "x/dev/null" && { $as_echo "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5 $as_echo "$as_me: updating cache $cache_file" >&6;} cat confcache >$cache_file 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= 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 "${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 "${OS_WIN32_TRUE}" && test -z "${OS_WIN32_FALSE}"; then as_fn_error "conditional \"OS_WIN32\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${AMDEP_TRUE}" && test -z "${AMDEP_FALSE}"; then as_fn_error "conditional \"AMDEP\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then as_fn_error "conditional \"am__fastdepCC\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then as_fn_error "conditional \"am__fastdepCC\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi ac_config_commands="$ac_config_commands po/stamp-it" if test -z "${ENABLE_GTK_DOC_TRUE}" && test -z "${ENABLE_GTK_DOC_FALSE}"; then as_fn_error "conditional \"ENABLE_GTK_DOC\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${GTK_DOC_BUILD_HTML_TRUE}" && test -z "${GTK_DOC_BUILD_HTML_FALSE}"; then as_fn_error "conditional \"GTK_DOC_BUILD_HTML\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${GTK_DOC_BUILD_PDF_TRUE}" && test -z "${GTK_DOC_BUILD_PDF_FALSE}"; then as_fn_error "conditional \"GTK_DOC_BUILD_PDF\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${GTK_DOC_USE_LIBTOOL_TRUE}" && test -z "${GTK_DOC_USE_LIBTOOL_FALSE}"; then as_fn_error "conditional \"GTK_DOC_USE_LIBTOOL\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${GTK_DOC_USE_REBASE_TRUE}" && test -z "${GTK_DOC_USE_REBASE_FALSE}"; then as_fn_error "conditional \"GTK_DOC_USE_REBASE\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi : ${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. 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 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=$?; test $as_status -eq 0 && as_status=1 if test "$3"; then as_lineno=${as_lineno-"$2"} as_lineno_stack=as_lineno_stack=$as_lineno_stack $as_echo "$as_me:${as_lineno-$LINENO}: error: $1" >&$3 fi $as_echo "$as_me: error: $1" >&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 libbonobo $as_me 2.32.1, which was generated by GNU Autoconf 2.65. 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="\\ libbonobo config.status 2.32.1 configured by $0, generated by GNU Autoconf 2.65, with options \\"\$ac_cs_config\\" Copyright (C) 2009 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=$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"` ;; 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' AS='`$ECHO "X$AS" | $Xsed -e "$delay_single_quote_subst"`' DLLTOOL='`$ECHO "X$DLLTOOL" | $Xsed -e "$delay_single_quote_subst"`' OBJDUMP='`$ECHO "X$OBJDUMP" | $Xsed -e "$delay_single_quote_subst"`' macro_version='`$ECHO "X$macro_version" | $Xsed -e "$delay_single_quote_subst"`' macro_revision='`$ECHO "X$macro_revision" | $Xsed -e "$delay_single_quote_subst"`' enable_shared='`$ECHO "X$enable_shared" | $Xsed -e "$delay_single_quote_subst"`' enable_static='`$ECHO "X$enable_static" | $Xsed -e "$delay_single_quote_subst"`' pic_mode='`$ECHO "X$pic_mode" | $Xsed -e "$delay_single_quote_subst"`' enable_fast_install='`$ECHO "X$enable_fast_install" | $Xsed -e "$delay_single_quote_subst"`' host_alias='`$ECHO "X$host_alias" | $Xsed -e "$delay_single_quote_subst"`' host='`$ECHO "X$host" | $Xsed -e "$delay_single_quote_subst"`' host_os='`$ECHO "X$host_os" | $Xsed -e "$delay_single_quote_subst"`' build_alias='`$ECHO "X$build_alias" | $Xsed -e "$delay_single_quote_subst"`' build='`$ECHO "X$build" | $Xsed -e "$delay_single_quote_subst"`' build_os='`$ECHO "X$build_os" | $Xsed -e "$delay_single_quote_subst"`' SED='`$ECHO "X$SED" | $Xsed -e "$delay_single_quote_subst"`' Xsed='`$ECHO "X$Xsed" | $Xsed -e "$delay_single_quote_subst"`' GREP='`$ECHO "X$GREP" | $Xsed -e "$delay_single_quote_subst"`' EGREP='`$ECHO "X$EGREP" | $Xsed -e "$delay_single_quote_subst"`' FGREP='`$ECHO "X$FGREP" | $Xsed -e "$delay_single_quote_subst"`' LD='`$ECHO "X$LD" | $Xsed -e "$delay_single_quote_subst"`' NM='`$ECHO "X$NM" | $Xsed -e "$delay_single_quote_subst"`' LN_S='`$ECHO "X$LN_S" | $Xsed -e "$delay_single_quote_subst"`' max_cmd_len='`$ECHO "X$max_cmd_len" | $Xsed -e "$delay_single_quote_subst"`' ac_objext='`$ECHO "X$ac_objext" | $Xsed -e "$delay_single_quote_subst"`' exeext='`$ECHO "X$exeext" | $Xsed -e "$delay_single_quote_subst"`' lt_unset='`$ECHO "X$lt_unset" | $Xsed -e "$delay_single_quote_subst"`' lt_SP2NL='`$ECHO "X$lt_SP2NL" | $Xsed -e "$delay_single_quote_subst"`' lt_NL2SP='`$ECHO "X$lt_NL2SP" | $Xsed -e "$delay_single_quote_subst"`' reload_flag='`$ECHO "X$reload_flag" | $Xsed -e "$delay_single_quote_subst"`' reload_cmds='`$ECHO "X$reload_cmds" | $Xsed -e "$delay_single_quote_subst"`' deplibs_check_method='`$ECHO "X$deplibs_check_method" | $Xsed -e "$delay_single_quote_subst"`' file_magic_cmd='`$ECHO "X$file_magic_cmd" | $Xsed -e "$delay_single_quote_subst"`' AR='`$ECHO "X$AR" | $Xsed -e "$delay_single_quote_subst"`' AR_FLAGS='`$ECHO "X$AR_FLAGS" | $Xsed -e "$delay_single_quote_subst"`' STRIP='`$ECHO "X$STRIP" | $Xsed -e "$delay_single_quote_subst"`' RANLIB='`$ECHO "X$RANLIB" | $Xsed -e "$delay_single_quote_subst"`' old_postinstall_cmds='`$ECHO "X$old_postinstall_cmds" | $Xsed -e "$delay_single_quote_subst"`' old_postuninstall_cmds='`$ECHO "X$old_postuninstall_cmds" | $Xsed -e "$delay_single_quote_subst"`' old_archive_cmds='`$ECHO "X$old_archive_cmds" | $Xsed -e "$delay_single_quote_subst"`' CC='`$ECHO "X$CC" | $Xsed -e "$delay_single_quote_subst"`' CFLAGS='`$ECHO "X$CFLAGS" | $Xsed -e "$delay_single_quote_subst"`' compiler='`$ECHO "X$compiler" | $Xsed -e "$delay_single_quote_subst"`' GCC='`$ECHO "X$GCC" | $Xsed -e "$delay_single_quote_subst"`' lt_cv_sys_global_symbol_pipe='`$ECHO "X$lt_cv_sys_global_symbol_pipe" | $Xsed -e "$delay_single_quote_subst"`' lt_cv_sys_global_symbol_to_cdecl='`$ECHO "X$lt_cv_sys_global_symbol_to_cdecl" | $Xsed -e "$delay_single_quote_subst"`' lt_cv_sys_global_symbol_to_c_name_address='`$ECHO "X$lt_cv_sys_global_symbol_to_c_name_address" | $Xsed -e "$delay_single_quote_subst"`' lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='`$ECHO "X$lt_cv_sys_global_symbol_to_c_name_address_lib_prefix" | $Xsed -e "$delay_single_quote_subst"`' objdir='`$ECHO "X$objdir" | $Xsed -e "$delay_single_quote_subst"`' SHELL='`$ECHO "X$SHELL" | $Xsed -e "$delay_single_quote_subst"`' ECHO='`$ECHO "X$ECHO" | $Xsed -e "$delay_single_quote_subst"`' MAGIC_CMD='`$ECHO "X$MAGIC_CMD" | $Xsed -e "$delay_single_quote_subst"`' lt_prog_compiler_no_builtin_flag='`$ECHO "X$lt_prog_compiler_no_builtin_flag" | $Xsed -e "$delay_single_quote_subst"`' lt_prog_compiler_wl='`$ECHO "X$lt_prog_compiler_wl" | $Xsed -e "$delay_single_quote_subst"`' lt_prog_compiler_pic='`$ECHO "X$lt_prog_compiler_pic" | $Xsed -e "$delay_single_quote_subst"`' lt_prog_compiler_static='`$ECHO "X$lt_prog_compiler_static" | $Xsed -e "$delay_single_quote_subst"`' lt_cv_prog_compiler_c_o='`$ECHO "X$lt_cv_prog_compiler_c_o" | $Xsed -e "$delay_single_quote_subst"`' need_locks='`$ECHO "X$need_locks" | $Xsed -e "$delay_single_quote_subst"`' DSYMUTIL='`$ECHO "X$DSYMUTIL" | $Xsed -e "$delay_single_quote_subst"`' NMEDIT='`$ECHO "X$NMEDIT" | $Xsed -e "$delay_single_quote_subst"`' LIPO='`$ECHO "X$LIPO" | $Xsed -e "$delay_single_quote_subst"`' OTOOL='`$ECHO "X$OTOOL" | $Xsed -e "$delay_single_quote_subst"`' OTOOL64='`$ECHO "X$OTOOL64" | $Xsed -e "$delay_single_quote_subst"`' libext='`$ECHO "X$libext" | $Xsed -e "$delay_single_quote_subst"`' shrext_cmds='`$ECHO "X$shrext_cmds" | $Xsed -e "$delay_single_quote_subst"`' extract_expsyms_cmds='`$ECHO "X$extract_expsyms_cmds" | $Xsed -e "$delay_single_quote_subst"`' archive_cmds_need_lc='`$ECHO "X$archive_cmds_need_lc" | $Xsed -e "$delay_single_quote_subst"`' enable_shared_with_static_runtimes='`$ECHO "X$enable_shared_with_static_runtimes" | $Xsed -e "$delay_single_quote_subst"`' export_dynamic_flag_spec='`$ECHO "X$export_dynamic_flag_spec" | $Xsed -e "$delay_single_quote_subst"`' whole_archive_flag_spec='`$ECHO "X$whole_archive_flag_spec" | $Xsed -e "$delay_single_quote_subst"`' compiler_needs_object='`$ECHO "X$compiler_needs_object" | $Xsed -e "$delay_single_quote_subst"`' old_archive_from_new_cmds='`$ECHO "X$old_archive_from_new_cmds" | $Xsed -e "$delay_single_quote_subst"`' old_archive_from_expsyms_cmds='`$ECHO "X$old_archive_from_expsyms_cmds" | $Xsed -e "$delay_single_quote_subst"`' archive_cmds='`$ECHO "X$archive_cmds" | $Xsed -e "$delay_single_quote_subst"`' archive_expsym_cmds='`$ECHO "X$archive_expsym_cmds" | $Xsed -e "$delay_single_quote_subst"`' module_cmds='`$ECHO "X$module_cmds" | $Xsed -e "$delay_single_quote_subst"`' module_expsym_cmds='`$ECHO "X$module_expsym_cmds" | $Xsed -e "$delay_single_quote_subst"`' with_gnu_ld='`$ECHO "X$with_gnu_ld" | $Xsed -e "$delay_single_quote_subst"`' allow_undefined_flag='`$ECHO "X$allow_undefined_flag" | $Xsed -e "$delay_single_quote_subst"`' no_undefined_flag='`$ECHO "X$no_undefined_flag" | $Xsed -e "$delay_single_quote_subst"`' hardcode_libdir_flag_spec='`$ECHO "X$hardcode_libdir_flag_spec" | $Xsed -e "$delay_single_quote_subst"`' hardcode_libdir_flag_spec_ld='`$ECHO "X$hardcode_libdir_flag_spec_ld" | $Xsed -e "$delay_single_quote_subst"`' hardcode_libdir_separator='`$ECHO "X$hardcode_libdir_separator" | $Xsed -e "$delay_single_quote_subst"`' hardcode_direct='`$ECHO "X$hardcode_direct" | $Xsed -e "$delay_single_quote_subst"`' hardcode_direct_absolute='`$ECHO "X$hardcode_direct_absolute" | $Xsed -e "$delay_single_quote_subst"`' hardcode_minus_L='`$ECHO "X$hardcode_minus_L" | $Xsed -e "$delay_single_quote_subst"`' hardcode_shlibpath_var='`$ECHO "X$hardcode_shlibpath_var" | $Xsed -e "$delay_single_quote_subst"`' hardcode_automatic='`$ECHO "X$hardcode_automatic" | $Xsed -e "$delay_single_quote_subst"`' inherit_rpath='`$ECHO "X$inherit_rpath" | $Xsed -e "$delay_single_quote_subst"`' link_all_deplibs='`$ECHO "X$link_all_deplibs" | $Xsed -e "$delay_single_quote_subst"`' fix_srcfile_path='`$ECHO "X$fix_srcfile_path" | $Xsed -e "$delay_single_quote_subst"`' always_export_symbols='`$ECHO "X$always_export_symbols" | $Xsed -e "$delay_single_quote_subst"`' export_symbols_cmds='`$ECHO "X$export_symbols_cmds" | $Xsed -e "$delay_single_quote_subst"`' exclude_expsyms='`$ECHO "X$exclude_expsyms" | $Xsed -e "$delay_single_quote_subst"`' include_expsyms='`$ECHO "X$include_expsyms" | $Xsed -e "$delay_single_quote_subst"`' prelink_cmds='`$ECHO "X$prelink_cmds" | $Xsed -e "$delay_single_quote_subst"`' file_list_spec='`$ECHO "X$file_list_spec" | $Xsed -e "$delay_single_quote_subst"`' variables_saved_for_relink='`$ECHO "X$variables_saved_for_relink" | $Xsed -e "$delay_single_quote_subst"`' need_lib_prefix='`$ECHO "X$need_lib_prefix" | $Xsed -e "$delay_single_quote_subst"`' need_version='`$ECHO "X$need_version" | $Xsed -e "$delay_single_quote_subst"`' version_type='`$ECHO "X$version_type" | $Xsed -e "$delay_single_quote_subst"`' runpath_var='`$ECHO "X$runpath_var" | $Xsed -e "$delay_single_quote_subst"`' shlibpath_var='`$ECHO "X$shlibpath_var" | $Xsed -e "$delay_single_quote_subst"`' shlibpath_overrides_runpath='`$ECHO "X$shlibpath_overrides_runpath" | $Xsed -e "$delay_single_quote_subst"`' libname_spec='`$ECHO "X$libname_spec" | $Xsed -e "$delay_single_quote_subst"`' library_names_spec='`$ECHO "X$library_names_spec" | $Xsed -e "$delay_single_quote_subst"`' soname_spec='`$ECHO "X$soname_spec" | $Xsed -e "$delay_single_quote_subst"`' postinstall_cmds='`$ECHO "X$postinstall_cmds" | $Xsed -e "$delay_single_quote_subst"`' postuninstall_cmds='`$ECHO "X$postuninstall_cmds" | $Xsed -e "$delay_single_quote_subst"`' finish_cmds='`$ECHO "X$finish_cmds" | $Xsed -e "$delay_single_quote_subst"`' finish_eval='`$ECHO "X$finish_eval" | $Xsed -e "$delay_single_quote_subst"`' hardcode_into_libs='`$ECHO "X$hardcode_into_libs" | $Xsed -e "$delay_single_quote_subst"`' sys_lib_search_path_spec='`$ECHO "X$sys_lib_search_path_spec" | $Xsed -e "$delay_single_quote_subst"`' sys_lib_dlsearch_path_spec='`$ECHO "X$sys_lib_dlsearch_path_spec" | $Xsed -e "$delay_single_quote_subst"`' hardcode_action='`$ECHO "X$hardcode_action" | $Xsed -e "$delay_single_quote_subst"`' enable_dlopen='`$ECHO "X$enable_dlopen" | $Xsed -e "$delay_single_quote_subst"`' enable_dlopen_self='`$ECHO "X$enable_dlopen_self" | $Xsed -e "$delay_single_quote_subst"`' enable_dlopen_self_static='`$ECHO "X$enable_dlopen_self_static" | $Xsed -e "$delay_single_quote_subst"`' old_striplib='`$ECHO "X$old_striplib" | $Xsed -e "$delay_single_quote_subst"`' striplib='`$ECHO "X$striplib" | $Xsed -e "$delay_single_quote_subst"`' LTCC='$LTCC' LTCFLAGS='$LTCFLAGS' compiler='$compiler_DEFAULT' # Quote evaled strings. for var in SED \ GREP \ EGREP \ FGREP \ LD \ NM \ LN_S \ lt_SP2NL \ lt_NL2SP \ reload_flag \ deplibs_check_method \ file_magic_cmd \ AR \ AR_FLAGS \ 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 \ SHELL \ ECHO \ lt_prog_compiler_no_builtin_flag \ lt_prog_compiler_wl \ lt_prog_compiler_pic \ lt_prog_compiler_static \ lt_cv_prog_compiler_c_o \ need_locks \ 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_flag_spec_ld \ hardcode_libdir_separator \ fix_srcfile_path \ exclude_expsyms \ include_expsyms \ file_list_spec \ variables_saved_for_relink \ libname_spec \ library_names_spec \ soname_spec \ finish_eval \ old_striplib \ striplib; do case \`eval \\\\\$ECHO "X\\\\\$\$var"\` in *[\\\\\\\`\\"\\\$]*) eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"X\\\$\$var\\" | \\\$Xsed -e \\"\\\$sed_quote_subst\\"\\\`\\\\\\"" ;; *) eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\"" ;; esac done # Double-quote double-evaled strings. for var in 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 \ postinstall_cmds \ postuninstall_cmds \ finish_cmds \ sys_lib_search_path_spec \ sys_lib_dlsearch_path_spec; do case \`eval \\\\\$ECHO "X\\\\\$\$var"\` in *[\\\\\\\`\\"\\\$]*) eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"X\\\$\$var\\" | \\\$Xsed -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\"" ;; *) eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\"" ;; esac done # Fix-up fallback echo if it was mangled by the above quoting rules. case \$lt_ECHO in *'\\\$0 --fallback-echo"') lt_ECHO=\`\$ECHO "X\$lt_ECHO" | \$Xsed -e 's/\\\\\\\\\\\\\\\$0 --fallback-echo"\$/\$0 --fallback-echo"/'\` ;; esac 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 "config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;; "depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;; "libtool") CONFIG_COMMANDS="$CONFIG_COMMANDS libtool" ;; "default-1") CONFIG_COMMANDS="$CONFIG_COMMANDS default-1" ;; "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;; "libbonobo-zip") CONFIG_FILES="$CONFIG_FILES libbonobo-zip" ;; "po/Makefile.in") CONFIG_FILES="$CONFIG_FILES po/Makefile.in" ;; "idl/Makefile") CONFIG_FILES="$CONFIG_FILES idl/Makefile" ;; "bonobo/Makefile") CONFIG_FILES="$CONFIG_FILES bonobo/Makefile" ;; "bonobo/libbonobo-2.0.pc") CONFIG_FILES="$CONFIG_FILES bonobo/libbonobo-2.0.pc" ;; "bonobo/libbonobo-2.0-uninstalled.pc") CONFIG_FILES="$CONFIG_FILES bonobo/libbonobo-2.0-uninstalled.pc" ;; "bonobo-activation/Makefile") CONFIG_FILES="$CONFIG_FILES bonobo-activation/Makefile" ;; "bonobo-activation/bonobo-activation-2.0.pc") CONFIG_FILES="$CONFIG_FILES bonobo-activation/bonobo-activation-2.0.pc" ;; "bonobo-activation/bonobo-activation-2.0-uninstalled.pc") CONFIG_FILES="$CONFIG_FILES bonobo-activation/bonobo-activation-2.0-uninstalled.pc" ;; "bonobo-activation/bonobo-activation-version.h") CONFIG_FILES="$CONFIG_FILES bonobo-activation/bonobo-activation-version.h" ;; "activation-server/Makefile") CONFIG_FILES="$CONFIG_FILES activation-server/Makefile" ;; "monikers/Makefile") CONFIG_FILES="$CONFIG_FILES monikers/Makefile" ;; "samples/Makefile") CONFIG_FILES="$CONFIG_FILES samples/Makefile" ;; "samples/echo/Makefile") CONFIG_FILES="$CONFIG_FILES samples/echo/Makefile" ;; "utils/Makefile") CONFIG_FILES="$CONFIG_FILES utils/Makefile" ;; "utils/bonobo-slay") CONFIG_FILES="$CONFIG_FILES utils/bonobo-slay" ;; "tests/Makefile") CONFIG_FILES="$CONFIG_FILES tests/Makefile" ;; "tests/test-activation/Makefile") CONFIG_FILES="$CONFIG_FILES tests/test-activation/Makefile" ;; "tests/models/Makefile") CONFIG_FILES="$CONFIG_FILES tests/models/Makefile" ;; "doc/Makefile") CONFIG_FILES="$CONFIG_FILES doc/Makefile" ;; "doc/api/Makefile") CONFIG_FILES="$CONFIG_FILES doc/api/Makefile" ;; "doc/api/figures/Makefile") CONFIG_FILES="$CONFIG_FILES doc/api/figures/Makefile" ;; "doc/activation/Makefile") CONFIG_FILES="$CONFIG_FILES doc/activation/Makefile" ;; "doc/activation-api/Makefile") CONFIG_FILES="$CONFIG_FILES doc/activation-api/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= trap 'exit_status=$? { test -z "$tmp" || test ! -d "$tmp" || rm -fr "$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 -n "$tmp" && test -d "$tmp" } || { tmp=./conf$$-$RANDOM (umask 077 && mkdir "$tmp") } || as_fn_error "cannot create a temporary directory in ." "$LINENO" 5 # 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 {' >"$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 >>"\$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 >>"\$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 < "$tmp/subs1.awk" > "$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 $(srcdir), # ${srcdir} and @srcdir@ 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[ ]*=/{ s/:*\$(srcdir):*/:/ s/:*\${srcdir}:*/:/ s/:*@srcdir@:*/:/ s/^\([^=]*=[ ]*\):*/\1/ s/:*$// 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 >"$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_t=`sed -n "/$ac_delim/p" confdefs.h` if test -z "$ac_t"; 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="$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 "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 >"$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 "$tmp/subs.awk" >$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' "$tmp/out"`; test -n "$ac_out"; } && { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' "$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 "$tmp/stdin" case $ac_file in -) cat "$tmp/out" && rm -f "$tmp/out";; *) rm -f "$ac_file" && mv "$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 "$tmp/defines.awk"' "$ac_file_inputs" } >"$tmp/config.h" \ || as_fn_error "could not create $ac_file" "$LINENO" 5 if diff "$ac_file" "$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 "$tmp/config.h" "$ac_file" \ || as_fn_error "could not create $ac_file" "$LINENO" 5 fi else $as_echo "/* $configure_input */" \ && eval '$AWK -f "$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 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="" # ### BEGIN LIBTOOL CONFIG # Assembler program. AS=$AS # DLL creation program. DLLTOOL=$DLLTOOL # Object dumper program. OBJDUMP=$OBJDUMP # 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 # Whether or not to build static libraries. build_old_libs=$enable_static # What type of objects to build. pic_mode=$pic_mode # Whether or not to optimize for fast installation. fast_install=$enable_fast_install # 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 # How to create reloadable object files. reload_flag=$lt_reload_flag reload_cmds=$lt_reload_cmds # 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 # The archiver. AR=$lt_AR AR_FLAGS=$lt_AR_FLAGS # 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 # 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 # The name of the directory that contains temporary libtool files. objdir=$objdir # Shell to use when invoking shell scripts. SHELL=$lt_SHELL # An echo program that does not interpret backslashes. ECHO=$lt_ECHO # 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 # 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 # 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 # 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 # How to pass a linker flag through the compiler. wl=$lt_lt_prog_compiler_wl # Additional compiler flags for building library objects. pic_flag=$lt_lt_prog_compiler_pic # 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 # If ld is used when linking, flag to hardcode \$libdir into a binary # during linking. This must work even if \$libdir does not exist. hardcode_libdir_flag_spec_ld=$lt_hardcode_libdir_flag_spec_ld # 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 # Fix the shell variable \$srcfile for the compiler. fix_srcfile_path=$lt_fix_srcfile_path # 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 # Specify filename containing input files. file_list_spec=$lt_file_list_spec # How to hardcode a shared library path into an executable. hardcode_action=$hardcode_action # ### END LIBTOOL CONFIG _LT_EOF 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 '/^# Generated shell functions inserted here/q' "$ltmain" >> "$cfgfile" \ || (rm -f "$cfgfile"; exit 1) case $xsi_shell in yes) cat << \_LT_EOF >> "$cfgfile" # func_dirname file append nondir_replacement # Compute the dirname of FILE. If nonempty, add APPEND to the result, # otherwise set result to NONDIR_REPLACEMENT. func_dirname () { case ${1} in */*) func_dirname_result="${1%/*}${2}" ;; * ) func_dirname_result="${3}" ;; esac } # func_basename file func_basename () { func_basename_result="${1##*/}" } # func_dirname_and_basename file append nondir_replacement # perform func_basename and func_dirname in a single function # call: # dirname: Compute the dirname of FILE. If nonempty, # add APPEND to the result, otherwise set result # to NONDIR_REPLACEMENT. # value returned in "$func_dirname_result" # basename: Compute filename of FILE. # value retuned in "$func_basename_result" # Implementation must be kept synchronized with func_dirname # and func_basename. For efficiency, we do not delegate to # those functions but instead duplicate the functionality here. func_dirname_and_basename () { case ${1} in */*) func_dirname_result="${1%/*}${2}" ;; * ) func_dirname_result="${3}" ;; esac func_basename_result="${1##*/}" } # func_stripname prefix suffix name # strip PREFIX and SUFFIX off of NAME. # PREFIX and SUFFIX must not contain globbing or regex special # characters, hashes, percent signs, but SUFFIX may contain a leading # dot (in which case that matches only a dot). func_stripname () { # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are # positional parameters, so assign one to ordinary parameter first. func_stripname_result=${3} func_stripname_result=${func_stripname_result#"${1}"} func_stripname_result=${func_stripname_result%"${2}"} } # func_opt_split func_opt_split () { func_opt_split_opt=${1%%=*} func_opt_split_arg=${1#*=} } # func_lo2o object func_lo2o () { case ${1} in *.lo) func_lo2o_result=${1%.lo}.${objext} ;; *) func_lo2o_result=${1} ;; esac } # func_xform libobj-or-source func_xform () { func_xform_result=${1%.*}.lo } # func_arith arithmetic-term... func_arith () { func_arith_result=$(( $* )) } # func_len string # STRING may not start with a hyphen. func_len () { func_len_result=${#1} } _LT_EOF ;; *) # Bourne compatible functions. cat << \_LT_EOF >> "$cfgfile" # func_dirname file append nondir_replacement # Compute the dirname of FILE. If nonempty, add APPEND to the result, # otherwise set result to NONDIR_REPLACEMENT. func_dirname () { # Extract subdirectory from the argument. func_dirname_result=`$ECHO "X${1}" | $Xsed -e "$dirname"` if test "X$func_dirname_result" = "X${1}"; then func_dirname_result="${3}" else func_dirname_result="$func_dirname_result${2}" fi } # func_basename file func_basename () { func_basename_result=`$ECHO "X${1}" | $Xsed -e "$basename"` } # func_stripname prefix suffix name # strip PREFIX and SUFFIX off of NAME. # PREFIX and SUFFIX must not contain globbing or regex special # characters, hashes, percent signs, but SUFFIX may contain a leading # dot (in which case that matches only a dot). # func_strip_suffix prefix name func_stripname () { case ${2} in .*) func_stripname_result=`$ECHO "X${3}" \ | $Xsed -e "s%^${1}%%" -e "s%\\\\${2}\$%%"`;; *) func_stripname_result=`$ECHO "X${3}" \ | $Xsed -e "s%^${1}%%" -e "s%${2}\$%%"`;; esac } # sed scripts: my_sed_long_opt='1s/^\(-[^=]*\)=.*/\1/;q' my_sed_long_arg='1s/^-[^=]*=//' # func_opt_split func_opt_split () { func_opt_split_opt=`$ECHO "X${1}" | $Xsed -e "$my_sed_long_opt"` func_opt_split_arg=`$ECHO "X${1}" | $Xsed -e "$my_sed_long_arg"` } # func_lo2o object func_lo2o () { func_lo2o_result=`$ECHO "X${1}" | $Xsed -e "$lo2o"` } # func_xform libobj-or-source func_xform () { func_xform_result=`$ECHO "X${1}" | $Xsed -e 's/\.[^.]*$/.lo/'` } # func_arith arithmetic-term... func_arith () { func_arith_result=`expr "$@"` } # func_len string # STRING may not start with a hyphen. func_len () { func_len_result=`expr "$1" : ".*" 2>/dev/null || echo $max_cmd_len` } _LT_EOF esac case $lt_shell_append in yes) cat << \_LT_EOF >> "$cfgfile" # func_append var value # Append VALUE to the end of shell variable VAR. func_append () { eval "$1+=\$2" } _LT_EOF ;; *) cat << \_LT_EOF >> "$cfgfile" # func_append var value # Append VALUE to the end of shell variable VAR. func_append () { eval "$1=\$$1\$2" } _LT_EOF ;; esac sed -n '/^# Generated shell functions inserted here/,$p' "$ltmain" >> "$cfgfile" \ || (rm -f "$cfgfile"; exit 1) mv -f "$cfgfile" "$ofile" || (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile") chmod +x "$ofile" ;; "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 $? 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 echo "" echo "bonobo configuration summary:" echo "=============================" echo "" echo "\ Threads : $enable_threads Debug : $enable_debug Bonobo activation debug : $enable_bonobo_activation_debug" echo "" libbonobo-2.32.1/activation-server/0000775000076400007640000000000011546334244014232 500000000000000libbonobo-2.32.1/activation-server/activation-server-corba-extensions.c0000644000076400007640000000524111173072711023236 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ /* * bonobo_activation * * Copyright (C) 2000 Eazel, Inc. * * This library 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 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 * General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this library; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * * Authors: Maciej Stachowiak * */ /* bonobo-activation-corba-extensions.c - CORBA utility functions */ #include #include #include #include #include "server.h" #include "activation-server-corba-extensions.h" char * activation_server_CORBA_Context_get_value (CORBA_Context ctx, const char *propname, const CORBA_char *exception_if_fail, CORBA_Environment *ev) { CORBA_NVList nvout; char *retval; CORBA_Environment local_ev; CORBA_exception_init (&local_ev); retval = NULL; CORBA_Context_get_values (ctx, NULL, 0, (char *) propname, &nvout, &local_ev); if (local_ev._major == CORBA_NO_EXCEPTION) { if (nvout->list->len > 0) { CORBA_NamedValue *nv; int i; nv = NULL; for (i = 0; i < nvout->list->len; i++) { nv = &g_array_index (nvout->list, CORBA_NamedValue, i); if (!strcmp (nv->name, propname)) break; } if (i < nvout->list->len) retval = g_strdup (*(char **) nv->argument._value); } CORBA_NVList_free (nvout, &local_ev); } else { if (exception_if_fail != NULL) { CORBA_exception_set (ev, CORBA_USER_EXCEPTION, exception_if_fail, NULL); } } CORBA_exception_free (&local_ev); return retval; } libbonobo-2.32.1/activation-server/activation-server-main.c0000664000076400007640000004740311433015514020704 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ /* * oafd: OAF CORBA dameon. * * Copyright (C) 1999, 2000 Red Hat, Inc. * Copyright (C) 1999, 2000 Eazel, Inc. * * This library 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 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 * General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this library; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * * Authors: Elliot Lee , * */ #include #include #include #include #include #include #include #include "bonobo-activation/bonobo-activation-private.h" #include "server.h" #include "activation-context.h" #include "activation-context-query.h" #include "object-directory-config-file.h" #include #include #include #include #include #include #include #ifdef HAVE_SYSLOG_H #include #endif #include #include #include #ifdef G_OS_WIN32 #include #include #define _WIN32_WINNT 0x0500 #include static gboolean allocated_new_console = FALSE; #endif static gboolean server_threaded = FALSE; static glong server_guard_depth = 0; static GStaticRecMutex server_guard = G_STATIC_REC_MUTEX_INIT; static PortableServer_POA server_get_poa (void) { PortableServer_POA poa; if (!g_getenv ("BONOBO_ACTIVATION_DISABLE_THREADING")) { server_threaded = TRUE; poa = bonobo_poa_get_threaded (ORBIT_THREAD_HINT_PER_REQUEST); } else { g_warning ("b-a-s running in non-threaded mode"); server_threaded = FALSE; poa = bonobo_poa(); } bonobo_activation_server_fork_init (server_threaded); return poa; } ServerLockState server_lock_drop (void) { glong i, state = server_guard_depth; if (!server_threaded) return 0; #ifdef BONOBO_ACTIVATION_DEBUG fprintf (stderr, "thread %p dropping server guard with depth %ld\n", g_thread_self (), state); #endif server_guard_depth = 0; for (i = 0; i < state; i++) g_static_rec_mutex_unlock (&server_guard); return state; } void server_lock_resume (ServerLockState state) { long i; if (!server_threaded) return; for (i = 0; i < state; i++) g_static_rec_mutex_lock (&server_guard); server_guard_depth = state; #ifdef BONOBO_ACTIVATION_DEBUG fprintf (stderr, "thread %p re-taken server guard with depth %ld\n", g_thread_self (), state); #endif } void server_lock (void) { if (!server_threaded) return; g_static_rec_mutex_lock (&server_guard); server_guard_depth++; fprintf (stderr, "thread %p take guard [%ld]\n", g_thread_self (), server_guard_depth); } void server_unlock (void) { if (!server_threaded) return; fprintf (stderr, "thread %p release guard [%ld]\n", g_thread_self (), server_guard_depth); server_guard_depth--; g_static_rec_mutex_unlock (&server_guard); } #ifdef G_OS_WIN32 #undef SERVERINFODIR #define SERVERINFODIR _bonobo_activation_win32_get_serverinfodir () #undef SERVER_LOCALEDIR #define SERVER_LOCALEDIR _bonobo_activation_win32_get_localedir () #endif /* Win32 */ /* Option values */ static gchar *od_source_dir = NULL; #ifdef BONOBO_ACTIVATION_DEBUG static void debug_queries (void); static gchar *ac_evaluate = NULL; #endif static gboolean server_reg = FALSE; static gboolean output_debug = FALSE; static gboolean server_ac = FALSE; static gint ior_fd = -1; static const GOptionEntry options[] = { {"od-source-dir", '\0', 0, G_OPTION_ARG_FILENAME, &od_source_dir, N_("Directory to read .server files from"), N_("DIRECTORY")}, {"ac-activate", '\0', 0, G_OPTION_ARG_NONE, &server_ac, N_("Serve as an ActivationContext (default is as an ObjectDirectory only)"), NULL}, {"ior-output-fd", '\0', 0, G_OPTION_ARG_INT, &ior_fd, N_("File descriptor to write IOR to"), N_("FD")}, {"register-server", '\0', 0, G_OPTION_ARG_NONE, &server_reg, N_("Register as the user's activation server without locking." " Warning: this option can have dangerous side effects" " on the stability of the user's running session," " and should only be used for debugging purposes"), NULL}, #ifdef BONOBO_ACTIVATION_DEBUG {"evaluate", '\0', 0, G_OPTION_ARG_STRING, &ac_evaluate, N_("Query expression to evaluate"), N_("EXPRESSION")}, #endif {NULL} }; /* Referenced from object-directory-corba.c */ GMainLoop *main_loop = NULL; static GString * build_src_dir (void) { const char *env_od_source_dir; const char *gnome_env_od_source_dir; char *config_file_od_source_dir; char **gnome_dirs; GString *real_od_source_dir; int i; real_od_source_dir = g_string_new (""); env_od_source_dir = g_getenv ("BONOBO_ACTIVATION_PATH"); gnome_env_od_source_dir = g_getenv ("GNOME2_PATH"); config_file_od_source_dir = object_directory_load_config_file (); if (od_source_dir) { g_string_append (real_od_source_dir, od_source_dir); g_string_append_c (real_od_source_dir, G_SEARCHPATH_SEPARATOR); } if (env_od_source_dir) { g_string_append (real_od_source_dir, env_od_source_dir); g_string_append_c (real_od_source_dir, G_SEARCHPATH_SEPARATOR); } if (config_file_od_source_dir) { g_string_append (real_od_source_dir, config_file_od_source_dir); g_free (config_file_od_source_dir); g_string_append_c (real_od_source_dir, G_SEARCHPATH_SEPARATOR); } if (gnome_env_od_source_dir) { GString *gnome_od_source_dir; gnome_dirs = g_strsplit (gnome_env_od_source_dir, G_SEARCHPATH_SEPARATOR_S, -1); gnome_od_source_dir = g_string_new(""); for (i=0; gnome_dirs[i]; i++) { g_string_append (gnome_od_source_dir, gnome_dirs[i]); g_string_append (gnome_od_source_dir, "/lib/bonobo/servers" G_SEARCHPATH_SEPARATOR_S); } g_strfreev (gnome_dirs); g_string_append (real_od_source_dir, gnome_od_source_dir->str); g_string_append_c (real_od_source_dir, G_SEARCHPATH_SEPARATOR); g_string_free (gnome_od_source_dir, TRUE); } g_string_append (real_od_source_dir, SERVERINFODIR); return real_od_source_dir; } #ifdef G_OS_WIN32 static void wait_console_key (void) { SetConsoleTitle ("Bonobo activation server exiting. Type any character to close this window."); printf ("\n" "(Bonobo activation server exiting. Type any character to close this window)\n"); _getch (); } #endif static void log_handler (const gchar *log_domain, GLogLevelFlags log_level, const gchar *message, gpointer user_data) { #ifdef HAVE_SYSLOG_H int syslog_priority; #endif gchar *converted_message; #ifdef BONOBO_ACTIVATION_DEBUG if (log_level & G_LOG_LEVEL_DEBUG && !output_debug) return; #else if (log_level & G_LOG_LEVEL_DEBUG) return; #endif converted_message = g_locale_from_utf8 (message, -1, NULL, NULL, NULL); if (converted_message) message = converted_message; if (output_debug) fprintf (stderr, "%s%s", message, (message[strlen (message) - 1] == '\n' ? "" : "\n")); #ifdef HAVE_SYSLOG_H /* syslog uses reversed meaning of LEVEL_ERROR and LEVEL_CRITICAL */ if (log_level & G_LOG_LEVEL_ERROR) syslog_priority = LOG_CRIT; else if (log_level & G_LOG_LEVEL_CRITICAL) syslog_priority = LOG_ERR; else if (log_level & G_LOG_LEVEL_WARNING) syslog_priority = LOG_WARNING; else if (log_level & G_LOG_LEVEL_MESSAGE) syslog_priority = LOG_NOTICE; else if (log_level & G_LOG_LEVEL_INFO) syslog_priority = LOG_INFO; else if (log_level & G_LOG_LEVEL_DEBUG) syslog_priority = LOG_DEBUG; else syslog_priority = LOG_NOTICE; syslog (syslog_priority, "%s", message); #else if (!(log_level & G_LOG_FLAG_FATAL)) fprintf (stderr, "%s%s", message, (message[strlen (message) - 1] == '\n' ? "" : "\n")); #endif if (log_level & G_LOG_FLAG_FATAL) { fprintf (stderr, "%s%s", message, (message[strlen (message) - 1] == '\n' ? "" : "\n")); #ifdef G_OS_WIN32 if (allocated_new_console) wait_console_key (); #endif _exit (1); } g_free (converted_message); } static int redirect_output (int ior_fd) { int dev_null_fd = -1; if (output_debug) return dev_null_fd; #ifdef G_OS_WIN32 dev_null_fd = open ("NUL:", O_RDWR); #else dev_null_fd = open ("/dev/null", O_RDWR); #endif if (ior_fd != 0) dup2 (dev_null_fd, 0); if (ior_fd != 1) dup2 (dev_null_fd, 1); if (ior_fd != 2) dup2 (dev_null_fd, 2); return dev_null_fd; } static void nameserver_destroy (PortableServer_POA poa, const CORBA_Object reference, CORBA_Environment *ev) { PortableServer_ObjectId *oid; oid = PortableServer_POA_reference_to_id (poa, reference, ev); PortableServer_POA_deactivate_object (poa, oid, ev); CORBA_free (oid); } static void dump_ior (CORBA_ORB orb, int dev_null_fd, CORBA_Environment *ev) { char *ior; FILE *fh; ior = CORBA_ORB_object_to_string (orb, activation_context_get (), ev); fh = NULL; if (ior_fd >= 0) fh = fdopen (ior_fd, "w"); if (fh) { fprintf (fh, "%s\n", ior); fclose (fh); if (ior_fd <= 2) dup2 (dev_null_fd, ior_fd); } else { printf ("%s\n", ior); fflush (stdout); } if (dev_null_fd != -1) close (dev_null_fd); #ifdef BONOBO_ACTIVATION_DEBUG debug_queries (); #endif if (server_reg) { char *fname; fname = _bonobo_activation_ior_fname_get (); fh = g_fopen (fname, "w+"); fprintf (fh, "%s\n", ior); fclose (fh); g_free (fname); } CORBA_free (ior); } static void cleanup_ior_and_lock_files (void) { char *fname; fname = _bonobo_activation_ior_fname_get (); g_unlink (fname); g_free (fname); fname = _bonobo_activation_lock_fname_get (); g_unlink (fname); g_free (fname); } #ifdef HAVE_DBUS static void session_bus_closed_cb (GDBusConnection *conection, gboolean remote_peer_vanished, GError *error, gpointer user_data) { GMainLoop *loop = (GMainLoop *) user_data; if (g_main_loop_is_running (loop)) g_main_loop_quit (loop); } #endif #ifdef G_OS_WIN32 static void ensure_output_visible (gboolean asked_for_it) { if (fileno (stdout) != -1 && _get_osfhandle (fileno (stdout)) != -1) return; typedef BOOL (* WINAPI AttachConsole_t) (DWORD); AttachConsole_t p_AttachConsole = (AttachConsole_t) GetProcAddress (GetModuleHandle ("kernel32.dll"), "AttachConsole"); if (p_AttachConsole != NULL) { if (!AttachConsole (ATTACH_PARENT_PROCESS)) { if (AllocConsole ()) allocated_new_console = TRUE; } freopen ("CONOUT$", "w", stdout); dup2 (fileno (stdout), 1); freopen ("CONOUT$", "w", stderr); dup2 (fileno (stderr), 2); if (allocated_new_console) { SetConsoleTitle ("Bonobo activation server output. You can minimize this window, but don't close it."); if (asked_for_it) printf ("You asked for debugging output by setting the BONOBO_ACTIVATION_DEBUG_OUTPUT\n" "environment variable, so here it is.\n" "\n"); atexit (wait_console_key); } } } #endif int main (int argc, char *argv[]) { PortableServer_POA threaded_poa; CORBA_ORB orb; CORBA_Environment real_ev, *ev; CORBA_Object naming_service, existing; Bonobo_ActivationEnvironment environment; Bonobo_ObjectDirectory od; Bonobo_EventSource event_source; GOptionContext *ctx; int dev_null_fd; #ifdef HAVE_SIGACTION struct sigaction sa; #endif GString *src_dir; #ifdef HAVE_SYSLOG_H gchar *syslog_ident; #endif #ifdef BONOBO_ACTIVATION_DEBUG const gchar *debug_output_env; #endif GError *error = NULL; #ifdef HAVE_DBUS GDBusConnection *connection; #endif #ifdef HAVE_SETSID /* * Become process group leader, detach from controlling * terminal, etc. */ setsid (); #endif /* internationalization. */ setlocale (LC_ALL, ""); bindtextdomain (GETTEXT_PACKAGE, SERVER_LOCALEDIR); textdomain (GETTEXT_PACKAGE); #ifdef SIGPIPE /* Ignore sig-pipe - as normal */ #ifdef HAVE_SIGACTION memset (&sa, 0, sizeof (sa)); sa.sa_handler = SIG_IGN; sigaction (SIGPIPE, &sa, NULL); #else signal (SIGPIPE, SIG_IGN); #endif #endif g_thread_init (NULL); #ifdef BONOBO_ACTIVATION_DEBUG debug_output_env = g_getenv ("BONOBO_ACTIVATION_DEBUG_OUTPUT"); if (debug_output_env && debug_output_env[0] != '\0') { output_debug = TRUE; #ifdef G_OS_WIN32 ensure_output_visible (TRUE); #endif } #endif g_set_prgname ("bonobo-activation-server"); ctx = g_option_context_new (NULL); g_option_context_add_main_entries (ctx, options, GETTEXT_PACKAGE); if (!g_option_context_parse (ctx, &argc, &argv, &error)) { g_printerr ("%s\n", error->message); g_printerr (_("Run '%s --help' to see a full list of available command line options.\n"), g_get_prgname ()); exit(1); } g_option_context_free (ctx); LIBXML_TEST_VERSION; xmlKeepBlanksDefault(0); #ifdef HAVE_SYSLOG_H syslog_ident = g_strdup_printf ("bonobo-activation-server (%s-%u)", g_get_user_name (), (guint) getpid ()); /* openlog does not copy ident string, so we free it on shutdown */ openlog (syslog_ident, 0, LOG_USER); #endif if (server_reg) output_debug = TRUE; if (!output_debug) { g_log_set_fatal_mask (G_LOG_DOMAIN, G_LOG_LEVEL_ERROR | G_LOG_LEVEL_CRITICAL); g_log_set_handler (G_LOG_DOMAIN, G_LOG_LEVEL_MASK | G_LOG_FLAG_FATAL | G_LOG_FLAG_RECURSION, log_handler, NULL); } dev_null_fd = redirect_output (ior_fd); if (!bonobo_init (&argc, argv)) g_warning ("Failed to initialize libbonobo"); orb = bonobo_activation_orb_get (); main_loop = g_main_loop_new (NULL, FALSE); threaded_poa = server_get_poa (); server_lock (); add_initial_locales (); CORBA_exception_init ((ev = &real_ev)); src_dir = build_src_dir (); bonobo_object_directory_init (threaded_poa, src_dir->str, ev); g_string_free (src_dir, TRUE); od = bonobo_object_directory_get (); event_source = bonobo_object_directory_event_source_get(); memset (&environment, 0, sizeof (Bonobo_ActivationEnvironment)); bonobo_activate (); /* activate the ORB */ /* A non-theading poa - naming almost entirely unused */ naming_service = impl_CosNaming_NamingContext__create (bonobo_poa(), ev); if (ev->_major != CORBA_NO_EXCEPTION || naming_service == NULL) g_warning ("Failed to create naming service"); CORBA_exception_init (ev); Bonobo_ObjectDirectory_register_new (od, NAMING_CONTEXT_IID, &environment, naming_service, 0, "", &existing, ev); g_assert (ev->_major == CORBA_NO_EXCEPTION); if (existing != CORBA_OBJECT_NIL) CORBA_Object_release (existing, NULL); Bonobo_ObjectDirectory_register_new (od, EVENT_SOURCE_IID, &environment, event_source, 0, "", &existing, ev); g_assert (ev->_major == CORBA_NO_EXCEPTION); if (existing != CORBA_OBJECT_NIL) CORBA_Object_release (existing, NULL); if (ior_fd < 0 && !server_ac && !server_reg) { #ifdef G_OS_WIN32 ensure_output_visible (FALSE); #endif g_critical ("\n\n-- \nThe bonobo-activation-server must be started by\n" "libbonobo-activation, and cannot be run by itself.\n" "This is due to us doing client side locking.\n-- \n"); } if (server_reg) { g_warning ("Running in user-forked debugging mode"); server_ac = 1; } /* * It is no longer useful at all to be a pure * ObjectDirectory we have binned that mode of * operation, as a bad, racy and inefficient job. */ g_assert (server_ac); activation_context_setup (threaded_poa, od, ev); dump_ior (orb, dev_null_fd, ev); od_finished_internal_registration (); #ifdef HAVE_DBUS connection = g_bus_get_sync (G_BUS_TYPE_SESSION, NULL, &error); if (connection == NULL) { g_warning ("could not associate with desktop session: %s", error->message); g_error_free (error); } else { g_signal_connect (connection, "closed", G_CALLBACK (session_bus_closed_cb), main_loop); g_dbus_connection_set_exit_on_close (connection, FALSE); } #endif if (getenv ("BONOBO_ACTIVATION_DEBUG") == NULL) chdir ("/"); server_unlock (); g_main_loop_run (main_loop); server_lock (); nameserver_destroy (bonobo_poa(), naming_service, ev); CORBA_Object_release (naming_service, ev); bonobo_object_directory_shutdown (threaded_poa, ev); activation_context_shutdown (); cleanup_ior_and_lock_files (); #ifdef HAVE_SYSLOG_H closelog (); g_free (syslog_ident); #endif server_unlock (); return !bonobo_debug_shutdown (); } #ifdef BONOBO_ACTIVATION_DEBUG static void debug_queries (void) { if (ac_evaluate) { QueryExpr *exp; const char *err; QueryContext tmpctx = { NULL, 0, CORBA_OBJECT_NIL }; err = qexp_parse (ac_evaluate, &exp); if (err) { g_print ("Parse error: %s\n", err); } else { QueryExprConst res; qexp_dump (exp); g_print ("\n"); g_print ("Evaluation with no server record is: "); res = qexp_evaluate (NULL, exp, &tmpctx); qexp_constant_dump (&res); g_print ("\n"); } } } #endif libbonobo-2.32.1/activation-server/test-performance.c0000644000076400007640000000252511173072711017570 00000000000000#include #include #include #include #include #include "server.h" static GTimer *timer; #ifdef G_OS_WIN32 /* On Win32, as test-performance isn't installed, we cannot deduce the * "real" installation directory, and must assume that the * configure-time paths are valid. But running test-performance on the * build machine only is the intention anyway. */ const char * server_win32_replace_prefix (const char *configure_time_path) { return g_strdup (configure_time_path); } #endif static void test_server_info_load (void) { int i; char *dirs [] = { SERVERINFODIR, NULL }; Bonobo_ServerInfoList servers; GPtrArray *runtime_servers = g_ptr_array_new (); GHashTable *hash = NULL; fprintf (stderr, "Testing server info load ..."); g_timer_start (timer); for (i = 0; i < 10; i++) bonobo_server_info_load (dirs, &servers, runtime_servers, &hash, bonobo_activation_hostname_get ()); g_hash_table_destroy (hash); fprintf (stderr, " %g(ms)\n", g_timer_elapsed (timer, NULL) * 1000.0 / 10); } int main (int argc, char *argv[]) { free (malloc (8)); timer = g_timer_new (); g_timer_start (timer); add_initial_locales (); test_server_info_load (); if (g_getenv ("_MEMPROF_SOCKET")) { g_warning ("Waiting for memprof\n"); g_main_context_iteration (NULL, TRUE); } return 0; } libbonobo-2.32.1/activation-server/bonobo-activation-server.10000644000076400007640000000203611173072711021146 00000000000000.TH "Bonobo Activation Server" "1" .SH "NAME" .LP bonobo-activation-server \- GNOME component tracker .SH "DESCRIPTION" .LP This application tracks information about installed components and brokers components, in conjunction with its client library; libbonobo-activation. It reads the component descriptions from ${prefix}/lib/bonobo/servers/*.server. These files provide an XML description of a components capabilities which can be queried and manipulated by clients from the client library. Bonobo-activation-server also ensures that the minimum neccessary number of servers for your display setup are running. Bonobo-activation-server executes all components with the environment inherited from the first process to start the server. In addition to using your prefix, it will examine the BONOBO_ACTIVATION_PATH and the GNOME2_PATH environment variables to find .server files. In addition it examines an XML configuration file in ${prefix}/etc/bonobo-activation/bonobo-activation-config.xml For more information see \fBhttp://www.gnome.org\fR. libbonobo-2.32.1/activation-server/object-directory-corba.c0000644000076400007640000012521311173072711020646 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ /* * oafd: OAF CORBA dameon. * * Copyright (C) 1999, 2000 Red Hat, Inc. * Copyright (C) 1999, 2000 Eazel, Inc. * * This library 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 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 * General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this library; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * * Authors: Elliot Lee , * */ #include "config.h" #include #include #include #include #include #include #include #include "server.h" #include "object-directory.h" #include "bonobo-activation/bonobo-activation-private.h" #include "activation-server-corba-extensions.h" #include /* no longer used. */ #define RESIDUAL_SERVERS 0 static GObjectClass *parent_class = NULL; static gboolean finished_internal_registration = FALSE; typedef struct { char *iid; int n_servers; struct { Bonobo_ActivationEnvironment environment; CORBA_Object server; } servers [1]; /* flexible array */ } ActiveServerList; typedef struct { /* client's environment */ Bonobo_ActivationEnvironment *env; /* "runtime" servers registered by this client */ CORBA_sequence_CORBA_string *runtime_iids; } ClientContext; static void client_context_free (ClientContext *self) { CORBA_free (self->env); if (self->runtime_iids) CORBA_free (self->runtime_iids); g_free (self); } static ObjectDirectory *main_dir = NULL; #ifdef BONOBO_ACTIVATION_DEBUG static void od_dump_list (ObjectDirectory * od) { #if 0 int i, j, k; for (i = 0; i < od->attr_servers->_length; i++) { g_print ("IID %s, type %s, location %s\n", od->attr_servers->_buffer[i].iid, od->attr_servers->_buffer[i].server_type, od->attr_servers->_buffer[i].location_info); for (j = 0; j < od->attr_servers->_buffer[i].props._length; j++) { Bonobo_ActivationProperty *prop = &(od->attr_servers->_buffer[i]. props._buffer[j]); if (strchr (prop->name, '-') != NULL) /* Translated, likely to be annoying garbage value */ continue; g_print (" %s = ", prop->name); switch (prop->v._d) { case Bonobo_ACTIVATION_P_STRING: g_print ("\"%s\"\n", prop->v._u.value_string); break; case Bonobo_ACTIVATION_P_NUMBER: g_print ("%f\n", prop->v._u.value_number); break; case Bonobo_ACTIVATION_P_BOOLEAN: g_print ("%s\n", prop->v. _u.value_boolean ? "TRUE" : "FALSE"); break; case Bonobo_ACTIVATION_P_STRINGV: g_print ("["); for (k = 0; k < prop->v._u.value_stringv._length; k++) { g_print ("\"%s\"", prop->v._u. value_stringv._buffer[k]); if (k < (prop->v._u. value_stringv._length - 1)) g_print (", "); } g_print ("]\n"); break; } } } #endif } #endif static gboolean registry_directory_needs_update (ObjectDirectory *od, const char *directory) { gboolean needs_update; struct stat statbuf; time_t old_mtime; if (g_stat (directory, &statbuf) != 0) { return FALSE; } old_mtime = (time_t) g_hash_table_lookup ( od->registry_directory_mtimes, directory); g_hash_table_insert (od->registry_directory_mtimes, (gpointer) directory, (gpointer) statbuf.st_mtime); needs_update = (old_mtime != statbuf.st_mtime); #ifdef BONOBO_ACTIVATION_DEBUG if (needs_update) g_warning ("Compare old_mtime on '%s' with %ld ==? %ld", directory, (long) old_mtime, (long) statbuf.st_mtime); #endif return needs_update; } static void update_registry (ObjectDirectory *od, gboolean force_reload) { int i; time_t cur_time; gboolean must_load; static gboolean doing_reload = FALSE; if (doing_reload) return; doing_reload = TRUE; #ifdef BONOBO_ACTIVATION_DEBUG g_warning ("Update registry %p", od->by_iid); #endif /* get first time init right */ must_load = (od->by_iid == NULL); cur_time = time (NULL); if (cur_time - 5 > od->time_did_stat) { od->time_did_stat = cur_time; for (i = 0; od->registry_source_directories[i] != NULL; i++) { if (registry_directory_needs_update (od, od->registry_source_directories[i])) must_load = TRUE; } } if (must_load || force_reload) { /* * FIXME bugzilla.eazel.com 2727: we should only reload those * directories that have actually changed instead of reloading * all when any has changed. */ #ifdef BONOBO_ACTIVATION_DEBUG g_warning ("Re-load %d %d", must_load, force_reload); #endif if (od->attr_servers) CORBA_free (od->attr_servers); od->attr_servers = CORBA_sequence_Bonobo_ServerInfo__alloc (); bonobo_server_info_load (od->registry_source_directories, od->attr_servers, od->attr_runtime_servers, &od->by_iid, bonobo_activation_hostname_get ()); od->time_did_stat = od->time_list_changed = time (NULL); #ifdef BONOBO_ACTIVATION_DEBUG od_dump_list (od); #endif if (must_load) activation_clients_cache_notify (); } doing_reload = FALSE; } static gchar ** split_path_unique (const char *colon_delimited_path) { int i, max; gboolean different; gchar **ret, **wrk; GSList *l, *tmp = NULL; g_return_val_if_fail (colon_delimited_path != NULL, NULL); wrk = g_strsplit (colon_delimited_path, G_SEARCHPATH_SEPARATOR_S, -1); g_return_val_if_fail (wrk != NULL, NULL); for (max = i = 0; wrk [i]; i++) { different = TRUE; for (l = tmp; l; l = l->next) { if (!strcmp (l->data, wrk [i])) { different = FALSE; } else if (wrk [i] == '\0') { different = FALSE; } } if (different) { tmp = g_slist_prepend (tmp, g_strdup (wrk [i])); max++; } } tmp = g_slist_reverse (tmp); ret = g_new (char *, max + 1); for (l = tmp, i = 0; l; l = l->next) ret [i++] = l->data; ret [i] = NULL; g_slist_free (tmp); g_strfreev (wrk); return ret; } static Bonobo_ServerInfoListCache * impl_Bonobo_ObjectDirectory__get_servers ( PortableServer_Servant servant, Bonobo_CacheTime only_if_newer, CORBA_Environment *ev) { ObjectDirectory *od; Bonobo_ServerInfoListCache *retval; server_lock (); od = OBJECT_DIRECTORY (servant); update_registry (od, FALSE); retval = Bonobo_ServerInfoListCache__alloc (); retval->_d = (only_if_newer < od->time_list_changed); if (retval->_d) { retval->_u.server_list = *od->attr_servers; CORBA_sequence_set_release (&retval->_u.server_list, CORBA_FALSE); } server_unlock (); return retval; } typedef struct { Bonobo_ImplementationID *seq; int last_used; } StateCollectionInfo; static void collate_active_server (char *key, gpointer value, StateCollectionInfo *sci) { sci->seq [(sci->last_used)++] = CORBA_string_dup (key); } static Bonobo_ServerStateCache * impl_Bonobo_ObjectDirectory_get_active_servers ( PortableServer_Servant servant, Bonobo_CacheTime only_if_newer, CORBA_Environment *ev) { ObjectDirectory *od; Bonobo_ServerStateCache *retval; server_lock (); od = OBJECT_DIRECTORY (servant); retval = Bonobo_ServerStateCache__alloc (); retval->_d = (only_if_newer < od->time_active_changed); if (retval->_d) { StateCollectionInfo sci; retval->_u.active_servers._length = g_hash_table_size (od->active_server_lists); retval->_u.active_servers._buffer = sci.seq = CORBA_sequence_Bonobo_ImplementationID_allocbuf (retval->_u.active_servers._length); sci.last_used = 0; g_hash_table_foreach (od->active_server_lists, (GHFunc) collate_active_server, &sci); CORBA_sequence_set_release (&(retval->_u.active_servers), CORBA_TRUE); } server_unlock (); return retval; } static CORBA_Object od_get_active_server (ObjectDirectory *od, const char *iid, const Bonobo_ActivationEnvironment *environment) { ActiveServerList *servers; CORBA_Object retval; int i; servers = g_hash_table_lookup (od->active_server_lists, iid); if (!servers) return CORBA_OBJECT_NIL; retval = CORBA_OBJECT_NIL; for (i = 0; i < servers->n_servers; i++) { if (Bonobo_ActivationEnvironment_match ( &servers->servers [i].environment, environment)) { retval = servers->servers [i].server; break; } } if (retval != CORBA_OBJECT_NIL) { gboolean non_existent; ServerLockState state; /* With dead objects, this path can cause lengthy re-connection attempts, blocking all other activation, so drop the lock. g#512520 */ state = server_lock_drop(); non_existent = CORBA_Object_non_existent (retval, NULL); server_lock_resume (state); if (!non_existent) return CORBA_Object_duplicate (retval, NULL); } return CORBA_OBJECT_NIL; } /* * returns (@merged_environment) new environment as result of * merging activation request environment and client registered * environment; the activation supplied environment takes precedence * over the client one */ static void od_merge_client_environment (ObjectDirectory *od, Bonobo_ServerInfo const *server, const Bonobo_ActivationEnvironment *environment, Bonobo_ActivationEnvironment *merged_environment, Bonobo_ActivationClient client) { GArray *array; int i, serverinfo_env_idx; const Bonobo_ActivationEnvironment *client_env; const Bonobo_StringList *serverinfo_env = NULL; ClientContext *client_context; array = g_array_new (FALSE, FALSE, sizeof (Bonobo_ActivationEnvValue)); /* copy all values from @environment */ for (i = 0; i < environment->_length; ++i) g_array_append_val (array, environment->_buffer[i]); if (G_UNLIKELY (client == CORBA_OBJECT_NIL)) goto exit; client_context = ((ClientContext *) g_hash_table_lookup (od->client_contexts, client)); if (G_UNLIKELY (!client_context)) goto exit; client_env = client_context->env; if (G_UNLIKELY (!client_env)) goto exit; /* scan through server properties */ if (!server) goto exit; for (i = 0; i < server->props._length; ++i) { if (strcmp (server->props._buffer[i].name, "bonobo:environment") == 0) { Bonobo_ActivationPropertyValue const *prop = &server->props._buffer[i].v; if (prop->_d == Bonobo_ACTIVATION_P_STRINGV) serverinfo_env = &prop->_u.value_stringv; else g_warning ("bonobo:environment should have type stringv"); break; } } if (!serverinfo_env) goto exit; /* do the actual merging */ for (serverinfo_env_idx = 0; serverinfo_env_idx < serverinfo_env->_length; ++serverinfo_env_idx) { CORBA_char *env = serverinfo_env->_buffer[serverinfo_env_idx]; gboolean duplicated_env = FALSE; /* check if array already has this environment */ for (i = 0; i < environment->_length; ++i) { if (strcmp (environment->_buffer[i].name, env) == 0) { duplicated_env = TRUE; break; } } if (duplicated_env) continue; /* look for environment in client_env */ for (i = 0; i < client_env->_length; ++i) { if (strcmp (client_env->_buffer[i].name, env) == 0) { g_array_append_val (array, client_env->_buffer[i]); break; } } } exit: /* return the resulting environment */ merged_environment->_buffer = (Bonobo_ActivationEnvValue *) array->data; merged_environment->_length = merged_environment->_maximum = array->len; g_array_free (array, FALSE); } static CORBA_Object impl_Bonobo_ObjectDirectory_activate ( PortableServer_Servant servant, const CORBA_char *iid, const Bonobo_ActivationContext ac, const Bonobo_ActivationEnvironment *environment, const Bonobo_ActivationFlags flags, Bonobo_ActivationClient client, CORBA_Context ctx, CORBA_Environment *ev) { ObjectDirectory *od; CORBA_Object retval = NULL; Bonobo_ServerInfo *si; ODActivationInfo ai; Bonobo_ActivationEnvironment merged_environment = { 0, }; server_lock (); od = OBJECT_DIRECTORY (servant); od_merge_client_environment (od, (Bonobo_ServerInfo *) g_hash_table_lookup (od->by_iid, iid), environment, &merged_environment, client); retval = CORBA_OBJECT_NIL; update_registry (od, FALSE); if (!(flags & Bonobo_ACTIVATION_FLAG_PRIVATE)) { retval = od_get_active_server (od, iid, &merged_environment); if (retval != CORBA_OBJECT_NIL) goto act_out; } if (flags & Bonobo_ACTIVATION_FLAG_EXISTING_ONLY) goto act_out; #ifdef BONOBO_ACTIVATION_DEBUG fprintf (stderr, "thread %p start activate '%s'\n", g_thread_self(), iid); #endif ai.ac = ac; ai.flags = flags; ai.ctx = ctx; si = g_hash_table_lookup (od->by_iid, iid); if (si) { retval = od_server_activate ( si, &ai, BONOBO_OBJREF (od), &merged_environment, client, ev); /* NB. si can now be invalid - due to re-enterancy */ /* If we failed to activate - it may be because our * request re-entered _during_ the activation * process resulting in a second process being started * but failing to register - so we'll look up again here * to see if we can get it. * FIXME: we should not be forking redundant processes * while an activation of that same process is on the * stack. * FIXME: we only get away with this hack because we * try and fork another process & thus allow the reply * from the initial process to be handled in the event * loop. */ /* FIXME: this path is theoretically redundant now */ if (ev->_major != CORBA_NO_EXCEPTION || retval == CORBA_OBJECT_NIL) { retval = od_get_active_server (od, iid, &merged_environment); if (retval != CORBA_OBJECT_NIL) CORBA_exception_free (ev); } } #ifdef BONOBO_ACTIVATION_DEBUG fprintf (stderr, "thread %p end activate '%s' = %p ['%s']\n", g_thread_self(), iid, retval, bonobo_exception_get_text (ev) ); #endif act_out: g_free (merged_environment._buffer); server_unlock (); return retval; } extern GMainLoop *main_loop; static gboolean quit_server_timeout (gpointer user_data) { #ifdef BONOBO_ACTIVATION_DEBUG g_warning ("Quit server !"); #endif if (!main_dir || main_dir->n_active_servers > RESIDUAL_SERVERS || !activation_clients_is_empty_scan ()) g_warning ("Serious error handling server count, not quitting"); else g_main_loop_quit (main_loop); main_dir->no_servers_timeout = 0; return FALSE; } void od_finished_internal_registration (void) { finished_internal_registration = TRUE; } void check_quit (void) { ObjectDirectory *od = main_dir; /* We had some activity - so push out the shutdown timeout */ if (od->no_servers_timeout != 0) g_source_remove (od->no_servers_timeout); od->no_servers_timeout = 0; if (od->n_active_servers <= RESIDUAL_SERVERS && activation_clients_is_empty_scan ()) od->no_servers_timeout = g_timeout_add_seconds ( SERVER_IDLE_QUIT_TIMEOUT, quit_server_timeout, NULL); od->time_active_changed = time (NULL); } static void remove_active_server_entry (ActiveServerList *servers, int index) { CORBA_Object_release (servers->servers [index].server, NULL); CORBA_free (servers->servers [index].environment._buffer); if (index != servers->n_servers - 1) memcpy (&servers->servers [index], &servers->servers [servers->n_servers - 1], sizeof (servers->servers [index])); servers->n_servers--; } static ActiveServerList * add_active_server_entry (ActiveServerList *servers, const Bonobo_ActivationEnvironment *environment, CORBA_Object object) { int index, i; index = servers->n_servers - 1; if (index != 0) servers = g_realloc (servers, sizeof (*servers) + sizeof (servers->servers [0]) * index); servers->servers [index].server = CORBA_Object_duplicate (object, NULL); servers->servers [index].environment._length = environment->_length; servers->servers [index].environment._maximum = environment->_maximum; servers->servers [index].environment._buffer = Bonobo_ActivationEnvironment_allocbuf (environment->_length); servers->servers [index].environment._release = TRUE; for (i = 0; i < environment->_length; i++) Bonobo_ActivationEnvValue_copy ( &servers->servers [index].environment._buffer [i], &environment->_buffer [i]); return servers; } static gboolean prune_dead_servers (gpointer key, gpointer value, gpointer user_data) { ObjectDirectory *od = user_data; ActiveServerList *servers = value; int i; for (i = 0; i < servers->n_servers; i++) { ORBitConnectionStatus status; gboolean dead; status = ORBit_small_get_connection_status ( servers->servers [i].server); dead = (status == ORBIT_CONNECTION_DISCONNECTED); #ifdef BONOBO_ACTIVATION_DEBUG fprintf (stderr, "IID '%20s' (%p), %s \n", (char *) key, servers->servers [i].server, dead ? "dead" : "alive"); #endif if (dead) { remove_active_server_entry (servers, i); od->n_active_servers--; i--; } } return !servers->n_servers; } static gboolean as_rescan (gpointer is_idle_rescan) { ObjectDirectory *od; static gboolean in_rescan = FALSE; static guint idle_id = 0; server_lock (); if (GPOINTER_TO_UINT (is_idle_rescan)) idle_id = 0; if (!(od = main_dir)) { /* shutting down */ server_unlock (); return FALSE; } /* We tend to get a lot of 'broken' callbacks at once */ if (in_rescan) { if (!idle_id) idle_id = g_timeout_add (100, as_rescan, GUINT_TO_POINTER (1)); server_unlock (); return FALSE; } in_rescan = TRUE; g_hash_table_foreach_remove (od->active_server_lists, prune_dead_servers, od); #ifdef BONOBO_ACTIVATION_DEBUG g_warning ("After prune: %d live servers", od->n_active_servers - RESIDUAL_SERVERS); #endif check_quit (); in_rescan = FALSE; server_unlock (); return FALSE; } static void active_server_cnx_broken (ORBitConnection *cnx, gpointer dummy) { as_rescan (NULL); } static void add_active_server (ObjectDirectory *od, const char *iid, const Bonobo_ActivationEnvironment *environment, CORBA_Object object) { ActiveServerList *servers; ORBitConnection *cnx; cnx = ORBit_small_get_connection (object); if (cnx) { if (!g_object_get_data (G_OBJECT (cnx), "object_count")) { g_object_set_data ( G_OBJECT (cnx), "object_count", GUINT_TO_POINTER (1)); ORBit_small_listen_for_broken (object, G_CALLBACK (active_server_cnx_broken), NULL); } } else g_assert (!strcmp (iid, NAMING_CONTEXT_IID) || !strcmp(iid, EVENT_SOURCE_IID)); servers = g_hash_table_lookup (od->active_server_lists, iid); if (!servers) { servers = g_new0 (ActiveServerList, 1); servers->iid = g_strdup (iid); servers->n_servers = 1; servers = add_active_server_entry ( servers, environment, object); g_hash_table_insert ( od->active_server_lists, servers->iid, servers); } else { ActiveServerList *new_servers; g_assert (servers->n_servers > 0); servers->n_servers++; new_servers = add_active_server_entry ( servers, environment, object); if (new_servers != servers) { /* Need to reset the pointer */ g_hash_table_steal (od->active_server_lists, new_servers->iid); g_hash_table_insert ( od->active_server_lists, new_servers->iid, new_servers); } } if (finished_internal_registration) od->n_active_servers++; if (cnx) check_quit (); } static void active_server_list_free (gpointer data) { ActiveServerList *servers = data; int i; for (i = 0; i < servers->n_servers; i++) { CORBA_Object_release (servers->servers [i].server, NULL); CORBA_free (servers->servers [i].environment._buffer); } g_free (servers); } static gboolean remove_active_server (ObjectDirectory *od, const char *iid, CORBA_Object object) { ActiveServerList *servers; gboolean removed = FALSE; int i; servers = g_hash_table_lookup (od->active_server_lists, iid); if (!servers) return FALSE; for (i = 0; i < servers->n_servers; i++) if (CORBA_Object_is_equivalent ( servers->servers [i].server, object, NULL)) { remove_active_server_entry (servers, i); removed = TRUE; break; } if (removed) od->n_active_servers--; if (servers->n_servers == 0) g_hash_table_remove (od->active_server_lists, iid); check_quit (); return removed; } /* Parse server description and register it, replacing older * definition if necessary. Returns the regsitered ServerInfo */ static Bonobo_ServerInfo const * od_register_runtime_server_info (ObjectDirectory *od, const char *iid, const CORBA_char *description, Bonobo_ActivationClient client) { Bonobo_ServerInfo *old_serverinfo, *new_serverinfo; GSList *parsed_serverinfo = NULL, *l; int i; ClientContext *context; update_registry (od, FALSE); old_serverinfo = (Bonobo_ServerInfo *) g_hash_table_lookup (od->by_iid, iid); if (old_serverinfo) return old_serverinfo; if (!(*description)) /* empty description? */ return NULL; /* parse description */ bonobo_parse_server_info_memory (description, &parsed_serverinfo, bonobo_activation_hostname_get ()); /* check for zero entries */ if (!parsed_serverinfo) return NULL; /* check for more than one entry */ if (parsed_serverinfo->next) { #ifdef BONOBO_ACTIVATION_DEBUG g_warning ("More than one specified, ignoring all"); #endif for (l = parsed_serverinfo; l; l = l->next) { Bonobo_ServerInfo__freekids (l->data, NULL); g_free (l->data); } g_slist_free (parsed_serverinfo); return NULL; } new_serverinfo = (Bonobo_ServerInfo *) parsed_serverinfo->data; g_slist_free (parsed_serverinfo); g_ptr_array_add (od->attr_runtime_servers, new_serverinfo); ORBit_sequence_append (od->attr_servers, new_serverinfo); /* rebuild od->by_iid hash table, because * ORBit_sequence_append reallocs _buffer, and that * sometimes changes the addresses of the * serverinfo items */ g_hash_table_destroy (od->by_iid); od->by_iid = g_hash_table_new (g_str_hash, g_str_equal); for (i = 0; i < od->attr_servers->_length; ++i) g_hash_table_insert (od->by_iid, od->attr_servers->_buffer[i].iid, od->attr_servers->_buffer + i); /* Take note that this client registered this iid, so that * when the client disconnects we unregister its * corresponding serverinfo's */ context = g_hash_table_lookup (od->client_contexts, client); g_return_val_if_fail (context, new_serverinfo); if (context->runtime_iids) ORBit_sequence_append (context->runtime_iids, iid); else { context->runtime_iids = ORBit_sequence_alloc (TC_CORBA_sequence_CORBA_string, 1); ORBit_sequence_index (context->runtime_iids, 0) = CORBA_string_dup (iid); } od->time_list_changed = time (NULL); activation_clients_cache_notify (); return new_serverinfo; } static Bonobo_RegistrationResult impl_Bonobo_ObjectDirectory_register_new_full ( PortableServer_Servant servant, const CORBA_char *iid, const Bonobo_ActivationEnvironment *environment, const CORBA_Object obj, Bonobo_RegistrationFlags flags, const CORBA_char *description, CORBA_Object *existing, Bonobo_ActivationClient client, CORBA_Environment *ev) { ObjectDirectory *od; CORBA_Object oldobj; Bonobo_ActivationEnvironment merged_environment; Bonobo_ServerInfo const *serverinfo; Bonobo_RegistrationResult retval = Bonobo_ACTIVATION_REG_SUCCESS; server_lock (); od = OBJECT_DIRECTORY (servant); oldobj = od_get_active_server (od, iid, environment); *existing = oldobj; serverinfo = od_register_runtime_server_info (od, iid, description, client); od_merge_client_environment (od, serverinfo, environment, &merged_environment, client); oldobj = od_get_active_server (od, iid, &merged_environment); if (oldobj != CORBA_OBJECT_NIL) { if (!CORBA_Object_non_existent (oldobj, ev)) { if (CORBA_Object_is_equivalent (oldobj, obj, ev)) retval = Bonobo_ACTIVATION_REG_SUCCESS; else retval = Bonobo_ACTIVATION_REG_ALREADY_ACTIVE; goto reg_out; } } if (!serverinfo) { if (!(flags&Bonobo_REGISTRATION_FLAG_NO_SERVERINFO)) { retval = Bonobo_ACTIVATION_REG_NOT_LISTED; goto reg_out; } } #ifdef BONOBO_ACTIVATION_DEBUG g_warning ("Server register. '%s' : %p", iid, obj); #endif add_active_server (od, iid, &merged_environment, obj); bonobo_event_source_notify_listeners (od->event_source, "Bonobo/ObjectDirectory:activation:register", NULL, NULL); reg_out: g_free (merged_environment._buffer); server_unlock (); return retval; } static Bonobo_RegistrationResult impl_Bonobo_ObjectDirectory_register_new ( PortableServer_Servant servant, const CORBA_char *iid, const Bonobo_ActivationEnvironment *environment, const CORBA_Object obj, Bonobo_RegistrationFlags flags, const CORBA_char *description, CORBA_Object *existing, CORBA_Environment *ev) { return impl_Bonobo_ObjectDirectory_register_new_full (servant, iid, environment, obj, flags, description, existing, CORBA_OBJECT_NIL, ev); } static void impl_Bonobo_ObjectDirectory_unregister ( PortableServer_Servant servant, const CORBA_char *iid, const CORBA_Object obj, CORBA_Environment *ev) { ObjectDirectory *od; server_lock (); od = OBJECT_DIRECTORY (servant); if (!remove_active_server (od, iid, obj)) CORBA_exception_set (ev, CORBA_USER_EXCEPTION, ex_Bonobo_ObjectDirectory_NotRegistered, NULL); else bonobo_event_source_notify_listeners (od->event_source, "Bonobo/ObjectDirectory:activation:unregister", NULL, NULL); server_unlock (); } static Bonobo_DynamicPathLoadResult impl_Bonobo_ObjectDirectory_add_path( PortableServer_Servant servant, const CORBA_char * add_path, CORBA_Environment *ev) { ObjectDirectory *od; int i, j, dir_num, max; char **add_directoies, **ret; GSList *l, *tmp = NULL; gboolean different; Bonobo_DynamicPathLoadResult retval = Bonobo_DYNAMIC_LOAD_SUCCESS; server_lock (); od = OBJECT_DIRECTORY (servant); if (!od->registry_source_directories) { od->registry_source_directories = split_path_unique (add_path); goto add_path_out; } else add_directoies = split_path_unique (add_path); if (!add_directoies) { retval = Bonobo_DYNAMIC_LOAD_ERROR; goto add_path_out; } for (max = i = 0; od->registry_source_directories[i]; i++) { tmp = g_slist_append(tmp,g_strdup(od->registry_source_directories[i])); max++; } dir_num = max; for (i = 0; add_directoies[i]; i++) { different = TRUE; for (j = 0; od->registry_source_directories[j]; j++) { if (!strcmp(add_directoies[i], od->registry_source_directories[j])) { different = FALSE; break; } } if (different) { tmp = g_slist_append(tmp, g_strdup(add_directoies[i])); max++; } } if (max == dir_num) { g_strfreev(add_directoies); g_slist_free(tmp); retval = Bonobo_DYNAMIC_LOAD_ALREADY_LISTED; goto add_path_out; } ret = g_new(char *, max + 1); for (l = tmp, i = 0; l; l = l->next) ret[i++]=l->data; ret[i] = NULL; g_slist_free(tmp); g_strfreev(add_directoies); g_strfreev(od->registry_source_directories); od->registry_source_directories = ret; update_registry(od, TRUE); add_path_out: server_unlock (); return retval; } static Bonobo_DynamicPathLoadResult impl_Bonobo_ObjectDirectory_remove_path( PortableServer_Servant servant, const CORBA_char * remove_path, CORBA_Environment *ev) { ObjectDirectory *od; char **remove_directoies, **ret; int i, j, max; GSList *l, *tmp = NULL; gboolean different; Bonobo_DynamicPathLoadResult retval = Bonobo_DYNAMIC_LOAD_SUCCESS; server_lock(); od = OBJECT_DIRECTORY (servant); remove_directoies = split_path_unique (remove_path); if (!remove_directoies) { retval = Bonobo_DYNAMIC_LOAD_ERROR; goto rm_path_out; } for (max = i = 0; od->registry_source_directories[i]; i++) { different = TRUE; for (j = 0; remove_directoies[j]; j++) { if (!strcmp(od->registry_source_directories[i], remove_directoies[j])) { different = FALSE; break; } } if (different) { tmp = g_slist_append(tmp, g_strdup(od->registry_source_directories[i])); max++; } } if (max == i) { g_slist_free(tmp); g_strfreev(remove_directoies); retval = Bonobo_DYNAMIC_LOAD_NOT_LISTED; goto rm_path_out; } ret = g_new(char *, max + 1); for (l = tmp, i = 0; l; l = l->next) ret[i++]=l->data; ret[i] = NULL; g_slist_free(tmp); g_strfreev(remove_directoies); g_strfreev(od->registry_source_directories); od->registry_source_directories = ret; update_registry(od, TRUE); rm_path_out: server_unlock(); return retval; } static void client_cnx_broken (ORBitConnection *cnx, const Bonobo_ActivationClient client) { ObjectDirectory *od; ClientContext *context; int i; server_lock(); if (!(od = main_dir)) { /* shutting down */ server_unlock(); return; } /* unregister runtime server definitions */ context = g_hash_table_lookup (od->client_contexts, client); if (context->runtime_iids) { for (i = 0; i < context->runtime_iids->_length; ++i) { CORBA_char *iid = ORBit_sequence_index (context->runtime_iids, i); int j; #ifdef BONOBO_ACTIVATION_DEBUG fprintf (stderr, "Removing runtime definition '%s' from hash table\n", iid); #endif g_hash_table_remove (od->by_iid, iid); for (j = 0; j < od->attr_runtime_servers->len; ++j) { Bonobo_ServerInfo *server = g_ptr_array_index (od->attr_runtime_servers, j); if (strcmp (server->iid, iid) == 0) { #ifdef BONOBO_ACTIVATION_DEBUG fprintf (stderr, "Removing from od->attr_runtime_servers[%i]\n", j); #endif g_ptr_array_remove_index (od->attr_runtime_servers, j); Bonobo_ServerInfo__freekids (server, NULL); g_free (server); break; } } for (j = 0; j < od->attr_servers->_length; ++j) { Bonobo_ServerInfo *server = &ORBit_sequence_index (od->attr_servers, j); if (strcmp (server->iid, iid) == 0) { #ifdef BONOBO_ACTIVATION_DEBUG fprintf (stderr, "Removing from od->attr_servers[%i]\n", j); #endif ORBit_sequence_remove (od->attr_servers, j); break; } } #ifdef BONOBO_ACTIVATION_DEBUG fprintf (stderr, "Runtime definition '%s' cleaned\n", iid); #endif } } g_hash_table_remove (od->client_contexts, client); od->time_list_changed = time (NULL); activation_clients_cache_notify (); server_unlock(); } static void impl_Bonobo_ObjectDirectory_addClientEnv ( PortableServer_Servant servant, const Bonobo_ActivationClient client, const Bonobo_StringList *client_env, CORBA_Environment *ev) { Bonobo_ActivationEnvironment *env; ObjectDirectory *od; ClientContext *context; int i; server_lock(); od = OBJECT_DIRECTORY (servant); env = Bonobo_ActivationEnvironment__alloc (); env->_length = env->_maximum = client_env->_length; env->_buffer = Bonobo_ActivationEnvironment_allocbuf (env->_length); env->_release = CORBA_TRUE; for (i = 0; i < client_env->_length; ++i) { const char *keyval = client_env->_buffer[i]; const char *equals = strchr (keyval, '='); guint keylen; if (!equals) { g_warning ("Duff env. var '%s'", keyval); continue; } keylen = (guint) (equals - keyval); env->_buffer[i].name = CORBA_string_alloc (keylen + 1); strncpy (env->_buffer[i].name, keyval, keylen); env->_buffer[i].name[keylen] = 0; env->_buffer[i].value = CORBA_string_dup (equals + 1); env->_buffer[i].flags = 0; } context = g_new (ClientContext, 1); context->env = env; context->runtime_iids = NULL; g_hash_table_insert (od->client_contexts, client, context); ORBit_small_listen_for_broken (client, G_CALLBACK (client_cnx_broken), (gpointer) client); server_unlock(); } Bonobo_ObjectDirectory bonobo_object_directory_get (void) { if (!main_dir) return CORBA_OBJECT_NIL; else return BONOBO_OBJREF (main_dir); } Bonobo_EventSource bonobo_object_directory_event_source_get (void) { if (!main_dir) return CORBA_OBJECT_NIL; else return BONOBO_OBJREF (main_dir->event_source); } void bonobo_object_directory_init (PortableServer_POA poa, const char *registry_path, CORBA_Environment *ev) { g_assert (main_dir == NULL); main_dir = g_object_new (OBJECT_TYPE_DIRECTORY, "poa", poa, NULL); main_dir->registry_source_directories = split_path_unique (registry_path); update_registry (main_dir, FALSE); } void bonobo_object_directory_shutdown (PortableServer_POA poa, CORBA_Environment *ev) { bonobo_object_set_immortal (BONOBO_OBJECT (main_dir), FALSE); bonobo_object_unref (BONOBO_OBJECT (main_dir)); } CORBA_Object bonobo_object_directory_re_check_fn (const Bonobo_ActivationEnvironment *environment, const char *act_iid, gpointer user_data) { CORBA_Object retval; server_lock (); retval = od_get_active_server ( main_dir, (Bonobo_ImplementationID) act_iid, environment); server_unlock (); return retval; } void bonobo_object_directory_reload (void) { g_log (G_LOG_DOMAIN, G_LOG_LEVEL_DEBUG, "reloading our object directory!"); update_registry (main_dir, TRUE); } static void object_directory_finalize (GObject *object) { ObjectDirectory *od = (ObjectDirectory *) object; main_dir = NULL; g_hash_table_destroy (od->active_server_lists); g_hash_table_destroy (od->registry_directory_mtimes); g_strfreev (od->registry_source_directories); if (od->client_contexts) { g_hash_table_destroy (od->client_contexts); od->client_contexts = NULL; } parent_class->finalize (object); } static void object_directory_class_init (ObjectDirectoryClass *klass) { GObjectClass *object_class = (GObjectClass *) klass; POA_Bonobo_ObjectDirectory__epv *epv = &klass->epv; parent_class = g_type_class_peek_parent (klass); object_class->finalize = object_directory_finalize; epv->get_servers = impl_Bonobo_ObjectDirectory__get_servers; epv->get_active_servers = impl_Bonobo_ObjectDirectory_get_active_servers; epv->activate = impl_Bonobo_ObjectDirectory_activate; epv->register_new = impl_Bonobo_ObjectDirectory_register_new; epv->register_new_full = impl_Bonobo_ObjectDirectory_register_new_full; epv->unregister = impl_Bonobo_ObjectDirectory_unregister; epv->dynamic_add_path = impl_Bonobo_ObjectDirectory_add_path; epv->dynamic_remove_path = impl_Bonobo_ObjectDirectory_remove_path; epv->addClientEnv = impl_Bonobo_ObjectDirectory_addClientEnv; } static void object_directory_init (ObjectDirectory *od) { bonobo_object_set_immortal (BONOBO_OBJECT (od), TRUE); od->by_iid = NULL; od->registry_directory_mtimes = g_hash_table_new (g_str_hash, g_str_equal); od->active_server_lists = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, active_server_list_free); od->no_servers_timeout = 0; od->attr_runtime_servers = g_ptr_array_new (); od->event_source = bonobo_event_source_new (); od->client_contexts = g_hash_table_new_full (NULL, NULL, NULL, (GDestroyNotify) client_context_free); } BONOBO_TYPE_FUNC_FULL (ObjectDirectory, Bonobo_ObjectDirectory, BONOBO_TYPE_OBJECT, object_directory) libbonobo-2.32.1/activation-server/activation-context.h0000644000076400007640000000401011173072711020131 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /** * activation-context.h: Context based activation * * Author: * Michael Meeks (michael@ximian.com) * * Copyright 2003 Ximian, Inc. */ #ifndef _ACTIVATION_CONTEXT_H_ #define _ACTIVATION_CONTEXT_H_ #include #include G_BEGIN_DECLS typedef struct _ActivationContext ActivationContext; typedef struct _ActivationContextPrivate ActivationContextPrivate; #define ACTIVATION_TYPE_CONTEXT (activation_context_get_type ()) #define ACTIVATION_CONTEXT(o) (G_TYPE_CHECK_INSTANCE_CAST ((bonobo_object (o)), ACTIVATION_TYPE_CONTEXT, ActivationContext)) #define ACTIVATION_CONTEXT_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), ACTIVATION_TYPE_CONTEXT, ActivationContextClass)) #define ACTIVATION_IS_CONTEXT(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), ACTIVATION_TYPE_CONTEXT)) #define ACTIVATION_IS_CONTEXT_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), ACTIVATION_TYPE_CONTEXT)) typedef struct _ChildODInfo ChildODInfo; struct _ActivationContext { BonoboObject parent; Bonobo_ObjectDirectory obj; /* to die in time */ int total_servers; Bonobo_ServerInfoList *list; Bonobo_CacheTime time_list_pulled; GHashTable *by_iid; /* It is assumed that accesses to this * hash table are atomic - i.e. a CORBA * call cannot come in while * checking a value in this table */ GHashTable *active_servers; Bonobo_ServerStateCache *active_server_list; Bonobo_CacheTime time_active_pulled; gint refs; /* nasty re-enterancy guard */ }; typedef struct { BonoboObjectClass parent_class; POA_Bonobo_ActivationContext__epv epv; } ActivationContextClass; GType activation_context_get_type (void) G_GNUC_CONST; void activation_context_setup (PortableServer_POA poa, Bonobo_ObjectDirectory dir, CORBA_Environment *ev); void activation_context_shutdown (void); G_END_DECLS #endif /* _ACTIVATION_CONTEXT_H_ */ libbonobo-2.32.1/activation-server/Makefile.am0000664000076400007640000000560711433015514016205 00000000000000 NULL= man_MANS = bonobo-activation-server.1 bin_PROGRAMS=activation-client libexec_PROGRAMS=bonobo-activation-server noinst_PROGRAMS=test-performance INCLUDES= \ -I$(top_srcdir) \ -I$(top_builddir) \ -I$(top_builddir)/bonobo-activation \ -I$(top_srcdir)/bonobo-activation \ -DPREFIX=\""$(prefix)"\" \ -DSERVERINFODIR=\"$(libdir)/bonobo/servers\" \ -DSERVER_LOCALEDIR=\""${prefix}/${DATADIRNAME}/locale"\" \ $(SERVER_CFLAGS) \ $(WARN_CFLAGS) \ -DSERVER_CONFDIR=\"$(sysconfdir)\" \ -DG_DISABLE_DEPRECATED \ -DG_LOG_DOMAIN=\"Bonobo-Activation-Server\" \ $(NULL) bonobo_activation_server_SOURCES= \ activation-server-corba-extensions.c \ activation-server-corba-extensions.h \ activation-context.h \ activation-context-query.h \ activation-context-query.c \ activation-context-query-lexer.c \ activation-context-query-parser.c \ activation-context-query-parser.h \ activation-context-corba.c \ object-directory.h \ object-directory-corba.c \ object-directory-load.c \ object-directory-activate.c \ object-directory-config-file.c \ object-directory-config-file.h \ activation-server-main.c \ server.h if OS_WIN32 bonobo_activation_server_LDFLAGS = -mwindows endif LDADD= \ $(top_builddir)/bonobo/libbonobo-2.la \ $(top_builddir)/bonobo-activation/libbonobo-activation.la \ -lname-server-2 $(SERVER_LIBS) @INTLLIBS@ activation_client_SOURCES=client.c test_performance_SOURCES = \ test-performance.c \ object-directory-load.c \ server.h TESTS=test-performance serverinfodir=$(libdir)/bonobo/servers $(server_in_file): $(server_in_file).in $(AM_V_GEN) $(SED) -e "s|\@LIBEXECDIR\@|$(libexecdir)|" $< > $@ server_in_file = Bonobo_CosNaming_NamingContext.server.in serverinfo_DATA = $(server_in_file:.server.in=.server) @INTLTOOL_SERVER_RULE@ EXTRA_DIST=activation-context-query-lexer.l activation-context-query-parser.y \ $(server_in_file).in $(serverinfo_DATA) \ $(man_MANS) AUTHORS YFLAGS = -d -v activation-context-query-lexer.c: $(srcdir)/activation-context-query-lexer.l activation-context-query-parser.h $(AM_V_GEN) rm -f $@ && \ $(LEX) -t $(srcdir)/activation-context-query-lexer.l >$@ stamp-parser: $(srcdir)/activation-context-query-parser.y $(AM_V_GEN) $(YACC) $(YFLAGS) $(srcdir)/activation-context-query-parser.y && \ rm -f y.output && \ touch $@ activation-context-query-parser.c: stamp-parser $(AM_V_GEN) test -f y.tab.c && mv -f y.tab.c activation-context-query-parser.c || touch $@ activation-context-query-parser.h: stamp-parser $(AM_V_GEN) test -f y.tab.h && mv -f y.tab.h activation-context-query-parser.h || touch $@ BUILT_SOURCES= activation-context-query-lexer.c activation-context-query-parser.c \ activation-context-query-parser.h Bonobo_CosNaming_NamingContext.server CLEANFILES=stamp-parser $(server_in_file) $(serverinfo_DATA) $(BUILT_SOURCES) dist-hook: cd $(distdir) ; rm -f $(CLEANFILES) libbonobo-2.32.1/activation-server/activation-context-query-parser.y0000644000076400007640000001162511173072711022621 00000000000000/* * oafd: OAF CORBA dameon. * * Copyright (C) 1999, 2000 Red Hat, Inc. * Copyright (C) 1999, 2000 Eazel, Inc. * * This library 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 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 * General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this library; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * * Authors: Elliot Lee , * */ %{ #include "activation-context-query.h" #include #include void yyerror(char *s); int yylex (); int yyparse (void); void initFlex (const char *s); static QueryExpr *parsed_expression; %} %union { char *val_string; char **val_stringv; gdouble val_number; gboolean val_boolean; QueryExpr *qexp; GSList *elist; int val_enum; } %token P_CONST_STRING P_CONST_NUMBER P_CONST_BOOLEAN P_CONST_ID %token LPAREN RPAREN %token LBRACKET RBRACKET %right P_NOT P_NEGATE %token P_DOLLAR %left P_MULTIPLY P_DIVIDE %left P_ADD P_SUBTRACT %token P_EQ P_NEQ P_LEQ P_GEQ P_LT P_GT %left P_OR P_AND P_XOR %token COMMA PERIOD %token PARSE_ERROR %type P_CONST_STRING %type P_CONST_NUMBER %type P_CONST_BOOLEAN %type P_CONST_ID %type expr %type expr_binop %type expr_unop %type expr_constant %type expr_variable %type expr_function %type expr_id %type exprlist %type expr_sub %type expr_stringv %type stringlist %type expr_obvious %type binop %% whole_expression: expr { parsed_expression = $1; }; expr: expr_binop | expr_obvious; exprlist: expr { $$ = g_slist_prepend(NULL, $1); } | expr COMMA exprlist { $$ = g_slist_prepend($3, $1); }; expr_obvious: expr_unop | expr_sub | expr_constant | expr_variable | expr_function | expr_id; expr_sub: LPAREN expr RPAREN { $$ = $2; }; binop: P_MULTIPLY { $$ = P_MULTIPLY; } | P_DIVIDE { $$ = P_DIVIDE; } | P_SUBTRACT { $$ = P_SUBTRACT; } | P_ADD { $$ = P_ADD; } | P_EQ { $$ = P_EQ; } | P_NEQ { $$ = P_NEQ; } | P_LEQ { $$ = P_LEQ; } | P_GEQ { $$ = P_GEQ; } | P_GT { $$ = P_GT; } | P_LT { $$ = P_LT; } | P_OR { $$ = P_OR; } | P_AND { $$ = P_AND; } | P_XOR { $$ = P_XOR; }; expr_binop: expr_obvious binop expr { $$ = qexp_binop_new ($1, $2, $3); }; expr_unop: P_NOT expr_obvious { $$ = qexp_unop_new (P_NOT, $2); } | P_SUBTRACT expr_obvious %prec P_NEGATE { $$ = qexp_unop_new (P_NEGATE, $2); }; expr_constant: P_CONST_STRING { QueryExprConst qctmp; qctmp.type = CONST_STRING; qctmp.u.v_string = $1; $$ = qexp_constant_new (qctmp); } | P_CONST_NUMBER { QueryExprConst qctmp; qctmp.type = CONST_NUMBER; qctmp.u.v_number = $1; $$ = qexp_constant_new (qctmp); } | P_CONST_BOOLEAN { QueryExprConst qctmp; qctmp.type = CONST_BOOLEAN; qctmp.u.v_boolean = $1; $$ = qexp_constant_new (qctmp); } | expr_stringv { QueryExprConst qctmp; qctmp.type = CONST_STRINGV; qctmp.u.v_stringv = $1; $$ = qexp_constant_new (qctmp); }; expr_stringv: LBRACKET stringlist RBRACKET { char **new_stringv; int i, n; GSList *cur; n = g_slist_length($2); new_stringv = g_new (char *, n + 1); for (cur = $2, i = 0; i < n; i++, cur = cur->next) { new_stringv[i] = cur->data; } new_stringv[i] = NULL; g_slist_free ($2); $$ = new_stringv; }; stringlist: P_CONST_STRING { $$ = g_slist_prepend (NULL, $1); } | stringlist COMMA P_CONST_STRING { $$ = g_slist_append ($1, $3); }; expr_variable: P_DOLLAR P_CONST_ID { $$ = qexp_variable_new ($2); }; expr_function: P_CONST_ID LPAREN exprlist RPAREN { $$ = qexp_function_new ($1, $3); } | P_CONST_ID LPAREN RPAREN { $$ = qexp_function_new ($1, NULL); } | P_CONST_ID PERIOD P_CONST_ID LPAREN exprlist RPAREN { $$ = qexp_function_new($3, g_slist_prepend ($5, qexp_id_new ($1))); } | P_CONST_ID PERIOD P_CONST_ID LPAREN RPAREN { $$ = qexp_function_new($3, g_slist_prepend (NULL, qexp_id_new ($1))); }; expr_id: P_CONST_ID { $$ = qexp_id_new ($1); }; %% static GString *parse_errors = NULL; void yyerror (char *s) { g_string_append (parse_errors, s); g_string_append_c (parse_errors, '\n'); } const char *qexp_parse (const char *_code, QueryExpr **retme) { parsed_expression = NULL; g_assert (retme); if (!parse_errors) parse_errors = g_string_new (NULL); else g_string_truncate (parse_errors, 0); initFlex (_code); yyparse(); *retme = parsed_expression; if (parse_errors->len) return parse_errors->str; else return NULL; } libbonobo-2.32.1/activation-server/object-directory-config-file.h0000644000076400007640000000240511173072711021744 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ /* * oafd: OAF CORBA dameon. * * Copyright (C) 2000 Eazel, Inc. * * This library 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 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 * General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this library; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * * Authors: Mathieu Lacage * */ #ifndef OBJECT_DIRECTORY_CONFIG_FILE_H #define OBJECT_DIRECTORY_CONFIG_FILE_H #include #define SERVER_CONFIG_FILE "/bonobo-activation/bonobo-activation-config.xml" /* loads the information from oaf configuration file in $sysconfdir/oaf/oaf-conf.xml. */ char *object_directory_load_config_file (void); #endif /* OBJECT_DIRECTORY_CONFIG_FILE_H */ libbonobo-2.32.1/activation-server/activation-context-query.c0000644000076400007640000006336311173072711021307 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ /* * oafd: OAF CORBA dameon. * * Copyright (C) 1999, 2000 Red Hat, Inc. * Copyright (C) 1999, 2000 Eazel, Inc. * * This library 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 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 * General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this library; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * * Authors: Elliot Lee , * */ /* Likely bugs: Forgetting to initialize QueryExprConst.needs_free = crash */ #include #include #include "activation-context-query.h" #include "activation-context-query-parser.h" static QueryExpr * qexp_new (void) { QueryExpr *retval = g_new (QueryExpr, 1); retval->have_cached_value = FALSE; retval->has_fields = TRUE; return retval; } void qexp_free (QueryExpr * qexp) { if (!qexp) return; switch (qexp->type) { case EXPR_FUNCTION: g_free (qexp->u.function_value.func_name); g_slist_foreach (qexp->u.function_value.arguments, (GFunc) qexp_free, NULL); g_slist_free (qexp->u.function_value.arguments); break; case EXPR_VARIABLE: g_free (qexp->u.var_value); break; case EXPR_ID: g_free (qexp->u.id_value); break; case EXPR_BINOP: qexp_free (qexp->u.binop_value.op1); qexp_free (qexp->u.binop_value.op2); break; case EXPR_UNOP: qexp_free (qexp->u.unop_value.op); break; case EXPR_CONSTANT: if (qexp->u.constant_value.value_known) { switch (qexp->u.constant_value.type) { case CONST_STRING: g_free (qexp->u.constant_value.u.v_string); break; case CONST_STRINGV: g_strfreev (qexp->u.constant_value. u.v_stringv); break; default: break; } } break; } g_free (qexp); } QueryExpr * qexp_binop_new (QueryExpr * op1, int operand, QueryExpr * op2) { QueryExpr *retval = qexp_new (); int optype; switch (operand) { case P_MULTIPLY: optype = OP_MULTIPLY; break; case P_DIVIDE: optype = OP_DIVIDE; break; case P_SUBTRACT: optype = OP_SUBTRACT; break; case P_ADD: optype = OP_ADD; break; case P_EQ: optype = OP_EQ; break; case P_NEQ: optype = OP_NEQ; break; case P_LEQ: optype = OP_LEQ; break; case P_GEQ: optype = OP_GEQ; break; case P_GT: optype = OP_GT; break; case P_LT: optype = OP_LT; break; case P_OR: optype = OP_OR; break; case P_AND: optype = OP_AND; break; case P_XOR: optype = OP_XOR; break; default: g_assert_not_reached (); optype = 0; break; } retval->u.binop_value.type = optype; retval->u.binop_value.op1 = op1; retval->u.binop_value.op2 = op2; retval->type = EXPR_BINOP; retval->has_fields = op1->has_fields || op2->has_fields; return retval; } QueryExpr * qexp_unop_new (int operand, QueryExpr * op) { QueryExpr *retval = qexp_new (); int optype; switch (operand) { case P_SUBTRACT: optype = OP_SUBTRACT; break; case P_NOT: optype = OP_NOT; break; default: g_assert_not_reached (); optype = 0; break; } retval->type = EXPR_UNOP; retval->u.unop_value.type = optype; retval->u.unop_value.op = op; retval->has_fields = op->has_fields; return retval; } QueryExpr * qexp_function_new (char *name, GSList * exprlist) { GSList *cur; QueryExpr *retval = qexp_new (); retval->type = EXPR_FUNCTION; retval->u.function_value.func_name = name; retval->u.function_value.arguments = exprlist; cur = exprlist; while (cur != NULL && !((QueryExpr *) cur->data)->has_fields) { cur = cur->next; } retval->has_fields = cur ? TRUE : FALSE; return retval; } QueryExpr * qexp_variable_new (char *name) { QueryExpr *retval = qexp_new (); retval->type = EXPR_VARIABLE; retval->u.var_value = name; retval->has_fields = FALSE; return retval; } QueryExpr * qexp_id_new (char *name) { QueryExpr *retval = qexp_new (); retval->type = EXPR_ID; retval->u.var_value = name; retval->has_fields = TRUE; return retval; } QueryExpr * qexp_constant_new (QueryExprConst setme) { QueryExpr *retval = qexp_new (); retval->type = EXPR_CONSTANT; retval->u.constant_value = setme; retval->u.constant_value.value_known = TRUE; retval->has_fields = FALSE; return retval; } void qexp_dump (QueryExpr * exp) { switch (exp->type) { case EXPR_FUNCTION: { GSList *cur; g_print ("%s(", exp->u.function_value.func_name); for (cur = exp->u.function_value.arguments; cur; cur = cur->next) { qexp_dump (cur->data); if (cur->next) g_print (", "); } g_print (")"); } break; case EXPR_VARIABLE: g_print ("$%s", exp->u.var_value); break; case EXPR_ID: g_print ("%s", exp->u.id_value); break; case EXPR_BINOP: { char *opc; g_print ("("); qexp_dump (exp->u.binop_value.op1); g_print (")"); switch (exp->u.binop_value.type) { case OP_EQ: opc = "="; break; case OP_NEQ: opc = "!="; break; case OP_LEQ: opc = "<="; break; case OP_GEQ: opc = ">="; break; case OP_LT: opc = "<"; break; case OP_GT: opc = ">"; break; case OP_OR: opc = "||"; break; case OP_AND: opc = "&&"; break; case OP_MULTIPLY: opc = "*"; break; case OP_DIVIDE: opc = "/"; break; case OP_ADD: opc = "+"; break; case OP_SUBTRACT: opc = "-"; break; case OP_XOR: opc = "^"; break; default: opc = NULL; break; } g_print (" %s (", opc); qexp_dump (exp->u.binop_value.op2); g_print (")"); } break; case EXPR_UNOP: switch (exp->u.unop_value.type) { case OP_NOT: g_print ("~("); break; case OP_NEGATE: g_print ("-("); break; } qexp_dump (exp->u.unop_value.op); g_print (")"); break; case EXPR_CONSTANT: qexp_constant_dump (&exp->u.constant_value); break; default: g_error ("Unknown exp type %d", exp->type); break; } } void qexp_constant_dump (QueryExprConst * c) { if (c->value_known) { switch (c->type) { case CONST_STRINGV: { int i; g_print ("["); for (i = 0; c->u.v_stringv[i]; i++) { g_print ("'%s'", c->u.v_stringv[i]); if (c->u.v_stringv[i + 1]) g_print (", "); } g_print ("]"); } break; case CONST_STRING: g_print ("'%s'", c->u.v_string); break; case CONST_NUMBER: g_print ("%f", c->u.v_number); break; case CONST_BOOLEAN: g_print ("%s", c->u.v_boolean ? "TRUE" : "FALSE"); break; } } else g_print ("??"); } /* Returns a value suitable for use in boolean expressions */ static gboolean qexp_constant_bool (const QueryExprConst * c) { if (c->value_known) switch (c->type) { case CONST_BOOLEAN: return c->u.v_boolean; case CONST_NUMBER: return (c->u.v_number != 0.0); case CONST_STRING: return (c->u.v_string != NULL); case CONST_STRINGV: return (c->u.v_stringv != NULL); } return FALSE; } gint qexp_constant_compare (const QueryExprConst * c1, const QueryExprConst * c2) { if (c1->value_known && c2->value_known) { g_return_val_if_fail (c1->type == c2->type, 0); switch (c1->type) { case CONST_STRING: return strcmp (c1->u.v_string, c2->u.v_string); break; case CONST_BOOLEAN: if (c1->u.v_boolean && !c2->u.v_boolean) return -1; else if (c2->u.v_boolean && !c1->u.v_boolean) return 1; else return 0; break; case CONST_NUMBER: { if (c2->u.v_number > c1->u.v_number) return 1; else if (c2->u.v_number < c1->u.v_number) return -1; else return 0; } break; default: g_assert_not_reached (); break; } } else if (c1->value_known) return -1; else if (c2->value_known) return 1; return 0; } #define qexp_constant_unuse(c) if ((c).needs_free && (c).value_known) qexp_constant_free(&(c)) static void qexp_constant_free (const QueryExprConst * c) { switch (c->type) { case CONST_STRING: g_free (c->u.v_string); break; case CONST_STRINGV: g_strfreev (c->u.v_stringv); break; default: break; } } /********************************************* Now the fun stuff *****************************************/ /******* handling functions *********/ typedef QueryExprConst (*QueryExprEvalFunc) (Bonobo_ServerInfo * si, QueryExpr * e, QueryContext * qctx); /* A table of the functions that can be used in queries */ typedef struct { const char *name; QueryExprEvalFunc efunc; int min_args, max_args; } QueryExprFuncInfo; static QueryExprConst qexp_func_has_one (Bonobo_ServerInfo * si, QueryExpr * e, QueryContext * qctx); static QueryExprConst qexp_func_has_all (Bonobo_ServerInfo * si, QueryExpr * e, QueryContext * qctx); static QueryExprConst qexp_func_has (Bonobo_ServerInfo * si, QueryExpr * e, QueryContext * qctx); static QueryExprConst qexp_func_prefer_by_list_order (Bonobo_ServerInfo * si, QueryExpr * e, QueryContext * qctx); static QueryExprConst qexp_func_defined (Bonobo_ServerInfo * si, QueryExpr * e, QueryContext * qctx); static QueryExprConst qexp_func_max (Bonobo_ServerInfo * si, QueryExpr * e, QueryContext * qctx); static QueryExprConst qexp_func_min (Bonobo_ServerInfo * si, QueryExpr * e, QueryContext * qctx); static const QueryExprFuncInfo qexp_func_impls[] = { {"has_one", qexp_func_has_one, 2}, {"has_all", qexp_func_has_all, 2}, {"has", qexp_func_has, 2}, {"prefer_by_list_order", qexp_func_prefer_by_list_order, 2}, {"defined", qexp_func_defined, 1}, {"max", qexp_func_max, 1}, {"min", qexp_func_min, 1}, {NULL} }; static QueryExprConst qexp_evaluate_function (Bonobo_ServerInfo * si, QueryExpr * e, QueryContext * qctx) { QueryExprConst retval; const char *func_name; int i, n, max; const QueryExprFuncInfo *fi; func_name = e->u.function_value.func_name; for (i = 0; qexp_func_impls[i].name; i++) { if (!g_ascii_strcasecmp (func_name, qexp_func_impls[i].name)) break; } fi = &qexp_func_impls[i]; if (!fi->name) { retval.value_known = FALSE; retval.needs_free = FALSE; g_warning ("Invalid function name '%s'", func_name); return retval; } n = g_slist_length (e->u.function_value.arguments); max = fi->max_args; if (max < fi->min_args) max = fi->min_args; if ((n < fi->min_args) || (n > max)) { g_warning ("Incorrect argument count to function '%s': got %d, need between %d and %d", func_name, n, fi->min_args, max); } return fi->efunc (si, e, qctx); } static QueryExprConst qexp_func_has_one (Bonobo_ServerInfo * si, QueryExpr * e, QueryContext * qctx) { QueryExprConst retval = { 0, }, v1, v2; int i, j; gboolean found; char **check_one, **check_two; v1 = qexp_evaluate (si, e->u.function_value.arguments->data, qctx); v2 = qexp_evaluate (si, e->u.function_value.arguments->next->data, qctx); retval.value_known = TRUE; if (!v1.value_known || !v2.value_known) { retval.type = CONST_BOOLEAN; retval.u.v_boolean = FALSE; } else if (v1.type != CONST_STRINGV || v2.type != CONST_STRINGV) { retval.value_known = FALSE; } else { found = FALSE; check_one = v1.u.v_stringv; check_two = v2.u.v_stringv; for (i = j = 0; check_one[i]; i++) { for (j = 0; check_two[j]; j++) { if (!strcmp (check_one[i], check_two[j])) { found = TRUE; break; } } } retval.type = CONST_BOOLEAN; retval.u.v_boolean = found; } retval.needs_free = FALSE; qexp_constant_unuse (v1); qexp_constant_unuse (v2); return retval; } static QueryExprConst qexp_func_has_all (Bonobo_ServerInfo * si, QueryExpr * e, QueryContext * qctx) { QueryExprConst retval = { 0, }, v1, v2; int i, j; char **check_one, **check_two; v1 = qexp_evaluate (si, e->u.function_value.arguments->data, qctx); v2 = qexp_evaluate (si, e->u.function_value.arguments->next->data, qctx); retval.value_known = TRUE; if (!v1.value_known || !v2.value_known) { retval.type = CONST_BOOLEAN; retval.u.v_boolean = FALSE; } else if (v1.type != CONST_STRINGV || v2.type != CONST_STRINGV) { retval.value_known = FALSE; } else { check_one = v1.u.v_stringv; check_two = v2.u.v_stringv; for (i = j = 0; check_two[j] && check_one[i]; j++) { for (i = 0; check_one[i]; i++) { if (!strcmp (check_two[j], check_one[i])) break; } } retval.type = CONST_BOOLEAN; retval.u.v_boolean = check_one[i] ? TRUE : FALSE; } retval.needs_free = FALSE; qexp_constant_unuse (v1); qexp_constant_unuse (v2); return retval; } static QueryExprConst qexp_func_has (Bonobo_ServerInfo * si, QueryExpr * e, QueryContext * qctx) { QueryExprConst retval = { 0, }, v1, v2; char **check_one, *check_two; int i; v1 = qexp_evaluate (si, e->u.function_value.arguments->data, qctx); v2 = qexp_evaluate (si, e->u.function_value.arguments->next->data, qctx); retval.value_known = TRUE; if (!v1.value_known || !v2.value_known) { retval.type = CONST_BOOLEAN; retval.u.v_boolean = FALSE; } else if (v1.type != CONST_STRINGV || v2.type != CONST_STRING) { retval.value_known = FALSE; } else { check_one = v1.u.v_stringv; check_two = v2.u.v_string; for (i = 0; check_one[i]; i++) { if (!strcmp (check_one[i], check_two)) break; } retval.type = CONST_BOOLEAN; retval.u.v_boolean = check_one[i] ? TRUE : FALSE; } retval.needs_free = FALSE; qexp_constant_unuse (v1); qexp_constant_unuse (v2); return retval; } static QueryExprConst qexp_func_prefer_by_list_order (Bonobo_ServerInfo *si, QueryExpr *e, QueryContext *qctx) { QueryExprConst retval = { 0, }, item, list; char **check_one, *check_two; int i; int position; item = qexp_evaluate (si, e->u.function_value.arguments->data, qctx); list = qexp_evaluate (si, e->u.function_value.arguments->next->data, qctx); retval.value_known = TRUE; if (!item.value_known || !list.value_known) { retval.type = CONST_BOOLEAN; retval.u.v_boolean = FALSE; } else if (item.type != CONST_STRING || list.type != CONST_STRINGV) { retval.value_known = FALSE; } else { position = -1; check_one = list.u.v_stringv; check_two = item.u.v_string; for (i = 0; check_one[i] != NULL; i++) { if (position == -1 && strcmp (check_one[i], check_two) == 0) { position = i; } } if (position != -1) { position = i - position; } retval.type = CONST_NUMBER; retval.u.v_number = position; } retval.needs_free = FALSE; qexp_constant_unuse (item); qexp_constant_unuse (list); return retval; } static QueryExprConst qexp_func_defined (Bonobo_ServerInfo * si, QueryExpr * e, QueryContext * qctx) { QueryExprConst retval, v1; v1 = qexp_evaluate (si, e->u.function_value.arguments->data, qctx); retval.value_known = TRUE; retval.type = CONST_BOOLEAN; retval.u.v_boolean = v1.value_known ? TRUE : FALSE; retval.needs_free = FALSE; qexp_constant_unuse (v1); return retval; } static QueryExprConst qexp_func_max (Bonobo_ServerInfo * si, QueryExpr * e, QueryContext * qctx) { int i; QueryExprConst max_val_so_far; max_val_so_far.value_known = FALSE; for (i = 0; i < qctx->nservers; i++) { QueryExprConst new_val; new_val = qexp_evaluate (qctx->sil[i], e->u.function_value.arguments->data, qctx); if (qexp_constant_compare (&max_val_so_far, &new_val) > 0) max_val_so_far = new_val; } /* The value of this function never changes on a per-record basis, so we never have to revaluate it */ e->has_fields = FALSE; return max_val_so_far; } static QueryExprConst qexp_func_min (Bonobo_ServerInfo * si, QueryExpr * e, QueryContext * qctx) { int i; QueryExprConst min_val_so_far; min_val_so_far.value_known = FALSE; for (i = 0; i < qctx->nservers; i++) { QueryExprConst new_val; new_val = qexp_evaluate (qctx->sil[i], e->u.function_value.arguments->data, qctx); if (qexp_constant_compare (&min_val_so_far, &new_val) > 0) min_val_so_far = new_val; } /* see comment in qexp_func_max */ e->has_fields = FALSE; return min_val_so_far; } /********** Variables *******/ static QueryExprConst qexp_evaluate_variable (Bonobo_ServerInfo * si, QueryExpr * e, QueryContext * qctx) { QueryExprConst retval = { 0, }; retval.value_known = FALSE; if (qctx->cctx) { CORBA_Environment ev; CORBA_NVList nvout; CORBA_exception_init (&ev); CORBA_Context_get_values (qctx->cctx, NULL, 0, e->u.var_value, &nvout, &ev); /* FIXME bugzilla.eazel.com 2732: non-standard - I * screwed up the NVList implementation in ORBit */ if (ev._major == CORBA_NO_EXCEPTION) { if (nvout->list->len > 0) { CORBA_NamedValue *nv; retval.value_known = TRUE; retval.type = CONST_STRING; nv = &g_array_index (nvout->list, CORBA_NamedValue, 0); retval.u.v_string = g_strdup (*(char **) nv-> argument._value); retval.needs_free = TRUE; } else g_warning ("Unknown variable %s", e->u.var_value); CORBA_NVList_free (nvout, &ev); } else g_warning ("Unknown variable %s", e->u.var_value); CORBA_exception_free (&ev); } else g_warning ("Unknown variable %s", e->u.var_value); return retval; } /********* fields ***********/ static QueryExprConst qexp_evaluate_id (Bonobo_ServerInfo * si, QueryExpr * e, QueryContext * qctx) { QueryExprConst retval = { 0, }; retval.value_known = retval.needs_free = FALSE; if (si) { retval.value_known = TRUE; retval.type = CONST_STRING; if (!g_ascii_strcasecmp (e->u.id_value, "location_info")) retval.u.v_string = si->location_info; else if (!g_ascii_strcasecmp (e->u.id_value, "server_type")) retval.u.v_string = si->server_type; else if (!g_ascii_strcasecmp (e->u.id_value, "iid")) retval.u.v_string = si->iid; else if (!g_ascii_strcasecmp (e->u.id_value, "username")) retval.u.v_string = si->username; else if (!g_ascii_strcasecmp (e->u.id_value, "hostname")) retval.u.v_string = si->hostname; else { int i; for (i = 0; i < si->props._length; i++) { if (!strcmp (e->u.id_value, si->props._buffer[i].name)) break; } retval.value_known = FALSE; if (i < si->props._length) { Bonobo_ActivationPropertyValue *av; av = &si->props._buffer[i].v; switch (av->_d) { case Bonobo_ACTIVATION_P_STRING: retval.type = CONST_STRING; retval.u.v_string = av->_u.value_string; break; case Bonobo_ACTIVATION_P_NUMBER: retval.type = CONST_NUMBER; retval.u.v_number = av->_u.value_number; break; case Bonobo_ACTIVATION_P_BOOLEAN: retval.type = CONST_BOOLEAN; retval.u.v_boolean = av->_u.value_boolean; break; case Bonobo_ACTIVATION_P_STRINGV: { /* FIXME bugzilla.eazel.com 2729: it would be nice to replace the * NULL-terminated string arrays with * CORBA_sequence_string all over */ int i; retval.type = CONST_STRINGV; retval.needs_free = TRUE; retval.u.v_stringv = g_malloc (sizeof (char *) * (av-> _u.value_stringv._length + 1)); for (i = 0; i < av->_u. value_stringv._length; i++) retval. u.v_stringv[i] = g_strdup (av->_u.value_stringv._buffer [i]); retval.u.v_stringv[i] = NULL; } break; } retval.value_known = TRUE; } else if (qctx->id_evaluator) retval = qctx->id_evaluator (si, e->u.id_value, qctx); } } return retval; } /********* binary operators *********/ static QueryExprConst qexp_evaluate_binop (Bonobo_ServerInfo * si, QueryExpr * e, QueryContext * qctx) { QueryExprConst retval = { 0, }, v1, v2; gboolean negate_result = FALSE; v2.value_known = FALSE; /* To make sure that qexp_constant_unuse works properly if we short-circuit */ retval.value_known = TRUE; retval.needs_free = FALSE; v1 = qexp_evaluate (si, e->u.binop_value.op1, qctx); /* Perform short-circuiting */ switch (e->u.binop_value.type) { case OP_OR: if (v1.value_known && qexp_constant_bool (&v1)) { retval.type = CONST_BOOLEAN; retval.u.v_boolean = TRUE; qexp_constant_unuse (v1); return retval; } break; case OP_AND: if (v1.value_known && !qexp_constant_bool (&v1)) { retval.type = CONST_BOOLEAN; retval.u.v_boolean = FALSE; qexp_constant_unuse (v1); return retval; } break; default: break; } v2 = qexp_evaluate (si, e->u.binop_value.op2, qctx); retval.value_known = TRUE; switch (e->u.binop_value.type) { case OP_NEQ: negate_result = TRUE; case OP_EQ: retval.type = CONST_BOOLEAN; retval.u.v_boolean = qexp_constant_compare (&v1, &v2) == 0; break; case OP_GEQ: negate_result = TRUE; case OP_LT: retval.type = CONST_BOOLEAN; retval.u.v_boolean = qexp_constant_compare (&v1, &v2) < 0; break; case OP_LEQ: negate_result = TRUE; case OP_GT: retval.type = CONST_BOOLEAN; retval.u.v_boolean = qexp_constant_compare (&v1, &v2) > 0; break; case OP_OR: retval.type = CONST_BOOLEAN; retval.u.v_boolean = qexp_constant_bool (&v1) || qexp_constant_bool (&v2); break; case OP_AND: retval.type = CONST_BOOLEAN; retval.u.v_boolean = qexp_constant_bool (&v1) && qexp_constant_bool (&v2); break; case OP_MULTIPLY: if (v1.type != CONST_NUMBER || v2.type != CONST_NUMBER) retval.value_known = FALSE; else { retval.type = CONST_NUMBER; retval.u.v_number = v1.u.v_number * v2.u.v_number; } break; case OP_DIVIDE: if (v1.type != CONST_NUMBER || v2.type != CONST_NUMBER) retval.value_known = FALSE; else { retval.type = CONST_NUMBER; if (v2.u.v_number == 0.0) retval.value_known = FALSE; else retval.u.v_number = v1.u.v_number / v2.u.v_number; } break; case OP_ADD: if (v1.type != CONST_NUMBER || v2.type != CONST_NUMBER) retval.value_known = FALSE; else { retval.type = CONST_NUMBER; retval.u.v_number = v1.u.v_number + v2.u.v_number; } break; case OP_SUBTRACT: if (v1.type != CONST_NUMBER || v2.type != CONST_NUMBER) retval.value_known = FALSE; else { retval.type = CONST_NUMBER; retval.u.v_number = v1.u.v_number - v2.u.v_number; } break; case OP_XOR: retval.type = CONST_BOOLEAN; retval.u.v_boolean = qexp_constant_bool (&v1) ^ qexp_constant_bool (&v2); break; } if (negate_result) retval.u.v_boolean = !retval.u.v_boolean; qexp_constant_unuse (v1); qexp_constant_unuse (v2); return retval; } /********** unary operators **********/ static QueryExprConst qexp_evaluate_unop (Bonobo_ServerInfo * si, QueryExpr * e, QueryContext * qctx) { QueryExprConst retval = { 0, }, v1; retval.value_known = TRUE; v1 = qexp_evaluate (si, e->u.unop_value.op, qctx); switch (e->u.unop_value.type) { case OP_NOT: retval.type = CONST_BOOLEAN; retval.u.v_boolean = !qexp_constant_bool (&v1); break; case OP_NEGATE: if (v1.type != CONST_NUMBER) retval.value_known = FALSE; else { retval.type = CONST_NUMBER; retval.u.v_number = -(v1.u.v_number); } break; } qexp_constant_unuse (v1); return retval; } /********** constants ************/ static QueryExprConst qexp_evaluate_constant (Bonobo_ServerInfo * si, QueryExpr * e, QueryContext * qctx) { return e->u.constant_value; } /***** The grand poobah of functions *****/ QueryExprConst qexp_evaluate (Bonobo_ServerInfo * si, QueryExpr * e, QueryContext * qctx) { QueryExprConst retval; if (e->have_cached_value) { retval = e->cached_value; } else { switch (e->type) { case EXPR_FUNCTION: retval = qexp_evaluate_function (si, e, qctx); break; case EXPR_VARIABLE: retval = qexp_evaluate_variable (si, e, qctx); break; case EXPR_ID: retval = qexp_evaluate_id (si, e, qctx); break; case EXPR_BINOP: retval = qexp_evaluate_binop (si, e, qctx); break; case EXPR_UNOP: retval = qexp_evaluate_unop (si, e, qctx); break; case EXPR_CONSTANT: retval = qexp_evaluate_constant (si, e, qctx); break; } } if (!e->has_fields) { e->cached_value = retval; e->have_cached_value = TRUE; retval.needs_free = FALSE; /* We don't want people freeing our cached value... */ } return retval; } gboolean qexp_matches (Bonobo_ServerInfo * si, QueryExpr * e, QueryContext * qctx) { QueryExprConst res; gboolean retval; res = qexp_evaluate (si, e, qctx); retval = qexp_constant_bool (&res); qexp_constant_unuse (res); return retval; } typedef struct { QueryExpr **sexps; int nexps; QueryContext *qctx; } QexpSortData; static int qexp_sort_compare (gconstpointer a, gconstpointer b, gpointer user_data) { Bonobo_ServerInfo *x = * (Bonobo_ServerInfo **) a; Bonobo_ServerInfo *y = * (Bonobo_ServerInfo **) b; QexpSortData * sort_data = user_data; int i; if (x == NULL) { return 1; } if (y == NULL) { return -1; } for (i = 0; i < sort_data->nexps; i++) { QueryExprConst cx, cy; int res; cx = qexp_evaluate (x, sort_data->sexps[i], sort_data->qctx); cy = qexp_evaluate (y, sort_data->sexps[i], sort_data->qctx); res = qexp_constant_compare (&cx, &cy); qexp_constant_unuse (cx); qexp_constant_unuse (cy); if (res > 0) return 1; else if (res < 0) return -1; } return 0; } void qexp_sort (Bonobo_ServerInfo ** servers, int nservers, QueryExpr ** sexps, int nexps, QueryContext * qctx) { QexpSortData sort_data; sort_data.sexps = sexps; sort_data.nexps = nexps; sort_data.qctx = qctx; g_qsort_with_data (servers, nservers, sizeof (Bonobo_ServerInfo *), qexp_sort_compare, &sort_data); } libbonobo-2.32.1/activation-server/object-directory-config-file.c0000644000076400007640000000757111173072711021750 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ /* * oafd: OAF CORBA dameon. * * Copyright (C) 2000 Eazel, Inc. * * This library 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 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 * General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this library; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * * Authors: Mathieu Lacage * */ #include "config.h" #include #include #include #include #include #include #include "object-directory-config-file.h" #ifdef G_OS_WIN32 #include "bonobo-activation/bonobo-activation-private.h" #undef SERVER_CONFDIR #define SERVER_CONFDIR _bonobo_activation_win32_get_server_confdir () #endif static xmlDocPtr object_directory_load_xml_file (void) { xmlDocPtr doc = NULL; char *bonobo_activation_config_file; bonobo_activation_config_file = g_strconcat ( SERVER_CONFDIR, SERVER_CONFIG_FILE, NULL); #ifdef G_OS_WIN32 { gchar *contents; gsize length; if (g_file_get_contents (bonobo_activation_config_file, &contents, &length, NULL)) { doc = xmlParseMemory (contents, length); g_free (contents); } } #else doc = xmlParseFile (bonobo_activation_config_file); #endif /* check if the document was read successfully. */ if (doc == NULL) { g_warning (_("The Bonobo Activation configuration file was not read " "successfully. Please, check it is valid in: %s"), bonobo_activation_config_file); g_free (bonobo_activation_config_file); return NULL; } g_free (bonobo_activation_config_file); return doc; } char * object_directory_load_config_file (void) { char *result; xmlDocPtr doc; xmlNodePtr search_node; doc = object_directory_load_xml_file (); if (doc == NULL || doc->xmlRootNode == NULL) search_node = NULL; else search_node = doc->xmlRootNode->xmlChildrenNode; result = g_strdup (""); while (search_node != NULL) { if (strcmp (search_node->name, "searchpath") == 0) { xmlNodePtr item_node; item_node = search_node->xmlChildrenNode; while (item_node != NULL) { if (strcmp (item_node->name, "item") == 0) { char *directory; char *old_result = result; directory = xmlNodeGetContent (item_node); if (directory) { result = g_strconcat (old_result, G_SEARCHPATH_SEPARATOR_S, directory, NULL); xmlFree (directory); g_free (old_result); } } item_node = item_node->next; } } search_node = search_node->next; } xmlFreeDoc (doc); return result; } libbonobo-2.32.1/activation-server/activation-context-query.h0000644000076400007640000000653611173072711021313 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ /* * oafd: OAF CORBA dameon. * * Copyright (C) 1999, 2000 Red Hat, Inc. * Copyright (C) 1999, 2000 Eazel, Inc. * * This library 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 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 * General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this library; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * * Authors: Elliot Lee , * */ #ifndef QUERY_EXPR_H #define QUERY_EXPR_H 1 #include #include typedef enum { EXPR_FUNCTION, EXPR_VARIABLE, EXPR_ID, EXPR_BINOP, EXPR_UNOP, EXPR_CONSTANT } QueryExprType; typedef enum { CONST_STRING, CONST_STRINGV, CONST_NUMBER, CONST_BOOLEAN } QueryExprConstType; typedef struct { QueryExprConstType type; union { char *v_string; char **v_stringv; gdouble v_number; gboolean v_boolean; } u; guchar value_known, needs_free; } QueryExprConst; typedef struct _QueryExpr QueryExpr; struct _QueryExpr { QueryExprType type; union { struct { char *func_name; GSList *arguments; } function_value; char *var_value; char *id_value; struct { enum { OP_EQ, OP_NEQ, OP_LEQ, OP_GEQ, OP_LT, OP_GT, OP_OR, OP_AND, OP_MULTIPLY, OP_DIVIDE, OP_ADD, OP_SUBTRACT, OP_XOR } type; QueryExpr *op1, *op2; } binop_value; struct { enum { OP_NOT, OP_NEGATE } type; QueryExpr *op; } unop_value; QueryExprConst constant_value; } u; QueryExprConst cached_value; guchar has_fields, have_cached_value; }; QueryExpr *qexp_binop_new (QueryExpr * op1, int operand, QueryExpr * op2); QueryExpr *qexp_unop_new (int operand, QueryExpr * op); QueryExpr *qexp_function_new (char *name, GSList * exprlist); QueryExpr *qexp_variable_new (char *name); QueryExpr *qexp_id_new (char *name); QueryExpr *qexp_constant_new (QueryExprConst setme); const char *qexp_parse (const char *_code, QueryExpr ** retme); /* Return value is a string describing any errors */ void qexp_free (QueryExpr * qexp); /* For debugging purposes */ void qexp_dump (QueryExpr * exp); void qexp_constant_dump (QueryExprConst * c); gint qexp_constant_compare (const QueryExprConst * c1, const QueryExprConst * c2); typedef struct _QueryContext QueryContext; typedef QueryExprConst (*QueryIDEvaluateFunc) (Bonobo_ServerInfo * si, const char *id, QueryContext * qctx); struct _QueryContext { Bonobo_ServerInfo **sil; int nservers; QueryIDEvaluateFunc id_evaluator; CORBA_Context cctx; gpointer user_data; }; QueryExprConst qexp_evaluate (Bonobo_ServerInfo * si, QueryExpr * e, QueryContext * qctx); gboolean qexp_matches (Bonobo_ServerInfo * si, QueryExpr * e, QueryContext * qctx); void qexp_sort (Bonobo_ServerInfo ** servers, int nservers, QueryExpr ** sexps, int nexps, QueryContext * qctx); #endif libbonobo-2.32.1/activation-server/activation-context-corba.c0000644000076400007640000007164111173072711021226 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ /* * bonobo-activation-server: CORBA activation dameon. * * Copyright (C) 1999, 2000 Red Hat, Inc. * Copyright (C) 1999, 2000 Eazel, Inc. * Copyright (C) 1999, 2003 Ximian, Inc. * * This library 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 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 * General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this library; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * * Authors: Elliot Lee , * */ #ifdef HAVE_CONFIG_H #include #endif #include #include #include #include #include "server.h" #include "activation-context.h" #include "bonobo-activation-id.h" #include "activation-context-query.h" #include "activation-server-corba-extensions.h" #include #undef LOCALE_DEBUG #define Bonobo_LINK_TIME_TO_LIVE 256 static GObjectClass *parent_class = NULL; static void directory_info_free (ActivationContext *actx, CORBA_Environment *ev) { CORBA_Object_release (actx->obj, ev); actx->obj = CORBA_OBJECT_NIL; if (actx->by_iid) { g_hash_table_destroy (actx->by_iid); actx->by_iid = NULL; } if (actx->list) { CORBA_sequence_set_release (actx->list, CORBA_TRUE); CORBA_free (actx->list); actx->list = NULL; } if (actx->active_servers) g_hash_table_destroy (actx->active_servers); CORBA_free (actx->active_server_list); actx->active_server_list = NULL; } static void ac_update_active (ActivationContext *actx, CORBA_Environment *ev) { int i; Bonobo_ServerStateCache *cache; cache = Bonobo_ObjectDirectory_get_active_servers ( actx->obj, actx->time_active_pulled, ev); if (ev->_major != CORBA_NO_EXCEPTION) { CORBA_Object_release (actx->obj, ev); actx->obj = CORBA_OBJECT_NIL; } if (cache->_d) { if (actx->active_servers) { g_hash_table_destroy (actx->active_servers); CORBA_free (actx->active_server_list); } actx->active_server_list = cache; actx->time_active_pulled = time (NULL); actx->active_servers = g_hash_table_new (g_str_hash, g_str_equal); for (i = 0; i < cache->_u.active_servers._length; i++) g_hash_table_insert (actx->active_servers, cache->_u. active_servers._buffer[i], GINT_TO_POINTER (1)); } else CORBA_free (cache); } static char * ac_CORBA_Context_get_value (CORBA_Context ctx, const char *propname, CORBA_Environment *ev) { return activation_server_CORBA_Context_get_value ( ctx, propname, ex_Bonobo_Activation_IncompleteContext, ev); } static void ac_update_list (ActivationContext *actx, CORBA_Environment *ev) { int i; Bonobo_ServerInfoListCache *cache; cache = Bonobo_ObjectDirectory_get_servers ( actx->obj, actx->time_list_pulled, ev); if (ev->_major != CORBA_NO_EXCEPTION) { actx->list = NULL; CORBA_Object_release (actx->obj, ev); actx->obj = CORBA_OBJECT_NIL; return; } if (cache->_d) { if (actx->by_iid) g_hash_table_destroy (actx->by_iid); if (actx->list) { CORBA_sequence_set_release (actx->list, CORBA_TRUE); CORBA_free (actx->list); actx->list = NULL; } actx->list = ORBit_copy_value (&cache->_u.server_list, TC_Bonobo_ServerInfoList); actx->time_list_pulled = time (NULL); actx->by_iid = g_hash_table_new (g_str_hash, g_str_equal); for (i = 0; i < actx->list->_length; i++) g_hash_table_insert (actx->by_iid, actx->list->_buffer[i].iid, &(actx->list->_buffer[i])); } CORBA_free (cache); } static QueryExprConst ac_query_get_var (Bonobo_ServerInfo *si, const char *id, QueryContext *qctx) { QueryExprConst retval; ActivationContext *actx = qctx->user_data; retval.value_known = FALSE; retval.needs_free = FALSE; if (!g_ascii_strcasecmp (id, "_active")) { CORBA_Environment ev; CORBA_exception_init (&ev); ac_update_active (actx, &ev); CORBA_exception_free (&ev); retval.value_known = TRUE; retval.type = CONST_BOOLEAN; retval.u.v_boolean = g_hash_table_lookup (actx->active_servers, si->iid) ? TRUE : FALSE; } return retval; } /* This function should only be called by * impl_Bonobo_ActivationContext_query and * impl_Bonobo_ActivationContext_activateMatching - hairy implicit preconditions * exist. */ static void ac_query_run (ActivationContext *actx, const CORBA_char *requirements, const Bonobo_StringList *selection_order, CORBA_Context ctx, Bonobo_ServerInfo **items, CORBA_Environment *ev) { int total, i; QueryContext qctx; Bonobo_ServerInfo **orig_items; int item_count, orig_item_count; char *errstr; Bonobo_Activation_ParseFailed *ex; QueryExpr *qexp_requirements; QueryExpr **qexp_sort_items; /* First, parse the query */ errstr = (char *) qexp_parse (requirements, &qexp_requirements); if (errstr) { puts (errstr); g_strstrip (errstr); ex = Bonobo_Activation_ParseFailed__alloc (); ex->description = CORBA_string_dup (errstr); CORBA_exception_set (ev, CORBA_USER_EXCEPTION, ex_Bonobo_Activation_ParseFailed, ex); return; } qexp_sort_items = g_alloca (selection_order->_length * sizeof (QueryExpr *)); for (i = 0; i < selection_order->_length; i++) { errstr = (char *) qexp_parse (selection_order->_buffer[i], &qexp_sort_items[i]); if (errstr) { qexp_free (qexp_requirements); for (i--; i >= 0; i--) qexp_free (qexp_sort_items[i]); g_strstrip (errstr); ex = Bonobo_Activation_ParseFailed__alloc (); ex->description = CORBA_string_dup (errstr); CORBA_exception_set (ev, CORBA_USER_EXCEPTION, ex_Bonobo_Activation_ParseFailed, ex); return; } } total = actx->total_servers; orig_items = g_alloca (total * sizeof (Bonobo_ServerInfo *)); { int i; item_count = 0; if (actx->obj != CORBA_OBJECT_NIL) for (i = 0; i < actx->list->_length; i++, item_count++) items[item_count] = &actx->list->_buffer[i]; } memcpy (orig_items, items, item_count * sizeof (Bonobo_ServerInfo *)); orig_item_count = item_count; qctx.sil = orig_items; qctx.nservers = orig_item_count; qctx.cctx = ctx; qctx.id_evaluator = ac_query_get_var; qctx.user_data = actx; for (i = 0; i < item_count; i++) { if (!qexp_matches (items[i], qexp_requirements, &qctx)) items[i] = NULL; } qexp_sort (items, item_count, qexp_sort_items, selection_order->_length, &qctx); qexp_free (qexp_requirements); for (i = 0; i < selection_order->_length; i++) qexp_free (qexp_sort_items[i]); } static void ac_update_lists (ActivationContext *actx, CORBA_Environment *ev) { int prev, new; if (actx->refs > 0) { /* FIXME: what happens on re-enterency here ? * looks like this could get seriously out of date */ return; } if (actx->list) prev = actx->list->_length; else prev = 0; ac_update_list (actx, ev); if (actx->list) new = actx->list->_length; else new = 0; actx->total_servers += (new - prev); } static GList *clients = NULL; void activation_clients_cache_notify (void) { GList *l; GSList *notify = NULL, *l2; CORBA_Environment ev; CORBA_exception_init (&ev); for (l = clients; l; l = l->next) notify = g_slist_prepend (notify, CORBA_Object_duplicate (l->data, &ev)); for (l2 = notify; l2; l2 = l2->next) { Bonobo_ActivationClient_resetCache (l2->data, &ev); if (ev._major != CORBA_NO_EXCEPTION) clients = g_list_remove (clients, l2->data); CORBA_Object_release (l2->data, &ev); CORBA_exception_free (&ev); } g_slist_free (notify); } gboolean activation_clients_is_empty_scan (void) { GList *l, *check = NULL; for (l = clients; l; l = l->next) check = g_list_prepend (check, CORBA_Object_duplicate (l->data, NULL)); for (l = check; l; l = l->next) { if (ORBit_small_get_connection_status (l->data) == ORBIT_CONNECTION_DISCONNECTED) { GList *remove; if ((remove = g_list_find (clients, l->data))) { CORBA_Object_release (remove->data, NULL); clients = g_list_delete_link (clients, remove); } } CORBA_Object_release (l->data, NULL); } g_list_free (check); return clients == NULL; } static gboolean ac_rescan (gpointer is_idle_rescan) { static gboolean in_rescan = FALSE; static guint idle_id = 0; server_lock (); if (GPOINTER_TO_UINT (is_idle_rescan)) idle_id = 0; /* We tend to get a lot of 'broken' callbacks at once */ if (in_rescan) { if (!idle_id) idle_id = g_timeout_add (100, ac_rescan, GUINT_TO_POINTER(1)); server_unlock (); return FALSE; } in_rescan = TRUE; if (activation_clients_is_empty_scan ()) { #ifdef BONOBO_ACTIVATION_DEBUG g_warning ("All clients dead"); #endif check_quit (); } in_rescan = FALSE; server_unlock (); return FALSE; } static void active_client_cnx_broken (ORBitConnection *cnx, gpointer dummy) { ac_rescan (NULL); } static void impl_Bonobo_ActivationContext_addClient (PortableServer_Servant servant, const Bonobo_ActivationClient client, const CORBA_char *locales, CORBA_Environment *ev) { GList *l; gboolean new_locale; ORBitConnection *cnx; server_lock (); new_locale = register_interest_in_locales (locales); cnx = ORBit_small_get_connection (client); for (l = clients; l; l = l->next) if (cnx == ORBit_small_get_connection (l->data)) break; clients = g_list_prepend ( clients, CORBA_Object_duplicate (client, ev)); if (!l) { ORBit_small_listen_for_broken (client, G_CALLBACK (active_client_cnx_broken), NULL); check_quit (); } if (new_locale) bonobo_object_directory_reload (); server_unlock (); } static Bonobo_ObjectDirectoryList * impl_Bonobo_ActivationContext__get_directories (PortableServer_Servant servant, CORBA_Environment *ev) { ActivationContext *actx; Bonobo_ObjectDirectoryList *retval; server_lock (); actx = ACTIVATION_CONTEXT (servant); retval = Bonobo_ObjectDirectoryList__alloc (); if (actx->obj != CORBA_OBJECT_NIL) { retval->_length = 1; retval->_buffer = CORBA_sequence_Bonobo_ObjectDirectory_allocbuf (1); retval->_buffer[0] = CORBA_Object_duplicate (actx->obj, ev); } else { retval->_length = 0; } CORBA_sequence_set_release (retval, CORBA_TRUE); server_unlock (); return retval; } static void impl_Bonobo_ActivationContext_addDirectory (PortableServer_Servant servant, Bonobo_ObjectDirectory dir, CORBA_Environment *ev) { ActivationContext *actx; server_lock (); actx = ACTIVATION_CONTEXT (servant); if (actx->obj == dir) CORBA_exception_set (ev, CORBA_USER_EXCEPTION, ex_Bonobo_Activation_AlreadyListed, NULL); else { CORBA_Object_release (actx->obj, ev); actx->obj = CORBA_Object_duplicate (dir, ev); } server_unlock (); } static void impl_Bonobo_ActivationContext_removeDirectory (PortableServer_Servant servant, Bonobo_ObjectDirectory dir, CORBA_Environment *ev) { ActivationContext *actx; server_lock (); actx = ACTIVATION_CONTEXT (servant); if (dir != actx->obj) CORBA_exception_set (ev, CORBA_USER_EXCEPTION, ex_Bonobo_Activation_NotListed, NULL); else { if (actx->refs) { CORBA_Object_release (actx->obj, ev); actx->obj = CORBA_OBJECT_NIL; } else directory_info_free (actx, ev); } server_unlock (); } static void ac_do_activation (ActivationContext *actx, Bonobo_ServerInfo *server, const Bonobo_ActivationEnvironment *environment, Bonobo_ActivationResult *out, Bonobo_ActivationFlags flags, const char *hostname, Bonobo_ActivationClient client, CORBA_Context ctx, CORBA_Environment *ev) { int num_layers; Bonobo_ServerInfo *activatable; gchar *aid = NULL; /* When doing checks for shlib loadability, we * have to find the info on the factory object in case * a factory is inside a shlib */ if (!actx->obj || ev->_major != CORBA_NO_EXCEPTION) { Bonobo_GeneralError *errval = Bonobo_GeneralError__alloc (); errval->description = CORBA_string_dup (_("Couldn't find which child the server was listed in")); CORBA_exception_set (ev, CORBA_USER_EXCEPTION, ex_Bonobo_GeneralError, errval); return; } for (num_layers = 0, activatable = server; activatable && activatable->server_type && !strcmp (activatable->server_type, "factory") && num_layers < Bonobo_LINK_TIME_TO_LIVE; num_layers++) { activatable = g_hash_table_lookup (actx->by_iid, activatable->location_info); } if (activatable == NULL) { Bonobo_GeneralError *errval = Bonobo_GeneralError__alloc (); errval->description = CORBA_string_dup ("Couldn't find the factory server"); CORBA_exception_set (ev, CORBA_USER_EXCEPTION, ex_Bonobo_GeneralError, errval); return; } else if (num_layers == Bonobo_LINK_TIME_TO_LIVE) { Bonobo_GeneralError *errval = Bonobo_GeneralError__alloc (); errval->description = CORBA_string_dup ("Location loop"); CORBA_exception_set (ev, CORBA_USER_EXCEPTION, ex_Bonobo_GeneralError, errval); return; } /* A shared library must be on the same host as the activator in * order for loading to work properly (no, we're not going to * bother with loading a remote shlib into a process - it gets far too complicated * far too quickly :-) */ if (activatable) aid = g_strdup_printf ("OAFAID:[%s,%s,%s]", activatable->iid, activatable->username, activatable->hostname); if (activatable && activatable->server_type && !strcmp (activatable->server_type, "shlib") && !(flags & Bonobo_ACTIVATION_FLAG_NO_LOCAL) && (hostname && !strcmp (activatable->hostname, hostname))) { int j; out->res._d = Bonobo_ACTIVATION_RESULT_SHLIB; /* Here is an explanation as to why we add 2 to num_layers. * At the end of the string list, after all the factory iids are added * to the string list, we then add the iid of the shaed library and the * location info. This data is later used in oaf_server_activate_shlib * to activate the component */ out->res._u.res_shlib._length = num_layers + 2; out->res._u.res_shlib._buffer = CORBA_sequence_CORBA_string_allocbuf (num_layers + 2); /* Copy over factory info */ for (j = 0, activatable = server; activatable && !strcmp (activatable->server_type, "factory"); j++) { out->res._u.res_shlib._buffer[j] = CORBA_string_dup (activatable->iid); activatable = g_hash_table_lookup (actx->by_iid, activatable->location_info); } /* Copy shlib iid into buffer */ out->res._u.res_shlib._buffer[j] = CORBA_string_dup (activatable->iid); /* Copy location into last buffer slot for use in later activation */ out->res._u.res_shlib._buffer[j+1] = CORBA_string_dup (activatable->location_info); out->aid = CORBA_string_dup (aid); } else { CORBA_Object retval; char *iid = g_strdup (server->iid); retval = Bonobo_ObjectDirectory_activate ( actx->obj, iid, BONOBO_OBJREF (actx), environment, flags, client, ctx, ev); g_free (iid); if (ev->_major == CORBA_NO_EXCEPTION) { out->res._d = Bonobo_ACTIVATION_RESULT_OBJECT; out->res._u.res_object = retval; out->aid = CORBA_string_dup (aid); } #ifdef BONOBO_ACTIVATION_DEBUG else g_warning ("Activation of '%s' failed with exception '%s'", aid, ev->_id); #endif } g_free (aid); } static Bonobo_ActivationResult * impl_Bonobo_ActivationContext_activateMatchingFull ( PortableServer_Servant servant, const CORBA_char *requirements, const Bonobo_StringList *selection_order, const Bonobo_ActivationEnvironment *environment, const Bonobo_ActivationFlags flags, Bonobo_ActivationClient client, CORBA_Context ctx, CORBA_Environment *ev) { ActivationContext *actx; Bonobo_ActivationResult *retval = NULL; Bonobo_ServerInfo **items, *curitem; int i; char *hostname; server_lock (); actx = ACTIVATION_CONTEXT (servant); ac_update_lists (actx, ev); actx->refs++; items = g_alloca (actx->total_servers * sizeof (Bonobo_ServerInfo *)); ac_query_run (actx, requirements, selection_order, ctx, items, ev); if (ev->_major != CORBA_NO_EXCEPTION) goto out; hostname = ac_CORBA_Context_get_value (ctx, "hostname", ev); retval = Bonobo_ActivationResult__alloc (); retval->res._d = Bonobo_ACTIVATION_RESULT_NONE; bonobo_object_ref (actx); for (i = 0; (retval->res._d == Bonobo_ACTIVATION_RESULT_NONE) && items[i] && (i < actx->total_servers); i++) { curitem = items[i]; ac_do_activation (actx, curitem, environment, retval, flags, hostname, client, ctx, ev); } bonobo_object_unref (actx); if (retval->res._d == Bonobo_ACTIVATION_RESULT_NONE) retval->aid = CORBA_string_dup (""); g_free (hostname); out: if (ev->_major != CORBA_NO_EXCEPTION) { CORBA_free (retval); retval = NULL; } actx->refs--; server_unlock (); return retval; } static Bonobo_ActivationResult * impl_Bonobo_ActivationContext_activateMatching ( PortableServer_Servant servant, const CORBA_char *requirements, const Bonobo_StringList *selection_order, const Bonobo_ActivationEnvironment *environment, const Bonobo_ActivationFlags flags, CORBA_Context ctx, CORBA_Environment *ev) { return impl_Bonobo_ActivationContext_activateMatchingFull (servant, requirements, selection_order, environment, flags, CORBA_OBJECT_NIL, ctx, ev); } static Bonobo_ServerInfoList * impl_Bonobo_ActivationContext_query (PortableServer_Servant servant, const CORBA_char * requirements, const Bonobo_StringList * selection_order, CORBA_Context ctx, CORBA_Environment * ev) { ActivationContext *actx; Bonobo_ServerInfoList *retval; Bonobo_ServerInfo **items; int item_count; int i, j, total; server_lock (); actx = ACTIVATION_CONTEXT (servant); retval = Bonobo_ServerInfoList__alloc (); retval->_length = 0; retval->_buffer = NULL; CORBA_sequence_set_release (retval, CORBA_TRUE); /* Pull in new lists from OD servers */ ac_update_lists (actx, ev); actx->refs++; items = g_alloca (actx->total_servers * sizeof (Bonobo_ServerInfo *)); item_count = actx->total_servers; ac_query_run (actx, requirements, selection_order, ctx, items, ev); if (ev->_major == CORBA_NO_EXCEPTION) { for (total = i = 0; i < item_count; i++) { if (items[i]) total++; } retval->_length = total; retval->_buffer = CORBA_sequence_Bonobo_ServerInfo_allocbuf (total); for (i = j = 0; i < item_count; i++) { if (!items[i]) continue; Bonobo_ServerInfo_copy (&retval->_buffer[j], items[i]); j++; } } actx->refs--; server_unlock (); return retval; } static char * ac_aid_to_query_string (const CORBA_char *aid) { char *requirements; char *iid_requirement; char *username_requirement; char *hostname_requirement; BonoboActivationInfo *ainfo; ainfo = bonobo_activation_id_parse (aid); if (!ainfo) return NULL; iid_requirement = g_strconcat ("iid == \'", ainfo->iid, "\' ", NULL); if (ainfo->user) { username_requirement = g_strconcat ("AND username == \'", ainfo->user, "\'", NULL); } else { username_requirement = g_strdup (""); } if (ainfo->host) { hostname_requirement = g_strconcat ("AND hostname == \'", ainfo->host, "\'", NULL); } else { hostname_requirement = g_strdup (""); } requirements = g_strconcat (iid_requirement, username_requirement, hostname_requirement, NULL); g_free (iid_requirement); g_free (username_requirement); g_free (hostname_requirement); bonobo_activation_info_free (ainfo); return requirements; } static void ac_context_to_string_array (CORBA_Context context, char **sort_criteria, CORBA_Environment *ev) { char *context_username; char *context_hostname; context_username = ac_CORBA_Context_get_value (context, "username", ev); context_hostname = ac_CORBA_Context_get_value (context, "hostname", ev); if (ev->_major != CORBA_NO_EXCEPTION) { g_free (context_username); g_free (context_hostname); return; } sort_criteria[0] = g_strconcat ("username == \'", context_username, "\'", NULL); sort_criteria[1] = g_strconcat ("hostname == \'", context_hostname, "\'", NULL); sort_criteria[2] = NULL; g_free (context_username); g_free (context_hostname); } #define PARSE_ERROR_NOT_AN_AID (_("Not a valid Activation ID")) static Bonobo_ActivationResult * impl_Bonobo_ActivationContext_activateFromAidFull (PortableServer_Servant servant, const CORBA_char *aid, Bonobo_ActivationFlags flags, Bonobo_ActivationClient client, CORBA_Context ctx, CORBA_Environment *ev) { ActivationContext *actx; Bonobo_ActivationResult *retval = NULL; char *requirements; char *sort_criteria[3]; Bonobo_StringList selection_order; Bonobo_ActivationEnvironment environment; server_lock (); actx = ACTIVATION_CONTEXT (servant); if (strncmp ("OAFAID:", aid, 7) != 0) { Bonobo_Activation_ParseFailed *ex; ex = Bonobo_Activation_ParseFailed__alloc (); ex->description = CORBA_string_dup (PARSE_ERROR_NOT_AN_AID); CORBA_exception_set (ev, CORBA_USER_EXCEPTION, ex_Bonobo_Activation_ParseFailed, ex); goto act_out; } ac_update_lists (actx, ev); if (ev->_major != CORBA_NO_EXCEPTION) goto act_out; actx->refs++; requirements = ac_aid_to_query_string (aid); if (requirements == NULL) { actx->refs--; goto act_out; } ac_context_to_string_array (ctx, sort_criteria, ev); if (ev->_major != CORBA_NO_EXCEPTION) { actx->refs--; g_free (requirements); goto act_out; } selection_order._length = 2; selection_order._buffer = sort_criteria; CORBA_sequence_set_release (&selection_order, CORBA_FALSE); memset (&environment, 0, sizeof (Bonobo_ActivationEnvironment)); retval = impl_Bonobo_ActivationContext_activateMatchingFull ( actx, requirements, &selection_order, &environment, flags, client, ctx, ev); g_free (sort_criteria[0]); g_free (sort_criteria[1]); g_free (requirements); actx->refs--; act_out: server_unlock (); return retval; } static Bonobo_ActivationResult * impl_Bonobo_ActivationContext_activateFromAid (PortableServer_Servant servant, const CORBA_char *aid, Bonobo_ActivationFlags flags, CORBA_Context ctx, CORBA_Environment *ev) { return impl_Bonobo_ActivationContext_activateFromAidFull (servant, aid, flags, CORBA_OBJECT_NIL, ctx, ev); } static CORBA_long impl_Bonobo_ActivationContext_getVersion (PortableServer_Servant servant, CORBA_Environment *ev) { return (BONOBO_ACTIVATION_MAJOR_VERSION*10000 + BONOBO_ACTIVATION_MINOR_VERSION*100 + BONOBO_ACTIVATION_MICRO_VERSION); } static ActivationContext *main_ac = NULL; void activation_context_setup (PortableServer_POA poa, Bonobo_ObjectDirectory dir, CORBA_Environment *ev) { main_ac = g_object_new (activation_context_get_type (), "poa", poa, NULL); impl_Bonobo_ActivationContext_addDirectory (BONOBO_OBJECT (main_ac), dir, ev); } void activation_context_shutdown (void) { if (main_ac) { bonobo_object_set_immortal (BONOBO_OBJECT (main_ac), FALSE); bonobo_object_unref (BONOBO_OBJECT (main_ac)); main_ac = NULL; } } Bonobo_ActivationContext activation_context_get (void) { if (!main_ac) return CORBA_OBJECT_NIL; else return BONOBO_OBJREF (main_ac); } static void activation_context_finalize (GObject *object) { CORBA_Environment ev[1]; ActivationContext *actx = (ActivationContext *) object; CORBA_exception_init (ev); directory_info_free (actx, ev); CORBA_exception_free (ev); parent_class->finalize (object); } static void activation_context_class_init (ActivationContextClass *klass) { GObjectClass *object_class = (GObjectClass *) klass; POA_Bonobo_ActivationContext__epv *epv = &klass->epv; parent_class = g_type_class_peek_parent (klass); object_class->finalize = activation_context_finalize; epv->_get_directories = impl_Bonobo_ActivationContext__get_directories; epv->addClient = impl_Bonobo_ActivationContext_addClient; epv->addDirectory = impl_Bonobo_ActivationContext_addDirectory; epv->removeDirectory = impl_Bonobo_ActivationContext_removeDirectory; epv->query = impl_Bonobo_ActivationContext_query; epv->activateMatching = impl_Bonobo_ActivationContext_activateMatching; epv->activateFromAid = impl_Bonobo_ActivationContext_activateFromAid; epv->getVersion = impl_Bonobo_ActivationContext_getVersion; epv->activateMatchingFull = impl_Bonobo_ActivationContext_activateMatchingFull; epv->activateFromAidFull = impl_Bonobo_ActivationContext_activateFromAidFull; } static void activation_context_init (ActivationContext *actx) { bonobo_object_set_immortal (BONOBO_OBJECT (actx), TRUE); } BONOBO_TYPE_FUNC_FULL (ActivationContext, Bonobo_ActivationContext, BONOBO_TYPE_OBJECT, activation_context) libbonobo-2.32.1/activation-server/README0000644000076400007640000000071411173072711015024 00000000000000Debugging tips: * without a compile with debug: $ ulimit -c unlimited $ export BONOBO_ACTIVATION_DEBUG=1 That should dump a core from b-a-s in ~ * with debug; ( --enable-bonobo-activation-debug=yes ) $ export BONOBO_ACTIVATION_DEBUG=1 $ export BONOBO_ACTIVATION_DEBUG_OUTPUT=1 gdb /path/to/b-a-s/b-a-s $ r --register-server ... * If tons of applets are failing / not registering + most likely cause is a b-a-s crash.libbonobo-2.32.1/activation-server/object-directory-load.c0000644000076400007640000005412711173072711020504 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ /* * oafd: OAF CORBA dameon. * * Copyright (C) 1999, 2000 Red Hat, Inc. * Copyright (C) 1999, 2000 Eazel, Inc. * * This library 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 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 * General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this library; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * * Authors: Elliot Lee * Maciej Stachowiak * */ #ifdef HAVE_CONFIG_H #include #endif #include #include #include #include #include #include "bonobo-activation/bonobo-activation-private.h" #include "server.h" /* SAX Parser */ typedef enum { STATE_START, STATE_OAF_INFO, STATE_OAF_SERVER, STATE_OAF_ATTRIBUTE, STATE_ITEM, STATE_UNKNOWN, STATE_ERROR } ParseState; typedef struct { char *filename; /* Filename of .server file, or NULL * if parsing from memory. */ ParseState state; ParseState prev_state; int unknown_depth; const char *host; GSList **entries; Bonobo_ServerInfo *cur_server; Bonobo_ActivationProperty *cur_prop; GList *cur_props; GList *cur_items; } ParseInfo; #define IS_ELEMENT(x) (!strcmp (name, x)) static ParseInfo * parse_info_new (const char *filename, const char *host, GSList **entries) { ParseInfo *info = g_new0 (ParseInfo, 1); info->prev_state = STATE_UNKNOWN; info->state = STATE_START; info->host = host; info->entries = entries; info->filename = g_strdup (filename); return info; } static void parse_info_free (ParseInfo *info) { g_free (info->filename); g_free (info); } static char * od_validate (const char *iid, const char *type, const char *location) { int i; if (iid == NULL) { return g_strdup (_("a NULL iid is not valid")); } if (type == NULL) { return g_strdup_printf (_("iid %s has a NULL type"), iid); } if (location == NULL) { return g_strdup_printf (_("iid %s has a NULL location"), iid); } for (i = 0; iid && iid [i]; i++) { char c = iid [i]; if (c == ',' || c == '[' || c == ']' || /* Reserved for future expansion */ c == '!' || c == '#' || c == '|') { return g_strdup_printf (_("invalid character '%c' in iid '%s'"), c, iid); } } return NULL; } static void parse_oaf_server_attrs (ParseInfo *info, const gchar **attr_names, const gchar **attr_values) { const char *iid = NULL; const char *type = NULL; const char *location = NULL; const char *att, *val; char *error; int i = 0; info->state = STATE_OAF_SERVER; if (!attr_names || !attr_values) return; do { att = attr_names[i]; val = attr_values[i++]; if (att && val) { if (!iid && !strcmp (att, "iid")) iid = val; else if (!type && !strcmp (att, "type")) type = val; else if (!location && !strcmp (att, "location")) location = val; } } while (att && val); error = od_validate (iid, type, location); if (error != NULL) { g_warning ("%s", error); g_free (error); return; } #ifdef G_OS_WIN32 /* If this data has been read from a .server file, and the * path to the exe or dll starts with ../, make it relative to * the location of the .server file. Very convenient, means * yuo can install some software package that includes a * Bonobo component in a freeestanding location, and just need * to update your BONOBO_ACTIVATION_PATH so the .server file * is found. * * In other cases, possibly replace configure-time shlib or * exe location with the actual installed one. This is for * components that have been built with the same * configure-time prefix as libbonobo. */ if (!strcmp (type, "exe") || !strcmp (type, "shlib")) { if (info->filename != NULL && !strncmp (location, "..", 2) && G_IS_DIR_SEPARATOR (location[2])) { gchar *dirname = g_path_get_dirname (info->filename); location = g_build_filename (dirname, location, NULL); g_free (dirname); } else { location = _bonobo_activation_win32_replace_prefix (_bonobo_activation_win32_get_prefix (), location); } } #endif /* Now create the ServerInfo object */ info->cur_server = g_new0 (Bonobo_ServerInfo, 1); info->cur_server->iid = CORBA_string_dup (iid); info->cur_server->server_type = CORBA_string_dup (type); info->cur_server->location_info = CORBA_string_dup (location); info->cur_server->hostname = CORBA_string_dup (info->host); info->cur_server->username = CORBA_string_dup (g_get_user_name ()); info->cur_server->domain = CORBA_string_dup ("unused"); #ifdef G_OS_WIN32 if (!strcmp (type, "exe") || !strcmp (type, "shlib")) g_free ((char *) location); #endif } static GHashTable *interesting_locales = NULL; void add_initial_locales (void) { const char * const * langs; int i; if (!interesting_locales) interesting_locales = g_hash_table_new ( g_str_hash, g_str_equal); langs = g_get_language_names (); for (i = 0; langs[i] != NULL; i++) g_hash_table_insert (interesting_locales, g_strdup (langs[i]), GUINT_TO_POINTER (1)); } gboolean register_interest_in_locales (const char *locales) { int i; char **localev; gboolean new_locale = FALSE; localev = g_strsplit (locales, ",", 0); for (i = 0; localev[i]; i++) { if (!g_hash_table_lookup (interesting_locales, localev[i])) { #ifdef LOCALE_DEBUG g_warning ("New locale '%s' (%d)!", localev[i], g_list_length (locale_list)); #endif g_hash_table_insert (interesting_locales, g_strdup (localev[i]), GUINT_TO_POINTER (1)); new_locale = TRUE; } } g_strfreev (localev); return new_locale; } static gboolean is_locale_interesting (const char *name_with_locale) { const char *locale; if (!name_with_locale) return FALSE; if (!(locale = strchr (name_with_locale, '-'))) return TRUE; locale++; return g_hash_table_lookup (interesting_locales, locale) != NULL; } static gboolean od_string_to_boolean (const char *str) { if (!g_ascii_strcasecmp (str, "true") || !g_ascii_strcasecmp (str, "yes") || !strcmp (str, "1")) return TRUE; else return FALSE; } static void parse_oaf_attribute (ParseInfo *info, const gchar **attr_names, const gchar **attr_values) { int i = 0; const char *type = NULL; const char *name = NULL; const char *value = NULL; const char *att, *val; g_assert (info->cur_server); info->state = STATE_OAF_ATTRIBUTE; if (!attr_names || !attr_values) return; do { att = attr_names[i]; val = attr_values[i++]; if (att && val) { if (!strcmp (att, "type")) type = val; else if (!strcmp (att, "name")) { name = val; if (!is_locale_interesting (name)) return; } else if (!strcmp (att, "value")) value = val; } } while (att && val); if (!type || !name) return; if (name[0] == '_') g_critical ("%s is an invalid property name " "- property names beginning with '_' are reserved", name); info->cur_prop = ORBit_small_alloc (TC_Bonobo_ActivationProperty); info->cur_prop->name = CORBA_string_dup (name); if (g_ascii_strcasecmp (type, "stringv") == 0) { info->cur_prop->v._d = Bonobo_ACTIVATION_P_STRINGV; } else if (g_ascii_strcasecmp (type, "number") == 0) { info->cur_prop->v._d = Bonobo_ACTIVATION_P_NUMBER; info->cur_prop->v._u.value_number = atof (value); } else if (g_ascii_strcasecmp (type, "boolean") == 0) { info->cur_prop->v._d = Bonobo_ACTIVATION_P_BOOLEAN; info->cur_prop->v._u.value_boolean = od_string_to_boolean (value); } else { /* Assume string */ info->cur_prop->v._d = Bonobo_ACTIVATION_P_STRING; if (value != NULL) { info->cur_prop->v._u.value_string = CORBA_string_dup (value); } else { g_warning (_("Property '%s' has no value"), info->cur_prop->name); info->cur_prop->v._u.value_string = CORBA_string_dup (""); } } } static void parse_stringv_item (ParseInfo *info, const gchar **attr_names, const gchar **attr_values) { const char *value = NULL; const char *att, *val; int i = 0; if (!attr_names || !attr_values) return; do { att = attr_names[i]; val = attr_values[i++]; if (att && val) { if (!value && !strcmp (att, "value")) { value = val; break; } } } while (att && val); if (value) info->cur_items = g_list_prepend (info->cur_items, CORBA_string_dup (value)); info->state = STATE_ITEM; } static void od_start_element (GMarkupParseContext *context, const gchar *name, const gchar **attribute_names, const gchar **attribute_values, gpointer user_data, GError **error) { ParseInfo *info = user_data; switch (info->state) { case STATE_START: if (IS_ELEMENT ("oaf_info")) info->state = STATE_OAF_INFO; else { info->prev_state = info->state; info->state = STATE_UNKNOWN; info->unknown_depth++; } break; case STATE_OAF_INFO: if (IS_ELEMENT ("oaf_server")) parse_oaf_server_attrs (info, attribute_names, attribute_values); else { info->prev_state = info->state; info->state = STATE_UNKNOWN; info->unknown_depth++; } break; case STATE_OAF_SERVER: if (IS_ELEMENT ("oaf_attribute")) parse_oaf_attribute (info, attribute_names, attribute_values); else { info->prev_state = info->state; info->state = STATE_UNKNOWN; info->unknown_depth++; } break; case STATE_OAF_ATTRIBUTE: if (IS_ELEMENT ("item")) parse_stringv_item (info, attribute_names, attribute_values); else { info->prev_state = info->state; info->state = STATE_UNKNOWN; info->unknown_depth++; } break; case STATE_UNKNOWN: info->unknown_depth++; break; case STATE_ERROR: break; break; default: g_error ("start element, unknown state: %d", info->state); } } static void add_entry (ParseInfo *info) { GSList *l; for (l = *(info->entries); l; l = l->next) { Bonobo_ServerInfo *si = l->data; if (!strcmp (si->iid, info->cur_server->iid)) return; } *(info->entries) = g_slist_prepend (*(info->entries), info->cur_server); } static void od_end_element (GMarkupParseContext *context, const gchar *name, gpointer user_data, GError **error) { ParseInfo *info = user_data; switch (info->state) { case STATE_ITEM: info->state = STATE_OAF_ATTRIBUTE; break; case STATE_OAF_ATTRIBUTE: { if (info->cur_prop && info->cur_prop->v._d == Bonobo_ACTIVATION_P_STRINGV) { gint i, len; GList *p; len = g_list_length (info->cur_items); info->cur_prop->v._u.value_stringv._length = len; info->cur_prop->v._u.value_stringv._buffer = CORBA_sequence_CORBA_string_allocbuf (len); info->cur_items = g_list_reverse (info->cur_items); for (i = 0, p = info->cur_items; p; p = p->next, i++) info->cur_prop->v._u. value_stringv._buffer[i] = p->data; g_list_free (info->cur_items); info->cur_items = NULL; } if (info->cur_prop) { info->cur_props = g_list_prepend (info->cur_props, info->cur_prop); info->cur_prop = NULL; } info->state = STATE_OAF_SERVER; break; } case STATE_OAF_SERVER: { if (info->cur_server) { GList *p; gint len, i; len = g_list_length (info->cur_props); info->cur_server->props._length = len; info->cur_server->props._buffer = CORBA_sequence_Bonobo_ActivationProperty_allocbuf (len); info->cur_props = g_list_reverse (info->cur_props); for (i = 0, p = info->cur_props; p; p = p->next, i++) { Bonobo_ActivationProperty_copy (&info->cur_server->props._buffer[i], (Bonobo_ActivationProperty *) p->data); CORBA_free (p->data); } g_list_free (info->cur_props); info->cur_props = NULL; add_entry (info); info->cur_server = NULL; } info->state = STATE_OAF_INFO; break; } case STATE_OAF_INFO: { info->state = STATE_START; break; } case STATE_UNKNOWN: info->unknown_depth--; if (info->unknown_depth == 0) info->state = info->prev_state; break; case STATE_START: break; default: g_error ("end element, unknown state: %d", info->state); } } static void od_error (GMarkupParseContext *context, GError *error, gpointer user_data) { ParseInfo *info = user_data; g_error ("Failed to parse: '%s' in file '%s'", error ? error->message : "", info->filename ? info->filename : ""); } static GMarkupParser od_gmarkup_parser = { od_start_element, od_end_element, NULL, NULL, od_error }; static void od_load_file (const char *file, GSList **entries, const char *host) { gsize length; gchar *contents = NULL; ParseInfo *info; GMarkupParseContext *ctxt = NULL; if (!g_file_get_contents (file, &contents, &length, NULL)) goto err; info = parse_info_new (file, host, entries); ctxt = g_markup_parse_context_new (&od_gmarkup_parser, 0, info, (GDestroyNotify) parse_info_free); if (!g_markup_parse_context_parse (ctxt, contents, length, NULL)) { err: g_warning (_("Could not parse badly formed XML document %s"), file); } if (ctxt) g_markup_parse_context_free (ctxt); g_free (contents); } void bonobo_parse_server_info_memory (const char *server_info, GSList **entries, const char *host) { ParseInfo *info; GMarkupParseContext *ctxt; info = parse_info_new (NULL, host, entries); ctxt = g_markup_parse_context_new (&od_gmarkup_parser, 0, info, (GDestroyNotify) parse_info_free); if (!g_markup_parse_context_parse (ctxt, server_info, strlen (server_info), NULL)) g_warning ("Failed to parse serverinfo from memory"); g_markup_parse_context_free (ctxt); } static gboolean od_filename_has_extension (const char *filename, const char *extension) { char *last_dot; last_dot = strrchr (filename, '.'); return last_dot != NULL && strcmp (last_dot, extension) == 0; } static void od_load_directory (const char *directory, GSList **entries, const char *host) { GDir *directory_handle; const char *directory_entry; char *pathname; g_log (G_LOG_DOMAIN, G_LOG_LEVEL_DEBUG, _("Trying dir %s"), directory); directory_handle = g_dir_open (directory, 0, NULL); if (directory_handle == NULL) { /* FIXME */ return; } for (directory_entry = g_dir_read_name (directory_handle); directory_entry != NULL; directory_entry = g_dir_read_name (directory_handle)) { pathname = g_build_filename (directory, directory_entry, NULL); if (od_filename_has_extension (pathname, ".server")) { od_load_file (pathname, entries, host); } g_free (pathname); } g_dir_close (directory_handle); } void bonobo_server_info_load (char **directories, Bonobo_ServerInfoList *servers, GPtrArray const *runtime_servers, GHashTable **iid_to_server_info_map, const char *host) { GSList *entries; int length; GSList *p; int i, j; g_return_if_fail (directories); g_return_if_fail (iid_to_server_info_map); entries = NULL; if (*iid_to_server_info_map != NULL) { g_hash_table_destroy (*iid_to_server_info_map); } *iid_to_server_info_map = g_hash_table_new (g_str_hash, g_str_equal); /* Load each directory */ for (i = 0; directories[i] != NULL; i++) od_load_directory (directories[i], &entries, host); /* Now convert 'entries' into something that the server can store and pass back */ length = g_slist_length (entries); servers->_buffer = CORBA_sequence_Bonobo_ServerInfo_allocbuf (length + runtime_servers->len); servers->_length = length + runtime_servers->len; servers->_maximum = servers->_length; for (j = 0, p = entries; j < length; j++, p = p->next) { memcpy (&servers->_buffer[j], p->data, sizeof (Bonobo_ServerInfo)); g_hash_table_insert (*iid_to_server_info_map, servers->_buffer[j].iid, &servers->_buffer[j]); } /* append information of runtime-defined servers */ for (j = 0; j < runtime_servers->len; j++) { servers->_buffer[length + j] = *(Bonobo_ServerInfo *) g_ptr_array_index (runtime_servers, j); g_hash_table_insert (*iid_to_server_info_map, servers->_buffer[length + j].iid, &servers->_buffer[length + j]); } g_slist_foreach (entries, (GFunc) g_free, NULL); g_slist_free (entries); } libbonobo-2.32.1/activation-server/AUTHORS0000644000076400007640000000022311173072711015207 00000000000000Michael Meeks Mark McLoughlin Elliot Lee Maciej Stachowiak libbonobo-2.32.1/activation-server/object-directory.h0000644000076400007640000000653411173072711017573 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /** * object-directory.h: Directory based object * * Author: * Michael Meeks (michael@ximian.com) * * Copyright 2003 Ximian, Inc. */ #ifndef _OBJECT_DIRECTORY_H_ #define _OBJECT_DIRECTORY_H_ #include #include #include #include #include #include G_BEGIN_DECLS typedef struct _ObjectDirectory ObjectDirectory; typedef struct _ObjectDirectoryPrivate ObjectDirectoryPrivate; #define OBJECT_TYPE_DIRECTORY (object_directory_get_type ()) #define OBJECT_DIRECTORY(o) (G_TYPE_CHECK_INSTANCE_CAST ((bonobo_object (o)), OBJECT_TYPE_DIRECTORY, ObjectDirectory)) #define OBJECT_DIRECTORY_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), OBJECT_TYPE_DIRECTORY, ObjectDirectoryClass)) #define OBJECT_IS_DIRECTORY(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), OBJECT_TYPE_DIRECTORY)) #define OBJECT_IS_DIRECTORY_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), OBJECT_TYPE_DIRECTORY)) struct _ObjectDirectory { BonoboObject parent; /* Information on all servers */ GHashTable *by_iid; /* Includes contents of attr_runtime_servers at the end */ Bonobo_ServerInfoList *attr_servers; /* Servers without .server file, completely defined at run-time */ GPtrArray *attr_runtime_servers; Bonobo_CacheTime time_list_changed; /* CORBA Object tracking */ GHashTable *active_server_lists; guint n_active_servers; guint no_servers_timeout; Bonobo_CacheTime time_active_changed; /* Source polling bits */ char **registry_source_directories; time_t time_did_stat; GHashTable *registry_directory_mtimes; /* Notification source */ BonoboEventSource *event_source; /* Client -> ClientContext */ GHashTable *client_contexts; }; typedef struct { BonoboObjectClass parent_class; POA_Bonobo_ObjectDirectory__epv epv; } ObjectDirectoryClass; GType object_directory_get_type (void) G_GNUC_CONST; void bonobo_object_directory_init (PortableServer_POA poa, const char *source_directory, CORBA_Environment *ev); void bonobo_object_directory_shutdown (PortableServer_POA poa, CORBA_Environment *ev); Bonobo_ObjectDirectory bonobo_object_directory_get (void); Bonobo_EventSource bonobo_object_directory_event_source_get (void); CORBA_Object bonobo_object_directory_re_check_fn (const Bonobo_ActivationEnvironment *environment, const char *od_iorstr, gpointer user_data); void bonobo_object_directory_reload (void); void reload_object_directory (void); void check_quit (void); void od_finished_internal_registration (void); G_END_DECLS #endif /* _OBJECT_DIRECTORY_H_ */ libbonobo-2.32.1/activation-server/activation-server-corba-extensions.h0000644000076400007640000000227611173072711023250 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ /* * oafd * * Copyright (C) 2000 Eazel, Inc. * * This library 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 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 * General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this library; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * * Authors: Maciej Stachowiak * */ /* activation-server-corba-extensions.h - CORBA utility functions */ #include char *activation_server_CORBA_Context_get_value (CORBA_Context ctx, const char *propname, const CORBA_char *exception_if_fail, CORBA_Environment *ev); libbonobo-2.32.1/activation-server/client.c0000644000076400007640000002343511173072711015573 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ /* * oafd: OAF CORBA dameon. * * Copyright (C) 1999, 2000 Red Hat, Inc. * Copyright (C) 1999, 2000 Eazel, Inc. * * This library 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 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 * General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this library; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * * Authors: Elliot Lee , * */ #include "config.h" #include #include #include #include #include #include static gchar *acior = NULL, *specs = NULL, *add_path = NULL, *remove_path = NULL, *registerior = NULL, *registeriid = NULL; static gboolean do_query; static CORBA_ORB orb; static CORBA_Environment ev; static const GOptionEntry options[] = { {"ac-ior", '\0', 0, G_OPTION_ARG_STRING, &acior, "IOR of ActivationContext to use", "IOR"}, {"do-query", 'q', 0, G_OPTION_ARG_NONE, &do_query, "Run a query instead of activating", "QUERY"}, {"spec", 's', 0, G_OPTION_ARG_STRING, &specs, "Specification string for object to activate", "SPEC"}, {"add-path", '\0', 0, G_OPTION_ARG_FILENAME, &add_path, "Specification string for search path to be added in runtime", "PATH"}, {"remove-path", '\0', 0, G_OPTION_ARG_FILENAME, &remove_path, "Specification string for search path to be removed in runtime", "PATH"}, {"register-ior", '\0', 0, G_OPTION_ARG_STRING, ®isterior, "IOR of the server to be registered", "IOR"}, {"register-iid", '\0', 0, G_OPTION_ARG_STRING, ®isteriid, "IID of the server to be registered", "IID"}, {NULL} }; static void od_dump_list (Bonobo_ServerInfoList * list) { int i, j, k; for (i = 0; i < list->_length; i++) { g_print ("IID %s, type %s, location %s\n", list->_buffer[i].iid, list->_buffer[i].server_type, list->_buffer[i].location_info); for (j = 0; j < list->_buffer[i].props._length; j++) { Bonobo_ActivationProperty *prop = &(list->_buffer[i].props._buffer[j]); g_print (" %s = ", prop->name); switch (prop->v._d) { case Bonobo_ACTIVATION_P_STRING: g_print ("\"%s\"\n", prop->v._u.value_string); break; case Bonobo_ACTIVATION_P_NUMBER: g_print ("%f\n", prop->v._u.value_number); break; case Bonobo_ACTIVATION_P_BOOLEAN: g_print ("%s\n", prop->v. _u.value_boolean ? "TRUE" : "FALSE"); break; case Bonobo_ACTIVATION_P_STRINGV: g_print ("["); for (k = 0; k < prop->v._u.value_stringv._length; k++) { g_print ("\"%s\"", prop->v._u. value_stringv._buffer[k]); if (k < (prop->v._u. value_stringv._length - 1)) g_print (", "); } g_print ("]\n"); break; } } } } static void add_load_path (void) { Bonobo_DynamicPathLoadResult res; res = bonobo_activation_dynamic_add_path (add_path, &ev); switch (res) { case Bonobo_DYNAMIC_LOAD_SUCCESS: g_print ("Doing dynamic path(%s) adding successfully\n", add_path); break; case Bonobo_DYNAMIC_LOAD_ERROR: g_print ("Doing dynamic path(%s) adding unsuccessfully\n", add_path); break; case Bonobo_DYNAMIC_LOAD_ALREADY_LISTED: g_print ("The path(%s) already been listed\n", add_path); break; default: g_print ("Unknown error return (%d)\n", res); break; } } static void remove_load_path (void) { Bonobo_DynamicPathLoadResult res; res = bonobo_activation_dynamic_remove_path (remove_path, &ev); switch (res) { case Bonobo_DYNAMIC_LOAD_SUCCESS: g_print ("Doing dynamic path(%s) removing successfully\n", remove_path); break; case Bonobo_DYNAMIC_LOAD_ERROR: g_print ("Doing dynamic path(%s) removing unsuccessfully\n", remove_path); break; case Bonobo_DYNAMIC_LOAD_NOT_LISTED: g_print ("The path(%s) wasn't listed\n", remove_path); break; default: g_print ("Unknown error return (%d)\n", res); break; } } static int register_activate_server(void) { Bonobo_RegistrationResult res; CORBA_Object r_obj = CORBA_OBJECT_NIL; if (registerior) { r_obj = CORBA_ORB_string_to_object (orb, registerior, &ev); if (ev._major != CORBA_NO_EXCEPTION) return 1; } if (r_obj) { res = bonobo_activation_active_server_register(registeriid, r_obj); if (res == Bonobo_ACTIVATION_REG_SUCCESS || res == Bonobo_ACTIVATION_REG_ALREADY_ACTIVE) return 0; } return 1; } static void do_query_server_info(void) { Bonobo_ActivationContext ac; Bonobo_ServerInfoList *slist; Bonobo_StringList reqs = { 0 }; if (acior) { ac = CORBA_ORB_string_to_object (orb, acior, &ev); if (ev._major != CORBA_NO_EXCEPTION) g_print ("Error doing string_to_object(%s)\n", acior); } else ac = bonobo_activation_activation_context_get (); slist = Bonobo_ActivationContext_query ( ac, specs, &reqs, bonobo_activation_context_get (), &ev); switch (ev._major) { case CORBA_NO_EXCEPTION: od_dump_list (slist); CORBA_free (slist); break; case CORBA_USER_EXCEPTION: { char *id; id = CORBA_exception_id (&ev); g_print ("User exception \"%s\" resulted from query\n", id); if (!strcmp (id, "IDL:Bonobo/ActivationContext/ParseFailed:1.0")) { Bonobo_Activation_ParseFailed * exdata = CORBA_exception_value (&ev); if (exdata) g_print ("Description: %s\n", exdata->description); } } break; case CORBA_SYSTEM_EXCEPTION: { char *id; id = CORBA_exception_id (&ev); g_print ("System exception \"%s\" resulted from query\n", id); } break; } return; } static int do_activating(void) { Bonobo_ActivationEnvironment environment; Bonobo_ActivationResult *a_res; Bonobo_ActivationContext ac; Bonobo_StringList reqs = { 0 }; char *resior; int res = 1; if (acior) { ac = CORBA_ORB_string_to_object (orb, acior, &ev); if (ev._major != CORBA_NO_EXCEPTION) return 1; } else ac = bonobo_activation_activation_context_get (); memset (&environment, 0, sizeof (Bonobo_ActivationEnvironment)); a_res = Bonobo_ActivationContext_activateMatchingFull ( ac, specs, &reqs, &environment, 0, bonobo_activation_client_get (), bonobo_activation_context_get (), &ev); switch (ev._major) { case CORBA_NO_EXCEPTION: g_print ("Activation ID \"%s\" ", a_res->aid); switch (a_res->res._d) { case Bonobo_ACTIVATION_RESULT_OBJECT: g_print ("RESULT_OBJECT\n"); resior = CORBA_ORB_object_to_string (orb, a_res-> res._u.res_object, &ev); g_print ("%s\n", resior); break; case Bonobo_ACTIVATION_RESULT_SHLIB: g_print ("RESULT_SHLIB\n"); break; case Bonobo_ACTIVATION_RESULT_NONE: g_print ("RESULT_NONE\n"); break; } res = 0; break; case CORBA_USER_EXCEPTION: { char *id; id = CORBA_exception_id (&ev); g_print ("User exception \"%s\" resulted from query\n", id); if (!strcmp (id,"IDL:Bonobo/ActivationContext/ParseFailed:1.0")) { Bonobo_Activation_ParseFailed * exdata = CORBA_exception_value (&ev); if (exdata) g_print ("Description: %s\n", exdata->description); } else if (!strcmp (id,"IDL:Bonobo/GeneralError:1.0")) { Bonobo_GeneralError *exdata; exdata = CORBA_exception_value (&ev); if (exdata) g_print ("Description: %s\n", exdata->description); } res = 1; } break; case CORBA_SYSTEM_EXCEPTION: { char *id; id = CORBA_exception_id (&ev); g_print ("System exception \"%s\" resulted from query\n", id); res = 1; } break; } return res; } int main (int argc, char *argv[]) { GOptionContext *ctx; GError *error = NULL; gboolean do_usage_exit = FALSE; int res = 0; CORBA_exception_init (&ev); g_set_prgname ("activation-client"); ctx = g_option_context_new (NULL); g_option_context_add_main_entries (ctx, options, GETTEXT_PACKAGE); if (!g_option_context_parse (ctx, &argc, &argv, &error)) { g_printerr ("%s\n", error->message); g_error_free (error); do_usage_exit = TRUE; } g_option_context_free (ctx); if (!do_usage_exit && !specs && !add_path && !remove_path && !(registerior && registeriid)) { g_printerr ("You must specify an operation to perform.\n"); do_usage_exit = TRUE; } if (do_usage_exit) { g_printerr ("Run '%s --help' to see a full list of available command line options.\n", g_get_prgname ()); exit (1); } orb = bonobo_activation_init (argc, argv); if (specs) { g_print ("Query spec is \"%s\"\n", specs); if (do_query) do_query_server_info(); else res = do_activating(); } if (add_path && !res) add_load_path(); if (remove_path && !res) remove_load_path(); if (registerior && registeriid && !res) res = register_activate_server(); CORBA_exception_free (&ev); return res; } libbonobo-2.32.1/activation-server/activation-context-query-lexer.l0000644000076400007640000000500011173072711022415 00000000000000%{ /* A good bit of this file is taken from kdelibs/corba/kded/lex.l, which solved almost the same problem in a nice way. It was written by either David Faure or Steffan Hansen (unclear which). Don Comeau also deserves credit for teaching me how to use the whole lex/yacc thing in the beginning. - ECL */ #include "activation-context-query.h" #include "activation-context-query-parser.h" #include #include #define YY_NO_UNPUT static char* putSymbol (char *_name); static char* putString (char *_name); static int yywrap (void); int yylex (void); void initFlex (const char *_code); %} DIGIT [0-9] %% "==" { return P_EQ; } "!=" { return P_NEQ; } "<" { return P_LT; } ">" { return P_GT; } "<=" { return P_LEQ; } ">=" { return P_GEQ; } "&&" { return P_AND; } "AND" { return P_AND; } "||" { return P_OR; } "OR" { return P_OR; } "~" { return P_NOT; } "NOT" { return P_NOT; } "^^" { return P_XOR; } "XOR" { return P_XOR; } "/" { return P_DIVIDE; } "+" { return P_ADD; } "-" { return P_SUBTRACT; } "*" { return P_MULTIPLY; } "," { return COMMA; } "." { return PERIOD; } "(" { return LPAREN; } ")" { return RPAREN; } "[" { return LBRACKET; } "]" { return RBRACKET; } "$" { return P_DOLLAR; } (TRUE|true|True|YES|yes|Yes) { yylval.val_boolean = TRUE; return P_CONST_BOOLEAN; } (FALSE|false|False|NO|no|No) { yylval.val_boolean = FALSE; return P_CONST_BOOLEAN; } "'"(\\'|[^'])+"'" { yylval.val_string = putString (yytext); return P_CONST_STRING; } {DIGIT}+"."{DIGIT}+ { yylval.val_number = atof (yytext); return P_CONST_NUMBER; } {DIGIT}+ { yylval.val_number = atof (yytext); return P_CONST_NUMBER; } [a-zA-Z_][a-zA-Z0-9_:]* { yylval.val_string = putSymbol (yytext); return P_CONST_ID; } [ \t\n\r]+ /* eat up whitespace */ . { return PARSE_ERROR; } %% static char * putSymbol (char *_name) { return g_strdup (_name); } static char * putString (char *_str) { int l = strlen (_str); char *p = (char*) g_malloc (l + 1); char *s = _str + 1; char *d = p; while (s < _str + l - 1) { if (*s != '\\') { *d++ = *s++; } else { s++; if (*s == '\\') *d++ = '\\'; else if (*s == 'n') *d++ = '\n'; else if (*s == 'r') *d++ = '\r'; else if (*s == 't') *d++ = '\t'; s++; } } *d = 0; return p; } void initFlex (const char *_code) { yy_switch_to_buffer (yy_scan_string (_code)); } static int yywrap (void) { yy_delete_buffer (YY_CURRENT_BUFFER); return 1; } libbonobo-2.32.1/activation-server/object-directory-activate.c0000644000076400007640000001663111173072711021363 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ /* * oafd: OAF CORBA dameon. * * Copyright (C) 1999, 2000 Red Hat, Inc. * Copyright (C) 1999, 2000 Eazel, Inc. * * This library 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 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 * General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this library; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * * Authors: Elliot Lee , * */ #include "config.h" #include #include #include #include #include #include #include #include "bonobo-activation/bonobo-activation-private.h" #include "server.h" #include "activation-server-corba-extensions.h" static CORBA_Object od_server_activate_factory (Bonobo_ServerInfo *si, ODActivationInfo *actinfo, const Bonobo_ActivationEnvironment *environment, Bonobo_ActivationClient client, CORBA_Environment *ev) { Bonobo_ActivationResult *res; Bonobo_StringList selorder; Bonobo_ActivationFlags flags; CORBA_Object retval = CORBA_OBJECT_NIL; CORBA_Object factory = CORBA_OBJECT_NIL; char *requirements; char *iid; memset (&selorder, 0, sizeof (Bonobo_StringList)); requirements = g_alloca (strlen (si->location_info) + sizeof ("iid == ''")); sprintf (requirements, "iid == '%s'", si->location_info); flags = ((actinfo->flags | Bonobo_ACTIVATION_FLAG_NO_LOCAL) & (~Bonobo_ACTIVATION_FLAG_PRIVATE)); iid = g_strdup (si->iid); res = Bonobo_ActivationContext_activateMatchingFull ( actinfo->ac, requirements, &selorder, environment, flags, client, actinfo->ctx, ev); si = NULL; /* si can have been freed - due to re-enterancy */ if (ev->_major != CORBA_NO_EXCEPTION) goto out; switch (res->res._d) { case Bonobo_ACTIVATION_RESULT_NONE: CORBA_free (res); goto out; break; case Bonobo_ACTIVATION_RESULT_OBJECT: factory = res->res._u.res_object; break; default: g_assert_not_reached (); break; } /* Here comes the too clever by 1/2 bit: * we drop the (recursive) 'server_lock' - so we * can get other threads re-entering / doing activations * here. cf. od_server_activate_exe. */ { ServerLockState state; state = server_lock_drop (); retval = Bonobo_GenericFactory_createObject (factory, iid, ev); if (ev->_major != CORBA_NO_EXCEPTION) retval = CORBA_OBJECT_NIL; server_lock_resume (state); } CORBA_free (res); out: g_free (iid); return retval; } /* Copied largely from goad.c, goad_server_activate_exe() */ static CORBA_Object od_server_activate_exe (Bonobo_ServerInfo *si, ODActivationInfo *actinfo, CORBA_Object od_obj, const Bonobo_ActivationEnvironment *environment, CORBA_Environment *ev) { char **args; char *extra_arg, *ctmp, *ctmp2; int fd_arg; int i; char *iorstr, *iid; CORBA_Object retval; /* Munge the args */ args = g_alloca (36 * sizeof (char *)); #ifndef G_OS_WIN32 /* Split location_info into executable pathname and command-line * arguments. */ for (i = 0, ctmp = ctmp2 = si->location_info; i < 32; i++) { while (*ctmp2 && !g_ascii_isspace ((guchar) *ctmp2)) ctmp2++; if (!*ctmp2) break; args[i] = g_alloca (ctmp2 - ctmp + 1); strncpy (args[i], ctmp, ctmp2 - ctmp); args[i][ctmp2 - ctmp] = '\0'; ctmp = ctmp2; while (*ctmp2 && g_ascii_isspace ((guchar) *ctmp2)) ctmp2++; if (!*ctmp2) break; ctmp = ctmp2; } if (!g_ascii_isspace ((guchar) *ctmp) && i < 32) args[i++] = ctmp; if (i > 1) g_warning ("Passing command-line arguments in .server files is deprecated: \"%s\"", si->location_info); #else /* We don't support command-line arguments in the location on * Win32, as the executable pathname might well contain spaces * itself (C:\Program Files\Evolution 2.6.2\libexec\...). * location_info is just the executable's pathname. */ args[0] = g_alloca (strlen (si->location_info) + 1); strcpy (args[0], si->location_info); i = 1; #endif extra_arg = g_alloca (strlen (si->iid) + sizeof ("--oaf-activate-iid=")); args[i++] = extra_arg; sprintf (extra_arg, "--oaf-activate-iid=%s", si->iid); fd_arg = i; extra_arg = g_alloca (sizeof ("--oaf-ior-fd=") + 10); args[i++] = "--oaf-ior-fd=%d"; iorstr = CORBA_ORB_object_to_string ( bonobo_activation_orb_get (), od_obj, ev); if (ev->_major != CORBA_NO_EXCEPTION) iorstr = NULL; if(actinfo->flags & Bonobo_ACTIVATION_FLAG_PRIVATE) { extra_arg = g_alloca (sizeof ("--oaf-private")); args[i++] = extra_arg; g_snprintf (extra_arg, sizeof ("--oaf-private"), "--oaf-private"); } args[i] = NULL; iid = g_strdup (si->iid); /* Here comes the too clever by 1/2 bit: * we drop the (recursive) 'server_lock' - so we * can get other threads re-entering / doing activations * here. cf. od_server_activate_factory */ { ServerLockState state; state = server_lock_drop (); /* * We set the process group of activated servers to our process group; * this allows people to destroy all OAF servers along with oafd * if necessary */ retval = bonobo_activation_server_by_forking ( (const char **) args, TRUE, fd_arg, environment, iorstr, iid, FALSE, bonobo_object_directory_re_check_fn, actinfo, ev); server_lock_resume (state); } g_free (iid); CORBA_free (iorstr); return retval; } CORBA_Object od_server_activate (Bonobo_ServerInfo *si, ODActivationInfo *actinfo, CORBA_Object od_obj, const Bonobo_ActivationEnvironment *environment, Bonobo_ActivationClient client, CORBA_Environment *ev) { g_return_val_if_fail (ev->_major == CORBA_NO_EXCEPTION, CORBA_OBJECT_NIL); if (!strcmp (si->server_type, "exe")) return od_server_activate_exe (si, actinfo, od_obj, environment, ev); else if (!strcmp (si->server_type, "factory")) return od_server_activate_factory (si, actinfo, environment, client, ev); else if (!strcmp (si->server_type, "shlib")) g_warning (_("We don't handle activating shlib objects in a remote process yet")); return CORBA_OBJECT_NIL; } libbonobo-2.32.1/activation-server/Makefile.in0000664000076400007640000010343311546333026016220 00000000000000# Makefile.in generated by automake 1.11.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008, 2009 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@ VPATH = @srcdir@ 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@ bin_PROGRAMS = activation-client$(EXEEXT) libexec_PROGRAMS = bonobo-activation-server$(EXEEXT) noinst_PROGRAMS = test-performance$(EXEEXT) TESTS = test-performance$(EXEEXT) subdir = activation-server DIST_COMMON = README $(srcdir)/Makefile.am $(srcdir)/Makefile.in \ AUTHORS ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.in 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__installdirs = "$(DESTDIR)$(bindir)" "$(DESTDIR)$(libexecdir)" \ "$(DESTDIR)$(man1dir)" "$(DESTDIR)$(serverinfodir)" PROGRAMS = $(bin_PROGRAMS) $(libexec_PROGRAMS) $(noinst_PROGRAMS) am_activation_client_OBJECTS = client.$(OBJEXT) activation_client_OBJECTS = $(am_activation_client_OBJECTS) activation_client_LDADD = $(LDADD) am__DEPENDENCIES_1 = activation_client_DEPENDENCIES = \ $(top_builddir)/bonobo/libbonobo-2.la \ $(top_builddir)/bonobo-activation/libbonobo-activation.la \ $(am__DEPENDENCIES_1) AM_V_lt = $(am__v_lt_$(V)) am__v_lt_ = $(am__v_lt_$(AM_DEFAULT_VERBOSITY)) am__v_lt_0 = --silent am_bonobo_activation_server_OBJECTS = \ activation-server-corba-extensions.$(OBJEXT) \ activation-context-query.$(OBJEXT) \ activation-context-query-lexer.$(OBJEXT) \ activation-context-query-parser.$(OBJEXT) \ activation-context-corba.$(OBJEXT) \ object-directory-corba.$(OBJEXT) \ object-directory-load.$(OBJEXT) \ object-directory-activate.$(OBJEXT) \ object-directory-config-file.$(OBJEXT) \ activation-server-main.$(OBJEXT) bonobo_activation_server_OBJECTS = \ $(am_bonobo_activation_server_OBJECTS) bonobo_activation_server_LDADD = $(LDADD) bonobo_activation_server_DEPENDENCIES = \ $(top_builddir)/bonobo/libbonobo-2.la \ $(top_builddir)/bonobo-activation/libbonobo-activation.la \ $(am__DEPENDENCIES_1) bonobo_activation_server_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ $(AM_CFLAGS) $(CFLAGS) $(bonobo_activation_server_LDFLAGS) \ $(LDFLAGS) -o $@ am_test_performance_OBJECTS = test-performance.$(OBJEXT) \ object-directory-load.$(OBJEXT) test_performance_OBJECTS = $(am_test_performance_OBJECTS) test_performance_LDADD = $(LDADD) test_performance_DEPENDENCIES = $(top_builddir)/bonobo/libbonobo-2.la \ $(top_builddir)/bonobo-activation/libbonobo-activation.la \ $(am__DEPENDENCIES_1) 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_$(V)) am__v_CC_ = $(am__v_CC_$(AM_DEFAULT_VERBOSITY)) am__v_CC_0 = @echo " CC " $@; AM_V_at = $(am__v_at_$(V)) am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) 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_$(V)) am__v_CCLD_ = $(am__v_CCLD_$(AM_DEFAULT_VERBOSITY)) am__v_CCLD_0 = @echo " CCLD " $@; AM_V_GEN = $(am__v_GEN_$(V)) am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) am__v_GEN_0 = @echo " GEN " $@; SOURCES = $(activation_client_SOURCES) \ $(bonobo_activation_server_SOURCES) \ $(test_performance_SOURCES) DIST_SOURCES = $(activation_client_SOURCES) \ $(bonobo_activation_server_SOURCES) \ $(test_performance_SOURCES) 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' man1dir = $(mandir)/man1 NROFF = nroff MANS = $(man_MANS) DATA = $(serverinfo_DATA) ETAGS = etags CTAGS = ctags am__tty_colors = \ red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ AR = @AR@ AS = @AS@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ BONOBO_ACTIVATION_LT_VERSION_INFO = @BONOBO_ACTIVATION_LT_VERSION_INFO@ BONOBO_MAJOR_VERSION = @BONOBO_MAJOR_VERSION@ BONOBO_MICRO_VERSION = @BONOBO_MICRO_VERSION@ BONOBO_MINOR_VERSION = @BONOBO_MINOR_VERSION@ BONOBO_SLAY = @BONOBO_SLAY@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DISABLE_DEPRECATED_CFLAGS = @DISABLE_DEPRECATED_CFLAGS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GREP = @GREP@ GTHREAD_CFLAGS = @GTHREAD_CFLAGS@ GTHREAD_LIBS = @GTHREAD_LIBS@ GTKDOC_CHECK = @GTKDOC_CHECK@ GTKDOC_MKPDF = @GTKDOC_MKPDF@ GTKDOC_REBASE = @GTKDOC_REBASE@ HTML_DIR = @HTML_DIR@ IF_BSD_PS = @IF_BSD_PS@ IF_CYGWIN_PS = @IF_CYGWIN_PS@ IF_POSIX_PS = @IF_POSIX_PS@ 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@ LD = @LD@ LDFLAGS = @LDFLAGS@ LEX = @LEX@ LEXLIB = @LEXLIB@ LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ LFLAGS = @LFLAGS@ LIBBONOBO_CFLAGS = @LIBBONOBO_CFLAGS@ LIBBONOBO_LIBS = @LIBBONOBO_LIBS@ LIBBONOBO_LT_VERSION_INFO = @LIBBONOBO_LT_VERSION_INFO@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIPO = @LIPO@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ NM = @NM@ NMEDIT = @NMEDIT@ OBJDUMP = @OBJDUMP@ OBJEXT = @OBJEXT@ ORBIT_IDL = @ORBIT_IDL@ OTOOL = @OTOOL@ OTOOL64 = @OTOOL64@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PERL_PATH = @PERL_PATH@ PKG_CONFIG = @PKG_CONFIG@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ PS_PATH = @PS_PATH@ RANLIB = @RANLIB@ SEARCHPATHSEP = @SEARCHPATHSEP@ SED = @SED@ SERVER_CFLAGS = @SERVER_CFLAGS@ SERVER_LIBS = @SERVER_LIBS@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SOPREFIX = @SOPREFIX@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ WARN_CFLAGS = @WARN_CFLAGS@ XGETTEXT = @XGETTEXT@ YACC = @YACC@ YFLAGS = -d -v abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ 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@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ lt_ECHO = @lt_ECHO@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ 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@ NULL = man_MANS = bonobo-activation-server.1 INCLUDES = \ -I$(top_srcdir) \ -I$(top_builddir) \ -I$(top_builddir)/bonobo-activation \ -I$(top_srcdir)/bonobo-activation \ -DPREFIX=\""$(prefix)"\" \ -DSERVERINFODIR=\"$(libdir)/bonobo/servers\" \ -DSERVER_LOCALEDIR=\""${prefix}/${DATADIRNAME}/locale"\" \ $(SERVER_CFLAGS) \ $(WARN_CFLAGS) \ -DSERVER_CONFDIR=\"$(sysconfdir)\" \ -DG_DISABLE_DEPRECATED \ -DG_LOG_DOMAIN=\"Bonobo-Activation-Server\" \ $(NULL) bonobo_activation_server_SOURCES = \ activation-server-corba-extensions.c \ activation-server-corba-extensions.h \ activation-context.h \ activation-context-query.h \ activation-context-query.c \ activation-context-query-lexer.c \ activation-context-query-parser.c \ activation-context-query-parser.h \ activation-context-corba.c \ object-directory.h \ object-directory-corba.c \ object-directory-load.c \ object-directory-activate.c \ object-directory-config-file.c \ object-directory-config-file.h \ activation-server-main.c \ server.h @OS_WIN32_TRUE@bonobo_activation_server_LDFLAGS = -mwindows LDADD = \ $(top_builddir)/bonobo/libbonobo-2.la \ $(top_builddir)/bonobo-activation/libbonobo-activation.la \ -lname-server-2 $(SERVER_LIBS) @INTLLIBS@ activation_client_SOURCES = client.c test_performance_SOURCES = \ test-performance.c \ object-directory-load.c \ server.h serverinfodir = $(libdir)/bonobo/servers server_in_file = Bonobo_CosNaming_NamingContext.server.in serverinfo_DATA = $(server_in_file:.server.in=.server) EXTRA_DIST = activation-context-query-lexer.l activation-context-query-parser.y \ $(server_in_file).in $(serverinfo_DATA) \ $(man_MANS) AUTHORS BUILT_SOURCES = activation-context-query-lexer.c activation-context-query-parser.c \ activation-context-query-parser.h Bonobo_CosNaming_NamingContext.server CLEANFILES = stamp-parser $(server_in_file) $(serverinfo_DATA) $(BUILT_SOURCES) all: $(BUILT_SOURCES) $(MAKE) $(AM_MAKEFLAGS) 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) --foreign activation-server/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --foreign activation-server/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): install-binPROGRAMS: $(bin_PROGRAMS) @$(NORMAL_INSTALL) test -z "$(bindir)" || $(MKDIR_P) "$(DESTDIR)$(bindir)" @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \ 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)$(bindir)$$dir'"; \ $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(bindir)$$dir" || exit $$?; \ } \ ; done uninstall-binPROGRAMS: @$(NORMAL_UNINSTALL) @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || 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)$(bindir)' && rm -f" $$files ")"; \ cd "$(DESTDIR)$(bindir)" && rm -f $$files clean-binPROGRAMS: @list='$(bin_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 install-libexecPROGRAMS: $(libexec_PROGRAMS) @$(NORMAL_INSTALL) test -z "$(libexecdir)" || $(MKDIR_P) "$(DESTDIR)$(libexecdir)" @list='$(libexec_PROGRAMS)'; test -n "$(libexecdir)" || list=; \ 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 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 activation-client$(EXEEXT): $(activation_client_OBJECTS) $(activation_client_DEPENDENCIES) @rm -f activation-client$(EXEEXT) $(AM_V_CCLD)$(LINK) $(activation_client_OBJECTS) $(activation_client_LDADD) $(LIBS) bonobo-activation-server$(EXEEXT): $(bonobo_activation_server_OBJECTS) $(bonobo_activation_server_DEPENDENCIES) @rm -f bonobo-activation-server$(EXEEXT) $(AM_V_CCLD)$(bonobo_activation_server_LINK) $(bonobo_activation_server_OBJECTS) $(bonobo_activation_server_LDADD) $(LIBS) test-performance$(EXEEXT): $(test_performance_OBJECTS) $(test_performance_DEPENDENCIES) @rm -f test-performance$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_performance_OBJECTS) $(test_performance_LDADD) $(LIBS) mostlyclean-compile: -rm -f *.$(OBJEXT) distclean-compile: -rm -f *.tab.c @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/activation-context-corba.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/activation-context-query-lexer.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/activation-context-query-parser.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/activation-context-query.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/activation-server-corba-extensions.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/activation-server-main.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/client.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/object-directory-activate.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/object-directory-config-file.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/object-directory-corba.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/object-directory-load.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-performance.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 @am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(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 @am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(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 @am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $< mostlyclean-libtool: -rm -f *.lo clean-libtool: -rm -rf .libs _libs install-man1: $(man_MANS) @$(NORMAL_INSTALL) test -z "$(man1dir)" || $(MKDIR_P) "$(DESTDIR)$(man1dir)" @list=''; test -n "$(man1dir)" || exit 0; \ { for i in $$list; do echo "$$i"; done; \ l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \ sed -n '/\.1[a-z]*$$/p'; \ } | while read p; do \ if test -f $$p; then d=; else d="$(srcdir)/"; fi; \ echo "$$d$$p"; echo "$$p"; \ done | \ sed -e 'n;s,.*/,,;p;h;s,.*\.,,;s,^[^1][0-9a-z]*$$,1,;x' \ -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,' | \ sed 'N;N;s,\n, ,g' | { \ list=; while read file base inst; do \ if test "$$base" = "$$inst"; then list="$$list $$file"; else \ echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man1dir)/$$inst'"; \ $(INSTALL_DATA) "$$file" "$(DESTDIR)$(man1dir)/$$inst" || exit $$?; \ fi; \ done; \ for i in $$list; do echo "$$i"; done | $(am__base_list) | \ while read files; do \ test -z "$$files" || { \ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(man1dir)'"; \ $(INSTALL_DATA) $$files "$(DESTDIR)$(man1dir)" || exit $$?; }; \ done; } uninstall-man1: @$(NORMAL_UNINSTALL) @list=''; test -n "$(man1dir)" || exit 0; \ files=`{ for i in $$list; do echo "$$i"; done; \ l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \ sed -n '/\.1[a-z]*$$/p'; \ } | sed -e 's,.*/,,;h;s,.*\.,,;s,^[^1][0-9a-z]*$$,1,;x' \ -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \ test -z "$$files" || { \ echo " ( cd '$(DESTDIR)$(man1dir)' && rm -f" $$files ")"; \ cd "$(DESTDIR)$(man1dir)" && rm -f $$files; } install-serverinfoDATA: $(serverinfo_DATA) @$(NORMAL_INSTALL) test -z "$(serverinfodir)" || $(MKDIR_P) "$(DESTDIR)$(serverinfodir)" @list='$(serverinfo_DATA)'; test -n "$(serverinfodir)" || list=; \ 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)$(serverinfodir)'"; \ $(INSTALL_DATA) $$files "$(DESTDIR)$(serverinfodir)" || exit $$?; \ done uninstall-serverinfoDATA: @$(NORMAL_UNINSTALL) @list='$(serverinfo_DATA)'; test -n "$(serverinfodir)" || list=; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ test -n "$$files" || exit 0; \ echo " ( cd '$(DESTDIR)$(serverinfodir)' && rm -f" $$files ")"; \ cd "$(DESTDIR)$(serverinfodir)" && rm -f $$files 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 \ echo "$$grn$$dashes"; \ else \ echo "$$red$$dashes"; \ fi; \ echo "$$banner"; \ test -z "$$skipped" || echo "$$skipped"; \ test -z "$$report" || echo "$$report"; \ echo "$$dashes$$std"; \ test "$$failed" -eq 0; \ else :; fi distdir: $(DISTFILES) @list='$(MANS)'; if test -n "$$list"; then \ list=`for p in $$list; do \ if test -f $$p; then d=; else d="$(srcdir)/"; fi; \ if test -f "$$d$$p"; then echo "$$d$$p"; else :; fi; done`; \ if test -n "$$list" && \ grep 'ab help2man is required to generate this page' $$list >/dev/null; then \ echo "error: found man pages containing the \`missing help2man' replacement text:" >&2; \ grep -l 'ab help2man is required to generate this page' $$list | sed 's/^/ /' >&2; \ echo " to fix them, install help2man, remove and regenerate the man pages;" >&2; \ echo " typically \`make maintainer-clean' will remove them" >&2; \ exit 1; \ else :; fi; \ else :; fi @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 $(MAKE) $(AM_MAKEFLAGS) \ top_distdir="$(top_distdir)" distdir="$(distdir)" \ dist-hook check-am: all-am $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: $(BUILT_SOURCES) $(MAKE) $(AM_MAKEFLAGS) check-am all-am: Makefile $(PROGRAMS) $(MANS) $(DATA) installdirs: for dir in "$(DESTDIR)$(bindir)" "$(DESTDIR)$(libexecdir)" "$(DESTDIR)$(man1dir)" "$(DESTDIR)$(serverinfodir)"; 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: $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install 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-binPROGRAMS clean-generic clean-libexecPROGRAMS \ clean-libtool 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-man install-serverinfoDATA install-dvi: install-dvi-am install-dvi-am: install-exec-am: install-binPROGRAMS install-libexecPROGRAMS install-html: install-html-am install-html-am: install-info: install-info-am install-info-am: install-man: install-man1 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-binPROGRAMS uninstall-libexecPROGRAMS \ uninstall-man uninstall-serverinfoDATA uninstall-man: uninstall-man1 .MAKE: all check check-am install install-am install-strip .PHONY: CTAGS GTAGS all all-am check check-TESTS check-am clean \ clean-binPROGRAMS clean-generic clean-libexecPROGRAMS \ clean-libtool clean-noinstPROGRAMS ctags dist-hook distclean \ distclean-compile distclean-generic distclean-libtool \ distclean-tags distdir dvi dvi-am html html-am info info-am \ install install-am install-binPROGRAMS 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-man1 install-pdf install-pdf-am install-ps \ install-ps-am install-serverinfoDATA 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-binPROGRAMS \ uninstall-libexecPROGRAMS uninstall-man uninstall-man1 \ uninstall-serverinfoDATA $(server_in_file): $(server_in_file).in $(AM_V_GEN) $(SED) -e "s|\@LIBEXECDIR\@|$(libexecdir)|" $< > $@ @INTLTOOL_SERVER_RULE@ activation-context-query-lexer.c: $(srcdir)/activation-context-query-lexer.l activation-context-query-parser.h $(AM_V_GEN) rm -f $@ && \ $(LEX) -t $(srcdir)/activation-context-query-lexer.l >$@ stamp-parser: $(srcdir)/activation-context-query-parser.y $(AM_V_GEN) $(YACC) $(YFLAGS) $(srcdir)/activation-context-query-parser.y && \ rm -f y.output && \ touch $@ activation-context-query-parser.c: stamp-parser $(AM_V_GEN) test -f y.tab.c && mv -f y.tab.c activation-context-query-parser.c || touch $@ activation-context-query-parser.h: stamp-parser $(AM_V_GEN) test -f y.tab.h && mv -f y.tab.h activation-context-query-parser.h || touch $@ dist-hook: cd $(distdir) ; rm -f $(CLEANFILES) # 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: libbonobo-2.32.1/activation-server/server.h0000644000076400007640000000547311173072711015632 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ #ifndef SERVER_H #define SERVER_H #include #include "bonobo-activation/Bonobo_ActivationContext.h" #include "object-directory.h" /* * Define, and export BONOBO_ACTIVATION_DEBUG_OUTPUT * for a smoother, closer debugging experience. */ #define noBONOBO_ACTIVATION_DEBUG 1 /* * Time delay after all servers are de-registered / dead * before quitting the server. (ms) */ #define SERVER_IDLE_QUIT_TIMEOUT 1 #define NAMING_CONTEXT_IID "OAFIID:Bonobo_CosNaming_NamingContext" #define EVENT_SOURCE_IID "OAFIID:Bonobo_Activation_EventSource" /* object-directory-load.c */ void bonobo_server_info_load (char **dirs, Bonobo_ServerInfoList *servers, GPtrArray const *runtime_servers, GHashTable **by_iid, const char *host); void bonobo_parse_server_info_memory (const char *server_info, GSList **entries, const char *host); /* od-activate.c */ typedef struct { Bonobo_ActivationContext ac; Bonobo_ActivationFlags flags; CORBA_Context ctx; } ODActivationInfo; /* object-directory-activate.c */ CORBA_Object od_server_activate (Bonobo_ServerInfo *si, ODActivationInfo *actinfo, CORBA_Object od_obj, const Bonobo_ActivationEnvironment *environment, Bonobo_ActivationClient client, CORBA_Environment *ev); /* activation-context-corba.c */ Bonobo_ActivationContext activation_context_get (void); void activation_clients_cache_notify (void); gboolean activation_clients_is_empty_scan(void); void add_initial_locales (void); gboolean register_interest_in_locales (const char *locales); typedef glong ServerLockState; void server_lock (void); void server_unlock (void); ServerLockState server_lock_drop (void); void server_lock_resume (ServerLockState state); #ifdef G_OS_WIN32 const char *server_win32_replace_prefix (const char *configure_time_path); #endif #endif /* SERVER_H */ libbonobo-2.32.1/activation-server/Bonobo_CosNaming_NamingContext.server.in.in0000644000076400007640000000155511173072711024424 00000000000000 libbonobo-2.32.1/intltool-extract.in0000664000076400007640000000000011432275511014332 00000000000000libbonobo-2.32.1/config.guess0000755000076400007640000012761511432275520013032 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 # Free Software Foundation, Inc. timestamp='2009-11-20' # 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, write to the Free Software # Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA # 02110-1301, 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. # 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 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 tupples: *-*-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'` exit ;; 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:*:[456]) 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:*:*) case ${UNAME_MACHINE} in pc98) echo i386-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; amd64) echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; *) echo ${UNAME_MACHINE}-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*: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 ;; 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 echo ${UNAME_MACHINE}-unknown-linux-gnueabi fi exit ;; avr32*:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; cris:Linux:*:*) echo cris-axis-linux-gnu exit ;; crisv32:Linux:*:*) echo crisv32-axis-linux-gnu exit ;; frv:Linux:*:*) echo frv-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 or32-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 ;; vax:Linux:*:*) echo ${UNAME_MACHINE}-dec-linux-gnu exit ;; x86_64:Linux:*:*) echo x86_64-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 ;; 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 ;; 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: libbonobo-2.32.1/MAINTAINERS0000644000076400007640000000041211173072711012167 00000000000000Michael Meeks Email: michael@ximian.com Userid: michael Gustavo Carneiro Email: gjc@inescporto.pt Userid: gjc Kjartan Maraas Email: kmaraas@gnome.org Userid: kmaraas Documentation ============= Gustavo Carneiro libbonobo-2.32.1/gtk-doc.make0000644000076400007640000001567111432275511012677 00000000000000# -*- mode: makefile -*- #################################### # Everything below here is generic # #################################### if GTK_DOC_USE_LIBTOOL GTKDOC_CC = $(LIBTOOL) --tag=CC --mode=compile $(CC) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) GTKDOC_LD = $(LIBTOOL) --tag=CC --mode=link $(CC) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) GTKDOC_RUN = $(LIBTOOL) --mode=execute else GTKDOC_CC = $(CC) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) GTKDOC_LD = $(CC) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) GTKDOC_RUN = endif # We set GPATH here; this gives us semantics for GNU make # which are more like other make's VPATH, when it comes to # whether a source that is a target of one rule is then # searched for in VPATH/GPATH. # GPATH = $(srcdir) TARGET_DIR=$(HTML_DIR)/$(DOC_MODULE) EXTRA_DIST = \ $(content_files) \ $(HTML_IMAGES) \ $(DOC_MAIN_SGML_FILE) \ $(DOC_MODULE)-sections.txt \ $(DOC_MODULE)-overrides.txt DOC_STAMPS=scan-build.stamp tmpl-build.stamp sgml-build.stamp html-build.stamp \ pdf-build.stamp \ $(srcdir)/tmpl.stamp $(srcdir)/sgml.stamp $(srcdir)/html.stamp \ $(srcdir)/pdf.stamp SCANOBJ_FILES = \ $(DOC_MODULE).args \ $(DOC_MODULE).hierarchy \ $(DOC_MODULE).interfaces \ $(DOC_MODULE).prerequisites \ $(DOC_MODULE).signals REPORT_FILES = \ $(DOC_MODULE)-undocumented.txt \ $(DOC_MODULE)-undeclared.txt \ $(DOC_MODULE)-unused.txt CLEANFILES = $(SCANOBJ_FILES) $(REPORT_FILES) $(DOC_STAMPS) if ENABLE_GTK_DOC if GTK_DOC_BUILD_HTML HTML_BUILD_STAMP=html-build.stamp else HTML_BUILD_STAMP= endif if GTK_DOC_BUILD_PDF PDF_BUILD_STAMP=pdf-build.stamp else PDF_BUILD_STAMP= endif all-local: $(HTML_BUILD_STAMP) $(PDF_BUILD_STAMP) else all-local: endif docs: $(HTML_BUILD_STAMP) $(PDF_BUILD_STAMP) $(REPORT_FILES): sgml-build.stamp #### scan #### scan-build.stamp: $(HFILE_GLOB) $(CFILE_GLOB) @echo 'gtk-doc: Scanning header files' @-chmod -R u+w $(srcdir) @_source_dir='' ; for i in $(DOC_SOURCE_DIR) ; do \ _source_dir="$${_source_dir} --source-dir=$$i" ; \ done ; \ cd $(srcdir) && \ gtkdoc-scan --module=$(DOC_MODULE) --ignore-headers="$(IGNORE_HFILES)" $${_source_dir} $(SCAN_OPTIONS) $(EXTRA_HFILES) @if grep -l '^..*$$' $(srcdir)/$(DOC_MODULE).types > /dev/null 2>&1 ; then \ CC="$(GTKDOC_CC)" LD="$(GTKDOC_LD)" RUN="$(GTKDOC_RUN)" CFLAGS="$(GTKDOC_CFLAGS) $(CFLAGS)" LDFLAGS="$(GTKDOC_LIBS) $(LDFLAGS)" gtkdoc-scangobj $(SCANGOBJ_OPTIONS) --module=$(DOC_MODULE) --output-dir=$(srcdir) ; \ else \ cd $(srcdir) ; \ for i in $(SCANOBJ_FILES) ; do \ test -f $$i || touch $$i ; \ done \ fi @touch scan-build.stamp $(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt: scan-build.stamp @true #### templates #### tmpl-build.stamp: $(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt @echo 'gtk-doc: Rebuilding template files' @-chmod -R u+w $(srcdir) @cd $(srcdir) && gtkdoc-mktmpl --module=$(DOC_MODULE) $(MKTMPL_OPTIONS) @touch tmpl-build.stamp tmpl.stamp: tmpl-build.stamp @true $(srcdir)/tmpl/*.sgml: @true #### xml #### sgml-build.stamp: tmpl.stamp $(DOC_MODULE)-sections.txt $(srcdir)/tmpl/*.sgml $(expand_content_files) @echo 'gtk-doc: Building XML' @-chmod -R u+w $(srcdir) @_source_dir='' ; for i in $(DOC_SOURCE_DIR) ; do \ _source_dir="$${_source_dir} --source-dir=$$i" ; \ done ; \ cd $(srcdir) && \ gtkdoc-mkdb --module=$(DOC_MODULE) --output-format=xml --expand-content-files="$(expand_content_files)" --main-sgml-file=$(DOC_MAIN_SGML_FILE) $${_source_dir} $(MKDB_OPTIONS) @touch sgml-build.stamp sgml.stamp: sgml-build.stamp @true #### html #### html-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files) @echo 'gtk-doc: Building HTML' @-chmod -R u+w $(srcdir) @rm -rf $(srcdir)/html @mkdir $(srcdir)/html @mkhtml_options=""; \ gtkdoc-mkhtml 2>&1 --help | grep >/dev/null "\-\-path"; \ if test "$(?)" = "0"; then \ mkhtml_options=--path="$(srcdir)"; \ fi; \ cd $(srcdir)/html && gtkdoc-mkhtml $$mkhtml_options $(MKHTML_OPTIONS) $(DOC_MODULE) ../$(DOC_MAIN_SGML_FILE) @test "x$(HTML_IMAGES)" = "x" || ( cd $(srcdir) && cp $(HTML_IMAGES) html ) @echo 'gtk-doc: Fixing cross-references' @cd $(srcdir) && gtkdoc-fixxref --module=$(DOC_MODULE) --module-dir=html --html-dir=$(HTML_DIR) $(FIXXREF_OPTIONS) @touch html-build.stamp #### pdf #### pdf-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files) @echo 'gtk-doc: Building PDF' @-chmod -R u+w $(srcdir) @rm -rf $(srcdir)/$(DOC_MODULE).pdf @mkpdf_imgdirs=""; \ if test "x$(HTML_IMAGES)" != "x"; then \ for img in $(HTML_IMAGES); do \ part=`dirname $$img`; \ echo $$mkpdf_imgdirs | grep >/dev/null "\-\-imgdir=$$part "; \ if test $$? != 0; then \ mkpdf_imgdirs="$$mkpdf_imgdirs --imgdir=$$part"; \ fi; \ done; \ fi; \ cd $(srcdir) && gtkdoc-mkpdf --path="$(abs_srcdir)" $$mkpdf_imgdirs $(DOC_MODULE) $(DOC_MAIN_SGML_FILE) $(MKPDF_OPTIONS) @touch pdf-build.stamp ############## clean-local: rm -f *~ *.bak rm -rf .libs distclean-local: cd $(srcdir) && \ rm -rf xml $(REPORT_FILES) $(DOC_MODULE).pdf \ $(DOC_MODULE)-decl-list.txt $(DOC_MODULE)-decl.txt maintainer-clean-local: clean cd $(srcdir) && rm -rf xml html install-data-local: @installfiles=`echo $(srcdir)/html/*`; \ if test "$$installfiles" = '$(srcdir)/html/*'; \ then echo '-- Nothing to install' ; \ else \ if test -n "$(DOC_MODULE_VERSION)"; then \ installdir="$(DESTDIR)$(TARGET_DIR)-$(DOC_MODULE_VERSION)"; \ else \ installdir="$(DESTDIR)$(TARGET_DIR)"; \ fi; \ $(mkinstalldirs) $${installdir} ; \ for i in $$installfiles; do \ echo '-- Installing '$$i ; \ $(INSTALL_DATA) $$i $${installdir}; \ done; \ if test -n "$(DOC_MODULE_VERSION)"; then \ mv -f $${installdir}/$(DOC_MODULE).devhelp2 \ $${installdir}/$(DOC_MODULE)-$(DOC_MODULE_VERSION).devhelp2; \ mv -f $${installdir}/$(DOC_MODULE).devhelp \ $${installdir}/$(DOC_MODULE)-$(DOC_MODULE_VERSION).devhelp; \ fi; \ $(GTKDOC_REBASE) --relative --dest-dir=$(DESTDIR) --html-dir=$${installdir}; \ fi uninstall-local: @if test -n "$(DOC_MODULE_VERSION)"; then \ installdir="$(DESTDIR)$(TARGET_DIR)-$(DOC_MODULE_VERSION)"; \ else \ installdir="$(DESTDIR)$(TARGET_DIR)"; \ fi; \ rm -rf $${installdir} # # Require gtk-doc when making dist # if ENABLE_GTK_DOC dist-check-gtkdoc: else dist-check-gtkdoc: @echo "*** gtk-doc must be installed and enabled in order to make dist" @false endif dist-hook: dist-check-gtkdoc dist-hook-local mkdir $(distdir)/tmpl mkdir $(distdir)/html -cp $(srcdir)/tmpl/*.sgml $(distdir)/tmpl cp $(srcdir)/html/* $(distdir)/html -cp $(srcdir)/$(DOC_MODULE).pdf $(distdir)/ -cp $(srcdir)/$(DOC_MODULE).types $(distdir)/ -cp $(srcdir)/$(DOC_MODULE)-sections.txt $(distdir)/ cd $(distdir) && rm -f $(DISTCLEANFILES) $(GTKDOC_REBASE) --online --relative --html-dir=$(distdir)/html .PHONY : dist-hook-local docs libbonobo-2.32.1/ltmain.sh0000755000076400007640000073306011432275511012332 00000000000000# Generated from ltmain.m4sh. # ltmain.sh (GNU libtool) 2.2.6b # Written by Gordon Matzigkeit , 1996 # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, 2006, 2007 2008 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 # --tag=TAG use configuration variables from tag TAG # -v, --verbose print informational messages (default) # --version print version information # -h, --help print short or long help message # # MODE must be one of the following: # # clean remove files from the build directory # compile compile a source file into a libtool object # execute automatically set library path, then run a program # finish complete the installation of libtool libraries # install install libraries or executables # link create a library or an executable # uninstall remove libraries from an installed directory # # MODE-ARGS vary depending on the MODE. # 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.2.6b # automake: $automake_version # autoconf: $autoconf_version # # Report bugs to . PROGRAM=ltmain.sh PACKAGE=libtool VERSION=2.2.6b TIMESTAMP="" package_revision=1.3017 # 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 # NLS nuisances: We save the old values to restore during execute mode. # Only set LANG and LC_ALL to C if already set. # These must not be set unconditionally because not all systems understand # e.g. LANG=C (notably SCO). 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 $lt_unset CDPATH : ${CP="cp -f"} : ${ECHO="echo"} : ${EGREP="/bin/grep -E"} : ${FGREP="/bin/grep -F"} : ${GREP="/bin/grep"} : ${LN_S="ln -s"} : ${MAKE="make"} : ${MKDIR="mkdir"} : ${MV="mv -f"} : ${RM="rm -f"} : ${SED="/bin/sed"} : ${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_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 "X${1}" | $Xsed -e "$dirname"` if test "X$func_dirname_result" = "X${1}"; then func_dirname_result="${3}" else func_dirname_result="$func_dirname_result${2}" fi func_basename_result=`$ECHO "X${1}" | $Xsed -e "$basename"` } # Generated shell functions inserted here. # Work around backward compatibility issue on IRIX 6.5. On IRIX 6.4+, sh # is ksh but when the shell is invoked as "sh" and the current value of # the _XPG environment variable is not equal to 1 (one), the special # positional parameter $0, within a function call, is the name of the # function. progpath="$0" # The name of this program: # In the unlikely event $progname began with a '-', it would play havoc with # func_echo (imagine progname=-n), so we prepend ./ in that case: func_dirname_and_basename "$progpath" progname=$func_basename_result case $progname in -*) progname=./$progname ;; esac # 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=: 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' # 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${mode+: }$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_error arg... # Echo program name prefixed message to standard error. func_error () { $ECHO "$progname${mode+: }$mode: "${1+"$@"} 1>&2 } # func_warning arg... # Echo program name prefixed warning message to standard error. func_warning () { $opt_warning && $ECHO "$progname${mode+: }$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 "X$my_directory_path" | $Xsed -e "$dirname"` done my_dir_list=`$ECHO "X$my_dir_list" | $Xsed -e '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 "X$my_tmpdir" | $Xsed } # 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 "X$1" | $Xsed -e "$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 "X$1" | $Xsed \ -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_version # Echo version message to standard output and exit. func_version () { $SED -n '/^# '$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 () { $SED -n '/^# Usage:/,/# -h/ { s/^# // s/^# *$// s/\$progname/'$progname'/ p }' < "$progpath" $ECHO $ECHO "run \`$progname --help | more' for full usage" exit $? } # func_help # Echo long help message to standard output and exit. func_help () { $SED -n '/^# Usage:/,/# Report bugs to/ { 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 --version) 2>/dev/null |$SED 1q`"'/ s/\$autoconf_version/'"`(autoconf --version) 2>/dev/null |$SED 1q`"'/ p }' < "$progpath" exit $? } # func_missing_arg argname # Echo program name prefixed message to standard error and set global # exit_cmd. func_missing_arg () { func_error "missing argument for $1" exit_cmd=exit } exit_cmd=: # Check that we have a working $ECHO. if test "X$1" = X--no-reexec; then # Discard the --no-reexec flag, and continue. shift elif test "X$1" = X--fallback-echo; then # Avoid inline document here, it may be left over : elif test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t'; then # Yippee, $ECHO works! : else # Restart under the correct shell, and then maybe $ECHO will work. exec $SHELL "$progpath" --no-reexec ${1+"$@"} fi if test "X$1" = X--fallback-echo; then # used as fallback echo shift cat </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 } # Parse options once, thoroughly. This comes as soon as possible in # the script to make things like `libtool --version' happen quickly. { # 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 # Parse non-mode specific arguments: while test "$#" -gt 0; do opt="$1" shift case $opt in --config) func_config ;; --debug) preserve_args="$preserve_args $opt" func_echo "enabling shell trace mode" opt_debug='set -x' $opt_debug ;; -dlopen) test "$#" -eq 0 && func_missing_arg "$opt" && break execute_dlfiles="$execute_dlfiles $1" shift ;; --dry-run | -n) opt_dry_run=: ;; --features) func_features ;; --finish) mode="finish" ;; --mode) test "$#" -eq 0 && func_missing_arg "$opt" && break case $1 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 mode="$1" shift ;; --preserve-dup-deps) opt_duplicate_deps=: ;; --quiet|--silent) preserve_args="$preserve_args $opt" opt_silent=: ;; --verbose| -v) preserve_args="$preserve_args $opt" opt_silent=false ;; --tag) test "$#" -eq 0 && func_missing_arg "$opt" && break preserve_args="$preserve_args $opt $1" func_enable_tag "$1" # tagname is set here shift ;; # Separate optargs to long options: -dlopen=*|--mode=*|--tag=*) func_opt_split "$opt" set dummy "$func_opt_split_opt" "$func_opt_split_arg" ${1+"$@"} shift ;; -\?|-h) func_usage ;; --help) opt_help=: ;; --version) func_version ;; -*) func_fatal_help "unrecognized option \`$opt'" ;; *) nonopt="$opt" break ;; esac done 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_duplicate_deps ;; esac # Having warned about all mis-specified options, bail out if # anything was wrong. $exit_cmd $EXIT_FAILURE } # 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 } ## ----------- ## ## Main. ## ## ----------- ## $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 test -z "$mode" && func_fatal_error "error: you must specify a MODE." # Darwin sucks eval std_shrext=\"$shrext_cmds\" # Only execute mode is allowed to have -dlopen flags. if test -n "$execute_dlfiles" && test "$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=$mode' for more information." } # 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_ltwrapper_scriptname_result="" if func_ltwrapper_executable_p "$1"; then func_dirname_and_basename "$1" "" "." func_stripname '' '.exe' "$func_basename_result" func_ltwrapper_scriptname_result="$func_dirname_result/$objdir/${func_stripname_result}_ltshwrapper" fi } # 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_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_quote_for_eval "$arg" CC_quoted="$CC_quoted $func_quote_for_eval_result" done 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 "* | " `$ECHO $CC` "* | "`$ECHO $CC` "* | " $CC_quoted"* | "$CC_quoted "* | " `$ECHO $CC_quoted` "* | "`$ECHO $CC_quoted` "*) ;; # 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_quote_for_eval "$arg" CC_quoted="$CC_quoted $func_quote_for_eval_result" done case "$@ " in " $CC "* | "$CC "* | " `$ECHO $CC` "* | "`$ECHO $CC` "* | " $CC_quoted"* | "$CC_quoted "* | " `$ECHO $CC_quoted` "* | "`$ECHO $CC_quoted` "*) # 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 <?"'"'"' &()|`$[]' \ && 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 "X$srcfile" | $Xsed -e 's%^.*/%%' -e '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 removelist="$removelist $output_obj" $ECHO "$srcfile" > "$lockfile" fi $opt_dry_run || $RM $removelist removelist="$removelist $lockfile" trap '$opt_dry_run || $RM $removelist; exit $EXIT_FAILURE' 1 2 15 if test -n "$fix_srcfile_path"; then eval srcfile=\"$fix_srcfile_path\" fi 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 command="$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 command="$command -o $obj" fi # Suppress compiler output if we already did a PIC compilation. command="$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 "$mode" = compile && func_mode_compile ${1+"$@"} } func_mode_help () { # We need to display help for each of the modes. case $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 building PIC objects only -prefer-non-pic try to building 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 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 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 -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 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 \`$mode'" ;; esac $ECHO $ECHO "Try \`$progname --help' for more information about other modes." exit $? } # Now that we've collected a possible --mode arg, show help if necessary $opt_help && func_mode_help # 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 $execute_dlfiles; do test -f "$file" \ || func_fatal_help "\`$file' is not a file" dir= case $file in *.la) # 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 dir="$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 -*) ;; *) # 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_quote_for_eval "$file" args="$args $func_quote_for_eval_result" 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 "$mode" = execute && func_mode_execute ${1+"$@"} # func_mode_finish arg... func_mode_finish () { $opt_debug libdirs="$nonopt" admincmds= if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then for dir do libdirs="$libdirs $dir" done 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" || admincmds="$admincmds $cmds" fi done fi # Exit here if they wanted silent mode. $opt_silent && exit $EXIT_SUCCESS $ECHO "X----------------------------------------------------------------------" | $Xsed $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 "X----------------------------------------------------------------------" | $Xsed exit $EXIT_SUCCESS } test "$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. $ECHO "X$nonopt" | $GREP shtool >/dev/null; 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" install_prog="$install_prog$func_quote_for_eval_result" # We need to accept at least all the BSD install flags. dest= files= opts= prev= install_type= isdir=no stripme= for arg do if test -n "$dest"; then files="$files $dest" dest=$arg continue fi case $arg in -d) isdir=yes ;; -f) case " $install_prog " in *[\\\ /]cp\ *) ;; *) prev=$arg ;; esac ;; -g | -m | -o) prev=$arg ;; -s) stripme=" -s" continue ;; -*) ;; *) # If the previous option needed an argument, then skip it. if test -n "$prev"; then prev= else dest=$arg continue fi ;; esac # Aesthetically quote the argument. func_quote_for_eval "$arg" install_prog="$install_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 -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. staticlibs="$staticlibs $file" ;; *.la) # 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 "*) ;; *) current_libdirs="$current_libdirs $libdir" ;; esac else # Note the libdir as a future libdir. case "$future_libdirs " in *" $libdir "*) ;; *) future_libdirs="$future_libdirs $libdir" ;; esac fi func_dirname "$file" "/" "" dir="$func_dirname_result" dir="$dir$objdir" if test -n "$relink_command"; then # Determine the prefix the user has applied to our future dir. inst_prefix_dir=`$ECHO "X$destdir" | $Xsed -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 "X$relink_command" | $Xsed -e "s%@inst_prefix_dir@%-inst-prefix-dir $inst_prefix_dir%"` else relink_command=`$ECHO "X$relink_command" | $Xsed -e "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_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" && staticlibs="$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 "X$lib" | $Xsed -e '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 "X$relink_command" | $Xsed -e '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 "X$file$stripped_ext" | $Xsed -e "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_show_eval "$install_prog \$file \$oldlib" 'exit $?' if test -n "$stripme" && test -n "$old_striplib"; then func_show_eval "$old_striplib $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 "$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 /* 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 "X$objs$old_deplibs" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP` for progfile in $progfiles; do func_verbose "extracting global C symbols from \`$progfile'" $opt_dry_run || eval "$NM $progfile | $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" $opt_dry_run || { eval '$ECHO ": $name " >> "$nlist"' eval "$NM $dlprefile 2>/dev/null | $global_symbol_pipe >> '$nlist'" } 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; " case $host in *cygwin* | *mingw* | *cegcc* ) $ECHO >> "$output_objdir/$my_dlsyms" "\ /* DATA imports from DLLs on WIN32 con't be const, because runtime relocations are performed -- see ld's documentation on pseudo-relocs. */" lt_dlsym_const= ;; *osf5*) echo >> "$output_objdir/$my_dlsyms" "\ /* This system does not cope well with relocations in const data */" lt_dlsym_const= ;; *) lt_dlsym_const=const ;; esac $ECHO >> "$output_objdir/$my_dlsyms" "\ 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) ;; *) symtab_cflags="$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 "X$compile_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/$my_outputname.def $symfileobj%"` finalize_command=`$ECHO "X$finalize_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/$my_outputname.def $symfileobj%"` else compile_command=`$ECHO "X$compile_command" | $Xsed -e "s%@SYMFILE@%$symfileobj%"` finalize_command=`$ECHO "X$finalize_command" | $Xsed -e "s%@SYMFILE@%$symfileobj%"` fi ;; *) compile_command=`$ECHO "X$compile_command" | $Xsed -e "s%@SYMFILE@%$symfileobj%"` finalize_command=`$ECHO "X$finalize_command" | $Xsed -e "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 "X$compile_command" | $Xsed -e "s% @SYMFILE@%%"` finalize_command=`$ECHO "X$finalize_command" | $Xsed -e "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. 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 if eval $OBJDUMP -f $1 | $SED -e '10q' 2>/dev/null | $EGREP 'file format pe-i386(.*architecture: i386)?' >/dev/null ; then win32_nmres=`eval $NM -f posix -A $1 | $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_extract_an_archive dir oldlib func_extract_an_archive () { $opt_debug f_ex_an_ar_dir="$1"; shift f_ex_an_ar_oldlib="$1" func_show_eval "(cd \$f_ex_an_ar_dir && $AR x \"\$f_ex_an_ar_oldlib\")" 'exit $?' 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 | $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 | $NL2SP` done func_extract_archives_result="$my_oldobjs" } # func_emit_wrapper_part1 [arg=no] # # Emit the first part of a libtool wrapper script on stdout. # For more information, see the description associated with # func_emit_wrapper(), below. func_emit_wrapper_part1 () { func_emit_wrapper_part1_arg1=no if test -n "$1" ; then func_emit_wrapper_part1_arg1=$1 fi $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. Xsed='${SED} -e 1s/^X//' 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 ECHO=\"$qecho\" file=\"\$0\" # Make sure echo works. if test \"X\$1\" = X--no-reexec; then # Discard the --no-reexec flag, and continue. shift elif test \"X\`{ \$ECHO '\t'; } 2>/dev/null\`\" = 'X\t'; then # Yippee, \$ECHO works! : else # Restart under the correct shell, and then maybe \$ECHO will work. exec $SHELL \"\$0\" --no-reexec \${1+\"\$@\"} fi fi\ " $ECHO "\ # Find the directory that this script lives in. thisdir=\`\$ECHO \"X\$file\" | \$Xsed -e '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 \"X\$file\" | \$Xsed -e '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 \"X\$file\" | \$Xsed -e 's%^.*/%%'\` file=\`ls -ld \"\$thisdir/\$file\" | ${SED} -n 's/.*-> //p'\` done " } # end: func_emit_wrapper_part1 # func_emit_wrapper_part2 [arg=no] # # Emit the second part of a libtool wrapper script on stdout. # For more information, see the description associated with # func_emit_wrapper(), below. func_emit_wrapper_part2 () { func_emit_wrapper_part2_arg1=no if test -n "$1" ; then func_emit_wrapper_part2_arg1=$1 fi $ECHO "\ # Usually 'no', except on cygwin/mingw when embedded into # the cwrapper. WRAPPER_SCRIPT_BELONGS_IN_OBJDIR=$func_emit_wrapper_part2_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 \"X\$thisdir\" | \$Xsed -e '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" # 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 \"X\$$shlibpath_var\" | \$Xsed -e 's/::*\$//'\` export $shlibpath_var " fi # fixup the dll searchpath if we need to. if test -n "$dllsearchpath"; then $ECHO "\ # Add the dll search path components to the executable PATH PATH=$dllsearchpath:\$PATH " fi $ECHO "\ if test \"\$libtool_execute_magic\" != \"$magic\"; then # Run the actual program with our arguments. " case $host in # Backslashes separate directories on plain windows *-*-mingw | *-*-os2* | *-cegcc*) $ECHO "\ exec \"\$progdir\\\\\$program\" \${1+\"\$@\"} " ;; *) $ECHO "\ exec \"\$progdir/\$program\" \${1+\"\$@\"} " ;; esac $ECHO "\ \$ECHO \"\$0: cannot exec \$program \$*\" 1>&2 exit 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\ " } # end: func_emit_wrapper_part2 # 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=no if test -n "$1" ; then func_emit_wrapper_arg1=$1 fi # split this up so that func_emit_cwrapperexe_src # can call each part independently. func_emit_wrapper_part1 "${func_emit_wrapper_arg1}" func_emit_wrapper_part2 "${func_emit_wrapper_arg1}" } # func_to_host_path arg # # Convert paths to host format when used with build tools. # Intended for use with "native" mingw (where libtool itself # is running under the msys shell), or in the following cross- # build environments: # $build $host # mingw (msys) mingw [e.g. native] # cygwin mingw # *nix + wine mingw # where wine is equipped with the `winepath' executable. # In the native mingw case, the (msys) shell automatically # converts paths for any non-msys applications it launches, # but that facility isn't available from inside the cwrapper. # Similar accommodations are necessary for $host mingw and # $build cygwin. Calling this function does no harm for other # $host/$build combinations not listed above. # # ARG is the path (on $build) that should be converted to # the proper representation for $host. The result is stored # in $func_to_host_path_result. func_to_host_path () { func_to_host_path_result="$1" if test -n "$1" ; then case $host in *mingw* ) lt_sed_naive_backslashify='s|\\\\*|\\|g;s|/|\\|g;s|\\|\\\\|g' case $build in *mingw* ) # actually, msys # awkward: cmd appends spaces to result lt_sed_strip_trailing_spaces="s/[ ]*\$//" func_to_host_path_tmp1=`( cmd //c echo "$1" |\ $SED -e "$lt_sed_strip_trailing_spaces" ) 2>/dev/null || echo ""` func_to_host_path_result=`echo "$func_to_host_path_tmp1" |\ $SED -e "$lt_sed_naive_backslashify"` ;; *cygwin* ) func_to_host_path_tmp1=`cygpath -w "$1"` func_to_host_path_result=`echo "$func_to_host_path_tmp1" |\ $SED -e "$lt_sed_naive_backslashify"` ;; * ) # Unfortunately, winepath does not exit with a non-zero # error code, so we are forced to check the contents of # stdout. On the other hand, if the command is not # found, the shell will set an exit code of 127 and print # *an error message* to stdout. So we must check for both # error code of zero AND non-empty stdout, which explains # the odd construction: func_to_host_path_tmp1=`winepath -w "$1" 2>/dev/null` if test "$?" -eq 0 && test -n "${func_to_host_path_tmp1}"; then func_to_host_path_result=`echo "$func_to_host_path_tmp1" |\ $SED -e "$lt_sed_naive_backslashify"` else # Allow warning below. func_to_host_path_result="" fi ;; esac if test -z "$func_to_host_path_result" ; then func_error "Could not determine host path corresponding to" func_error " '$1'" func_error "Continuing, but uninstalled executables may not work." # Fallback: func_to_host_path_result="$1" fi ;; esac fi } # end: func_to_host_path # func_to_host_pathlist arg # # Convert pathlists to host format when used with build tools. # See func_to_host_path(), above. This function supports the # following $build/$host combinations (but does no harm for # combinations not listed here): # $build $host # mingw (msys) mingw [e.g. native] # cygwin mingw # *nix + wine mingw # # 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. # # ARG is a pathlist (on $build) that should be converted to # the proper representation on $host. The result is stored # in $func_to_host_pathlist_result. func_to_host_pathlist () { func_to_host_pathlist_result="$1" if test -n "$1" ; then case $host in *mingw* ) lt_sed_naive_backslashify='s|\\\\*|\\|g;s|/|\\|g;s|\\|\\\\|g' # 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_to_host_pathlist_tmp2="$1" # Once set for this call, this variable should not be # reassigned. It is used in tha fallback case. func_to_host_pathlist_tmp1=`echo "$func_to_host_pathlist_tmp2" |\ $SED -e 's|^:*||' -e 's|:*$||'` case $build in *mingw* ) # Actually, msys. # Awkward: cmd appends spaces to result. lt_sed_strip_trailing_spaces="s/[ ]*\$//" func_to_host_pathlist_tmp2=`( cmd //c echo "$func_to_host_pathlist_tmp1" |\ $SED -e "$lt_sed_strip_trailing_spaces" ) 2>/dev/null || echo ""` func_to_host_pathlist_result=`echo "$func_to_host_pathlist_tmp2" |\ $SED -e "$lt_sed_naive_backslashify"` ;; *cygwin* ) func_to_host_pathlist_tmp2=`cygpath -w -p "$func_to_host_pathlist_tmp1"` func_to_host_pathlist_result=`echo "$func_to_host_pathlist_tmp2" |\ $SED -e "$lt_sed_naive_backslashify"` ;; * ) # unfortunately, winepath doesn't convert pathlists func_to_host_pathlist_result="" func_to_host_pathlist_oldIFS=$IFS IFS=: for func_to_host_pathlist_f in $func_to_host_pathlist_tmp1 ; do IFS=$func_to_host_pathlist_oldIFS if test -n "$func_to_host_pathlist_f" ; then func_to_host_path "$func_to_host_pathlist_f" if test -n "$func_to_host_path_result" ; then if test -z "$func_to_host_pathlist_result" ; then func_to_host_pathlist_result="$func_to_host_path_result" else func_to_host_pathlist_result="$func_to_host_pathlist_result;$func_to_host_path_result" fi fi fi IFS=: done IFS=$func_to_host_pathlist_oldIFS ;; esac if test -z "$func_to_host_pathlist_result" ; then func_error "Could not determine the host path(s) corresponding to" func_error " '$1'" func_error "Continuing, but uninstalled executables may not work." # Fallback. This may break if $1 contains DOS-style drive # specifications. The fix is not to complicate the expression # below, but for the user to provide a working wine installation # with winepath so that path translation in the cross-to-mingw # case works properly. lt_replace_pathsep_nix_to_dos="s|:|;|g" func_to_host_pathlist_result=`echo "$func_to_host_pathlist_tmp1" |\ $SED -e "$lt_replace_pathsep_nix_to_dos"` fi # Now, add the leading and trailing path separators back case "$1" in :* ) func_to_host_pathlist_result=";$func_to_host_pathlist_result" ;; esac case "$1" in *: ) func_to_host_pathlist_result="$func_to_host_pathlist_result;" ;; esac ;; esac fi } # end: func_to_host_pathlist # 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 # define setmode _setmode #else # include # include # ifdef __CYGWIN__ # include # define HAVE_SETENV # ifdef __STRICT_ANSI__ char *realpath (const char *, char *); int putenv (char *); int setenv (const char *, const char *, int); # endif # endif #endif #include #include #include #include #include #include #include #include #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 #ifdef _MSC_VER # define S_IXUSR _S_IEXEC # define stat _stat # ifndef _INTPTR_T_DEFINED # define intptr_t int # endif #endif #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 */ #ifdef __CYGWIN__ # define FOPEN_WB "wb" #endif #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) #undef LTWRAPPER_DEBUGPRINTF #if defined DEBUGWRAPPER # define LTWRAPPER_DEBUGPRINTF(args) ltwrapper_debugprintf args static void ltwrapper_debugprintf (const char *fmt, ...) { va_list args; va_start (args, fmt); (void) vfprintf (stderr, fmt, args); va_end (args); } #else # define LTWRAPPER_DEBUGPRINTF(args) #endif const char *program_name = NULL; 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_fatal (const char *message, ...); 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_opt_process_env_set (const char *arg); void lt_opt_process_env_prepend (const char *arg); void lt_opt_process_env_append (const char *arg); int lt_split_name_value (const char *arg, char** name, char** value); void lt_update_exe_path (const char *name, const char *value); void lt_update_lib_path (const char *name, const char *value); static const char *script_text_part1 = EOF func_emit_wrapper_part1 yes | $SED -e 's/\([\\"]\)/\\\1/g' \ -e 's/^/ "/' -e 's/$/\\n"/' echo ";" cat <"))); for (i = 0; i < newargc; i++) { LTWRAPPER_DEBUGPRINTF (("(main) newargz[%d] : %s\n", i, (newargz[i] ? newargz[i] : ""))); } EOF case $host_os in mingw*) cat <<"EOF" /* execv doesn't actually work on mingw as expected on unix */ rval = _spawnv (_P_WAIT, lt_argv_zero, (const char * const *) newargz); if (rval == -1) { /* failed to start process */ LTWRAPPER_DEBUGPRINTF (("(main) failed to launch target \"%s\": errno = %d\n", lt_argv_zero, errno)); return 127; } return rval; EOF ;; *) cat <<"EOF" execv (lt_argv_zero, newargz); return rval; /* =127, but avoids unused variable warning */ EOF ;; esac cat <<"EOF" } void * xmalloc (size_t num) { void *p = (void *) malloc (num); if (!p) lt_fatal ("Memory exhausted"); return p; } char * xstrdup (const char *string) { return string ? strcpy ((char *) xmalloc (strlen (string) + 1), string) : NULL; } const char * base_name (const char *name) { const char *base; #if defined (HAVE_DOS_BASED_FILE_SYSTEM) /* Skip over the disk name in MSDOS pathnames. */ if (isalpha ((unsigned char) name[0]) && name[1] == ':') name += 2; #endif for (base = name; *name; name++) if (IS_DIR_SEPARATOR (*name)) base = name + 1; return base; } int check_executable (const char *path) { struct stat st; LTWRAPPER_DEBUGPRINTF (("(check_executable) : %s\n", path ? (*path ? path : "EMPTY!") : "NULL!")); if ((!path) || (!*path)) return 0; if ((stat (path, &st) >= 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; LTWRAPPER_DEBUGPRINTF (("(make_executable) : %s\n", path ? (*path ? path : "EMPTY!") : "NULL!")); 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; LTWRAPPER_DEBUGPRINTF (("(find_executable) : %s\n", wrapper ? (*wrapper ? wrapper : "EMPTY!") : "NULL!")); 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 ("getcwd failed"); 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 ("getcwd failed"); 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) { LTWRAPPER_DEBUGPRINTF (("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 { char *errstr = strerror (errno); lt_fatal ("Error accessing file %s (%s)", tmp_pathspec, errstr); } } XFREE (tmp_pathspec); if (!has_symlinks) { return xstrdup (pathspec); } tmp_pathspec = realpath (pathspec, buf); if (tmp_pathspec == 0) { lt_fatal ("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; } static void lt_error_core (int exit_status, const char *mode, const char *message, va_list ap) { fprintf (stderr, "%s: %s: ", program_name, mode); vfprintf (stderr, message, ap); fprintf (stderr, ".\n"); if (exit_status >= 0) exit (exit_status); } void lt_fatal (const char *message, ...) { va_list ap; va_start (ap, message); lt_error_core (EXIT_FAILURE, "FATAL", message, ap); va_end (ap); } void lt_setenv (const char *name, const char *value) { LTWRAPPER_DEBUGPRINTF (("(lt_setenv) setting '%s' to '%s'\n", (name ? name : ""), (value ? 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; } int lt_split_name_value (const char *arg, char** name, char** value) { const char *p; int len; if (!arg || !*arg) return 1; p = strchr (arg, (int)'='); if (!p) return 1; *value = xstrdup (++p); len = strlen (arg) - strlen (*value); *name = XMALLOC (char, len); strncpy (*name, arg, len-1); (*name)[len - 1] = '\0'; return 0; } void lt_opt_process_env_set (const char *arg) { char *name = NULL; char *value = NULL; if (lt_split_name_value (arg, &name, &value) != 0) { XFREE (name); XFREE (value); lt_fatal ("bad argument for %s: '%s'", env_set_opt, arg); } lt_setenv (name, value); XFREE (name); XFREE (value); } void lt_opt_process_env_prepend (const char *arg) { char *name = NULL; char *value = NULL; char *new_value = NULL; if (lt_split_name_value (arg, &name, &value) != 0) { XFREE (name); XFREE (value); lt_fatal ("bad argument for %s: '%s'", env_prepend_opt, arg); } new_value = lt_extend_str (getenv (name), value, 0); lt_setenv (name, new_value); XFREE (new_value); XFREE (name); XFREE (value); } void lt_opt_process_env_append (const char *arg) { char *name = NULL; char *value = NULL; char *new_value = NULL; if (lt_split_name_value (arg, &name, &value) != 0) { XFREE (name); XFREE (value); lt_fatal ("bad argument for %s: '%s'", env_append_opt, arg); } new_value = lt_extend_str (getenv (name), value, 1); lt_setenv (name, new_value); XFREE (new_value); XFREE (name); XFREE (value); } void lt_update_exe_path (const char *name, const char *value) { LTWRAPPER_DEBUGPRINTF (("(lt_update_exe_path) modifying '%s' by prepending '%s'\n", (name ? name : ""), (value ? 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) { LTWRAPPER_DEBUGPRINTF (("(lt_update_lib_path) modifying '%s' by prepending '%s'\n", (name ? name : ""), (value ? 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 } # end: func_emit_cwrapperexe_src # 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 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 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 dlfiles="$dlfiles $arg" else dlprefiles="$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 "*) ;; *) deplibs="$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 # moreargs="$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 dlfiles="$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. dlprefiles="$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 "*) ;; *) rpath="$rpath $arg" ;; esac else case "$xrpath " in *" $arg "*) ;; *) xrpath="$xrpath $arg" ;; esac fi prev= continue ;; shrext) shrext_cmds="$arg" prev= continue ;; weak) weak_libs="$weak_libs $arg" prev= continue ;; xcclinker) linker_flags="$linker_flags $qarg" compiler_flags="$compiler_flags $qarg" prev= func_append compile_command " $qarg" func_append finalize_command " $qarg" continue ;; xcompiler) compiler_flags="$compiler_flags $qarg" prev= func_append compile_command " $qarg" func_append finalize_command " $qarg" continue ;; xlinker) linker_flags="$linker_flags $qarg" compiler_flags="$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 ;; -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" dir=$func_stripname_result if test -z "$dir"; 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 # 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 "*) ;; *) deplibs="$deplibs -L$dir" lib_search_path="$lib_search_path $dir" ;; esac case $host in *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*) testbindir=`$ECHO "X$dir" | $Xsed -e 's*/lib$*/bin*'` case :$dllsearchpath: in *":$dir:"*) ;; ::) dllsearchpath=$dir;; *) dllsearchpath="$dllsearchpath:$dir";; esac case :$dllsearchpath: in *":$testbindir:"*) ;; ::) dllsearchpath=$testbindir;; *) dllsearchpath="$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*) # 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 deplibs="$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 deplibs="$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) compiler_flags="$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) compiler_flags="$compiler_flags $arg" func_append compile_command " $arg" func_append finalize_command " $arg" case "$new_inherited_linker_flags " in *" $arg "*) ;; * ) new_inherited_linker_flags="$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_fatal_error "only absolute run-paths are allowed" ;; esac case "$xrpath " in *" $dir "*) ;; *) xrpath="$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" arg="$arg $wl$func_quote_for_eval_result" compiler_flags="$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" arg="$arg $wl$func_quote_for_eval_result" compiler_flags="$compiler_flags $wl$func_quote_for_eval_result" linker_flags="$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" ;; # -64, -mips[0-9] enable 64-bit mode on the SGI compiler # -r[0-9][0-9]* specifies the processor on the SGI compiler # -xarch=*, -xtarget=* enable 64-bit mode on the Sun compiler # +DA*, +DD* enable 64-bit mode on the HP compiler # -q* pass through compiler args for the IBM compiler # -m*, -t[45]*, -txscale* pass through architecture-specific # compiler args for GCC # -F/path gives path to uninstalled frameworks, gcc on darwin # -p, -pg, --coverage, -fprofile-* pass through profiling flag for GCC # @file GCC response files -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*| \ -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*) func_quote_for_eval "$arg" arg="$func_quote_for_eval_result" func_append compile_command " $arg" func_append finalize_command " $arg" compiler_flags="$compiler_flags $arg" continue ;; # Some other compiler flag. -* | +*) func_quote_for_eval "$arg" arg="$func_quote_for_eval_result" ;; *.$objext) # A standard object. objs="$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 dlfiles="$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. dlprefiles="$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. deplibs="$deplibs $arg" old_deplibs="$old_deplibs $arg" continue ;; *.la) # A libtool-controlled library. if test "$prev" = dlfiles; then # This library was specified with -dlopen. dlfiles="$dlfiles $arg" prev= elif test "$prev" = dlprefiles; then # The library was specified with -dlpreopen. dlprefiles="$dlprefiles $arg" prev= else deplibs="$deplibs $arg" 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 \"X\${$shlibpath_var}\" \| \$Xsed -e \'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" # 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_duplicate_deps ; then case "$libs " in *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;; esac fi libs="$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 "*) specialdeplibs="$specialdeplibs $pre_post_deps" ;; esac pre_post_deps="$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= case $lib in *.la) func_source "$lib" ;; esac # Collect preopened libtool deplibs, except any this library # has declared as weak libs for deplib in $dependency_libs; do deplib_base=`$ECHO "X$deplib" | $Xsed -e "$basename"` case " $weak_libs " in *" $deplib_base "*) ;; *) deplibs="$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) if test "$linkmode,$pass" = "prog,link"; then compile_deplibs="$deplib $compile_deplibs" finalize_deplibs="$deplib $finalize_deplibs" else compiler_flags="$compiler_flags $deplib" if test "$linkmode" = lib ; then case "$new_inherited_linker_flags " in *" $deplib "*) ;; * ) new_inherited_linker_flags="$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 "*) ;; * ) new_inherited_linker_flags="$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" newlib_search_path="$newlib_search_path $func_stripname_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" newlib_search_path="$newlib_search_path $func_stripname_result" ;; *) func_warning "\`-L' is ignored for archives/objects" ;; esac # linkmode continue ;; # -L -R*) if test "$pass" = link; then func_stripname '-R' '' "$deplib" dir=$func_stripname_result # Make sure the xrpath contains only unique directories. case "$xrpath " in *" $dir "*) ;; *) xrpath="$xrpath $dir" ;; esac fi deplibs="$deplib $deplibs" continue ;; *.la) lib="$deplib" ;; *.$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 \"X$deplib\"" 2>/dev/null | $Xsed -e 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. newdlprefiles="$newdlprefiles $deplib" compile_deplibs="$deplib $compile_deplibs" finalize_deplibs="$deplib $finalize_deplibs" else newdlfiles="$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 "X$inherited_linker_flags" | $Xsed -e '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 "*) ;; *) new_inherited_linker_flags="$new_inherited_linker_flags $tmp_inherited_linker_flag";; esac done fi dependency_libs=`$ECHO "X $dependency_libs" | $Xsed -e '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" && dlfiles="$dlfiles $dlopen" test -n "$dlpreopen" && dlprefiles="$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. convenience="$convenience $ladir/$objdir/$old_library" old_convenience="$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_duplicate_deps ; then case "$tmp_libs " in *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;; esac fi tmp_libs="$tmp_libs $deplib" done continue fi # $pass = conv # Get the name of the library we link against. linklib= for l in $old_library $library_names; do linklib="$l" done 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. dlprefiles="$dlprefiles $lib $dependency_libs" else newdlfiles="$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 "$libdir/$linklib" && test -f "$abs_ladir/$linklib"; then func_warning "library \`$lib' was moved." dir="$ladir" absdir="$abs_ladir" libdir="$abs_ladir" else dir="$libdir" absdir="$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 notinst_path="$notinst_path $abs_ladir" else dir="$ladir/$objdir" absdir="$abs_ladir/$objdir" # Remove this search path later notinst_path="$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 # Prefer using a static library (so that no silly _DYNAMIC symbols # are required to link). if test -n "$old_library"; then newdlprefiles="$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" && \ dlpreconveniencelibs="$dlpreconveniencelibs $dir/$old_library" # Otherwise, use the dlname, so that lt_dlopen finds it. elif test -n "$dlname"; then newdlprefiles="$newdlprefiles $dir/$dlname" else newdlprefiles="$newdlprefiles $dir/$linklib" fi 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 newlib_search_path="$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" newlib_search_path="$newlib_search_path $func_stripname_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_duplicate_deps ; then case "$tmp_libs " in *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;; esac fi tmp_libs="$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:"*) ;; *) temp_rpath="$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 "*) ;; *) compile_rpath="$compile_rpath $absdir" esac ;; esac case " $sys_lib_dlsearch_path " in *" $libdir "*) ;; *) case "$finalize_rpath " in *" $libdir "*) ;; *) finalize_rpath="$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 notinst_deplibs="$notinst_deplibs $lib" need_relink=no ;; *) if test "$installed" = no; then notinst_deplibs="$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 "*) ;; *) compile_rpath="$compile_rpath $absdir" esac ;; esac case " $sys_lib_dlsearch_path " in *" $libdir "*) ;; *) case "$finalize_rpath " in *" $libdir "*) ;; *) finalize_rpath="$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 "$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$dir" # Try looking first in the location we're being installed to. if test -n "$inst_prefix_dir"; then case $libdir in [\\/]*) add_dir="$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:"*) ;; *) compile_shlibpath="$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:"*) ;; *) finalize_shlibpath="$finalize_shlibpath$libdir:" ;; esac fi fi fi if test "$linkmode" = prog || test "$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:"*) ;; *) finalize_shlibpath="$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 [\\/]*) add_dir="$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 "*) ;; *) xrpath="$xrpath $temp_xrpath";; esac;; *) temp_deplibs="$temp_deplibs $libdir";; esac done dependency_libs="$temp_deplibs" fi newlib_search_path="$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" if $opt_duplicate_deps ; then case "$tmp_libs " in *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;; esac fi tmp_libs="$tmp_libs $deplib" done if test "$link_all_deplibs" != no; then # Add the search paths of all dependency libraries for deplib in $dependency_libs; do case $deplib in -L*) path="$deplib" ;; *.la) 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 compiler_flags="$compiler_flags ${wl}-dylib_file ${wl}${darwin_install_name}:${depdepl}" linker_flags="$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 "X $new_inherited_linker_flags" | $Xsed -e '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 "*) ;; *) lib_search_path="$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 "*) ;; *) tmp_libs="$tmp_libs $deplib" ;; esac ;; *) tmp_libs="$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 tmp_libs="$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" objs="$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!" libobjs="$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 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|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) 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. verstring="$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" libobjs="$libobjs $symfileobj" test "X$libobjs" = "X " && libobjs= if test "$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 removelist="$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 oldlibs="$oldlibs $output_objdir/$libname.$libext" # Transform .lo files to .o files. oldobjs="$objs "`$ECHO "X$libobjs" | $SP2NL | $Xsed -e '/\.'${libext}'$/d' -e "$lo2o" | $NL2SP` fi # Eliminate all temporary directories. #for path in $notinst_path; do # lib_search_path=`$ECHO "X$lib_search_path " | $Xsed -e "s% $path % %g"` # deplibs=`$ECHO "X$deplibs " | $Xsed -e "s% -L$path % %g"` # dependency_libs=`$ECHO "X$dependency_libs " | $Xsed -e "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 temp_xrpath="$temp_xrpath -R$libdir" case "$finalize_rpath " in *" $libdir "*) ;; *) finalize_rpath="$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 "*) ;; *) dlfiles="$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 "*) ;; *) dlprefiles="$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*) # these systems don't actually have a c library (as such)! ;; *-*-rhapsody* | *-*-darwin1.[012]) # Rhapsody C library is in the System framework deplibs="$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 deplibs="$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` 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 "X$potlib" | $Xsed -e 's,[^/]*$,,'`"$potliblink";; esac done if eval $file_magic_cmd \"\$potlib\" 2>/dev/null | $SED -e 10q | $EGREP "$file_magic_regex" > /dev/null; then newdeplibs="$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. newdeplibs="$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 "*) newdeplibs="$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 \"X$potent_lib\"" 2>/dev/null | $Xsed -e 10q | \ $EGREP "$match_pattern_regex" > /dev/null; then newdeplibs="$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. newdeplibs="$newdeplibs $a_deplib" ;; esac done # Gone through all deplibs. ;; none | unknown | *) newdeplibs="" tmp_deplibs=`$ECHO "X $deplibs" | $Xsed \ -e 's/ -lc$//' -e '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 "X $tmp_deplibs" | $Xsed -e "s,$i,,"` done fi if $ECHO "X $tmp_deplibs" | $Xsed -e 's/[ ]//g' | $GREP . >/dev/null; then $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 fi ;; 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 "X $newdeplibs" | $Xsed -e '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 "X $newdeplibs" | $Xsed -e 's% \([^ $]*\).ltframework% -framework \1%g'` new_inherited_linker_flags=`$ECHO "X $new_inherited_linker_flags" | $Xsed -e 's% \([^ $]*\).ltframework% -framework \1%g'` deplibs=`$ECHO "X $deplibs" | $Xsed -e '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 "*) new_libs="$new_libs -L$path/$objdir" ;; esac ;; esac done for deplib in $deplibs; do case $deplib in -L*) case " $new_libs " in *" $deplib "*) ;; *) new_libs="$new_libs $deplib" ;; esac ;; *) new_libs="$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 if test "$hardcode_into_libs" = yes; then # Hardcode the library paths hardcode_libdirs= dep_rpath= rpath="$finalize_rpath" test "$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 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"*) ;; *) hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir" ;; esac fi else eval flag=\"$hardcode_libdir_flag_spec\" dep_rpath="$dep_rpath $flag" fi elif test -n "$runpath_var"; then case "$perm_rpath " in *" $libdir "*) ;; *) perm_rpath="$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" if test -n "$hardcode_libdir_flag_spec_ld"; then eval dep_rpath=\"$hardcode_libdir_flag_spec_ld\" else eval dep_rpath=\"$hardcode_libdir_flag_spec\" fi fi if test -n "$runpath_var" && test -n "$perm_rpath"; then # We should set the runpath_var. rpath= for dir in $perm_rpath; do rpath="$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 "$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 linknames="$linknames $link" done # Use standard objects if they are pic test -z "$pic_flag" && libobjs=`$ECHO "X$libobjs" | $SP2NL | $Xsed -e "$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" delfiles="$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 cmd in $cmds; do IFS="$save_ifs" eval cmd=\"$cmd\" func_len " $cmd" len=$func_len_result if test "$len" -lt "$max_cmd_len" || test "$max_cmd_len" -le -1; then func_show_eval "$cmd" 'exit $?' 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 "X$include_expsyms" | $Xsed | $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 delfiles="$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 "*) ;; *) tmp_deplibs="$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" generated="$generated $gentop" func_extract_archives $gentop $convenience libobjs="$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\" linker_flags="$linker_flags $flag" fi # Make a backup of the uninstalled library when relinking if test "$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 output_la=`$ECHO "X$output" | $Xsed -e "$basename"` # 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 $ECHO "$obj" >> $output done $ECHO ')' >> $output delfiles="$delfiles $output" 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 $ECHO "$obj" >> $output done delfiles="$delfiles $output" output=$firstobj\"$file_list_spec$output\" 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. eval concat_cmds=\"$reload_cmds $objlist $last_robj\" else # All subsequent reloadable object files will link in # the last one created. eval concat_cmds=\"\$concat_cmds~$reload_cmds $objlist $last_robj~\$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~ eval concat_cmds=\"\${concat_cmds}$reload_cmds $objlist $last_robj\" if test -n "$last_robj"; then eval concat_cmds=\"\${concat_cmds}~\$RM $last_robj\" fi delfiles="$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 "$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 "X$include_expsyms" | $Xsed | $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 delfiles="$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" generated="$generated $gentop" func_extract_archives $gentop $dlprefiles libobjs="$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 "$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 "$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 "X$tmp_whole_archive_flags" | $Xsed -e 's|,| |g'` else gentop="$output_objdir/${obj}x" generated="$generated $gentop" func_extract_archives $gentop $convenience reload_conv_objs="$reload_objs $func_extract_archives_result" fi fi # Create the old-style object. reload_objs="$objs$old_deplibs "`$ECHO "X$libobjs" | $SP2NL | $Xsed -e '/\.'${libext}$'/d' -e '/\.lib$/d' -e "$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 "X $compile_deplibs" | $Xsed -e 's/ -lc / System.ltframework /'` finalize_deplibs=`$ECHO "X $finalize_deplibs" | $Xsed -e '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]) compile_command="$compile_command ${wl}-bind_at_load" finalize_command="$finalize_command ${wl}-bind_at_load" ;; esac fi # Time to change all our "foo.ltframework" stuff back to "-framework foo" compile_deplibs=`$ECHO "X $compile_deplibs" | $Xsed -e 's% \([^ $]*\).ltframework% -framework \1%g'` finalize_deplibs=`$ECHO "X $finalize_deplibs" | $Xsed -e '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 "*) new_libs="$new_libs -L$path/$objdir" ;; esac ;; esac done for deplib in $compile_deplibs; do case $deplib in -L*) case " $new_libs " in *" $deplib "*) ;; *) new_libs="$new_libs $deplib" ;; esac ;; *) new_libs="$new_libs $deplib" ;; esac done compile_deplibs="$new_libs" compile_command="$compile_command $compile_deplibs" finalize_command="$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 "*) ;; *) finalize_rpath="$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"*) ;; *) hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir" ;; esac fi else eval flag=\"$hardcode_libdir_flag_spec\" rpath="$rpath $flag" fi elif test -n "$runpath_var"; then case "$perm_rpath " in *" $libdir "*) ;; *) perm_rpath="$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;; *) dllsearchpath="$dllsearchpath:$libdir";; esac case :$dllsearchpath: in *":$testbindir:"*) ;; ::) dllsearchpath=$testbindir;; *) dllsearchpath="$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"*) ;; *) hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir" ;; esac fi else eval flag=\"$hardcode_libdir_flag_spec\" rpath="$rpath $flag" fi elif test -n "$runpath_var"; then case "$finalize_perm_rpath " in *" $libdir "*) ;; *) finalize_perm_rpath="$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 "X$compile_command" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP` finalize_command=`$ECHO "X$finalize_command" | $SP2NL | $Xsed -e "$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 *cygwin* | *mingw* ) if test "$build_libtool_libs" != yes; then wrappers_required=no fi ;; *cegcc) # Disable wrappers for cegcc, we are cross compiling anyway. wrappers_required=no ;; *) 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 "X$compile_command" | $Xsed -e '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=$?' # 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 rpath="$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 rpath="$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 "X$link_command" | $Xsed -e '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 $?' 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 "X$compile_var$compile_command$compile_rpath" | $Xsed -e '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 "X$link_command" | $Xsed -e '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 $?' # 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 "X$relink_command" | $Xsed -e "$sed_quote_subst"` fi # Quote $ECHO for shipping. if test "X$ECHO" = "X$SHELL $progpath --fallback-echo"; then case $progpath in [\\/]* | [A-Za-z]:[\\/]*) qecho="$SHELL $progpath --fallback-echo";; *) qecho="$SHELL `pwd`/$progpath --fallback-echo";; esac qecho=`$ECHO "X$qecho" | $Xsed -e "$sed_quote_subst"` else qecho=`$ECHO "X$ECHO" | $Xsed -e "$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 oldobjs="$oldobjs $symfileobj" fi fi addlibs="$old_convenience" fi if test -n "$addlibs"; then gentop="$output_objdir/${outputname}x" generated="$generated $gentop" func_extract_archives $gentop $addlibs oldobjs="$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" generated="$generated $gentop" func_extract_archives $gentop $dlprefiles oldobjs="$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" generated="$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" oldobjs="$oldobjs $gentop/$newobj" ;; *) oldobjs="$oldobjs $obj" ;; esac done fi 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 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 "X$relink_command" | $Xsed -e "$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" eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib` test -z "$libdir" && \ func_fatal_error "\`$deplib' is not a valid libtool archive" newdependency_libs="$newdependency_libs $libdir/$name" ;; *) newdependency_libs="$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" newdlfiles="$newdlfiles $libdir/$name" ;; *) newdlfiles="$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" newdlprefiles="$newdlprefiles $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 newdlfiles="$newdlfiles $abs" done dlfiles="$newdlfiles" newdlprefiles= for lib in $dlprefiles; do case $lib in [\\/]* | [A-Za-z]:[\\/]*) abs="$lib" ;; *) abs=`pwd`"/$lib" ;; esac newdlprefiles="$newdlprefiles $abs" done dlprefiles="$newdlprefiles" fi $RM $output # place dlname in correct position for cygwin tdlname=$dlname case $host,$output,$installed,$module,$dlname in *cygwin*,*lai,yes,no,*.dll | *mingw*,*lai,yes,no,*.dll | *cegcc*,*lai,yes,no,*.dll) tdlname=../bin/$dlname ;; 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 "$mode" = link || test "$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) RM="$RM $arg"; rmforce=yes ;; -*) RM="$RM $arg" ;; *) files="$files $arg" ;; esac done test -z "$RM" && \ func_fatal_help "you must specify an RM program" rmdirs= origobjdir="$objdir" for file in $files; do func_dirname "$file" "" "." dir="$func_dirname_result" if test "X$dir" = X.; then objdir="$origobjdir" else objdir="$dir/$origobjdir" fi func_basename "$file" name="$func_basename_result" test "$mode" = uninstall && objdir="$dir" # Remember objdir for removal later, being careful to avoid duplicates if test "$mode" = clean; then case " $rmdirs " in *" $objdir "*) ;; *) rmdirs="$rmdirs $objdir" ;; 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 rmfiles="$rmfiles $objdir/$n" done test -n "$old_library" && rmfiles="$rmfiles $objdir/$old_library" case "$mode" in clean) case " $library_names " in # " " in the beginning catches empty $dlname *" $dlname "*) ;; *) rmfiles="$rmfiles $objdir/$dlname" ;; esac test -n "$libdir" && rmfiles="$rmfiles $objdir/$name $objdir/${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 rmfiles="$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 rmfiles="$rmfiles $dir/$non_pic_object" fi fi ;; *) if test "$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 rmfiles="$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 rmfiles="$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 rmfiles="$rmfiles $objdir/$name $objdir/${name}S.${objext}" if test "$fast_install" = yes && test -n "$relink_command"; then rmfiles="$rmfiles $objdir/lt-$name" fi if test "X$noexename" != "X$name" ; then rmfiles="$rmfiles $objdir/lt-${noexename}.c" fi fi fi ;; esac func_show_eval "$RM $rmfiles" 'exit_status=1' done objdir="$origobjdir" # 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 "$mode" = uninstall || test "$mode" = clean; } && func_mode_uninstall ${1+"$@"} test -z "$mode" && { help="$generic_help" func_fatal_help "you must specify a MODE" } test -z "$exec_cmd" && \ func_fatal_help "invalid operation mode \`$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 libbonobo-2.32.1/Makefile.am0000644000076400007640000000213111173072711012526 00000000000000SUBDIRS = \ idl bonobo-activation bonobo \ activation-server monikers \ utils samples tests doc po libincludedir = $(includedir)/libbonobo-2.0 libinclude_HEADERS = \ libbonobo.h EXTRA_DIST = \ MAINTAINERS \ bonobo-activation-config.xml \ libbonobo-zip.in \ intltool-extract.in \ intltool-merge.in \ intltool-update.in \ changes.txt \ gtk-doc.make DISTCHECK_CONFIGURE_FLAGS = --enable-gtk-doc install-data-local: -mkdir -p $(DESTDIR)$(sysconfdir)/bonobo-activation if test -f $(DESTDIR)$(sysconfdir)/bonobo-activation/bonobo-activation-config.xml; then \ echo "bonobo-activation-config.xml configuration file not changed"; \ else \ $(INSTALL_DATA) $(top_srcdir)/bonobo-activation-config.xml \ $(DESTDIR)$(sysconfdir)/bonobo-activation; \ fi uninstall-local: if cmp $(DESTDIR)$(sysconfdir)/bonobo-activation/bonobo-activation-config.xml $(top_srcdir)/bonobo-activation-config.xml > /dev/null ; then \ rm -f $(DESTDIR)$(sysconfdir)/bonobo-activation/bonobo-activation-config.xml; \ fi DISTCLEANFILES=intltool-extract intltool-merge intltool-update libbonobo-2.32.1/install-sh0000755000076400007640000003253711432275520012514 00000000000000#!/bin/sh # install - install a program, script, or datafile scriptversion=2009-04-28.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 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 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 trap '(exit $?); exit' 1 2 13 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 starting with `-'. 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 # Protect names starting with `-'. case $dst in -*) dst=./$dst;; esac # 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 -z "$d" && 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: libbonobo-2.32.1/bonobo/0000775000076400007640000000000011546334244012043 500000000000000libbonobo-2.32.1/bonobo/bonobo-stream-memory.c0000644000076400007640000002315011173072711016175 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /** * bonobo-stream-memory.c: Memory based stream * * Author: * Miguel de Icaza (miguel@gnu.org) * * Copyright 1999, 2000 Ximian, Inc. */ #include #include #include #include #include #include #include static BonoboObjectClass *bonobo_stream_mem_parent_class; static Bonobo_StorageInfo* mem_get_info (PortableServer_Servant servant, const Bonobo_StorageInfoFields mask, CORBA_Environment *ev) { Bonobo_StorageInfo *si; BonoboStreamMem *smem = BONOBO_STREAM_MEM ( bonobo_object (servant)); si = Bonobo_StorageInfo__alloc (); si->name = CORBA_string_dup (smem->name); if (mask & Bonobo_FIELD_SIZE) si->size = smem->size; if (mask & Bonobo_FIELD_TYPE) si->type = Bonobo_STORAGE_TYPE_REGULAR; si->content_type = CORBA_string_dup ( (mask & Bonobo_FIELD_CONTENT_TYPE) ? smem->content_type : ""); return si; } static void mem_set_info (PortableServer_Servant servant, const Bonobo_StorageInfo *info, const Bonobo_StorageInfoFields mask, CORBA_Environment *ev) { BonoboStreamMem *smem = BONOBO_STREAM_MEM ( bonobo_object (servant)); if (smem->read_only) { CORBA_exception_set ( ev, CORBA_USER_EXCEPTION, ex_Bonobo_Stream_NoPermission, NULL); return; } if (mask & Bonobo_FIELD_SIZE) { CORBA_exception_set ( ev, CORBA_USER_EXCEPTION, ex_Bonobo_Stream_NotSupported, NULL); return; } if ((mask & Bonobo_FIELD_TYPE) && (info->type != Bonobo_STORAGE_TYPE_REGULAR)) { CORBA_exception_set ( ev, CORBA_USER_EXCEPTION, ex_Bonobo_Stream_NotSupported, NULL); return; } if (mask & Bonobo_FIELD_CONTENT_TYPE) { bonobo_return_if_fail (info->content_type != NULL, ev); g_free (smem->content_type); smem->content_type = g_strdup (info->content_type); } if (strcmp (info->name, smem->name)) { bonobo_return_if_fail (info->name != NULL, ev); g_free (smem->name); smem->name = g_strdup (info->name); } } static void mem_truncate (PortableServer_Servant servant, const CORBA_long new_size, CORBA_Environment *ev) { BonoboStreamMem *smem = BONOBO_STREAM_MEM ( bonobo_object (servant)); void *newp; if (smem->read_only) return; newp = g_realloc (smem->buffer, new_size); if (!newp) { CORBA_exception_set (ev, CORBA_USER_EXCEPTION, ex_Bonobo_Stream_NoPermission, NULL); return; } smem->buffer = newp; smem->size = new_size; if (smem->pos > new_size) smem->pos = new_size; } static void mem_write (PortableServer_Servant servant, const Bonobo_Stream_iobuf *buffer, CORBA_Environment *ev) { BonoboStreamMem *smem = BONOBO_STREAM_MEM ( bonobo_object (servant)); long len = buffer->_length; if (smem->read_only){ g_warning ("Should signal an exception here"); return; } if (smem->pos + len > smem->size){ if (smem->resizable){ smem->size = smem->pos + len; smem->buffer = g_realloc (smem->buffer, smem->size); } else { mem_truncate (servant, smem->pos + len, ev); g_warning ("Should check for an exception here"); } } if (smem->pos + len > smem->size) len = smem->size - smem->pos; memcpy (smem->buffer + smem->pos, buffer->_buffer, len); smem->pos += len; return; } static void mem_read (PortableServer_Servant servant, CORBA_long count, Bonobo_Stream_iobuf ** buffer, CORBA_Environment *ev) { BonoboStreamMem *smem = BONOBO_STREAM_MEM ( bonobo_object (servant)); if (smem->pos + count > smem->size) count = smem->size - smem->pos; *buffer = Bonobo_Stream_iobuf__alloc (); CORBA_sequence_set_release (*buffer, TRUE); (*buffer)->_buffer = CORBA_sequence_CORBA_octet_allocbuf (count); (*buffer)->_length = count; memcpy ((*buffer)->_buffer, smem->buffer + smem->pos, count); smem->pos += count; } static CORBA_long mem_seek (PortableServer_Servant servant, CORBA_long offset, Bonobo_Stream_SeekType whence, CORBA_Environment *ev) { BonoboStreamMem *smem = BONOBO_STREAM_MEM ( bonobo_object (servant)); int pos = 0; switch (whence){ case Bonobo_Stream_SeekSet: pos = offset; break; case Bonobo_Stream_SeekCur: pos = smem->pos + offset; break; case Bonobo_Stream_SeekEnd: pos = smem->size + offset; break; default: g_warning ("Signal exception"); } if (pos > smem->size){ if (smem->resizable){ smem->buffer = g_realloc (smem->buffer, pos); memset (smem->buffer + smem->size, 0, pos - smem->size); smem->size = pos; } else mem_truncate (servant, pos, ev); } smem->pos = pos; return pos; } static void mem_commit (PortableServer_Servant servant, CORBA_Environment *ev) { CORBA_exception_set (ev, CORBA_USER_EXCEPTION, ex_Bonobo_Stream_NotSupported, NULL); } static void mem_revert (PortableServer_Servant servant, CORBA_Environment *ev) { CORBA_exception_set (ev, CORBA_USER_EXCEPTION, ex_Bonobo_Stream_NotSupported, NULL); } static void mem_finalize (GObject *object) { BonoboStreamMem *smem = BONOBO_STREAM_MEM (object); g_free (smem->buffer); g_free (smem->name); g_free (smem->content_type); G_OBJECT_CLASS (bonobo_stream_mem_parent_class)->finalize (object); } static char * mem_get_buffer (BonoboStreamMem *stream_mem) { g_return_val_if_fail (BONOBO_IS_STREAM_MEM (stream_mem), NULL); return stream_mem->buffer; } static size_t mem_get_size (BonoboStreamMem *stream_mem) { g_return_val_if_fail (BONOBO_IS_STREAM_MEM (stream_mem), 0); return stream_mem->size; } static void bonobo_stream_mem_class_init (BonoboStreamMemClass *klass) { GObjectClass *object_class = (GObjectClass *) klass; POA_Bonobo_Stream__epv *epv = &klass->epv; bonobo_stream_mem_parent_class = g_type_class_peek_parent (klass); object_class->finalize = mem_finalize; epv->getInfo = mem_get_info; epv->setInfo = mem_set_info; epv->write = mem_write; epv->read = mem_read; epv->seek = mem_seek; epv->truncate = mem_truncate; epv->commit = mem_commit; epv->revert = mem_revert; klass->get_buffer = mem_get_buffer; klass->get_size = mem_get_size; } /** * bonobo_stream_mem_get_type: * * Returns: the GType of the BonoboStreamMem class. */ GType bonobo_stream_mem_get_type (void) { static GType type = 0; if (!type) { GTypeInfo info = { sizeof (BonoboStreamMemClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) bonobo_stream_mem_class_init, NULL, /* class_finalize */ NULL, /* class_data */ sizeof (BonoboStreamMem), 0, /* n_preallocs */ (GInstanceInitFunc) NULL }; type = bonobo_type_unique ( BONOBO_TYPE_OBJECT, POA_Bonobo_Stream__init, NULL, G_STRUCT_OFFSET (BonoboStreamMemClass, epv), &info, "BonoboStreamMem"); } return type; } BonoboStreamMem * bonobo_stream_mem_construct (BonoboStreamMem *stream_mem, const char *buffer, size_t size, gboolean read_only, gboolean resizable) { g_return_val_if_fail (BONOBO_IS_STREAM_MEM (stream_mem), NULL); if (buffer == NULL) { stream_mem->buffer = g_malloc (size); memset (stream_mem->buffer, 0, size); } else stream_mem->buffer = g_memdup (buffer, size); stream_mem->size = size; stream_mem->pos = 0; stream_mem->read_only = read_only; stream_mem->resizable = resizable; stream_mem->name = g_strdup (""); stream_mem->content_type = g_strdup ("application/octet-stream"); return stream_mem; } /** * bonobo_stream_mem_create: * @buffer: The data for which a BonoboStreamMem object is to be created. * @size: The size in bytes of @buffer. * @read_only: Specifies whether or not the returned BonoboStreamMem * object should allow write() operations. * @resizable: Whether or not the buffer should be resized as needed. * * Creates a new BonoboStreamMem object. * * If @buffer is non-%NULL, @size bytes are copied from it into a new * buffer. If @buffer is %NULL, a new buffer of size @size is created * and filled with zero bytes. * * When data is read out of or (if @read_only is FALSE) written into * the returned BonoboStream object, the read() and write() operations * operate on the new buffer. If @resizable is TRUE, writing or seeking * past the end of the buffer will cause the buffer to be expanded (with * the new space zero-filled for a seek). * * Returns: the constructed BonoboStream object **/ BonoboObject * bonobo_stream_mem_create (const char *buffer, size_t size, gboolean read_only, gboolean resizable) { BonoboStreamMem *stream_mem; stream_mem = g_object_new ( bonobo_stream_mem_get_type (), NULL); if (!stream_mem) return NULL; return BONOBO_OBJECT (bonobo_stream_mem_construct ( stream_mem, buffer, size, read_only, resizable)); } /** * bonobo_stream_mem_get_buffer: * @stream_mem: a BonoboStreamMem * * Returns the buffer associated with a BonoboStreamMem. If the stream * is set to automatically resize itself, this buffer is only guaranteed * to stay valid until the next write operation on the stream. * * Return value: a buffer containing the data written to the stream (or * the data the stream was initialized with if nothing has been written). **/ const char * bonobo_stream_mem_get_buffer (BonoboStreamMem *stream_mem) { return BONOBO_STREAM_MEM_CLASS( G_OBJECT_GET_CLASS (stream_mem))->get_buffer (stream_mem); } /** * bonobo_stream_mem_get_size: * @stream_mem: a BonoboStreamMem * * Returns the size of the data associated with a BonoboStreamMem * see bonobo_stream_mem_get_buffer * * Return value: the size. **/ size_t bonobo_stream_mem_get_size (BonoboStreamMem *stream_mem) { return BONOBO_STREAM_MEM_CLASS( G_OBJECT_GET_CLASS (stream_mem))->get_size (stream_mem); } libbonobo-2.32.1/bonobo/bonobo-main.c0000644000076400007640000002436411173072711014330 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /** * bonobo-main.c: Bonobo Main * * Author: * Miguel de Icaza (miguel@gnu.org) * Nat Friedman (nat@nat.org) * Peter Wainwright (prw@wainpr.demo.co.uk) * Michael Meeks (michael@ximian.com) * * Copyright 1999,2003 Ximian, Inc. */ #include #include #include #include #include #include #include #ifdef G_OS_WIN32 #include "bonobo-activation/bonobo-activation-private.h" #endif #include #include #include #ifdef HAVE_GTHREADS GMutex *_bonobo_lock; #endif static CORBA_ORB __bonobo_orb = CORBA_OBJECT_NIL; static PortableServer_POA __bonobo_poa = CORBA_OBJECT_NIL; static PortableServer_POAManager __bonobo_poa_manager = CORBA_OBJECT_NIL; static guint bonobo_main_loop_level = 0; static GSList * bonobo_main_loops = NULL; #ifdef G_OS_WIN32 #undef BONOBO_LOCALEDIR #define BONOBO_LOCALEDIR _bonobo_activation_win32_get_localedir () #endif /** * bonobo_orb: * * Returns: The ORB used for this Bonobo application. The ORB * is created in bonobo_init(). */ CORBA_ORB bonobo_orb (void) { return __bonobo_orb; } /** * bonobo_poa: * * Returns: The POA used for this Bonobo application. The POA * is created when bonobo_init() is called. */ PortableServer_POA bonobo_poa (void) { return __bonobo_poa; } /** * bonobo_poa_manager: * * Returns: The POA Manager used for this Bonobo application. The POA * Manager is created when bonobo_init() is called, but it is not * activated until bonobo_main() is called. */ PortableServer_POAManager bonobo_poa_manager (void) { return __bonobo_poa_manager; } static gint bonobo_inited = 0; /** * bonobo_is_initialized: * * This allows you to protect against double * initialization in your code. * * Return value: whether the ORB is initialized **/ gboolean bonobo_is_initialized (void) { return (bonobo_inited > 0); } /** * bonobo_debug_shutdown: * * This shuts down the ORB and any other bonobo related * resources. * * Return value: whether the shutdown was clean, a good * value to return from 'main'. **/ int bonobo_debug_shutdown (void) { int retval = 0; if (bonobo_inited == 1) { CORBA_Environment ev; bonobo_inited--; CORBA_exception_init (&ev); bonobo_property_bag_shutdown (); bonobo_running_context_shutdown (); bonobo_context_shutdown (); if (bonobo_object_shutdown ()) retval = 1; bonobo_exception_shutdown (); if (__bonobo_poa != CORBA_OBJECT_NIL) CORBA_Object_release ( (CORBA_Object) __bonobo_poa, &ev); __bonobo_poa = CORBA_OBJECT_NIL; if (__bonobo_poa_manager != CORBA_OBJECT_NIL) CORBA_Object_release ( (CORBA_Object) __bonobo_poa_manager, &ev); __bonobo_poa_manager = CORBA_OBJECT_NIL; if (!bonobo_activation_debug_shutdown ()) retval = 1; __bonobo_orb = CORBA_OBJECT_NIL; } else if (bonobo_inited > 1) { bonobo_inited--; } else /* shutdown when we didn't need to error */ retval = 1; return retval; } /** * bonobo_init_full: * @argc: a pointer to the number of arguments * @argv: the array of arguments * @opt_orb: the ORB in which we run * @opt_poa: optional, a POA * @opt_manager: optional, a POA Manager * * Initializes the bonobo document model. It requires at least * the value for @orb. If @poa is CORBA_OBJECT_NIL, then the * RootPOA will be used, in this case @manager should be CORBA_OBJECT_NIL. * * Returns %TRUE on success, or %FALSE on failure. */ gboolean bonobo_init_full (int *argc, char **argv, CORBA_ORB opt_orb, PortableServer_POA opt_poa, PortableServer_POAManager opt_manager) { CORBA_Environment ev; bonobo_activation_init (argc ? *argc : 0, argv); bonobo_inited++; if (bonobo_inited > 1) return TRUE; /* Init neccessary bits */ g_type_init_with_debug_flags (0); bonobo_arg_init (); CORBA_exception_init (&ev); /* * Create the POA. */ if (opt_orb == CORBA_OBJECT_NIL) { opt_orb = bonobo_activation_orb_get (); if (opt_orb == CORBA_OBJECT_NIL) { g_warning ("Can not resolve initial reference to ORB"); CORBA_exception_free (&ev); return FALSE; } } if (opt_poa == CORBA_OBJECT_NIL) { opt_poa = (PortableServer_POA) CORBA_ORB_resolve_initial_references ( opt_orb, "RootPOA", &ev); if (BONOBO_EX (&ev)) { g_warning ("Can not resolve initial reference to RootPOA"); CORBA_exception_free (&ev); return FALSE; } } /* * Create the POA Manager. */ if (opt_manager == CORBA_OBJECT_NIL) { opt_manager = PortableServer_POA__get_the_POAManager (opt_poa, &ev); if (BONOBO_EX (&ev)){ g_warning ("Can not get the POA manager"); CORBA_exception_free (&ev); return FALSE; } } /* * Store global copies of these which can be retrieved with * bonobo_orb()/bonobo_poa()/bonobo_poa_manager(). */ __bonobo_orb = opt_orb; __bonobo_poa = opt_poa; __bonobo_poa_manager = opt_manager; CORBA_exception_free (&ev); #ifdef HAVE_GTHREADS _bonobo_lock = g_mutex_new (); #endif bonobo_context_init (); bindtextdomain (GETTEXT_PACKAGE, BONOBO_LOCALEDIR); #ifdef HAVE_BIND_TEXTDOMAIN_CODESET bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8"); #endif return TRUE; } /** * bonobo_init: * @argc: a pointer to the number of arguments or %NULL * @argv: the array of arguments or %NULL * * Initializes the bonobo component model. * * Returns %TRUE on success, or %FALSE on failure. */ gboolean bonobo_init (int *argc, char **argv) { return bonobo_init_full ( argc, argv, NULL, NULL, NULL); } /** * bonobo_activate: * * Activates the Bonobo POA manager registered by bonobo_init. * This should be called at the end of application initialization. * You do not need to call this function if you use bonobo_main(). * * Returns %TRUE on success, or %FALSE on failure. */ gboolean bonobo_activate (void) { CORBA_Environment ev; CORBA_exception_init (&ev); if (!__bonobo_poa_manager) { g_warning ("Tried to activate Bonobo before initializing"); CORBA_exception_free (&ev); return FALSE; } PortableServer_POAManager_activate (__bonobo_poa_manager, &ev); if (BONOBO_EX (&ev)){ g_warning ("Failed to activate the Bonobo POA manager"); CORBA_exception_free (&ev); return FALSE; } CORBA_exception_free (&ev); return TRUE; } /** * bonobo_main: * * Activates the Bonobo POA Manager and enters the main event loop. */ void bonobo_main (void) { GMainLoop *loop; bonobo_activate (); bonobo_main_loop_level++; loop = g_main_loop_new (NULL, TRUE); bonobo_main_loops = g_slist_prepend (bonobo_main_loops, loop); if (g_main_loop_is_running (bonobo_main_loops->data)) g_main_loop_run (loop); bonobo_main_loops = g_slist_remove (bonobo_main_loops, loop); g_main_loop_unref (loop); bonobo_main_loop_level--; } /** * bonobo_main_level: * * Determines the number of times the bonobo main loop has been entered (minus * the number of exits from the main loop). * * Returns: The number of main loops currently running (0 if no main loops are * running). */ guint bonobo_main_level (void) { return bonobo_main_loop_level; } /** * bonobo_main_quit: * * Quits the main event loop. */ void bonobo_main_quit (void) { g_return_if_fail (bonobo_main_loops != NULL); g_main_loop_quit (bonobo_main_loops->data); } /** * bonobo_poa_get_threadedv: * @hint: the desired thread hint * @args: va_args related to that hint * * Get a predefined POA for a given threading policy/hint. The * returned POA can be passed as the "poa" constructor property of a * #BonoboOject. * * Return value: the requested POA. **/ PortableServer_POA bonobo_poa_get_threadedv (ORBitThreadHint hint, va_list args) { PortableServer_POA poa; CORBA_Environment ev[1]; CORBA_PolicyList policies; CORBA_Object policy_vals[1]; const char *poa_name = NULL; #define MAP(a,b) \ case ORBIT_THREAD_HINT_##a: \ poa_name = b; \ break switch (hint) { MAP (NONE, "BonoboPOAHintNone"); MAP (PER_OBJECT, "BonoboPOAHintPerObject"); MAP (PER_REQUEST, "BonoboPOAHintPerRequest"); MAP (PER_POA, "BonoboPOAHintPerPOA"); MAP (PER_CONNECTION, "BonoboPOAHintPerConnection"); MAP (ONEWAY_AT_IDLE, "BonoboPOAHintOnewayAtIdle"); MAP (ALL_AT_IDLE, "BonoboPOAHintAllAtIdle"); MAP (ON_CONTEXT, "BonoboPOAHintOnContext"); #undef MAP default: g_assert_not_reached(); } CORBA_exception_init (ev); /* (Copy-paste from ORBit2/test/poa/poatest-basic08.c) */ policies._length = 1; policies._buffer = policy_vals; policies._buffer[0] = (CORBA_Object) PortableServer_POA_create_thread_policy (bonobo_poa (), PortableServer_ORB_CTRL_MODEL, ev); poa = bonobo_poa_new_from (__bonobo_poa, poa_name, &policies, ev); CORBA_Object_release (policies._buffer[0], NULL); if (ev->_major == CORBA_NO_EXCEPTION) ORBit_ObjectAdaptor_set_thread_hintv ((ORBit_ObjectAdaptor) poa, hint, args); else { if (strcmp (CORBA_exception_id (ev), ex_PortableServer_POA_AdapterAlreadyExists) == 0) { CORBA_exception_free (ev); poa = PortableServer_POA_find_POA (bonobo_poa (), poa_name, CORBA_FALSE, ev); } } CORBA_exception_free (ev); if (!poa) g_warning ("Could not create/get poa '%s'", poa_name); return poa; } /** * bonobo_poa_get_threaded: * @hint: the desired thread hint * * Get a predefined POA for a given threading policy/hint. The * returned POA can be passed as the "poa" constructor property of a * #BonoboOject. * * Return value: the requested POA. **/ PortableServer_POA bonobo_poa_get_threaded (ORBitThreadHint hint, ...) { va_list args; PortableServer_POA poa; va_start (args, hint); poa = bonobo_poa_get_threadedv (hint, args); va_end (args); return poa; } PortableServer_POA bonobo_poa_new_from (PortableServer_POA tmpl, const char *name, const CORBA_PolicyList *opt_policies, CORBA_Environment *opt_ev) { PortableServer_POA poa; CORBA_Environment real_ev[1], *ev; if (!opt_ev) CORBA_exception_init ((ev = real_ev)); else ev = opt_ev; poa = ORBit_POA_new_from (bonobo_orb(), tmpl, name, opt_policies, ev); if (!opt_ev) CORBA_exception_free (real_ev); return poa; } libbonobo-2.32.1/bonobo/bonobo-foreign-object.h0000644000076400007640000000302211173072711016272 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ #ifndef _BONOBO_FOREIGN_OBJECT_H_ #define _BONOBO_FOREIGN_OBJECT_H_ #include G_BEGIN_DECLS #define BONOBO_TYPE_FOREIGN_OBJECT (bonobo_foreign_object_get_type ()) #define BONOBO_FOREIGN_OBJECT(o) (G_TYPE_CHECK_INSTANCE_CAST ((o),\ BONOBO_TYPE_FOREIGN_OBJECT,\ BonoboForeignObject)) #define BONOBO_FOREIGN_OBJECT_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k),\ BONOBO_TYPE_FOREIGN_OBJECT,\ BonoboForeignObjectClass)) #define BONOBO_IS_FOREIGN_OBJECT(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o),\ BONOBO_TYPE_FOREIGN_OBJECT)) #define BONOBO_IS_FOREIGN_OBJECT_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k),\ BONOBO_TYPE_FOREIGN_OBJECT)) #define BONOBO_FOREIGN_OBJECT_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o),\ BONOBO_TYPE_FOREIGN_OBJECT,\ BonoboForeignObjectClass)) typedef struct _BonoboForeignObject BonoboForeignObject; struct _BonoboForeignObject { BonoboObject base; }; typedef struct { BonoboObjectClass parent_class; } BonoboForeignObjectClass; GType bonobo_foreign_object_get_type (void) G_GNUC_CONST; BonoboObject* bonobo_foreign_object_new (CORBA_Object corba_objref); G_END_DECLS #endif libbonobo-2.32.1/bonobo/bonobo-stream.h0000644000076400007640000000215011173072711014671 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /* * bonobo-stream.h: Stream manipulation, abstract class * * Author: * Miguel de Icaza (miguel@gnu.org). * * Copyright 1999, 2000 Helix Code, Inc. */ /* * Deprecation Warning: this object should not be used * directly. Instead, use a moniker-based approach. For example, * bonobo_get_object("file:/tmp/foo.txt", "IDL:Bonobo/Stream:1.0", &ev) * will return a Bonobo_Stream for file /tmp/foo.txt, for *reading* only! * To obtain a Bonobo_Stream for *writing*, you have to: * 1. Get a Bonobo_Storage for the directory containing the file you * wish to write (see comment in bonobo-storage.h for how to do this) * 2. Use the openStream method of the Bonobo_Storage, with a * Bonobo_Storage_WRITE or Bonobo_Storage_CREATE flag. The 'path' * argument should be filename only, without directories. If the file * already exists, you may need to call store.erase(filename) first. */ #ifndef _BONOBO_STREAM_H_ #define _BONOBO_STREAM_H_ G_BEGIN_DECLS #include G_END_DECLS #endif /* _BONOBO_STREAM_H_ */ libbonobo-2.32.1/bonobo/bonobo-moniker-util.h0000644000076400007640000000726311173072711016027 00000000000000/* * bonobo-moniker-util.h * * Copyright (C) 2000 Helix Code, Inc. * * Authors: * Michael Meeks (michael@helixcode.com) * Ettore Perazzoli (ettore@helixcode.com) */ #ifndef _BONOBO_MONIKER_UTIL_H #define _BONOBO_MONIKER_UTIL_H #include /* Useful client functions */ Bonobo_Unknown bonobo_get_object (const CORBA_char *name, const char *interface_name, CORBA_Environment *opt_ev); Bonobo_Moniker bonobo_moniker_client_new_from_name (const CORBA_char *name, CORBA_Environment *opt_ev); CORBA_char *bonobo_moniker_client_get_name (Bonobo_Moniker moniker, CORBA_Environment *opt_ev); Bonobo_Unknown bonobo_moniker_client_resolve_default (Bonobo_Moniker moniker, const char *interface_name, CORBA_Environment *opt_ev); gboolean bonobo_moniker_client_equal (Bonobo_Moniker moniker, const CORBA_char *name, CORBA_Environment *opt_ev); typedef void (*BonoboMonikerAsyncFn) (Bonobo_Unknown object, CORBA_Environment *ev, gpointer user_data); /* Async equivalents */ void bonobo_get_object_async (const CORBA_char *name, const char *interface_name, CORBA_Environment *ev, BonoboMonikerAsyncFn cb, gpointer user_data); void bonobo_moniker_client_new_from_name_async (const CORBA_char *name, CORBA_Environment *ev, BonoboMonikerAsyncFn cb, gpointer user_data); void bonobo_moniker_resolve_async (Bonobo_Moniker moniker, Bonobo_ResolveOptions *options, const char *interface_name, CORBA_Environment *ev, BonoboMonikerAsyncFn cb, gpointer user_data); void bonobo_moniker_resolve_async_default (Bonobo_Moniker moniker, const char *interface_name, CORBA_Environment *ev, BonoboMonikerAsyncFn cb, gpointer user_data); /* Useful moniker implementation helper functions */ CORBA_char *bonobo_moniker_util_get_parent_name (Bonobo_Moniker moniker, CORBA_Environment *opt_ev); Bonobo_Unknown bonobo_moniker_util_qi_return (Bonobo_Unknown object, const CORBA_char *requested_interface, CORBA_Environment *ev); const char *bonobo_moniker_util_parse_name (const char *name, int *plen); int bonobo_moniker_util_seek_std_separator (const CORBA_char *str, int min_idx); char *bonobo_moniker_util_escape (const char *string, int offset); char *bonobo_moniker_util_unescape (const char *string, int num_chars); void bonobo_url_register (char *oafiid, char *url, char *mime_type, Bonobo_Unknown object, CORBA_Environment *ev); void bonobo_url_unregister (char *oafiid, char *url, CORBA_Environment *ev); Bonobo_Unknown bonobo_url_lookup (char *oafiid, char *url, CORBA_Environment *ev); #endif /* _BONOBO_MONIKER_UTIL_H */ libbonobo-2.32.1/bonobo/bonobo-debug.c0000644000076400007640000000303111173072711014456 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /** * bonobo-debug.c: A runtime-controllable debugging API. * * Author: * Jaka Mocnik */ #include #include #include #include #include BonoboDebugFlags _bonobo_debug_flags; static FILE *_bonobo_debug_file; void bonobo_debug_init(void) { const GDebugKey debug_keys[] = { { "refs", BONOBO_DEBUG_REFS }, { "aggregate", BONOBO_DEBUG_AGGREGATE }, { "lifecycle", BONOBO_DEBUG_LIFECYCLE }, { "running", BONOBO_DEBUG_RUNNING }, { "object", BONOBO_DEBUG_OBJECT } }; const char *env_string; _bonobo_debug_flags = BONOBO_DEBUG_NONE; env_string = g_getenv ("BONOBO_DEBUG"); if (env_string) _bonobo_debug_flags |= g_parse_debug_string (env_string, debug_keys, G_N_ELEMENTS (debug_keys)); _bonobo_debug_file = NULL; env_string = g_getenv ("BONOBO_DEBUG_DIR"); if(env_string) { gchar *dbg_filename; dbg_filename = g_strdup_printf("%s/bonobo-debug-%d", env_string, getpid()); _bonobo_debug_file = g_fopen(dbg_filename, "w"); g_free(dbg_filename); } if(_bonobo_debug_file == NULL) _bonobo_debug_file = stderr; } void bonobo_debug_print (const char *name, char *fmt, ...) { va_list args; va_start (args, fmt); fprintf (_bonobo_debug_file, "[%06d]:%-15s ", getpid (), name); vfprintf (_bonobo_debug_file, fmt, args); fprintf (_bonobo_debug_file, "\n"); fflush (_bonobo_debug_file); va_end (args); } libbonobo-2.32.1/bonobo/bonobo-exception.c0000644000076400007640000002251011173072711015371 00000000000000/* * bonobo-exception.c: a generic exception -> user string converter. * * Authors: * Michael Meeks (michael@helixcode.com) * * Copyright 2000 Ximian, Inc. */ #include #include #include #include #include #include #include typedef enum { EXCEPTION_STR, EXCEPTION_FN } ExceptionType; typedef struct { ExceptionType type; char *repo_id; char *str; BonoboExceptionFn fn; gpointer user_data; GDestroyNotify destroy_fn; } ExceptionHandle; static GHashTable *bonobo_exceptions = NULL; static gboolean except_destroy (gpointer dummy, ExceptionHandle *e, gpointer dummy2) { if (e) { if (e->type == EXCEPTION_FN && e->destroy_fn) e->destroy_fn (e->user_data); e->destroy_fn = NULL; g_free (e->repo_id); g_free (e->str); g_free (e); } return TRUE; } void bonobo_exception_shutdown (void) { if (bonobo_exceptions) { g_hash_table_foreach_remove ( bonobo_exceptions, (GHRFunc) except_destroy, NULL); g_hash_table_destroy (bonobo_exceptions); bonobo_exceptions = NULL; } } static GHashTable * get_hash (void) { if (!bonobo_exceptions) bonobo_exceptions = g_hash_table_new ( g_str_hash, g_str_equal); return bonobo_exceptions; } /** * bonobo_exception_add_handler_str: * @repo_id: exception repository id * @str: the user readable, translated exception text. * * This routine adds a simple string mapping for an exception * with repository id @repo_id, such that when we call * bonobo_exception_get_text on an exception of id @repo_id we * get @str back. **/ void bonobo_exception_add_handler_str (const char *repo_id, const char *str) { ExceptionHandle *e; GHashTable *hash; g_return_if_fail (str != NULL); g_return_if_fail (repo_id != NULL); hash = get_hash (); e = g_new0 (ExceptionHandle, 1); e->type = EXCEPTION_STR; e->repo_id = g_strdup (repo_id); e->str = g_strdup (str); g_hash_table_insert (hash, e->repo_id, e); } /** * bonobo_exception_add_handler_fn: * @repo_id: exception repository id * @fn: function to make exception human readable * @user_data: the user data * @destroy_fn: user data destroy function or NULL. * * This routine adds a method mapping for an exception * with repository id @repo_id, such that when we call * bonobo_exception_get_text on an exception of id @repo_id * the @fn is called and passed @user_data. * When the handler is removed the @destroy_fn is called * on its @user_data. **/ void bonobo_exception_add_handler_fn (const char *repo_id, BonoboExceptionFn fn, gpointer user_data, GDestroyNotify destroy_fn) { ExceptionHandle *e; GHashTable *hash; g_return_if_fail (fn != NULL); g_return_if_fail (repo_id != NULL); hash = get_hash (); e = g_new0 (ExceptionHandle, 1); e->type = EXCEPTION_STR; e->repo_id = g_strdup (repo_id); e->fn = fn; e->user_data = user_data; e->destroy_fn = destroy_fn; g_hash_table_insert (hash, e->repo_id, e); } /** * bonobo_exception_repoid_to_text: * @repo_id: exception repository id * * This maps builtin bonobo exceptions that the system * knows about to user readable strings. * * Return value: a user string or NULL for an unknown repo_id **/ char * bonobo_exception_repoid_to_text (const char *repo_id) { /* Bonobo */ if (!strcmp (repo_id, ex_Bonobo_NotSupported)) return g_strdup (_("An unsupported action was attempted")); else if (!strcmp (repo_id, ex_Bonobo_IOError)) return g_strdup (_("IO Error")); else if (!strcmp (repo_id, ex_Bonobo_BadArg)) return g_strdup (_("Invalid argument value")); /* Bonobo::ItemContainer */ else if (!strcmp (repo_id, ex_Bonobo_ItemContainer_NotFound)) return g_strdup (_("Object not found")); else if (!strcmp (repo_id, ex_Bonobo_ItemContainer_SyntaxError)) return g_strdup (_("Syntax error in object description")); #if 0 /* Bonobo::GenericFactory */ else if (!strcmp (repo_id, ex_GNOME_ObjectFactory_CannotActivate)) return g_strdup (_("Cannot activate object from factory")); #endif /* Bonobo::Stream */ else if (!strcmp (repo_id, ex_Bonobo_Stream_NoPermission)) return g_strdup (_("No permission to access stream")); else if (!strcmp (repo_id, ex_Bonobo_Stream_NotSupported)) return g_strdup (_("An unsupported stream action was attempted")); else if (!strcmp (repo_id, ex_Bonobo_Stream_IOError)) return g_strdup (_("IO Error on stream")); /* Bonobo::Storage */ else if (!strcmp (repo_id, ex_Bonobo_Storage_IOError)) return g_strdup (_("IO Error on storage")); else if (!strcmp (repo_id, ex_Bonobo_Storage_NameExists)) return g_strdup (_("Name already exists in storage")); else if (!strcmp (repo_id, ex_Bonobo_Storage_NotFound)) return g_strdup (_("Object not found in storage")); else if (!strcmp (repo_id, ex_Bonobo_Storage_NoPermission)) return g_strdup (_("No permission to do operation on storage")); else if (!strcmp (repo_id, ex_Bonobo_Storage_NotSupported)) return g_strdup (_("An unsupported storage action was attempted")); else if (!strcmp (repo_id, ex_Bonobo_Storage_NotStream)) return g_strdup (_("Object is not a stream")); else if (!strcmp (repo_id, ex_Bonobo_Storage_NotStorage)) return g_strdup (_("Object is not a storage")); else if (!strcmp (repo_id, ex_Bonobo_Storage_NotEmpty)) return g_strdup (_("Storage is not empty")); /* Bonobo::UIContainer */ else if (!strcmp (repo_id, ex_Bonobo_UIContainer_MalformedXML)) return g_strdup (_("malformed user interface XML description")); else if (!strcmp (repo_id, ex_Bonobo_UIContainer_InvalidPath)) return g_strdup (_("invalid path to XML user interface element")); else if (!strcmp (repo_id, ex_Bonobo_UIContainer_NonExistentAttr)) return g_strdup (_("the requested UI attribute didn't exist")); else if (!strcmp (repo_id, ex_Bonobo_UIContainer_Unknown)) return g_strdup (_("Unknown command or verb")); else if (!strcmp (repo_id, ex_Bonobo_UIContainer_Insensitive)) return g_strdup (_("Command is insensitive")); /* Bonobo::Persist */ else if (!strcmp (repo_id, ex_Bonobo_Persist_WrongDataType)) return g_strdup (_("incorrect data type")); else if (!strcmp (repo_id, ex_Bonobo_Persist_FileNotFound)) return g_strdup (_("stream not found")); /* Bonobo::PropertyBag */ else if (!strcmp (repo_id, ex_Bonobo_PropertyBag_NotFound)) return g_strdup (_("property not found")); else if (!strcmp (repo_id, ex_Bonobo_PropertyBag_InvalidType)) return g_strdup (_("property has invalid type")); else if (!strcmp (repo_id, ex_Bonobo_PropertyBag_ReadOnly)) return g_strdup (_("property is read only")); else if (!strcmp (repo_id, ex_Bonobo_PropertyBag_BackendFailed)) return g_strdup (_("config database backend failed ")); /* Bonobo::Moniker */ else if (!strcmp (repo_id, ex_Bonobo_Moniker_InterfaceNotFound)) return g_strdup (_("Moniker interface cannot be found")); else if (!strcmp (repo_id, ex_Bonobo_Moniker_TimeOut)) return g_strdup (_("Moniker activation timed out")); else if (!strcmp (repo_id, ex_Bonobo_Moniker_InvalidSyntax)) return g_strdup (_("Syntax error within moniker")); else if (!strcmp (repo_id, ex_Bonobo_Moniker_UnknownPrefix)) return g_strdup (_("Moniker has an unknown moniker prefix")); else return NULL; } /** * bonobo_exception_get_text: * @ev: the corba environment. * * Returns a user readable description of the exception. First * checks @ev against builtin Bonobo exceptions, then falls back to * exception names added through bonobo_exception_add_handler_str * or bonobo_exception_add_handler_fn. * * Return value: A g_malloc'd description, which the caller must free. * NULL is never returned. **/ char * bonobo_exception_get_text (CORBA_Environment *ev) { char *rval; if (!ev || !BONOBO_EX (ev)) return g_strdup (_("Error checking error; no exception")); if ((rval = bonobo_exception_repoid_to_text (ev->_id))) return rval; else if (!strcmp (ev->_id, "IDL:Bonobo/GeneralError:1.0")) { Bonobo_GeneralError *err = ev->_any._value; if (!err || !err->description) return g_strdup (_("General activation error with no description")); else return g_strdup (err->description); } else { ExceptionHandle *e; GHashTable *hash = get_hash (); char *str = NULL; if ((e = g_hash_table_lookup (hash, ev->_id))) { if (e->type == EXCEPTION_STR) str = g_strdup (e->str); else str = e->fn (ev, e->user_data); } if (str) return str; else return g_strdup_printf ( "Unknown CORBA exception id: '%s'", ev->_id); } } void bonobo_exception_general_error_set (CORBA_Environment *ev, CORBA_TypeCode opt_deriv, const char *format, ...) { va_list args; Bonobo_GeneralError *err; char *str; CORBA_TypeCode type; va_start (args, format); str = g_strdup_vprintf (format, args); va_end (args); if (opt_deriv) type = opt_deriv; else type = TC_Bonobo_GeneralError; err = ORBit_small_alloc (type); err->description = CORBA_string_dup (str); g_free(str); CORBA_exception_set (ev, CORBA_USER_EXCEPTION, ex_Bonobo_GeneralError, err); } const char * bonobo_exception_general_error_get (CORBA_Environment *ev) { Bonobo_GeneralError *gerr; if (!BONOBO_EX (ev)) return NULL; if (strcmp (BONOBO_EX_REPOID (ev), ex_Bonobo_GeneralError)) return NULL; gerr = CORBA_exception_value (ev); return gerr->description; } libbonobo-2.32.1/bonobo/bonobo-context.h0000644000076400007640000000133311173072711015064 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /** * bonobo-context.h: Handle Global Component contexts. * * Author: * Michael Meeks (michael@helixcode.com) * * Copyright 2000 Helix Code, Inc. */ #ifndef _BONOBO_CONTEXT_H_ #define _BONOBO_CONTEXT_H_ #include Bonobo_Unknown bonobo_context_get (const CORBA_char *context_name, CORBA_Environment *opt_ev); void bonobo_context_add (const CORBA_char *context_name, Bonobo_Unknown context); /* emits a 'last_unref' signal */ BonoboObject *bonobo_context_running_get (void); void bonobo_running_context_auto_exit_unref (BonoboObject *object); #endif /* _BONOBO_CONTEXT_H_ */ libbonobo-2.32.1/bonobo/bonobo-foreign-object.c0000644000076400007640000000336711173072711016301 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ #include #include #include static void bonobo_foreign_object_class_init (BonoboForeignObjectClass *klass) { } static void bonobo_foreign_object_instance_init (GObject *g_object, GTypeClass *klass) { } GType bonobo_foreign_object_get_type (void) { static GType type = 0; if (!type) { GTypeInfo info = { sizeof (BonoboForeignObjectClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) bonobo_foreign_object_class_init, NULL, /* class_finalize */ NULL, /* class_data */ sizeof (BonoboForeignObject), 0, /* n_preallocs */ (GInstanceInitFunc) bonobo_foreign_object_instance_init }; type = g_type_register_static (BONOBO_TYPE_OBJECT, "BonoboForeignObject", &info, 0); } return type; } BonoboObject * bonobo_foreign_object_new (CORBA_Object corba_objref) { BonoboObject *object; CORBA_Environment ev[1]; g_return_val_if_fail (corba_objref != CORBA_OBJECT_NIL, NULL); CORBA_exception_init (ev); if (!CORBA_Object_is_a (corba_objref, "IDL:Bonobo/Unknown:1.0", ev)) { if (ev->_major != CORBA_NO_EXCEPTION) { char *text = bonobo_exception_get_text (ev); g_warning ("CORBA_Object_is_a: %s", text); g_free (text); } else g_warning ("bonobo_foreign_object_new: corba_objref" " doesn't have interface Bonobo::Unknown"); object = NULL; } else { object = BONOBO_OBJECT (g_object_new (BONOBO_TYPE_FOREIGN_OBJECT, NULL)); object->corba_objref = CORBA_Object_duplicate (corba_objref, NULL); bonobo_running_context_add_object_T (object->corba_objref); } CORBA_exception_free (ev); return object; } libbonobo-2.32.1/bonobo/bonobo-running-context.h0000644000076400007640000000370011173072711016542 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /** * bonobo-running-context.c: An interface to track running objects * * Author: * Michael Meeks (michael@helixcode.com) * * Copyright (C) 2000, Helix Code, Inc. */ #ifndef _BONOBO_RUNNING_CONTEXT_H_ #define _BONOBO_RUNNING_CONTEXT_H_ #include G_BEGIN_DECLS typedef struct _BonoboRunningContextPrivate BonoboRunningContextPrivate; typedef struct _BonoboRunningContext BonoboRunningContext; struct _BonoboRunningContext { BonoboObject parent; BonoboRunningContextPrivate *priv; }; typedef struct { BonoboObjectClass parent; POA_Bonobo_RunningContext__epv epv; void (*last_unref) (void); } BonoboRunningContextClass; GType bonobo_running_context_get_type (void) G_GNUC_CONST; BonoboObject *bonobo_running_context_new (void); /* * This interface is private, and purely for speed * of impl. of the context. */ void bonobo_running_context_add_object_T (CORBA_Object object); void bonobo_running_context_remove_object_T (CORBA_Object object); void bonobo_running_context_ignore_object (CORBA_Object object); void bonobo_running_context_trace_objects_T (CORBA_Object object, const char *fn, int line, int mode); void bonobo_running_context_at_exit_unref (CORBA_Object object); #ifdef BONOBO_OBJECT_DEBUG # define bonobo_running_context_add_object_T(o) G_STMT_START{bonobo_running_context_trace_objects((o),G_STRFUNC,__LINE__,0);}G_STMT_END # define bonobo_running_context_remove_object_T(o) G_STMT_START{bonobo_running_context_trace_objects((o),G_STRFUNC,__LINE__,1);}G_STMT_END # define bonobo_running_context_ignore_object(o) G_STMT_START{bonobo_running_context_trace_objects((o),G_STRFUNC,__LINE__,2);}G_STMT_END #endif G_END_DECLS #endif /* _BONOBO_RUNNING_CONTEXT_H_ */ libbonobo-2.32.1/bonobo/bonobo-item-handler.h0000644000076400007640000000500011173072711015744 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /** * bonobo-item-handler.h: a generic ItemContainer handler for monikers. * * Author: * Miguel de Icaza (miguel@kernel.org) * * Copyright 1999, 2000 Helix Code, Inc. * Copyright 1999, 2000 Miguel de Icaza */ #ifndef _BONOBO_ITEM_HANDLER_H_ #define _BONOBO_ITEM_HANDLER_H_ #include G_BEGIN_DECLS #define BONOBO_TYPE_ITEM_HANDLER (bonobo_item_handler_get_type ()) #define BONOBO_ITEM_HANDLER_TYPE BONOBO_TYPE_ITEM_HANDLER /* deprecated, you should use BONOBO_TYPE_ITEM_HANDLER */ #define BONOBO_ITEM_HANDLER(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), BONOBO_TYPE_ITEM_HANDLER, BonoboItemHandler)) #define BONOBO_ITEM_HANDLER_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), BONOBO_TYPE_ITEM_HANDLER, BonoboItemHandlerClass)) #define BONOBO_IS_ITEM_HANDLER(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), BONOBO_TYPE_ITEM_HANDLER)) #define BONOBO_IS_ITEM_HANDLER_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), BONOBO_TYPE_ITEM_HANDLER)) typedef struct _BonoboItemHandlerPrivate BonoboItemHandlerPrivate; typedef struct _BonoboItemHandler BonoboItemHandler; typedef Bonobo_ItemContainer_ObjectNames *(*BonoboItemHandlerEnumObjectsFn) (BonoboItemHandler *h, gpointer data, CORBA_Environment *); typedef Bonobo_Unknown (*BonoboItemHandlerGetObjectFn) (BonoboItemHandler *h, const char *item_name, gboolean only_if_exists, gpointer data, CORBA_Environment *ev); struct _BonoboItemHandler { BonoboObject base; POA_Bonobo_ItemContainer__epv epv; BonoboItemHandlerPrivate *priv; }; typedef struct { BonoboObjectClass parent_class; POA_Bonobo_ItemContainer__epv epv; } BonoboItemHandlerClass; GType bonobo_item_handler_get_type (void) G_GNUC_CONST; BonoboItemHandler *bonobo_item_handler_new (BonoboItemHandlerEnumObjectsFn enum_objects, BonoboItemHandlerGetObjectFn get_object, gpointer user_data); BonoboItemHandler *bonobo_item_handler_new_closure (GClosure *enum_objects, GClosure *get_object); BonoboItemHandler *bonobo_item_handler_construct (BonoboItemHandler *handler, GClosure *enum_objects, GClosure *get_object); /* Utility functions that can be used by getObject routines */ typedef struct { char *key; char *value; } BonoboItemOption; GSList *bonobo_item_option_parse (const char *option_string); void bonobo_item_options_free (GSList *options); G_END_DECLS #endif libbonobo-2.32.1/bonobo/bonobo-property-bag-client.c0000644000076400007640000006564211173072711017277 00000000000000/* * bonobo-property-bag-client.c: C sugar for property bags. * * Author: * Dietmar Maurer (dietmar@ximian.com) * Michael Meeks (michael@ximian.com) * Nat Friedman (nat@ximian.com) * * Copyright 2001 Ximian, Inc. */ #include #include #include #include #include #include #include #define BONOBO_PBCLIENT_DEFAULT_BAG "config:" G_LOCK_DEFINE_STATIC (default_bag_lock); static Bonobo_PropertyBag default_bag = CORBA_OBJECT_NIL; void bonobo_property_bag_shutdown (void) { if (default_bag != CORBA_OBJECT_NIL) bonobo_object_release_unref (default_bag, NULL); } static Bonobo_PropertyBag get_default_bag (CORBA_Environment *ev) { if (default_bag == CORBA_OBJECT_NIL) { G_LOCK (default_bag_lock); if (default_bag == CORBA_OBJECT_NIL) default_bag = bonobo_get_object ( BONOBO_PBCLIENT_DEFAULT_BAG, "IDL:Bonobo/PropertyBag:1.0", ev); G_UNLOCK (default_bag_lock); } if (default_bag == CORBA_OBJECT_NIL) g_warning ("unable to get default property bag\n") ; return default_bag; } char * bonobo_pbclient_get_doc_title (Bonobo_PropertyBag bag, const char *key, CORBA_Environment *opt_ev) { CORBA_Environment ev, *my_ev; char *retval; bonobo_return_val_if_fail (key != NULL, NULL, opt_ev); if (!opt_ev) { CORBA_exception_init (&ev); my_ev = &ev; } else my_ev = opt_ev; if (bag == CORBA_OBJECT_NIL) bag = get_default_bag (my_ev); if (BONOBO_EX (my_ev) || bag == CORBA_OBJECT_NIL) { if (!opt_ev) CORBA_exception_free (&ev); return NULL; } retval = Bonobo_PropertyBag_getDocTitle (bag, key, my_ev); if (BONOBO_EX (my_ev)) { if (!opt_ev) { g_warning ("Cannot get property title: %s\n", bonobo_exception_get_text (my_ev)); CORBA_exception_free (&ev); } return NULL; } if (!opt_ev) CORBA_exception_free (&ev); return retval; } char * bonobo_pbclient_get_doc (Bonobo_PropertyBag bag, const char *key, CORBA_Environment *opt_ev) { CORBA_Environment ev, *my_ev; char *retval; bonobo_return_val_if_fail (key != NULL, NULL, opt_ev); if (!opt_ev) { CORBA_exception_init (&ev); my_ev = &ev; } else my_ev = opt_ev; if (bag == CORBA_OBJECT_NIL) bag = get_default_bag (my_ev); if (BONOBO_EX (my_ev) || bag == CORBA_OBJECT_NIL) { if (!opt_ev) CORBA_exception_free (&ev); return NULL; } retval = Bonobo_PropertyBag_getDoc (bag, key, my_ev); if (BONOBO_EX (my_ev)) { if (!opt_ev) { g_warning ("Cannot get property documentation: %s\n", bonobo_exception_get_text (my_ev)); CORBA_exception_free (&ev); } return NULL; } if (!opt_ev) CORBA_exception_free (&ev); return retval; } Bonobo_PropertyFlags bonobo_pbclient_get_flags (Bonobo_PropertyBag bag, const char *key, CORBA_Environment *opt_ev) { CORBA_Environment ev, *my_ev; Bonobo_PropertyFlags retval; bonobo_return_val_if_fail (key != NULL, 0, opt_ev); if (!opt_ev) { CORBA_exception_init (&ev); my_ev = &ev; } else my_ev = opt_ev; if (bag == CORBA_OBJECT_NIL) bag = get_default_bag (my_ev); if (BONOBO_EX (my_ev) || bag == CORBA_OBJECT_NIL) { if (!opt_ev) CORBA_exception_free (&ev); return 0; } retval = Bonobo_PropertyBag_getFlags (bag, key, my_ev); if (BONOBO_EX (my_ev)) { if (!opt_ev) { g_warning ("Cannot get flags: %s\n", bonobo_exception_get_text (my_ev)); CORBA_exception_free (&ev); } return 0; } if (!opt_ev) CORBA_exception_free (&ev); return retval; } CORBA_TypeCode bonobo_pbclient_get_type (Bonobo_PropertyBag bag, const char *key, CORBA_Environment *opt_ev) { CORBA_Environment ev, *my_ev; CORBA_TypeCode retval; bonobo_return_val_if_fail (key != NULL, NULL, opt_ev); if (!opt_ev) { CORBA_exception_init (&ev); my_ev = &ev; } else my_ev = opt_ev; if (bag == CORBA_OBJECT_NIL) bag = get_default_bag (my_ev); if (BONOBO_EX (my_ev) || bag == CORBA_OBJECT_NIL) { if (!opt_ev) CORBA_exception_free (&ev); return NULL; } retval = Bonobo_PropertyBag_getType (bag, key, my_ev); if (BONOBO_EX (my_ev)) { if (!opt_ev) { g_warning ("Cannot get type code: %s\n", bonobo_exception_get_text (my_ev)); CORBA_exception_free (&ev); } return NULL; } if (!opt_ev) CORBA_exception_free (&ev); return retval; } GList * bonobo_pbclient_get_keys (Bonobo_PropertyBag bag, CORBA_Environment *opt_ev) { Bonobo_KeyList *key_list; CORBA_Environment ev, *my_ev; GList *l = NULL; int i; if (!opt_ev) { CORBA_exception_init (&ev); my_ev = &ev; } else my_ev = opt_ev; if (bag == CORBA_OBJECT_NIL) bag = get_default_bag (my_ev); if (BONOBO_EX (my_ev) || bag == CORBA_OBJECT_NIL) { if (!opt_ev) CORBA_exception_free (&ev); return NULL; } key_list = Bonobo_PropertyBag_getKeys (bag, "", my_ev); if (BONOBO_EX (my_ev) || !key_list) { if (!opt_ev) CORBA_exception_free (&ev); return NULL; } for (i = 0; i < key_list->_length; i++) l = g_list_prepend (l, g_strdup (key_list->_buffer [i])); if (!opt_ev) CORBA_exception_free (&ev); return l; } void bonobo_pbclient_free_keys (GList *key_list) { GList *l; if (!(l = key_list)) return; while (l) { g_free (l->data); l = l->next; } g_list_free (l); } #define MAKE_GET_SIMPLE(c_type, default, name, corba_tc, extract_fn) \ c_type bonobo_pbclient_get_##name (Bonobo_PropertyBag bag, \ const char *key, \ CORBA_Environment *opt_ev) \ { \ CORBA_any *value; \ c_type retval; \ \ if (!(value = bonobo_pbclient_get_value (bag, key, corba_tc, opt_ev)))\ return default; \ retval = extract_fn; \ CORBA_free (value); \ return retval; \ } #define MAKE_GET_DEFAULT(c_type, default, name, corba_tc, extract_fn) \ c_type bonobo_pbclient_get_default_##name (Bonobo_PropertyBag bag, \ const char *key, \ CORBA_Environment *opt_ev) \ { \ CORBA_any *value; \ c_type retval; \ \ if (!(value = bonobo_pbclient_get_default_value (bag, key, corba_tc, \ opt_ev))) \ return default; \ retval = extract_fn; \ CORBA_free (value); \ return retval; \ } #define MAKE_GET_WITH_DEFAULT(c_type, name, assign_fn) \ c_type bonobo_pbclient_get_##name##_with_default (Bonobo_PropertyBag bag, \ const char *key, \ c_type defval, \ gboolean *def) \ { \ c_type retval; \ CORBA_Environment ev; \ CORBA_exception_init (&ev); \ if (def) *def = FALSE; \ retval = bonobo_pbclient_get_##name (bag, key, &ev); \ if (BONOBO_EX (&ev)) { \ retval = assign_fn (defval); \ if (def) *def = TRUE; \ } \ CORBA_exception_free (&ev); \ return retval; \ } /** * bonobo_pbclient_get_string: * @bag: a reference to the PropertyBag * @key: key of the value to get * @opt_ev: an optional CORBA_Environment to return failure codes * * Get a string from the PropertyBag * * Returns: the value contained in the database, or zero on error. */ MAKE_GET_SIMPLE (gchar *, NULL, string, TC_CORBA_string, g_strdup (*(char **)value->_value)) MAKE_GET_DEFAULT (gchar *, NULL, string, TC_CORBA_string, g_strdup (*(char **)value->_value)) MAKE_GET_WITH_DEFAULT (gchar *, string, g_strdup) /** * bonobo_pbclient_get_short: * @bag: a reference to the PropertyBag * @key: key of the value to get * @opt_ev: an optional CORBA_Environment to return failure codes * * Get a 16 bit integer from the PropertyBag * * Returns: the value contained in the database. */ MAKE_GET_SIMPLE (gint16, 0, short, TC_CORBA_short, (*(gint16 *)value->_value)) MAKE_GET_DEFAULT (gint16, 0, short, TC_CORBA_short, (*(gint16 *)value->_value)) MAKE_GET_WITH_DEFAULT (gint16, short, ) /** * bonobo_pbclient_get_ushort: * @bag: a reference to the PropertyBag * @key: key of the value to get * @opt_ev: an optional CORBA_Environment to return failure codes * * Get a 16 bit unsigned integer from the PropertyBag * * Returns: the value contained in the database. */ MAKE_GET_SIMPLE (guint16, 0, ushort, TC_CORBA_unsigned_short, (*(guint16 *)value->_value)) MAKE_GET_DEFAULT (guint16, 0, ushort, TC_CORBA_unsigned_short, (*(guint16 *)value->_value)) MAKE_GET_WITH_DEFAULT (guint16, ushort, ) /** * bonobo_pbclient_get_long: * @bag: a reference to the PropertyBag * @key: key of the value to get * @opt_ev: an optional CORBA_Environment to return failure codes * * Get a 32 bit integer from the PropertyBag * * Returns: the value contained in the database. */ MAKE_GET_SIMPLE (gint32, 0, long, TC_CORBA_long, (*(gint32 *)value->_value)) MAKE_GET_DEFAULT (gint32, 0, long, TC_CORBA_long, (*(gint32 *)value->_value)) MAKE_GET_WITH_DEFAULT (gint32, long, ) /** * bonobo_pbclient_get_ulong: * @bag: a reference to the PropertyBag * @key: key of the value to get * @opt_ev: an optional CORBA_Environment to return failure codes * * Get a 32 bit unsigned integer from the PropertyBag * * Returns: the value contained in the database. */ MAKE_GET_SIMPLE (guint32, 0, ulong, TC_CORBA_unsigned_long, (*(guint32 *)value->_value)) MAKE_GET_DEFAULT (guint32, 0, ulong, TC_CORBA_unsigned_long, (*(guint32 *)value->_value)) MAKE_GET_WITH_DEFAULT (guint32, ulong, ) /** * bonobo_pbclient_get_float: * @bag: a reference to the PropertyBag * @key: key of the value to get * @opt_ev: an optional CORBA_Environment to return failure codes * * Get a single precision floating point value from the PropertyBag * * Returns: the value contained in the database. */ MAKE_GET_SIMPLE (gfloat, 0.0, float, TC_CORBA_float, (*(gfloat *)value->_value)) MAKE_GET_DEFAULT (gfloat, 0.0, float, TC_CORBA_float, (*(gfloat *)value->_value)) MAKE_GET_WITH_DEFAULT (gfloat, float, ) /** * bonobo_pbclient_get_double: * @bag: a reference to the PropertyBag * @key: key of the value to get * @opt_ev: an optional CORBA_Environment to return failure codes * * Get a double precision floating point value from the PropertyBag * * Returns: the value contained in the database. */ MAKE_GET_SIMPLE (gdouble, 0.0, double, TC_CORBA_double, (*(gdouble *)value->_value)) MAKE_GET_DEFAULT (gdouble, 0.0, double, TC_CORBA_double,(*(gdouble *)value->_value)) MAKE_GET_WITH_DEFAULT (gdouble, double, ) /** * bonobo_pbclient_get_char: * @bag: a reference to the PropertyBag * @key: key of the value to get * @opt_ev: an optional CORBA_Environment to return failure codes * * Get a 8 bit character value from the PropertyBag * * Returns: the value contained in the database. */ MAKE_GET_SIMPLE (gchar, '\0', char, TC_CORBA_char, (*(gchar *)value->_value)) MAKE_GET_DEFAULT (gchar, '\0', char, TC_CORBA_char, (*(gchar *)value->_value)) MAKE_GET_WITH_DEFAULT (gchar, char, ) /** * bonobo_pbclient_get_boolean: * @bag: a reference to the PropertyBag * @key: key of the value to get * @opt_ev: an optional CORBA_Environment to return failure codes * * Get a boolean value from the PropertyBag * * Returns: the value contained in the database. */ MAKE_GET_SIMPLE (gboolean, FALSE, boolean, TC_CORBA_boolean, (*(CORBA_boolean *)value->_value)) MAKE_GET_DEFAULT (gboolean, FALSE, boolean, TC_CORBA_boolean, (*(CORBA_boolean *)value->_value)) MAKE_GET_WITH_DEFAULT (gboolean, boolean, ) /** * bonobo_pbclient_get_value: * @bag: a reference to the PropertyBag object * @key: key of the value to get * @opt_tc: the type of the value, optional * @opt_ev: an optional CORBA_Environment to return failure codes * * Get a value from the PropertyBag * * Returns: the value contained in the PropertyBag, or zero on error. */ CORBA_any * bonobo_pbclient_get_value (Bonobo_PropertyBag bag, const char *key, CORBA_TypeCode opt_tc, CORBA_Environment *opt_ev) { CORBA_Environment ev, *my_ev; CORBA_any *retval, *value; bonobo_return_val_if_fail (key != NULL, NULL, opt_ev); if (!opt_ev) { CORBA_exception_init (&ev); my_ev = &ev; } else my_ev = opt_ev; if (bag == CORBA_OBJECT_NIL) bag = get_default_bag (my_ev); if (BONOBO_EX (my_ev) || bag == CORBA_OBJECT_NIL) { if (!opt_ev) CORBA_exception_free (&ev); return NULL; } value = Bonobo_PropertyBag_getValue (bag, key, my_ev); if (BONOBO_EX (my_ev)) { if (!opt_ev) { g_warning ("Cannot get value: %s\n", bonobo_exception_get_text (my_ev)); CORBA_exception_free (&ev); } return NULL; } if (opt_tc != CORBA_OBJECT_NIL && value) { retval = NULL; if (value->_type->kind == CORBA_tk_null) CORBA_free (value); else if (!CORBA_TypeCode_equivalent (opt_tc, value->_type, my_ev)) { /* TODO: we can also try to do automatic conversion */ bonobo_exception_set ( opt_ev, ex_Bonobo_PropertyBag_InvalidType); CORBA_free (value); } else retval = value; } else retval = value; if (!opt_ev) CORBA_exception_free (&ev); return retval; } /** * bonobo_pbclient_get_default_value: * @bag: a reference to the PropertyBag object * @key: key of the value to get * @opt_tc: the type of the value, optional * @opt_ev: an optional CORBA_Environment to return failure codes * * Get the default value from the PropertyBag * * Returns: the default value contained in the PropertyBag, or zero on error. */ CORBA_any * bonobo_pbclient_get_default_value (Bonobo_PropertyBag bag, const char *key, CORBA_TypeCode opt_tc, CORBA_Environment *opt_ev) { CORBA_Environment ev, *my_ev; CORBA_any *retval; bonobo_return_val_if_fail (key != NULL, NULL, opt_ev); if (!opt_ev) { CORBA_exception_init (&ev); my_ev = &ev; } else my_ev = opt_ev; if (bag == CORBA_OBJECT_NIL) bag = get_default_bag (my_ev); if (BONOBO_EX (my_ev) || bag == CORBA_OBJECT_NIL) { if (!opt_ev) CORBA_exception_free (&ev); return NULL; } retval = Bonobo_PropertyBag_getDefault (bag, key, my_ev); if (BONOBO_EX (my_ev)) { if (!opt_ev) { g_warning ("Cannot get default value: %s\n", bonobo_exception_get_text (my_ev)); CORBA_exception_free (&ev); } return NULL; } if (retval && opt_tc != CORBA_OBJECT_NIL) { /* fixme: we can also try to do automatic type conversions */ if (!CORBA_TypeCode_equal (opt_tc, retval->_type, my_ev)) { CORBA_free (retval); if (!opt_ev) CORBA_exception_free (&ev); bonobo_exception_set (opt_ev, ex_Bonobo_PropertyBag_InvalidType); return NULL; } } if (!opt_ev) CORBA_exception_free (&ev); return retval; } #define MAKE_SET_SIMPLE(c_type, name, corba_tc) \ void bonobo_pbclient_set_##name (Bonobo_PropertyBag bag, \ const char *key, \ const c_type value, \ CORBA_Environment *opt_ev) \ { \ CORBA_any *any; \ any = bonobo_arg_new_from (corba_tc, &value); \ bonobo_pbclient_set_value (bag, key, any, opt_ev); \ bonobo_arg_release (any); \ } /** * bonobo_pbclient_set_short: * @bag: a reference to the PropertyBag * @key: key of the value to set * @value: the new value * @opt_ev: an optional CORBA_Environment to return failure codes * * Set a 16 bit integer value in the PropertyBag. */ MAKE_SET_SIMPLE (gint16, short, TC_CORBA_short) /** * bonobo_pbclient_set_ushort: * @bag: a reference to the PropertyBag * @key: key of the value to set * @value: the new value * @opt_ev: an optional CORBA_Environment to return failure codes * * Set a 16 bit unsigned integer value in the PropertyBag. */ MAKE_SET_SIMPLE (guint16, ushort, TC_CORBA_unsigned_short) /** * bonobo_pbclient_set_long: * @bag: a reference to the PropertyBag * @key: key of the value to set * @value: the new value * @opt_ev: an optional CORBA_Environment to return failure codes * * Set a 32 bit integer value in the PropertyBag. */ MAKE_SET_SIMPLE (gint32, long, TC_CORBA_long) /** * bonobo_pbclient_set_ulong: * @bag: a reference to the PropertyBag * @key: key of the value to set * @value: the new value * @opt_ev: an optional CORBA_Environment to return failure codes * * Set a 32 bit unsigned integer value in the PropertyBag. */ MAKE_SET_SIMPLE (guint32, ulong, TC_CORBA_unsigned_long) /** * bonobo_pbclient_set_float: * @bag: a reference to the PropertyBag * @key: key of the value to set * @value: the new value * @opt_ev: an optional CORBA_Environment to return failure codes * * Set a single precision floating point value in the PropertyBag. */ MAKE_SET_SIMPLE (gfloat, float, TC_CORBA_float) /** * bonobo_pbclient_set_double: * @bag: a reference to the PropertyBag * @key: key of the value to set * @value: the new value * @opt_ev: an optional CORBA_Environment to return failure codes * * Set a double precision floating point value in the PropertyBag. */ MAKE_SET_SIMPLE (gdouble, double, TC_CORBA_double) /** * bonobo_pbclient_set_char: * @bag: a reference to the PropertyBag * @key: key of the value to set * @value: the new value * @opt_ev: an optional CORBA_Environment to return failure codes * * Set a 8 bit characte value in the PropertyBag. */ MAKE_SET_SIMPLE (gchar, char, TC_CORBA_char) /** * bonobo_pbclient_set_string: * @bag: a reference to the PropertyBag * @key: key of the value to set * @value: the new value * @opt_ev: an optional CORBA_Environment to return failure codes * * Set a string value in the PropertyBag. */ void bonobo_pbclient_set_string (Bonobo_PropertyBag bag, const char *key, const char *value, CORBA_Environment *opt_ev) { CORBA_any *any; bonobo_return_if_fail (value != NULL, opt_ev); any = bonobo_arg_new (TC_CORBA_string); BONOBO_ARG_SET_STRING (any, value); bonobo_pbclient_set_value (bag, key, any, opt_ev); bonobo_arg_release (any); } /** * bonobo_pbclient_set_boolean: * @bag: a reference to the PropertyBag * @key: key of the value to set * @value: the new value * @opt_ev: an optional CORBA_Environment to return failure codes * * Set a boolean value in the PropertyBag. */ void bonobo_pbclient_set_boolean (Bonobo_PropertyBag bag, const char *key, gboolean value, CORBA_Environment *opt_ev) { CORBA_any *any; CORBA_boolean val = value ? 1 : 0; any = bonobo_arg_new_from (TC_CORBA_boolean, &val); bonobo_pbclient_set_value (bag, key, any, opt_ev); bonobo_arg_release (any); } /** * bonobo_pbclient_set_value: * @bag: a reference to the PropertyBag * @key: key of the value to set * @value: the new value * @opt_ev: an optional CORBA_Environment to return failure codes * * Set a value in the PropertyBag. */ void bonobo_pbclient_set_value (Bonobo_PropertyBag bag, const char *key, CORBA_any *value, CORBA_Environment *opt_ev) { CORBA_Environment ev, *my_ev; bonobo_return_if_fail (key != NULL, opt_ev); bonobo_return_if_fail (value != NULL, opt_ev); if (!opt_ev) { CORBA_exception_init (&ev); my_ev = &ev; } else my_ev = opt_ev; if (bag == CORBA_OBJECT_NIL) bag = get_default_bag (my_ev); if (BONOBO_EX (my_ev) || bag == CORBA_OBJECT_NIL) { if (!opt_ev) CORBA_exception_free (&ev); return; } Bonobo_PropertyBag_setValue (bag, key, value, my_ev); if (!opt_ev) CORBA_exception_free (&ev); } #define SEND(pb,name,args,corbat,ansip) \ case CORBA_tk##corbat: \ bonobo_pbclient_set##corbat (pb, name, \ (CORBA##corbat) va_arg (args, ansip), ev); \ break; /** * bonobo_pbclient_setv: * @bag: the property bag * @ev: optional CORBA exception environment or NULL * @first_arg: first argument name * @var_args: list of subsequent name / type / value triplets * * This function provides the grunt implementation for * other var-arg functions like bonobo_widget_set_property * * Return value: an error string on error or NULL on success. **/ char * bonobo_pbclient_setv (Bonobo_PropertyBag bag, CORBA_Environment *ev, const char *first_arg, va_list var_args) { const char *arg_name; g_return_val_if_fail (first_arg != NULL, g_strdup ("No arg")); arg_name = first_arg; while (arg_name) { CORBA_TypeCode type; type = va_arg (var_args, CORBA_TypeCode); switch (type->kind) { SEND (bag, arg_name, var_args, _boolean, int); SEND (bag, arg_name, var_args, _long, int); SEND (bag, arg_name, var_args, _float, double); SEND (bag, arg_name, var_args, _double, double); case CORBA_tk_string: bonobo_pbclient_set_string (bag, arg_name, va_arg (var_args, CORBA_char *), ev); break; case CORBA_tk_any: bonobo_pbclient_set_value (bag, arg_name, va_arg (var_args, BonoboArg *), ev); break; default: return g_strdup_printf ("Unhandled setv arg " "'%s' type %u", arg_name, type->kind); } arg_name = va_arg (var_args, char *); if (BONOBO_EX (ev)) return bonobo_exception_get_text (ev); } return NULL; } #undef SEND #define RECEIVE(pb,name,args,corbat,ansip) \ case CORBA_tk##corbat: \ *((CORBA##corbat *)va_arg (args, ansip *)) = \ bonobo_pbclient_get##corbat (pb, name, ev); \ break; /** * bonobo_pbclient_getv: * @bag: the property bag * @ev: optional CORBA exception environment or NULL * @first_arg: first argument name * @var_args: list of subsequent name / type / value triplets * * This function provides the grunt implementation for * other var-arg functions like bonobo_widget_get_property. * * Return value: an error string on error or NULL on success. **/ char * bonobo_pbclient_getv (Bonobo_PropertyBag bag, CORBA_Environment *ev, const char *first_arg, va_list var_args) { const char *arg_name; g_return_val_if_fail (first_arg != NULL, g_strdup ("No arg")); arg_name = first_arg; while (arg_name) { CORBA_TypeCode type; type = va_arg (var_args, CORBA_TypeCode); switch (type->kind) { RECEIVE (bag, arg_name, var_args, _boolean, int); RECEIVE (bag, arg_name, var_args, _long, int); RECEIVE (bag, arg_name, var_args, _float, double); RECEIVE (bag, arg_name, var_args, _double, double); case CORBA_tk_string: *((CORBA_char **)(va_arg (var_args, CORBA_char **))) = bonobo_pbclient_get_string (bag, arg_name, ev); break; case CORBA_tk_any: *((BonoboArg **)(va_arg (var_args, BonoboArg **))) = bonobo_pbclient_get_value (bag, arg_name, NULL, ev); break; default: return g_strdup_printf ("Unhandled getv arg " "'%s' type %u", arg_name, type->kind); } arg_name = va_arg (var_args, char *); if (BONOBO_EX (ev)) return bonobo_exception_get_text (ev); } return NULL; } #undef RECEIVE void bonobo_pbclient_set (Bonobo_PropertyBag pb, CORBA_Environment *opt_ev, const char *first_prop, ...) { char *err; CORBA_Environment *ev, temp_ev; va_list args; g_return_if_fail (first_prop != NULL); g_return_if_fail (pb != CORBA_OBJECT_NIL); va_start (args, first_prop); if (!opt_ev) { CORBA_exception_init (&temp_ev); ev = &temp_ev; } else ev = opt_ev; if ((err = bonobo_property_bag_client_setv (pb, ev, first_prop, args))) { g_warning ("Error '%s'", err); g_free (err); } if (!opt_ev) CORBA_exception_free (&temp_ev); va_end (args); } void bonobo_pbclient_get (Bonobo_PropertyBag pb, CORBA_Environment *opt_ev, const char *first_prop, ...) { char *err; CORBA_Environment *ev, temp_ev; va_list args; g_return_if_fail (first_prop != NULL); g_return_if_fail (pb != CORBA_OBJECT_NIL); va_start (args, first_prop); if (!opt_ev) { CORBA_exception_init (&temp_ev); ev = &temp_ev; } else ev = opt_ev; if ((err = bonobo_property_bag_client_getv (pb, ev, first_prop, args))) { g_warning ("Error '%s'", err); g_free (err); } if (!opt_ev) CORBA_exception_free (&temp_ev); va_end (args); } static ORBit_IMethod * get_set_value_imethod (void) { static ORBit_IMethod *imethod = NULL; if (!imethod) { guint i; ORBit_IMethods *methods; methods = &Bonobo_PropertyBag__iinterface.methods; for (i = 0; i < methods->_length; i++) { if (!strcmp (methods->_buffer [i].name, "setValue")) imethod = &methods->_buffer [i]; } g_assert (imethod != NULL); } return imethod; } /** * bonobo_pbclient_set_value_async: * @bag: a reference to the PropertyBag * @key: key of the value to set * @value: the new value * @opt_ev: an optional CORBA_Environment to return failure codes * * Set a value on the PropertyBag asynchronously, discarding any * possible roundtrip exceptions. */ void bonobo_pbclient_set_value_async (Bonobo_PropertyBag bag, const char *key, CORBA_any *value, CORBA_Environment *opt_ev) { gpointer args [2]; CORBA_Environment ev, *my_ev; g_return_if_fail (key != NULL); g_return_if_fail (value != NULL); g_return_if_fail (bag != CORBA_OBJECT_NIL); if (!opt_ev) { CORBA_exception_init (&ev); my_ev = &ev; } else my_ev = opt_ev; if (BONOBO_EX (my_ev) || bag == CORBA_OBJECT_NIL) { if (!opt_ev) CORBA_exception_free (&ev); return; } args [0] = (gpointer) &key; args [1] = (gpointer) value; ORBit_small_invoke_async (bag, get_set_value_imethod (), NULL, NULL, args, NULL, my_ev); if (!opt_ev) CORBA_exception_free (&ev); } libbonobo-2.32.1/bonobo/Makefile.am0000664000076400007640000001051511433015514014010 00000000000000 INCLUDES = \ -I$(top_srcdir) \ -I$(top_builddir) \ $(WARN_CFLAGS) \ $(LIBBONOBO_CFLAGS) \ -DPREFIX=\""$(prefix)"\" \ -DBONOBO_LIBDIR=\""$(libdir)"\" \ -DBONOBO_DATADIR=\""$(datadir)"\" \ -DBONOBO_PIXMAPDIR=\""$(datadir)/pixmaps"\" \ -DBONOBO_BINDIR=\""$(bindir)"\" \ -DBONOBO_LOCALSTATEDIR=\""$(localstatedir)"\" \ -DBONOBO_LOCALEDIR=\""$(datadir)/locale"\" \ -DBONOBO_EXPLICIT_TRANSLATION_DOMAIN="GETTEXT_PACKAGE" \ $(DISABLE_DEPRECATED_CFLAGS) \ -DG_LOG_DOMAIN=\"Bonobo\" \ -DVERSION=\"$(VERSION)\" AM_LDFLAGS=$(LIBBONOBO_LT_VERSION_INFO) CORBA_SOURCE = \ Bonobo.h \ Bonobo-common.c \ Bonobo-stubs.c \ Bonobo-skels.c idls = \ $(top_srcdir)/idl/Bonobo.idl \ $(top_srcdir)/idl/Bonobo_Canvas.idl \ $(top_srcdir)/idl/Bonobo_Context.idl \ $(top_srcdir)/idl/Bonobo_Control.idl \ $(top_srcdir)/idl/Bonobo_Embeddable.idl \ $(top_srcdir)/idl/Bonobo_Gdk.idl \ $(top_srcdir)/idl/Bonobo_ItemContainer.idl \ $(top_srcdir)/idl/Bonobo_Listener.idl \ $(top_srcdir)/idl/Bonobo_Moniker.idl \ $(top_srcdir)/idl/Bonobo_Persist.idl \ $(top_srcdir)/idl/Bonobo_Print.idl \ $(top_srcdir)/idl/Bonobo_Property.idl \ $(top_srcdir)/idl/Bonobo_Storage.idl \ $(top_srcdir)/idl/Bonobo_UI.idl \ $(top_srcdir)/idl/Bonobo_Zoomable.idl \ $(top_srcdir)/idl/Bonobo_Exception.idl \ $(top_srcdir)/idl/Bonobo_Application.idl \ $(top_srcdir)/idl/Bonobo_Clipboard.idl idl_flags = -I$(top_srcdir)/idl -D__Bonobo_COMPILATION $(CORBA_SOURCE): $(idls) $(ORBIT_IDL) $(AM_V_GEN) $(ORBIT_IDL) $(idl_flags) $(top_srcdir)/idl/Bonobo.idl lib_LTLIBRARIES = libbonobo-2.la libbonobo_2_la_LIBADD = \ $(LIBBONOBO_LIBS) \ $(top_builddir)/bonobo-activation/libbonobo-activation.la \ $(INTLLIBS) libbonobo_2_la_LDFLAGS = -no-undefined libbonoboincludedir = $(includedir)/libbonobo-2.0/bonobo libbonoboinclude_HEADERS = \ Bonobo.h \ bonobo-arg.h \ bonobo-context.h \ bonobo-event-source.h \ bonobo-exception.h \ bonobo-generic-factory.h \ bonobo-item-container.h \ bonobo-item-handler.h \ bonobo-listener.h \ bonobo-main.h \ bonobo-macros.h \ bonobo-moniker-extender.h \ bonobo-moniker-simple.h \ bonobo-moniker-util.h \ bonobo-moniker.h \ bonobo-object.h \ bonobo-foreign-object.h \ bonobo-persist-file.h \ bonobo-persist-stream.h \ bonobo-persist.h \ bonobo-persist-client.h \ bonobo-property-bag.h \ bonobo-property-bag-client.h \ bonobo-shlib-factory.h \ bonobo-storage.h \ bonobo-stream.h \ bonobo-stream-client.h \ bonobo-stream-memory.h \ bonobo-storage-memory.h \ bonobo-xobject.h \ bonobo-i18n.h \ bonobo-application.h \ bonobo-app-client.h \ bonobo-types.h noinst_HEADERS = \ bonobo-moniker-context.h \ bonobo-running-context.h \ bonobo-private.h \ bonobo-marshal.h libbonobo_src = \ bonobo-moniker-context.c \ bonobo-arg.c \ bonobo-context.c \ bonobo-event-source.c \ bonobo-exception.c \ bonobo-generic-factory.c \ bonobo-item-container.c \ bonobo-item-handler.c \ bonobo-listener.c \ bonobo-main.c \ bonobo-moniker.c \ bonobo-moniker-extender.c \ bonobo-moniker-simple.c \ bonobo-moniker-util.c \ bonobo-object.c \ bonobo-foreign-object.c \ bonobo-persist-file.c \ bonobo-persist-stream.c \ bonobo-persist.c \ bonobo-persist-client.c \ bonobo-property-bag.c \ bonobo-property-bag-client.c \ bonobo-shlib-factory.c \ bonobo-storage.c \ bonobo-stream-client.c \ bonobo-stream-memory.c \ bonobo-storage-memory.c \ bonobo-running-context.c \ bonobo-application.c \ bonobo-app-client.c \ bonobo-types.c \ bonobo-debug.c \ bonobo-debug.h $(libbonobo_2_la_OBJECTS): Bonobo.h $(marshal_sources) libbonobo_2_la_SOURCES = \ $(libbonoboinclude_HEADERS) \ $(libbonobo_src) \ $(CORBA_SOURCE) marshal_sources = \ bonobo-marshal.c \ bonobo-marshal.h bonobo-marshal.h: bonobo-marshal.list Makefile $(AM_V_GEN) $(GLIB_GENMARSHAL) $< --header --prefix=bonobo_marshal > $@ bonobo-marshal.c: bonobo-marshal.list Makefile $(AM_V_GEN) $(GLIB_GENMARSHAL) $< --body --prefix=bonobo_marshal > $@ EXTRA_DIST = libbonobo-2.0.pc.in libbonobo-2.0-uninstalled.pc.in bonobo-marshal.list pkgconfigdir = $(libdir)/pkgconfig pkgconfig_DATA = libbonobo-2.0.pc BUILT_SOURCES = $(CORBA_SOURCE) $(marshal_sources) CLEANFILES = $(BUILT_SOURCES) dist-hook: cd $(distdir); rm -f $(BUILT_SOURCES) libbonobo-2.32.1/bonobo/bonobo-moniker-context.h0000644000076400007640000000135611173072711016533 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /** * bonobo-moniker-context.c: A global moniker interface * * Author: * Michael Meeks (michael@helixcode.com) * * Copyright (C) 2000, Helix Code, Inc. */ #ifndef _BONOBO_MONIKER_CONTEXT_H_ #define _BONOBO_MONIKER_CONTEXT_H_ #include G_BEGIN_DECLS typedef struct _BonoboMonikerContextPrivate BonoboMonikerContextPrivate; typedef struct { BonoboObject parent; BonoboMonikerContextPrivate *priv; } BonoboMonikerContext; typedef struct { BonoboObjectClass parent; POA_Bonobo_MonikerContext__epv epv; } BonoboMonikerContextClass; BonoboObject *bonobo_moniker_context_new (void); G_END_DECLS #endif /* _BONOBO_MONIKER_CONTEXT_H_ */ libbonobo-2.32.1/bonobo/bonobo-stream-client.h0000644000076400007640000000264111173072711016152 00000000000000/** * gnome-stream-client.c: Helper routines to access a Bonobo_Stream CORBA object * * Authors: * Nat Friedman (nat@nat.org) * Miguel de Icaza (miguel@kernel.org). * Michael Meekss (michael@helixcode.com) * * Copyright 1999,2000 Helix Code, Inc. */ #ifndef _BONOBO_STREAM_CLIENT_H_ #define _BONOBO_STREAM_CLIENT_H_ #include void bonobo_stream_client_write (const Bonobo_Stream stream, const void *buffer, const size_t size, CORBA_Environment *ev); guint8 *bonobo_stream_client_read (const Bonobo_Stream stream, const size_t size, CORBA_long *length_read, CORBA_Environment *ev); void bonobo_stream_client_write_string (const Bonobo_Stream stream, const char *str, const gboolean terminate, CORBA_Environment *ev); void bonobo_stream_client_printf (const Bonobo_Stream stream, const gboolean terminate, CORBA_Environment *ev, const char *fmt, ...) G_GNUC_PRINTF(4,5); CORBA_long bonobo_stream_client_read_string (const Bonobo_Stream stream, char **str, CORBA_Environment *ev); CORBA_long bonobo_stream_client_get_length (const Bonobo_Stream stream, CORBA_Environment *ev); #endif /* _BONOBO_STREAM_CLIENT_H_ */ libbonobo-2.32.1/bonobo/bonobo-running-context.c0000644000076400007640000002552011173072711016541 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /** * bonobo-running-context.c: A global running interface * * Author: * Michael Meeks (michael@helixcode.com) * * Copyright (C) 2000, Ximian, Inc. */ #include #include #include #include #include #include #include #include #include #include #include #include #define PARENT_TYPE BONOBO_TYPE_OBJECT /* you may debug by adding item "running" to BONOBO_DEBUG_FLAGS environment variable. */ static BonoboObjectClass *bonobo_running_context_parent_class = NULL; typedef struct { gboolean emitted_last_unref; GHashTable *objects; GHashTable *keys; } BonoboRunningInfo; static BonoboRunningInfo *bonobo_running_info = NULL; static BonoboObject *bonobo_running_context = NULL; static BonoboEventSource *bonobo_running_event_source = NULL; enum { LAST_UNREF, LAST_SIGNAL }; static guint signals [LAST_SIGNAL] = { 0 }; static void key_free (gpointer name, gpointer dummy1, gpointer user_data) { g_free (name); } #ifdef G_ENABLE_DEBUG static void bonobo_ri_debug_foreach (gpointer key, gpointer value, gpointer user_data) { CORBA_Object *o = value; bonobo_debug_print ("", "[%p]:CORBA_Object still running", o); } #endif void bonobo_running_context_shutdown (void) { if (bonobo_running_info) { BonoboRunningInfo *ri = bonobo_running_info; #ifdef G_ENABLE_DEBUG if(_bonobo_debug_flags & BONOBO_DEBUG_RUNNING) { bonobo_debug_print ("rinfo-start", "-------------------------------------------------"); bonobo_debug_print ("running-objects", "%d running objects", g_hash_table_size (ri->objects)); g_hash_table_foreach (ri->objects, bonobo_ri_debug_foreach, NULL); bonobo_debug_print ("rinfo-end", "-------------------------------------------------"); } #endif /* G_ENABLE_DEBUG */ if (ri->objects) g_hash_table_destroy (ri->objects); ri->objects = NULL; if (ri->keys) { g_hash_table_foreach_remove ( ri->keys, (GHRFunc) key_free, NULL); g_hash_table_destroy (ri->keys); ri->keys = NULL; } g_free (ri); } bonobo_running_info = NULL; bonobo_running_context = NULL; bonobo_running_event_source = NULL; } static void check_destroy (GObject *object) { bonobo_running_context = NULL; bonobo_running_event_source = NULL; } static BonoboRunningInfo * get_running_info_T (gboolean create) { if (!bonobo_running_info && create) { bonobo_running_info = g_new (BonoboRunningInfo, 1); bonobo_running_info->objects = g_hash_table_new (NULL, NULL); bonobo_running_info->keys = g_hash_table_new (g_str_hash, g_str_equal); bonobo_running_info->emitted_last_unref = FALSE; } return bonobo_running_info; } static void check_empty_T (void) { BonoboRunningInfo *ri = get_running_info_T (FALSE); if (!ri || !bonobo_running_context) return; if (!ri->emitted_last_unref && (g_hash_table_size (ri->objects) == 0) && (g_hash_table_size (ri->keys) == 0)) { ri->emitted_last_unref = TRUE; BONOBO_UNLOCK (); g_signal_emit (G_OBJECT (bonobo_running_context), signals [LAST_UNREF], 0); g_return_if_fail (bonobo_running_event_source != NULL); bonobo_event_source_notify_listeners ( bonobo_running_event_source, "bonobo:last_unref", NULL, NULL); BONOBO_LOCK (); } } #ifndef bonobo_running_context_add_object_T void bonobo_running_context_add_object_T (CORBA_Object object) { #ifdef G_ENABLE_DEBUG if(_bonobo_debug_flags & BONOBO_DEBUG_RUNNING) bonobo_running_context_trace_objects_T (object, "local", 0, 0); else #endif /* G_ENABLE_DEBUG */ { BonoboRunningInfo *ri = get_running_info_T (TRUE); ri->emitted_last_unref = FALSE; g_hash_table_insert (ri->objects, object, object); } } #endif #ifndef bonobo_running_context_remove_object_T void bonobo_running_context_remove_object_T (CORBA_Object object) { #ifdef G_ENABLE_DEBUG if(_bonobo_debug_flags & BONOBO_DEBUG_RUNNING) bonobo_running_context_trace_objects_T (object, "local", 0, 1); else #endif /* G_ENABLE_DEBUG */ { BonoboRunningInfo *ri = get_running_info_T (FALSE); if (ri) { g_hash_table_remove (ri->objects, object); check_empty_T (); } } } #endif #ifndef bonobo_running_context_ignore_object void bonobo_running_context_ignore_object (CORBA_Object object) { BONOBO_LOCK (); #ifdef G_ENABLE_DEBUG if(_bonobo_debug_flags & BONOBO_DEBUG_RUNNING) bonobo_running_context_trace_objects_T (object, "local", 0, 2); else #endif /* G_ENABLE_DEBUG */ { BonoboRunningInfo *ri = get_running_info_T (FALSE); if (ri) g_hash_table_remove (ri->objects, object); } BONOBO_UNLOCK (); } #endif #ifdef G_ENABLE_DEBUG static void _running_context_list_objects (gpointer key, gpointer value, gpointer user_data) { CORBA_Object object = (CORBA_Object) value; CORBA_char *type_id; CORBA_Environment ev; CORBA_exception_init (&ev); type_id = ORBit_small_get_type_id (object, &ev); if (ev._major != CORBA_NO_EXCEPTION) type_id = CORBA_string_dup ( ""); CORBA_exception_free (&ev); bonobo_debug_print ("Alive: ", "[%p]: %s", object, type_id); CORBA_free (type_id); } #endif void bonobo_running_context_trace_objects_T (CORBA_Object object, const char *fn, int line, int mode) { BonoboRunningInfo *ri; #ifdef G_ENABLE_DEBUG static const char cmode[][14] = { "add_object", "remove_object", "ignore_object" }; #endif ri = get_running_info_T (mode == 0); if (ri) { switch (mode) { case 0: g_hash_table_insert (ri->objects, object, object); ri->emitted_last_unref = FALSE; break; case 1: g_hash_table_remove (ri->objects, object); check_empty_T (); break; case 2: g_hash_table_remove (ri->objects, object); break; } #ifdef G_ENABLE_DEBUG if(_bonobo_debug_flags & BONOBO_DEBUG_RUNNING) { const char *mode_string = cmode[mode]; bonobo_debug_print (mode_string, "[%p]:CORBA_Object %d running objects at %s:%d", object, g_hash_table_size (ri->objects), fn, line); g_hash_table_foreach (ri->objects, _running_context_list_objects, NULL); } #endif /* G_ENABLE_DEBUG */ } } static void impl_Bonobo_RunningContext_addObject (PortableServer_Servant servant, const CORBA_Object object, CORBA_Environment *ev) { BONOBO_LOCK (); bonobo_running_context_add_object_T (object); BONOBO_UNLOCK (); } static void impl_Bonobo_RunningContext_removeObject (PortableServer_Servant servant, const CORBA_Object object, CORBA_Environment *ev) { BONOBO_LOCK (); bonobo_running_context_remove_object_T (object); BONOBO_UNLOCK (); } static void impl_Bonobo_RunningContext_addKey (PortableServer_Servant servant, const CORBA_char *key, CORBA_Environment *ev) { char *key_copy, *old_key; BonoboRunningInfo *ri; BONOBO_LOCK (); ri = get_running_info_T (TRUE); old_key = g_hash_table_lookup (ri->keys, key); if (old_key) { g_free (old_key); g_hash_table_remove (ri->keys, key); } key_copy = g_strdup (key); g_hash_table_insert (ri->keys, key_copy, key_copy); BONOBO_UNLOCK (); } static void impl_Bonobo_RunningContext_removeKey (PortableServer_Servant servant, const CORBA_char *key, CORBA_Environment *ev) { BonoboRunningInfo *ri; char *old_key; BONOBO_LOCK (); ri = get_running_info_T (FALSE); if (ri) { old_key = g_hash_table_lookup (ri->keys, key); g_free (old_key); g_hash_table_remove (ri->keys, key); check_empty_T (); } BONOBO_UNLOCK (); } static void impl_Bonobo_RunningContext_atExitUnref (PortableServer_Servant servant, const CORBA_Object object, CORBA_Environment *ev) { bonobo_running_context_at_exit_unref (object); } static void bonobo_running_context_class_init (BonoboRunningContextClass *klass) { GObjectClass *object_class = (GObjectClass *) klass; POA_Bonobo_RunningContext__epv *epv = &klass->epv; bonobo_running_context_parent_class = g_type_class_peek_parent (klass); ((BonoboRunningContextClass *)klass)->last_unref = NULL; signals [LAST_UNREF] = g_signal_new ( "last_unref", G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_FIRST, G_STRUCT_OFFSET (BonoboRunningContextClass, last_unref), NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0); epv->addObject = impl_Bonobo_RunningContext_addObject; epv->removeObject = impl_Bonobo_RunningContext_removeObject; epv->addKey = impl_Bonobo_RunningContext_addKey; epv->removeKey = impl_Bonobo_RunningContext_removeKey; epv->atExitUnref = impl_Bonobo_RunningContext_atExitUnref; } static void bonobo_running_context_init (GObject *object) { /* nothing to do */ } BONOBO_TYPE_FUNC_FULL (BonoboRunningContext, Bonobo_RunningContext, PARENT_TYPE, bonobo_running_context) BonoboObject * bonobo_running_context_new (void) { if (bonobo_running_context) { bonobo_object_ref (bonobo_running_context); return bonobo_running_context; } bonobo_running_context = g_object_new ( bonobo_running_context_get_type (), NULL); bonobo_running_event_source = bonobo_event_source_new (); bonobo_running_context_ignore_object ( BONOBO_OBJREF (bonobo_running_event_source)); bonobo_event_source_ignore_listeners (bonobo_running_event_source); bonobo_object_add_interface (BONOBO_OBJECT (bonobo_running_context), BONOBO_OBJECT (bonobo_running_event_source)); g_signal_connect (G_OBJECT (bonobo_running_context), "destroy", G_CALLBACK (check_destroy), NULL); return bonobo_running_context; } BonoboObject * bonobo_context_running_get (void) { return bonobo_running_context_new (); } static void last_unref_cb (gpointer context, CORBA_Object object) { bonobo_object_release_unref (object, NULL); } void bonobo_running_context_at_exit_unref (CORBA_Object object) { CORBA_Environment ev; CORBA_Object obj_dup; CORBA_exception_init (&ev); obj_dup = CORBA_Object_duplicate (object, &ev); bonobo_running_context_ignore_object (obj_dup); if (bonobo_running_context) g_signal_connect (G_OBJECT (bonobo_running_context), "last_unref", G_CALLBACK (last_unref_cb), obj_dup); CORBA_exception_free (&ev); } static void last_unref_exit_cb (gpointer context, BonoboObject *object) { bonobo_object_unref (object); bonobo_main_quit (); } void bonobo_running_context_auto_exit_unref (BonoboObject *object) { g_return_if_fail (object != NULL); g_return_if_fail (BONOBO_IS_OBJECT (object)); bonobo_running_context_ignore_object (BONOBO_OBJREF (object)); if (bonobo_running_context) g_signal_connect (G_OBJECT (bonobo_running_context), "last_unref", G_CALLBACK (last_unref_exit_cb), object); } libbonobo-2.32.1/bonobo/bonobo-property-bag-client.h0000644000076400007640000002577111173072711017303 00000000000000/* * bonobo-property-bag-client.c: C sugar for property bags. * * Author: * Dietmar Maurer (dietmar@ximian.com) * Michael Meeks (michael@ximian.com) * Nat Friedman (nat@ximian.com) * * Copyright 2001 Ximian, Inc. */ #ifndef __BONOBO_PROPERTY_BAG_CLIENT_H__ #define __BONOBO_PROPERTY_BAG_CLIENT_H__ #include G_BEGIN_DECLS CORBA_TypeCode bonobo_pbclient_get_type (Bonobo_PropertyBag bag, const char *key, CORBA_Environment *opt_ev); gchar * bonobo_pbclient_get_string (Bonobo_PropertyBag bag, const char *key, CORBA_Environment *opt_ev); gchar * bonobo_pbclient_get_default_string (Bonobo_PropertyBag bag, const char *key, CORBA_Environment *opt_ev); gchar * bonobo_pbclient_get_string_with_default (Bonobo_PropertyBag bag, const char *key, gchar *defval, gboolean *def); gint16 bonobo_pbclient_get_short (Bonobo_PropertyBag bag, const char *key, CORBA_Environment *opt_ev); gint16 bonobo_pbclient_get_default_short (Bonobo_PropertyBag bag, const char *key, CORBA_Environment *opt_ev); gint16 bonobo_pbclient_get_short_with_default (Bonobo_PropertyBag bag, const char *key, gint16 defval, gboolean *def); guint16 bonobo_pbclient_get_ushort (Bonobo_PropertyBag bag, const char *key, CORBA_Environment *opt_ev); guint16 bonobo_pbclient_get_default_ushort (Bonobo_PropertyBag bag, const char *key, CORBA_Environment *opt_ev); guint16 bonobo_pbclient_get_ushort_with_default (Bonobo_PropertyBag bag, const char *key, guint16 defval, gboolean *def); gint32 bonobo_pbclient_get_long (Bonobo_PropertyBag bag, const char *key, CORBA_Environment *opt_ev); gint32 bonobo_pbclient_get_default_long (Bonobo_PropertyBag bag, const char *key, CORBA_Environment *opt_ev); gint32 bonobo_pbclient_get_long_with_default (Bonobo_PropertyBag bag, const char *key, gint32 defval, gboolean *def); guint32 bonobo_pbclient_get_ulong (Bonobo_PropertyBag bag, const char *key, CORBA_Environment *opt_ev); guint32 bonobo_pbclient_get_default_ulong (Bonobo_PropertyBag bag, const char *key, CORBA_Environment *opt_ev); guint32 bonobo_pbclient_get_ulong_with_default (Bonobo_PropertyBag bag, const char *key, guint32 defval, gboolean *def); gfloat bonobo_pbclient_get_float (Bonobo_PropertyBag bag, const char *key, CORBA_Environment *opt_ev); gfloat bonobo_pbclient_get_default_float (Bonobo_PropertyBag bag, const char *key, CORBA_Environment *opt_ev); gfloat bonobo_pbclient_get_float_with_default (Bonobo_PropertyBag bag, const char *key, gfloat defval, gboolean *def); gdouble bonobo_pbclient_get_double (Bonobo_PropertyBag bag, const char *key, CORBA_Environment *opt_ev); gdouble bonobo_pbclient_get_default_double (Bonobo_PropertyBag bag, const char *key, CORBA_Environment *opt_ev); gdouble bonobo_pbclient_get_double_with_default (Bonobo_PropertyBag bag, const char *key, gdouble defval, gboolean *def); gboolean bonobo_pbclient_get_boolean (Bonobo_PropertyBag bag, const char *key, CORBA_Environment *opt_ev); gboolean bonobo_pbclient_get_default_boolean (Bonobo_PropertyBag bag, const char *key, CORBA_Environment *opt_ev); gboolean bonobo_pbclient_get_boolean_with_default (Bonobo_PropertyBag bag, const char *key, gboolean defval, gboolean *def); gchar bonobo_pbclient_get_char (Bonobo_PropertyBag bag, const char *key, CORBA_Environment *opt_ev); gchar bonobo_pbclient_get_default_char (Bonobo_PropertyBag bag, const char *key, CORBA_Environment *opt_ev); gchar bonobo_pbclient_get_char_with_default (Bonobo_PropertyBag bag, const char *key, gchar defval, gboolean *def); CORBA_any * bonobo_pbclient_get_value (Bonobo_PropertyBag bag, const char *key, CORBA_TypeCode opt_tc, CORBA_Environment *opt_ev); CORBA_any * bonobo_pbclient_get_default_value (Bonobo_PropertyBag bag, const char *key, CORBA_TypeCode opt_tc, CORBA_Environment *opt_ev); void bonobo_pbclient_set_string (Bonobo_PropertyBag bag, const char *key, const char *value, CORBA_Environment *opt_ev); void bonobo_pbclient_set_short (Bonobo_PropertyBag bag, const char *key, gint16 value, CORBA_Environment *opt_ev); void bonobo_pbclient_set_ushort (Bonobo_PropertyBag bag, const char *key, guint16 value, CORBA_Environment *opt_ev); void bonobo_pbclient_set_long (Bonobo_PropertyBag bag, const char *key, gint32 value, CORBA_Environment *opt_ev); void bonobo_pbclient_set_ulong (Bonobo_PropertyBag bag, const char *key, guint32 value, CORBA_Environment *opt_ev); void bonobo_pbclient_set_float (Bonobo_PropertyBag bag, const char *key, gfloat value, CORBA_Environment *opt_ev); void bonobo_pbclient_set_double (Bonobo_PropertyBag bag, const char *key, gdouble value, CORBA_Environment *opt_ev); void bonobo_pbclient_set_boolean (Bonobo_PropertyBag bag, const char *key, gboolean value, CORBA_Environment *opt_ev); void bonobo_pbclient_set_char (Bonobo_PropertyBag bag, const char *key, gchar value, CORBA_Environment *opt_ev); void bonobo_pbclient_set_value (Bonobo_PropertyBag bag, const char *key, CORBA_any *value, CORBA_Environment *opt_ev); char * bonobo_pbclient_get_doc_title (Bonobo_PropertyBag bag, const char *key, CORBA_Environment *opt_ev); char * bonobo_pbclient_get_doc (Bonobo_PropertyBag bag, const char *key, CORBA_Environment *opt_ev); GList * bonobo_pbclient_get_keys (Bonobo_PropertyBag bag, CORBA_Environment *opt_ev); void bonobo_pbclient_free_keys (GList *key_list); Bonobo_PropertyFlags bonobo_pbclient_get_flags (Bonobo_PropertyBag bag, const char *key, CORBA_Environment *opt_ev); void bonobo_pbclient_set (Bonobo_PropertyBag bag, CORBA_Environment *opt_ev, const char *first_prop, ...) G_GNUC_NULL_TERMINATED; void bonobo_pbclient_get (Bonobo_PropertyBag bag, CORBA_Environment *opt_ev, const char *first_prop, ...) G_GNUC_NULL_TERMINATED; char * bonobo_pbclient_setv (Bonobo_PropertyBag bag, CORBA_Environment *ev, const char *first_arg, va_list var_args); char * bonobo_pbclient_getv (Bonobo_PropertyBag bag, CORBA_Environment *ev, const char *first_arg, va_list var_args); void bonobo_pbclient_set_value_async (Bonobo_PropertyBag bag, const char *key, CORBA_any *value, CORBA_Environment *opt_ev); /* just to be compatible */ #define bonobo_property_bag_client_setv \ bonobo_pbclient_setv #define bonobo_property_bag_client_getv \ bonobo_pbclient_getv #define bonobo_property_bag_client_get_property_type \ bonobo_pbclient_get_type #define bonobo_property_bag_client_get_value_gboolean \ bonobo_pbclient_get_boolean #define bonobo_property_bag_client_get_value_gint \ bonobo_pbclient_get_long #define bonobo_property_bag_client_get_value_glong \ bonobo_pbclient_get_long #define bonobo_property_bag_client_get_value_gfloat \ bonobo_pbclient_get_float #define bonobo_property_bag_client_get_value_gdouble \ bonobo_pbclient_get_double #define bonobo_property_bag_client_get_value_string \ bonobo_pbclient_get_string #define bonobo_property_bag_client_get_value_any(pb, name, ev) \ bonobo_pbclient_get_value (pb, name, NULL, ev); #define bonobo_property_bag_client_get_default_gboolean \ bonobo_pbclient_get_default_boolean #define bonobo_property_bag_client_get_default_gint \ bonobo_pbclient_get_default_long #define bonobo_property_bag_client_get_default_glong \ bonobo_pbclient_get_default_long #define bonobo_property_bag_client_get_default_gfloat \ bonobo_pbclient_get_default_float #define bonobo_property_bag_client_get_default_gdouble \ bonobo_pbclient_get_default_double #define bonobo_property_bag_client_get_default_string \ bonobo_pbclient_get_default_string #define bonobo_property_bag_client_get_default_any(pb, name, ev) \ bonobo_pbclient_get_default_value (pb, name, NULL, ev) #define bonobo_property_bag_client_set_value_gboolean \ bonobo_pbclient_set_boolean #define bonobo_property_bag_client_set_value_gint \ bonobo_pbclient_set_long #define bonobo_property_bag_client_set_value_glong \ bonobo_pbclient_set_long #define bonobo_property_bag_client_set_value_gfloat \ bonobo_pbclient_set_float #define bonobo_property_bag_client_set_value_gdouble \ bonobo_pbclient_set_double #define bonobo_property_bag_client_set_value_string \ bonobo_pbclient_set_string #define bonobo_property_bag_client_set_value_any \ bonobo_pbclient_set_value #define bonobo_property_bag_client_get_docstring \ bonobo_pbclient_get_doc_title #define bonobo_property_bag_client_get_flags \ bonobo_pbclient_get_flags G_END_DECLS #endif /* __BONOBO_PROPERTY_BAG_CLIENT_H__ */ libbonobo-2.32.1/bonobo/bonobo-persist-stream.h0000644000076400007640000000660611173072711016372 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /* * bonobo-persist-stream.c: PersistStream implementation. Can be used as a * base class, or directly for implementing objects that use PersistStream. * * Author: * Miguel de Icaza (miguel@kernel.org) * * Copyright 1999 Helix Code, Inc. */ #ifndef _BONOBO_PERSIST_STREAM_H_ #define _BONOBO_PERSIST_STREAM_H_ #include #ifndef BONOBO_DISABLE_DEPRECATED G_BEGIN_DECLS #define BONOBO_TYPE_PERSIST_STREAM (bonobo_persist_stream_get_type ()) #define BONOBO_PERSIST_STREAM_TYPE BONOBO_TYPE_PERSIST_STREAM /* deprecated, you should use BONOBO_TYPE_PERSIST_STREAM */ #define BONOBO_PERSIST_STREAM(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), BONOBO_TYPE_PERSIST_STREAM, BonoboPersistStream)) #define BONOBO_PERSIST_STREAM_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), BONOBO_TYPE_PERSIST_STREAM, BonoboPersistStreamClass)) #define BONOBO_IS_PERSIST_STREAM(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), BONOBO_TYPE_PERSIST_STREAM)) #define BONOBO_IS_PERSIST_STREAM_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), BONOBO_TYPE_PERSIST_STREAM)) typedef struct _BonoboPersistStreamPrivate BonoboPersistStreamPrivate; typedef struct _BonoboPersistStream BonoboPersistStream; typedef void (*BonoboPersistStreamIOFn) (BonoboPersistStream *ps, const Bonobo_Stream stream, Bonobo_Persist_ContentType type, void *closure, CORBA_Environment *ev); typedef Bonobo_Persist_ContentTypeList * (*BonoboPersistStreamTypesFn) (BonoboPersistStream *ps, void *closure, CORBA_Environment *ev); struct _BonoboPersistStream { BonoboPersist persist; gboolean is_dirty; /* * For the sample routines, NULL if we use the * methods from the class */ BonoboPersistStreamIOFn save_fn; BonoboPersistStreamIOFn load_fn; BonoboPersistStreamTypesFn types_fn; void *closure; BonoboPersistStreamPrivate *priv; }; typedef struct { BonoboPersistClass parent_class; POA_Bonobo_PersistStream__epv epv; /* methods */ void (*load) (BonoboPersistStream *ps, Bonobo_Stream stream, Bonobo_Persist_ContentType type, CORBA_Environment *ev); void (*save) (BonoboPersistStream *ps, Bonobo_Stream stream, Bonobo_Persist_ContentType type, CORBA_Environment *ev); Bonobo_Persist_ContentTypeList * (*get_content_types) (BonoboPersistStream *ps, CORBA_Environment *ev); } BonoboPersistStreamClass; GType bonobo_persist_stream_get_type (void) G_GNUC_CONST; BonoboPersistStream *bonobo_persist_stream_new (BonoboPersistStreamIOFn load_fn, BonoboPersistStreamIOFn save_fn, BonoboPersistStreamTypesFn types_fn, const gchar *iid, void *closure); BonoboPersistStream *bonobo_persist_stream_construct (BonoboPersistStream *ps, BonoboPersistStreamIOFn load_fn, BonoboPersistStreamIOFn save_fn, BonoboPersistStreamTypesFn types_fn, const gchar *iid, void *closure); G_END_DECLS #endif /* BONOBO_DISABLE_DEPRECATED */ #endif /* _BONOBO_PERSIST_STREAM_H_ */ libbonobo-2.32.1/bonobo/bonobo-persist.c0000644000076400007640000001034011173072711015062 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /* * bonobo-persist.c: a persistance interface * * Author: * Miguel de Icaza (miguel@kernel.org) * * Copyright 1999 Ximian, Inc. */ #include #include #include #include #include #define PARENT_TYPE BONOBO_TYPE_OBJECT /* Parent object class */ static GObjectClass *bonobo_persist_parent_class; #define CLASS(o) BONOBO_PERSIST_CLASS(G_OBJECT_GET_CLASS (o)) struct _BonoboPersistPrivate { gchar *iid; gboolean dirty; }; static inline BonoboPersist * bonobo_persist_from_servant (PortableServer_Servant servant) { return BONOBO_PERSIST (bonobo_object_from_servant (servant)); } static Bonobo_Persist_ContentTypeList * impl_Bonobo_Persist_getContentTypes (PortableServer_Servant servant, CORBA_Environment *ev) { BonoboPersist *persist = bonobo_persist_from_servant (servant); return CLASS (persist)->get_content_types (persist, ev); } static CORBA_char* impl_Bonobo_Persist_getIId (PortableServer_Servant servant, CORBA_Environment *ev) { BonoboPersist *persist = bonobo_persist_from_servant (servant); return CORBA_string_dup (persist->priv->iid); } static CORBA_boolean impl_Bonobo_Persist_isDirty (PortableServer_Servant servant, CORBA_Environment *ev) { BonoboPersist *persist = bonobo_persist_from_servant (servant); return persist->priv->dirty; } static void bonobo_persist_finalize (GObject *object) { BonoboPersist *persist = BONOBO_PERSIST (object); if (persist->priv) { g_free (persist->priv->iid); g_free (persist->priv); persist->priv = NULL; } bonobo_persist_parent_class->finalize (object); } static void bonobo_persist_class_init (BonoboPersistClass *klass) { GObjectClass *object_class = (GObjectClass *) klass; POA_Bonobo_Persist__epv *epv = &klass->epv; bonobo_persist_parent_class = g_type_class_peek_parent (klass); /* Override and initialize methods */ object_class->finalize = bonobo_persist_finalize; epv->getContentTypes = impl_Bonobo_Persist_getContentTypes; epv->getIId = impl_Bonobo_Persist_getIId; epv->isDirty = impl_Bonobo_Persist_isDirty; } static void bonobo_persist_init (GObject *object) { BonoboPersist *persist = BONOBO_PERSIST (object); persist->priv = g_new0 (BonoboPersistPrivate, 1); } BONOBO_TYPE_FUNC_FULL (BonoboPersist, Bonobo_Persist, PARENT_TYPE, bonobo_persist) /** * bonobo_persist_generate_content_types: * @num: the number of content types specified * @...: the content types (as strings) * * Returns: a ContentTypeList containing the given ContentTypes **/ Bonobo_Persist_ContentTypeList * bonobo_persist_generate_content_types (int num, ...) { Bonobo_Persist_ContentTypeList *types; va_list ap; char *type; int i; types = Bonobo_Persist_ContentTypeList__alloc (); CORBA_sequence_set_release (types, TRUE); types->_length = types->_maximum = num; types->_buffer = CORBA_sequence_Bonobo_Persist_ContentType_allocbuf (num); va_start (ap, num); for (i = 0; i < num; i++) { type = va_arg (ap, char *); types->_buffer[i] = CORBA_string_alloc (strlen (type) + 1); strcpy (types->_buffer[i], type); } va_end (ap); return types; } /** * bonobo_persist_construct: * @persist: A BonoboPersist * @iid: OAF IID of the object this interface is aggregated to * * Initializes the BonoboPersist object. You should only use this * method in derived implementations, because a BonoboPersist instance * doesn't make a lot of sense, but the iid private field has to be * set at construction time. * * Returns: the #BonoboPersist. */ BonoboPersist * bonobo_persist_construct (BonoboPersist *persist, const gchar *iid) { g_return_val_if_fail (persist != NULL, NULL); g_return_val_if_fail (BONOBO_IS_PERSIST (persist), NULL); g_return_val_if_fail (iid != NULL, NULL); persist->priv->iid = g_strdup (iid); return persist; } /** * bonobo_persist_set_dirty: * @persist: A BonoboPersist * @dirty: A flag indicating the dirty status of this object. * * Sets the dirty status of the interface which is reported via * the isDirty method. */ void bonobo_persist_set_dirty (BonoboPersist *persist, gboolean dirty) { persist->priv->dirty = dirty; } libbonobo-2.32.1/bonobo/bonobo-app-client.c0000644000076400007640000002617111173072711015436 00000000000000 /* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ #include #include #include "bonobo-app-client.h" #include "bonobo-exception.h" #include "bonobo-types.h" static void bonobo_app_client_class_init (BonoboAppClientClass *klass); static void bonobo_app_client_init (BonoboAppClient *app_client); static void bonobo_app_client_free_msgdescs (BonoboAppClient *self); static gpointer parent_class; GType bonobo_app_client_get_type (void) { static GType app_client_type = 0; if (!app_client_type) { const GTypeInfo app_client_info = { sizeof (BonoboAppClientClass), NULL, /* base_init */ NULL, /* base_finalize */ (GClassInitFunc) bonobo_app_client_class_init, NULL, /* class_finalize */ NULL, /* class_data */ sizeof (BonoboAppClient), 0, /* n_preallocs */ (GInstanceInitFunc) bonobo_app_client_init }; app_client_type = g_type_register_static (G_TYPE_OBJECT, "BonoboAppClient", &app_client_info, 0); } return app_client_type; } static void bonobo_app_client_finalize (GObject *object) { BonoboAppClient *self = BONOBO_APP_CLIENT (object); if (self->msgdescs) bonobo_app_client_free_msgdescs (self); if (self->app_server != CORBA_OBJECT_NIL) { bonobo_object_release_unref (self->app_server, NULL); self->app_server = CORBA_OBJECT_NIL; } if (G_OBJECT_CLASS(parent_class)->finalize) G_OBJECT_CLASS(parent_class)->finalize (object); } static void bonobo_app_client_class_init (BonoboAppClientClass *class) { GObjectClass *object_class = G_OBJECT_CLASS (class); parent_class = g_type_class_peek_parent (class); object_class->finalize = bonobo_app_client_finalize; } static void bonobo_app_client_init (BonoboAppClient *app_client) { } /** * bonobo_app_client_new: * @app_server: object reference to a Bonobo::Application; this * function takes ownership of this reference (use * bonobo_object_dup_ref() if you want to keep your own reference.) * * Create an application client object connected to the remote (or * local) Bonobo::Application object. * * Applications should not use this function. See * bonobo_application_register_unique(). * * Return value: a #BonoboAppClient object. **/ BonoboAppClient * bonobo_app_client_new (Bonobo_Application app_server) { BonoboAppClient *app_client; app_client = g_object_new (BONOBO_TYPE_APP_CLIENT, NULL); app_client->app_server = app_server; return app_client; } /** * bonobo_app_client_msg_send_argv: * @app_client: client * @message: message name * @argv: %NULL-terminated vector of pointers to GValue, the arguments * to pass with the message. * * Like bonobo_app_client_msg_send(), except that it receives a single * argument vector instead of a variable number of arguments. * * Return value: the message return value **/ GValue * bonobo_app_client_msg_send_argv (BonoboAppClient *app_client, const char *message, const GValue *argv[], CORBA_Environment *opt_env) { CORBA_any *ret; Bonobo_Application_ArgList *args; GValue *rv; CORBA_Environment ev1, *ev; int i, argv_len; g_return_val_if_fail (app_client, NULL); g_return_val_if_fail (BONOBO_IS_APP_CLIENT (app_client), NULL); for (argv_len = -1; argv[++argv_len];); args = Bonobo_Application_ArgList__alloc (); args->_length = argv_len; args->_buffer = Bonobo_Application_ArgList_allocbuf (argv_len); for (i = 0; i < argv_len; ++i) { if (!bonobo_arg_from_gvalue_alloc (&args->_buffer[i], argv[i])) { g_warning ("Failed to convert type '%s' to CORBA::any", g_type_name (G_VALUE_TYPE (argv[i]))); args->_buffer[i]._type = TC_void; } } CORBA_sequence_set_release (args, CORBA_TRUE); if (opt_env) ev = opt_env; else { CORBA_exception_init (&ev1); ev = &ev1; } ret = Bonobo_Application_message (app_client->app_server, message, args, ev); CORBA_free (args); if (ev->_major != CORBA_NO_EXCEPTION) { if (!opt_env) { char *text = bonobo_exception_get_text (ev); g_warning ("error while sending message to application server: %s", text); g_free (text); CORBA_exception_free (&ev1); } return NULL; } if (!opt_env) CORBA_exception_free (&ev1); if (ret->_type != TC_void) { rv = g_new0 (GValue, 1); bonobo_arg_to_gvalue_alloc (ret, rv); } else rv = NULL; CORBA_free (ret); return rv; } /** * bonobo_app_client_msg_send_valist: * @app_client: client * @message: message name * @opt_env: optional corba environment * @first_arg_type: first message parameter * @var_args: remaining parameters * * See bonobo_app_client_msg_send(). * * Return value: return value **/ GValue * bonobo_app_client_msg_send_valist (BonoboAppClient *app_client, const char *message, CORBA_Environment *opt_env, GType first_arg_type, va_list var_args) { GValue *value, *rv; GPtrArray *argv; GType type; gchar *err; int i; gboolean first_arg = TRUE; g_return_val_if_fail (app_client, NULL); g_return_val_if_fail (BONOBO_IS_APP_CLIENT (app_client), NULL); argv = g_ptr_array_new (); while ((type = (first_arg? first_arg_type : va_arg (var_args, GType))) != G_TYPE_NONE) { first_arg = FALSE; value = g_new0 (GValue, 1); g_value_init (value, type); G_VALUE_COLLECT(value, var_args, 0, &err); if (err) g_error("error collecting value: %s", err); g_ptr_array_add (argv, value); } g_ptr_array_add (argv, NULL); rv = bonobo_app_client_msg_send_argv (app_client, message, (const GValue **) argv->pdata, opt_env); for (i = 0; i < argv->len - 1; ++i) { value = g_ptr_array_index (argv, i); g_value_unset (value); g_free (value); } g_ptr_array_free (argv, TRUE); return rv; } /** * bonobo_app_client_msg_send: * @app_client: the client interface associated with the application * to which we wish to send a message * @message: message name * @...: arguments * * Send a message to the application server. Takes a variable length * argument list of GType, value pairs, terminated with * %G_TYPE_NONE. Values are direct C values, not GValues! Example: * * GValue *retval; * retval = bonobo_app_client_msg_send (app_client, "openURL", * G_TYPE_STRING, "http://www.gnome.org", * G_TYPE_BOOLEAN, TRUE, * G_TYPE_NONE); * * * Return value: a GValue containing the value returned from the * aplication server. **/ GValue * bonobo_app_client_msg_send (BonoboAppClient *app_client, const char *message, CORBA_Environment *opt_env, GType first_arg_type, ...) { GValue *rv; va_list var_args; va_start (var_args, first_arg_type); rv = bonobo_app_client_msg_send_valist (app_client, message, opt_env, first_arg_type, var_args); va_end (var_args); return rv; } static inline GType _typecode_to_gtype (CORBA_TypeCode tc) { static GHashTable *hash = NULL; if (!hash) { hash = g_hash_table_new (g_direct_hash, g_direct_equal); #define mapping(gtype, corba_type)\ g_hash_table_insert (hash, corba_type, GUINT_TO_POINTER (gtype)); mapping (G_TYPE_NONE, TC_void); mapping (G_TYPE_BOOLEAN, TC_CORBA_boolean); mapping (G_TYPE_LONG, TC_CORBA_long); mapping (G_TYPE_ULONG, TC_CORBA_unsigned_long); mapping (G_TYPE_FLOAT, TC_CORBA_float); mapping (G_TYPE_DOUBLE, TC_CORBA_double); mapping (G_TYPE_STRING, TC_CORBA_string); mapping (BONOBO_TYPE_CORBA_ANY, TC_CORBA_any); #undef mapping } return GPOINTER_TO_UINT (g_hash_table_lookup (hash, tc)); } static void bonobo_app_client_free_msgdescs (BonoboAppClient *self) { int i; for (i = 0; self->msgdescs[i].name; ++i) { g_free (self->msgdescs[i].name); g_free (self->msgdescs[i].types); } g_free (self->msgdescs); self->msgdescs = NULL; } static void bonobo_app_client_get_msgdescs (BonoboAppClient *self) { Bonobo_Application_MessageList *msglist; CORBA_Environment ev; int i, j; g_return_if_fail (!self->msgdescs); CORBA_exception_init (&ev); msglist = Bonobo_Application_listMessages (self->app_server, &ev); if (ev._major != CORBA_NO_EXCEPTION) { char *text = bonobo_exception_get_text (&ev); g_warning ("Bonobo::Application::listMessages: %s", text); g_free (text); CORBA_exception_free (&ev); return; } CORBA_exception_free (&ev); g_return_if_fail (msglist); self->msgdescs = g_new (BonoboAppClientMsgDesc, msglist->_length + 1); for (i = 0; i < msglist->_length; ++i) { self->msgdescs[i].name = g_strdup (msglist->_buffer[i].name); self->msgdescs[i].return_type = _typecode_to_gtype (msglist->_buffer[i].return_type); self->msgdescs[i].types = g_new (GType, msglist->_buffer[i].types._length + 1); for (j = 0; j < msglist->_buffer[i].types._length; ++j) self->msgdescs[i].types[j] = _typecode_to_gtype (msglist->_buffer[i].types._buffer[j]); self->msgdescs[i].types[j] = G_TYPE_NONE; self->msgdescs[i].description = g_strdup (msglist->_buffer[i].description); } self->msgdescs[i].name = NULL; self->msgdescs[i].return_type = G_TYPE_NONE; self->msgdescs[i].types = NULL; CORBA_free (msglist); } /** * bonobo_app_client_msg_list: * * Obtain a list of messages supported by the application server. * * Return value: a NULL terminated vector of strings; use g_strfreev() * to free it. **/ BonoboAppClientMsgDesc const * bonobo_app_client_msg_list (BonoboAppClient *app_client) { g_return_val_if_fail (BONOBO_IS_APP_CLIENT (app_client), NULL); if (!app_client->msgdescs) bonobo_app_client_get_msgdescs (app_client); return app_client->msgdescs; } /** * bonobo_app_client_new_instance: * @app_client: a #BonoboAppClient * @argc: length of @argv * @argv: array of command-line arguments * @opt_env: a #CORBA_Environment, or %NULL. * * Ask the application server to emit a "new-instance" signal * containing the specified string vector. * * Return value: the message return value **/ gint bonobo_app_client_new_instance (BonoboAppClient *app_client, int argc, char *argv[], CORBA_Environment *opt_env) { CORBA_sequence_CORBA_string *corba_argv; int i; gint rv; CORBA_Environment *ev, ev1; corba_argv = CORBA_sequence_CORBA_string__alloc(); corba_argv->_buffer = CORBA_sequence_CORBA_string_allocbuf (argc); corba_argv->_length = argc; corba_argv->_maximum = argc; for (i = 0; i < argc; ++i) corba_argv->_buffer[i] = CORBA_string_dup (argv[i]); if (opt_env) ev = opt_env; else { CORBA_exception_init (&ev1); ev = &ev1; } rv = Bonobo_Application_newInstance (app_client->app_server, corba_argv, ev); CORBA_free (corba_argv); if (!opt_env) { if (ev->_major != CORBA_NO_EXCEPTION) { char *text = bonobo_exception_get_text (ev); g_warning ("newInstance failed: %s", text); g_free (text); } CORBA_exception_free (&ev1); } return rv; } libbonobo-2.32.1/bonobo/bonobo-marshal.list0000644000076400007640000000021311173072711015547 00000000000000BOXED:STRING,BOOLEAN,BOXED VOID:STRING,BOXED,BOXED VOID:BOXED,UINT,BOXED OBJECT:STRING BOXED:STRING,BOXED INT:INT,BOXED DOUBLE:LONG,DOUBLE libbonobo-2.32.1/bonobo/bonobo-storage.c0000644000076400007640000000700111173072711015035 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /** * bonobo-storage.c: Storage manipulation. * * Authors: * Dietmar Maurer (dietmar@maurer-it.com) * * Copyright 2001 Ximian, Inc. */ #include #include #include #include static void copy_stream (Bonobo_Stream src, Bonobo_Stream dest, CORBA_Environment *ev) { Bonobo_Stream_iobuf *buf; do { Bonobo_Stream_read (src, 4096, &buf, ev); if (BONOBO_EX (ev)) break; if (buf->_length == 0) { CORBA_free (buf); break; } Bonobo_Stream_write (dest, buf, ev); CORBA_free (buf); if (BONOBO_EX (ev)) break; } while (1); if (BONOBO_EX (ev)) /* we must return a Bonobo_Storage exception */ CORBA_exception_set (ev, CORBA_USER_EXCEPTION, ex_Bonobo_Storage_IOError, NULL); } /** * bonobo_storage_copy_to: * @src: the source storage * @dest: the destination storage * @ev: CORBA exception environment * * Implements a pure CORBA method for copying one storage into * another, this is used by several BonoboStorage implemetations * where a fast case localy copy cannot work. **/ void bonobo_storage_copy_to (Bonobo_Storage src, Bonobo_Storage dest, CORBA_Environment *ev) { Bonobo_Storage new_src, new_dest; Bonobo_Stream src_stream, dest_stream; Bonobo_Storage_DirectoryList *list; gint i; if ((src == CORBA_OBJECT_NIL) || (dest == CORBA_OBJECT_NIL) || !ev) { CORBA_exception_set (ev, CORBA_USER_EXCEPTION, ex_Bonobo_Storage_IOError, NULL); return; } list = Bonobo_Storage_listContents (src, "", Bonobo_FIELD_CONTENT_TYPE | Bonobo_FIELD_TYPE, ev); if (BONOBO_EX (ev)) return; for (i = 0; i _length; i++) { if (list->_buffer[i].type == Bonobo_STORAGE_TYPE_DIRECTORY) { new_dest = Bonobo_Storage_openStorage (dest, list->_buffer[i].name, Bonobo_Storage_CREATE | Bonobo_Storage_FAILIFEXIST, ev); if (BONOBO_EX (ev)) break; Bonobo_Storage_setInfo (new_dest, "", &list->_buffer[i], Bonobo_FIELD_CONTENT_TYPE, ev); if (BONOBO_EX (ev)) { bonobo_object_release_unref (new_dest, NULL); break; } new_src = Bonobo_Storage_openStorage (src, list->_buffer[i].name, Bonobo_Storage_READ, ev); if (BONOBO_EX (ev)) { bonobo_object_release_unref (new_dest, NULL); break; } bonobo_storage_copy_to (new_src, new_dest, ev); bonobo_object_release_unref (new_src, NULL); bonobo_object_release_unref (new_dest, NULL); if (BONOBO_EX (ev)) break; } else { dest_stream = Bonobo_Storage_openStream (dest, list->_buffer[i].name, Bonobo_Storage_CREATE | Bonobo_Storage_FAILIFEXIST, ev); if (BONOBO_EX (ev)) break; Bonobo_Stream_setInfo (dest_stream, &list->_buffer[i], Bonobo_FIELD_CONTENT_TYPE, ev); if (BONOBO_EX (ev)) { CORBA_exception_set (ev, CORBA_USER_EXCEPTION, ex_Bonobo_Storage_IOError, NULL); bonobo_object_release_unref (dest_stream, NULL); break; } src_stream = Bonobo_Storage_openStream (src, list->_buffer[i].name, Bonobo_Storage_READ, ev); if (BONOBO_EX (ev)) { bonobo_object_release_unref (dest_stream, NULL); break; } copy_stream (src_stream, dest_stream, ev); bonobo_object_release_unref (src_stream, NULL); bonobo_object_release_unref (dest_stream, NULL); if (BONOBO_EX (ev)) break; } } CORBA_free (list); } libbonobo-2.32.1/bonobo/bonobo-storage-memory.c0000644000076400007640000004443011173072711016352 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /** * bonobo-storage-memory.c: Memory based Bonobo::Storage implementation * * Author: * RDI Gerg * * Copyright 2001 Gerg rdi * * TODO: * * Make it implement PersistStream so you can flatten a * StorageMem into a Stream * * Create a subclass that supports commit/revert */ #include #include #include #include #include #include static BonoboObjectClass *bonobo_storage_mem_parent_class; typedef struct { gboolean is_directory; BonoboObject *child; } BonoboStorageMemEntry; struct _BonoboStorageMemPriv { GHashTable *entries; }; typedef struct { GList *list; Bonobo_StorageInfoFields mask; } DirCBData; static void bonobo_storage_mem_entry_free (gpointer data) { BonoboStorageMemEntry *entry = (BonoboStorageMemEntry*) data; if (!entry) return; bonobo_object_unref (entry->child); g_free (entry); } static BonoboStorageMemEntry * bonobo_storage_mem_entry_dup (BonoboStorageMemEntry *entry) { BonoboStorageMemEntry *ret_val = g_new0 (BonoboStorageMemEntry, 1); ret_val->is_directory = entry->is_directory; ret_val->child = entry->child; bonobo_object_ref (ret_val->child); return ret_val; } static void split_path (const char *path, char **path_head, char **path_tail) { gchar **path_parts; if (g_path_is_absolute (path)) path = g_path_skip_root (path); path_parts = g_strsplit (path, "/", 2); *path_head = path_parts[0]; *path_tail = path_parts[1]; g_free (path_parts); } static BonoboStorageMem * smem_get_parent (BonoboStorageMem *storage, const char *path, char **filename, /* g_free this */ BonoboStorageMemEntry **ret_entry) /* g_free this */ { BonoboStorageMem *ret; BonoboStorageMemEntry *entry; gchar *path_head, *path_tail; if (!strcmp (path, "/") || !strcmp (path, "")) { if (filename) *filename = g_strdup ("/"); if (ret_entry) { *ret_entry = g_new0 (BonoboStorageMemEntry, 1); (*ret_entry)->is_directory = TRUE; (*ret_entry)->child = BONOBO_OBJECT (storage); bonobo_object_ref ((*ret_entry)->child); } return storage; } split_path (path, &path_head, &path_tail); entry = g_hash_table_lookup (storage->priv->entries, path_head); /* No child is found */ if (!entry) { g_free (path_head); if (filename) *filename = path_tail; if (ret_entry) *ret_entry = NULL; return NULL; } /* This is not the immediate parent */ if (path_tail && entry->is_directory) { ret = smem_get_parent ( BONOBO_STORAGE_MEM (entry->child), path_tail, filename, ret_entry); g_free (path_head); g_free (path_tail); return ret; } /* This is the immediate parent */ if (filename) *filename = g_strdup (path_head); if (ret_entry) *ret_entry = bonobo_storage_mem_entry_dup (entry); g_free (path_tail); g_free (path_head); return storage; } static BonoboStorageMem * smem_get_last_storage (BonoboStorageMem *storage, const char *path, char **last_path) { BonoboStorageMem *ret; BonoboStorageMemEntry *entry; gchar *path_head, *path_tail; if (!strcmp (path, "/") || !strcmp (path, "")) { if (last_path) *last_path = NULL; return storage; } split_path (path, &path_head, &path_tail); entry = g_hash_table_lookup (storage->priv->entries, path_head); /* No appropriate child is found */ if (!entry) { if (path_tail) { g_free (path_head); g_free (path_tail); if (last_path) *last_path = NULL; return NULL; } else { if (last_path) *last_path = path_head; return storage; } } if (!path_tail) { if (entry->is_directory) { g_free (path_head); if (last_path) *last_path = NULL; return BONOBO_STORAGE_MEM (entry->child); } else { if (last_path) *last_path = path_head; return storage; } } if (path_tail && entry->is_directory) { ret = smem_get_last_storage ( BONOBO_STORAGE_MEM (entry->child), path_tail, last_path); g_free (path_head); g_free (path_tail); return ret; } g_free (path_tail); g_free (path_head); if (last_path) *last_path = NULL; return NULL; } static Bonobo_StorageInfo * smem_get_stream_info (BonoboObject *stream, const Bonobo_StorageInfoFields mask, CORBA_Environment *ev) { Bonobo_StorageInfo *ret_val; CORBA_Environment my_ev; CORBA_exception_init (&my_ev); ret_val = Bonobo_Stream_getInfo (bonobo_object_corba_objref (stream), mask, &my_ev); if (BONOBO_EX (&my_ev)) { if (BONOBO_USER_EX (&my_ev, ex_Bonobo_Stream_IOError)) bonobo_exception_set (ev, ex_Bonobo_Storage_IOError); if (BONOBO_USER_EX (&my_ev, ex_Bonobo_Stream_NoPermission)) bonobo_exception_set (ev, ex_Bonobo_Storage_NoPermission); if (BONOBO_USER_EX (&my_ev, ex_Bonobo_Stream_NotSupported)) bonobo_exception_set (ev, ex_Bonobo_Storage_NotSupported); } if (mask & Bonobo_FIELD_TYPE) ret_val->type = Bonobo_STORAGE_TYPE_REGULAR; CORBA_exception_free (&my_ev); return ret_val; } static void smem_dir_hash_cb (gpointer key, gpointer value, gpointer user_data) { DirCBData *cb_data = user_data; gchar *filename = key; BonoboStorageMemEntry *entry = value; Bonobo_StorageInfo *info; Bonobo_StorageInfoFields mask = cb_data->mask; if (entry->is_directory) { info = Bonobo_StorageInfo__alloc (); info->name = CORBA_string_dup (filename); info->type = Bonobo_STORAGE_TYPE_DIRECTORY; } else { if (mask & Bonobo_FIELD_CONTENT_TYPE || mask & Bonobo_FIELD_SIZE) { CORBA_Environment my_ev; CORBA_exception_init (&my_ev); info = smem_get_stream_info (entry->child, mask, &my_ev); CORBA_exception_free (&my_ev); } else info = Bonobo_StorageInfo__alloc (); info->name = CORBA_string_dup (filename); info->type = Bonobo_STORAGE_TYPE_REGULAR; } cb_data->list = g_list_prepend (cb_data->list, info); } static Bonobo_StorageInfo* smem_get_info_impl (PortableServer_Servant servant, const CORBA_char *path, const Bonobo_StorageInfoFields mask, CORBA_Environment *ev) { BonoboStorageMem *storage; Bonobo_StorageInfo *ret_val = NULL; BonoboStorageMem *parent_storage; BonoboStorageMemEntry *entry = NULL; gchar *filename = NULL; storage = BONOBO_STORAGE_MEM (bonobo_object (servant)); parent_storage = smem_get_parent (storage, path, &filename, &entry); if (!parent_storage) { bonobo_exception_set (ev, ex_Bonobo_Storage_NotFound); goto out; } if (entry->is_directory) { if (mask & Bonobo_FIELD_CONTENT_TYPE || mask & Bonobo_FIELD_SIZE) { bonobo_exception_set (ev, ex_Bonobo_Storage_NotSupported); goto out; } ret_val = Bonobo_StorageInfo__alloc (); ret_val->name = CORBA_string_dup (filename); if (mask & Bonobo_FIELD_TYPE) ret_val->type = Bonobo_STORAGE_TYPE_DIRECTORY; } else { if (mask & Bonobo_FIELD_CONTENT_TYPE || mask & Bonobo_FIELD_SIZE) ret_val = smem_get_stream_info (entry->child, mask, ev); else ret_val = Bonobo_StorageInfo__alloc (); ret_val->name = CORBA_string_dup (filename); ret_val->type = Bonobo_STORAGE_TYPE_REGULAR; } out: bonobo_storage_mem_entry_free (entry); g_free (filename); return ret_val; } static void smem_set_info_impl (PortableServer_Servant servant, const CORBA_char *path, const Bonobo_StorageInfo *info, Bonobo_StorageInfoFields mask, CORBA_Environment *ev) { BonoboStorageMem *storage; BonoboStorageMem *parent_storage; BonoboStorageMemEntry *entry = NULL; gchar *filename; storage = BONOBO_STORAGE_MEM (bonobo_object (servant)); parent_storage = smem_get_parent (storage, path, &filename, &entry); if (!parent_storage) { bonobo_exception_set (ev, ex_Bonobo_Storage_NotFound); goto out; } if (entry->is_directory) bonobo_exception_set (ev, ex_Bonobo_Storage_NotSupported); else { CORBA_Environment my_ev; CORBA_exception_init (&my_ev); Bonobo_Stream_setInfo ( bonobo_object_corba_objref (entry->child), info, mask, &my_ev); if (BONOBO_EX (&my_ev)) { if (BONOBO_USER_EX (&my_ev, ex_Bonobo_Stream_IOError)) bonobo_exception_set (ev, ex_Bonobo_Storage_IOError); if (BONOBO_USER_EX (&my_ev, ex_Bonobo_Stream_NoPermission)) bonobo_exception_set (ev, ex_Bonobo_Storage_NoPermission); if (BONOBO_USER_EX (&my_ev, ex_Bonobo_Stream_NotSupported)) bonobo_exception_set (ev, ex_Bonobo_Storage_NotSupported); } CORBA_exception_free (&my_ev); } out: g_free (filename); bonobo_storage_mem_entry_free (entry); } static Bonobo_Stream smem_open_stream_impl (PortableServer_Servant servant, const CORBA_char *path, Bonobo_Storage_OpenMode mode, CORBA_Environment *ev) { BonoboStorageMem *storage; BonoboStorageMem *parent; BonoboStorageMemEntry *entry; gchar *path_last; BonoboObject *stream = NULL; storage = BONOBO_STORAGE_MEM (bonobo_object (servant)); parent = smem_get_last_storage (storage, path, &path_last); if (!parent) { bonobo_exception_set (ev, ex_Bonobo_Storage_NotFound); goto ex_out; } entry = g_hash_table_lookup (parent->priv->entries, path_last); /* Error cases */ /* Case 1: Stream not found */ if (!entry && !(mode & Bonobo_Storage_CREATE)) { bonobo_exception_set (ev, ex_Bonobo_Storage_NotFound); goto ex_out; } /* Case 2: A storage by the same name exists */ if (entry && entry->is_directory) { if (mode & Bonobo_Storage_CREATE) bonobo_exception_set (ev, ex_Bonobo_Storage_NameExists); else bonobo_exception_set (ev, ex_Bonobo_Storage_NotStream); goto ex_out; } if (!entry) { stream = bonobo_stream_mem_create (NULL, 0, FALSE, TRUE); entry = g_new0 (BonoboStorageMemEntry, 1); entry->is_directory = FALSE; entry->child = stream; g_hash_table_insert (parent->priv->entries, g_strdup (path_last), entry); goto ok_out; } stream = entry->child; ok_out: g_free (path_last); return bonobo_object_dup_ref (BONOBO_OBJREF (stream), ev); ex_out: g_free (path_last); return CORBA_OBJECT_NIL; } static Bonobo_Storage smem_open_storage_impl (PortableServer_Servant servant, const CORBA_char *path, Bonobo_Storage_OpenMode mode, CORBA_Environment *ev) { BonoboStorageMem *storage; BonoboStorageMem *parent_storage; BonoboStorageMemEntry *entry; BonoboObject *ret = NULL; gchar *path_last = NULL; storage = BONOBO_STORAGE_MEM (bonobo_object (servant)); parent_storage = smem_get_last_storage (storage, path, &path_last); if (!parent_storage) { bonobo_exception_set (ev, ex_Bonobo_Storage_NotFound); goto ex_out; } entry = g_hash_table_lookup (parent_storage->priv->entries, path_last); /* Error cases */ /* Case 1: Storage not found */ if (!entry && !(mode & Bonobo_Storage_CREATE)) { bonobo_exception_set (ev, ex_Bonobo_Storage_NotFound); goto ex_out; } /* Case 2: A stream by the same name exists */ if (entry && !entry->is_directory) { if (mode & Bonobo_Storage_CREATE) bonobo_exception_set (ev, ex_Bonobo_Storage_NameExists); else bonobo_exception_set (ev, ex_Bonobo_Storage_NotStorage); goto ex_out; } if (!entry) { ret = bonobo_storage_mem_create (); entry = g_new0 (BonoboStorageMemEntry, 1); entry->is_directory = TRUE; entry->child = ret; g_hash_table_insert (parent_storage->priv->entries, g_strdup (path_last), entry); goto ok_out; } ret = entry->child; ok_out: g_free (path_last); return bonobo_object_dup_ref (BONOBO_OBJREF (ret), ev); ex_out: g_free (path_last); return CORBA_OBJECT_NIL; } static void smem_copy_to_impl (PortableServer_Servant servant, const Bonobo_Storage target, CORBA_Environment *ev) { BonoboStorageMem *storage; storage = BONOBO_STORAGE_MEM (bonobo_object (servant)); bonobo_storage_copy_to ( bonobo_object_corba_objref (BONOBO_OBJECT (storage)), target, ev); } static Bonobo_Storage_DirectoryList * smem_list_contents_impl (PortableServer_Servant servant, const CORBA_char *path, const Bonobo_StorageInfoFields mask, CORBA_Environment *ev) { BonoboStorageMem *storage; Bonobo_Storage_DirectoryList *ret_val = NULL; Bonobo_StorageInfo *info; BonoboStorageMem *last_storage; gchar *path_last; GList *list; DirCBData cb_data; int i; storage = BONOBO_STORAGE_MEM (bonobo_object (servant)); last_storage = smem_get_last_storage (storage, path, &path_last); if (!last_storage) { bonobo_exception_set (ev, ex_Bonobo_Storage_NotFound); goto out; } if (path_last) { /* The requested entry is a stream or does not exist */ if (g_hash_table_lookup (last_storage->priv->entries, path_last)) bonobo_exception_set (ev, ex_Bonobo_Storage_NotStorage); else bonobo_exception_set (ev, ex_Bonobo_Storage_NotFound); goto out; } cb_data.list = NULL; cb_data.mask = mask; g_hash_table_foreach (last_storage->priv->entries, smem_dir_hash_cb, &cb_data); ret_val = Bonobo_Storage_DirectoryList__alloc (); list = cb_data.list; ret_val->_length = g_list_length (list); ret_val->_buffer = Bonobo_Storage_DirectoryList_allocbuf (ret_val->_length); for (i = 0; list != NULL; list = list->next, i++) { info = list->data; ret_val->_buffer[i].name = CORBA_string_dup (info->name); ret_val->_buffer[i].type = info->type; ret_val->_buffer[i].content_type = CORBA_string_dup (info->content_type); ret_val->_buffer[i].size = info->size; CORBA_free (info); } g_list_free (cb_data.list); out: g_free (path_last); return ret_val; } static void smem_erase_impl (PortableServer_Servant servant, const CORBA_char *path, CORBA_Environment *ev) { BonoboStorageMem *storage; BonoboStorageMemEntry *entry = NULL; BonoboStorageMem *parent_storage; gchar *filename = NULL; storage = BONOBO_STORAGE_MEM (bonobo_object (servant)); parent_storage = smem_get_parent (storage, path, &filename, &entry); if (!parent_storage) { bonobo_exception_set (ev, ex_Bonobo_Storage_NotFound); goto out; } if (entry->is_directory) { BonoboStorageMem *storage_to_remove = BONOBO_STORAGE_MEM (entry->child); /* You can't remove the root item */ if (!strcmp (path, "/") || !strcmp (path, "")) { bonobo_exception_set (ev, ex_Bonobo_Storage_IOError); goto out; } /* Is the storage empty? */ if (g_hash_table_size (storage_to_remove->priv->entries)) { bonobo_exception_set (ev, ex_Bonobo_Storage_NotEmpty); goto out; } g_hash_table_remove (parent_storage->priv->entries, filename); } else g_hash_table_remove (parent_storage->priv->entries, filename); out: bonobo_storage_mem_entry_free (entry); g_free (filename); } static void smem_rename_impl (PortableServer_Servant servant, const CORBA_char *path, const CORBA_char *new_path, CORBA_Environment *ev) { BonoboStorageMem *storage; BonoboStorageMem *parent_storage, *target_storage; BonoboStorageMemEntry *entry; gchar *filename = NULL, *new_filename; if (!strcmp (path, "/") || !strcmp (path, "")) { bonobo_exception_set (ev, ex_Bonobo_Storage_IOError); goto out; } storage = BONOBO_STORAGE_MEM (bonobo_object (servant)); parent_storage = smem_get_parent (storage, path, &filename, &entry); target_storage = smem_get_last_storage (storage, new_path, &new_filename); /* Source or target does not exists */ if (!parent_storage || !target_storage) { bonobo_exception_set (ev, ex_Bonobo_Storage_NotFound); goto out; } /* Target exists and is not a storage */ if (new_filename && g_hash_table_lookup (target_storage->priv->entries, new_filename)) { bonobo_exception_set (ev, ex_Bonobo_Storage_NameExists); goto out; } g_hash_table_remove (parent_storage->priv->entries, filename); /* If target does not exists, new_filename will be non-NULL */ if (new_filename) g_hash_table_insert (target_storage->priv->entries, new_filename, entry); else g_hash_table_insert (target_storage->priv->entries, g_strdup (filename), entry); out: g_free (filename); } static void smem_commit_impl (PortableServer_Servant servant, CORBA_Environment *ev) { bonobo_exception_set (ev, ex_Bonobo_Storage_NotSupported); } static void smem_revert_impl (PortableServer_Servant servant, CORBA_Environment *ev) { bonobo_exception_set (ev, ex_Bonobo_Storage_NotSupported); } static void bonobo_storage_mem_finalize (GObject *object) { BonoboStorageMem *smem = BONOBO_STORAGE_MEM (object); if (smem->priv) { g_hash_table_destroy (smem->priv->entries); g_free (smem->priv); smem->priv = NULL; } G_OBJECT_CLASS (bonobo_storage_mem_parent_class)->finalize (object); } static void bonobo_storage_mem_init (BonoboStorageMem *smem) { smem->priv = g_new0 (BonoboStorageMemPriv, 1); smem->priv->entries = g_hash_table_new_full ( g_str_hash, g_str_equal, g_free, bonobo_storage_mem_entry_free); } static void bonobo_storage_mem_class_init (BonoboStorageMemClass *klass) { GObjectClass *object_class = (GObjectClass *) klass; POA_Bonobo_Storage__epv *epv = &klass->epv; bonobo_storage_mem_parent_class = g_type_class_peek_parent (klass); object_class->finalize = bonobo_storage_mem_finalize; epv->getInfo = smem_get_info_impl; epv->setInfo = smem_set_info_impl; epv->listContents = smem_list_contents_impl; epv->openStream = smem_open_stream_impl; epv->openStorage = smem_open_storage_impl; epv->copyTo = smem_copy_to_impl; epv->erase = smem_erase_impl; epv->rename = smem_rename_impl; epv->commit = smem_commit_impl; epv->revert = smem_revert_impl; } BONOBO_TYPE_FUNC_FULL (BonoboStorageMem, Bonobo_Storage, BONOBO_TYPE_OBJECT, bonobo_storage_mem) BonoboObject * bonobo_storage_mem_create (void) { BonoboStorageMem *smem; smem = g_object_new (bonobo_storage_mem_get_type (), NULL); if (!smem) return NULL; return BONOBO_STORAGE (smem); } libbonobo-2.32.1/bonobo/bonobo-moniker.c0000644000076400007640000002727611373604303015055 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /** * bonobo-moniker: Object naming abstraction * * Author: * Michael Meeks (michael@helixcode.com) * * Copyright 2000, Ximian, Inc. */ #include "config.h" #include #include #include #include #include #include struct _BonoboMonikerPrivate { Bonobo_Moniker parent; int prefix_len; char *prefix; char *name; gboolean sensitive; }; #define PARENT_TYPE BONOBO_TYPE_OBJECT static GObjectClass *bonobo_moniker_parent_class; #define CLASS(o) BONOBO_MONIKER_CLASS (G_OBJECT_GET_CLASS (o)) static inline BonoboMoniker * bonobo_moniker_from_servant (PortableServer_Servant servant) { return BONOBO_MONIKER (bonobo_object_from_servant (servant)); } static Bonobo_Moniker impl_get_parent (PortableServer_Servant servant, CORBA_Environment *ev) { BonoboMoniker *moniker = bonobo_moniker_from_servant (servant); return bonobo_moniker_get_parent (moniker, ev); } static void impl_set_parent (PortableServer_Servant servant, const Bonobo_Moniker value, CORBA_Environment *ev) { BonoboMoniker *moniker = bonobo_moniker_from_servant (servant); bonobo_moniker_set_parent (moniker, value, ev); } /** * bonobo_moniker_set_parent: * @moniker: the moniker * @parent: the parent * @opt_ev: an optional corba exception environment * * This sets the monikers parent; a moniker is really a long chain * of hierarchical monikers; referenced by the most local moniker. * This sets the parent pointer. **/ void bonobo_moniker_set_parent (BonoboMoniker *moniker, Bonobo_Moniker parent, CORBA_Environment *opt_ev) { CORBA_Environment ev, *my_ev; bonobo_return_if_fail (BONOBO_IS_MONIKER (moniker), opt_ev); if (!opt_ev) { CORBA_exception_init (&ev); my_ev = &ev; } else my_ev = opt_ev; if (moniker->priv->parent != CORBA_OBJECT_NIL) { Bonobo_Moniker_setParent (moniker->priv->parent, parent, my_ev); } else moniker->priv->parent = bonobo_object_dup_ref (parent, my_ev); if (!opt_ev) CORBA_exception_free (&ev); } /** * bonobo_moniker_get_parent: * @moniker: the moniker * @opt_ev: an optional corba exception environment * * See bonobo_moniker_set_parent; * * Return value: the parent of this moniker **/ Bonobo_Moniker bonobo_moniker_get_parent (BonoboMoniker *moniker, CORBA_Environment *opt_ev) { Bonobo_Moniker rval; bonobo_return_val_if_fail (BONOBO_IS_MONIKER (moniker), CORBA_OBJECT_NIL, opt_ev); if (moniker->priv->parent == CORBA_OBJECT_NIL) return CORBA_OBJECT_NIL; rval = bonobo_object_dup_ref (moniker->priv->parent, opt_ev); return rval; } /** * bonobo_moniker_get_name: * @moniker: the moniker * * gets the unescaped name of the moniker less the prefix eg * file:/tmp/hash\#.gz returns /tmp/hash#.gz * * Return value: the string or NULL in case of failure **/ const char * bonobo_moniker_get_name (BonoboMoniker *moniker) { const char *str; g_return_val_if_fail (BONOBO_IS_MONIKER (moniker), NULL); str = CLASS (moniker)->get_internal_name (moniker); if (str) return str + moniker->priv->prefix_len; else return ""; } /** * bonobo_moniker_get_name_full: * @moniker: the moniker * * gets the full unescaped name of the moniker eg. * file:/tmp/hash\#.gz returns file:/tmp/hash#.gz * * Return value: the string in case of failure **/ const char * bonobo_moniker_get_name_full (BonoboMoniker *moniker) { g_return_val_if_fail (BONOBO_IS_MONIKER (moniker), NULL); return CLASS (moniker)->get_internal_name (moniker); } /** * bonobo_moniker_get_name_escaped: * @moniker: a moniker * * Get the full, escaped name of the moniker eg. * file:/tmp/hash\#.gz returns file:/tmp/hash\#.gz * * Return value: the dynamically allocated string, * or NULL in case of failure. * Must release with g_free(). **/ char * bonobo_moniker_get_name_escaped (BonoboMoniker *moniker) { g_return_val_if_fail (BONOBO_IS_MONIKER (moniker), NULL); return bonobo_moniker_util_escape ( CLASS (moniker)->get_internal_name (moniker), 0); } /** * bonobo_moniker_set_name: * @moniker: the BonoboMoniker to configure. * @name: new, unescaped, name for this moniker. * * This functions sets the moniker name in @moniker to be @name. */ void bonobo_moniker_set_name (BonoboMoniker *moniker, const char *name) { char *str; g_return_if_fail (BONOBO_IS_MONIKER (moniker)); str = bonobo_moniker_util_unescape (name, strlen (name)); CLASS (moniker)->set_internal_name (moniker, str); g_free (str); } /** * bonobo_moniker_get_prefix: * @moniker: a moniker * * Return value: the registered prefix for this moniker or * NULL if there isn't one. eg "file:", or in case of failure **/ const char * bonobo_moniker_get_prefix (BonoboMoniker *moniker) { g_return_val_if_fail (BONOBO_IS_MONIKER (moniker), NULL); return moniker->priv->prefix; } static void impl_bonobo_moniker_set_internal_name (BonoboMoniker *moniker, const char *unescaped_name) { g_return_if_fail (BONOBO_IS_MONIKER (moniker)); g_return_if_fail (strlen (unescaped_name) >= moniker->priv->prefix_len); g_free (moniker->priv->name); moniker->priv->name = g_strdup (unescaped_name); } static const char * impl_bonobo_moniker_get_internal_name (BonoboMoniker *moniker) { g_return_val_if_fail (BONOBO_IS_MONIKER (moniker), NULL); return moniker->priv->name; } static CORBA_char * impl_get_name (PortableServer_Servant servant, CORBA_Environment *ev) { BonoboMoniker *moniker = bonobo_moniker_from_servant (servant); CORBA_char *ans, *parent_name; char *tmp; parent_name = Bonobo_Moniker_getName (moniker->priv->parent, ev); if (BONOBO_EX (ev)) return NULL; if (!parent_name) return CORBA_string_dup (moniker->priv->name); if (!moniker->priv->name) return parent_name; tmp = g_strdup_printf ("%s%s", parent_name, moniker->priv->name); if (parent_name) CORBA_free (parent_name); ans = CORBA_string_dup (tmp); g_free (tmp); return ans; } static void impl_set_name (PortableServer_Servant servant, const CORBA_char *name, CORBA_Environment *ev) { const char *mname; int plen; Bonobo_Moniker parent; BonoboMoniker *moniker = bonobo_moniker_from_servant (servant); bonobo_return_if_fail (moniker->priv != NULL, ev); bonobo_return_if_fail (strlen (name) >= moniker->priv->prefix_len, ev); mname = bonobo_moniker_util_parse_name (name, &plen); if (plen) { char *pname; pname = g_strndup (name, plen); parent = bonobo_moniker_client_new_from_name (pname, ev); g_free (pname); if (BONOBO_EX (ev)) return; bonobo_object_release_unref (moniker->priv->parent, NULL); moniker->priv->parent = bonobo_object_dup_ref (parent, ev); } bonobo_moniker_set_name (moniker, mname); } static Bonobo_Unknown impl_resolve (PortableServer_Servant servant, const Bonobo_ResolveOptions *options, const CORBA_char *requested_interface, CORBA_Environment *ev) { BonoboMoniker *moniker = bonobo_moniker_from_servant (servant); Bonobo_Unknown retval; /* Try a standard resolve */ retval = CLASS (moniker)->resolve (moniker, options, requested_interface, ev); /* Try an extender */ if (!BONOBO_EX (ev) && retval == CORBA_OBJECT_NIL && moniker->priv->prefix) { Bonobo_Unknown extender; extender = bonobo_moniker_find_extender ( moniker->priv->prefix, requested_interface, ev); if (BONOBO_EX (ev)) return CORBA_OBJECT_NIL; else if (extender != CORBA_OBJECT_NIL) { retval = Bonobo_MonikerExtender_resolve ( extender, BONOBO_OBJREF (moniker), options, moniker->priv->name, requested_interface, ev); bonobo_object_release_unref (extender, ev); } } if (!BONOBO_EX (ev) && retval == CORBA_OBJECT_NIL) { bonobo_exception_general_error_set ( ev, NULL, _("Failed to resolve, or extend '%s'"), bonobo_moniker_get_name_full (moniker)); } return retval; } static CORBA_long impl_equal (PortableServer_Servant servant, const CORBA_char *moniker_name, CORBA_Environment *ev) { int i, retval; CORBA_long offset; const char *p; char *name; BonoboMoniker *moniker = bonobo_moniker_from_servant (servant); if (moniker->priv->parent != CORBA_OBJECT_NIL) { offset = Bonobo_Moniker_equal ( moniker->priv->parent, moniker_name, ev); if (BONOBO_EX (ev) || offset == 0) return 0; } else offset = 0; p = &moniker_name [offset]; i = bonobo_moniker_util_seek_std_separator (p, moniker->priv->prefix_len); name = bonobo_moniker_get_name_escaped (moniker); /* g_warning ("Compare %d chars of '%s' to '%s' - case sensitive ?%c", i, name, p, moniker->priv->sensitive?'y':'n');*/ if (( moniker->priv->sensitive && !strncmp (name, p, i)) || (!moniker->priv->sensitive && !g_ascii_strncasecmp (name, p, i))) { /* g_warning ("Matching moniker - equal");*/ retval = i + offset; } else { /* g_warning ("No match");*/ retval = 0; } g_free (name); return retval; } static void bonobo_moniker_finalize (GObject *object) { BonoboMoniker *moniker = BONOBO_MONIKER (object); if (moniker->priv->parent != CORBA_OBJECT_NIL) bonobo_object_release_unref (moniker->priv->parent, NULL); g_free (moniker->priv->prefix); g_free (moniker->priv->name); g_free (moniker->priv); bonobo_moniker_parent_class->finalize (object); } static void bonobo_moniker_class_init (BonoboMonikerClass *klass) { GObjectClass *oclass = (GObjectClass *)klass; POA_Bonobo_Moniker__epv *epv = &klass->epv; bonobo_moniker_parent_class = g_type_class_peek_parent (klass); oclass->finalize = bonobo_moniker_finalize; klass->set_internal_name = impl_bonobo_moniker_set_internal_name; klass->get_internal_name = impl_bonobo_moniker_get_internal_name; epv->getParent = impl_get_parent; epv->setParent = impl_set_parent; epv->getName = impl_get_name; epv->setName = impl_set_name; epv->resolve = impl_resolve; epv->equal = impl_equal; } static void bonobo_moniker_init (GObject *object) { BonoboMoniker *moniker = BONOBO_MONIKER (object); moniker->priv = g_new (BonoboMonikerPrivate, 1); moniker->priv->parent = CORBA_OBJECT_NIL; moniker->priv->name = NULL; moniker->priv->prefix = NULL; } BONOBO_TYPE_FUNC_FULL (BonoboMoniker, Bonobo_Moniker, PARENT_TYPE, bonobo_moniker) /** * bonobo_moniker_construct: * @moniker: an un-constructed moniker object. * @prefix: the prefix name of the moniker eg. 'file:', '!' or 'tar:' or NULL * * Constructs a newly created bonobo moniker with the given arguments. * * Return value: the constructed moniker or NULL on failure. **/ BonoboMoniker * bonobo_moniker_construct (BonoboMoniker *moniker, const char *prefix) { if (prefix) { moniker->priv->prefix = g_strdup (prefix); moniker->priv->prefix_len = strlen (prefix); } moniker->priv->sensitive = TRUE; return moniker; } /** * bonobo_moniker_set_case_sensitive: * @moniker: the moniker * @sensitive: whether to see case on equality compare * * Sets up whether we use case sensitivity for the default equal impl. **/ void bonobo_moniker_set_case_sensitive (BonoboMoniker *moniker, gboolean sensitive) { g_return_if_fail (BONOBO_IS_MONIKER (moniker)); moniker->priv->sensitive = sensitive; } /** * bonobo_moniker_get_case_sensitive: * @moniker: the moniker * * Return value: whether we use case sensitivity for the default equal impl. **/ gboolean bonobo_moniker_get_case_sensitive (BonoboMoniker *moniker) { g_return_val_if_fail (BONOBO_IS_MONIKER (moniker), FALSE); return moniker->priv->sensitive; } libbonobo-2.32.1/bonobo/bonobo-types.c0000644000076400007640000002746211173072711014552 00000000000000#include #include #include #include #include #include /* The marshalers */ #include #include "bonobo-marshal.c" /* end of marshalers */ typedef struct { GType type; CORBA_TypeCode tc; } CorbaObjectProxy; static GQuark corba_object_proxy_id = 0; static void corba_object_proxy_set (GType type, CorbaObjectProxy *proxy) { if (!corba_object_proxy_id) corba_object_proxy_id = g_quark_from_static_string ("bonobo-object-proxy"); g_type_set_qdata (type, corba_object_proxy_id, proxy); } static CorbaObjectProxy * corba_object_proxy_get (GType type) { if (!corba_object_proxy_id) corba_object_proxy_id = g_quark_from_static_string ("bonobo-object-proxy"); return g_type_get_qdata (type, corba_object_proxy_id); } static void corba_object_proxy_value_init (GValue *value) { value->data[0].v_pointer = CORBA_OBJECT_NIL; } static void corba_object_proxy_value_free (GValue *value) { if (value->data[0].v_pointer) { CORBA_Environment ev; CORBA_exception_init (&ev); CORBA_Object_release (value->data[0].v_pointer, &ev); CORBA_exception_free (&ev); } } static void corba_object_proxy_value_copy (const GValue *src_value, GValue *dest_value) { if (src_value->data[0].v_pointer) { dest_value->data[0].v_pointer = CORBA_Object_duplicate ( src_value->data[0].v_pointer, NULL); } else dest_value->data[0].v_pointer = NULL; } static gpointer corba_object_proxy_value_peek_pointer (const GValue *value) { return value->data[0].v_pointer; } static gchar* corba_object_proxy_collect_value (GValue *value, guint n_collect_values, GTypeCValue *collect_values, guint collect_flags) { if (!collect_values[0].v_pointer) value->data[0].v_pointer = NULL; else { CORBA_Environment ev; CORBA_Object corba_objref; CorbaObjectProxy *proxy; proxy = corba_object_proxy_get (G_VALUE_TYPE (value));; corba_objref = collect_values[0].v_pointer; CORBA_exception_init (&ev); if (!CORBA_Object_is_a (corba_objref, proxy->tc->repo_id, &ev)) return g_strdup_printf ("CORBA Object %p is not a `%s'.", corba_objref, proxy->tc->repo_id); value->data[0].v_pointer = CORBA_Object_duplicate (corba_objref, &ev); CORBA_exception_free (&ev); } return NULL; } static gchar* corba_object_proxy_lcopy_value (const GValue *value, guint n_collect_values, GTypeCValue *collect_values, guint collect_flags) { gpointer *corba_p = collect_values[0].v_pointer; if (!corba_p) return g_strdup_printf ("value location for `%s' passed as NULL", G_VALUE_TYPE_NAME (value)); if (!value->data[0].v_pointer) *corba_p = NULL; else if (collect_flags & G_VALUE_NOCOPY_CONTENTS) *corba_p = value->data[0].v_pointer; else { *corba_p = CORBA_Object_duplicate (value->data[0].v_pointer, NULL); } return NULL; } GType bonobo_corba_object_type_register_static (const gchar *name, const CORBA_TypeCode tc, gboolean is_bonobo_unknown) { const GTypeValueTable vtable = { corba_object_proxy_value_init, corba_object_proxy_value_free, corba_object_proxy_value_copy, corba_object_proxy_value_peek_pointer, "p", corba_object_proxy_collect_value, "p", corba_object_proxy_lcopy_value }; const GTypeInfo type_info = { 0, /* class_size */ NULL, /* base_init */ NULL, /* base_finalize */ NULL, /* class_init */ NULL, /* class_finalize */ NULL, /* class_data */ 0, /* instance_size */ 0, /* n_preallocs */ NULL, /* instance_init */ &vtable, /* value_table */ }; GType type; g_return_val_if_fail (tc != NULL, 0); g_return_val_if_fail (name != NULL, 0); g_return_val_if_fail (g_type_from_name (name) == 0, 0); type = g_type_register_static (G_TYPE_BOXED, name, &type_info, 0); /* install proxy functions upon successfull registration */ if (type) { CorbaObjectProxy *proxy; proxy = g_new (CorbaObjectProxy, 1); proxy->type = type; proxy->tc = (CORBA_TypeCode) CORBA_Object_duplicate ((CORBA_Object) tc, NULL); corba_object_proxy_set (type, proxy); } return type; } #define BONOBO_TYPE_CORBA_OBJECT_IMPL(name,typename,tc,is_bonobo_unknown) \ GType \ bonobo_ ## name ## _get_type (void) \ { \ static GType type = 0; \ if (!type) \ type = bonobo_corba_object_type_register_static ( \ typename, tc, is_bonobo_unknown); \ return type; \ } BONOBO_TYPE_CORBA_OBJECT_IMPL (corba_object, "CorbaObject", TC_CORBA_Object, FALSE) BONOBO_TYPE_CORBA_OBJECT_IMPL (unknown, "BonoboUnknown", TC_Bonobo_Unknown, TRUE) static gpointer corba_any_copy (gpointer any) { return bonobo_arg_copy (any); } static void corba_any_free (gpointer any) { bonobo_arg_release (any); } GType bonobo_corba_any_get_type (void) { static GType type = 0; if (!type) type = g_boxed_type_register_static ( "BonoboCorbaAny", corba_any_copy, corba_any_free); return type; } static gpointer corba_typecode_copy (gpointer typecode) { g_warning (G_STRLOC); CORBA_Object_duplicate ((CORBA_Object) typecode, NULL); return typecode; } static void corba_typecode_free (gpointer typecode) { g_warning (G_STRLOC); CORBA_Object_release ((CORBA_Object) typecode, NULL); } GType bonobo_corba_typecode_get_type (void) { static GType type = 0; if (!type) type = g_boxed_type_register_static ( "BonoboCorbaTypecode", corba_typecode_copy, corba_typecode_free); return type; } static gpointer corba_exception_copy (gpointer any) { return CORBA_exception__copy (any); } static void corba_exception_free (gpointer env) { CORBA_free (env); } GType bonobo_corba_exception_get_type (void) { static GType type = 0; if (!type) type = g_boxed_type_register_static ( "BonoboCorbaException", corba_exception_copy, corba_exception_free); return type; } Bonobo_Unknown bonobo_value_get_unknown (const GValue *value) { g_return_val_if_fail ( BONOBO_VALUE_HOLDS_UNKNOWN (value), CORBA_OBJECT_NIL); return bonobo_object_dup_ref (value->data[0].v_pointer, NULL); } BonoboArg * bonobo_value_get_corba_any (const GValue *value) { g_return_val_if_fail ( BONOBO_VALUE_HOLDS_CORBA_ANY (value), NULL); return bonobo_arg_copy (value->data[0].v_pointer); } CORBA_Object bonobo_value_get_corba_object (const GValue *value) { g_return_val_if_fail ( BONOBO_VALUE_HOLDS_CORBA_OBJECT (value), CORBA_OBJECT_NIL); return CORBA_Object_duplicate (value->data[0].v_pointer, NULL); } CORBA_TypeCode bonobo_value_get_corba_typecode (const GValue *value) { g_return_val_if_fail ( BONOBO_VALUE_HOLDS_CORBA_TYPECODE (value), CORBA_OBJECT_NIL); return (CORBA_TypeCode) CORBA_Object_duplicate (value->data[0].v_pointer, NULL); } const CORBA_Environment * bonobo_value_get_corba_exception (const GValue *value) { g_return_val_if_fail ( BONOBO_VALUE_HOLDS_CORBA_EXCEPTION (value), NULL); return value->data[0].v_pointer; } void bonobo_value_set_corba_object (GValue *value, const CORBA_Object object) { g_return_if_fail (BONOBO_VALUE_HOLDS_CORBA_TYPECODE (value)); if (!(value->data[1].v_uint & G_VALUE_NOCOPY_CONTENTS) && value->data[0].v_pointer != CORBA_OBJECT_NIL) CORBA_Object_release (value->data[0].v_pointer, NULL); value->data[1].v_uint = G_VALUE_NOCOPY_CONTENTS; value->data[0].v_pointer = CORBA_Object_duplicate (object, NULL); } void bonobo_value_set_unknown (GValue *value, const Bonobo_Unknown unknown) { g_return_if_fail (BONOBO_VALUE_HOLDS_UNKNOWN (value)); if (!(value->data[1].v_uint & G_VALUE_NOCOPY_CONTENTS)) bonobo_object_release_unref (value->data[0].v_pointer, NULL); value->data[1].v_uint = G_VALUE_NOCOPY_CONTENTS; value->data[0].v_pointer = unknown; } void bonobo_value_set_corba_any (GValue *value, const CORBA_any *any) { g_return_if_fail (BONOBO_VALUE_HOLDS_CORBA_ANY (value)); if (!(value->data[1].v_uint & G_VALUE_NOCOPY_CONTENTS)) bonobo_arg_release (value->data[0].v_pointer); value->data[1].v_uint = G_VALUE_NOCOPY_CONTENTS; value->data[0].v_pointer = (CORBA_any *) any; } void bonobo_value_set_corba_typecode (GValue *value, const CORBA_TypeCode tc) { g_return_if_fail (BONOBO_VALUE_HOLDS_CORBA_TYPECODE (value)); if (!(value->data[1].v_uint & G_VALUE_NOCOPY_CONTENTS) && value->data[0].v_pointer != CORBA_OBJECT_NIL) CORBA_Object_release (value->data[0].v_pointer, NULL); value->data[1].v_uint = G_VALUE_NOCOPY_CONTENTS; value->data[0].v_pointer = CORBA_Object_duplicate ((CORBA_Object) tc, NULL); } void bonobo_value_set_corba_environment (GValue *value, const CORBA_Environment *ev) { g_return_if_fail (BONOBO_VALUE_HOLDS_CORBA_EXCEPTION (value)); if (!(value->data[1].v_uint & G_VALUE_NOCOPY_CONTENTS)) CORBA_free (value->data[0].v_pointer); value->data[1].v_uint = G_VALUE_NOCOPY_CONTENTS; value->data[0].v_pointer = CORBA_exception__copy (ev); } void bonobo_closure_invoke_va_list (GClosure *closure, GValue *return_value, va_list var_args) { int i; GType type; GArray *params; g_return_if_fail (closure != NULL); params = g_array_sized_new (FALSE, TRUE, sizeof (GValue), 6); while ((type = va_arg (var_args, GType)) != 0) { gboolean static_scope = type & G_SIGNAL_TYPE_STATIC_SCOPE; GValue value; gchar *error; value.g_type = 0; g_value_init (&value, type & ~G_SIGNAL_TYPE_STATIC_SCOPE); G_VALUE_COLLECT (&value, var_args, static_scope ? G_VALUE_NOCOPY_CONTENTS : 0, &error); if (error) { g_warning ("%s: %s", G_STRLOC, error); g_free (error); break; } g_array_append_val (params, value); } g_closure_invoke (closure, return_value, params->len, (GValue *)params->data, NULL); for (i = 0; i < params->len; i++) g_value_unset (&g_array_index (params, GValue, i)); g_array_free (params, TRUE); } /** * bonobo_closure_invoke: * @closure: a standard GClosure * @return_type: the type of the first va_arg argument in a * set of type / arg pairs. * @Varargs: list of type / arg pairs * * Invokes the closure with the arguments. * * Examples: * * bonobo_closure_invoke (closure, G_TYPE_NONE, G_TYPE_INT, first_arg, 0); * * * * glong retval; * bonobo_closure_invoke (closure, G_TYPE_LONG, & retval, 0); * * **/ void bonobo_closure_invoke (GClosure *closure, GType return_type, ...) { GType rtype; GValue return_value = { 0, }; va_list var_args; if (!closure) return; va_start (var_args, return_type); rtype = return_type & ~G_SIGNAL_TYPE_STATIC_SCOPE; if (rtype != G_TYPE_NONE) { gchar *error; g_value_init (&return_value, rtype); /* Initialize return value */ G_VALUE_LCOPY (&return_value, var_args, G_VALUE_NOCOPY_CONTENTS, &error); if (error) { g_warning ("%s: %s", G_STRLOC, error); g_free (error); return; } } bonobo_closure_invoke_va_list ( closure, &return_value, var_args); va_end (var_args); va_start (var_args, return_type); if (rtype != G_TYPE_NONE) { gchar *error; /* * FIXME: performance here sucks, so we need a * g_value_steal_contents type method */ G_VALUE_LCOPY (&return_value, var_args, 0, &error); if (error) { g_warning ("%s: %s", G_STRLOC, error); g_free (error); return; } g_value_unset (&return_value); } va_end (var_args); } /** * bonobo_closure_store: * @closure: a standard GClosure * @default_marshal: the default marshaller to use * * Does the necessary refcounting magic and returns a directly * storable closure * * Returns: @closure. **/ GClosure * bonobo_closure_store (GClosure *closure, GClosureMarshal default_marshal) { if (!closure) return NULL; g_closure_ref (closure); g_closure_sink (closure); if (G_CLOSURE_NEEDS_MARSHAL (closure)) g_closure_set_marshal (closure, default_marshal); return closure; } libbonobo-2.32.1/bonobo/bonobo-xobject.h0000644000076400007640000001146211173072711015042 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /** * bonobo-xobject.h: Modified Bonobo Unknown interface base implementation * * Authors: * Michael Meeks (michael@ximian.com) * * Copyright 2000 Ximian, Inc. */ #ifndef _BONOBO_X_OBJECT_H_ #define _BONOBO_X_OBJECT_H_ #include #ifndef BONOBO_DISABLE_DEPRECATED G_BEGIN_DECLS /* Compatibility code */ #define BONOBO_TYPE_X_OBJECT BONOBO_TYPE_OBJECT #define BONOBO_X_OBJECT_TYPE BONOBO_TYPE_X_OBJECT /* deprecated, you should use BONOBO_TYPE_X_OBJECT */ #define BONOBO_X_OBJECT(o) BONOBO_OBJECT (o) #define BONOBO_X_OBJECT_CLASS(k) BONOBO_OBJECT_CLASS (k) #define BONOBO_IS_X_OBJECT(o) BONOBO_IS_OBJECT (o) #define BONOBO_IS_X_OBJECT_CLASS(k) BONOBO_IS_OBJECT_CLASS (k) /* * Compatibility macros to convert between types, * use bonobo_object (), it's more foolproof. */ #define BONOBO_X_OBJECT_HEADER_SIZE BONOBO_OBJECT_HEADER_SIZE #define BONOBO_X_OBJECT_GET_SERVANT(o) ((PortableServer_Servant)&(o)->servant) #define BONOBO_X_SERVANT_GET_OBJECT(o) ((BonoboXObject *)((guchar *)(o) \ - BONOBO_X_OBJECT_HEADER_SIZE \ - sizeof (struct CORBA_Object_struct) \ - sizeof (gpointer) * 4)) #define BonoboXObject BonoboObject #define BonoboXObjectClass BonoboObjectClass #define bonobo_x_object bonobo_object #define BonoboXObjectPOAFn BonoboObjectPOAFn #define bonobo_x_object_get_type bonobo_object_get_type #define bonobo_x_type_unique bonobo_type_unique #define bonobo_x_type_setup bonobo_type_setup #define BONOBO_X_TYPE_FUNC_FULL(class_name, corba_name, parent, prefix) \ GType \ prefix##_get_type (void) \ { \ GType ptype; \ static GType type = 0; \ \ if (type == 0) { \ static GTypeInfo info = { \ sizeof (class_name##Class), \ (GBaseInitFunc) NULL, \ (GBaseFinalizeFunc) NULL, \ (GClassInitFunc) prefix##_class_init, \ NULL, NULL, \ sizeof (class_name), \ 0, \ (GInstanceInitFunc) prefix##_init \ }; \ ptype = (parent); \ type = bonobo_x_type_unique (ptype, \ POA_##corba_name##__init, POA_##corba_name##__fini, \ G_STRUCT_OFFSET (class_name##Class, epv), \ &info, #class_name); \ } \ return type; \ } #define BONOBO_X_TYPE_FUNC(class_name, parent, prefix) \ GType \ prefix##_get_type (void) \ { \ GType ptype; \ static GType type = 0; \ \ if (type == 0) { \ static GTypeInfo info = { \ sizeof (class_name##Class), \ (GBaseInitFunc) NULL, \ (GBaseFinalizeFunc) NULL, \ (GClassInitFunc) prefix##_class_init, \ NULL, NULL, \ sizeof (class_name), \ 0, \ (GInstanceInitFunc) prefix##_init \ }; \ ptype = (parent); \ type = bonobo_x_type_unique (ptype, NULL, NULL, 0, \ &info, #class_name); \ } \ return type; \ } G_END_DECLS #endif /* BONOBO_DISABLE_DEPRECATED */ #endif libbonobo-2.32.1/bonobo/bonobo-debug.h0000644000076400007640000000116311173072711014467 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /** * bonobo-debug.c: A runtime-controllable debugging API. * * Author: * Jaka Mocnik */ #ifndef _BONOBO_DEBUG_H_ #define _BONOBO_DEBUG_H_ typedef enum { BONOBO_DEBUG_NONE = 0, BONOBO_DEBUG_REFS = 1 << 0, BONOBO_DEBUG_AGGREGATE = 1 << 1, BONOBO_DEBUG_LIFECYCLE = 1 << 2, BONOBO_DEBUG_RUNNING = 1 << 3, BONOBO_DEBUG_OBJECT = 1 << 4 } BonoboDebugFlags; extern BonoboDebugFlags _bonobo_debug_flags; void bonobo_debug_init (void); void bonobo_debug_print (const char *name, char *fmt, ...); #endif /* _BONOBO_DEBUG_H_ */ libbonobo-2.32.1/bonobo/bonobo-storage-memory.h0000644000076400007640000000266511173072711016363 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /** * bonobo-storage-memory.h: Memory based Bonobo::Storage implementation * * Author: * RDI Gerg * * Copyright 2001 Gerg rdi */ #ifndef _BONOBO_STORAGE_MEM_H_ #define _BONOBO_STORAGE_MEM_H_ #include G_BEGIN_DECLS #define BONOBO_TYPE_STORAGE_MEM (bonobo_storage_mem_get_type ()) #define BONOBO_STORAGE_MEM_TYPE BONOBO_TYPE_STORAGE_MEM /* deprecated, you should use BONOBO_TYPE_STORAGE_MEM */ #define BONOBO_STORAGE_MEM(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), BONOBO_TYPE_STORAGE_MEM, BonoboStorageMem)) #define BONOBO_STORAGE_MEM_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), BONOBO_TYPE_STORAGE_MEM, BonoboStorageMemClass)) #define BONOBO_IS_STORAGE_MEM(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), BONOBO_TYPE_STORAGE_MEM)) #define BONOBO_IS_STORAGE_MEM_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), BONOBO_TYPE_STORAGE_MEM)) typedef struct _BonoboStorageMemPriv BonoboStorageMemPriv; typedef struct _BonoboStorageMem BonoboStorageMem; struct _BonoboStorageMem { BonoboObject parent; BonoboStorageMemPriv *priv; }; typedef struct { BonoboObjectClass parent_class; POA_Bonobo_Storage__epv epv; } BonoboStorageMemClass; GType bonobo_storage_mem_get_type (void) G_GNUC_CONST; BonoboObject *bonobo_storage_mem_create (void); G_END_DECLS #endif /* _BONOBO_STORAGE_MEM_H_ */ libbonobo-2.32.1/bonobo/bonobo-moniker-context.c0000644000076400007640000000367211173072711016531 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /** * bonobo-moniker-context.c: A global moniker interface * * Author: * Michael Meeks (michael@helixcode.com) * * Copyright (C) 2000, Ximian, Inc. */ #include #include #include #include #include #include #define PARENT_TYPE BONOBO_TYPE_OBJECT static Bonobo_Moniker impl_Bonobo_MonikerContext_createFromName (PortableServer_Servant servant, const CORBA_char *name, CORBA_Environment *ev) { return bonobo_moniker_client_new_from_name (name, ev); } static Bonobo_Unknown impl_Bonobo_MonikerContext_getObject (PortableServer_Servant servant, const CORBA_char *name, const CORBA_char *repo_id, CORBA_Environment *ev) { return bonobo_get_object (name, repo_id, ev); } static Bonobo_MonikerExtender impl_Bonobo_MonikerContext_getExtender (PortableServer_Servant servant, const CORBA_char *monikerPrefix, const CORBA_char *interfaceId, CORBA_Environment *ev) { return bonobo_moniker_find_extender (monikerPrefix, interfaceId, ev); } static void bonobo_moniker_context_class_init (BonoboMonikerContextClass *klass) { POA_Bonobo_MonikerContext__epv *epv = &klass->epv; epv->getObject = impl_Bonobo_MonikerContext_getObject; epv->createFromName = impl_Bonobo_MonikerContext_createFromName; epv->getExtender = impl_Bonobo_MonikerContext_getExtender; } static void bonobo_moniker_context_init (GObject *object) { /* nothing to do */ } static BONOBO_TYPE_FUNC_FULL (BonoboMonikerContext, Bonobo_MonikerContext, PARENT_TYPE, bonobo_moniker_context) BonoboObject * bonobo_moniker_context_new (void) { return BONOBO_OBJECT (g_object_new ( bonobo_moniker_context_get_type (), NULL)); } libbonobo-2.32.1/bonobo/bonobo-object.c0000644000076400007640000013110011173072711014635 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /** * bonobo-object.c: Bonobo Unknown interface base implementation * * Authors: * Miguel de Icaza (miguel@kernel.org) * Michael Meeks (michael@helixcode.com) * * Copyright 1999,2001 Ximian, Inc. */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include /* We need decent ORB cnx. flushing on shutdown to make this work */ #undef ASYNC_UNREFS /* Some simple tracking - always on */ static glong bonobo_total_aggregates = 0; static glong bonobo_total_aggregate_refs = 0; enum { PROP_0, PROP_POA }; /* you may debug by setting BONOBO_DEBUG_FLAGS environment variable to a colon separated list of a subset of {refs,aggregate,lifecycle} */ typedef struct { const char *fn; gboolean ref; int line; } BonoboDebugRefData; typedef struct { int ref_count; gboolean immortal; GList *objs; GList *bags; #ifdef G_ENABLE_DEBUG /* the following is required for reference debugging */ GList *refs; int destroyed; #endif /* G_ENABLE_DEBUG */ } BonoboAggregateObject; struct _BonoboObjectPrivate { BonoboAggregateObject *ao; PortableServer_POA poa; }; enum { DESTROY, SYSTEM_EXCEPTION, LAST_SIGNAL }; static guint bonobo_object_signals [LAST_SIGNAL]; static GObjectClass *bonobo_object_parent_class; static void bonobo_object_bag_cleanup_T (BonoboAggregateObject *ao); #ifdef G_ENABLE_DEBUG static GHashTable *living_ao_ht = NULL; #endif /* G_ENABLE_DEBUG */ /* Do not use this function, it is not what you want; see unref */ static void bonobo_object_destroy_T (BonoboAggregateObject *ao) { GList *l; g_return_if_fail (ao->ref_count > 0); for (l = ao->objs; l; l = l->next) { GObject *o = l->data; bonobo_object_bag_cleanup_T (ao); if (o->ref_count >= 1) { g_object_ref (o); BONOBO_UNLOCK(); g_signal_emit (o, bonobo_object_signals [DESTROY], 0); BONOBO_LOCK(); g_object_unref (o); } else g_warning ("Serious ref-counting error [%p]", o); } #ifdef G_ENABLE_DEBUG if(_bonobo_debug_flags & BONOBO_DEBUG_REFS) ao->destroyed = TRUE; #endif /* G_ENABLE_DEBUG */ } static void bonobo_object_corba_deactivate_T (BonoboObject *object) { CORBA_Environment ev; PortableServer_ObjectId *oid; PortableServer_POA poa; #ifdef G_ENABLE_DEBUG if(_bonobo_debug_flags & BONOBO_DEBUG_LIFECYCLE) bonobo_debug_print("deactivate", "BonoboObject corba deactivate %p", object); #endif /* G_ENABLE_DEBUG */ g_assert (object->priv->ao == NULL); CORBA_exception_init (&ev); if (object->corba_objref != CORBA_OBJECT_NIL) { bonobo_running_context_remove_object_T (object->corba_objref); CORBA_Object_release (object->corba_objref, &ev); object->corba_objref = CORBA_OBJECT_NIL; } poa = bonobo_object_get_poa (object); oid = PortableServer_POA_servant_to_id (poa, &object->servant, &ev); PortableServer_POA_deactivate_object (poa, oid, &ev); CORBA_free (oid); CORBA_exception_free (&ev); } /* * bonobo_object_finalize_internal_T: * * This method splits apart the aggregate object, so that each * GObject can be finalized individualy. * * Note that since the (embedded) servant keeps a ref on the * GObject, it won't neccessarily be finalized through this * routine, but from the poa later. */ static void bonobo_object_finalize_internal_T (BonoboAggregateObject *ao) { GList *l, *objs; g_return_if_fail (ao->ref_count == 0); objs = ao->objs; ao->objs = NULL; for (l = objs; l; l = l->next) { GObject *o = G_OBJECT (l->data); if (!o) g_error ("Serious bonobo object corruption"); else { g_assert (BONOBO_OBJECT (o)->priv->ao != NULL); #ifdef G_ENABLE_DEBUG if(_bonobo_debug_flags & BONOBO_DEBUG_REFS) { g_assert (BONOBO_OBJECT (o)->priv->ao->destroyed); bonobo_debug_print ("finalize", "[%p] %-20s corba_objref=[%p]" " g_ref_count=%d", o, G_OBJECT_TYPE_NAME (o), BONOBO_OBJECT (o)->corba_objref, G_OBJECT (o)->ref_count); } #endif /* G_ENABLE_DEBUG */ /* * Disconnect the GObject from the aggregate object * and unref it so that it is possibly finalized --- * other parts of glib may still have references to it. * * The GObject was already destroy()ed in * bonobo_object_destroy_T(). */ BONOBO_OBJECT (o)->priv->ao = NULL; if (!g_type_is_a (G_OBJECT_TYPE(o), BONOBO_TYPE_FOREIGN_OBJECT)) bonobo_object_corba_deactivate_T (BONOBO_OBJECT (o)); else /* (is foreign object) */ bonobo_running_context_remove_object_T (BONOBO_OBJECT (o)->corba_objref); BONOBO_UNLOCK (); g_object_unref (o); BONOBO_LOCK (); #ifdef G_ENABLE_DEBUG if(_bonobo_debug_flags & BONOBO_DEBUG_LIFECYCLE) bonobo_debug_print ("finalize", "Done finalize internal on %p", o); #endif /* G_ENABLE_DEBUG */ } } g_list_free (objs); #ifdef G_ENABLE_DEBUG if(_bonobo_debug_flags & BONOBO_DEBUG_REFS) { for (l = ao->refs; l; l = l->next) g_free (l->data); g_list_free (ao->refs); } #endif g_free (ao); /* Some simple debugging - count aggregate free */ bonobo_total_aggregates--; } /* * bonobo_object_finalize_servant: * * This routine is called from either an object de-activation * or from the poa. It is called to signal the fact that finaly * the object is no longer exposed to the world and thus we * can safely loose it's GObject reference, and thus de-allocate * the memory associated with it. */ static void bonobo_object_finalize_servant (PortableServer_Servant servant, CORBA_Environment *ev) { BonoboObject *object = bonobo_object(servant); BonoboObjectClass *klass = BONOBO_OBJECT_GET_CLASS(object); #ifdef G_ENABLE_DEBUG if(_bonobo_debug_flags & BONOBO_DEBUG_LIFECYCLE) bonobo_debug_print ("finalize", "BonoboObject Servant finalize %p", object); #endif /* G_ENABLE_DEBUG */ if (klass->poa_fini_fn) klass->poa_fini_fn (servant, ev); else /* Actually quicker and nicer */ PortableServer_ServantBase__fini (servant, ev); g_object_unref (G_OBJECT (object)); } static void bonobo_object_ref_T (BonoboObject *object) { if (!object->priv->ao->immortal) { object->priv->ao->ref_count++; bonobo_total_aggregate_refs++; } } #ifndef bonobo_object_ref /** * bonobo_object_ref: * @obj: A BonoboObject you want to ref-count * * Increments the reference count for the aggregate BonoboObject. * * Returns: @object */ gpointer bonobo_object_ref (gpointer obj) { BonoboObject *object = obj; if (!object) return object; g_return_val_if_fail (BONOBO_IS_OBJECT (object), object); g_return_val_if_fail (object->priv->ao->ref_count > 0, object); #ifdef G_ENABLE_DEBUG if(_bonobo_debug_flags & BONOBO_DEBUG_REFS) { bonobo_object_trace_refs (object, "local", 0, TRUE); } else #endif /* G_ENABLE_DEBUG */ { BONOBO_LOCK (); bonobo_object_ref_T (object); BONOBO_UNLOCK (); } return object; } #endif /* bonobo_object_ref */ #ifndef bonobo_object_unref /** * bonobo_object_unref: * @obj: A BonoboObject you want to unref. * * Decrements the reference count for the aggregate BonoboObject. * * Returns: %NULL. */ gpointer bonobo_object_unref (gpointer obj) { #ifdef G_ENABLE_DEBUG if(!(_bonobo_debug_flags & BONOBO_DEBUG_REFS)) { #endif /* G_ENABLE_DEBUG */ BonoboAggregateObject *ao; BonoboObject *object = obj; if (!object) return NULL; g_return_val_if_fail (BONOBO_IS_OBJECT (object), NULL); ao = object->priv->ao; g_return_val_if_fail (ao != NULL, NULL); g_return_val_if_fail (ao->ref_count > 0, NULL); BONOBO_LOCK (); if (!ao->immortal) { if (ao->ref_count == 1) bonobo_object_destroy_T (ao); ao->ref_count--; bonobo_total_aggregate_refs--; if (ao->ref_count == 0) bonobo_object_finalize_internal_T (ao); } BONOBO_UNLOCK (); return NULL; #ifdef G_ENABLE_DEBUG } else return bonobo_object_trace_refs (obj, "local", 0, FALSE); #endif /* G_ENABLE_DEBUG */ } #endif /* bonobo_object_unref */ gpointer bonobo_object_trace_refs (gpointer obj, const char *fn, int line, gboolean ref) { #ifdef G_ENABLE_DEBUG if(_bonobo_debug_flags & BONOBO_DEBUG_REFS) { BonoboObject *object = obj; BonoboAggregateObject *ao; BonoboDebugRefData *descr; if (!object) return NULL; g_return_val_if_fail (BONOBO_IS_OBJECT (object), ref ? object : NULL); ao = object->priv->ao; g_return_val_if_fail (ao != NULL, ref ? object : NULL); BONOBO_LOCK (); descr = g_new (BonoboDebugRefData, 1); ao->refs = g_list_prepend (ao->refs, descr); descr->fn = fn; descr->ref = ref; descr->line = line; if (ref) { g_return_val_if_fail (ao->ref_count > 0, object); if (!object->priv->ao->immortal) { object->priv->ao->ref_count++; bonobo_total_aggregate_refs++; } bonobo_debug_print ("ref", "[%p]:[%p]:%s to %d at %s:%d", object, ao, G_OBJECT_TYPE_NAME (object), ao->ref_count, fn, line); BONOBO_UNLOCK (); return object; } else { /* unref */ bonobo_debug_print ("unref", "[%p]:[%p]:%s from %d at %s:%d", object, ao, G_OBJECT_TYPE_NAME (object), ao->ref_count, fn, line); g_return_val_if_fail (ao->ref_count > 0, NULL); if (ao->immortal) bonobo_debug_print ("unusual", "immortal object"); else { if (ao->ref_count == 1) { bonobo_object_destroy_T (ao); g_return_val_if_fail (ao->ref_count > 0, NULL); } /* * If this blows it is likely some loony used * g_object_unref somewhere instead of * bonobo_object_unref, send them my regards. */ g_assert (object->priv->ao == ao); ao->ref_count--; bonobo_total_aggregate_refs--; if (ao->ref_count == 0) { g_assert (g_hash_table_lookup (living_ao_ht, ao) == ao); g_hash_table_remove (living_ao_ht, ao); bonobo_object_finalize_internal_T (ao); } else if (ao->ref_count < 0) { bonobo_debug_print ("unusual", "[%p] already finalized", ao); } } BONOBO_UNLOCK (); return NULL; } } else #endif /* G_ENABLE_DEBUG */ if (ref) return bonobo_object_ref (obj); else { bonobo_object_unref (obj); return NULL; } } static void impl_Bonobo_Unknown_ref (PortableServer_Servant servant, CORBA_Environment *ev) { BonoboObject *object; object = bonobo_object_from_servant (servant); #ifdef G_ENABLE_DEBUG if(_bonobo_debug_flags & BONOBO_DEBUG_REFS) { #ifndef bonobo_object_ref bonobo_object_trace_refs (object, "remote", 0, TRUE); #else bonobo_object_ref (object); #endif } else #endif /* G_ENABLE_DEBUG */ bonobo_object_ref (object); } void bonobo_object_set_immortal (BonoboObject *object, gboolean immortal) { BonoboAggregateObject *ao; g_return_if_fail (BONOBO_IS_OBJECT (object)); g_return_if_fail (object->priv != NULL); g_return_if_fail (object->priv->ao != NULL); ao = object->priv->ao; ao->immortal = immortal; } /** * bonobo_object_dup_ref: * @object: a Bonobo_Unknown corba object * @opt_ev: an optional exception environment * * This function returns a duplicated CORBA Object reference; * it also bumps the ref count on the object. This is ideal to * use in any method returning a Bonobo_Object in a CORBA impl. * If object is CORBA_OBJECT_NIL it is returned unaffected. * * Return value: duplicated & ref'd corba object reference. **/ Bonobo_Unknown bonobo_object_dup_ref (Bonobo_Unknown object, CORBA_Environment *opt_ev) { Bonobo_Unknown ans; CORBA_Environment *ev, temp_ev; if (object == CORBA_OBJECT_NIL) return CORBA_OBJECT_NIL; if (!opt_ev) { CORBA_exception_init (&temp_ev); ev = &temp_ev; } else ev = opt_ev; Bonobo_Unknown_ref (object, ev); ans = CORBA_Object_duplicate (object, ev); if (!opt_ev) CORBA_exception_free (&temp_ev); return ans; } #ifdef ASYNC_UNREFS static ORBit_IMethod * get_unknown_unref_imethod (void) { static ORBit_IMethod *imethod = NULL; if (!imethod) { guint i; ORBit_IMethods *methods; methods = &Bonobo_Unknown__iinterface.methods; for (i = 0; i < methods->_length; i++) { if (!strcmp (methods->_buffer [i].name, "unref")) imethod = &methods->_buffer [i]; } g_assert (imethod != NULL); } return imethod; } #endif /** * bonobo_object_release_unref: * @object: a Bonobo_Unknown corba object * @opt_ev: an optional exception environment * * This function releases a CORBA Object reference; * it also decrements the ref count on the bonobo object. * This is the converse of bonobo_object_dup_ref. We * tolerate object == CORBA_OBJECT_NIL silently. * * Returns: %CORBA_OBJECT_NIL. **/ Bonobo_Unknown bonobo_object_release_unref (Bonobo_Unknown object, CORBA_Environment *opt_ev) { CORBA_Environment *ev, temp_ev; if (object == CORBA_OBJECT_NIL) return CORBA_OBJECT_NIL; if (!opt_ev) { CORBA_exception_init (&temp_ev); ev = &temp_ev; } else ev = opt_ev; Bonobo_Unknown_unref (object, ev); #ifdef ASYNC_UNREFS if (ORBit_small_get_servant (object)) Bonobo_Unknown_unref (object, ev); else ORBit_small_invoke_async (object, get_unknown_unref_imethod (), NULL, NULL, NULL, NULL, ev);*/ #endif CORBA_Object_release (object, ev); if (!opt_ev) CORBA_exception_free (&temp_ev); return CORBA_OBJECT_NIL; } static void impl_Bonobo_Unknown_unref (PortableServer_Servant servant, CORBA_Environment *ev) { BonoboObject *object; object = bonobo_object_from_servant (servant); #ifdef G_ENABLE_DEBUG if(_bonobo_debug_flags & BONOBO_DEBUG_REFS) { #ifndef bonobo_object_unref bonobo_object_trace_refs (object, "remote", 0, FALSE); #else bonobo_object_unref (object); #endif } else #endif /* G_ENABLE_DEBUG */ bonobo_object_unref (object); } /** * bonobo_object_query_local_interface: * @object: A #BonoboObject which is the aggregate of multiple objects. * @repo_id: The id of the interface being queried. * * Returns: A #BonoboObject for the requested interface. */ BonoboObject * bonobo_object_query_local_interface (BonoboObject *object, const char *repo_id) { GList *l; CORBA_Environment ev; g_return_val_if_fail (BONOBO_IS_OBJECT (object), NULL); CORBA_exception_init (&ev); for (l = object->priv->ao->objs; l; l = l->next){ BonoboObject *tryme = l->data; if (CORBA_Object_is_a ( tryme->corba_objref, (char *) repo_id, &ev)) { if (BONOBO_EX (&ev)) { CORBA_exception_free (&ev); continue; } bonobo_object_ref_T (object); return tryme; } } CORBA_exception_free (&ev); return NULL; } static CORBA_Object impl_Bonobo_Unknown_queryInterface (PortableServer_Servant servant, const CORBA_char *repoid, CORBA_Environment *ev) { BonoboObject *object = bonobo_object_from_servant (servant); BonoboObject *local_interface; local_interface = bonobo_object_query_local_interface ( object, repoid); #ifdef G_ENABLE_DEBUG if(_bonobo_debug_flags & BONOBO_DEBUG_REFS) { bonobo_debug_print ("query-interface", "[%p]:[%p]:%s repoid=%s", object, object->priv->ao, G_OBJECT_TYPE_NAME (object), repoid); } #endif /* G_ENABLE_DEBUG */ if (local_interface == NULL) return CORBA_OBJECT_NIL; return CORBA_Object_duplicate (local_interface->corba_objref, ev); } static void bonobo_object_epv_init (POA_Bonobo_Unknown__epv *epv) { epv->ref = impl_Bonobo_Unknown_ref; epv->unref = impl_Bonobo_Unknown_unref; epv->queryInterface = impl_Bonobo_Unknown_queryInterface; } static void bonobo_object_finalize_gobject (GObject *gobject) { BonoboObject *object = (BonoboObject *) gobject; #ifdef G_ENABLE_DEBUG if(_bonobo_debug_flags & BONOBO_DEBUG_LIFECYCLE) bonobo_debug_print ("finalize", "Bonobo Object finalize GObject %p", gobject); #endif /* G_ENABLE_DEBUG */ if (object->priv->ao != NULL) g_error ("g_object_unreffing a bonobo_object that " "still has %d refs", object->priv->ao->ref_count); g_free (object->priv); bonobo_object_parent_class->finalize (gobject); } static void bonobo_object_dummy_destroy (BonoboObject *object) { /* Just to make chaining possibly cleaner */ } static void bonobo_object_set_property (GObject *g_object, guint prop_id, const GValue *value, GParamSpec *pspec) { BonoboObject *object = (BonoboObject *) g_object; switch (prop_id) { case PROP_POA: object->priv->poa = g_value_get_pointer (value); break; default: break; } } static void bonobo_object_get_property (GObject *g_object, guint prop_id, GValue *value, GParamSpec *pspec) { BonoboObject *object = (BonoboObject *) g_object; switch (prop_id) { case PROP_POA: g_value_set_pointer (value, object->priv->poa); break; default: G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); break; } } static void do_corba_setup_T (BonoboObject *object) { CORBA_Object obj; CORBA_Environment ev[1]; BonoboObjectClass *xklass; BonoboObjectClass *klass = BONOBO_OBJECT_GET_CLASS (object); CORBA_exception_init (ev); /* Setup the servant structure */ object->servant._private = NULL; object->servant.vepv = klass->vepv; /* Initialize the servant structure with our POA__init fn */ { for (xklass = klass; xklass && !xklass->poa_init_fn;) xklass = g_type_class_peek_parent (xklass); if (!xklass || !xklass->epv_struct_offset) { /* Also, people using BONOBO_TYPE_FUNC instead of * BONOBO_TYPE_FUNC_FULL might see this; you need * to tell it about the CORBA interface you're * implementing - of course */ g_warning ("It looks like you used g_type_unique " "instead of b_type_unique on type '%s'", G_OBJECT_CLASS_NAME (klass)); return; } xklass->poa_init_fn ((PortableServer_Servant) &object->servant, ev); if (BONOBO_EX (ev)) { char *text = bonobo_exception_get_text (ev); g_warning ("Exception initializing servant '%s'", text); g_free (text); return; } } /* Instantiate a CORBA_Object reference for the servant * assumes the bonobo POA supports implicit activation */ obj = PortableServer_POA_servant_to_reference ( bonobo_object_get_poa (object), &object->servant, ev); if (BONOBO_EX (ev)) { g_warning ("Exception '%s' getting reference for servant", bonobo_exception_get_text (ev)); return; } object->corba_objref = obj; bonobo_running_context_add_object_T (obj); #ifdef G_ENABLE_DEBUG if (!CORBA_Object_is_a (obj, "IDL:Bonobo/Unknown:1.0", ev)) g_error ("Attempt to instantiate non-Bonobo/Unknown " "derived object via. BonoboObject"); #endif CORBA_exception_free (ev); } static GObject * bonobo_object_constructor (GType type, guint n_construct_properties, GObjectConstructParam *construct_properties) { GObject *g_object; BonoboObject *object; g_object = bonobo_object_parent_class->constructor (type, n_construct_properties, construct_properties); if (g_object) { object = (BonoboObject *) g_object; /* Though this make look strange, destruction of this object can only occur when the servant is deactivated by the poa. The poa maintains its own ref count over method invocations and delays finalization which happens only after: bonobo_object_finalize_servant: is invoked */ g_object_ref (g_object); BONOBO_LOCK (); #ifdef G_ENABLE_DEBUG if(_bonobo_debug_flags & BONOBO_DEBUG_REFS) { BonoboAggregateObject *ao = object->priv->ao; bonobo_debug_print ("create", "[%p]:[%p]:%s to %d on poa %p", object, ao, g_type_name (type), ao->ref_count, object->priv->poa); g_assert (g_hash_table_lookup (living_ao_ht, ao) == NULL); g_hash_table_insert (living_ao_ht, ao, ao); } #endif /* G_ENABLE_DEBUG */ if (!g_type_is_a (type, BONOBO_TYPE_FOREIGN_OBJECT)) do_corba_setup_T (object); BONOBO_UNLOCK (); } return g_object; } /* VOID:CORBA_OBJECT,BOXED */ static void bonobo_marshal_VOID__CORBA_BOXED (GClosure *closure, GValue *return_value, guint n_param_values, const GValue *param_values, gpointer invocation_hint, gpointer marshal_data) { typedef void (*GMarshalFunc_VOID__OBJECT_BOXED) (gpointer data1, gpointer arg_1, gpointer arg_2, gpointer data2); register GMarshalFunc_VOID__OBJECT_BOXED callback; register GCClosure *cc = (GCClosure*) closure; register gpointer data1, data2; CORBA_Object arg1; g_return_if_fail (n_param_values == 3); if (G_CCLOSURE_SWAP_DATA (closure)) { data1 = closure->data; data2 = g_value_peek_pointer (param_values + 0); } else { data1 = g_value_peek_pointer (param_values + 0); data2 = closure->data; } callback = (GMarshalFunc_VOID__OBJECT_BOXED) ( marshal_data ? marshal_data : cc->callback); arg1 = bonobo_value_get_corba_object (param_values + 1); callback (data1, arg1, g_value_get_boxed (param_values + 2), data2); CORBA_Object_release (arg1, NULL); } static void bonobo_object_class_init (BonoboObjectClass *klass) { GObjectClass *object_class = (GObjectClass *) klass; /* Ensure that the signature checking is going to work */ g_assert (sizeof (POA_Bonobo_Unknown) == sizeof (gpointer) * 2); g_assert (sizeof (BonoboObjectHeader) * 2 == sizeof (BonoboObject)); if (G_UNLIKELY (!bonobo_is_initialized()) ) g_warning ("Bonobo must be initialized before use"); bonobo_object_parent_class = g_type_class_peek_parent (klass); object_class->set_property = bonobo_object_set_property; object_class->get_property = bonobo_object_get_property; object_class->constructor = bonobo_object_constructor; object_class->finalize = bonobo_object_finalize_gobject; klass->destroy = bonobo_object_dummy_destroy; bonobo_object_signals [DESTROY] = g_signal_new ("destroy", G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (BonoboObjectClass,destroy), NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0); bonobo_object_signals [SYSTEM_EXCEPTION] = g_signal_new ("system_exception", G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (BonoboObjectClass,system_exception), NULL, NULL, bonobo_marshal_VOID__CORBA_BOXED, G_TYPE_NONE, 2, BONOBO_TYPE_STATIC_CORBA_OBJECT, BONOBO_TYPE_STATIC_CORBA_EXCEPTION); g_object_class_install_property (object_class, PROP_POA, g_param_spec_pointer ("poa", _("POA"), _("Custom CORBA POA"), G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY)); } static void bonobo_object_instance_init (GObject *g_object, GTypeClass *klass) { BonoboObject *object = BONOBO_OBJECT (g_object); BonoboAggregateObject *ao; #ifdef G_ENABLE_DEBUG if(_bonobo_debug_flags & BONOBO_DEBUG_OBJECT) { bonobo_debug_print ("object", "bonobo_object_instance init '%s' '%s' -> %p", G_OBJECT_TYPE_NAME (g_object), G_OBJECT_CLASS_NAME (klass), object); } #endif /* G_ENABLE_DEBUG */ /* Some simple debugging - count aggregate allocate */ BONOBO_LOCK (); bonobo_total_aggregates++; bonobo_total_aggregate_refs++; BONOBO_UNLOCK (); /* Setup aggregate */ ao = g_new0 (BonoboAggregateObject, 1); ao->objs = g_list_append (ao->objs, object); ao->ref_count = 1; /* Setup Private fields */ object->priv = g_new (BonoboObjectPrivate, 1); object->priv->ao = ao; object->priv->poa = NULL; /* Setup signatures */ object->object_signature = BONOBO_OBJECT_SIGNATURE; object->servant_signature = BONOBO_SERVANT_SIGNATURE; } /** * bonobo_object_get_type: * * Returns: the GType associated with the base BonoboObject class type. */ GType bonobo_object_get_type (void) { static GType type = 0; if (!type) { GTypeInfo info = { sizeof (BonoboObjectClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) bonobo_object_class_init, NULL, /* class_finalize */ NULL, /* class_data */ sizeof (BonoboObject), 0, /* n_preallocs */ (GInstanceInitFunc) bonobo_object_instance_init }; #ifdef G_ENABLE_DEBUG bonobo_debug_init(); if(_bonobo_debug_flags & BONOBO_DEBUG_REFS) living_ao_ht = g_hash_table_new (NULL, NULL); #endif /* G_ENABLE_DEBUG */ type = g_type_register_static (G_TYPE_OBJECT, "BonoboObject", &info, 0); } return type; } #ifdef G_ENABLE_DEBUG static void bonobo_ao_debug_foreach (gpointer key, gpointer value, gpointer user_data) { BonoboAggregateObject *ao = value; GList *l; g_return_if_fail (ao != NULL); bonobo_debug_print ("object-status", "[%p] %-20s ref_count=%d, interfaces=%d", ao, "", ao->ref_count, g_list_length (ao->objs)); for (l = ao->objs; l; l = l->next) { BonoboObject *object = BONOBO_OBJECT (l->data); bonobo_debug_print ("", "[%p] %-20s corba_objref=[%p]" " g_ref_count=%d", object, G_OBJECT_TYPE_NAME (object), object->corba_objref, G_OBJECT (object)->ref_count); } l = g_list_last (ao->refs); if (l) bonobo_debug_print ("referencing" ,""); for (; l; l = l->prev) { BonoboDebugRefData *descr = l->data; bonobo_debug_print ("", "%-7s - %s:%d", descr->ref ? "ref" : "unref", descr->fn, descr->line); } } #endif /* G_ENABLE_DEBUG */ int bonobo_object_shutdown (void) { #ifdef G_ENABLE_DEBUG if(_bonobo_debug_flags & BONOBO_DEBUG_REFS) { bonobo_debug_print ("shutdown-start", "-------------------------------------------------"); if (living_ao_ht) g_hash_table_foreach (living_ao_ht, bonobo_ao_debug_foreach, NULL); bonobo_debug_print ("living-objects", "living bonobo objects count = %d", g_hash_table_size (living_ao_ht)); bonobo_debug_print ("shutdown-end", "-------------------------------------------------"); } #endif /* G_ENABLE_DEBUG */ if (bonobo_total_aggregates > 0) { g_warning ("Leaked a total of %ld refs to %ld bonobo object(s)", bonobo_total_aggregate_refs, bonobo_total_aggregates); return 1; } return 0; } /** * bonobo_object_add_interface: * @object: The BonoboObject to which an interface is going to be added. * @newobj: The BonoboObject containing the new interface to be added. * * Adds the interfaces supported by @newobj to the list of interfaces * for @object. This function adds the interfaces supported by * @newobj to the list of interfaces support by @object. It should never * be used when the object has been exposed to the world. This is a firm * part of the contract. */ void bonobo_object_add_interface (BonoboObject *object, BonoboObject *newobj) { BonoboAggregateObject *oldao, *ao; GList *l; g_return_if_fail (object->priv->ao->ref_count > 0); g_return_if_fail (newobj->priv->ao->ref_count > 0); if (object->priv->ao == newobj->priv->ao) return; if (newobj->corba_objref == CORBA_OBJECT_NIL) g_warning ("Adding an interface with a NULL Corba objref"); /* * Explanation: * Bonobo Objects should not be assembled after they have been * exposed, or we would be breaking the contract we have with * the other side. */ ao = object->priv->ao; oldao = newobj->priv->ao; ao->ref_count = ao->ref_count + oldao->ref_count - 1; bonobo_total_aggregate_refs--; #ifdef G_ENABLE_DEBUG if(_bonobo_debug_flags & BONOBO_DEBUG_REFS) { bonobo_debug_print ("add_interface", "[%p]:[%p]:%s to [%p]:[%p]:%s ref_count=%d", object, object->priv->ao, G_OBJECT_TYPE_NAME (object), newobj, newobj->priv->ao, G_OBJECT_TYPE_NAME (newobj), ao->ref_count); } #endif /* G_ENABLE_DEBUG */ /* Merge the two AggregateObject lists */ for (l = oldao->objs; l; l = l->next) { BonoboObject *new_if = l->data; #ifdef G_ENABLE_DEBUG if(_bonobo_debug_flags & BONOBO_DEBUG_AGGREGATE) { GList *i; CORBA_Environment ev; CORBA_char *new_id; CORBA_exception_init (&ev); new_id = ORBit_small_get_type_id (new_if->corba_objref, &ev); for (i = ao->objs; i; i = i->next) { BonoboObject *old_if = i->data; if (old_if == new_if) g_error ("attempting to merge identical " "interfaces [%p]", new_if); else { CORBA_char *old_id; old_id = ORBit_small_get_type_id (old_if->corba_objref, &ev); if (!strcmp (new_id, old_id)) g_error ("Aggregating two BonoboObject that implement " "the same interface '%s' [%p]", new_id, new_if); CORBA_free (old_id); } } CORBA_free (new_id); CORBA_exception_free (&ev); } #endif /* G_ENABLE_DEBUG */ ao->objs = g_list_prepend (ao->objs, new_if); new_if->priv->ao = ao; } g_assert (newobj->priv->ao == ao); #ifdef G_ENABLE_DEBUG if(_bonobo_debug_flags & BONOBO_DEBUG_REFS) { BONOBO_LOCK (); g_assert (g_hash_table_lookup (living_ao_ht, oldao) == oldao); g_hash_table_remove (living_ao_ht, oldao); ao->refs = g_list_concat (ao->refs, oldao->refs); BONOBO_UNLOCK (); } #endif /* G_ENABLE_DEBUG */ g_list_free (oldao->objs); g_free (oldao); /* Some simple debugging - count aggregate free */ BONOBO_LOCK (); bonobo_total_aggregates--; BONOBO_UNLOCK (); } /** * bonobo_object_query_interface: * @object: A BonoboObject to be queried for a given interface. * @repo_id: The name of the interface to be queried. * @opt_ev: optional exception environment * * Returns: The CORBA interface named @repo_id for @object. */ CORBA_Object bonobo_object_query_interface (BonoboObject *object, const char *repo_id, CORBA_Environment *opt_ev) { CORBA_Object retval; CORBA_Environment *ev, temp_ev; if (!opt_ev) { CORBA_exception_init (&temp_ev); ev = &temp_ev; } else ev = opt_ev; retval = Bonobo_Unknown_queryInterface ( object->corba_objref, repo_id, ev); if (BONOBO_EX (ev)) retval = CORBA_OBJECT_NIL; if (!opt_ev) CORBA_exception_free (&temp_ev); return retval; } /** * bonobo_object_corba_objref: * @object: A BonoboObject whose CORBA object is requested. * * Returns: The CORBA interface object for which @object is a wrapper. */ CORBA_Object bonobo_object_corba_objref (BonoboObject *object) { g_return_val_if_fail (BONOBO_IS_OBJECT (object), NULL); return object->corba_objref; } /** * bonobo_object_check_env: * @object: The object on which we operate * @ev: CORBA Environment to check * * This routine verifies the @ev environment for any fatal system * exceptions. If a system exception occurs, the object raises a * "system_exception" signal. The idea is that GObjects which are * used to wrap a CORBA interface can use this function to notify * the user if a fatal exception has occurred, causing the object * to become defunct. */ void bonobo_object_check_env (BonoboObject *object, CORBA_Object obj, CORBA_Environment *ev) { g_return_if_fail (ev != NULL); g_return_if_fail (BONOBO_IS_OBJECT (object)); if (!BONOBO_EX (ev)) return; if (ev->_major == CORBA_SYSTEM_EXCEPTION) g_signal_emit ( G_OBJECT (object), bonobo_object_signals [SYSTEM_EXCEPTION], 0, obj, ev); } /** * bonobo_unknown_ping: * @object: a CORBA object reference of type Bonobo::Unknown * @opt_ev: optional exception environment * * Pings the object @object using the ref/unref methods from Bonobo::Unknown. * You can use this one to see if a remote object has gone away. * * Returns: %TRUE if the Bonobo::Unknown @object is alive. */ gboolean bonobo_unknown_ping (Bonobo_Unknown object, CORBA_Environment *opt_ev) { gboolean alive; Bonobo_Unknown unknown; CORBA_Environment *ev, temp_ev; g_return_val_if_fail (object != NULL, FALSE); if (!opt_ev) { CORBA_exception_init (&temp_ev); ev = &temp_ev; } else ev = opt_ev; alive = FALSE; unknown = CORBA_Object_duplicate (object, ev); Bonobo_Unknown_ref (unknown, ev); if (!BONOBO_EX (ev)) { Bonobo_Unknown_unref (unknown, ev); if (!BONOBO_EX (ev)) alive = TRUE; } CORBA_Object_release (unknown, ev); if (!opt_ev) CORBA_exception_free (&temp_ev); return alive; } void bonobo_object_dump_interfaces (BonoboObject *object) { BonoboAggregateObject *ao; GList *l; CORBA_Environment ev; g_return_if_fail (BONOBO_IS_OBJECT (object)); ao = object->priv->ao; CORBA_exception_init (&ev); fprintf (stderr, "references %d\n", ao->ref_count); for (l = ao->objs; l; l = l->next) { BonoboObject *o = l->data; g_return_if_fail (BONOBO_IS_OBJECT (o)); if (o->corba_objref != CORBA_OBJECT_NIL) { CORBA_char *type_id; type_id = ORBit_small_get_type_id (o->corba_objref, &ev); fprintf (stderr, "I/F: '%s'\n", type_id); CORBA_free (type_id); } else fprintf (stderr, "I/F: NIL error\n"); } CORBA_exception_free (&ev); } static gboolean idle_unref_fn (BonoboObject *object) { bonobo_object_unref (object); return FALSE; } void bonobo_object_idle_unref (gpointer object) { g_return_if_fail (BONOBO_IS_OBJECT (object)); g_idle_add ((GSourceFunc) idle_unref_fn, object); } static void unref_list (GSList *l) { for (; l; l = l->next) bonobo_object_unref (l->data); } /** * bonobo_object_list_unref_all: * @list: A list of BonoboObjects *s * * This routine unrefs all valid objects in * the list and then removes them from @list if * they have not already been so removed. **/ void bonobo_object_list_unref_all (GList **list) { GList *l; GSList *unrefs = NULL, *u; g_return_if_fail (list != NULL); for (l = *list; l; l = l->next) { if (l->data && !BONOBO_IS_OBJECT (l->data)) g_warning ("Non object in unref list"); else if (l->data) unrefs = g_slist_prepend (unrefs, l->data); } unref_list (unrefs); for (u = unrefs; u; u = u->next) *list = g_list_remove (*list, u->data); g_slist_free (unrefs); } /** * bonobo_object_list_unref_all: * @list: A list of BonoboObjects *s * * This routine unrefs all valid objects in * the list and then removes them from @list if * they have not already been so removed. **/ void bonobo_object_slist_unref_all (GSList **list) { GSList *l; GSList *unrefs = NULL, *u; g_return_if_fail (list != NULL); for (l = *list; l; l = l->next) { if (l->data && !BONOBO_IS_OBJECT (l->data)) g_warning ("Non object in unref list"); else if (l->data) unrefs = g_slist_prepend (unrefs, l->data); } unref_list (unrefs); for (u = unrefs; u; u = u->next) *list = g_slist_remove (*list, u->data); g_slist_free (unrefs); } /** * bonobo_object: * @p: a pointer to something * * This function can be passed a BonoboObject * or a * PortableServer_Servant, and it will return a BonoboObject *. * * Return value: a BonoboObject or NULL on error. **/ BonoboObject * bonobo_object (gpointer p) { BonoboObjectHeader *header; if (!p) return NULL; header = (BonoboObjectHeader *) p; if (header->object_signature == BONOBO_OBJECT_SIGNATURE) return (BonoboObject *) p; else if (header->object_signature == BONOBO_SERVANT_SIGNATURE) return (BonoboObject *)(((guchar *) header) - BONOBO_OBJECT_HEADER_SIZE); g_warning ("Serious servant -> object mapping error '%p'", p); return NULL; } /** * bonobo_type_setup: * @type: The type to initialize * @init_fn: the POA_init function for the CORBA interface or NULL * @fini_fn: NULL or a custom POA free fn. * @epv_struct_offset: the offset in the class structure where the epv is or 0 * * This function initializes a type derived from BonoboObject, such that * when you instantiate a new object of this type with g_type_new the * CORBA object will be correctly created and embedded. * * Return value: TRUE on success, FALSE on error. **/ gboolean bonobo_type_setup (GType type, BonoboObjectPOAFn init_fn, BonoboObjectPOAFn fini_fn, int epv_struct_offset) { GType p, b_type; int depth; BonoboObjectClass *klass; gpointer *vepv; /* Setup our class data */ klass = g_type_class_ref (type); klass->epv_struct_offset = epv_struct_offset; klass->poa_init_fn = init_fn; klass->poa_fini_fn = fini_fn; /* Calculate how far down the tree we are in epvs */ b_type = bonobo_object_get_type (); for (depth = 0, p = type; p && p != b_type; p = g_type_parent (p)) { BonoboObjectClass *xklass; xklass = g_type_class_peek (p); if (xklass->epv_struct_offset) depth++; } if (!p) { g_warning ("Trying to inherit '%s' from a BonoboObject, but " "no BonoboObject in the ancestory", g_type_name (type)); return FALSE; } #ifdef G_ENABLE_DEBUG if(_bonobo_debug_flags & BONOBO_DEBUG_OBJECT) { bonobo_debug_print ("object", "We are at depth %d with type '%s'", depth, g_type_name (type)); } #endif /* G_ENABLE_DEBUG */ /* Setup the Unknown epv */ bonobo_object_epv_init (&klass->epv); klass->epv._private = NULL; klass->base_epv._private = NULL; klass->base_epv.finalize = bonobo_object_finalize_servant; klass->base_epv.default_POA = NULL; vepv = g_new0 (gpointer, depth + 2); klass->vepv = (POA_Bonobo_Unknown__vepv *) vepv; klass->vepv->_base_epv = &klass->base_epv; klass->vepv->Bonobo_Unknown_epv = &klass->epv; /* Build our EPV */ if (depth > 0) { int i; for (p = type, i = depth; i > 0;) { BonoboObjectClass *xklass; xklass = g_type_class_peek (p); if (xklass->epv_struct_offset) { vepv [i + 1] = ((guchar *)klass) + xklass->epv_struct_offset; i--; } p = g_type_parent (p); } } return TRUE; } /** * bonobo_type_unique: * @parent_type: the parent GType * @init_fn: a POA initialization function * @fini_fn: a POA finialization function or NULL * @epv_struct_offset: the offset into the struct that the epv * commences at, or 0 if we are inheriting a plain GObject * from a BonoboObject, adding no new CORBA interfaces * @info: the standard GTypeInfo. * @type_name: the name of the type being registered. * * This function is the main entry point for deriving bonobo * server interfaces. * * Return value: the constructed GType. **/ GType bonobo_type_unique (GType parent_type, BonoboObjectPOAFn init_fn, BonoboObjectPOAFn fini_fn, int epv_struct_offset, const GTypeInfo *info, const gchar *type_name) { GType type; /* * Since we call g_type_class after the g_type_unique * and before we can return the type to the get_type fn. * it is possible we can re-enter here through eg. a * type check macro, hence we need this guard. */ if ((type = g_type_from_name (type_name))) return type; type = g_type_register_static (parent_type, type_name, info, 0); if (!type) return 0; if (bonobo_type_setup (type, init_fn, fini_fn, epv_struct_offset)) return type; else return 0; } /** * bonobo_object_query_remote: * @unknown: an unknown object ref ( or NIL ) * @repo_id: the interface to query for * @opt_ev: an optional exception environment * * A helper wrapper for query interface * * Return value: the interface or CORBA_OBJECT_NIL **/ Bonobo_Unknown bonobo_object_query_remote (Bonobo_Unknown unknown, const char *repo_id, CORBA_Environment *opt_ev) { Bonobo_Unknown new_if; CORBA_Environment *ev, temp_ev; if (unknown == CORBA_OBJECT_NIL) return CORBA_OBJECT_NIL; if (!opt_ev) { CORBA_exception_init (&temp_ev); ev = &temp_ev; } else ev = opt_ev; new_if = Bonobo_Unknown_queryInterface ( unknown, repo_id, ev); if (BONOBO_EX (ev)) new_if = CORBA_OBJECT_NIL; if (!opt_ev) CORBA_exception_free (ev); return new_if; } /** * bonobo_object_get_poa: * @object: the object associated with an interface * * Gets the POA associated with this part of the * BonoboObject aggregate it is possible to have * different POAs per interface. * * Return value: the poa, never NIL. **/ PortableServer_POA bonobo_object_get_poa (BonoboObject *object) { g_return_val_if_fail (object != CORBA_OBJECT_NIL, bonobo_poa ()); if (object->priv->poa) return object->priv->poa; else return bonobo_poa (); } void bonobo_object_set_poa (BonoboObject *object, PortableServer_POA poa) { /* FIXME: implement me */ g_warning ("This method is a pain, it needs hooks into " "bonobo_object_corba_objref"); } /* ----------- a weak referenced BonoboObject cache object ----------- */ struct _BonoboObjectBag { gulong size; GHashTable *key_to_object; GHashTable *object_to_key; BonoboCopyFunc key_copy_func; GDestroyNotify key_destroy_func; }; BonoboObjectBag * bonobo_object_bag_new (GHashFunc hash_func, GEqualFunc key_equal_func, BonoboCopyFunc key_copy_func, GDestroyNotify key_destroy_func) { BonoboObjectBag *bag; g_return_val_if_fail (hash_func != NULL, NULL); g_return_val_if_fail (key_copy_func != NULL, NULL); g_return_val_if_fail (key_equal_func != NULL, NULL); g_return_val_if_fail (key_destroy_func != NULL, NULL); bag = g_new0 (BonoboObjectBag, 1); bag->key_to_object = g_hash_table_new (hash_func, key_equal_func); bag->object_to_key = g_hash_table_new (NULL, NULL); bag->key_copy_func = key_copy_func; bag->key_destroy_func = key_destroy_func; return bag; } BonoboObject * bonobo_object_bag_get_ref (BonoboObjectBag *bag, gconstpointer key) { BonoboObject *obj; BonoboAggregateObject *ao; g_return_val_if_fail (bag != NULL, NULL); BONOBO_LOCK(); ao = g_hash_table_lookup (bag->key_to_object, key); if (ao) obj = bonobo_object_ref (ao->objs->data); else obj = NULL; BONOBO_UNLOCK(); return obj; } gboolean bonobo_object_bag_add_ref (BonoboObjectBag *bag, gconstpointer key, BonoboObject *object) { gboolean success; g_return_val_if_fail (bag != NULL, FALSE); g_return_val_if_fail (object != NULL, FALSE); BONOBO_LOCK(); if (g_hash_table_lookup (bag->key_to_object, key)) success = FALSE; else if (g_hash_table_lookup (bag->object_to_key, object)) { success = FALSE; g_warning ("Adding the same object with two keys"); } else { gpointer insert_key; BonoboAggregateObject *ao = object->priv->ao; success = TRUE; bag->size++; insert_key = bag->key_copy_func (key); g_hash_table_insert (bag->key_to_object, insert_key, ao); g_hash_table_insert (bag->object_to_key, ao, insert_key); ao->bags = g_list_prepend (ao->bags, bag); } BONOBO_UNLOCK(); return success; } static void bonobo_object_bag_cleanup_T (BonoboAggregateObject *ao) { GList *l; for (l = ao->bags; l; l = l->next) { gpointer key; BonoboObjectBag *bag = l->data; key = g_hash_table_lookup (bag->object_to_key, ao); g_hash_table_remove (bag->object_to_key, ao); g_hash_table_remove (bag->key_to_object, key); g_warning ("FIXME: free the keys outside the lock"); } } void bonobo_object_bag_remove (BonoboObjectBag *bag, gconstpointer key) { gpointer hash_key = NULL; BonoboObject *object; g_return_if_fail (bag != NULL); BONOBO_LOCK(); if ((object = g_hash_table_lookup (bag->key_to_object, key))) { g_hash_table_remove (bag->key_to_object, key); hash_key = g_hash_table_lookup (bag->object_to_key, object); g_hash_table_remove (bag->object_to_key, object); bag->size--; } BONOBO_UNLOCK(); bag->key_destroy_func (hash_key); } static void bag_collect_ref_list_cb (gpointer key, gpointer value, gpointer user_data) { g_ptr_array_add (user_data, bonobo_object_ref (value)); } GPtrArray * bonobo_object_bag_list_ref (BonoboObjectBag *bag) { GPtrArray *refs; g_return_val_if_fail (bag != NULL, NULL); BONOBO_LOCK(); refs = g_ptr_array_sized_new (bag->size); g_hash_table_foreach (bag->key_to_object, bag_collect_ref_list_cb, refs); BONOBO_UNLOCK(); return refs; } typedef struct { GSList *keys; BonoboObjectBag *bag; } BagDestroyClosure; static void bag_collect_key_list_cb (gpointer key, gpointer value, gpointer user_data) { BagDestroyClosure *cl = user_data; BonoboAggregateObject *ao = value; cl->keys = g_slist_prepend (cl->keys, key); ao->bags = g_list_remove (ao->bags, cl->bag); } void bonobo_object_bag_destroy (BonoboObjectBag *bag) { GSList *l; BagDestroyClosure cl; if (!bag) return; BONOBO_LOCK(); cl.bag = bag; cl.keys = NULL; g_hash_table_foreach (bag->key_to_object, bag_collect_key_list_cb, &cl); g_hash_table_destroy (bag->key_to_object); g_hash_table_destroy (bag->object_to_key); g_free (bag); BONOBO_UNLOCK(); for (l = cl.keys; l; l = l->next) bag->key_destroy_func (l->data); g_slist_free (cl.keys); } libbonobo-2.32.1/bonobo/bonobo-event-source.c0000644000076400007640000003003511173072711016013 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /* * bonobo-event-source.c: Generic event emitter. * * Author: * Alex Graveley (alex@ximian.com) * Iain Holmes (iain@ximian.com) * docs, Miguel de Icaza (miguel@ximian.com) * * Copyright (C) 2001, Ximian, Inc. */ #include #include #include #include #include #include #include #include #define PARENT_TYPE BONOBO_TYPE_OBJECT static GObjectClass *bonobo_event_source_parent_class; struct _BonoboEventSourcePrivate { GSList *listeners; /* CONTAINS: ListenerDesc* */ gboolean ignore; gint counter; /* to create unique listener Ids */ }; typedef struct { Bonobo_Listener listener; gchar **event_masks; /* send all events if NULL */ } ListenerDesc; static inline BonoboEventSource * bonobo_event_source_from_servant (PortableServer_Servant servant) { return BONOBO_EVENT_SOURCE (bonobo_object_from_servant (servant)); } static void desc_free (ListenerDesc *desc, CORBA_Environment *ev) { if (desc) { g_strfreev (desc->event_masks); bonobo_object_release_unref (desc->listener, ev); g_free (desc); } } static void impl_Bonobo_EventSource_addListenerWithMask (PortableServer_Servant servant, const Bonobo_Listener l, const CORBA_char *event_mask, CORBA_Environment *ev) { BonoboEventSource *event_source; ListenerDesc *desc; g_return_if_fail (l != CORBA_OBJECT_NIL); event_source = bonobo_event_source_from_servant (servant); if (event_source->priv->ignore) /* Hook for running context */ bonobo_running_context_ignore_object (l); desc = g_new0 (ListenerDesc, 1); desc->listener = bonobo_object_dup_ref (l, ev); if (event_mask) desc->event_masks = g_strsplit (event_mask, ",", 0); event_source->priv->listeners = g_slist_prepend ( event_source->priv->listeners, desc); } static void impl_Bonobo_EventSource_addListener (PortableServer_Servant servant, const Bonobo_Listener l, CORBA_Environment *ev) { impl_Bonobo_EventSource_addListenerWithMask (servant, l, NULL, ev); } static void impl_Bonobo_EventSource_removeListener (PortableServer_Servant servant, const Bonobo_Listener listener, CORBA_Environment *ev) { GSList *l, *next; BonoboEventSourcePrivate *priv; priv = bonobo_event_source_from_servant (servant)->priv; for (l = priv->listeners; l; l = next) { ListenerDesc *desc = l->data; next = l->next; if (CORBA_Object_is_equivalent (listener, desc->listener, ev)) { priv->listeners = g_slist_remove_link ( priv->listeners, l); g_slist_free_1 (l); desc_free (desc, ev); return; } } CORBA_exception_set (ev, CORBA_USER_EXCEPTION, ex_Bonobo_EventSource_UnknownListener, NULL); } /* * if the mask starts with a '=', we do exact compares - else we only check * if the mask is a prefix of name. */ static gboolean event_match (const char *name, gchar **event_masks) { int i = 0, j = 0; while (event_masks[j]) { char *mask = event_masks[j]; if (mask [0] == '=') if (!strcmp (name, mask + 1)) return TRUE; while (name [i] && mask [i] && name [i] == mask [i]) i++; if (mask [i] == '\0') return TRUE; j++; } return FALSE; } /** * bonobo_event_source_has_listener: * @event_source: the Event Source that will emit the event. * @event_name: Name of the event being emitted * * This method determines if there are any listeners for * the event to be broadcast. This can be used to detect * whether it is worth constructing a potentialy expensive * state update, before sending it to no-one. * * Return value: TRUE if it's worth sending, else FALSE **/ gboolean bonobo_event_source_has_listener (BonoboEventSource *event_source, const char *event_name) { GSList *l; gboolean notify; g_return_val_if_fail (BONOBO_IS_EVENT_SOURCE (event_source), FALSE); notify = FALSE; for (l = event_source->priv->listeners; l; l = l->next) { ListenerDesc *desc = (ListenerDesc *) l->data; if (desc->event_masks == NULL || event_match (event_name, desc->event_masks)) { notify = TRUE; break; } } return notify; } /** * bonobo_event_source_notify_listeners: * @event_source: the Event Source that will emit the event. * @event_name: Name of the event being emitted * @opt_value: A CORBA_any value that contains the data that is passed * to interested clients, or NULL for an empty value * @opt_ev: A CORBA_Environment where a failure code can be returned, can be NULL. * * This will notify all clients that have registered with this EventSource * (through the addListener or addListenerWithMask methods) of the availability * of the event named @event_name. The @value CORBA::any value is passed to * all listeners. * * @event_name can not contain comma separators, as commas are used to * separate the various event names. */ void bonobo_event_source_notify_listeners (BonoboEventSource *event_source, const char *event_name, const CORBA_any *opt_value, CORBA_Environment *opt_ev) { GSList *l, *notify; CORBA_Environment *ev, temp_ev; const BonoboArg *my_value; g_return_if_fail (BONOBO_IS_EVENT_SOURCE (event_source)); if (!opt_ev) { CORBA_exception_init (&temp_ev); ev = &temp_ev; } else ev = opt_ev; if (!opt_value) my_value = bonobo_arg_new (BONOBO_ARG_NULL); else my_value = opt_value; notify = NULL; for (l = event_source->priv->listeners; l; l = l->next) { ListenerDesc *desc = (ListenerDesc *) l->data; if (desc->event_masks == NULL || event_match (event_name, desc->event_masks)) { notify = g_slist_prepend ( notify, CORBA_Object_duplicate (desc->listener, ev)); } } bonobo_object_ref (BONOBO_OBJECT (event_source)); for (l = notify; l; l = l->next) { Bonobo_Listener_event (l->data, event_name, my_value, ev); CORBA_Object_release (l->data, ev); } bonobo_object_unref (BONOBO_OBJECT (event_source)); g_slist_free (notify); if (!opt_ev) CORBA_exception_free (ev); if (!opt_value) bonobo_arg_release ((BonoboArg *) my_value); } void bonobo_event_source_notify_listeners_full (BonoboEventSource *event_source, const char *path, const char *type, const char *subtype, const CORBA_any *opt_value, CORBA_Environment *opt_ev) { char *event_name; event_name = bonobo_event_make_name (path, type, subtype); bonobo_event_source_notify_listeners (event_source, event_name, opt_value, opt_ev); g_free (event_name); } static void bonobo_event_source_destroy (BonoboObject *object) { CORBA_Environment ev; BonoboEventSourcePrivate *priv = BONOBO_EVENT_SOURCE (object)->priv; CORBA_exception_init (&ev); while (priv->listeners) { ListenerDesc *d = priv->listeners->data; priv->listeners = g_slist_remove (priv->listeners, d); desc_free (d, &ev); } CORBA_exception_free (&ev); ((BonoboObjectClass *)bonobo_event_source_parent_class)->destroy (object); } static void bonobo_event_source_finalize (GObject *object) { BonoboEventSourcePrivate *priv; priv = BONOBO_EVENT_SOURCE (object)->priv; /* in case of strange re-enterancy */ bonobo_event_source_destroy (BONOBO_OBJECT (object)); g_free (priv); bonobo_event_source_parent_class->finalize (object); } static void bonobo_event_source_class_init (BonoboEventSourceClass *klass) { GObjectClass *oclass = (GObjectClass *) klass; BonoboObjectClass *boclass = (BonoboObjectClass *) klass; POA_Bonobo_EventSource__epv *epv = &klass->epv; bonobo_event_source_parent_class = g_type_class_peek_parent (klass); oclass->finalize = bonobo_event_source_finalize; boclass->destroy = bonobo_event_source_destroy; epv->addListener = impl_Bonobo_EventSource_addListener; epv->addListenerWithMask = impl_Bonobo_EventSource_addListenerWithMask; epv->removeListener = impl_Bonobo_EventSource_removeListener; } static void bonobo_event_source_init (GObject *object) { BonoboEventSource *event_source; event_source = BONOBO_EVENT_SOURCE (object); event_source->priv = g_new0 (BonoboEventSourcePrivate, 1); event_source->priv->listeners = NULL; } BONOBO_TYPE_FUNC_FULL (BonoboEventSource, Bonobo_EventSource, PARENT_TYPE, bonobo_event_source) /** * bonobo_event_source_new: * * Creates a new BonoboEventSource object. Typically this * object will be exposed to clients through CORBA and they * will register and unregister functions to be notified * of events that this EventSource generates. * * To notify clients of an event, use the bonobo_event_source_notify_listeners() * function. * * Returns: A new #BonoboEventSource server object. */ BonoboEventSource * bonobo_event_source_new (void) { return g_object_new (BONOBO_TYPE_EVENT_SOURCE, NULL); } /** * bonobo_event_source_ignore_listeners: * @event_source: * * Instructs the event source to de-register any listeners * that are added from the global running context. **/ void bonobo_event_source_ignore_listeners (BonoboEventSource *event_source) { g_return_if_fail (BONOBO_IS_EVENT_SOURCE (event_source)); event_source->priv->ignore = TRUE; } void bonobo_event_source_client_remove_listener (Bonobo_Unknown object, Bonobo_Listener listener, CORBA_Environment *opt_ev) { Bonobo_Unknown es; CORBA_Environment *ev, temp_ev; g_return_if_fail (object != CORBA_OBJECT_NIL); if (!opt_ev) { CORBA_exception_init (&temp_ev); ev = &temp_ev; } else ev = opt_ev; es = Bonobo_Unknown_queryInterface (object, "IDL:Bonobo/EventSource:1.0", ev); if (!BONOBO_EX (ev) && es) { Bonobo_EventSource_removeListener (es, listener, ev); Bonobo_Unknown_unref (es, ev); } if (!opt_ev) { if (BONOBO_EX (ev)) { char *text = bonobo_exception_get_text (ev); g_warning ("remove_listener failed '%s'", text); g_free (text); } CORBA_exception_free (ev); } } Bonobo_Listener bonobo_event_source_client_add_listener_full (Bonobo_Unknown object, GClosure *event_callback, const char *opt_mask, CORBA_Environment *opt_ev) { BonoboListener *listener = NULL; Bonobo_Listener corba_listener = CORBA_OBJECT_NIL; Bonobo_Unknown es; CORBA_Environment *ev, temp_ev; g_return_val_if_fail (event_callback != NULL, CORBA_OBJECT_NIL); if (!opt_ev) { ev = &temp_ev; CORBA_exception_init (ev); } else ev = opt_ev; es = Bonobo_Unknown_queryInterface (object, "IDL:Bonobo/EventSource:1.0", ev); if (BONOBO_EX (ev) || !es) goto add_listener_end; if (!(listener = bonobo_listener_new_closure (event_callback))) goto add_listener_end; corba_listener = BONOBO_OBJREF (listener); if (opt_mask) Bonobo_EventSource_addListenerWithMask ( es, corba_listener, opt_mask, ev); else Bonobo_EventSource_addListener ( es, corba_listener, ev); corba_listener = CORBA_Object_duplicate (corba_listener, ev); bonobo_object_unref (BONOBO_OBJECT (listener)); bonobo_object_release_unref (es, ev); add_listener_end: if (!opt_ev) { if (BONOBO_EX (ev)) { char *text = bonobo_exception_get_text (ev); g_warning ("add_listener failed '%s'", text); g_free (text); } CORBA_exception_free (ev); } return corba_listener; } void bonobo_event_source_client_add_listener_closure (Bonobo_Unknown object, GClosure *event_callback, const char *opt_mask, CORBA_Environment *opt_ev) { Bonobo_Listener l; l = bonobo_event_source_client_add_listener_full ( object, event_callback, opt_mask, opt_ev); if (l != CORBA_OBJECT_NIL) CORBA_Object_release (l, NULL); } void bonobo_event_source_client_add_listener (Bonobo_Unknown object, BonoboListenerCallbackFn event_callback, const char *opt_mask, CORBA_Environment *opt_ev, gpointer user_data) { bonobo_event_source_client_add_listener_closure ( object, g_cclosure_new (G_CALLBACK (event_callback), user_data, NULL), opt_mask, opt_ev); } libbonobo-2.32.1/bonobo/bonobo-property-bag.c0000644000076400007640000005560111173072711016015 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /* * bonobo-property-bag.c: property bag object implementation. * * Authors: * Nat Friedman (nat@ximian.com) * Michael Meeks (michael@ximian.com) * Dietmar Maurer (dietmar@ximian.com) * * Copyright 2001 Ximian, Inc. */ #include #include #include #include #include #include #define PARENT_TYPE BONOBO_TYPE_OBJECT #define CLASS(o) BONOBO_PROPERTY_BAG_CLASS (G_OBJECT_GET_CLASS (o)) #define BAG_FROM_SERVANT(servant) BONOBO_PROPERTY_BAG (bonobo_object (servant)) static GObjectClass *parent_class = NULL; /* * Internal data structures. */ struct _BonoboPropertyPrivate { GClosure *get_prop; GClosure *set_prop; }; struct _BonoboPropertyBagPrivate { GHashTable *prop_hash; GClosure *get_prop; GClosure *set_prop; }; static void notify_listeners (BonoboPropertyBag *pb, BonoboProperty *prop, const BonoboArg *new_value, CORBA_Environment *opt_ev) { if (prop->flags & Bonobo_PROPERTY_NO_LISTENING) return; bonobo_event_source_notify_listeners_full (pb->es, "Bonobo/Property", "change", prop->name, new_value, opt_ev); } static void bonobo_property_bag_foreach_create_list (gpointer key, gpointer value, gpointer data) { GList **l = (GList **) data; *l = g_list_prepend (*l, value); } /** * bonobo_property_bag_get_prop_list: * @pb: A #BonoboPropertyBag. * * Returns a #GList of #BonoboProperty structures. This function is * private and should only be used internally, or in a PropertyBag * persistence implementation. You should not touch the * #BonoboProperty structure unless you know what you're doing. */ GList * bonobo_property_bag_get_prop_list (BonoboPropertyBag *pb) { GList *l; g_return_val_if_fail (pb != NULL, NULL); g_return_val_if_fail (BONOBO_IS_PROPERTY_BAG (pb), NULL); l = NULL; g_hash_table_foreach (pb->priv->prop_hash, bonobo_property_bag_foreach_create_list, &l); return l; } static Bonobo_KeyList * impl_Bonobo_PropertyBag_getKeys (PortableServer_Servant servant, const CORBA_char *filter, CORBA_Environment *ev) { BonoboPropertyBag *pb = BAG_FROM_SERVANT (servant); Bonobo_KeyList *name_list; GList *props; GList *curr; int len; len = g_hash_table_size (pb->priv->prop_hash); name_list = Bonobo_KeyList__alloc (); if (len == 0) return name_list; name_list->_buffer = CORBA_sequence_CORBA_string_allocbuf (len); CORBA_sequence_set_release (name_list, TRUE); props = bonobo_property_bag_get_prop_list (pb); for (curr = props; curr != NULL; curr = curr->next) { BonoboProperty *prop = curr->data; name_list->_buffer [name_list->_length] = CORBA_string_dup (prop->name); name_list->_length++; } g_list_free (props); return name_list; } static CORBA_TypeCode impl_Bonobo_PropertyBag_getType (PortableServer_Servant servant, const CORBA_char *key, CORBA_Environment *ev) { BonoboPropertyBag *pb = BAG_FROM_SERVANT (servant); BonoboProperty *prop; prop = g_hash_table_lookup (pb->priv->prop_hash, key); if (!prop || !prop->type) { bonobo_exception_set (ev, ex_Bonobo_PropertyBag_NotFound); return TC_null; } return (CORBA_TypeCode) CORBA_Object_duplicate ((CORBA_Object) prop->type, ev); } static CORBA_any * impl_Bonobo_PropertyBag_getValue (PortableServer_Servant servant, const CORBA_char *key, CORBA_Environment *ev) { BonoboPropertyBag *pb = BAG_FROM_SERVANT (servant); BonoboProperty *prop; BonoboArg *arg; prop = g_hash_table_lookup (pb->priv->prop_hash, key); if (!prop || !prop->priv->get_prop) { bonobo_exception_set (ev, ex_Bonobo_PropertyBag_NotFound); return NULL; } bonobo_closure_invoke (prop->priv->get_prop, BONOBO_TYPE_STATIC_CORBA_ANY, &arg, BONOBO_TYPE_PROPERTY_BAG, pb, BONOBO_TYPE_STATIC_CORBA_TYPECODE, prop->type, G_TYPE_UINT, prop->idx, BONOBO_TYPE_STATIC_CORBA_EXCEPTION, ev, G_TYPE_INVALID); return arg; } static Bonobo_PropertySet * impl_Bonobo_PropertyBag_getValues (PortableServer_Servant servant, const CORBA_char *filter, CORBA_Environment *ev) { BonoboPropertyBag *pb = BAG_FROM_SERVANT (servant); Bonobo_PropertySet *set; GList *props; GList *curr; int len; len = g_hash_table_size (pb->priv->prop_hash); set = Bonobo_PropertySet__alloc (); if (len == 0) return set; set->_buffer = CORBA_sequence_Bonobo_Pair_allocbuf (len); CORBA_sequence_set_release (set, TRUE); props = bonobo_property_bag_get_prop_list (pb); for (curr = props; curr != NULL; curr = curr->next) { BonoboProperty *prop = curr->data; BonoboArg *arg; set->_buffer [set->_length].name = CORBA_string_dup (prop->name); bonobo_closure_invoke (prop->priv->get_prop, BONOBO_TYPE_STATIC_CORBA_ANY, &arg, BONOBO_TYPE_PROPERTY_BAG, pb, BONOBO_TYPE_STATIC_CORBA_TYPECODE, prop->type, G_TYPE_UINT, prop->idx, BONOBO_TYPE_STATIC_CORBA_EXCEPTION, ev, G_TYPE_INVALID); set->_buffer [set->_length].value = *arg; set->_length++; } g_list_free (props); return set; } static void impl_Bonobo_PropertyBag_setValue (PortableServer_Servant servant, const CORBA_char *key, const CORBA_any *value, CORBA_Environment *ev) { BonoboPropertyBag *pb = BAG_FROM_SERVANT (servant); BonoboProperty *prop; prop = g_hash_table_lookup (pb->priv->prop_hash, key); if (!prop || !prop->priv->set_prop) { bonobo_exception_set (ev, ex_Bonobo_PropertyBag_NotFound); return; } if (!bonobo_arg_type_is_equal (prop->type, value->_type, ev)) { bonobo_exception_set (ev, ex_Bonobo_PropertyBag_InvalidType); return; } bonobo_closure_invoke (prop->priv->set_prop, G_TYPE_NONE, BONOBO_TYPE_PROPERTY_BAG, pb, BONOBO_TYPE_STATIC_CORBA_ANY, value, G_TYPE_UINT, prop->idx, BONOBO_TYPE_STATIC_CORBA_EXCEPTION, ev, G_TYPE_INVALID); if (prop->flags & Bonobo_PROPERTY_NO_AUTONOTIFY) return; if (!BONOBO_EX (ev)) notify_listeners (pb, prop, value, NULL); } static void impl_Bonobo_PropertyBag_setValues (PortableServer_Servant servant, const Bonobo_PropertySet *set, CORBA_Environment *ev) { BonoboPropertyBag *pb = BAG_FROM_SERVANT (servant); BonoboProperty *prop; int i; for (i = 0; i < set->_length; i++) { prop = g_hash_table_lookup (pb->priv->prop_hash, set->_buffer [i].name); if (!prop || !prop->priv->set_prop) { bonobo_exception_set (ev, ex_Bonobo_PropertyBag_NotFound); return; } if (!bonobo_arg_type_is_equal (prop->type, set->_buffer [i].value._type, ev)) { bonobo_exception_set (ev, ex_Bonobo_PropertyBag_InvalidType); return; } } for (i = 0; i < set->_length; i++) { prop = g_hash_table_lookup (pb->priv->prop_hash, set->_buffer [i].name); bonobo_closure_invoke (prop->priv->set_prop, G_TYPE_NONE, BONOBO_TYPE_PROPERTY_BAG, pb, BONOBO_TYPE_STATIC_CORBA_ANY, &set->_buffer [i].value, G_TYPE_UINT, prop->idx, BONOBO_TYPE_STATIC_CORBA_EXCEPTION, ev, G_TYPE_INVALID); if (BONOBO_EX (ev)) return; if (! (prop->flags & Bonobo_PROPERTY_NO_AUTONOTIFY)) notify_listeners (pb, prop, &set->_buffer [i].value, NULL); } } static CORBA_any * impl_Bonobo_PropertyBag_getDefault (PortableServer_Servant servant, const CORBA_char *key, CORBA_Environment *ev) { BonoboPropertyBag *pb = BAG_FROM_SERVANT (servant); BonoboProperty *prop; if (!(prop = g_hash_table_lookup (pb->priv->prop_hash, key))) { bonobo_exception_set (ev, ex_Bonobo_PropertyBag_NotFound); return NULL; } if (prop->default_value) return bonobo_arg_copy (prop->default_value); else { BonoboArg *value = bonobo_arg_new (prop->type); return value; } } static CORBA_char * impl_Bonobo_PropertyBag_getDocTitle (PortableServer_Servant servant, const CORBA_char *key, CORBA_Environment *ev) { BonoboPropertyBag *pb = BAG_FROM_SERVANT (servant); BonoboProperty *prop; if (!(prop = g_hash_table_lookup (pb->priv->prop_hash, key))) { bonobo_exception_set (ev, ex_Bonobo_PropertyBag_NotFound); return NULL; } return prop->doctitle ? CORBA_string_dup (prop->doctitle) : CORBA_string_dup (""); } static CORBA_char * impl_Bonobo_PropertyBag_getDoc (PortableServer_Servant servant, const CORBA_char *key, CORBA_Environment *ev) { BonoboPropertyBag *pb = BAG_FROM_SERVANT (servant); BonoboProperty *prop; if (!(prop = g_hash_table_lookup (pb->priv->prop_hash, key))) { bonobo_exception_set (ev, ex_Bonobo_PropertyBag_NotFound); return NULL; } return prop->docstring ? CORBA_string_dup (prop->docstring) : CORBA_string_dup (""); } static CORBA_long impl_Bonobo_PropertyBag_getFlags (PortableServer_Servant servant, const CORBA_char *key, CORBA_Environment *ev) { BonoboPropertyBag *pb = BAG_FROM_SERVANT (servant); BonoboProperty *prop; if (!(prop = g_hash_table_lookup (pb->priv->prop_hash, key))) { bonobo_exception_set (ev, ex_Bonobo_PropertyBag_NotFound); return 0; } return prop->flags; } /* * BonoboPropertyBag construction/deconstruction functions. */ static void bonobo_marshal_ANY__TYPECODE_UINT_EXCEPTION (GClosure *closure, GValue *return_value, guint n_param_values, const GValue *param_values, gpointer invocation_hint, gpointer marshal_data) { typedef void (*GMarshalFunc_VOID__BOXED_UINT_BOXED) (gpointer data1, gpointer arg_1, guint arg_2, gpointer arg_3, gpointer data2); register GMarshalFunc_VOID__BOXED_UINT_BOXED callback; register GCClosure *cc = (GCClosure*) closure; register gpointer data1, data2; CORBA_TypeCode tc; BonoboArg *any; g_return_if_fail (n_param_values == 4); if (G_CCLOSURE_SWAP_DATA (closure)) { data1 = closure->data; data2 = g_value_peek_pointer (param_values + 0); } else { data1 = g_value_peek_pointer (param_values + 0); data2 = closure->data; } callback = (GMarshalFunc_VOID__BOXED_UINT_BOXED) (marshal_data ? marshal_data : cc->callback); tc = bonobo_value_get_corba_typecode (param_values + 1); any = bonobo_arg_new (tc); CORBA_Object_release ((CORBA_Object) tc, NULL); callback (data1, any, g_value_get_uint (param_values + 2), g_value_peek_pointer (param_values + 3), data2); g_value_take_boxed (return_value, any); } /** * bonobo_property_bag_construct: * @pb: #BonoboPropertyBag to construct * @get_prop: the property get closure * @set_prop: the property set closure * @es: an event source to aggregate * * Constructor, only for use in wrappers and object derivation, please * refer to the #bonobo_property_bag_new for normal use. * * This function returns @pb, or %NULL in case of error. If it returns %NULL, * the passed in @pb is unrefed. * * Returns: #BonoboPropertyBag pointer or %NULL. */ BonoboPropertyBag * bonobo_property_bag_construct (BonoboPropertyBag *pb, GClosure *get_prop, GClosure *set_prop, BonoboEventSource *es) { pb->es = es; pb->priv->get_prop = bonobo_closure_store (get_prop, bonobo_marshal_ANY__TYPECODE_UINT_EXCEPTION); pb->priv->set_prop = bonobo_closure_store (set_prop, bonobo_marshal_VOID__BOXED_UINT_BOXED); bonobo_object_add_interface (BONOBO_OBJECT (pb), BONOBO_OBJECT (es)); return pb; } /** * bonobo_property_bag_new_full: * @get_prop: the property get closure * @set_prop: the property set closure * @es: an event source to aggregate * * Creates a new property bag with the specified callbacks. * * Returns: A new #BonoboPropertyBag object. */ BonoboPropertyBag * bonobo_property_bag_new_full (GClosure *get_prop, GClosure *set_prop, BonoboEventSource *es) { BonoboPropertyBag *pb; g_return_val_if_fail (es != NULL, NULL); pb = g_object_new (BONOBO_TYPE_PROPERTY_BAG, NULL); return bonobo_property_bag_construct (pb, get_prop, set_prop, es); } /** * bonobo_property_bag_new: * @get_prop_cb: the property get callback * @set_prop_cb: the property set callback * @user_data: user data for the callbacks * * Creates a new property bag with the specified callbacks. * * Returns: A new #BonoboPropertyBag object. */ BonoboPropertyBag * bonobo_property_bag_new (BonoboPropertyGetFn get_prop_cb, BonoboPropertySetFn set_prop_cb, gpointer user_data) { return bonobo_property_bag_new_closure ( get_prop_cb ? g_cclosure_new ( G_CALLBACK (get_prop_cb), user_data, NULL) : NULL, set_prop_cb ? g_cclosure_new ( G_CALLBACK (set_prop_cb), user_data, NULL) : NULL); } /** * bonobo_property_bag_new_closure: * @get_prop: the property get closure * @set_prop: the property set closure * * Creates a new property bag with the specified callbacks. * * Returns: A new #BonoboPropertyBag object. */ BonoboPropertyBag * bonobo_property_bag_new_closure (GClosure *get_prop, GClosure *set_prop) { BonoboEventSource *es; es = bonobo_event_source_new (); return bonobo_property_bag_new_full (get_prop, set_prop, es); } static gboolean bonobo_property_bag_foreach_remove_prop (gpointer key, gpointer value, gpointer user_data) { BonoboProperty *prop = (BonoboProperty *)value; g_free (prop->name); prop->idx = -1; bonobo_arg_release (prop->default_value); g_free (prop->docstring); g_free (prop->doctitle); if (prop->priv->get_prop) g_closure_unref (prop->priv->get_prop); if (prop->priv->set_prop) g_closure_unref (prop->priv->set_prop); g_free (prop->priv); g_free (prop); return TRUE; } static void bonobo_property_bag_finalize (GObject *object) { BonoboPropertyBag *pb = BONOBO_PROPERTY_BAG (object); /* Destroy all properties. */ g_hash_table_foreach_remove (pb->priv->prop_hash, bonobo_property_bag_foreach_remove_prop, NULL); g_hash_table_destroy (pb->priv->prop_hash); if (pb->priv->get_prop) g_closure_unref (pb->priv->get_prop); if (pb->priv->set_prop) g_closure_unref (pb->priv->set_prop); g_free (pb->priv); parent_class->finalize (object); } /* * BonoboPropertyBag property manipulation API. */ /** * bonobo_property_bag_add_full: * @pb: property bag to add to * @name: name of new property * @idx: integer index for fast callback switch statement * @type: the CORBA type eg. TC_long * @default_value: the default value or NULL * @doctitle: the translated documentation title * @docstring: the translated documentation string * @flags: various flags * @get_prop: a per property get callback * @set_prop: a per property set callback * * This adds a property to @pb at the full tilt of complexity. **/ void bonobo_property_bag_add_full (BonoboPropertyBag *pb, const char *name, int idx, BonoboArgType type, BonoboArg *default_value, const char *doctitle, const char *docstring, Bonobo_PropertyFlags flags, GClosure *get_prop, GClosure *set_prop) { BonoboProperty *prop; g_return_if_fail (pb != NULL); g_return_if_fail (BONOBO_IS_PROPERTY_BAG (pb)); g_return_if_fail (name != NULL); g_return_if_fail (type != NULL); g_return_if_fail (g_hash_table_lookup (pb->priv->prop_hash, name) == NULL); if (flags == 0) { /* Compatibility hack */ flags = Bonobo_PROPERTY_READABLE | Bonobo_PROPERTY_WRITEABLE; } if (((flags & Bonobo_PROPERTY_READABLE) && !get_prop) || ((flags & Bonobo_PROPERTY_WRITEABLE) && !set_prop)) { g_warning ("Serious property error, missing get/set fn. " "on %s", name); return; } if (!(flags & Bonobo_PROPERTY_READABLE) && default_value) g_warning ("Assigning a default value to a non readable " "property '%s'", name); prop = g_new0 (BonoboProperty, 1); prop->name = g_strdup (name); prop->idx = idx; prop->type = type; prop->flags = flags; prop->docstring = g_strdup (docstring); prop->doctitle = g_strdup (doctitle); prop->priv = g_new0 (BonoboPropertyPrivate, 1); prop->priv->get_prop = bonobo_closure_store (get_prop, bonobo_marshal_ANY__TYPECODE_UINT_EXCEPTION); prop->priv->set_prop = bonobo_closure_store (set_prop, bonobo_marshal_VOID__BOXED_UINT_BOXED); if (default_value) prop->default_value = bonobo_arg_copy (default_value); g_hash_table_insert (pb->priv->prop_hash, prop->name, prop); } /** * bonobo_property_bag_remove: * @pb: the property bag * @name: name of property to remove. * * removes the property with @name from @b. **/ void bonobo_property_bag_remove (BonoboPropertyBag *pb, const char *name) { gpointer key, value; g_return_if_fail (BONOBO_IS_PROPERTY_BAG (pb)); g_return_if_fail (pb->priv != NULL); g_return_if_fail (pb->priv->prop_hash != NULL); if (g_hash_table_lookup_extended (pb->priv->prop_hash, name, &key, &value)) bonobo_property_bag_foreach_remove_prop (key, value, NULL); } static Bonobo_PropertyFlags flags_gparam_to_bonobo (guint flags) { Bonobo_PropertyFlags f = 0; if (!(flags & G_PARAM_READABLE)) f |= Bonobo_PROPERTY_READABLE; if (!(flags & G_PARAM_WRITABLE)) f |= Bonobo_PROPERTY_WRITEABLE; return f; } #define BONOBO_GTK_MAP_KEY "BonoboGtkMapKey" static GQuark quark_gobject_map = 0; static void get_prop (BonoboPropertyBag *bag, BonoboArg *arg, guint arg_id, CORBA_Environment *ev, gpointer user_data) { GParamSpec *pspec = user_data; GValue new = { 0, }; GObject *obj; if (!(obj = g_object_get_qdata (G_OBJECT (bag), quark_gobject_map))) { bonobo_exception_set (ev, ex_Bonobo_PropertyBag_NotFound); return; } /* g_warning ("Get prop ... %d: %s", arg_id, g_arg->name);*/ g_value_init (&new, G_PARAM_SPEC_VALUE_TYPE (pspec)); g_object_get_property (obj, pspec->name, &new); bonobo_arg_from_gvalue (arg, &new); g_value_unset (&new); } static void set_prop (BonoboPropertyBag *bag, const BonoboArg *arg, guint arg_id, CORBA_Environment *ev, gpointer user_data) { GParamSpec *pspec = user_data; GValue new = { 0, }; GObject *obj; if (!(obj = g_object_get_qdata (G_OBJECT (bag), quark_gobject_map))) { bonobo_exception_set (ev, ex_Bonobo_PropertyBag_NotFound); return; } /* g_warning ("Set prop ... %d: %s", arg_id, g_arg->name);*/ g_value_init (&new, G_PARAM_SPEC_VALUE_TYPE (pspec)); bonobo_arg_to_gvalue (&new, arg); g_object_set_property (obj, pspec->name, &new); g_value_unset (&new); } #undef MAPPING_DEBUG /** * bonobo_property_bag_add_gtk_args: * @pb: destination property bag * @on_instance: the instance to associate the properties with * @pspecs: a list of the parameters to map * @n_params: the size of the list. * * Transfers @params from the @on_instance to the property bag, * setting up a mapping between the two objects property systems. **/ void bonobo_property_bag_map_params (BonoboPropertyBag *pb, GObject *on_instance, const GParamSpec **pspecs, guint n_params) { int i; g_return_if_fail (G_IS_OBJECT (on_instance)); g_return_if_fail (BONOBO_IS_PROPERTY_BAG (pb)); if (!n_params) return; g_return_if_fail (pspecs != NULL); if (g_object_get_qdata (G_OBJECT (pb), quark_gobject_map)) { g_warning ("Cannot proxy two GObjects in the same bag yet"); return; } g_object_set_qdata (G_OBJECT (pb), quark_gobject_map, on_instance); /* Setup types, and names */ for (i = 0; i < n_params; i++) { const GParamSpec *pspec; GType value_type; Bonobo_PropertyFlags flags; BonoboArgType type; pspec = pspecs [i]; value_type = G_PARAM_SPEC_VALUE_TYPE (pspec); type = bonobo_arg_type_from_gtype (value_type); if (!type) { #ifdef MAPPING_DEBUG g_warning ("Can't handle type '%s' on arg '%s'", g_type_name (value_type), pspec->name); #endif continue; } flags = flags_gparam_to_bonobo (pspec->flags); bonobo_property_bag_add_full (pb, g_param_spec_get_name ((GParamSpec *)pspec), i, type, NULL, g_param_spec_get_nick ((GParamSpec *)pspec), g_param_spec_get_blurb ((GParamSpec *)pspec), flags, g_cclosure_new (G_CALLBACK (get_prop), (gpointer) pspec, NULL), g_cclosure_new (G_CALLBACK (set_prop), (gpointer) pspec, NULL)); } } /** * bonobo_property_bag_add: * @pb: property bag to add to * @name: name of new property * @idx: integer index for fast callback switch statement * @type: the CORBA type eg. TC_long * @default_value: the default value or NULL * @doctitle: the translated documentation string * @flags: various flags * * Adds a property to the property bag. **/ void bonobo_property_bag_add (BonoboPropertyBag *pb, const char *name, int idx, BonoboArgType type, BonoboArg *default_value, const char *doctitle, Bonobo_PropertyFlags flags) { g_return_if_fail (pb != NULL); bonobo_property_bag_add_full (pb, name, idx, type, default_value, doctitle, NULL, flags, pb->priv->get_prop, pb->priv->set_prop); } /* Class/object initialization functions. */ static void bonobo_property_bag_class_init (BonoboPropertyBagClass *klass) { GObjectClass *object_class = (GObjectClass *) klass; POA_Bonobo_PropertyBag__epv *epv = &klass->epv; if (!quark_gobject_map) quark_gobject_map = g_quark_from_static_string ( "BonoboGObjectMap"); parent_class = g_type_class_peek_parent (klass); object_class->finalize = bonobo_property_bag_finalize; epv->getKeys = impl_Bonobo_PropertyBag_getKeys; epv->getType = impl_Bonobo_PropertyBag_getType; epv->getValue = impl_Bonobo_PropertyBag_getValue; epv->setValue = impl_Bonobo_PropertyBag_setValue; epv->getValues = impl_Bonobo_PropertyBag_getValues; epv->setValues = impl_Bonobo_PropertyBag_setValues; epv->getDefault = impl_Bonobo_PropertyBag_getDefault; epv->getDocTitle = impl_Bonobo_PropertyBag_getDocTitle; epv->getDoc = impl_Bonobo_PropertyBag_getDoc; epv->getFlags = impl_Bonobo_PropertyBag_getFlags; } static void bonobo_property_bag_init (BonoboPropertyBag *pb) { pb->priv = g_new0 (BonoboPropertyBagPrivate, 1); pb->priv->prop_hash = g_hash_table_new (g_str_hash, g_str_equal); } BONOBO_TYPE_FUNC_FULL (BonoboPropertyBag, Bonobo_PropertyBag, PARENT_TYPE, bonobo_property_bag) libbonobo-2.32.1/bonobo/bonobo-arg.c0000644000076400007640000003561711173072711014160 00000000000000/* -*- mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /* * bonobo-arg.c Bonobo argument support: * * A thin wrapper of CORBA_any's with macros * to assist in handling values safely. * * Author: * Michael Meeks (michael@helixcode.com) * * Copyright 2000, Ximian., Inc. */ #include #include #include #include #include "bonobo-types.h" /* Key: CORBA_TypeCode; Value: BonoboArgToGValueFn. */ static GHashTable *bonobo_arg_to_gvalue_mapping = NULL; /* Key: GType; Value: BonoboArgFromGValueFn */ static GHashTable *bonobo_arg_from_gvalue_mapping = NULL; /** * bonobo_arg_new: * @t: the BonoboArgType eg. TC_CORBA_long * * Create a new BonoboArg with the specified type * the value of the BonoboArg is initially empty. * * Returns: the new #BonoboArg **/ BonoboArg * bonobo_arg_new (BonoboArgType t) { CORBA_any *any = CORBA_any__alloc (); any->_release = TRUE; any->_type = (CORBA_TypeCode) CORBA_Object_duplicate ((CORBA_Object) t, NULL); any->_value = ORBit_small_alloc (t); return any; } /** * bonobo_arg_new_from * @t: the BonoboArgType eg. TC_CORBA_long * @data: the data for the BonoboArg to be created * * Create a new BonoboArg with the specified type and data * * Returns: the new #BonoboArg */ BonoboArg * bonobo_arg_new_from (BonoboArgType t, gconstpointer data) { BonoboArg *arg; arg = CORBA_any__alloc (); arg->_release = TRUE; arg->_type = (CORBA_TypeCode) CORBA_Object_duplicate ((CORBA_Object) t, NULL); arg->_value = ORBit_copy_value (data, t); return arg; } /** * bonobo_arg_release: * @arg: the bonobo arg. * * This frees the memory associated with @arg **/ void bonobo_arg_release (BonoboArg *arg) { if (arg) CORBA_free (arg); } /** * bonobo_arg_copy: * @arg: the bonobo arg * * This function duplicates @a by a deep copy * * Returns: a copy of @arg **/ BonoboArg * bonobo_arg_copy (const BonoboArg *arg) { BonoboArg *copy = CORBA_any__alloc (); if (!arg) { copy->_type = TC_null; g_warning ("Duplicating a NULL Bonobo Arg"); } else CORBA_any__copy (copy, arg); return copy; } #undef MAPPING_DEBUG /** * bonobo_arg_type_from_gruntime: * @id: the GType id. * * This maps a GType to a BonoboArgType * * Return value: the mapped type or %NULL on failure. **/ BonoboArgType bonobo_arg_type_from_gtype (GType id) { switch (id) { case G_TYPE_CHAR: return TC_CORBA_char; case G_TYPE_UCHAR: return TC_CORBA_char; case G_TYPE_BOOLEAN:return TC_CORBA_boolean; case G_TYPE_INT: return TC_CORBA_short; case G_TYPE_UINT: return TC_CORBA_unsigned_short; case G_TYPE_LONG: return TC_CORBA_long; case G_TYPE_ULONG: return TC_CORBA_unsigned_long; case G_TYPE_FLOAT: return TC_CORBA_float; case G_TYPE_DOUBLE: return TC_CORBA_double; case G_TYPE_STRING: return TC_CORBA_string; default: #ifdef MAPPING_DEBUG g_warning ("Unmapped arg type '%d'", id); #endif break; } return NULL; } /** * bonobo_arg_type_to_gtype: * @id: the BonoboArgType * * This maps a BonoboArgType to a GType * * Return value: the mapped type or %0 on failure **/ GType bonobo_arg_type_to_gtype (BonoboArgType id) { CORBA_Environment ev; GType g_type = G_TYPE_NONE; CORBA_exception_init (&ev); if (bonobo_arg_type_is_equal (TC_CORBA_char, id, &ev)) g_type = G_TYPE_CHAR; else if (bonobo_arg_type_is_equal (TC_CORBA_boolean, id, &ev)) g_type = G_TYPE_BOOLEAN; else if (bonobo_arg_type_is_equal (TC_CORBA_short, id, &ev)) g_type = G_TYPE_INT; else if (bonobo_arg_type_is_equal (TC_CORBA_unsigned_short, id, &ev)) g_type = G_TYPE_UINT; else if (bonobo_arg_type_is_equal (TC_CORBA_long, id, &ev)) g_type = G_TYPE_LONG; else if (bonobo_arg_type_is_equal (TC_CORBA_unsigned_long, id, &ev)) g_type = G_TYPE_ULONG; else if (bonobo_arg_type_is_equal (TC_CORBA_float, id, &ev)) g_type = G_TYPE_FLOAT; else if (bonobo_arg_type_is_equal (TC_CORBA_double, id, &ev)) g_type = G_TYPE_DOUBLE; else if (bonobo_arg_type_is_equal (TC_CORBA_string, id, &ev)) g_type = G_TYPE_STRING; #ifdef MAPPING_DEBUG else g_warning ("Unmapped bonobo arg type"); #endif CORBA_exception_free (&ev); return g_type; } #define MAKE_FROM_GVALUE(gtype,gtypename,tcid,unionid,corbatype,corbakind) \ case G_TYPE_##gtype: \ *((corbatype *)a->_value) = (corbatype)g_value_get_##gtypename (value); \ break; /** * bonobo_arg_from_gvalue: * @a: pointer to blank BonoboArg * @value: #GValue to copy * * This maps a GValue @value to a BonoboArg @a; * @a must point to a freshly allocated BonoboArg * eg. such as returned by bonobo_arg_new **/ void bonobo_arg_from_gvalue (BonoboArg *a, const GValue *value) { int id; g_return_if_fail (a != NULL); g_return_if_fail (value != NULL); id = G_VALUE_TYPE (value); switch (id) { case G_TYPE_INVALID: case G_TYPE_NONE: g_warning ("Strange GValue type %s", g_type_name (id)); break; MAKE_FROM_GVALUE (CHAR, char, TC_CORBA_char, char_data, CORBA_char, CORBA_tk_char); MAKE_FROM_GVALUE (UCHAR, uchar, TC_CORBA_char, uchar_data, CORBA_char, CORBA_tk_char); MAKE_FROM_GVALUE (BOOLEAN, boolean, TC_CORBA_boolean, bool_data, CORBA_boolean, CORBA_tk_boolean); MAKE_FROM_GVALUE (INT, int, TC_CORBA_short, int_data, CORBA_short, CORBA_tk_short); MAKE_FROM_GVALUE (UINT, uint, TC_CORBA_unsigned_short, uint_data, CORBA_unsigned_short, CORBA_tk_ushort); MAKE_FROM_GVALUE (LONG, long, TC_CORBA_long, long_data, CORBA_long, CORBA_tk_long); MAKE_FROM_GVALUE (ULONG, ulong, TC_CORBA_unsigned_long, ulong_data, CORBA_unsigned_long, CORBA_tk_ulong); MAKE_FROM_GVALUE (FLOAT, float, TC_CORBA_float, float_data, CORBA_float, CORBA_tk_float); MAKE_FROM_GVALUE (DOUBLE, double, TC_CORBA_double, double_data, CORBA_double, CORBA_tk_double); case G_TYPE_STRING: if (G_VALUE_HOLDS_STRING (value)) *((CORBA_char **)a->_value) = CORBA_string_dup (g_value_get_string (value)); else *((CORBA_char **)a->_value) = CORBA_string_dup (""); break; case G_TYPE_POINTER: g_warning ("We can map user data callbacks locally"); break; case G_TYPE_OBJECT: g_warning ("All objects can be mapped to base gtk types" "in due course"); break; case G_TYPE_ENUM: case G_TYPE_FLAGS: case G_TYPE_BOXED: default: g_warning ("Unmapped GValue type %d", id); break; } } #define MAKE_TO_GVALUE(gtype,gtypename,tcid,unionid,corbatype,corbakind) \ case corbakind: \ g_value_set_##gtypename (value, *((corbatype *)arg->_value)); \ break; /** * bonobo_arg_to_gvalue: * @value: pointer to a blank #GValue * @arg: the BonoboArg to copy * * Maps a BonoboArg to a GtkArg; @a must point * to a blank GtkArg. **/ void bonobo_arg_to_gvalue (GValue *value, const BonoboArg *arg) { int id; g_return_if_fail (value != NULL); g_return_if_fail (arg != NULL); g_return_if_fail (arg->_type != NULL); id = arg->_type->kind; switch (id) { case CORBA_tk_null: case CORBA_tk_void: g_warning ("Strange corba arg type %d", id); break; MAKE_TO_GVALUE (CHAR, char, TC_CORBA_char, char_data, CORBA_char, CORBA_tk_char); /* MAKE_TO_GVALUE (UCHAR, uchar, TC_CORBA_char, uchar_data, CORBA_char, CORBA_tk_char);*/ MAKE_TO_GVALUE (BOOLEAN, boolean, TC_CORBA_boolean, bool_data, CORBA_boolean, CORBA_tk_boolean); MAKE_TO_GVALUE (INT, int, TC_CORBA_short, int_data, CORBA_short, CORBA_tk_short); MAKE_TO_GVALUE (UINT, uint, TC_CORBA_ushort, uint_data, CORBA_unsigned_short, CORBA_tk_ushort); MAKE_TO_GVALUE (LONG, long, TC_CORBA_long, long_data, CORBA_long, CORBA_tk_long); MAKE_TO_GVALUE (ULONG, ulong, TC_CORBA_ulong, ulong_data, CORBA_unsigned_long, CORBA_tk_ulong); MAKE_TO_GVALUE (FLOAT, float, TC_CORBA_float, float_data, CORBA_float, CORBA_tk_float); MAKE_TO_GVALUE (DOUBLE, double, TC_CORBA_double, double_data, CORBA_double, CORBA_tk_double); case CORBA_tk_string: g_value_set_string (value, BONOBO_ARG_GET_STRING (arg)); break; case CORBA_tk_objref: g_warning ("All objects can be mapped to base gtk types" "in due course"); break; case CORBA_tk_sequence: case CORBA_tk_alias: case CORBA_tk_enum: case CORBA_tk_array: case CORBA_tk_union: g_warning ("Clever things can be done for these"); break; default: g_warning ("Unmapped corba arg type %d", id); break; } } /** * bonobo_arg_type_is_equal: * @a: a type code * @b: a type code * @opt_ev: optional exception environment or NULL. * * This compares two #BonoboArgType's in @a and @b. * The @opt_ev is an optional #CORBA_Environment for * exceptions, or %NULL. This function is commutative. * * Return value: %TRUE if equal, %FALSE if different **/ gboolean bonobo_arg_type_is_equal (BonoboArgType a, BonoboArgType b, CORBA_Environment *opt_ev) { CORBA_Environment ev, *my_ev; gboolean retval; if (!opt_ev) { CORBA_exception_init (&ev); my_ev = &ev; } else my_ev = opt_ev; retval = CORBA_TypeCode_equal (a, b, my_ev); if (!opt_ev) CORBA_exception_free (&ev); return retval; } /** * bonobo_arg_is_equal: * @a: a bonobo arg * @b: another bonobo arg * @opt_ev: optional exception environment or %NULL. * * Compares two #BonoboArg's for equivalence; will return %TRUE * if equivalent for all simple cases. For Object references * CORBA sometimes denies 2 object references are equivalent * even if they are [ this is a feature_not_bug ]. * * This function is commutative. * * Return value: %TRUE if @a == @b **/ gboolean bonobo_arg_is_equal (const BonoboArg *a, const BonoboArg *b, CORBA_Environment *opt_ev) { CORBA_Environment ev, *my_ev; gboolean retval; if (!opt_ev) { CORBA_exception_init (&ev); my_ev = &ev; } else my_ev = opt_ev; retval = ORBit_any_equivalent ((CORBA_any *) a, (CORBA_any *) b, my_ev); if (!opt_ev) CORBA_exception_free (&ev); return retval; } /** * bonobo_arg_to_gvalue_alloc: * @arg: source value * @value: destination value * * Converts a #BonoboArg @arg into a #GValue. Unlike * bonobo_arg_to_gvalue(), the destination #GValue does not need to -- * and should not -- be initialized. * * Return value: Returns %TRUE if conversion succeeds, %FALSE otherwise. **/ gboolean bonobo_arg_to_gvalue_alloc (BonoboArg const *arg, GValue *value) { BonoboArgToGValueFn converter; g_assert (bonobo_arg_from_gvalue_mapping); #define TO_GVALUE_CASE(gtypename, bonoboargname, typename, typecode) \ if (CORBA_TypeCode_equal(arg->_type, typecode, NULL)) { \ g_value_init (value, G_TYPE_##gtypename); \ g_value_set_##typename (value, BONOBO_ARG_GET_##bonoboargname(arg)); \ return TRUE; \ } TO_GVALUE_CASE (STRING, STRING, string, TC_CORBA_string); TO_GVALUE_CASE (CHAR, CHAR, char, TC_CORBA_char); TO_GVALUE_CASE (BOOLEAN, BOOLEAN, boolean, TC_CORBA_boolean); TO_GVALUE_CASE (LONG, LONG, long, TC_CORBA_long); TO_GVALUE_CASE (ULONG, ULONG, ulong, TC_CORBA_unsigned_long); TO_GVALUE_CASE (FLOAT, FLOAT, float, TC_CORBA_float); TO_GVALUE_CASE (DOUBLE, DOUBLE, double, TC_CORBA_double); converter = g_hash_table_lookup (bonobo_arg_to_gvalue_mapping, arg->_type); if (converter) converter (arg, value); else return FALSE; return TRUE; } /** * bonobo_arg_to_gvalue_alloc: * @arg: destination value * @value: source value * * Converts a #GValue into a #BonoboArg. Unlike * bonobo_arg_from_gvalue(), the destination #BonoboArg does not need * to -- and should not -- be initialized. * * Return value: Returns %TRUE if conversion succeeds, %FALSE otherwise. **/ gboolean bonobo_arg_from_gvalue_alloc (BonoboArg *arg, GValue const *value) { BonoboArgFromGValueFn converter; g_return_val_if_fail (arg, FALSE); g_return_val_if_fail (value, FALSE); g_assert (bonobo_arg_from_gvalue_mapping); #define FROM_GVALUE_CASE(gtype, gtypename, tcid, corbatype) \ case G_TYPE_##gtype: \ arg->_type = tcid; \ arg->_value = ORBit_alloc_tcval (tcid, 1); \ *((corbatype *)arg->_value) = (corbatype) g_value_get_##gtypename (value); \ arg->_release = CORBA_TRUE; \ return TRUE; switch (G_VALUE_TYPE (value)) { FROM_GVALUE_CASE (CHAR, char, TC_CORBA_char, CORBA_char); FROM_GVALUE_CASE (UCHAR, uchar, TC_CORBA_char, CORBA_char); FROM_GVALUE_CASE (BOOLEAN, boolean, TC_CORBA_boolean, CORBA_boolean); FROM_GVALUE_CASE (INT, int, TC_CORBA_long, CORBA_long); FROM_GVALUE_CASE (UINT, uint, TC_CORBA_unsigned_long, CORBA_unsigned_long); FROM_GVALUE_CASE (LONG, long, TC_CORBA_long, CORBA_long); FROM_GVALUE_CASE (ULONG, ulong, TC_CORBA_unsigned_long, CORBA_unsigned_long); FROM_GVALUE_CASE (FLOAT, float, TC_CORBA_float, CORBA_float); FROM_GVALUE_CASE (DOUBLE, double, TC_CORBA_double, CORBA_double); #undef FROM_GVALUE_FN case G_TYPE_STRING: { const char *str = g_value_get_string (value); arg->_type = TC_CORBA_string; arg->_value = ORBit_alloc_tcval (TC_CORBA_string, 1); if (str) { *((CORBA_char **)arg->_value) = CORBA_string_dup (str); arg->_release = CORBA_TRUE; } else { *((CORBA_char **)arg->_value) = ""; arg->_release = CORBA_FALSE; } return TRUE; } } /* default: try to lookup a converter function */ converter = g_hash_table_lookup (bonobo_arg_from_gvalue_mapping, GUINT_TO_POINTER (G_VALUE_TYPE (value))); if (converter) converter (arg, value); else return FALSE; return TRUE; } /* GValue => BonoboArg converters */ static void __bonobo_arg_from_CORBA_ANY (BonoboArg *out_arg, GValue const *value) { out_arg->_type = TC_CORBA_any; out_arg->_value = bonobo_value_get_corba_any (value); out_arg->_release = CORBA_TRUE; } static void __TC_CORBA_any_to_gvalue (BonoboArg const *arg, GValue *out_value) { g_value_init (out_value, BONOBO_TYPE_CORBA_ANY); bonobo_value_set_corba_any (out_value, arg->_value); } void bonobo_arg_register_from_gvalue_converter (GType gtype, BonoboArgFromGValueFn converter) { g_return_if_fail (bonobo_arg_from_gvalue_mapping != NULL); g_hash_table_insert (bonobo_arg_from_gvalue_mapping, GUINT_TO_POINTER (gtype), converter); } void bonobo_arg_register_to_gvalue_converter (BonoboArgType arg_type, BonoboArgToGValueFn converter) { g_return_if_fail (bonobo_arg_to_gvalue_mapping != NULL); g_hash_table_insert (bonobo_arg_to_gvalue_mapping, arg_type, converter); } void bonobo_arg_init (void) { g_assert (bonobo_arg_to_gvalue_mapping == NULL); g_assert (bonobo_arg_from_gvalue_mapping == NULL); bonobo_arg_to_gvalue_mapping = g_hash_table_new (g_direct_hash, g_direct_equal); bonobo_arg_from_gvalue_mapping = g_hash_table_new (g_direct_hash, g_direct_equal); bonobo_arg_register_from_gvalue_converter (BONOBO_TYPE_CORBA_ANY, __bonobo_arg_from_CORBA_ANY); bonobo_arg_register_to_gvalue_converter (TC_CORBA_any, __TC_CORBA_any_to_gvalue); } libbonobo-2.32.1/bonobo/bonobo-listener.c0000644000076400007640000002112211173072711015216 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /* * bonobo-listener.c: Generic listener interface for callbacks. * * Authors: * Alex Graveley (alex@helixcode.com) * Mike Kestner (mkestner@ameritech.net) * * Copyright (C) 2000, Ximian, Inc. */ #include #include #include #include #include #include #include #define PARENT_TYPE BONOBO_TYPE_OBJECT static GObjectClass *bonobo_listener_parent_class; struct _BonoboListenerPrivate { GClosure *event_callback; }; enum SIGNALS { EVENT_NOTIFY, LAST_SIGNAL }; static guint signals [LAST_SIGNAL] = { 0 }; static void impl_Bonobo_Listener_event (PortableServer_Servant servant, const CORBA_char *event_name, const CORBA_any *args, CORBA_Environment *ev) { BonoboListener *listener; listener = BONOBO_LISTENER (bonobo_object_from_servant (servant)); bonobo_object_ref (BONOBO_OBJECT (listener)); if (listener->priv->event_callback) bonobo_closure_invoke ( listener->priv->event_callback, G_TYPE_NONE, BONOBO_TYPE_LISTENER, listener, G_TYPE_STRING | G_SIGNAL_TYPE_STATIC_SCOPE, event_name, BONOBO_TYPE_STATIC_CORBA_ANY, args, BONOBO_TYPE_STATIC_CORBA_EXCEPTION, ev, G_TYPE_INVALID); g_signal_emit (G_OBJECT (listener), signals [EVENT_NOTIFY], 0, event_name, args, ev); bonobo_object_unref (BONOBO_OBJECT (listener)); } static void bonobo_listener_destroy (BonoboObject *object) { BonoboListener *listener = (BonoboListener *) object; if (listener->priv->event_callback) { g_closure_unref (listener->priv->event_callback); listener->priv->event_callback = NULL; } ((BonoboObjectClass *)bonobo_listener_parent_class)->destroy (object); } static void bonobo_listener_finalize (GObject *object) { BonoboListener *listener; listener = BONOBO_LISTENER (object); g_free (listener->priv); listener->priv = NULL; bonobo_listener_parent_class->finalize (object); } static void bonobo_listener_class_init (BonoboListenerClass *klass) { GObjectClass *oclass = (GObjectClass *) klass; BonoboObjectClass *boclass = (BonoboObjectClass *) klass; POA_Bonobo_Listener__epv *epv = &klass->epv; bonobo_listener_parent_class = g_type_class_peek_parent (klass); oclass->finalize = bonobo_listener_finalize; boclass->destroy = bonobo_listener_destroy; signals [EVENT_NOTIFY] = g_signal_new ( "event_notify", G_TYPE_FROM_CLASS (oclass), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (BonoboListenerClass, event_notify), NULL, NULL, bonobo_marshal_VOID__STRING_BOXED_BOXED, G_TYPE_NONE, 3, G_TYPE_STRING | G_SIGNAL_TYPE_STATIC_SCOPE, BONOBO_TYPE_STATIC_CORBA_ANY, BONOBO_TYPE_STATIC_CORBA_EXCEPTION); epv->event = impl_Bonobo_Listener_event; } static void bonobo_listener_init (GObject *object) { BonoboListener *listener; listener = BONOBO_LISTENER(object); listener->priv = g_new (BonoboListenerPrivate, 1); listener->priv->event_callback = NULL; } BONOBO_TYPE_FUNC_FULL (BonoboListener, Bonobo_Listener, PARENT_TYPE, bonobo_listener) /** * bonobo_listener_new_closure: * @event_closure: closure to be invoked when an event is emitted by the EventSource. * * Creates a generic event listener. The listener invokes the @event_closure * closure and emits an "event_notify" signal when notified of an event. * The signal callback should be of the form: * * * * void some_callback (BonoboListener *listener, * char *event_name, * CORBA_any *any, * CORBA_Environment *ev, * gpointer user_data); * * * * You will typically pass the CORBA_Object reference in the return value * to an EventSource (by invoking EventSource::addListener). * * Returns: A BonoboListener object. */ BonoboListener* bonobo_listener_new_closure (GClosure *event_closure) { BonoboListener *listener; listener = g_object_new (BONOBO_TYPE_LISTENER, NULL); listener->priv->event_callback = bonobo_closure_store ( event_closure, bonobo_marshal_VOID__STRING_BOXED_BOXED); return listener; } /** * bonobo_listener_new: * @event_cb: function to be invoked when an event is emitted by the EventSource. * @user_data: data passed to the functioned pointed by @event_call. * * Creates a generic event listener. The listener calls the @event_callback * function and emits an "event_notify" signal when notified of an event. * The signal callback should be of the form: * * * * void some_callback (BonoboListener *listener, * char *event_name, * CORBA_any *any, * CORBA_Environment *ev, * gpointer user_data); * * * * You will typically pass the CORBA_Object reference in the return value * to an EventSource (by invoking EventSource::addListener). * * Returns: A BonoboListener object. */ BonoboListener * bonobo_listener_new (BonoboListenerCallbackFn event_cb, gpointer user_data) { GClosure *closure; if (event_cb) closure = g_cclosure_new (G_CALLBACK (event_cb), user_data, NULL); else closure = NULL; return bonobo_listener_new_closure (closure); } /** * bonobo_event_make_name: * @idl_path: the IDL part of the event name. * @kind: the kind of the event * @subtype: an optional subtype * * Creates an event name. Event names consist of three parts. The @idl_path is * mainly to create a unique namespace, and should identify the interface * which triggered the event, for example "Bonobo/Property". The @kind denotes * what happened, for example "change". Finally you can use the optional * @subtype to make events more specific. All three parts of the name are * joined together separated by colons. "Bonobo/Property:change" or * "Bonobo/Property:change:autosave" are examples of valid event names. * * Returns: A valid event_name, or NULL on error. */ char * bonobo_event_make_name (const char *idl_path, const char *kind, const char *subtype) { g_return_val_if_fail (idl_path != NULL, NULL); g_return_val_if_fail (kind != NULL, NULL); g_return_val_if_fail (!strchr (idl_path, ':'), NULL); g_return_val_if_fail (!strchr (kind, ':'), NULL); g_return_val_if_fail (!subtype || !strchr (subtype, ':'), NULL); g_return_val_if_fail (strlen (idl_path), NULL); g_return_val_if_fail (strlen (kind), NULL); g_return_val_if_fail (!subtype || strlen (subtype), NULL); if (subtype) return g_strconcat (idl_path, ":", kind, ":", subtype, NULL); else return g_strconcat (idl_path, ":", kind, NULL); } static gboolean bonobo_event_name_valid (const char *event_name) { gint i = 0, c = 0, l = -1; g_return_val_if_fail (event_name != NULL, FALSE); g_return_val_if_fail (strlen (event_name), FALSE); if (event_name [0] == ':') return FALSE; if (event_name [strlen (event_name) - 1] == ':') return FALSE; while (event_name [i]) { if (event_name [i] == ':') { if (l == (i -1)) return FALSE; l = i; c++; } i++; } if ((c == 1) || (c == 2)) return TRUE; return FALSE; } static char * bonobo_event_token (const char *event_name, gint pos) { char **str_array, *res; if (!bonobo_event_name_valid (event_name)) return NULL; str_array = g_strsplit (event_name, ":", 3); res = g_strdup (str_array [pos]); g_strfreev (str_array); return res; } /** * bonobo_event_type: * @event_name: the event name * * The event type consists of the first two parts of the event name, the idl_path * combined with the kind. * * Returns: The event type, or NULL on error. */ char * bonobo_event_type (const char *event_name) { gint i = 0, c = 0; if (!bonobo_event_name_valid (event_name)) return NULL; while (event_name [i]) { if (event_name [i] == ':') c++; if (c == 2) break; i++; } return g_strndup (event_name, i); } /** * bonobo_event_type: * @event_name: the event name * * Returns: The event subtype, or NULL on error. */ char * bonobo_event_subtype (const char *event_name) { return bonobo_event_token (event_name, 2); } /** * bonobo_event_kind: * @event_name: the event name * * Returns: The event kind, or NULL on error. */ char * bonobo_event_kind (const char *event_name) { return bonobo_event_token (event_name, 1); } /** * bonobo_event_idl_path: * @event_name: the event name * * Returns: The event idl path, or NULL on error. */ char * bonobo_event_idl_path (const char *event_name) { return bonobo_event_token (event_name, 0); } libbonobo-2.32.1/bonobo/bonobo-persist-file.h0000644000076400007640000000503711173072711016013 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /* * Bonobo PersistFile * * Author: * Matt Loper (matt@gnome-support.com) * * Copyright 1999, 2000 Helix Code, Inc. */ #ifndef _BONOBO_PERSIST_FILE_H_ #define _BONOBO_PERSIST_FILE_H_ #include #ifndef BONOBO_DISABLE_DEPRECATED G_BEGIN_DECLS #define BONOBO_TYPE_PERSIST_FILE (bonobo_persist_file_get_type ()) #define BONOBO_PERSIST_FILE_TYPE BONOBO_TYPE_PERSIST_FILE /* deprecated, you should use BONOBO_TYPE_PERSIST_FILE */ #define BONOBO_PERSIST_FILE(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), BONOBO_TYPE_PERSIST_FILE, BonoboPersistFile)) #define BONOBO_PERSIST_FILE_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), BONOBO_TYPE_PERSIST_FILE, BonoboPersistFileClass)) #define BONOBO_IS_PERSIST_FILE(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), BONOBO_TYPE_PERSIST_FILE)) #define BONOBO_IS_PERSIST_FILE_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), BONOBO_TYPE_PERSIST_FILE)) typedef struct _BonoboPersistFilePrivate BonoboPersistFilePrivate; typedef struct _BonoboPersistFile BonoboPersistFile; typedef int (*BonoboPersistFileIOFn) (BonoboPersistFile *pf, const CORBA_char *uri, CORBA_Environment *ev, void *closure); struct _BonoboPersistFile { BonoboPersist persist; char *uri; /* * For the sample routines, NULL if we use the ::save and ::load * methods from the class */ BonoboPersistFileIOFn save_fn; BonoboPersistFileIOFn load_fn; void *closure; BonoboPersistFilePrivate *priv; }; typedef struct { BonoboPersistClass parent_class; POA_Bonobo_PersistFile__epv epv; /* methods */ int (*load) (BonoboPersistFile *ps, const CORBA_char *uri, CORBA_Environment *ev); int (*save) (BonoboPersistFile *ps, const CORBA_char *uri, CORBA_Environment *ev); char *(*get_current_file) (BonoboPersistFile *ps, CORBA_Environment *ev); } BonoboPersistFileClass; GType bonobo_persist_file_get_type (void) G_GNUC_CONST; BonoboPersistFile *bonobo_persist_file_new (BonoboPersistFileIOFn load_fn, BonoboPersistFileIOFn save_fn, const gchar *iid, void *closure); BonoboPersistFile *bonobo_persist_file_construct (BonoboPersistFile *pf, BonoboPersistFileIOFn load_fn, BonoboPersistFileIOFn save_fn, const gchar *iid, void *closure); G_END_DECLS #endif /* BONOBO_DISABLE_DEPRECATED */ #endif /* _BONOBO_PERSIST_FILE_H_ */ libbonobo-2.32.1/bonobo/bonobo-moniker-util.c0000644000076400007640000007117611173072711016026 00000000000000/* * bonobo-moniker-util.c * * Authors: * Michael Meeks (michael@helixcode.com) * Ettore Perazzoli (ettore@helixcode.com) * * Copyright (C) 2000 Ximian, Inc. */ #include "config.h" #include #include #include #include #include #include static struct { char *prefix; char *oafiid; } const fast_prefix [] = { { "!", "OAFIID:Bonobo_Moniker_Item" }, { "OAFIID:", "OAFIID:Bonobo_Moniker_Oaf" }, { "OAFAID:", "OAFIID:Bonobo_Moniker_Oaf" }, { "cache:", "OAFIID:Bonobo_Moniker_Cache" }, { "query:(", "OAFIID:Bonobo_Moniker_Query" }, { "new:", "OAFIID:Bonobo_Moniker_New" }, { "conf:", "OAFIID:GNOME_Moniker_Config" }, { NULL, NULL } }; /** * bonobo_moniker_util_parse_name: * @name: a moniker name * @plen: an optional pointer to store the parent length * * This routine finds the rightmost moniker name. For example * it will return "cache:" if you pass in "file:/tmp.txt#cache:". It will * also store the length of the parent string in @plen (13 for the above * example) * * Return value: the name of the rightmost moniker **/ const char * bonobo_moniker_util_parse_name (const char *name, int *plen) { int i, c, l; const char *rval; g_return_val_if_fail (name != NULL, NULL); l = strlen (name); for (i = l - 1; i >= 0; i--) { if (name [i] == '!' || name [i] == '#') { if (name [i] == '!') rval = &name [i]; else rval = &name [i + 1]; if (!i || (name [i-1] == '!' || name [i-1] == '#')) { if (plen) *plen = i; return rval; } if (i) --i; c = 0; while (i && name [i] == '\\') { c++; i--; } if (plen) *plen = i + c + 1; if (!(c % 2)) return rval; } } if (plen) *plen = 0; return name; } static char * moniker_id_from_nickname (const CORBA_char *name) { int i; for (i = 0; fast_prefix [i].prefix; i++) { int len = strlen (fast_prefix [i].prefix); if (!g_ascii_strncasecmp (fast_prefix [i].prefix, name, len)) { return fast_prefix [i].oafiid; } } return NULL; } /* * get_full_interface_name: * @ifname: original name: can be in form Bonobo/Control * * Return value: full name eg. IDL:Bonobo/Control:1.0 */ static gchar * get_full_interface_name (const char *ifname) { int len, had_ver; const char *a; char *retval, *b; g_return_val_if_fail (ifname != NULL, NULL); len = strlen (ifname); retval = g_new (char, len + 4 + 4 + 1); strcpy (retval, "IDL:"); a = ifname; b = retval + 4; if (ifname [0] == 'I' && ifname [1] == 'D' && ifname [2] == 'L' && ifname [3] == ':') a += 4; for (had_ver = 0; (*b = *a); a++, b++) { if (*a == ':') had_ver = 1; } if (!had_ver) strcpy (b, ":1.0"); return retval; } static gchar * query_from_name (const char *name) { char *prefix, *query; int len; for (len = 0; name [len]; len++) { if (name [len] == ':') { len++; break; } } prefix = g_strndup (name, len); query = g_strdup_printf ( "repo_ids.has ('IDL:Bonobo/Moniker:1.0') AND " "bonobo:moniker.has ('%s')", prefix); g_free (prefix); return query; } /** * bonobo_moniker_util_get_parent_name: * @moniker: the moniker * @opt_ev: an optional corba exception environment * * This gets the name of the parent moniker ( recursively * all of the parents of this moniker ). * * Return value: the name; use CORBA_free to release it. **/ CORBA_char * bonobo_moniker_util_get_parent_name (Bonobo_Moniker moniker, CORBA_Environment *opt_ev) { CORBA_Environment ev, *my_ev; Bonobo_Moniker parent; CORBA_char *name; bonobo_return_val_if_fail (moniker != CORBA_OBJECT_NIL, NULL, opt_ev); if (!opt_ev) { CORBA_exception_init (&ev); my_ev = &ev; } else my_ev = opt_ev; parent = Bonobo_Moniker_getParent (moniker, my_ev); if (BONOBO_EX (my_ev) || parent == CORBA_OBJECT_NIL) { if (!opt_ev) CORBA_exception_free (&ev); return NULL; } name = Bonobo_Moniker_getName (parent, my_ev); if (BONOBO_EX (my_ev)) name = NULL; bonobo_object_release_unref (parent, NULL); if (!opt_ev) CORBA_exception_free (&ev); return name; } /** * bonobo_moniker_util_qi_return: * @object: the unknown to query * @requested_interface: the desired interface * @ev: a corba exception environment * * A helper function to share code from the end of a resolve * implementation; this ensures that the returned object is of * the correct interface by doing a queryInterface on the object. * * Return value: an handle to the requested interface **/ Bonobo_Unknown bonobo_moniker_util_qi_return (Bonobo_Unknown object, const CORBA_char *requested_interface, CORBA_Environment *ev) { Bonobo_Unknown retval = CORBA_OBJECT_NIL; if (BONOBO_EX (ev)) return CORBA_OBJECT_NIL; if (object == CORBA_OBJECT_NIL) { bonobo_exception_general_error_set ( ev, NULL, _("Failed to activate object")); return CORBA_OBJECT_NIL; } retval = Bonobo_Unknown_queryInterface ( object, requested_interface, ev); if (BONOBO_EX (ev)) { retval = CORBA_OBJECT_NIL; goto release_unref_object; } if (retval == CORBA_OBJECT_NIL) { CORBA_exception_set (ev, CORBA_USER_EXCEPTION, ex_Bonobo_Moniker_InterfaceNotFound, NULL); goto release_unref_object; } release_unref_object: bonobo_object_release_unref (object, ev); return retval; } /** * bonobo_moniker_util_seek_std_separator: * @str: the string to scan * @min_idx: the minimum offset at which a separator can be found. * * This looks for a moniker separator in a moniker's name string. * * See also bonobo_moniker_util_escape * * Return value: the position of the separator, or a * pointer to the end of the string. **/ int bonobo_moniker_util_seek_std_separator (const CORBA_char *str, int min_idx) { int i; g_return_val_if_fail (str != NULL, 0); g_return_val_if_fail (min_idx >= 0, 0); for (i = 0; i < min_idx; i++) { if (!str [i]) { g_warning ("Serious separator error, seeking in '%s' < %d", str, min_idx); return i; } } for (; str [i]; i++) { if (str [i] == '\\' && str [i + 1]) i++; else if (str [i] == '!' || str [i] == '#') break; } return i; } /** * bonobo_moniker_util_escape: * @string: an unescaped string * @offset: an offset of characters to ignore * * Escapes possible separator characters inside a moniker * these include '!' and '#', the '\' escaping character is * used. * * Return value: an escaped sub-string. **/ char * bonobo_moniker_util_escape (const char *string, int offset) { gchar *escaped, *p; guint backslashes = 0; int i, len; g_return_val_if_fail (string != NULL, NULL); len = strlen (string); g_return_val_if_fail (offset < len, NULL); for (i = offset; i < len; i++) { if (string [i] == '\0') break; else if (string [i] == '\\' || string [i] == '#' || string [i] == '!') backslashes ++; } if (!backslashes) return g_strdup (&string [offset]); p = escaped = g_new (gchar, len - offset + backslashes + 1); for (i = offset; i < len; i++) { if (string [i] == '\\' || string [i] == '#' || string [i] == '!') *p++ = '\\'; *p++ = string [i]; } *p = '\0'; return escaped; } /** * bonobo_moniker_util_unescape: * @string: a string * @num_chars: the number of chars to process. * * This routine strips @num_chars: from the start of * @string, discards the rest, and proceeds to un-escape * characters escaped with '\'. * * Return value: the unescaped sub string. **/ char * bonobo_moniker_util_unescape (const char *string, int num_chars) { gchar *escaped, *p; guint backslashes = 0; int i; g_return_val_if_fail (string != NULL, NULL); for (i = 0; i < num_chars; i++) { if (string [i] == '\0') break; else if (string [i] == '\\') { if (string [i + 1] == '\\') i++; backslashes ++; } } if (!backslashes) return g_strndup (string, num_chars); p = escaped = g_new (gchar, strlen (string) - backslashes + 1); for (i = 0; i < num_chars; i++) { if (string [i] == '\\') { if (!string [++i]) break; *p++ = string [i]; } else *p++ = string [i]; } *p = '\0'; return escaped; } /** * bonobo_moniker_client_new_from_name: * @name: the name of a moniker * @opt_ev: an optional corba exception environment * * This routine tries to parse a Moniker in string form * * eg. file:/tmp/a.tar.gz#gzip:#tar: * * into a CORBA_Object representation of this that can * later be resolved against an interface. * * Return value: a new Moniker handle **/ Bonobo_Moniker bonobo_moniker_client_new_from_name (const CORBA_char *name, CORBA_Environment *opt_ev) { CORBA_Environment ev, *my_ev; const char *mname; const char *iid; Bonobo_Unknown object; Bonobo_Moniker moniker; bonobo_return_val_if_fail (name != NULL || name [0], CORBA_OBJECT_NIL, opt_ev); if (!opt_ev) { CORBA_exception_init (&ev); my_ev = &ev; } else my_ev = opt_ev; mname = bonobo_moniker_util_parse_name (name, NULL); if (!(iid = moniker_id_from_nickname (mname))) { char *query; query = query_from_name (mname); object = bonobo_activation_activate (query, NULL, 0, NULL, my_ev); g_free (query); if (BONOBO_EX (my_ev)) { if (!opt_ev) CORBA_exception_free (&ev); return CORBA_OBJECT_NIL; } if (object == CORBA_OBJECT_NIL) { bonobo_exception_set (opt_ev, ex_Bonobo_Moniker_UnknownPrefix); if (!opt_ev) CORBA_exception_free (&ev); return CORBA_OBJECT_NIL; } } else { object = bonobo_activation_activate_from_id ((gchar *) iid, 0, NULL, my_ev); if (BONOBO_EX (my_ev)) { if (!opt_ev) CORBA_exception_free (&ev); return CORBA_OBJECT_NIL; } if (object == CORBA_OBJECT_NIL) { g_warning ("Activating '%s' returned nothing", iid); if (!opt_ev) CORBA_exception_free (&ev); return CORBA_OBJECT_NIL; } } moniker = Bonobo_Unknown_queryInterface (object, "IDL:Bonobo/Moniker:1.0", my_ev); if (BONOBO_EX (my_ev) || moniker == CORBA_OBJECT_NIL) { bonobo_object_release_unref (object, NULL); if (moniker == CORBA_OBJECT_NIL) g_warning ("Moniker object '%s' doesn't implement " "the Moniker interface", iid); if (!opt_ev) CORBA_exception_free (&ev); return CORBA_OBJECT_NIL; } bonobo_object_release_unref (object, NULL); Bonobo_Moniker_setName (moniker, name, my_ev); if (BONOBO_EX (my_ev)) { bonobo_object_release_unref (moniker, NULL); if (!opt_ev) CORBA_exception_free (&ev); return CORBA_OBJECT_NIL; } return moniker; } /** * bonobo_moniker_client_get_name: * @moniker: a moniker handle * @opt_ev: a corba exception environment * * Return value: the name of the moniker. **/ CORBA_char * bonobo_moniker_client_get_name (Bonobo_Moniker moniker, CORBA_Environment *opt_ev) { CORBA_Environment ev, *my_ev; CORBA_char *name; bonobo_return_val_if_fail (moniker != CORBA_OBJECT_NIL, NULL, opt_ev); if (!opt_ev) { CORBA_exception_init (&ev); my_ev = &ev; } else my_ev = opt_ev; name = Bonobo_Moniker_getName (moniker, my_ev); if (BONOBO_EX (my_ev)) name = NULL; if (!opt_ev) CORBA_exception_free (&ev); return name; } static void init_default_resolve_options (Bonobo_ResolveOptions *options) { options->flags = 0; options->timeout = -1; } /** * bonobo_moniker_client_resolve_default: * @moniker: a moniker * @interface_name: the name of the interface we want returned as the result * @opt_ev: an optional corba exception environment * * This resolves the moniker object against the given interface, * with a default set of resolve options. * * Return value: the interfaces resolved to or CORBA_OBJECT_NIL **/ Bonobo_Unknown bonobo_moniker_client_resolve_default (Bonobo_Moniker moniker, const char *interface_name, CORBA_Environment *opt_ev) { CORBA_Environment ev, *my_ev; Bonobo_ResolveOptions options; Bonobo_Unknown retval; char *real_if; g_return_val_if_fail (interface_name != NULL, CORBA_OBJECT_NIL); g_return_val_if_fail (moniker != CORBA_OBJECT_NIL, CORBA_OBJECT_NIL); real_if = get_full_interface_name (interface_name); init_default_resolve_options (&options); if (!opt_ev) { CORBA_exception_init (&ev); my_ev = &ev; } else my_ev = opt_ev; retval = Bonobo_Moniker_resolve (moniker, &options, real_if, my_ev); if (!opt_ev) CORBA_exception_free (&ev); g_free (real_if); return retval; } /** * bonobo_get_object: * @name: the name of a moniker * @interface_name: the name of the interface we want returned as the result * @opt_ev: an optional corba exception environment * * This encapsulates both the parse stage and resolve process of using * a moniker, providing a simple VisualBasic like mechanism for using the * object name space. * * Return value: the requested interface or CORBA_OBJECT_NIL **/ Bonobo_Unknown bonobo_get_object (const CORBA_char *name, const char *interface_name, CORBA_Environment *opt_ev) { CORBA_Environment ev, *my_ev; Bonobo_Moniker moniker; Bonobo_Unknown retval; bonobo_return_val_if_fail (name != NULL, CORBA_OBJECT_NIL, opt_ev); bonobo_return_val_if_fail (interface_name != NULL, CORBA_OBJECT_NIL, opt_ev); if (!opt_ev) { CORBA_exception_init (&ev); my_ev = &ev; } else my_ev = opt_ev; moniker = bonobo_moniker_client_new_from_name (name, my_ev); if (BONOBO_EX (my_ev) || moniker == CORBA_OBJECT_NIL) { if (!opt_ev) CORBA_exception_free (&ev); return CORBA_OBJECT_NIL; } retval = bonobo_moniker_client_resolve_default ( moniker, interface_name, my_ev); bonobo_object_release_unref (moniker, NULL); if (BONOBO_EX (my_ev)) { if (!opt_ev) CORBA_exception_free (&ev); return CORBA_OBJECT_NIL; } if (!opt_ev) CORBA_exception_free (&ev); return retval; } static ORBit_IMethod *set_name_method = NULL; static ORBit_IMethod *resolve_method = NULL; static void setup_methods (void) { set_name_method = &Bonobo_Moniker__iinterface.methods._buffer[3]; resolve_method = &Bonobo_Moniker__iinterface.methods._buffer[4]; /* If these blow the IDL changed order, and the above indexes need updating */ g_assert (!strcmp (set_name_method->name, "setName")); g_assert (!strcmp (resolve_method->name, "resolve")); } typedef struct { char *name; BonoboMonikerAsyncFn cb; gpointer user_data; Bonobo_Unknown moniker; } parse_async_ctx_t; static void parse_async_ctx_free (parse_async_ctx_t *ctx) { if (ctx) { g_free (ctx->name); g_free (ctx); } } static void async_parse_cb (CORBA_Object object, ORBit_IMethod *m_data, ORBitAsyncQueueEntry *aqe, gpointer user_data, CORBA_Environment *ev) { parse_async_ctx_t *ctx = user_data; if (BONOBO_EX (ev)) ctx->cb (CORBA_OBJECT_NIL, ev, ctx->user_data); else { ORBit_small_demarshal_async (aqe, NULL, NULL, ev); ctx->cb (ctx->moniker, ev, ctx->user_data); } bonobo_object_release_unref (ctx->moniker, ev); parse_async_ctx_free (ctx); } static void async_activation_cb (CORBA_Object activated_object, const char *error_reason, gpointer user_data) { parse_async_ctx_t *ctx = user_data; CORBA_Environment ev; CORBA_exception_init (&ev); if (error_reason) { /* badly designed oaf interface */ CORBA_exception_set (&ev, CORBA_USER_EXCEPTION, ex_Bonobo_Moniker_UnknownPrefix, NULL); ctx->cb (CORBA_OBJECT_NIL, &ev, ctx->user_data); parse_async_ctx_free (ctx); } else { ctx->moniker = Bonobo_Unknown_queryInterface ( activated_object, "IDL:Bonobo/Moniker:1.0", &ev); if (BONOBO_EX (&ev)) { ctx->cb (CORBA_OBJECT_NIL, &ev, ctx->user_data); parse_async_ctx_free (ctx); } else if (ctx->moniker == CORBA_OBJECT_NIL) { CORBA_exception_set (&ev, CORBA_USER_EXCEPTION, ex_Bonobo_Moniker_InterfaceNotFound, NULL); ctx->cb (CORBA_OBJECT_NIL, &ev, ctx->user_data); parse_async_ctx_free (ctx); } else { gpointer args [] = { NULL }; args[0] = &ctx->name; if (!set_name_method) setup_methods (); ORBit_small_invoke_async ( ctx->moniker, set_name_method, async_parse_cb, ctx, args, NULL, &ev); if (BONOBO_EX (&ev)) { ctx->cb (CORBA_OBJECT_NIL, &ev, ctx->user_data); parse_async_ctx_free (ctx); } bonobo_object_release_unref (activated_object, &ev); } } CORBA_exception_free (&ev); } /** * bonobo_moniker_client_new_from_name_async: * @name: the name * @ev: a corba exception environment * @cb: the async callback that gets the response * @user_data: user context data to pass to that callback * * An asynchronous version of new_from_name **/ void bonobo_moniker_client_new_from_name_async (const CORBA_char *name, CORBA_Environment *ev, BonoboMonikerAsyncFn cb, gpointer user_data) { parse_async_ctx_t *ctx; const char *iid; const char *mname; g_return_if_fail (ev != NULL); g_return_if_fail (cb != NULL); g_return_if_fail (name != NULL); if (!name [0]) { cb (CORBA_OBJECT_NIL, ev, user_data); return; } mname = bonobo_moniker_util_parse_name (name, NULL); ctx = g_new0 (parse_async_ctx_t, 1); ctx->name = g_strdup (name); ctx->cb = cb; ctx->user_data = user_data; ctx->moniker = CORBA_OBJECT_NIL; if (!(iid = moniker_id_from_nickname (mname))) { char *query; query = query_from_name (mname); bonobo_activation_activate_async (query, NULL, 0, async_activation_cb, ctx, ev); g_free (query); } else bonobo_activation_activate_from_id_async ((gchar *) iid, 0, async_activation_cb, ctx, ev); } typedef struct { Bonobo_Moniker moniker; BonoboMonikerAsyncFn cb; gpointer user_data; } resolve_async_ctx_t; static void resolve_async_cb (CORBA_Object object, ORBit_IMethod *m_data, ORBitAsyncQueueEntry *aqe, gpointer user_data, CORBA_Environment *ev) { resolve_async_ctx_t *ctx = user_data; if (BONOBO_EX (ev)) ctx->cb (CORBA_OBJECT_NIL, ev, ctx->user_data); else { ORBit_small_demarshal_async (aqe, &object, NULL, ev); if (BONOBO_EX (ev)) object = CORBA_OBJECT_NIL; ctx->cb (object, ev, ctx->user_data); } bonobo_object_release_unref (ctx->moniker, ev); g_free (ctx); } /** * bonobo_moniker_resolve_async: * @moniker: the moniker to resolve * @options: resolve options * @interface_name: the name of the interface we want returned as the result * @ev: a corba exception environment * @cb: the async callback that gets the response * @user_data: user context data to pass to that callback * * An async version of bonobo_moniker_client_resolve **/ void bonobo_moniker_resolve_async (Bonobo_Moniker moniker, Bonobo_ResolveOptions *options, const char *interface_name, CORBA_Environment *ev, BonoboMonikerAsyncFn cb, gpointer user_data) { resolve_async_ctx_t *ctx; gpointer args [] = { NULL, NULL }; args[0] = &options; args[1] = &interface_name; g_return_if_fail (ev != NULL); g_return_if_fail (cb != NULL); g_return_if_fail (moniker != CORBA_OBJECT_NIL); g_return_if_fail (options != CORBA_OBJECT_NIL); g_return_if_fail (interface_name != CORBA_OBJECT_NIL); ctx = g_new0 (resolve_async_ctx_t, 1); ctx->cb = cb; ctx->user_data = user_data; ctx->moniker = bonobo_object_dup_ref (moniker, ev); if (!resolve_method) setup_methods (); ORBit_small_invoke_async ( ctx->moniker, resolve_method, resolve_async_cb, ctx, args, NULL, ev); } /** * bonobo_moniker_resolve_async_default: * @moniker: * @interface_name: the name of the interface we want returned as the result * @ev: a corba exception environment * @cb: the async callback that gets the response * @user_data: user context data to pass to that callback * * An async version of bonobo_moniker_client_resolve_default **/ void bonobo_moniker_resolve_async_default (Bonobo_Moniker moniker, const char *interface_name, CORBA_Environment *ev, BonoboMonikerAsyncFn cb, gpointer user_data) { Bonobo_ResolveOptions options; g_return_if_fail (ev != NULL); g_return_if_fail (cb != NULL); g_return_if_fail (moniker != CORBA_OBJECT_NIL); g_return_if_fail (interface_name != CORBA_OBJECT_NIL); init_default_resolve_options (&options); bonobo_moniker_resolve_async (moniker, &options, interface_name, ev, cb, user_data); } typedef struct { char *interface_name; BonoboMonikerAsyncFn cb; gpointer user_data; } get_object_async_ctx_t; static void get_object_async_ctx_free (get_object_async_ctx_t *ctx) { if (ctx) { g_free (ctx->interface_name); g_free (ctx); } } static void get_async2_cb (Bonobo_Unknown object, CORBA_Environment *ev, gpointer user_data) { get_object_async_ctx_t *ctx = user_data; ctx->cb (object, ev, ctx->user_data); get_object_async_ctx_free (ctx); } static void get_async1_cb (Bonobo_Unknown object, CORBA_Environment *ev, gpointer user_data) { get_object_async_ctx_t *ctx = user_data; if (BONOBO_EX (ev)) { ctx->cb (CORBA_OBJECT_NIL, ev, ctx->user_data); get_object_async_ctx_free (ctx); } else { bonobo_moniker_resolve_async_default ( object, ctx->interface_name, ev, get_async2_cb, ctx); if (BONOBO_EX (ev)) { ctx->cb (CORBA_OBJECT_NIL, ev, ctx->user_data); get_object_async_ctx_free (ctx); } } } /** * bonobo_get_object_async: * @name: * @interface_name: the name of the interface we want returned as the result * @ev: a corba exception environment * @cb: the async callback that gets the response * @user_data: user context data to pass to that callback * * An async version of bonobo_get_object **/ void bonobo_get_object_async (const CORBA_char *name, const char *interface_name, CORBA_Environment *ev, BonoboMonikerAsyncFn cb, gpointer user_data) { get_object_async_ctx_t *ctx; g_return_if_fail (ev != NULL); g_return_if_fail (cb != NULL); g_return_if_fail (name != NULL); g_return_if_fail (interface_name != NULL); ctx = g_new0 (get_object_async_ctx_t, 1); ctx->cb = cb; ctx->user_data = user_data; ctx->interface_name = get_full_interface_name (interface_name); bonobo_moniker_client_new_from_name_async ( name, ev, get_async1_cb, ctx); } /** * bonobo_moniker_client_equal: * @moniker: The moniker * @name: a moniker name eg. file:/demo/a.jpeg * @opt_ev: optional CORBA_Environment or NULL. * * Compare a full @moniker with the given @name * * Return value: TRUE if they are the same **/ gboolean bonobo_moniker_client_equal (Bonobo_Moniker moniker, const CORBA_char *name, CORBA_Environment *opt_ev) { CORBA_long l; CORBA_Environment *real_ev, tmp_ev; g_return_val_if_fail (name != NULL, FALSE); g_return_val_if_fail (moniker != CORBA_OBJECT_NIL, FALSE); if (opt_ev) real_ev = opt_ev; else { CORBA_exception_init (&tmp_ev); real_ev = &tmp_ev; } l = Bonobo_Moniker_equal (moniker, name, real_ev); if (BONOBO_EX (real_ev)) l = 0; if (!opt_ev) CORBA_exception_free (&tmp_ev); return l != 0; } /* A product of dire API design ... */ static CosNaming_Name* bonobo_string_to_CosNaming_Name (const CORBA_char *string, CORBA_Environment * ev) { CosNaming_Name *retval = CosNaming_Name__alloc (); GPtrArray *ids = g_ptr_array_new (); GPtrArray *kinds = g_ptr_array_new (); gint pos = 0, i, len; gboolean used = FALSE; GPtrArray *append_to; g_ptr_array_add (ids, g_string_new (NULL)); g_ptr_array_add (kinds, g_string_new (NULL)); append_to = ids; while (*string) { gchar append; switch (*string) { case '.': used = TRUE; g_return_val_if_fail (append_to != kinds, NULL); append_to = kinds; append = '\0'; break; case '/': if (used) { pos++; g_ptr_array_add (ids, g_string_new (NULL)); g_ptr_array_add (kinds, g_string_new (NULL)); g_assert (ids->len == pos + 1 && kinds->len == pos + 1); } used = FALSE; append_to = ids; append = '\0'; break; case '\\': string++; g_return_val_if_fail (*string == '.' || *string == '/' || *string == '\\', NULL); append = *string; break; default: append = *string; used = TRUE; break; } if (append) g_string_append_c (g_ptr_array_index (append_to, pos), append); string++; } len = used ? pos + 1 : pos; retval->_buffer = CORBA_sequence_CosNaming_NameComponent_allocbuf (len); retval->_length = len; retval->_maximum = len; for (i = 0; i < len; i++) { GString *id = g_ptr_array_index (ids, i); GString *kind = g_ptr_array_index (kinds, i); retval->_buffer[i].id = CORBA_string_dup (id->str); retval->_buffer[i].kind = CORBA_string_dup (kind->str); } for (i = 0; i <= pos; i++) { g_string_free (g_ptr_array_index (ids, i), TRUE); g_string_free (g_ptr_array_index (kinds, i), TRUE); } g_ptr_array_free (ids, TRUE); g_ptr_array_free (kinds, TRUE); return retval; } static CosNaming_NamingContext lookup_naming_context (GList *path, CORBA_Environment *ev) { CosNaming_NamingContext ns, ctx, new_ctx; CosNaming_Name *cn; GList *l; g_return_val_if_fail (path != NULL, CORBA_OBJECT_NIL); g_return_val_if_fail (path->data != NULL, CORBA_OBJECT_NIL); g_return_val_if_fail (ev != NULL, CORBA_OBJECT_NIL); ns = bonobo_activation_name_service_get (ev); if (BONOBO_EX (ev) || ns == CORBA_OBJECT_NIL) return CORBA_OBJECT_NIL; ctx = ns; for (l = path; l != NULL; l = l->next) { cn = bonobo_string_to_CosNaming_Name (l->data, ev); if (BONOBO_EX (ev) || !cn) break; new_ctx = CosNaming_NamingContext_resolve (ctx, cn, ev); if (BONOBO_USER_EX (ev, ex_CosNaming_NamingContext_NotFound)) { CORBA_exception_init (ev); new_ctx = CosNaming_NamingContext_bind_new_context ( ctx, cn, ev); if (BONOBO_EX (ev) || new_ctx == CORBA_OBJECT_NIL) { CORBA_free (cn); break; } } CORBA_free (cn); if (BONOBO_EX (ev)) new_ctx = CORBA_OBJECT_NIL; CORBA_Object_release (ctx, ev); ctx = new_ctx; if (!ctx) break; } return ctx; } static CosNaming_Name * url_to_name (char *url, char *opt_kind) { CosNaming_Name *retval; g_return_val_if_fail (url != NULL, NULL); retval = CosNaming_Name__alloc (); retval->_length = retval->_maximum = 1; retval->_buffer = CORBA_sequence_CosNaming_NameComponent_allocbuf (1); retval->_buffer[0].id = CORBA_string_dup (url); retval->_buffer[0].kind = CORBA_string_dup (opt_kind ? opt_kind : ""); return retval; } static CosNaming_NamingContext get_url_context (char *oafiid, CORBA_Environment *ev) { CosNaming_NamingContext ctx = NULL; GList *path = NULL; path = g_list_append (path, "GNOME"); path = g_list_append (path, "URL"); path = g_list_append (path, oafiid); ctx = lookup_naming_context (path, ev); g_list_free (path); return ctx; } void bonobo_url_register (char *oafiid, char *url, char *mime_type, Bonobo_Unknown object, CORBA_Environment *ev) { CosNaming_NamingContext ctx = NULL; CosNaming_Name *cn; bonobo_return_if_fail (ev != NULL, NULL); bonobo_return_if_fail (oafiid != NULL, ev); bonobo_return_if_fail (url != NULL, ev); bonobo_return_if_fail (object != CORBA_OBJECT_NIL, ev); ctx = get_url_context (oafiid, ev); if (BONOBO_EX (ev) || ctx == CORBA_OBJECT_NIL) return; cn = url_to_name (url, mime_type); CosNaming_NamingContext_bind (ctx, cn, object, ev); CORBA_free (cn); CORBA_Object_release (ctx, NULL); } void bonobo_url_unregister (char *oafiid, char *url, CORBA_Environment *ev) { CosNaming_NamingContext ctx = NULL; CosNaming_Name *cn; bonobo_return_if_fail (ev != NULL, NULL); bonobo_return_if_fail (oafiid != NULL, ev); bonobo_return_if_fail (url != NULL, ev); ctx = get_url_context (oafiid, ev); if (BONOBO_EX (ev) || ctx == CORBA_OBJECT_NIL) return; cn = url_to_name (url, NULL); CosNaming_NamingContext_unbind (ctx, cn, ev); CORBA_free (cn); CORBA_Object_release (ctx, NULL); } Bonobo_Unknown bonobo_url_lookup (char *oafiid, char *url, CORBA_Environment *ev) { CosNaming_NamingContext ctx = NULL; CosNaming_Name *cn; Bonobo_Unknown retval; bonobo_return_val_if_fail (ev != NULL, CORBA_OBJECT_NIL, NULL); bonobo_return_val_if_fail (oafiid != NULL, CORBA_OBJECT_NIL, ev); bonobo_return_val_if_fail (url != NULL, CORBA_OBJECT_NIL, ev); ctx = get_url_context (oafiid, ev); if (BONOBO_EX (ev) || ctx == CORBA_OBJECT_NIL) return CORBA_OBJECT_NIL; cn = url_to_name (url, NULL); retval = CosNaming_NamingContext_resolve (ctx, cn, ev); CORBA_free (cn); CORBA_Object_release (ctx, NULL); return retval; } libbonobo-2.32.1/bonobo/bonobo-application.c0000644000076400007640000005153111173072711015703 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ #include "config.h" #include #include "bonobo-application.h" #include "bonobo-app-client.h" #include #include "bonobo-marshal.h" #include "bonobo-arg.h" #include "bonobo-main.h" #include "bonobo-types.h" #include enum SIGNALS { MESSAGE, NEW_INSTANCE, LAST_SIGNAL }; enum PROPERTIES { PROP_0, PROP_NAME }; static guint signals [LAST_SIGNAL] = { 0 }; typedef struct { BonoboAppHookFunc func; gpointer data; } BonoboAppHook; typedef struct { GClosure *closure; GType return_type; } BonoboAppMessageDesc; static GArray *bonobo_application_hooks = NULL; /* * A pointer to our parent object class */ static gpointer parent_class; /* ------------ Forward function declarations ------------ */ static void bonobo_application_invoke_hooks (BonoboApplication *app); static void bonobo_app_message_desc_free (BonoboAppMessageDesc *msgdesc) { if (msgdesc->closure) g_closure_unref (msgdesc->closure); g_free (msgdesc); } static gboolean _bonobo_application_message_accumulator(GSignalInvocationHint *ihint, GValue *return_accu, const GValue *handler_return, gpointer dummy) { gboolean null_gvalue; null_gvalue = (G_VALUE_HOLDS (handler_return, G_TYPE_VALUE) && (g_value_peek_pointer (handler_return) == NULL)); if (!null_gvalue) { g_value_copy (handler_return, return_accu); return FALSE; /* stop emission */ } return TRUE; /* continue emission */ } static void bonobo_application_finalize (GObject *object) { BonoboApplication *self = BONOBO_APPLICATION (object); if (self->message_list) { g_slist_foreach (self->message_list, (GFunc) CORBA_free, NULL); g_slist_free (self->message_list); self->message_list = NULL; } g_free (self->name); self->name = NULL; if (self->closure_hash) { g_hash_table_destroy (self->closure_hash); self->closure_hash = NULL; } G_OBJECT_CLASS (parent_class)->finalize (object); } static CORBA_any * impl_Bonobo_Application_message (PortableServer_Servant servant, const CORBA_char *msg, const Bonobo_Application_ArgList *args, CORBA_Environment *ev) { BonoboApplication *app = BONOBO_APPLICATION (bonobo_object (servant)); GValue *signal_return = NULL; GValueArray *signal_args; int i; CORBA_any *rv; GValue value; signal_args = g_value_array_new (args->_length); memset (&value, 0, sizeof (value)); for (i = 0; i < args->_length; ++i) { if (bonobo_arg_to_gvalue_alloc (&args->_buffer [i], &value)) { g_value_array_append (signal_args, &value); g_value_unset (&value); } else { g_warning ("Failed to convert type '%s' to GValue", args->_buffer[i]._type->name); } } g_signal_emit (app, signals [MESSAGE], g_quark_from_string (msg), msg, signal_args, &signal_return); g_value_array_free (signal_args); rv = CORBA_any__alloc (); if (signal_return) { if (!bonobo_arg_from_gvalue_alloc (rv, signal_return)) { g_warning ("Failed to convert type '%s' to CORBA::any", g_type_name (G_VALUE_TYPE (signal_return))); rv->_type = TC_void; } g_value_unset (signal_return); g_free (signal_return); } else rv->_type = TC_void; return rv; } /** * bonobo_application_new_instance: * @app: a #BonoboApplication * @argc: number of elements in @argv * @argv: array of strings (command-line arguments) * * Emit the "new-instance" signal of the #BonoboApplication with the * given arguments. * * Return value: signal return value **/ gint bonobo_application_new_instance (BonoboApplication *app, gint argc, gchar *argv[]) { gint rv; gchar **new_argv = g_new (gchar *, argc + 1); memcpy (new_argv, argv, argc * sizeof(gchar *)); new_argv[argc] = NULL; g_signal_emit (app, signals [NEW_INSTANCE], 0, argc, new_argv, &rv); g_free (new_argv); return rv; } static GValue * bonobo_application_run_closures (BonoboApplication *self, const char *name, GValueArray *args) { BonoboAppMessageDesc *desc; desc = g_hash_table_lookup (self->closure_hash, name); if (desc) { GValue *retval = g_new0 (GValue, 1); GValue *params = g_newa (GValue, args->n_values + 1); memset (params + 0, 0, sizeof (GValue)); g_value_init (params + 0, G_TYPE_OBJECT); g_value_set_object (params + 0, self); memcpy (params + 1, args->values, args->n_values * sizeof (GValue)); g_value_init (retval, desc->return_type); g_closure_invoke (desc->closure, retval, args->n_values + 1, params, NULL /* invocation_hint */); g_value_unset (params + 0); return retval; } return NULL; } /* Handle the "new-instance" standard message */ static GValue * bonobo_application_real_message (BonoboApplication *app, const char *name, GValueArray *args) { return bonobo_application_run_closures (app, name, args); } static CORBA_long impl_Bonobo_Application_newInstance (PortableServer_Servant servant, Bonobo_Application_argv_t const *argv, CORBA_Environment *ev) { BonoboApplication *app = BONOBO_APPLICATION (bonobo_object (servant)); CORBA_long retval; retval = bonobo_application_new_instance (app, argv->_length, argv->_buffer); return retval; } static inline void message_desc_copy (Bonobo_Application_MessageDesc *dest, Bonobo_Application_MessageDesc *src) { dest->name = CORBA_string_dup (src->name); dest->return_type = src->return_type; dest->types._buffer = src->types._buffer; dest->types._length = src->types._length; dest->types._maximum = src->types._maximum; dest->types._release = CORBA_FALSE; dest->description = CORBA_string_dup (src->description); } static Bonobo_Application_MessageList * impl_Bonobo_Application_listMessages (PortableServer_Servant servant, CORBA_Environment *ev) { BonoboApplication *app = BONOBO_APPLICATION (bonobo_object (servant)); int nmessages; GSList *l; int i; Bonobo_Application_MessageList *msglist; nmessages = g_slist_length (app->message_list); msglist = Bonobo_Application_MessageList__alloc (); msglist->_length = msglist->_maximum = nmessages; msglist->_buffer = Bonobo_Application_MessageList_allocbuf (nmessages); for (l = app->message_list, i = 0; l; l = l->next, ++i) message_desc_copy (&msglist->_buffer [i], (Bonobo_Application_MessageDesc *) l->data); CORBA_sequence_set_release (msglist, CORBA_TRUE); return msglist; } static CORBA_string impl_Bonobo_Application_getName (PortableServer_Servant servant, CORBA_Environment *ev) { BonoboApplication *app = BONOBO_APPLICATION (bonobo_object (servant)); return CORBA_string_dup (app->name); } static void set_property (GObject *g_object, guint prop_id, const GValue *value, GParamSpec *pspec) { BonoboApplication *self = (BonoboApplication *) g_object; switch (prop_id) { case PROP_NAME: g_free (self->name); self->name = g_value_dup_string (value); break; default: break; } } static void get_property (GObject *object, guint prop_id, GValue *value, GParamSpec *pspec) { BonoboApplication *self = (BonoboApplication *) object; switch (prop_id) { case PROP_NAME: g_value_set_string (value, self->name); break; default: G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); break; } } static GObject * bonobo_application_constructor (GType type, guint n_construct_properties, GObjectConstructParam *construct_properties) { GObject *object; BonoboApplication *self; object = G_OBJECT_CLASS (parent_class)->constructor (type, n_construct_properties, construct_properties); self = BONOBO_APPLICATION (object); bonobo_application_invoke_hooks (self); return object; } static void bonobo_application_class_init (BonoboApplicationClass *klass) { GObjectClass *object_class = (GObjectClass *) klass; POA_Bonobo_Application__epv *epv = &klass->epv; parent_class = g_type_class_peek_parent (klass); object_class->finalize = bonobo_application_finalize; object_class->constructor = bonobo_application_constructor; object_class->set_property = set_property; object_class->get_property = get_property; signals [MESSAGE] = g_signal_new ( "message", BONOBO_TYPE_APPLICATION, G_SIGNAL_RUN_LAST | G_SIGNAL_DETAILED, G_STRUCT_OFFSET (BonoboApplicationClass, message), _bonobo_application_message_accumulator, NULL, bonobo_marshal_BOXED__STRING_BOXED, G_TYPE_VALUE, 2, /* return_type, nparams */ G_TYPE_STRING | G_SIGNAL_TYPE_STATIC_SCOPE, G_TYPE_VALUE_ARRAY); signals [NEW_INSTANCE] = g_signal_new ( "new-instance", BONOBO_TYPE_APPLICATION, G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (BonoboApplicationClass, new_instance), NULL, NULL, /* accumulator and accumulator data */ bonobo_marshal_INT__INT_BOXED, G_TYPE_INT, 2, /* return_type, nparams */ G_TYPE_INT, G_TYPE_STRV); g_object_class_install_property (object_class, PROP_NAME, g_param_spec_string ("name", _("Name"), _("Application unique name"), NULL, G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY)); klass->message = bonobo_application_real_message; epv->message = impl_Bonobo_Application_message; epv->listMessages = impl_Bonobo_Application_listMessages; epv->newInstance = impl_Bonobo_Application_newInstance; epv->getName = impl_Bonobo_Application_getName; } static void bonobo_application_init (BonoboApplication *self) { self->closure_hash = g_hash_table_new_full (g_str_hash, g_str_equal, g_free,(GDestroyNotify) bonobo_app_message_desc_free); } BONOBO_TYPE_FUNC_FULL (BonoboApplication, Bonobo_Application, BONOBO_TYPE_OBJECT, bonobo_application) /** * bonobo_application_new: * @name: application name * * Creates a new #BonoboApplication object. * * Return value: a new #BonoboApplication **/ BonoboApplication * bonobo_application_new (const char *name) { GObject *obj; BonoboApplication *app; obj = g_object_new (BONOBO_TYPE_APPLICATION, "poa", bonobo_poa_get_threaded (ORBIT_THREAD_HINT_ALL_AT_IDLE), "name", name, NULL); app = (BonoboApplication *) obj; return app; } static inline CORBA_TypeCode _gtype_to_typecode (GType gtype) { static GHashTable *hash = NULL; if (!hash) { hash = g_hash_table_new (g_direct_hash, g_direct_equal); #define mapping(gtype_, corba_type)\ g_hash_table_insert (hash, GUINT_TO_POINTER (gtype_), corba_type); mapping (G_TYPE_NONE, TC_void); mapping (G_TYPE_BOOLEAN, TC_CORBA_boolean); mapping (G_TYPE_INT, TC_CORBA_long); mapping (G_TYPE_UINT, TC_CORBA_unsigned_long); mapping (G_TYPE_LONG, TC_CORBA_long); mapping (G_TYPE_ULONG, TC_CORBA_unsigned_long); mapping (G_TYPE_FLOAT, TC_CORBA_float); mapping (G_TYPE_DOUBLE, TC_CORBA_double); mapping (G_TYPE_STRING, TC_CORBA_string); mapping (BONOBO_TYPE_CORBA_ANY, TC_CORBA_any); #undef mapping } return (CORBA_TypeCode) g_hash_table_lookup (hash, GUINT_TO_POINTER (G_TYPE_INT)); } /** * bonobo_application_register_message_v: * @app: a #BonoboApplication * @name: message string identifier * @description: a string containing a human readable description of the message * @opt_closure: a #GClosure that will be called for this message, or %NULL; * Function takes ownership of this closure. * @return_type: Message return #GType. * @arg_types: %G_TYPE_NONE -terminated vector of argument #GType's * * See bonobo_application_register_message(). **/ void bonobo_application_register_message_v (BonoboApplication *app, const gchar *name, const gchar *description, GClosure *opt_closure, GType return_type, GType const arg_types[]) { Bonobo_Application_MessageDesc *msgdesc; int i, arg_types_len; for (arg_types_len = -1; arg_types[++arg_types_len] != G_TYPE_NONE;); msgdesc = Bonobo_Application_MessageDesc__alloc (); msgdesc->return_type = _gtype_to_typecode (return_type); msgdesc->name = CORBA_string_dup (name); msgdesc->description = CORBA_string_dup (description); msgdesc->types._length = msgdesc->types._maximum = arg_types_len; msgdesc->types._buffer = CORBA_sequence_CORBA_TypeCode_allocbuf (arg_types_len); for (i = 0; arg_types[i] != G_TYPE_NONE; ++i) msgdesc->types._buffer[i] = _gtype_to_typecode (arg_types[i]); app->message_list = g_slist_prepend (app->message_list, msgdesc); if (opt_closure) { BonoboAppMessageDesc *desc = g_new0 (BonoboAppMessageDesc, 1); g_closure_ref (opt_closure); g_closure_sink (opt_closure); desc->closure = opt_closure; desc->return_type = return_type; g_hash_table_insert (app->closure_hash, g_strdup (name), desc); } } /** * bonobo_application_register_message_va: * @app: a #BonoboApplication * @name: message string identifier * @description: a string containing a human readable description of the message * @opt_closure: a #GClosure that will be called for this message, or * %NULL; Function takes ownership of this closure. * @return_type: Message return #GType. * @first_arg_type: #GType of first argument of message, or %G_TYPE_NONE * @var_args: %G_TYPE_NONE -terminated valist of argument #GType's * * See bonobo_application_register_message(). **/ void bonobo_application_register_message_va (BonoboApplication *app, const gchar *name, const gchar *description, GClosure *opt_closure, GType return_type, GType first_arg_type, va_list var_args) { GArray *arg_types; GType gtype; arg_types = g_array_new (FALSE, FALSE, sizeof(GType)); if (first_arg_type != G_TYPE_NONE) { g_array_append_val (arg_types, first_arg_type); while ((gtype = va_arg (var_args, GType)) != G_TYPE_NONE) g_array_append_val (arg_types, gtype); } gtype = G_TYPE_NONE; g_array_append_val (arg_types, gtype); bonobo_application_register_message_v (app, name, description, opt_closure, return_type, (const GType *) arg_types->data); g_array_free (arg_types, TRUE); } /** * bonobo_application_register_message: * @app: a #BonoboApplication * @name: message string identifier * @description: a string containing a human readable description of the message * @opt_closure: a #GClosure that will be called for this message, or * %NULL; Function takes ownership of this closure. * @return_type: Message return #GType. * @first_arg_type: #GType of first argument of message, or %G_TYPE_NONE. * @...: %G_TYPE_NONE -terminated list of argument #GType's * * Registers a new message type that the application supports. **/ void bonobo_application_register_message (BonoboApplication *app, const gchar *name, const gchar *description, GClosure *opt_closure, GType return_type, GType first_arg_type, ...) { va_list var_args; va_start (var_args, first_arg_type); bonobo_application_register_message_va (app, name, description, opt_closure, return_type, first_arg_type, var_args); va_end (var_args); } /** * bonobo_application_create_serverinfo: * @app: a #BonoboApplication * @envp: %NULL-terminated string vector, containing the enviroment * variables we wish to include in the server description. * * This utility function provides a simple way to contruct a valid * serverinfo XML string. * * Return value: a newly allocated string; caller must g_free() it. **/ gchar * bonobo_application_create_serverinfo (BonoboApplication *app, gchar const *envp[]) { GString *description; int i; gchar *rv; description = g_string_new ("\n"); g_string_append_printf (description, " \n" " \n" " \n" " \n" " \n" " \n" " \n", app->name, app->name, app->name); if (envp && envp[0]) { g_string_append (description, " \n"); for (i = 0; envp[i]; ++i) g_string_append_printf (description, " \n", envp[i]); g_string_append (description, " "); } g_string_append (description, " \n" ""); rv = description->str; g_string_free (description, FALSE); return rv; } /** * bonobo_application_register_unique: * @app: a #BonoboApplication instance * @serverinfo: the XML server * description. bonobo_application_create_server_description() may be * used to easily create such description. * @client: output parameter that will contain a client object, in * case another instance has already running, or %NULL if we are the * first to register. * * Try to register the running application, or check for an existing * application already registered and get a reference to it. * Applications already running but on different environments (as * defined by the bonobo:environenment server property) than this one * are ignored and do not interfere. * * If the registration attempt indicates that another instance of this * application is already running, then the output variable * @client will receive a newly created #BonoboAppClient * associated with the running application. Otherwise, *@client is * set to %NULL. * * Return value: the registration result. * %Bonobo_ACTIVATION_REG_SUCCESS means the application was registered, * since no other running instance was detected. If, however, a * running application is detected, * %Bonobo_ACTIVATION_REG_ALREADY_ACTIVE is returned. **/ Bonobo_RegistrationResult bonobo_application_register_unique (BonoboApplication *app, gchar const *serverinfo, BonoboAppClient **client) { Bonobo_RegistrationResult reg_res; gchar *iid; CORBA_Object remote_obj = CORBA_OBJECT_NIL; CORBA_Environment ev; int tries = 10; g_return_val_if_fail (app, Bonobo_ACTIVATION_REG_ERROR); g_return_val_if_fail (BONOBO_IS_APPLICATION (app), Bonobo_ACTIVATION_REG_ERROR); g_return_val_if_fail (serverinfo, Bonobo_ACTIVATION_REG_ERROR); g_return_val_if_fail (client, Bonobo_ACTIVATION_REG_ERROR); iid = g_strdup_printf ("OAFIID:%s", app->name); *client = NULL; while (tries--) { reg_res = bonobo_activation_register_active_server_ext (iid, bonobo_object_corba_objref (BONOBO_OBJECT (app)), NULL, Bonobo_REGISTRATION_FLAG_NO_SERVERINFO, &remote_obj, serverinfo); if (reg_res == Bonobo_ACTIVATION_REG_SUCCESS) break; else if (reg_res == Bonobo_ACTIVATION_REG_ALREADY_ACTIVE) { CORBA_exception_init (&ev); Bonobo_Unknown_ref (remote_obj, &ev); if (ev._major != CORBA_NO_EXCEPTION) { /* Likely cause: server has quit, leaving a * stale reference. Solution: keep trying * to register as application server. */ CORBA_exception_free (&ev); continue; } *client = bonobo_app_client_new ((Bonobo_Application) remote_obj); break; } } g_free (iid); return reg_res; } /** * bonobo_application_add_hook: * @func: hook function * @data: user data * * Add a hook function to be called whenever a new #BonoboApplication * instance is created. **/ void bonobo_application_add_hook (BonoboAppHookFunc func, gpointer data) { BonoboAppHook hook; if (bonobo_application_hooks == NULL) bonobo_application_hooks = g_array_new (FALSE, FALSE, sizeof (BonoboAppHook)); hook.func = func; hook.data = data; g_array_append_val (bonobo_application_hooks, hook); } /** * bonobo_application_remove_hook: * @func: hook function * @data: user data * * Removes a hook function previously set with bonobo_application_add_hook(). **/ void bonobo_application_remove_hook (BonoboAppHookFunc func, gpointer data) { BonoboAppHook *hook; int i; g_return_if_fail (bonobo_application_hooks); for (i = 0; i < bonobo_application_hooks->len; ++i) { hook = &g_array_index (bonobo_application_hooks, BonoboAppHook, i); if (hook->func == func && hook->data == data) { g_array_remove_index (bonobo_application_hooks, i); return; } } g_warning ("bonobo_application_remove_hook: " "(func, data) == (%p, %p) not found.", func, data); } static void bonobo_application_invoke_hooks (BonoboApplication *app) { BonoboAppHook *hook; int i; if (!bonobo_application_hooks) return; for (i = 0; i < bonobo_application_hooks->len; ++i) { hook = &g_array_index (bonobo_application_hooks, BonoboAppHook, i); hook->func (app, hook->data); } } libbonobo-2.32.1/bonobo/bonobo-stream-client.c0000644000076400007640000001723311173072711016150 00000000000000/** * gnome-stream-client.c: Helper routines to access a Bonobo_Stream CORBA object * * Authors: * Nat Friedman (nat@nat.org) * Miguel de Icaza (miguel@kernel.org). * Michael Meekss (michael@helixcode.com) * * Copyright 1999, 2000 Ximian, Inc. */ #include "config.h" #include #include #include #include #include #include #define CORBA_BLOCK_SIZE 65536 /** * bonobo_stream_client_write: * @stream: A CORBA Object reference to a Bonobo_Stream * @buffer: the buffer to write * @size: number of bytes to write * @ev: a CORBA environment to return status information. * * This is a helper routine to write @size bytes from @buffer to the * @stream. It will continue to write bytes until a fatal error * occurs. It works around serious problems in ORBit's handling of * sequences, and makes for nicer, saner protocol usage for * transfering huge chunks of data. */ void bonobo_stream_client_write (const Bonobo_Stream stream, const void *buffer, const size_t size, CORBA_Environment *ev) { Bonobo_Stream_iobuf *buf; size_t pos; guint8 *mem = (guint8 *)buffer; if (size == 0) return; g_return_if_fail (ev != NULL); if (buffer == NULL || stream == CORBA_OBJECT_NIL) goto bad_param; buf = Bonobo_Stream_iobuf__alloc (); if (!buf) goto alloc_error; for (pos = 0; pos < size;) { buf->_buffer = (mem + pos); buf->_length = (pos + CORBA_BLOCK_SIZE < size) ? CORBA_BLOCK_SIZE : size - pos; buf->_maximum = buf->_length; Bonobo_Stream_write (stream, buf, ev); if (BONOBO_EX (ev)) { CORBA_free (buf); return; } pos += buf->_length; } CORBA_free (buf); return; alloc_error: CORBA_exception_set_system (ev, ex_CORBA_NO_MEMORY, CORBA_COMPLETED_NO); return; bad_param: CORBA_exception_set_system (ev, ex_CORBA_BAD_PARAM, CORBA_COMPLETED_NO); return; } /** * bonobo_stream_client_write_string: * @stream: A CORBA object reference to a #Bonobo_Stream. * @str: A string. * @terminate: Whether or not to write the \0 at the end of the * string. * @ev: A pointer to a #CORBA_Environment * * This is a helper routine to write the string in @str to @stream. * If @terminate is TRUE, a NULL character will be written out at the * end of the string. This function will not return until the entire * string has been written out, unless an exception is raised. See * also bonobo_stream_client_write(). Continues writing until finished * or a fatal exception occurs. * */ void bonobo_stream_client_write_string (const Bonobo_Stream stream, const char *str, gboolean terminate, CORBA_Environment *ev) { size_t total_length; g_return_if_fail (ev != NULL); g_return_if_fail (str != NULL); total_length = strlen (str) + (terminate ? 1 : 0); bonobo_stream_client_write (stream, str, total_length, ev); } /** * bonobo_stream_client_printf: * @stream: A CORBA object reference to a #Bonobo_Stream. * @terminate: Whether or not to null-terminate the string when it is * written out to the stream. * @ev: A CORBA_Environment pointer. * @fmt: The printf format string. * @Varargs: format arguments * * Processes @fmt and the arguments which follow it to produce a * string. Writes this string out to @stream. This function will not * return until the entire string is written out, unless an exception * is raised. See also bonobo_stream_client_write_string() and * bonobo_stream_client_write(). */ void bonobo_stream_client_printf (const Bonobo_Stream stream, const gboolean terminate, CORBA_Environment *ev, const char *fmt, ...) { va_list args; char *str; g_return_if_fail (fmt != NULL); va_start (args, fmt); str = g_strdup_vprintf (fmt, args); va_end (args); bonobo_stream_client_write_string (stream, str, terminate, ev); g_free (str); } /** * bonobo_stream_client_read_string: * @stream: The #Bonobo_Stream from which the string will be read. * @str: The string pointer in which the string will be stored. * @ev: A pointer to a #CORBA_Environment. * * Reads a NULL-terminated string from @stream and stores it in a * newly-allocated string in @str. * * Returns: The number of bytes read, or -1 if an error occurs. * If an exception occurs, @ev will contain the exception. */ CORBA_long bonobo_stream_client_read_string (const Bonobo_Stream stream, char **str, CORBA_Environment *ev) { Bonobo_Stream_iobuf *buffer; GString *gstr; gboolean all; gstr = g_string_sized_new (16); for (all = FALSE; !all; ) { Bonobo_Stream_read (stream, 1, &buffer, ev); if (BONOBO_EX (ev)) break; else if (buffer->_length == 0 || buffer->_buffer [0] == '\0') all = TRUE; else { g_string_append_c (gstr, buffer->_buffer [0]); CORBA_free (buffer); } } if (BONOBO_EX (ev)) { *str = NULL; g_string_free (gstr, TRUE); return -1; } else { CORBA_long l; l = gstr->len; *str = gstr->str; g_string_free (gstr, FALSE); return l; } } /** * bonobo_stream_client_get_length: * @stream: The stream. * @ev: Exception environment * * Does the grunt work to get the length of a stream, * returns -1 if the length is not available. Returns -1 * on exception. * * Return value: Length or -1 **/ CORBA_long bonobo_stream_client_get_length (const Bonobo_Stream stream, CORBA_Environment *opt_ev) { CORBA_long len; Bonobo_StorageInfo *info; CORBA_Environment *ev, temp_ev; if (!opt_ev) { CORBA_exception_init (&temp_ev); ev = &temp_ev; } else ev = opt_ev; info = Bonobo_Stream_getInfo (stream, Bonobo_FIELD_SIZE, ev); if (BONOBO_EX (ev) || !info) len = -1; else { len = info->size; CORBA_free (info); } if (!opt_ev) CORBA_exception_free (&temp_ev); return len; } /** * bonobo_stream_client_read: * @stream: A CORBA Object reference to a Bonobo_Stream * @size: number of bytes to read or -1 for whole stream. * @length_read: if non NULL will be set to the length read * @ev: a CORBA environment to return status information. * * This is a helper routine to read @size bytes from the @stream into * a freshly g_ allocated buffer which is returned. Whilst this * routine may seem pointless; it reads the stream in small chunks * avoiding possibly massive alloca's inside ORBit's stub/skel code. * * Returns NULL on any sort of failure & 0 size read. */ guint8 * bonobo_stream_client_read (const Bonobo_Stream stream, const size_t size, CORBA_long *length_read, CORBA_Environment *ev) { size_t pos; guint8 *mem; ssize_t length; g_return_val_if_fail (ev != NULL, NULL); if (length_read) *length_read = size; length = size; if (length == -1) { length = bonobo_stream_client_get_length (stream, ev); if (BONOBO_EX (ev) || length == -1) { char *err = bonobo_exception_get_text (ev); g_warning ("Exception '%s' getting length of stream", err); g_free (err); return NULL; } } if (length_read) *length_read = length; if (length == 0) return NULL; mem = g_try_malloc (length); if (!mem) { CORBA_exception_set_system (ev, ex_CORBA_NO_MEMORY, CORBA_COMPLETED_NO); return NULL; } for (pos = 0; pos < length;) { Bonobo_Stream_iobuf *buf; CORBA_long len; len = (pos + CORBA_BLOCK_SIZE < length) ? CORBA_BLOCK_SIZE : length - pos; Bonobo_Stream_read (stream, len, &buf, ev); if (BONOBO_EX (ev) || !buf) goto io_error; if (buf->_length > 0) { memcpy (mem + pos, buf->_buffer, buf->_length); pos += buf->_length; } else { g_warning ("Buffer length %u", buf->_length); goto io_error; } CORBA_free (buf); } return mem; io_error: return NULL; } libbonobo-2.32.1/bonobo/bonobo-generic-factory.c0000644000076400007640000003207311173072711016461 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /* * bonobo-generic-factory.c: a GenericFactory object. * * The BonoboGenericFactory object is used to instantiate new * Bonobo::GenericFactory objects. It acts as a wrapper for the * Bonobo::GenericFactory CORBA interface, and dispatches to * a user-specified factory function whenever its create_object() * method is invoked. * * Author: * Miguel de Icaza (miguel@kernel.org) * RDI Gerg (cactus@cactus.rulez.org): cleanup * * Copyright 1999, 2001 Ximian, Inc., 2001 Gerg rdi */ #include #include #include #include #include #include #include #include #include #include #include #include #include "bonobo-private.h" #define DEFAULT_LAST_UNREF_TIMEOUT 2000 #define STARTUP_TIMEOUT 60 struct _BonoboGenericFactoryPrivate { /* The function factory */ GClosure *factory_closure; /* The component_id for this generic factory */ char *act_iid; /* Whether we should register with the activation server */ gboolean noreg; /* Startup timeout when no object is ever requested */ guint startup_timeout_id; /* Timeout after last unref before quitting */ guint last_unref_timeout_id; guint last_unref_timeout; /* miliseconds */ guint last_unref_ignore; /* ignore last-unref caused by temporary objects */ gboolean last_unref_set; /* keep track of last-unref status during "ignore" period */ }; static GObjectClass *bonobo_generic_factory_parent_class = NULL; static CORBA_Object impl_Bonobo_ObjectFactory_createObject (PortableServer_Servant servant, const CORBA_char *obj_act_iid, CORBA_Environment *ev) { BonoboGenericFactoryClass *class; BonoboGenericFactory *factory; BonoboObject *object; factory = BONOBO_GENERIC_FACTORY (bonobo_object (servant)); class = BONOBO_GENERIC_FACTORY_CLASS (G_OBJECT_GET_CLASS (factory)); BONOBO_LOCK(); /* Cancel the startup timeout, if active. */ if (factory->priv->startup_timeout_id) { g_source_destroy (g_main_context_find_source_by_id (NULL, factory->priv->startup_timeout_id)); factory->priv->startup_timeout_id = 0; } /* Cancel the last unref timeout, if active. */ if (factory->priv->last_unref_timeout_id) { g_source_destroy (g_main_context_find_source_by_id (NULL, factory->priv->last_unref_timeout_id)); factory->priv->last_unref_timeout_id = 0; } BONOBO_UNLOCK(); object = (*class->new_generic) (factory, obj_act_iid); factory = NULL; /* unreffed by new_generic in the shlib case */ if (!object) return CORBA_OBJECT_NIL; return CORBA_Object_duplicate (BONOBO_OBJREF (object), ev); } /** * bonobo_generic_factory_construct_noreg: * @factory: The object to be initialized. * @act_iid: The GOAD id that the new factory will implement. * @factory_closure: A Multi object factory closure. * * Initializes @c_factory with the supplied closure and iid. */ void bonobo_generic_factory_construct_noreg (BonoboGenericFactory *factory, const char *act_iid, GClosure *factory_closure) { g_return_if_fail (BONOBO_IS_GENERIC_FACTORY (factory)); factory->priv->act_iid = g_strdup (act_iid); factory->priv->noreg = TRUE; if (factory_closure) factory->priv->factory_closure = bonobo_closure_store (factory_closure, bonobo_marshal_OBJECT__STRING); } /** * bonobo_generic_factory_construct: * @factory: The object to be initialized. * @act_iid: The Bonobo activation id that the new factory will implement. * Bonobo::GenericFactory interface and which will be used to * construct this BonoboGenericFactory Gtk object. * @factory_closure: A Multi object factory closure. * * Initializes @c_factory with and registers the new factory with * the name server. * * Returns: The initialized BonoboGenericFactory object or NULL * if already registered. */ BonoboGenericFactory * bonobo_generic_factory_construct (BonoboGenericFactory *factory, const char *act_iid, GClosure *factory_closure) { int ret; g_return_val_if_fail (BONOBO_IS_GENERIC_FACTORY (factory), NULL); bonobo_generic_factory_construct_noreg (factory, act_iid, factory_closure); factory->priv->noreg = FALSE; ret = bonobo_activation_active_server_register (act_iid, BONOBO_OBJREF (factory)); if (ret != Bonobo_ACTIVATION_REG_SUCCESS) { bonobo_object_unref (BONOBO_OBJECT (factory)); #ifdef G_ENABLE_DEBUG if (_bonobo_debug_flags & BONOBO_DEBUG_LIFECYCLE) { const char *err; switch (ret) { case Bonobo_ACTIVATION_REG_SUCCESS: err = "success"; break; case Bonobo_ACTIVATION_REG_NOT_LISTED: err = "not listed"; break; case Bonobo_ACTIVATION_REG_ALREADY_ACTIVE: err = "already active"; break; case Bonobo_ACTIVATION_REG_ERROR: err = "error"; break; default: err = "(invalid error!)"; break; } g_warning ("'%s' factory registration failed: %s", act_iid, err); } #endif return NULL; } return factory; } /** * bonobo_generic_factory_new_closure: * @act_iid: The GOAD id that this factory implements * @factory_closure: A closure which is used to create new BonoboObject instances. * * This is a helper routine that simplifies the creation of factory * objects for GNOME objects. The @factory_closure closure will be * invoked by the CORBA server when a request arrives to create a new * instance of an object supporting the Bonobo::Generic interface. * The factory callback routine is passed the @data pointer to provide * the creation function with some state information. * * Returns: A BonoboGenericFactory object that has an activated * Bonobo::GenericFactory object that has registered with the GNOME * name server. */ BonoboGenericFactory * bonobo_generic_factory_new_closure (const char *act_iid, GClosure *factory_closure) { BonoboGenericFactory *factory; g_return_val_if_fail (act_iid != NULL, NULL); g_return_val_if_fail (factory_closure != NULL, NULL); factory = g_object_new (bonobo_generic_factory_get_type (), NULL); return bonobo_generic_factory_construct ( factory, act_iid, factory_closure); } /** * bonobo_generic_factory_new: * @act_iid: The GOAD id that this factory implements * @factory_cb: A callback which is used to create new BonoboObject instances. * @user_data: The closure data to be passed to the @factory callback routine. * * This is a helper routine that simplifies the creation of factory * objects for GNOME objects. The @factory function will be * invoked by the CORBA server when a request arrives to create a new * instance of an object supporting the Bonobo::Generic interface. * The factory callback routine is passed the @data pointer to provide * the creation function with some state information. * * Returns: A BonoboGenericFactory object that has an activated * Bonobo::GenericFactory object that has registered with the GNOME * name server. */ BonoboGenericFactory * bonobo_generic_factory_new (const char *act_iid, BonoboFactoryCallback factory_cb, gpointer user_data) { return bonobo_generic_factory_new_closure ( act_iid, g_cclosure_new (G_CALLBACK (factory_cb), user_data, NULL)); } static void bonobo_generic_factory_destroy (BonoboObject *object) { BonoboGenericFactory *factory = BONOBO_GENERIC_FACTORY (object); if (factory->priv) { if (!factory->priv->noreg && factory->priv->act_iid) bonobo_activation_active_server_unregister ( factory->priv->act_iid, BONOBO_OBJREF (factory)); g_free (factory->priv->act_iid); if (factory->priv->factory_closure) g_closure_unref (factory->priv->factory_closure); /* Cancel the startup timeout, if active. */ if (factory->priv->startup_timeout_id) g_source_destroy (g_main_context_find_source_by_id (NULL, factory->priv->startup_timeout_id)); /* Cancel the last unref timeout, if active. */ if (factory->priv->last_unref_timeout_id) g_source_destroy (g_main_context_find_source_by_id (NULL, factory->priv->last_unref_timeout_id)); g_free (factory->priv); factory->priv = NULL; } BONOBO_OBJECT_CLASS (bonobo_generic_factory_parent_class)->destroy (object); } static gboolean last_unref_timeout (gpointer data) { BonoboGenericFactory *factory = BONOBO_GENERIC_FACTORY (data); bonobo_main_quit (); factory->priv->last_unref_timeout_id = 0; return FALSE; } static BonoboObject * bonobo_generic_factory_new_generic (BonoboGenericFactory *factory, const char *act_iid) { BonoboObject *ret; g_return_val_if_fail (factory != NULL, NULL); g_return_val_if_fail (BONOBO_IS_GENERIC_FACTORY (factory), NULL); BONOBO_LOCK(); factory->priv->last_unref_ignore++; BONOBO_UNLOCK(); bonobo_closure_invoke (factory->priv->factory_closure, BONOBO_TYPE_OBJECT, &ret, BONOBO_TYPE_GENERIC_FACTORY, factory, G_TYPE_STRING | G_SIGNAL_TYPE_STATIC_SCOPE, act_iid, G_TYPE_INVALID); BONOBO_LOCK(); factory->priv->last_unref_ignore--; if (ret) /* since we are returning a new object, even if * last-unref was previously caught it no longer * applies */ factory->priv->last_unref_set = FALSE; if (factory->priv->last_unref_set) { factory->priv->last_unref_timeout_id = g_timeout_add (factory->priv->last_unref_timeout, last_unref_timeout, factory); factory->priv->last_unref_set = FALSE; } BONOBO_UNLOCK(); return ret; } static void bonobo_generic_factory_class_init (BonoboGenericFactoryClass *klass) { BonoboObjectClass *bonobo_object_class = (BonoboObjectClass *) klass; POA_Bonobo_GenericFactory__epv *epv = &klass->epv; epv->createObject = impl_Bonobo_ObjectFactory_createObject; bonobo_object_class->destroy = bonobo_generic_factory_destroy; klass->new_generic = bonobo_generic_factory_new_generic; bonobo_generic_factory_parent_class = g_type_class_peek_parent (klass); } static void bonobo_generic_factory_init (GObject *object) { BonoboGenericFactory *factory = BONOBO_GENERIC_FACTORY (object); factory->priv = g_new0 (BonoboGenericFactoryPrivate, 1); factory->priv->noreg = FALSE; factory->priv->last_unref_timeout = DEFAULT_LAST_UNREF_TIMEOUT; } BONOBO_TYPE_FUNC_FULL (BonoboGenericFactory, Bonobo_GenericFactory, BONOBO_TYPE_OBJECT, bonobo_generic_factory) static gboolean startup_timeout (gpointer data) { BonoboGenericFactory *factory = BONOBO_GENERIC_FACTORY (data); bonobo_main_quit (); factory->priv->startup_timeout_id = 0; return FALSE; } static void last_unref_cb (BonoboRunningContext *context, BonoboGenericFactory *factory) { g_return_if_fail (BONOBO_IS_GENERIC_FACTORY (factory)); if (factory->priv->last_unref_ignore) { factory->priv->last_unref_set = TRUE; return; } g_return_if_fail (!factory->priv->last_unref_timeout_id); factory->priv->last_unref_timeout_id = g_timeout_add (factory->priv->last_unref_timeout, last_unref_timeout, factory); } /** * bonobo_generic_factory_main: * @act_iid: the oaf iid of the factory * @factory_cb: the factory callback * @user_data: a user data pointer * * A Generic 'main' routine so we don't stick a load of code * inside a public macro. See also bonobo_generic_factory_main_timeout(). * * Return value: 0 on success, 1 on failure. **/ int bonobo_generic_factory_main (const char *act_iid, BonoboFactoryCallback factory_cb, gpointer user_data) { return bonobo_generic_factory_main_timeout (act_iid, factory_cb, user_data, DEFAULT_LAST_UNREF_TIMEOUT); } /** * bonobo_generic_factory_main_timeout: * @act_iid: the oaf iid of the factory * @factory_cb: the factory callback * @user_data: a user data pointer * @quit_timeout: ammount of time to wait (miliseconds) after all * objects have been released before quitting the main loop. * * A Generic 'main' routine so we don't stick a load of code * inside a public macro. * * Return value: 0 on success, 1 on failure. **/ int bonobo_generic_factory_main_timeout (const char *act_iid, BonoboFactoryCallback factory_cb, gpointer user_data, guint quit_timeout) { BonoboGenericFactory *factory; factory = bonobo_generic_factory_new ( act_iid, factory_cb, user_data); if (factory) { BonoboObject *context; guint signal; factory->priv->last_unref_timeout = quit_timeout; context = bonobo_running_context_new (); signal = g_signal_connect (G_OBJECT (context), "last-unref", G_CALLBACK (last_unref_cb), factory); bonobo_running_context_ignore_object (BONOBO_OBJREF (factory)); /* Create timeout here so if we haven't created anything * within a few minutes we just quit */ factory->priv->startup_timeout_id = g_timeout_add_seconds (STARTUP_TIMEOUT, startup_timeout, factory); bonobo_main (); g_signal_handler_disconnect (G_OBJECT (context), signal); bonobo_object_unref (BONOBO_OBJECT (factory)); bonobo_object_unref (context); return bonobo_debug_shutdown (); } else return 1; } libbonobo-2.32.1/bonobo/bonobo-item-container.h0000644000076400007640000000402411173072711016316 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /** * bonobo-item-container.h: a generic container for monikers. * * Author: * Miguel de Icaza (miguel@kernel.org) * * Copyright 1999 Helix Code, Inc. */ #ifndef _BONOBO_ITEM_CONTAINER_H_ #define _BONOBO_ITEM_CONTAINER_H_ #include #include G_BEGIN_DECLS #define BONOBO_TYPE_ITEM_CONTAINER (bonobo_item_container_get_type ()) #define BONOBO_ITEM_CONTAINER_TYPE BONOBO_TYPE_ITEM_CONTAINER /* deprecated, you should use BONOBO_TYPE_ITEM_CONTAINER */ #define BONOBO_ITEM_CONTAINER(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), BONOBO_TYPE_ITEM_CONTAINER, BonoboItemContainer)) #define BONOBO_ITEM_CONTAINER_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), BONOBO_TYPE_ITEM_CONTAINER, BonoboItemContainerClass)) #define BONOBO_IS_ITEM_CONTAINER(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), BONOBO_TYPE_ITEM_CONTAINER)) #define BONOBO_IS_ITEM_CONTAINER_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), BONOBO_TYPE_ITEM_CONTAINER)) typedef struct _BonoboItemContainerPrivate BonoboItemContainerPrivate; typedef struct _BonoboItemContainer BonoboItemContainer; struct _BonoboItemContainer { BonoboObject base; BonoboItemContainerPrivate *priv; }; typedef struct { BonoboObjectClass parent_class; POA_Bonobo_ItemContainer__epv epv; Bonobo_Unknown (*get_object) (BonoboItemContainer *item_container, CORBA_char *item_name, CORBA_boolean only_if_exists, CORBA_Environment *ev); } BonoboItemContainerClass; GType bonobo_item_container_get_type (void) G_GNUC_CONST; BonoboItemContainer *bonobo_item_container_new (void); void bonobo_item_container_add (BonoboItemContainer *container, const char *name, BonoboObject *object); void bonobo_item_container_remove_by_name (BonoboItemContainer *container, const char *name); G_END_DECLS #endif libbonobo-2.32.1/bonobo/bonobo-app-client.h0000644000076400007640000000541411173072711015440 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ #ifndef __BONOBO_APP_CLIENT_H__ #define __BONOBO_APP_CLIENT_H__ #include #include G_BEGIN_DECLS #define BONOBO_TYPE_APP_CLIENT (bonobo_app_client_get_type ()) #define BONOBO_APP_CLIENT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj),\ BONOBO_TYPE_APP_CLIENT, BonoboAppClient)) #define BONOBO_APP_CLIENT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass),\ BONOBO_TYPE_APP_CLIENT, BonoboAppClientClass)) #define BONOBO_IS_APP_CLIENT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj),\ BONOBO_TYPE_APP_CLIENT)) #define BONOBO_IS_APP_CLIENT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass),\ BONOBO_TYPE_APP_CLIENT)) #define BONOBO_APP_CLIENT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj),\ BONOBO_TYPE_APP_CLIENT, BonoboAppClientClass)) typedef struct _BonoboAppClient BonoboAppClient; typedef struct _BonoboAppClientClass BonoboAppClientClass; typedef struct _BonoboAppClientMsgDesc BonoboAppClientMsgDesc; struct _BonoboAppClientMsgDesc { gchar *name; GType return_type; GType *types; /* G_TYPE_NONE-terminated array */ gchar *description; }; struct _BonoboAppClient { GObject parent_instance; /*< private >*/ Bonobo_Application app_server; BonoboAppClientMsgDesc *msgdescs; }; struct _BonoboAppClientClass { GObjectClass parent_class; }; GType bonobo_app_client_get_type (void) G_GNUC_CONST; BonoboAppClient* bonobo_app_client_new (Bonobo_Application app_server); GValue * bonobo_app_client_msg_send_argv (BonoboAppClient *app_client, const char *message, const GValue *argv[], CORBA_Environment *opt_env); GValue* bonobo_app_client_msg_send_valist (BonoboAppClient *app_client, const char *message, CORBA_Environment *opt_env, GType first_arg_type, va_list var_args); GValue* bonobo_app_client_msg_send (BonoboAppClient *app_client, const char *message, CORBA_Environment *opt_env, GType first_arg_type, ...); gint bonobo_app_client_new_instance (BonoboAppClient *app_client, int argc, char *argv[], CORBA_Environment *opt_env); BonoboAppClientMsgDesc const * bonobo_app_client_msg_list (BonoboAppClient *app_client); G_END_DECLS #endif /* __BONOBO_APP_CLIENT_H__ */ libbonobo-2.32.1/bonobo/bonobo-event-source.h0000644000076400007640000000610111173072711016015 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /* * bonobo-event-source.h: Generic event emitter. * * Author: * Alex Graveley (alex@ximian.com) * * Copyright (C) 2001, Ximian, Inc. */ #ifndef _BONOBO_EVENT_SOURCE_H_ #define _BONOBO_EVENT_SOURCE_H_ #include #include G_BEGIN_DECLS #define BONOBO_TYPE_EVENT_SOURCE (bonobo_event_source_get_type ()) #define BONOBO_EVENT_SOURCE_TYPE BONOBO_TYPE_EVENT_SOURCE /* deprecated, you should use BONOBO_TYPE_EVENT_SOURCE */ #define BONOBO_EVENT_SOURCE(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), BONOBO_TYPE_EVENT_SOURCE, BonoboEventSource)) #define BONOBO_EVENT_SOURCE_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), BONOBO_TYPE_EVENT_SOURCE, BonoboEventSourceClass)) #define BONOBO_IS_EVENT_SOURCE(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), BONOBO_TYPE_EVENT_SOURCE)) #define BONOBO_IS_EVENT_SOURCE_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), BONOBO_TYPE_EVENT_SOURCE)) typedef struct _BonoboEventSourcePrivate BonoboEventSourcePrivate; typedef struct _BonoboEventSource BonoboEventSource; struct _BonoboEventSource { BonoboObject parent; BonoboEventSourcePrivate *priv; }; typedef struct { BonoboObjectClass parent_class; POA_Bonobo_EventSource__epv epv; } BonoboEventSourceClass; GType bonobo_event_source_get_type (void) G_GNUC_CONST; BonoboEventSource *bonobo_event_source_new (void); gboolean bonobo_event_source_has_listener (BonoboEventSource *event_source, const char *event_name); void bonobo_event_source_notify_listeners (BonoboEventSource *event_source, const char *event_name, const CORBA_any *opt_value, CORBA_Environment *opt_ev); void bonobo_event_source_notify_listeners_full (BonoboEventSource *event_source, const char *path, const char *type, const char *subtype, const CORBA_any *opt_value, CORBA_Environment *opt_ev); void bonobo_event_source_client_remove_listener (Bonobo_Unknown object, Bonobo_Listener listener, CORBA_Environment *opt_ev); void bonobo_event_source_client_add_listener (Bonobo_Unknown object, BonoboListenerCallbackFn event_callback, const char *opt_mask, CORBA_Environment *opt_ev, gpointer user_data); void bonobo_event_source_client_add_listener_closure (Bonobo_Unknown object, GClosure *callback, const char *opt_mask, CORBA_Environment *opt_ev); Bonobo_Listener bonobo_event_source_client_add_listener_full (Bonobo_Unknown object, GClosure *callback, const char *opt_mask, CORBA_Environment *opt_ev); /* You don't want this routine */ void bonobo_event_source_ignore_listeners (BonoboEventSource *event_source); G_END_DECLS #endif /* _BONOBO_EVENT_SOURCE_H_ */ libbonobo-2.32.1/bonobo/bonobo-persist-file.c0000644000076400007640000001237511173072711016011 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /* * Bonobo PersistFile * * Author: * Matt Loper (matt@gnome-support.com) * * Copyright 1999, 2000 Ximian, Inc. */ #include "config.h" #include #include #include #include #include #define PARENT_TYPE BONOBO_TYPE_PERSIST /* Parent GTK object class */ static BonoboPersistClass *bonobo_persist_file_parent_class; static CORBA_char * impl_get_current_file (PortableServer_Servant servant, CORBA_Environment *ev) { BonoboObject *object = bonobo_object_from_servant (servant); BonoboPersistFile *pfile = BONOBO_PERSIST_FILE (object); /* if our persist_file has a filename with any length, return it */ if (pfile->uri && strlen (pfile->uri)) return CORBA_string_dup ((CORBA_char*)pfile->uri); else { /* otherwise, raise a `NoCurrentName' exception */ Bonobo_PersistFile_NoCurrentName *exception; exception = Bonobo_PersistFile_NoCurrentName__alloc (); exception->extension = CORBA_string_dup (""); CORBA_exception_set (ev, CORBA_USER_EXCEPTION, ex_Bonobo_PersistFile_NoCurrentName, exception); return NULL; } } static void impl_load (PortableServer_Servant servant, const CORBA_char *filename, CORBA_Environment *ev) { BonoboObject *object = bonobo_object_from_servant (servant); BonoboPersistFile *pf = BONOBO_PERSIST_FILE (object); int result; if (pf->load_fn != NULL) result = (*pf->load_fn)(pf, filename, ev, pf->closure); else { GObjectClass *oc = G_OBJECT_GET_CLASS (pf); BonoboPersistFileClass *class = BONOBO_PERSIST_FILE_CLASS (oc); if (class->load) result = (*class->load)(pf, filename, ev); else { CORBA_exception_set ( ev, CORBA_USER_EXCEPTION, ex_Bonobo_NotSupported, NULL); return; } } if (result != 0) { CORBA_exception_set ( ev, CORBA_USER_EXCEPTION, ex_Bonobo_IOError, NULL); } } static void impl_save (PortableServer_Servant servant, const CORBA_char *filename, CORBA_Environment *ev) { BonoboObject *object = bonobo_object_from_servant (servant); BonoboPersistFile *pf = BONOBO_PERSIST_FILE (object); int result; if (pf->save_fn != NULL) result = (*pf->save_fn)(pf, filename, ev, pf->closure); else { GObjectClass *oc = G_OBJECT_GET_CLASS (pf); BonoboPersistFileClass *class = BONOBO_PERSIST_FILE_CLASS (oc); if (class->save) result = (*class->save)(pf, filename, ev); else { CORBA_exception_set ( ev, CORBA_USER_EXCEPTION, ex_Bonobo_NotSupported, NULL); return; } } if (result != 0) { CORBA_exception_set ( ev, CORBA_USER_EXCEPTION, ex_Bonobo_Persist_FileNotFound, NULL); } } static CORBA_char * bonobo_persist_file_get_current_file (BonoboPersistFile *pf, CORBA_Environment *ev) { if (pf->uri) return pf->uri; return ""; } static void bonobo_persist_file_class_init (BonoboPersistFileClass *klass) { POA_Bonobo_PersistFile__epv *epv = &klass->epv; bonobo_persist_file_parent_class = g_type_class_peek_parent (klass); /* Override and initialize methods */ klass->save = NULL; klass->load = NULL; klass->get_current_file = bonobo_persist_file_get_current_file; epv->load = impl_load; epv->save = impl_save; epv->getCurrentFile = impl_get_current_file; } static void bonobo_persist_file_init (GObject *object) { /* nothing to do */ } BONOBO_TYPE_FUNC_FULL (BonoboPersistFile, Bonobo_PersistFile, PARENT_TYPE, bonobo_persist_file) /** * bonobo_persist_file_construct: * @pf: A BonoboPersistFile * @load_fn: Loading routine * @save_fn: Saving routine * @iid: OAF IID of the object this interface is aggregated to * @closure: Data passed to IO routines. * * Initializes the BonoboPersistFile object. The @load_fn and @save_fn * parameters might be NULL. If this is the case, the load and save * operations are performed by the class load and save methods * * Returns: the #BonoboPersistFile. */ BonoboPersistFile * bonobo_persist_file_construct (BonoboPersistFile *pf, BonoboPersistFileIOFn load_fn, BonoboPersistFileIOFn save_fn, const gchar *iid, void *closure) { g_return_val_if_fail (pf != NULL, NULL); g_return_val_if_fail (BONOBO_IS_PERSIST_FILE (pf), NULL); pf->load_fn = load_fn; pf->save_fn = save_fn; pf->closure = closure; bonobo_persist_construct (BONOBO_PERSIST (pf), iid); return pf; } /** * bonobo_persist_file_new: * @load_fn: Loading routine * @save_fn: Saving routine * @iid: OAF IID of the object this interface is aggregated to * @closure: Data passed to IO routines. * * Creates a BonoboPersistFile object. The @load_fn and @save_fn * parameters might be NULL. If this is the case, the load and save * operations are performed by the class load and save methods * * Returns: the #BonoboPersistFile. */ BonoboPersistFile * bonobo_persist_file_new (BonoboPersistFileIOFn load_fn, BonoboPersistFileIOFn save_fn, const gchar *iid, void *closure) { BonoboPersistFile *pf; pf = g_object_new (bonobo_persist_file_get_type (), NULL); pf->uri = NULL; bonobo_persist_file_construct (pf, load_fn, save_fn, iid, closure); return pf; } libbonobo-2.32.1/bonobo/bonobo-shlib-factory.c0000644000076400007640000001517511173072711016152 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /** * bonobo-shlib-factory.c: a ShlibFactory object. * * The BonoboShlibFactory object is used to instantiate new * Bonobo::ShlibFactory objects. It acts as a wrapper for the * Bonobo::ShlibFactory CORBA interface, and dispatches to * a user-specified factory function whenever its create_object() * method is invoked. * * Author: * Miguel de Icaza (miguel@kernel.org) * * Copyright 1999, 2001 Ximian, Inc. */ #include #include #include #include #include #include #include #include static BonoboObjectClass *bonobo_shlib_factory_parent_class = NULL; struct _BonoboShlibFactoryPrivate { int live_objects; gpointer act_impl_ptr; }; /** * bonobo_shlib_factory_construct: * @factory: The object to be initialized. * @act_iid: The GOAD id that the new factory will implement. * @poa: the poa. * @act_impl_ptr: Activation shlib handle * @closure: The closure used to create new GnomeShlib object instances. * * Initializes @c_factory with the supplied data. * * Returns: The initialized BonoboShlibFactory object. */ BonoboShlibFactory * bonobo_shlib_factory_construct (BonoboShlibFactory *factory, const char *act_iid, PortableServer_POA poa, gpointer act_impl_ptr, GClosure *closure) { g_return_val_if_fail (factory != NULL, NULL); g_return_val_if_fail (BONOBO_IS_SHLIB_FACTORY (factory), NULL); factory->priv->live_objects = 0; factory->priv->act_impl_ptr = act_impl_ptr; bonobo_activation_plugin_use (poa, act_impl_ptr); bonobo_generic_factory_construct_noreg ( BONOBO_GENERIC_FACTORY (factory), act_iid, closure); return factory; } /** * bonobo_shlib_factory_new_closure: * @act_iid: The GOAD id that this factory implements * @poa: the poa. * @act_impl_ptr: Activation shlib handle * @factory_closure: A closure which is used to create new BonoboObject instances. * * This is a helper routine that simplifies the creation of factory * objects for GNOME objects. The @factory_closure closure will be * invoked by the CORBA server when a request arrives to create a new * instance of an object supporting the Bonobo::Shlib interface. * The factory callback routine is passed the @data pointer to provide * the creation function with some state information. * * Returns: A BonoboShlibFactory object that has an activated * Bonobo::ShlibFactory object that has registered with the GNOME * name server. */ BonoboShlibFactory * bonobo_shlib_factory_new_closure (const char *act_iid, PortableServer_POA poa, gpointer act_impl_ptr, GClosure *factory_closure) { BonoboShlibFactory *factory; g_return_val_if_fail (act_iid != NULL, NULL); g_return_val_if_fail (factory_closure != NULL, NULL); factory = g_object_new (bonobo_shlib_factory_get_type (), NULL); return bonobo_shlib_factory_construct ( factory, act_iid, poa, act_impl_ptr, factory_closure); } /** * bonobo_shlib_factory_new: * @component_id: The GOAD id that this factory implements * @poa: the poa. * @act_impl_ptr: Activation shlib handle * @factory_cb: A callback which is used to create new BonoboObject instances. * @user_data: The closure data to be passed to the @factory callback routine. * * This is a helper routine that simplifies the creation of factory * objects for GNOME objects. The @factory function will be * invoked by the CORBA server when a request arrives to create a new * instance of an object supporting the Bonobo::Shlib interface. * The factory callback routine is passed the @data pointer to provide * the creation function with some state information. * * Returns: A BonoboShlibFactory object that has an activated * Bonobo::ShlibFactory object that has registered with the GNOME * name server. */ BonoboShlibFactory * bonobo_shlib_factory_new (const char *component_id, PortableServer_POA poa, gpointer act_impl_ptr, BonoboFactoryCallback factory_cb, gpointer user_data) { return bonobo_shlib_factory_new_closure ( component_id, poa, act_impl_ptr, g_cclosure_new (G_CALLBACK (factory_cb), user_data, NULL)); } /* * FIXME: at some time in the future we should look into trying * to unload the shlib's we have linked in with * bonobo_activation_plugin_unuse - this is dangerous though; we * need to be sure no code is using the shlib first. */ static void bonobo_shlib_factory_finalize (GObject *object) { BonoboShlibFactory *factory = BONOBO_SHLIB_FACTORY (object); /* act_plugin_unuse (c_factory->act_impl_ptr); */ g_free (factory->priv); G_OBJECT_CLASS (bonobo_shlib_factory_parent_class)->finalize (object); } static BonoboObject * bonobo_shlib_factory_new_generic (BonoboGenericFactory *factory, const char *act_iid) { BonoboObject *retval; retval = BONOBO_GENERIC_FACTORY_CLASS ( bonobo_shlib_factory_parent_class)->new_generic (factory, act_iid); /* The factory reference doesn't persist inside bonobo-activation */ bonobo_object_unref (BONOBO_OBJECT (factory)); return retval; } static void bonobo_shlib_factory_class_init (BonoboGenericFactoryClass *klass) { GObjectClass *object_class = (GObjectClass *) klass; bonobo_shlib_factory_parent_class = g_type_class_peek_parent (klass); klass->new_generic = bonobo_shlib_factory_new_generic; object_class->finalize = bonobo_shlib_factory_finalize; } static void bonobo_shlib_factory_init (GObject *object) { BonoboShlibFactory *factory = BONOBO_SHLIB_FACTORY (object); factory->priv = g_new0 (BonoboShlibFactoryPrivate, 1); } /** * bonobo_shlib_factory_get_type: * * Returns: The GType of the BonoboShlibFactory class. */ BONOBO_TYPE_FUNC (BonoboShlibFactory, BONOBO_TYPE_GENERIC_FACTORY, bonobo_shlib_factory) /** * bonobo_shlib_factory_std: * @component_id: * @poa: * @act_impl_ptr: * @factory_cb: * @user_data: * @ev: * * A Generic std shlib routine so we don't stick a load of code * inside a public macro. * * Return value: 0 on success, 1 on failure. **/ Bonobo_Unknown bonobo_shlib_factory_std (const char *component_id, PortableServer_POA poa, gpointer act_impl_ptr, BonoboFactoryCallback factory_cb, gpointer user_data, CORBA_Environment *ev) { BonoboShlibFactory *f; f = bonobo_shlib_factory_new ( component_id, poa, act_impl_ptr, factory_cb, user_data); return CORBA_Object_duplicate (BONOBO_OBJREF (f), ev); } libbonobo-2.32.1/bonobo/bonobo-moniker-extender.c0000644000076400007640000001341511173072711016657 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /** * bonobo-moniker-extender: extending monikers * * Author: * Dietmar Maurer (dietmar@maurer-it.com) * * Copyright 2000, Ximian, Inc. */ #include #include #include #include #include #define PARENT_TYPE BONOBO_TYPE_OBJECT static GObjectClass *bonobo_moniker_extender_parent_class; #define CLASS(o) BONOBO_MONIKER_EXTENDER_CLASS (G_OBJECT_GET_CLASS (o)) static inline BonoboMonikerExtender * bonobo_moniker_extender_from_servant (PortableServer_Servant servant) { return BONOBO_MONIKER_EXTENDER (bonobo_object_from_servant (servant)); } static Bonobo_Unknown impl_Bonobo_MonikerExtender_resolve (PortableServer_Servant servant, const Bonobo_Moniker parent, const Bonobo_ResolveOptions *options, const CORBA_char *display_name, const CORBA_char *requested_interface, CORBA_Environment *ev) { BonoboMonikerExtender *extender = bonobo_moniker_extender_from_servant (servant); if (extender->resolve) return extender->resolve (extender, parent, options, display_name, requested_interface, ev); else return CLASS (extender)->resolve (extender, parent, options, display_name, requested_interface, ev); } static Bonobo_Unknown bonobo_moniker_extender_resolve (BonoboMonikerExtender *extender, const Bonobo_Moniker parent, const Bonobo_ResolveOptions *options, const CORBA_char *display_name, const CORBA_char *requested_interface, CORBA_Environment *ev) { CORBA_exception_set (ev, CORBA_USER_EXCEPTION, ex_Bonobo_Moniker_InterfaceNotFound, NULL); return CORBA_OBJECT_NIL; } static void bonobo_moniker_extender_finalize (GObject *object) { bonobo_moniker_extender_parent_class->finalize (object); } static void bonobo_moniker_extender_class_init (BonoboMonikerExtenderClass *klass) { GObjectClass *oclass = (GObjectClass *)klass; POA_Bonobo_MonikerExtender__epv *epv = &klass->epv; bonobo_moniker_extender_parent_class = g_type_class_peek_parent (klass); oclass->finalize = bonobo_moniker_extender_finalize; klass->resolve = bonobo_moniker_extender_resolve; epv->resolve = impl_Bonobo_MonikerExtender_resolve; } static void bonobo_moniker_extender_init (GObject *object) { /* nothing to do */ } BONOBO_TYPE_FUNC_FULL (BonoboMonikerExtender, Bonobo_MonikerExtender, PARENT_TYPE, bonobo_moniker_extender) /** * bonobo_moniker_extender_new: * @resolve: the resolve function that will be used to do the extension * @data: user data to be passed back to the resolve function. * * This creates a new moniker extender. * * Return value: the extender object **/ BonoboMonikerExtender * bonobo_moniker_extender_new (BonoboMonikerExtenderFn resolve, gpointer data) { BonoboMonikerExtender *extender = NULL; extender = g_object_new (bonobo_moniker_extender_get_type (), NULL); extender->resolve = resolve; extender->data = data; return extender; } /** * bonobo_moniker_find_extender: * @name: the name of the moniker we want to extend eg. 'file:' * @interface: the interface we want to resolve to * @opt_ev: an optional corba exception environment. * * This routine tries to locate an extender for our moniker * by examining a registry of extenders that map new interfaces * to certain moniker names. * * Return value: an appropriate extender or CORBA_OBJECT_NIL. **/ Bonobo_MonikerExtender bonobo_moniker_find_extender (const gchar *name, const gchar *interface, CORBA_Environment *opt_ev) { gchar *query; Bonobo_Unknown extender; CORBA_Environment *ev, temp_ev; if (!opt_ev) { CORBA_exception_init (&temp_ev); ev = &temp_ev; } else ev = opt_ev; query = g_strdup_printf ( "repo_ids.has ('IDL:Bonobo/MonikerExtender:1.0') AND " "repo_ids.has ('%s') AND " "bonobo:moniker_extender.has ('%s')", interface, name); extender = bonobo_activation_activate (query, NULL, 0, NULL, ev); g_free (query); if (!opt_ev) CORBA_exception_free (&temp_ev); return extender; } /** * bonobo_moniker_use_extender: * @extender_oafiid: The IID of the extender to use * @moniker: the moniker to extend * @options: resolve options * @requested_interface: the requested interface * @opt_ev: optional corba environment * * Locates a known extender via. OAFIID; eg. * OAFIID:Bonobo_Moniker_Extender_file * * Return value: the resolved result or CORBA_OBJECT_NIL. **/ Bonobo_Unknown bonobo_moniker_use_extender (const gchar *extender_oafiid, BonoboMoniker *moniker, const Bonobo_ResolveOptions *options, const CORBA_char *requested_interface, CORBA_Environment *opt_ev) { Bonobo_MonikerExtender extender; Bonobo_Unknown retval; CORBA_Environment *ev, temp_ev; if (!opt_ev) { CORBA_exception_init (&temp_ev); ev = &temp_ev; } else ev = opt_ev; g_return_val_if_fail (ev != NULL, CORBA_OBJECT_NIL); g_return_val_if_fail (options != NULL, CORBA_OBJECT_NIL); g_return_val_if_fail (moniker != NULL, CORBA_OBJECT_NIL); g_return_val_if_fail (extender_oafiid != NULL, CORBA_OBJECT_NIL); g_return_val_if_fail (requested_interface != NULL, CORBA_OBJECT_NIL); extender = bonobo_activation_activate_from_id ( (gchar *) extender_oafiid, 0, NULL, ev); if (BONOBO_EX (ev) || extender == CORBA_OBJECT_NIL) return CORBA_OBJECT_NIL; retval = Bonobo_MonikerExtender_resolve (extender, BONOBO_OBJREF (moniker), options, bonobo_moniker_get_name_full (moniker), requested_interface, ev); bonobo_object_release_unref (extender, ev); if (!opt_ev) CORBA_exception_free (&temp_ev); return retval; } libbonobo-2.32.1/bonobo/libbonobo-2.0.pc.in0000644000076400007640000000063311173072711015150 00000000000000prefix=@prefix@ exec_prefix=@exec_prefix@ libdir=@libdir@ includedir=@includedir@ datarootdir=@datarootdir@ idldir=@datadir@/idl/bonobo-2.0 idlinclude=@datadir@/idl/bonobo-2.0 @datadir@/idl/bonobo-activation-2.0 Name: libbonobo Description: libbonobo Requires: glib-2.0 gmodule-no-export-2.0 ORBit-2.0 bonobo-activation-2.0 Version: @VERSION@ Libs: -L${libdir} -lbonobo-2 Cflags: -I${includedir}/libbonobo-2.0 libbonobo-2.32.1/bonobo/bonobo-moniker-simple.h0000644000076400007640000000467211173072711016344 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /* * bonobo-moniker-simple: Simplified object naming abstraction * * Author: * Michael Meeks (michael@helixcode.com) * * Copyright 2000, Helix Code, Inc. */ #ifndef _BONOBO_MONIKER_SIMPLE_SIMPLE_H_ #define _BONOBO_MONIKER_SIMPLE_SIMPLE_H_ #include #include G_BEGIN_DECLS #define BONOBO_TYPE_MONIKER_SIMPLE (bonobo_moniker_simple_get_type ()) #define BONOBO_MONIKER_SIMPLE_TYPE BONOBO_TYPE_MONIKER_SIMPLE /* deprecated, you should use BONOBO_TYPE_MONIKER_SIMPLE */ #define BONOBO_MONIKER_SIMPLE(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), BONOBO_TYPE_MONIKER_SIMPLE, BonoboMonikerSimple)) #define BONOBO_MONIKER_SIMPLE_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), BONOBO_TYPE_MONIKER_SIMPLE, BonoboMonikerSimpleClass)) #define BONOBO_IS_MONIKER_SIMPLE(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), BONOBO_TYPE_MONIKER_SIMPLE)) #define BONOBO_IS_MONIKER_SIMPLE_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), BONOBO_TYPE_MONIKER_SIMPLE)) #define BONOBO_TYPE_RESOLVE_FLAG (bonobo_resolve_flag_get_type ()) #define BONOBO_RESOLVE_FLAG_TYPE BONOBO_TYPE_RESOLVE_FLAG /* deprecated, you should use BONOBO_TYPE_RESOLVE_FLAG */ GType bonobo_resolve_flag_get_type (void) G_GNUC_CONST; typedef struct _BonoboMonikerSimple BonoboMonikerSimple; typedef struct _BonoboMonikerSimplePrivate BonoboMonikerSimplePrivate; typedef Bonobo_Unknown (*BonoboMonikerSimpleResolveFn) (BonoboMoniker *moniker, const Bonobo_ResolveOptions *options, const CORBA_char *requested_interface, CORBA_Environment *ev); struct _BonoboMonikerSimple { BonoboMoniker moniker; BonoboMonikerSimplePrivate *priv; }; typedef struct { BonoboMonikerClass parent_class; } BonoboMonikerSimpleClass; GType bonobo_moniker_simple_get_type (void) G_GNUC_CONST; BonoboMoniker *bonobo_moniker_simple_construct (BonoboMonikerSimple *moniker, const char *name, GClosure *resolve_closure); BonoboMoniker *bonobo_moniker_simple_new (const char *name, BonoboMonikerSimpleResolveFn resolve_fn); BonoboMoniker *bonobo_moniker_simple_new_closure (const char *name, GClosure *resolve_closure); G_END_DECLS #endif /* _BONOBO_MONIKER_SIMPLE_H_ */ libbonobo-2.32.1/bonobo/bonobo-listener.h0000644000076400007640000000465611173072711015240 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /* * bonobo-listener.h: Generic listener interface for callbacks. * * Authors: * Alex Graveley (alex@helixcode.com) * Mike Kestner (mkestner@ameritech.net) * * Copyright (C) 2000, Helix Code, Inc. */ #ifndef _BONOBO_LISTENER_H_ #define _BONOBO_LISTENER_H_ #include #include G_BEGIN_DECLS #define BONOBO_TYPE_LISTENER (bonobo_listener_get_type ()) #define BONOBO_LISTENER_TYPE BONOBO_TYPE_LISTENER /* deprecated, you should use BONOBO_TYPE_LISTENER */ #define BONOBO_LISTENER(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), BONOBO_TYPE_LISTENER, BonoboListener)) #define BONOBO_LISTENER_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), BONOBO_TYPE_LISTENER, BonoboListenerClass)) #define BONOBO_IS_LISTENER(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), BONOBO_TYPE_LISTENER)) #define BONOBO_IS_LISTENER_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), BONOBO_TYPE_LISTENER)) typedef struct _BonoboListenerPrivate BonoboListenerPrivate; typedef struct _BonoboListener BonoboListener; struct _BonoboListener { BonoboObject parent; BonoboListenerPrivate *priv; }; typedef struct { BonoboObjectClass parent_class; POA_Bonobo_Listener__epv epv; /* Signals */ void (* event_notify) (BonoboListener *listener, char *event_name, BonoboArg *event_data, CORBA_Environment *ev); } BonoboListenerClass; typedef void (*BonoboListenerCallbackFn) (BonoboListener *listener, const char *event_name, const CORBA_any *any, CORBA_Environment *ev, gpointer user_data); GType bonobo_listener_get_type (void) G_GNUC_CONST; BonoboListener *bonobo_listener_new (BonoboListenerCallbackFn event_cb, gpointer user_data); BonoboListener *bonobo_listener_new_closure (GClosure *event_closure); char *bonobo_event_make_name (const char *idl_path, const char *kind, const char *subtype); char *bonobo_event_type (const char *event_name); char *bonobo_event_subtype (const char *event_name); char *bonobo_event_kind (const char *event_name); char *bonobo_event_idl_path (const char *event_name); G_END_DECLS #endif /* _BONOBO_LISTENER_H_ */ libbonobo-2.32.1/bonobo/bonobo-context.c0000644000076400007640000000574411173072711015071 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /* * bonobo-context.h: Handle Global Component contexts. * * Author: * Michael Meeks (michael@helixcode.com) * * Copyright 2000 Ximian, Inc. */ #include #include #include #include #include #include static GHashTable *bonobo_contexts = NULL; /** * bonobo_context_add: * @context_name: the name to refer to the context by * @context: The Bonobo_Unknown; a ref. is taken on this. * * This function adds a new context to the context system **/ void bonobo_context_add (const CORBA_char *context_name, Bonobo_Unknown context) { g_return_if_fail (context != CORBA_OBJECT_NIL); if (!bonobo_contexts) bonobo_contexts = g_hash_table_new ( g_str_hash, g_str_equal); g_hash_table_insert (bonobo_contexts, g_strdup (context_name), bonobo_object_dup_ref (context, NULL)); } /** * bonobo_context_get: * @context_name: the name of the context * @opt_ev: optional Environment, or NULL * * The most useful context is named 'Activation' and returns * the IDL:Bonobo/ActivationContext:1.0 interface. * * Return value: a new reference to a global Bonobo context or CORBA_OBJECT_NIL **/ Bonobo_Unknown bonobo_context_get (const CORBA_char *context_name, CORBA_Environment *opt_ev) { Bonobo_Unknown ret; g_return_val_if_fail (context_name != NULL, CORBA_OBJECT_NIL); if ((ret = g_hash_table_lookup (bonobo_contexts, context_name))) return bonobo_object_dup_ref (ret, opt_ev); else return CORBA_OBJECT_NIL; } static void context_add (BonoboObject *object, const char *name) { CORBA_Object ref; ref = BONOBO_OBJREF (object); bonobo_context_add (name, ref); /* Don't count it as a running object; we always have it */ bonobo_running_context_ignore_object (ref); bonobo_object_unref (object); } /** * bonobo_context_init: * @void: * * Sets up the context system, internal use only, called * by bonobo_init. **/ void bonobo_context_init (void) { context_add (bonobo_moniker_context_new (), "Moniker"); context_add (bonobo_running_context_new (), "Running"); } static gboolean context_destroy (char *key, Bonobo_Unknown handle, gpointer dummy) { g_free (key); bonobo_object_release_unref (handle, NULL); return TRUE; } /** * bonobo_context_shutdown: * @void: * * Shuts down the context system, internal use only **/ void bonobo_context_shutdown (void) { Bonobo_Unknown m_context; if (!bonobo_contexts) return; m_context = g_hash_table_lookup (bonobo_contexts, "Moniker"); if (!ORBit_small_get_servant (m_context)) g_error ("In-proc object has no servant association\n" "this probably means you shutdown the ORB before " "you shutdown libbonobo\n"); g_hash_table_foreach_remove ( bonobo_contexts, (GHRFunc) context_destroy, NULL); g_hash_table_destroy (bonobo_contexts); bonobo_contexts = NULL; } libbonobo-2.32.1/bonobo/bonobo-exception.h0000644000076400007640000001004311173072711015374 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /* * bonobo-exception.c: a generic exception -> user string converter. * * Authors: * Michael Meeks (michael@helixcode.com) * * Copyright 2000 Helix Code, Inc. */ #ifndef _BONOBO_EXCEPTION_H_ #define _BONOBO_EXCEPTION_H_ #include #include #define bonobo_exception_set(opt_ev,repo_id) G_STMT_START{ \ if (opt_ev) { \ CORBA_exception_set (opt_ev, CORBA_USER_EXCEPTION, repo_id, NULL); \ } else { \ char *text = bonobo_exception_repoid_to_text (repo_id); \ g_log (G_LOG_DOMAIN, \ G_LOG_LEVEL_CRITICAL, \ "file %s: line %d: bonobo exception: `%s'", \ __FILE__, \ __LINE__, \ text); \ g_free (text); \ } }G_STMT_END #ifdef G_DISABLE_CHECKS #define bonobo_return_if_fail(expr,opt_ev) G_STMT_START{ \ if (!(expr)) { \ if (opt_ev) \ CORBA_exception_set (opt_ev, CORBA_USER_EXCEPTION, \ ex_Bonobo_BadArg, NULL); \ return; \ }; }G_STMT_END #define bonobo_return_val_if_fail(expr,val,opt_ev) G_STMT_START{ \ if (!(expr)) { \ if (opt_ev) \ CORBA_exception_set (opt_ev, CORBA_USER_EXCEPTION, \ ex_Bonobo_BadArg, NULL); \ return val; \ }; }G_STMT_END #else /* !G_DISABLE_CHECKS */ #define bonobo_return_if_fail(expr,opt_ev) G_STMT_START{ \ if (!(expr)) { \ if (opt_ev) \ CORBA_exception_set (opt_ev, CORBA_USER_EXCEPTION, \ ex_Bonobo_BadArg, NULL); \ g_log (G_LOG_DOMAIN, \ G_LOG_LEVEL_CRITICAL, \ "file %s: line %d (%s): assertion `%s' failed.", \ __FILE__, \ __LINE__, \ G_STRFUNC, \ #expr); \ return; \ }; }G_STMT_END #define bonobo_return_val_if_fail(expr,val,opt_ev) G_STMT_START{ \ if (!(expr)) { \ if (opt_ev) \ CORBA_exception_set (opt_ev, CORBA_USER_EXCEPTION, \ ex_Bonobo_BadArg, NULL); \ g_log (G_LOG_DOMAIN, \ G_LOG_LEVEL_CRITICAL, \ "file %s: line %d (%s): assertion `%s' failed.", \ __FILE__, \ __LINE__, \ G_STRFUNC, \ #expr); \ return val; \ }; }G_STMT_END #endif #define BONOBO_EX(ev) ((ev) != NULL && (ev)->_major != CORBA_NO_EXCEPTION) #define BONOBO_USER_EX(ev,id) ((ev != NULL) && (ev)->_major == CORBA_USER_EXCEPTION && \ (ev)->_id != NULL && !strcmp ((ev)->_id, id)) #define BONOBO_EX_REPOID(ev) (ev)->_id #define BONOBO_RET_EX(ev) \ G_STMT_START{ \ if (BONOBO_EX (ev)) \ return; \ }G_STMT_END #define BONOBO_RET_VAL_EX(ev,v) \ G_STMT_START{ \ if (BONOBO_EX (ev)) \ return (v); \ }G_STMT_END typedef char *(*BonoboExceptionFn) (CORBA_Environment *ev, gpointer user_data); char *bonobo_exception_get_text (CORBA_Environment *ev); char *bonobo_exception_repoid_to_text (const char *repo_id); void bonobo_exception_add_handler_str (const char *repo_id, const char *str); void bonobo_exception_add_handler_fn (const char *repo_id, BonoboExceptionFn fn, gpointer user_data, GDestroyNotify destroy_fn); void bonobo_exception_general_error_set (CORBA_Environment *ev, CORBA_TypeCode opt_deriv, const char *format, ...) G_GNUC_PRINTF(3,4); const char *bonobo_exception_general_error_get (CORBA_Environment *ev); #endif /* _BONOBO_EXCEPTION_H_ */ libbonobo-2.32.1/bonobo/bonobo-item-container.c0000644000076400007640000001467211173072711016323 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /** * bonobo-item-container.h: a generic container for monikers. * * The BonoboItemContainer object represents a document which may have one * or more embedded document objects. To embed an object in the * container, create a BonoboClientSite, add it to the container, and * then create an object supporting Bonobo::Embeddable and bind it to * the client site. The BonoboItemContainer maintains a list of the client * sites which correspond to the objects embedded in the container. * * Author: * Miguel de Icaza (miguel@kernel.org) * Nat Friedman (nat@nat.org) * * Copyright 1999, 2000 Ximian, Inc. */ #include #include #include #include #include #include #include #include enum { GET_OBJECT, LAST_SIGNAL }; static guint signals [LAST_SIGNAL] = { 0, }; #define PARENT_TYPE BONOBO_TYPE_OBJECT static GObjectClass *bonobo_item_container_parent_class; struct _BonoboItemContainerPrivate { GHashTable *objects; }; static gboolean remove_object (gpointer key, gpointer value, gpointer user_data) { g_free (key); bonobo_object_unref (value); return TRUE; } static void bonobo_item_container_finalize (GObject *object) { BonoboItemContainer *container = BONOBO_ITEM_CONTAINER (object); /* Destroy all the ClientSites. */ g_hash_table_foreach_remove (container->priv->objects, remove_object, NULL); g_hash_table_destroy (container->priv->objects); g_free (container->priv); bonobo_item_container_parent_class->finalize (object); } static void get_object_names (gpointer key, gpointer value, gpointer user_data) { GSList **l = user_data; *l = g_slist_prepend (*l, CORBA_string_dup (key)); } /* * Returns a list of the objects in this container */ static Bonobo_ItemContainer_ObjectNames * impl_Bonobo_ItemContainer_enumObjects (PortableServer_Servant servant, CORBA_Environment *ev) { Bonobo_ItemContainer_ObjectNames *list; BonoboItemContainer *container; GSList *objects, *l; int i; container = BONOBO_ITEM_CONTAINER ( bonobo_object_from_servant (servant)); g_return_val_if_fail (container != NULL, NULL); list = Bonobo_ItemContainer_ObjectNames__alloc (); if (!list) return NULL; objects = NULL; g_hash_table_foreach (container->priv->objects, get_object_names, &objects); list->_length = list->_maximum = g_slist_length (objects); list->_buffer = CORBA_sequence_CORBA_string_allocbuf (list->_length); if (!list->_buffer) { CORBA_free (list); for (l = objects; l; l = l->next) CORBA_free (l->data); g_slist_free (objects); return NULL; } /* Assemble the list of objects */ for (i = 0, l = objects; l; l = l->next) list->_buffer [i++] = l->data; g_slist_free (objects); return list; } static Bonobo_Unknown impl_Bonobo_ItemContainer_getObjectByName (PortableServer_Servant servant, const CORBA_char *item_name, CORBA_boolean only_if_exists, CORBA_Environment *ev) { Bonobo_Unknown ret; g_signal_emit ( G_OBJECT (bonobo_object_from_servant (servant)), signals [GET_OBJECT], 0, item_name, only_if_exists, ev, &ret); return ret; } /* BonoboItemContainer class initialization routine */ static void bonobo_item_container_class_init (BonoboItemContainerClass *klass) { GObjectClass *object_class = (GObjectClass *) klass; POA_Bonobo_ItemContainer__epv *epv = &klass->epv; bonobo_item_container_parent_class = g_type_class_peek_parent (klass); object_class->finalize = bonobo_item_container_finalize; signals [GET_OBJECT] = g_signal_new ("get_object", G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (BonoboItemContainerClass, get_object), NULL, NULL, bonobo_marshal_BOXED__STRING_BOOLEAN_BOXED, BONOBO_TYPE_UNKNOWN, 3, G_TYPE_STRING | G_SIGNAL_TYPE_STATIC_SCOPE, G_TYPE_BOOLEAN, BONOBO_TYPE_STATIC_CORBA_EXCEPTION); epv->enumObjects = impl_Bonobo_ItemContainer_enumObjects; epv->getObjectByName = impl_Bonobo_ItemContainer_getObjectByName; } /* * BonoboItemContainer instance initialization routine */ static void bonobo_item_container_init (BonoboItemContainer *container) { container->priv = g_new0 (BonoboItemContainerPrivate, 1); container->priv->objects = g_hash_table_new ( g_str_hash, g_str_equal); } BONOBO_TYPE_FUNC_FULL (BonoboItemContainer, Bonobo_ItemContainer, PARENT_TYPE, bonobo_item_container) /** * bonobo_item_container_new: * * Creates a new BonoboItemContainer object. These are used to hold * client sites. * * Returns: The newly created BonoboItemContainer object */ BonoboItemContainer * bonobo_item_container_new (void) { return g_object_new (bonobo_item_container_get_type (), NULL); } /** * bonobo_item_container_add: * @container: The object to operate on. * @name: The name of the object * @object: The object to add to the container * * Adds the @object to the list of objects managed by this * container */ void bonobo_item_container_add (BonoboItemContainer *container, const char *name, BonoboObject *object) { g_return_if_fail (name != NULL); g_return_if_fail (BONOBO_IS_OBJECT (object)); g_return_if_fail (BONOBO_IS_ITEM_CONTAINER (container)); if (g_hash_table_lookup (container->priv->objects, name)) { g_warning ("Object of name '%s' already exists", name); } else { bonobo_object_ref (object); g_hash_table_insert (container->priv->objects, g_strdup (name), object); } } /** * bonobo_item_container_remove_by_name: * @container: The object to operate on. * @name: The name of the object to remove from the container * * Removes the named object from the @container */ void bonobo_item_container_remove_by_name (BonoboItemContainer *container, const char *name) { gpointer key, value; g_return_if_fail (name != NULL); g_return_if_fail (BONOBO_IS_ITEM_CONTAINER (container)); if (!g_hash_table_lookup_extended (container->priv->objects, name, &key, &value)) g_warning ("Removing '%s' but not in container", name); else { g_free (key); bonobo_object_unref (value); g_hash_table_remove (container->priv->objects, name); } } libbonobo-2.32.1/bonobo/bonobo-item-handler.c0000644000076400007640000002472511173072711015756 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /** * bonobo-item-handler.c: a generic Item Container resolver (implements ItemContainer) * * Author: * Miguel de Icaza (miguel@kernel.org) * * Copyright 2000 Miguel de Icaza. */ #include #include #include #include #include #include #include #include #include "bonobo-item-handler.h" #define PARENT_TYPE BONOBO_TYPE_OBJECT static GObjectClass *bonobo_item_handler_parent_class; struct _BonoboItemHandlerPrivate { GClosure *enum_objects; GClosure *get_object; }; static void bonobo_marshal_POINTER__DUMMY_BOXED (GClosure *closure, GValue *return_value, guint n_param_values, const GValue *param_values, gpointer invocation_hint, gpointer marshal_data) { typedef gpointer (*GMarshalFunc_POINTER__POINTER_BOXED) (gpointer data1, gpointer arg_1, gpointer arg_2, gpointer data2); register GMarshalFunc_POINTER__POINTER_BOXED callback; register GCClosure *cc = (GCClosure*) closure; register gpointer data1, data2; gpointer v_return; g_return_if_fail (return_value != NULL); g_return_if_fail (n_param_values == 2); if (G_CCLOSURE_SWAP_DATA (closure)) { data1 = closure->data; data2 = g_value_peek_pointer (param_values + 0); } else { data1 = g_value_peek_pointer (param_values + 0); data2 = closure->data; } callback = (GMarshalFunc_POINTER__POINTER_BOXED) (marshal_data ? marshal_data : cc->callback); v_return = callback (data1, data2, g_value_get_boxed (param_values + 1), data2); g_value_set_pointer (return_value, v_return); } static void bonobo_marshal_BOXED__STRING_BOOLEAN_DUMMY_BOXED (GClosure *closure, GValue *return_value, guint n_param_values, const GValue *param_values, gpointer invocation_hint, gpointer marshal_data) { typedef gpointer (*GMarshalFunc_BOXED__STRING_BOOLEAN_POINTER_BOXED) (gpointer data1, gpointer arg_1, gboolean arg_2, gpointer arg_3, gpointer arg_4, gpointer data2); register GMarshalFunc_BOXED__STRING_BOOLEAN_POINTER_BOXED callback; register GCClosure *cc = (GCClosure*) closure; register gpointer data1, data2; gpointer v_return; g_return_if_fail (return_value != NULL); g_return_if_fail (n_param_values == 4); if (G_CCLOSURE_SWAP_DATA (closure)) { data1 = closure->data; data2 = g_value_peek_pointer (param_values + 0); } else { data1 = g_value_peek_pointer (param_values + 0); data2 = closure->data; } callback = (GMarshalFunc_BOXED__STRING_BOOLEAN_POINTER_BOXED) (marshal_data ? marshal_data : cc->callback); v_return = callback (data1, (char*) g_value_get_string (param_values + 1), g_value_get_boolean (param_values + 2), data2, g_value_get_boxed (param_values + 3), data2); g_value_take_boxed (return_value, v_return); } /* * Returns a list of the objects in this container */ static Bonobo_ItemContainer_ObjectNames * impl_enum_objects (PortableServer_Servant servant, CORBA_Environment *ev) { BonoboObject *object = bonobo_object_from_servant (servant); BonoboItemHandler *handler = BONOBO_ITEM_HANDLER (object); if (handler->priv->enum_objects) { Bonobo_ItemContainer_ObjectNames *ret; bonobo_closure_invoke (handler->priv->enum_objects, G_TYPE_POINTER, &ret, BONOBO_TYPE_ITEM_HANDLER, handler, BONOBO_TYPE_STATIC_CORBA_EXCEPTION, ev, G_TYPE_INVALID); return ret; } else return Bonobo_ItemContainer_ObjectNames__alloc (); } static Bonobo_Unknown impl_get_object (PortableServer_Servant servant, const CORBA_char *item_name, CORBA_boolean only_if_exists, CORBA_Environment *ev) { BonoboObject *object = bonobo_object_from_servant (servant); BonoboItemHandler *handler = BONOBO_ITEM_HANDLER (object); if (handler->priv->get_object) { Bonobo_Unknown ret; bonobo_closure_invoke (handler->priv->get_object, BONOBO_TYPE_STATIC_UNKNOWN, &ret, BONOBO_TYPE_ITEM_HANDLER, handler, G_TYPE_STRING, item_name, G_TYPE_BOOLEAN, only_if_exists, BONOBO_TYPE_STATIC_CORBA_EXCEPTION, ev, G_TYPE_INVALID); return ret; } else return CORBA_OBJECT_NIL; } static void bonobo_item_handler_finalize (GObject *object) { BonoboItemHandler *handler = BONOBO_ITEM_HANDLER (object); if (handler->priv) { if (handler->priv->enum_objects) g_closure_unref (handler->priv->enum_objects); if (handler->priv->get_object) g_closure_unref (handler->priv->get_object); g_free (handler->priv); handler->priv = NULL; } bonobo_item_handler_parent_class->finalize (object); } static void bonobo_item_handler_init (GObject *object) { BonoboItemHandler *handler = BONOBO_ITEM_HANDLER (object); handler->priv = g_new0 (BonoboItemHandlerPrivate, 1); } static void bonobo_item_handler_class_init (BonoboItemHandlerClass *klass) { POA_Bonobo_ItemContainer__epv *epv = &klass->epv; bonobo_item_handler_parent_class = g_type_class_peek_parent (klass); G_OBJECT_CLASS (klass)->finalize = bonobo_item_handler_finalize; epv->enumObjects = impl_enum_objects; epv->getObjectByName = impl_get_object; } BONOBO_TYPE_FUNC_FULL (BonoboItemHandler, Bonobo_ItemContainer, PARENT_TYPE, bonobo_item_handler) /** * bonobo_item_handler_construct: * @handler: The handler object to construct * @enum_objects: The closure implementing enumObjects * @get_object: The closure implementing getObject * * Constructs the @container BonoboObject using the provided closures * for the actual implementation. * * Returns: The constructed BonoboItemContainer object. */ BonoboItemHandler * bonobo_item_handler_construct (BonoboItemHandler *handler, GClosure *enum_objects, GClosure *get_object) { g_return_val_if_fail (handler != NULL, NULL); g_return_val_if_fail (BONOBO_IS_ITEM_HANDLER (handler), NULL); if (enum_objects) handler->priv->enum_objects = bonobo_closure_store (enum_objects, bonobo_marshal_POINTER__DUMMY_BOXED); if (get_object) handler->priv->get_object = bonobo_closure_store (get_object, bonobo_marshal_BOXED__STRING_BOOLEAN_DUMMY_BOXED); return handler; } /** * bonobo_item_handler_new: * @enum_objects: callback invoked for Bonobo::ItemContainer::enum_objects * @get_object: callback invoked for Bonobo::ItemContainer::get_objects * @user_data: extra data passed on the callbacks * * Creates a new BonoboItemHandler object. These are used to hold * client sites. * * Returns: The newly created BonoboItemHandler object */ BonoboItemHandler * bonobo_item_handler_new (BonoboItemHandlerEnumObjectsFn enum_objects, BonoboItemHandlerGetObjectFn get_object, gpointer user_data) { GClosure *enum_objects_closure = NULL; GClosure *get_object_closure = NULL; if (enum_objects) enum_objects_closure = g_cclosure_new (G_CALLBACK (enum_objects), user_data, NULL); if (get_object) get_object_closure = g_cclosure_new (G_CALLBACK (get_object), user_data, NULL); return bonobo_item_handler_new_closure (enum_objects_closure, get_object_closure); } /** * bonobo_item_handler_new_closure: * @enum_objects: closure invoked for Bonobo::ItemContainer::enum_objects * @get_object: closure invoked for Bonobo::ItemContainer::get_objects * * Creates a new BonoboItemHandler object. These are used to hold * client sites. * * Returns: The newly created BonoboItemHandler object */ BonoboItemHandler * bonobo_item_handler_new_closure (GClosure *enum_objects, GClosure *get_object) { BonoboItemHandler *handler; handler = g_object_new (bonobo_item_handler_get_type (), NULL); return bonobo_item_handler_construct (handler, enum_objects, get_object); } static GSList * bonobo_item_option_new_append (GSList *option_list, GString *key, GString *value) { BonoboItemOption *option; g_assert (key && key->str); option = g_new0 (BonoboItemOption, 1); option->key = key->str; g_string_free (key, FALSE); if (value) { option->value = value->str; g_string_free (value, FALSE); } return g_slist_append (option_list, option); } /** * bonobo_parse_item_options: * @option_string: a string with a list of options * * The bonobo_parse_item_options() routine parses the * @option_string which is a semi-colon separated list * of arguments. * * Each argument is of the form value[=key]. The entire * option string is defined by: * * option_string := keydef * | keydef ; option_string * * keydef := value [=key] * * The key can be literal values, values with spaces, and the * \ character is used as an escape sequence. To include a * literal ";" in a value you can use \;. * * Returns: A GSList that contains structures of type BonoboItemOption * each BonoboItemOption */ GSList * bonobo_item_option_parse (const char *option_string) { GSList *list = NULL; GString *key = NULL; GString *value = NULL; const char *p; for (p = option_string; *p; p++) switch (*p) { case '=': if (!key || value) goto parse_error_free; value = g_string_new (NULL); break; case ';': if (!key) break; list = bonobo_item_option_new_append (list, key, value); key = NULL; value = NULL; break; case '\\': if (!key || !*++p) goto parse_error_free; /* drop through */ default: if (!key) key = g_string_new (NULL); if (value) g_string_append_c (value, *p); else g_string_append_c (key, *p); break; } if (key) list = bonobo_item_option_new_append (list, key, value); return list; parse_error_free: if (key) g_string_free (key, TRUE); if (value) g_string_free (value, TRUE); return list; } /** * bonobo_item_options_free: * @options: a GSList of BonoboItemOption structures that was returned by bonobo_item_option_parse() * * Use this to release a list returned by bonobo_item_option_parse() */ void bonobo_item_options_free (GSList *options) { GSList *l; for (l = options; l; l = l->next) { BonoboItemOption *option = l->data; g_free (option->key); g_free (option->value); g_free (option); } g_slist_free (options); } libbonobo-2.32.1/bonobo/bonobo-persist-stream.c0000644000076400007640000001234111173072711016356 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /* * bonobo-persist-stream.c: PersistStream implementation. Can be used as a * base class, or directly for implementing objects that use PersistStream. * * Author: * Miguel de Icaza (miguel@kernel.org) * * Copyright 1999 Ximian, Inc. */ #include #include #include #include #include #define PARENT_TYPE BONOBO_TYPE_PERSIST /* Parent GTK object class */ static BonoboPersistClass *bonobo_persist_stream_parent_class; static void impl_load (PortableServer_Servant servant, Bonobo_Stream stream, const CORBA_char *type, CORBA_Environment *ev) { BonoboObject *object = bonobo_object_from_servant (servant); BonoboPersistStream *ps = BONOBO_PERSIST_STREAM (object); if (ps->load_fn != NULL) (*ps->load_fn)(ps, stream, (Bonobo_Persist_ContentType) type, ps->closure, ev); else { GObjectClass *oc = G_OBJECT_GET_CLASS (ps); BonoboPersistStreamClass *class = BONOBO_PERSIST_STREAM_CLASS (oc); if (class->load) (*class->load)(ps, stream, (Bonobo_Persist_ContentType) type, ev); else CORBA_exception_set ( ev, CORBA_USER_EXCEPTION, ex_Bonobo_NotSupported, NULL); } } static void impl_save (PortableServer_Servant servant, Bonobo_Stream stream, const CORBA_char *type, CORBA_Environment *ev) { BonoboObject *object = bonobo_object_from_servant (servant); BonoboPersistStream *ps = BONOBO_PERSIST_STREAM (object); if (ps->save_fn != NULL) (*ps->save_fn)(ps, stream, (Bonobo_Persist_ContentType) type, ps->closure, ev); else { GObjectClass *oc = G_OBJECT_GET_CLASS (ps); BonoboPersistStreamClass *class = BONOBO_PERSIST_STREAM_CLASS (oc); if (class->save) (*class->save)(ps, stream, (Bonobo_Persist_ContentType) type, ev); else CORBA_exception_set ( ev, CORBA_USER_EXCEPTION, ex_Bonobo_NotSupported, NULL); } ps->is_dirty = FALSE; } static Bonobo_Persist_ContentTypeList * get_content_types (BonoboPersist *persist, CORBA_Environment *ev) { BonoboPersistStream *ps = BONOBO_PERSIST_STREAM (persist); if (ps->types_fn) return ps->types_fn (ps, ps->closure, ev); else return bonobo_persist_generate_content_types (1, ""); } static void bonobo_persist_stream_class_init (BonoboPersistStreamClass *klass) { BonoboPersistClass *persist_class = BONOBO_PERSIST_CLASS (klass); POA_Bonobo_PersistStream__epv *epv = &klass->epv; bonobo_persist_stream_parent_class = g_type_class_peek_parent (klass); /* Override and initialize methods */ klass->save = NULL; klass->load = NULL; persist_class->get_content_types = get_content_types; epv->load = impl_load; epv->save = impl_save; } static void bonobo_persist_stream_init (BonoboPersistStream *ps) { /* nothing to do */ } BONOBO_TYPE_FUNC_FULL (BonoboPersistStream, Bonobo_PersistStream, PARENT_TYPE, bonobo_persist_stream) /** * bonobo_persist_stream_construct: * @ps: A BonoboPersistStream object * @load_fn: Loading routine * @save_fn: Saving routine * @types_fn: returns the supported types * @iid: OAF IID of the object this interface is aggregated to * @closure: Data passed to IO routines. * * Initializes the BonoboPersistStream object. The load and save * operations for the object are performed by the provided @load_fn * and @save_fn callback functions, which are passed @closure when * they are invoked. If either @load_fn or @save_fn is %NULL, the * corresponding operation is performed by the class load and save * routines. * * Returns: The initialized BonoboPersistStream object. */ BonoboPersistStream * bonobo_persist_stream_construct (BonoboPersistStream *ps, BonoboPersistStreamIOFn load_fn, BonoboPersistStreamIOFn save_fn, BonoboPersistStreamTypesFn types_fn, const gchar *iid, void *closure) { g_return_val_if_fail (ps != NULL, NULL); g_return_val_if_fail (BONOBO_IS_PERSIST_STREAM (ps), NULL); ps->load_fn = load_fn; ps->save_fn = save_fn; ps->types_fn = types_fn; ps->closure = closure; bonobo_persist_construct (BONOBO_PERSIST (ps), iid); return ps; } /** * bonobo_persist_stream_new: * @load_fn: Loading routine * @save_fn: Saving routine * @types_fn: get_content_types routine * @iid: OAF IID of the object this interface is aggregated to * @closure: Data passed to IO routines. * * Creates a new BonoboPersistStream object. The various operations * for the object are performed by the provided callback functions, * which are passed @closure when they are invoked. If any callback is * %NULL, the corresponding operation is performed by the class load * and save routines. * * Returns: the newly-created BonoboPersistStream object. */ BonoboPersistStream * bonobo_persist_stream_new (BonoboPersistStreamIOFn load_fn, BonoboPersistStreamIOFn save_fn, BonoboPersistStreamTypesFn types_fn, const gchar *iid, void *closure) { BonoboPersistStream *ps; ps = g_object_new (bonobo_persist_stream_get_type (), NULL); bonobo_persist_stream_construct (ps, load_fn, save_fn, types_fn, iid, closure); return ps; } libbonobo-2.32.1/bonobo/bonobo-application.h0000644000076400007640000000664511173072711015716 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ #ifndef _BONOBO_APPLICATION_H_ #define _BONOBO_APPLICATION_H_ #include G_BEGIN_DECLS #define BONOBO_TYPE_APPLICATION (bonobo_application_get_type ()) #define BONOBO_APPLICATION(o) (G_TYPE_CHECK_INSTANCE_CAST ((o),\ BONOBO_TYPE_APPLICATION, BonoboApplication)) #define BONOBO_APPLICATION_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k),\ BONOBO_TYPE_APPLICATION, BonoboApplicationClass)) #define BONOBO_IS_APPLICATION(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o),\ BONOBO_TYPE_APPLICATION)) #define BONOBO_IS_APPLICATION_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k),\ BONOBO_TYPE_APPLICATION)) #define BONOBO_APPLICATION_GET_CLASS(o)(G_TYPE_INSTANCE_GET_CLASS ((o),\ BONOBO_TYPE_APPLICATION, BonoboApplicationClass)) typedef struct _BonoboApplication BonoboApplication; typedef struct _BonoboApplicationClass BonoboApplicationClass; typedef void (*BonoboAppHookFunc) (BonoboApplication *app, gpointer data); #include struct _BonoboApplication { BonoboObject parent; GSList *message_list; gchar *name; GHashTable *closure_hash; }; struct _BonoboApplicationClass { BonoboObjectClass parent_class; GValue* (*message) (BonoboApplication *app, const char *name, GValueArray *args); gint (*new_instance) (BonoboApplication *app, gint argc, gchar *argv[]); gpointer unimplemented[8]; POA_Bonobo_Application__epv epv; }; GType bonobo_application_get_type (void) G_GNUC_CONST; BonoboApplication* bonobo_application_new (const char *name); void bonobo_application_register_message (BonoboApplication *app, const gchar *name, const gchar *description, GClosure *opt_closure, GType return_type, GType first_arg_type, ...); void bonobo_application_register_message_va (BonoboApplication *app, const gchar *name, const gchar *description, GClosure *opt_closure, GType return_type, GType first_arg_type, va_list var_args); void bonobo_application_register_message_v (BonoboApplication *app, const gchar *name, const gchar *description, GClosure *opt_closure, GType return_type, GType const arg_types[]); gchar * bonobo_application_create_serverinfo (BonoboApplication *app, gchar const *envp[]); Bonobo_RegistrationResult bonobo_application_register_unique (BonoboApplication *app, gchar const *serverinfo, BonoboAppClient **client); void bonobo_application_add_hook (BonoboAppHookFunc func, gpointer data); void bonobo_application_remove_hook (BonoboAppHookFunc func, gpointer data); gint bonobo_application_new_instance (BonoboApplication *app, gint argc, gchar *argv[]); G_END_DECLS #endif /* _BONOBO_APPLICATION_H_ */ libbonobo-2.32.1/bonobo/bonobo-generic-factory.h0000644000076400007640000001064411173072711016466 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /* * bonobo-generic-factory.h: a GenericFactory object. * * Author: * Miguel de Icaza (miguel@kernel.org) * RDI Gerg (cactus@cactus.rulez.org): cleanup * * Copyright 1999, 2001 Ximian, Inc., 2001 Gerg rdi */ #ifndef _BONOBO_GENERIC_FACTORY_H_ #define _BONOBO_GENERIC_FACTORY_H_ #include #include G_BEGIN_DECLS #define BONOBO_TYPE_GENERIC_FACTORY (bonobo_generic_factory_get_type ()) #define BONOBO_GENERIC_FACTORY_TYPE BONOBO_TYPE_GENERIC_FACTORY /* deprecated, you should use BONOBO_TYPE_GENERIC_FACTORY */ #define BONOBO_GENERIC_FACTORY(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), BONOBO_TYPE_GENERIC_FACTORY, BonoboGenericFactory)) #define BONOBO_GENERIC_FACTORY_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), BONOBO_TYPE_GENERIC_FACTORY, BonoboGenericFactoryClass)) #define BONOBO_IS_GENERIC_FACTORY(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), BONOBO_TYPE_GENERIC_FACTORY)) #define BONOBO_IS_GENERIC_FACTORY_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), BONOBO_TYPE_GENERIC_FACTORY)) typedef struct _BonoboGenericFactoryPrivate BonoboGenericFactoryPrivate; typedef struct _BonoboGenericFactory BonoboGenericFactory; typedef BonoboObject * (*BonoboFactoryCallback) (BonoboGenericFactory *factory, const char *component_id, gpointer closure); struct _BonoboGenericFactory { BonoboObject base; BonoboGenericFactoryPrivate *priv; }; typedef struct { BonoboObjectClass parent_class; POA_Bonobo_GenericFactory__epv epv; BonoboObject *(*new_generic) (BonoboGenericFactory *factory, const char *act_iid); } BonoboGenericFactoryClass; GType bonobo_generic_factory_get_type (void) G_GNUC_CONST; BonoboGenericFactory *bonobo_generic_factory_new (const char *act_iid, BonoboFactoryCallback factory_cb, gpointer user_data); BonoboGenericFactory *bonobo_generic_factory_new_closure (const char *act_iid, GClosure *factory_closure); BonoboGenericFactory *bonobo_generic_factory_construct (BonoboGenericFactory *factory, const char *act_iid, GClosure *factory_closure); void bonobo_generic_factory_construct_noreg (BonoboGenericFactory *factory, const char *act_iid, GClosure *factory_closure); int bonobo_generic_factory_main (const char *act_iid, BonoboFactoryCallback factory_cb, gpointer user_data); int bonobo_generic_factory_main_timeout (const char *act_iid, BonoboFactoryCallback factory_cb, gpointer user_data, guint quit_timeout); #if defined (__BONOBO_UI_MAIN_H__) || defined (LIBBONOBOUI_H) #define BONOBO_FACTORY_INIT(descr, version, argcp, argv) \ if (!bonobo_ui_init (descr, version, argcp, argv)) \ g_error ("Could not initialize Bonobo"); #else #define BONOBO_FACTORY_INIT(desc, version, argcp, argv) \ if (!bonobo_init (argcp, argv)) \ g_error ("Could not initialize Bonobo"); #endif #define BONOBO_OAF_FACTORY(oafiid, descr, version, callback, data) \ BONOBO_ACTIVATION_FACTORY(oafiid, descr, version, callback, data) #define BONOBO_OAF_FACTORY_MULTI(oafiid, descr, version, callback, data) \ BONOBO_ACTIVATION_FACTORY(oafiid, descr, version, callback, data) #define BONOBO_ACTIVATION_FACTORY(oafiid, descr, version, callback, data) \ int main (int argc, char *argv []) \ { \ g_thread_init (NULL); \ \ BONOBO_FACTORY_INIT (descr, version, &argc, argv); \ \ return bonobo_generic_factory_main (oafiid, callback, data); \ } #define BONOBO_ACTIVATION_FACTORY_TIMEOUT(oafiid, descr, version, callback, data, quit_timeout) \ int main (int argc, char *argv []) \ { \ g_thread_init (NULL); \ \ BONOBO_FACTORY_INIT (descr, version, &argc, argv); \ \ return bonobo_generic_factory_main_timeout (oafiid, callback, data, quit_timeout); \ } G_END_DECLS #endif libbonobo-2.32.1/bonobo/bonobo-moniker-extender.h0000644000076400007640000000471211173072711016664 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /** * bonobo-moniker-extender: extending monikers * * Author: * Dietmar Maurer (dietmar@maurer-it.com) * * Copyright 2000, Dietmar Maurer. */ #ifndef _BONOBO_MONIKER_EXTENDER_H_ #define _BONOBO_MONIKER_EXTENDER_H_ #include G_BEGIN_DECLS #define BONOBO_TYPE_MONIKER_EXTENDER (bonobo_moniker_extender_get_type ()) #define BONOBO_MONIKER_EXTENDER_TYPE BONOBO_TYPE_MONIKER_EXTENDER /* deprecated, you should use BONOBO_TYPE_MONIKER_EXTENDER */ #define BONOBO_MONIKER_EXTENDER(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), BONOBO_TYPE_MONIKER_EXTENDER, BonoboMonikerExtender)) #define BONOBO_MONIKER_EXTENDER_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), BONOBO_TYPE_MONIKER_EXTENDER, BonoboMonikerExtenderClass)) #define BONOBO_IS_MONIKER_EXTENDER(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), BONOBO_TYPE_MONIKER_EXTENDER)) #define BONOBO_IS_MONIKER_EXTENDER_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), BONOBO_TYPE_MONIKER_EXTENDER)) typedef struct _BonoboMonikerExtender BonoboMonikerExtender; typedef Bonobo_Unknown (*BonoboMonikerExtenderFn) (BonoboMonikerExtender *extender, const Bonobo_Moniker parent, const Bonobo_ResolveOptions *options, const CORBA_char *display_name, const CORBA_char *requested_interface, CORBA_Environment *ev); struct _BonoboMonikerExtender { BonoboObject object; BonoboMonikerExtenderFn resolve; gpointer data; }; typedef struct { BonoboObjectClass parent_class; POA_Bonobo_MonikerExtender__epv epv; BonoboMonikerExtenderFn resolve; } BonoboMonikerExtenderClass; GType bonobo_moniker_extender_get_type (void) G_GNUC_CONST; BonoboMonikerExtender *bonobo_moniker_extender_new (BonoboMonikerExtenderFn resolve, gpointer data); Bonobo_MonikerExtender bonobo_moniker_find_extender (const gchar *name, const gchar *interface, CORBA_Environment *opt_ev); Bonobo_Unknown bonobo_moniker_use_extender (const gchar *extender_oafiid, BonoboMoniker *moniker, const Bonobo_ResolveOptions *options, const CORBA_char *requested_interface, CORBA_Environment *opt_ev); G_END_DECLS #endif /* _BONOBO_MONIKER_EXTENDER_H_ */ libbonobo-2.32.1/bonobo/bonobo-storage.h0000644000076400007640000000223011173072711015041 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /* * gnome-storage.h: Storage manipulation. * * Author: * Miguel de Icaza (miguel@gnu.org). * * Copyright 1999 Helix Code, Inc. */ /* * Deprecation Warning: this object should not be used * directly. Instead, use a moniker-based approach. For example, * bonobo_get_object("file:/tmp", "IDL:Bonobo/Storate:1.0", &ev) will * return a Bonobo_Storage for directory /tmp. */ #ifndef _BONOBO_STORAGE_H_ #define _BONOBO_STORAGE_H_ #include G_BEGIN_DECLS #ifndef BONOBO_DISABLE_DEPRECATED /* For backwards compatibility */ #define BonoboStream BonoboObject #define BONOBO_STREAM(o) ((BonoboStream *)(o)) #define BONOBO_STREAM_CLASS(k) ((BonoboObjectClass *)(k)) #define BonoboStorage BonoboObject #define BONOBO_STORAGE(o) ((BonoboStorage *)(o)) #define BONOBO_STORAGE_CLASS(k) ((BonoboObjectClass *)(k)) #endif /* BONOBO_DISABLE_DEPRECATED */ /* The 1 useful impl. in here */ void bonobo_storage_copy_to (Bonobo_Storage src, Bonobo_Storage dest, CORBA_Environment *ev); G_END_DECLS #endif /* _BONOBO_STORAGE_H_ */ libbonobo-2.32.1/bonobo/Makefile.in0000664000076400007640000007266611546333027014047 00000000000000# Makefile.in generated by automake 1.11.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008, 2009 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@ VPATH = @srcdir@ 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 = bonobo DIST_COMMON = $(libbonoboinclude_HEADERS) $(noinst_HEADERS) \ $(srcdir)/Makefile.am $(srcdir)/Makefile.in \ $(srcdir)/libbonobo-2.0-uninstalled.pc.in \ $(srcdir)/libbonobo-2.0.pc.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.in 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 = libbonobo-2.0.pc libbonobo-2.0-uninstalled.pc 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__installdirs = "$(DESTDIR)$(libdir)" "$(DESTDIR)$(pkgconfigdir)" \ "$(DESTDIR)$(libbonoboincludedir)" LTLIBRARIES = $(lib_LTLIBRARIES) am__DEPENDENCIES_1 = libbonobo_2_la_DEPENDENCIES = $(am__DEPENDENCIES_1) \ $(top_builddir)/bonobo-activation/libbonobo-activation.la \ $(am__DEPENDENCIES_1) am__objects_1 = am__objects_2 = bonobo-moniker-context.lo bonobo-arg.lo \ bonobo-context.lo bonobo-event-source.lo bonobo-exception.lo \ bonobo-generic-factory.lo bonobo-item-container.lo \ bonobo-item-handler.lo bonobo-listener.lo bonobo-main.lo \ bonobo-moniker.lo bonobo-moniker-extender.lo \ bonobo-moniker-simple.lo bonobo-moniker-util.lo \ bonobo-object.lo bonobo-foreign-object.lo \ bonobo-persist-file.lo bonobo-persist-stream.lo \ bonobo-persist.lo bonobo-persist-client.lo \ bonobo-property-bag.lo bonobo-property-bag-client.lo \ bonobo-shlib-factory.lo bonobo-storage.lo \ bonobo-stream-client.lo bonobo-stream-memory.lo \ bonobo-storage-memory.lo bonobo-running-context.lo \ bonobo-application.lo bonobo-app-client.lo bonobo-types.lo \ bonobo-debug.lo am__objects_3 = Bonobo-common.lo Bonobo-stubs.lo Bonobo-skels.lo am_libbonobo_2_la_OBJECTS = $(am__objects_1) $(am__objects_2) \ $(am__objects_3) libbonobo_2_la_OBJECTS = $(am_libbonobo_2_la_OBJECTS) AM_V_lt = $(am__v_lt_$(V)) am__v_lt_ = $(am__v_lt_$(AM_DEFAULT_VERBOSITY)) am__v_lt_0 = --silent libbonobo_2_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ $(AM_CFLAGS) $(CFLAGS) $(libbonobo_2_la_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_$(V)) am__v_CC_ = $(am__v_CC_$(AM_DEFAULT_VERBOSITY)) am__v_CC_0 = @echo " CC " $@; AM_V_at = $(am__v_at_$(V)) am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) 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_$(V)) am__v_CCLD_ = $(am__v_CCLD_$(AM_DEFAULT_VERBOSITY)) am__v_CCLD_0 = @echo " CCLD " $@; AM_V_GEN = $(am__v_GEN_$(V)) am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) am__v_GEN_0 = @echo " GEN " $@; SOURCES = $(libbonobo_2_la_SOURCES) DIST_SOURCES = $(libbonobo_2_la_SOURCES) DATA = $(pkgconfig_DATA) HEADERS = $(libbonoboinclude_HEADERS) $(noinst_HEADERS) ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ AR = @AR@ AS = @AS@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ BONOBO_ACTIVATION_LT_VERSION_INFO = @BONOBO_ACTIVATION_LT_VERSION_INFO@ BONOBO_MAJOR_VERSION = @BONOBO_MAJOR_VERSION@ BONOBO_MICRO_VERSION = @BONOBO_MICRO_VERSION@ BONOBO_MINOR_VERSION = @BONOBO_MINOR_VERSION@ BONOBO_SLAY = @BONOBO_SLAY@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DISABLE_DEPRECATED_CFLAGS = @DISABLE_DEPRECATED_CFLAGS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GREP = @GREP@ GTHREAD_CFLAGS = @GTHREAD_CFLAGS@ GTHREAD_LIBS = @GTHREAD_LIBS@ GTKDOC_CHECK = @GTKDOC_CHECK@ GTKDOC_MKPDF = @GTKDOC_MKPDF@ GTKDOC_REBASE = @GTKDOC_REBASE@ HTML_DIR = @HTML_DIR@ IF_BSD_PS = @IF_BSD_PS@ IF_CYGWIN_PS = @IF_CYGWIN_PS@ IF_POSIX_PS = @IF_POSIX_PS@ 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@ LD = @LD@ LDFLAGS = @LDFLAGS@ LEX = @LEX@ LEXLIB = @LEXLIB@ LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ LFLAGS = @LFLAGS@ LIBBONOBO_CFLAGS = @LIBBONOBO_CFLAGS@ LIBBONOBO_LIBS = @LIBBONOBO_LIBS@ LIBBONOBO_LT_VERSION_INFO = @LIBBONOBO_LT_VERSION_INFO@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIPO = @LIPO@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ NM = @NM@ NMEDIT = @NMEDIT@ OBJDUMP = @OBJDUMP@ OBJEXT = @OBJEXT@ ORBIT_IDL = @ORBIT_IDL@ OTOOL = @OTOOL@ OTOOL64 = @OTOOL64@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PERL_PATH = @PERL_PATH@ PKG_CONFIG = @PKG_CONFIG@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ PS_PATH = @PS_PATH@ RANLIB = @RANLIB@ SEARCHPATHSEP = @SEARCHPATHSEP@ SED = @SED@ SERVER_CFLAGS = @SERVER_CFLAGS@ SERVER_LIBS = @SERVER_LIBS@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SOPREFIX = @SOPREFIX@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ WARN_CFLAGS = @WARN_CFLAGS@ XGETTEXT = @XGETTEXT@ YACC = @YACC@ YFLAGS = @YFLAGS@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ 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@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ lt_ECHO = @lt_ECHO@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ 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@ INCLUDES = \ -I$(top_srcdir) \ -I$(top_builddir) \ $(WARN_CFLAGS) \ $(LIBBONOBO_CFLAGS) \ -DPREFIX=\""$(prefix)"\" \ -DBONOBO_LIBDIR=\""$(libdir)"\" \ -DBONOBO_DATADIR=\""$(datadir)"\" \ -DBONOBO_PIXMAPDIR=\""$(datadir)/pixmaps"\" \ -DBONOBO_BINDIR=\""$(bindir)"\" \ -DBONOBO_LOCALSTATEDIR=\""$(localstatedir)"\" \ -DBONOBO_LOCALEDIR=\""$(datadir)/locale"\" \ -DBONOBO_EXPLICIT_TRANSLATION_DOMAIN="GETTEXT_PACKAGE" \ $(DISABLE_DEPRECATED_CFLAGS) \ -DG_LOG_DOMAIN=\"Bonobo\" \ -DVERSION=\"$(VERSION)\" AM_LDFLAGS = $(LIBBONOBO_LT_VERSION_INFO) CORBA_SOURCE = \ Bonobo.h \ Bonobo-common.c \ Bonobo-stubs.c \ Bonobo-skels.c idls = \ $(top_srcdir)/idl/Bonobo.idl \ $(top_srcdir)/idl/Bonobo_Canvas.idl \ $(top_srcdir)/idl/Bonobo_Context.idl \ $(top_srcdir)/idl/Bonobo_Control.idl \ $(top_srcdir)/idl/Bonobo_Embeddable.idl \ $(top_srcdir)/idl/Bonobo_Gdk.idl \ $(top_srcdir)/idl/Bonobo_ItemContainer.idl \ $(top_srcdir)/idl/Bonobo_Listener.idl \ $(top_srcdir)/idl/Bonobo_Moniker.idl \ $(top_srcdir)/idl/Bonobo_Persist.idl \ $(top_srcdir)/idl/Bonobo_Print.idl \ $(top_srcdir)/idl/Bonobo_Property.idl \ $(top_srcdir)/idl/Bonobo_Storage.idl \ $(top_srcdir)/idl/Bonobo_UI.idl \ $(top_srcdir)/idl/Bonobo_Zoomable.idl \ $(top_srcdir)/idl/Bonobo_Exception.idl \ $(top_srcdir)/idl/Bonobo_Application.idl \ $(top_srcdir)/idl/Bonobo_Clipboard.idl idl_flags = -I$(top_srcdir)/idl -D__Bonobo_COMPILATION lib_LTLIBRARIES = libbonobo-2.la libbonobo_2_la_LIBADD = \ $(LIBBONOBO_LIBS) \ $(top_builddir)/bonobo-activation/libbonobo-activation.la \ $(INTLLIBS) libbonobo_2_la_LDFLAGS = -no-undefined libbonoboincludedir = $(includedir)/libbonobo-2.0/bonobo libbonoboinclude_HEADERS = \ Bonobo.h \ bonobo-arg.h \ bonobo-context.h \ bonobo-event-source.h \ bonobo-exception.h \ bonobo-generic-factory.h \ bonobo-item-container.h \ bonobo-item-handler.h \ bonobo-listener.h \ bonobo-main.h \ bonobo-macros.h \ bonobo-moniker-extender.h \ bonobo-moniker-simple.h \ bonobo-moniker-util.h \ bonobo-moniker.h \ bonobo-object.h \ bonobo-foreign-object.h \ bonobo-persist-file.h \ bonobo-persist-stream.h \ bonobo-persist.h \ bonobo-persist-client.h \ bonobo-property-bag.h \ bonobo-property-bag-client.h \ bonobo-shlib-factory.h \ bonobo-storage.h \ bonobo-stream.h \ bonobo-stream-client.h \ bonobo-stream-memory.h \ bonobo-storage-memory.h \ bonobo-xobject.h \ bonobo-i18n.h \ bonobo-application.h \ bonobo-app-client.h \ bonobo-types.h noinst_HEADERS = \ bonobo-moniker-context.h \ bonobo-running-context.h \ bonobo-private.h \ bonobo-marshal.h libbonobo_src = \ bonobo-moniker-context.c \ bonobo-arg.c \ bonobo-context.c \ bonobo-event-source.c \ bonobo-exception.c \ bonobo-generic-factory.c \ bonobo-item-container.c \ bonobo-item-handler.c \ bonobo-listener.c \ bonobo-main.c \ bonobo-moniker.c \ bonobo-moniker-extender.c \ bonobo-moniker-simple.c \ bonobo-moniker-util.c \ bonobo-object.c \ bonobo-foreign-object.c \ bonobo-persist-file.c \ bonobo-persist-stream.c \ bonobo-persist.c \ bonobo-persist-client.c \ bonobo-property-bag.c \ bonobo-property-bag-client.c \ bonobo-shlib-factory.c \ bonobo-storage.c \ bonobo-stream-client.c \ bonobo-stream-memory.c \ bonobo-storage-memory.c \ bonobo-running-context.c \ bonobo-application.c \ bonobo-app-client.c \ bonobo-types.c \ bonobo-debug.c \ bonobo-debug.h libbonobo_2_la_SOURCES = \ $(libbonoboinclude_HEADERS) \ $(libbonobo_src) \ $(CORBA_SOURCE) marshal_sources = \ bonobo-marshal.c \ bonobo-marshal.h EXTRA_DIST = libbonobo-2.0.pc.in libbonobo-2.0-uninstalled.pc.in bonobo-marshal.list pkgconfigdir = $(libdir)/pkgconfig pkgconfig_DATA = libbonobo-2.0.pc BUILT_SOURCES = $(CORBA_SOURCE) $(marshal_sources) CLEANFILES = $(BUILT_SOURCES) all: $(BUILT_SOURCES) $(MAKE) $(AM_MAKEFLAGS) 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) --foreign bonobo/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --foreign bonobo/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): libbonobo-2.0.pc: $(top_builddir)/config.status $(srcdir)/libbonobo-2.0.pc.in cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ libbonobo-2.0-uninstalled.pc: $(top_builddir)/config.status $(srcdir)/libbonobo-2.0-uninstalled.pc.in cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ install-libLTLIBRARIES: $(lib_LTLIBRARIES) @$(NORMAL_INSTALL) test -z "$(libdir)" || $(MKDIR_P) "$(DESTDIR)$(libdir)" @list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \ list2=; for p in $$list; do \ if test -f $$p; then \ list2="$$list2 $$p"; \ else :; fi; \ done; \ test -z "$$list2" || { \ echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(libdir)'"; \ $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(libdir)"; \ } uninstall-libLTLIBRARIES: @$(NORMAL_UNINSTALL) @list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \ for p in $$list; do \ $(am__strip_dir) \ echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(libdir)/$$f'"; \ $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(libdir)/$$f"; \ done clean-libLTLIBRARIES: -test -z "$(lib_LTLIBRARIES)" || rm -f $(lib_LTLIBRARIES) @list='$(lib_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 libbonobo-2.la: $(libbonobo_2_la_OBJECTS) $(libbonobo_2_la_DEPENDENCIES) $(AM_V_CCLD)$(libbonobo_2_la_LINK) -rpath $(libdir) $(libbonobo_2_la_OBJECTS) $(libbonobo_2_la_LIBADD) $(LIBS) mostlyclean-compile: -rm -f *.$(OBJEXT) distclean-compile: -rm -f *.tab.c @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Bonobo-common.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Bonobo-skels.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Bonobo-stubs.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-app-client.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-application.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-arg.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-context.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-debug.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-event-source.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-exception.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-foreign-object.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-generic-factory.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-item-container.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-item-handler.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-listener.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-main.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-moniker-context.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-moniker-extender.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-moniker-simple.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-moniker-util.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-moniker.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-object.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-persist-client.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-persist-file.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-persist-stream.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-persist.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-property-bag-client.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-property-bag.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-running-context.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-shlib-factory.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-storage-memory.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-storage.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-stream-client.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-stream-memory.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-types.Plo@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 @am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(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 @am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(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 @am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $< mostlyclean-libtool: -rm -f *.lo clean-libtool: -rm -rf .libs _libs install-pkgconfigDATA: $(pkgconfig_DATA) @$(NORMAL_INSTALL) test -z "$(pkgconfigdir)" || $(MKDIR_P) "$(DESTDIR)$(pkgconfigdir)" @list='$(pkgconfig_DATA)'; test -n "$(pkgconfigdir)" || list=; \ for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ echo "$$d$$p"; \ done | $(am__base_list) | \ while read files; do \ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(pkgconfigdir)'"; \ $(INSTALL_DATA) $$files "$(DESTDIR)$(pkgconfigdir)" || exit $$?; \ done uninstall-pkgconfigDATA: @$(NORMAL_UNINSTALL) @list='$(pkgconfig_DATA)'; test -n "$(pkgconfigdir)" || list=; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ test -n "$$files" || exit 0; \ echo " ( cd '$(DESTDIR)$(pkgconfigdir)' && rm -f" $$files ")"; \ cd "$(DESTDIR)$(pkgconfigdir)" && rm -f $$files install-libbonoboincludeHEADERS: $(libbonoboinclude_HEADERS) @$(NORMAL_INSTALL) test -z "$(libbonoboincludedir)" || $(MKDIR_P) "$(DESTDIR)$(libbonoboincludedir)" @list='$(libbonoboinclude_HEADERS)'; test -n "$(libbonoboincludedir)" || list=; \ 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_HEADER) $$files '$(DESTDIR)$(libbonoboincludedir)'"; \ $(INSTALL_HEADER) $$files "$(DESTDIR)$(libbonoboincludedir)" || exit $$?; \ done uninstall-libbonoboincludeHEADERS: @$(NORMAL_UNINSTALL) @list='$(libbonoboinclude_HEADERS)'; test -n "$(libbonoboincludedir)" || list=; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ test -n "$$files" || exit 0; \ echo " ( cd '$(DESTDIR)$(libbonoboincludedir)' && rm -f" $$files ")"; \ cd "$(DESTDIR)$(libbonoboincludedir)" && rm -f $$files 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 $(MAKE) $(AM_MAKEFLAGS) \ top_distdir="$(top_distdir)" distdir="$(distdir)" \ dist-hook check-am: all-am check: $(BUILT_SOURCES) $(MAKE) $(AM_MAKEFLAGS) check-am all-am: Makefile $(LTLIBRARIES) $(DATA) $(HEADERS) installdirs: for dir in "$(DESTDIR)$(libdir)" "$(DESTDIR)$(pkgconfigdir)" "$(DESTDIR)$(libbonoboincludedir)"; 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: $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install 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-libLTLIBRARIES 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-libbonoboincludeHEADERS install-pkgconfigDATA install-dvi: install-dvi-am install-dvi-am: install-exec-am: install-libLTLIBRARIES 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-libLTLIBRARIES \ uninstall-libbonoboincludeHEADERS uninstall-pkgconfigDATA .MAKE: all check install install-am install-strip .PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \ clean-libLTLIBRARIES clean-libtool ctags dist-hook 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-libLTLIBRARIES install-libbonoboincludeHEADERS \ install-man install-pdf install-pdf-am install-pkgconfigDATA \ 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-libLTLIBRARIES \ uninstall-libbonoboincludeHEADERS uninstall-pkgconfigDATA $(CORBA_SOURCE): $(idls) $(ORBIT_IDL) $(AM_V_GEN) $(ORBIT_IDL) $(idl_flags) $(top_srcdir)/idl/Bonobo.idl $(libbonobo_2_la_OBJECTS): Bonobo.h $(marshal_sources) bonobo-marshal.h: bonobo-marshal.list Makefile $(AM_V_GEN) $(GLIB_GENMARSHAL) $< --header --prefix=bonobo_marshal > $@ bonobo-marshal.c: bonobo-marshal.list Makefile $(AM_V_GEN) $(GLIB_GENMARSHAL) $< --body --prefix=bonobo_marshal > $@ dist-hook: cd $(distdir); rm -f $(BUILT_SOURCES) # 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: libbonobo-2.32.1/bonobo/bonobo-property-bag.h0000644000076400007640000001054011173072711016013 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /* * bonobo-property-bag.h: property bag object implementation. * * Authors: * Nat Friedman (nat@ximian.com) * Michael Meeks (michael@ximian.com) * Dietmar Maurer (dietmar@ximian.com) * * Copyright 2001 Ximian, Inc. */ #ifndef __BONOBO_PROPERTY_BAG_H__ #define __BONOBO_PROPERTY_BAG_H__ #include #include #include G_BEGIN_DECLS #define BONOBO_PROPERTY_READABLE Bonobo_PROPERTY_READABLE #define BONOBO_PROPERTY_WRITEABLE Bonobo_PROPERTY_WRITEABLE #define BONOBO_PROPERTY_WRITABLE Bonobo_PROPERTY_WRITEABLE #define BONOBO_PROPERTY_NO_LISTENING Bonobo_PROPERTY_NO_LISTENING #define BONOBO_PROPERTY_NO_AUTONOTIFY Bonobo_PROPERTY_NO_AUTONOTIFY typedef struct _BonoboPropertyBagPrivate BonoboPropertyBagPrivate; typedef struct _BonoboPropertyBag BonoboPropertyBag; typedef struct _BonoboProperty BonoboProperty; typedef struct _BonoboPropertyPrivate BonoboPropertyPrivate; typedef void (*BonoboPropertyGetFn) (BonoboPropertyBag *bag, BonoboArg *arg, guint arg_id, CORBA_Environment *ev, gpointer user_data); typedef void (*BonoboPropertySetFn) (BonoboPropertyBag *bag, const BonoboArg *arg, guint arg_id, CORBA_Environment *ev, gpointer user_data); struct _BonoboProperty { char *name; int idx; BonoboArgType type; BonoboArg *default_value; char *doctitle; char *docstring; Bonobo_PropertyFlags flags; BonoboPropertyPrivate *priv; }; struct _BonoboPropertyBag { BonoboObject parent; BonoboPropertyBagPrivate *priv; BonoboEventSource *es; }; typedef struct { BonoboObjectClass parent; POA_Bonobo_PropertyBag__epv epv; } BonoboPropertyBagClass; #define BONOBO_TYPE_PROPERTY_BAG (bonobo_property_bag_get_type ()) #define BONOBO_PROPERTY_BAG_TYPE BONOBO_TYPE_PROPERTY_BAG /* deprecated, you should use BONOBO_TYPE_PROPERTY_BAG */ #define BONOBO_PROPERTY_BAG(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), BONOBO_TYPE_PROPERTY_BAG, BonoboPropertyBag)) #define BONOBO_PROPERTY_BAG_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), BONOBO_TYPE_PROPERTY_BAG, BonoboPropertyBagClass)) #define BONOBO_IS_PROPERTY_BAG(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), BONOBO_TYPE_PROPERTY_BAG)) #define BONOBO_IS_PROPERTY_BAG_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), BONOBO_TYPE_PROPERTY_BAG)) GType bonobo_property_bag_get_type (void) G_GNUC_CONST; BonoboPropertyBag * bonobo_property_bag_new (BonoboPropertyGetFn get_prop_cb, BonoboPropertySetFn set_prop_cb, gpointer user_data); BonoboPropertyBag * bonobo_property_bag_new_closure (GClosure *get_prop, GClosure *set_prop); BonoboPropertyBag * bonobo_property_bag_new_full (GClosure *get_prop, GClosure *set_prop, BonoboEventSource *es); BonoboPropertyBag * bonobo_property_bag_construct (BonoboPropertyBag *pb, GClosure *get_prop, GClosure *set_prop, BonoboEventSource *es); void bonobo_property_bag_add (BonoboPropertyBag *pb, const char *name, int idx, BonoboArgType type, BonoboArg *default_value, const char *doctitle, Bonobo_PropertyFlags flags); void bonobo_property_bag_add_full (BonoboPropertyBag *pb, const char *name, int idx, BonoboArgType type, BonoboArg *default_value, const char *doctitle, const char *docstring, Bonobo_PropertyFlags flags, GClosure *get_prop, GClosure *set_prop); void bonobo_property_bag_remove (BonoboPropertyBag *pb, const char *name); void bonobo_property_bag_map_params (BonoboPropertyBag *pb, GObject *on_instance, const GParamSpec **pspecs, guint n_params); GList * bonobo_property_bag_get_prop_list (BonoboPropertyBag *pb); G_END_DECLS #endif /* ! __BONOBO_PROPERTY_BAG_H__ */ libbonobo-2.32.1/bonobo/libbonobo-2.0-uninstalled.pc.in0000644000076400007640000000067511173072711017476 00000000000000prefix=@prefix@ exec_prefix=@exec_prefix@ libdir=@libdir@ includedir=@includedir@ datarootdir=@datarootdir@ idldir=@datadir@/idl/bonobo-2.0 idlinclude=@datadir@/idl/bonobo-2.0 @datadir@/idl/bonobo-activation-2.0 Name: libbonobo Description: libbonobo Requires: glib-2.0 gmodule-no-export-2.0.pc ORBit-2.0 bonobo-activation-2.0 Version: @VERSION@ Libs: ${pc_top_builddir}/${pcfiledir}/libbonobo-2.la Cflags: -I${pc_top_builddir}/${pcfiledir}/.. libbonobo-2.32.1/bonobo/bonobo-macros.h0000644000076400007640000000674311173072711014676 00000000000000/** * Useful macros. * * Author: * Darin Adler * * Copyright 2001 Ben Tea Spoons, Inc. */ #ifndef _BONOBO_MACROS_H_ #define _BONOBO_MACROS_H_ #include G_BEGIN_DECLS /* Macros for defining classes. Ideas taken from Nautilus and GOB. */ /* Define the boilerplate type stuff to reduce typos and code size. Defines * the get_type method and the parent_class static variable. */ #define BONOBO_BOILERPLATE(type, type_as_function, corba_type, \ parent_type, parent_type_macro, \ register_type_macro) \ static void type_as_function ## _class_init (type ## Class *klass); \ static void type_as_function ## _instance_init (type *object); \ static parent_type ## Class *parent_class = NULL; \ static void \ type_as_function ## _class_init_trampoline (gpointer klass, \ gpointer data) \ { \ parent_class = (parent_type ## Class *)g_type_class_ref ( \ parent_type_macro); \ type_as_function ## _class_init ((type ## Class *)klass); \ } \ GType \ type_as_function ## _get_type (void) \ { \ static GType object_type = 0; \ if (object_type == 0) { \ static const GTypeInfo object_info = { \ sizeof (type ## Class), \ NULL, /* base_init */ \ NULL, /* base_finalize */ \ type_as_function ## _class_init_trampoline, \ NULL, /* class_finalize */ \ NULL, /* class_data */ \ sizeof (type), \ 0, /* n_preallocs */ \ (GInstanceInitFunc) type_as_function ## _instance_init \ }; \ object_type = register_type_macro \ (type, type_as_function, corba_type, \ parent_type, parent_type_macro); \ } \ return object_type; \ } /* Just call the parent handler. This assumes that there is a variable * named parent_class that points to the (duh!) parent class. Note that * this macro is not to be used with things that return something, use * the _WITH_DEFAULT version for that */ #define BONOBO_CALL_PARENT(parent_class_cast, name, args) \ ((parent_class_cast(parent_class)->name != NULL) ? \ parent_class_cast(parent_class)->name args : (void)0) /* Same as above, but in case there is no implementation, it evaluates * to def_return */ #define BONOBO_CALL_PARENT_WITH_DEFAULT(parent_class_cast, \ name, args, def_return) \ ((parent_class_cast(parent_class)->name != NULL) ? \ parent_class_cast(parent_class)->name args : def_return) #define BONOBO_CLASS_BOILERPLATE(type, type_as_function, \ parent_type, parent_type_macro) \ BONOBO_BOILERPLATE(type, type_as_function, type, \ parent_type, parent_type_macro, \ BONOBO_REGISTER_TYPE) #define BONOBO_REGISTER_TYPE(type, type_as_function, corba_type, \ parent_type, parent_type_macro) \ bonobo_type_unique (parent_type_macro, NULL, NULL, 0, \ &object_info, #type) #define BONOBO_CLASS_BOILERPLATE_FULL(type, type_as_function, \ corba_type, \ parent_type, parent_type_macro) \ BONOBO_BOILERPLATE(type, type_as_function, corba_type, \ parent_type, parent_type_macro, \ BONOBO_REGISTER_TYPE_FULL) #define BONOBO_REGISTER_TYPE_FULL(type, type_as_function, corba_type, \ parent_type, parent_type_macro) \ bonobo_type_unique (parent_type_macro, \ POA_##corba_type##__init, \ POA_##corba_type##__fini, \ G_STRUCT_OFFSET (type##Class, epv), \ &object_info, #type) G_END_DECLS #endif /* _BONOBO_MACROS_H_ */ libbonobo-2.32.1/bonobo/bonobo-stream-memory.h0000644000076400007640000000433211173072711016203 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /** * bonobo-stream-memory.h: Memory based stream * * Author: * Miguel de Icaza (miguel@gnu.org) * * Copyright 1999, 2000 Helix Code, Inc. */ #ifndef _BONOBO_STREAM_MEM_H_ #define _BONOBO_STREAM_MEM_H_ #include G_BEGIN_DECLS struct _BonoboStreamMem; typedef struct _BonoboStreamMem BonoboStreamMem; typedef struct _BonoboStreamMemPrivate BonoboStreamMemPrivate; #define BONOBO_TYPE_STREAM_MEM (bonobo_stream_mem_get_type ()) #define BONOBO_STREAM_MEM_TYPE BONOBO_TYPE_STREAM_MEM /* deprecated, you should use BONOBO_TYPE_STREAM_MEM */ #define BONOBO_STREAM_MEM(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), BONOBO_TYPE_STREAM_MEM, BonoboStreamMem)) #define BONOBO_STREAM_MEM_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), BONOBO_TYPE_STREAM_MEM, BonoboStreamMemClass)) #define BONOBO_IS_STREAM_MEM(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), BONOBO_TYPE_STREAM_MEM)) #define BONOBO_IS_STREAM_MEM_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), BONOBO_TYPE_STREAM_MEM)) struct _BonoboStreamMem { BonoboObject parent; char *buffer; size_t size; long pos; gboolean read_only; gboolean resizable; char *content_type; char *name; BonoboStreamMemPrivate *priv; }; typedef struct { BonoboObjectClass parent_class; POA_Bonobo_Stream__epv epv; char *(*get_buffer) (BonoboStreamMem *stream_mem); size_t (*get_size) (BonoboStreamMem *stream_mem); } BonoboStreamMemClass; GType bonobo_stream_mem_get_type (void) G_GNUC_CONST; BonoboStreamMem *bonobo_stream_mem_construct (BonoboStreamMem *stream_mem, const char *buffer, size_t size, gboolean read_only, gboolean resizable); BonoboObject *bonobo_stream_mem_create (const char *buffer, size_t size, gboolean read_only, gboolean resizable); const char *bonobo_stream_mem_get_buffer (BonoboStreamMem *stream_mem); size_t bonobo_stream_mem_get_size (BonoboStreamMem *stream_mem); G_END_DECLS #endif /* _BONOBO_STREAM_MEM_H_ */ libbonobo-2.32.1/bonobo/bonobo-persist.h0000644000076400007640000000333611173072711015076 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /** * bonobo-persist.h: a persistance interface * * Author: * Miguel de Icaza (miguel@kernel.org) * * Copyright 1999 Helix Code, Inc. */ #ifndef _BONOBO_PERSIST_H_ #define _BONOBO_PERSIST_H_ #include G_BEGIN_DECLS #define BONOBO_TYPE_PERSIST (bonobo_persist_get_type ()) #define BONOBO_PERSIST_TYPE BONOBO_TYPE_PERSIST /* deprecated, you should use BONOBO_TYPE_PERSIST */ #define BONOBO_PERSIST(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), BONOBO_TYPE_PERSIST, BonoboPersist)) #define BONOBO_PERSIST_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), BONOBO_TYPE_PERSIST, BonoboPersistClass)) #define BONOBO_IS_PERSIST(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), BONOBO_TYPE_PERSIST)) #define BONOBO_IS_PERSIST_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), BONOBO_TYPE_PERSIST)) typedef struct _BonoboPersistPrivate BonoboPersistPrivate; typedef struct _BonoboPersist BonoboPersist; struct _BonoboPersist { BonoboObject object; BonoboPersistPrivate *priv; }; typedef struct { BonoboObjectClass parent_class; POA_Bonobo_Persist__epv epv; Bonobo_Persist_ContentTypeList * (*get_content_types) (BonoboPersist *persist, CORBA_Environment *ev); } BonoboPersistClass; GType bonobo_persist_get_type (void) G_GNUC_CONST; Bonobo_Persist_ContentTypeList *bonobo_persist_generate_content_types (int num, ...); BonoboPersist *bonobo_persist_construct (BonoboPersist *persist, const gchar *iid); void bonobo_persist_set_dirty (BonoboPersist *persist, gboolean dirty); G_END_DECLS #endif /* _BONOBO_PERSIST_H_ */ libbonobo-2.32.1/bonobo/bonobo-i18n.h0000644000076400007640000000247711173072711014171 00000000000000/* * Copyright (C) 1997, 1998, 1999, 2000 Free Software Foundation * All rights reserved. * * This file is part of the Gnome Library. * * The Gnome Library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library General Public License as * published by the Free Software Foundation; either version 2 of the * License, or (at your option) any later version. * * The Gnome 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 * Library General Public License for more details. * * You should have received a copy of the GNU Library General Public * License along with the Gnome Library; see the file COPYING.LIB. If not, * write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, * Boston, MA 02111-1307, USA. */ /* @NOTATION@ */ /* * Handles all of the internationalization configuration options. * Author: Tom Tromey */ #ifndef __BONOBO_I18N_H__ #define __BONOBO_I18N_H__ 1 #ifndef BONOBO_DISABLE_DEPRECATED #ifdef BONOBO_EXPLICIT_TRANSLATION_DOMAIN #include #else #include #endif #endif /* !BONOBO_DISABLE_DEPRECATED */ #endif /* __BONOBO_I18N_H__ */ libbonobo-2.32.1/bonobo/bonobo-persist-client.h0000644000076400007640000000122611173072711016346 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /** * bonobo-persist-client.h: Client-side utility functions dealing with persistancy * * Author: * RDI Gerg * * Copyright 2001 Gerg rdi */ #ifndef _BONOBO_PERSIST_CLIENT_H_ #define _BONOBO_PERSIST_CLIENT_H_ #include G_BEGIN_DECLS void bonobo_object_save_to_stream (Bonobo_Unknown object, Bonobo_Stream stream, CORBA_Environment *opt_ev); Bonobo_Unknown bonobo_object_from_stream (Bonobo_Stream stream, CORBA_Environment *opt_ev); G_END_DECLS #endif /* _BONOBO_PERSIST_CLIENT_H_ */ libbonobo-2.32.1/bonobo/bonobo-types.h0000644000076400007640000001013611173072711014545 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /** * GRuntime types for CORBA Objects. * * Authors: * Martin Baulig (baulig@suse.de) * * Copyright 2001 SuSE Linux AG. */ #ifndef _BONOBO_TYPES_H_ #define _BONOBO_TYPES_H_ #include #include #include #include #include G_BEGIN_DECLS GType bonobo_corba_object_type_register_static (const gchar *name, const CORBA_TypeCode tc, gboolean is_bonobo_unknown) G_GNUC_CONST; GType bonobo_unknown_get_type (void) G_GNUC_CONST; GType bonobo_corba_any_get_type (void) G_GNUC_CONST; GType bonobo_corba_object_get_type (void) G_GNUC_CONST; GType bonobo_corba_typecode_get_type (void) G_GNUC_CONST; GType bonobo_corba_exception_get_type (void) G_GNUC_CONST; #define BONOBO_TYPE_UNKNOWN (bonobo_unknown_get_type ()) #define BONOBO_TYPE_CORBA_ANY (bonobo_corba_any_get_type ()) #define BONOBO_TYPE_CORBA_OBJECT (bonobo_corba_object_get_type ()) #define BONOBO_TYPE_CORBA_TYPECODE (bonobo_corba_typecode_get_type ()) #define BONOBO_TYPE_CORBA_EXCEPTION (bonobo_corba_exception_get_type ()) #define BONOBO_TYPE_STATIC_UNKNOWN (bonobo_unknown_get_type () | G_SIGNAL_TYPE_STATIC_SCOPE) #define BONOBO_TYPE_STATIC_CORBA_ANY (bonobo_corba_any_get_type () | G_SIGNAL_TYPE_STATIC_SCOPE) #define BONOBO_TYPE_STATIC_CORBA_OBJECT (bonobo_corba_object_get_type () | G_SIGNAL_TYPE_STATIC_SCOPE) #define BONOBO_TYPE_STATIC_CORBA_TYPECODE (bonobo_corba_typecode_get_type () | G_SIGNAL_TYPE_STATIC_SCOPE) #define BONOBO_TYPE_STATIC_CORBA_EXCEPTION (bonobo_corba_exception_get_type () | G_SIGNAL_TYPE_STATIC_SCOPE) #define BONOBO_VALUE_HOLDS_UNKNOWN(value) (G_TYPE_CHECK_VALUE_TYPE ((value), BONOBO_TYPE_UNKNOWN)) #define BONOBO_VALUE_HOLDS_CORBA_ANY(value) (G_TYPE_CHECK_VALUE_TYPE ((value), BONOBO_TYPE_CORBA_ANY)) #define BONOBO_VALUE_HOLDS_CORBA_OBJECT(value) (G_TYPE_CHECK_VALUE_TYPE ((value), BONOBO_TYPE_CORBA_OBJECT)) #define BONOBO_VALUE_HOLDS_CORBA_TYPECODE(value) (G_TYPE_CHECK_VALUE_TYPE ((value), BONOBO_TYPE_CORBA_TYPECODE)) #define BONOBO_VALUE_HOLDS_CORBA_EXCEPTION(value) (G_TYPE_CHECK_VALUE_TYPE ((value), BONOBO_TYPE_CORBA_EXCEPTION)) Bonobo_Unknown bonobo_value_get_unknown (const GValue *value); BonoboArg *bonobo_value_get_corba_any (const GValue *value); CORBA_Object bonobo_value_get_corba_object (const GValue *value); CORBA_TypeCode bonobo_value_get_corba_typecode (const GValue *value); const CORBA_Environment *bonobo_value_get_corba_exception (const GValue *value); void bonobo_value_set_corba_object (GValue *value, const CORBA_Object object); void bonobo_value_set_unknown (GValue *value, const Bonobo_Unknown unknown); void bonobo_value_set_corba_any (GValue *value, const CORBA_any *any); void bonobo_value_set_corba_typecode (GValue *value, const CORBA_TypeCode tc); void bonobo_value_set_corba_environment (GValue *value, const CORBA_Environment *ev); void bonobo_closure_invoke_va_list (GClosure *closure, GValue *return_value, va_list var_args); void bonobo_closure_invoke (GClosure *closure, GType return_type, ...); GClosure * bonobo_closure_store (GClosure *closure, GClosureMarshal default_marshal); G_END_DECLS #endif libbonobo-2.32.1/bonobo/bonobo-persist-client.c0000644000076400007640000000436311173072711016346 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /** * bonobo-persist-client.c: Client-side utility functions dealing with persistancy * * Author: * RDI Gerg * * Copyright 2001 Gerg rdi */ #include #include #include #include void bonobo_object_save_to_stream (Bonobo_Unknown object, Bonobo_Stream stream, CORBA_Environment *opt_ev) { char *iid = NULL; CORBA_Environment my_ev; Bonobo_PersistStream pstream = CORBA_OBJECT_NIL; CORBA_exception_init (&my_ev); pstream = Bonobo_Unknown_queryInterface (object, "IDL:Bonobo/PersistStream:1.0", &my_ev); CORBA_exception_free (&my_ev); if (!pstream) { bonobo_exception_set (opt_ev, ex_Bonobo_Moniker_InterfaceNotFound); goto out; } CORBA_exception_init (&my_ev); iid = Bonobo_Persist_getIId (pstream, &my_ev); bonobo_stream_client_write_string (stream, iid, TRUE, &my_ev); if (BONOBO_EX (&my_ev)) { if (opt_ev) bonobo_exception_set (opt_ev, BONOBO_EX_REPOID (&my_ev)); CORBA_exception_free (&my_ev); goto out; } if (opt_ev) { Bonobo_PersistStream_save (pstream, stream, "", opt_ev); } else { Bonobo_PersistStream_save (pstream, stream, "", opt_ev); CORBA_exception_free (&my_ev); } out: g_free (iid); if (pstream != CORBA_OBJECT_NIL) { CORBA_exception_init (&my_ev); Bonobo_Unknown_unref (pstream, &my_ev); CORBA_exception_free (&my_ev); } } Bonobo_Unknown bonobo_object_from_stream (Bonobo_Stream stream, CORBA_Environment *opt_ev) { char *iid = NULL; CORBA_Environment my_ev, *ev; Bonobo_PersistStream pstream = CORBA_OBJECT_NIL; CORBA_exception_init (&my_ev); if (opt_ev) ev = opt_ev; else ev = &my_ev; bonobo_stream_client_read_string (stream, &iid, ev); if (BONOBO_EX (ev)) { goto out; } pstream = bonobo_get_object (iid, "IDL:Bonobo/PersistStream:1.0", ev); if (BONOBO_EX (ev)) { pstream = CORBA_OBJECT_NIL; goto out; } Bonobo_PersistStream_load (pstream, stream, "", ev); out: CORBA_exception_free (&my_ev); g_free (iid); return pstream; } libbonobo-2.32.1/bonobo/bonobo-object.h0000644000076400007640000002565311173072711014661 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /** * Bonobo Unknown interface base implementation * * Authors: * Miguel de Icaza (miguel@kernel.org) * Michael Meeks (michael@helixcode.com) * * Copyright 1999,2001 Ximian, Inc. */ #ifndef _BONOBO_OBJECT_H_ #define _BONOBO_OBJECT_H_ #include #include #include #include G_BEGIN_DECLS #undef BONOBO_OBJECT_DEBUG #define BONOBO_TYPE_OBJECT (bonobo_object_get_type ()) #define BONOBO_OBJECT_TYPE BONOBO_TYPE_OBJECT /* deprecated, you should use BONOBO_TYPE_OBJECT */ #define BONOBO_OBJECT(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), BONOBO_TYPE_OBJECT, BonoboObject)) #define BONOBO_OBJECT_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), BONOBO_TYPE_OBJECT, BonoboObjectClass)) #define BONOBO_IS_OBJECT(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), BONOBO_TYPE_OBJECT)) #define BONOBO_IS_OBJECT_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), BONOBO_TYPE_OBJECT)) #define BONOBO_OBJECT_GET_CLASS(o)(G_TYPE_INSTANCE_GET_CLASS ((o), BONOBO_TYPE_OBJECT, BonoboObjectClass)) #define BONOBO_OBJREF(o) (bonobo_object_corba_objref(BONOBO_OBJECT(o))) typedef void (*BonoboObjectPOAFn) (PortableServer_Servant servant, CORBA_Environment *ev); typedef struct _BonoboObjectPrivate BonoboObjectPrivate; typedef struct _BonoboObjectBag BonoboObjectBag; typedef struct _BonoboObject BonoboObject; typedef struct { GObject base; /* pointer + guint + pointer */ BonoboObjectPrivate *priv; /* pointer */ guint object_signature; /* guint */ } BonoboObjectHeader; #define BONOBO_OBJECT_HEADER_SIZE (sizeof (BonoboObjectHeader)) #define BONOBO_OBJECT_SIGNATURE 0xaef2 #define BONOBO_SERVANT_SIGNATURE 0x2fae struct _BonoboObject { /* A GObject and its signature of type BonoboObjectHeader */ GObject base; /* pointer + guint + pointer */ BonoboObjectPrivate *priv; /* pointer */ guint object_signature; /* guint */ /* A Servant and its signature - same memory layout */ POA_Bonobo_Unknown servant; /* pointer + pointer */ guint dummy; /* guint */ Bonobo_Unknown corba_objref; /* pointer */ guint servant_signature; }; typedef struct { GObjectClass parent_class; /* signals. */ void (*destroy) (BonoboObject *object); void (*system_exception) (BonoboObject *object, CORBA_Object cobject, CORBA_Environment *ev); BonoboObjectPOAFn poa_init_fn; BonoboObjectPOAFn poa_fini_fn; POA_Bonobo_Unknown__vepv *vepv; /* The offset of this class' additional epv */ int epv_struct_offset; PortableServer_ServantBase__epv base_epv; POA_Bonobo_Unknown__epv epv; gpointer dummy[4]; } BonoboObjectClass; GType bonobo_object_get_type (void) G_GNUC_CONST; void bonobo_object_add_interface (BonoboObject *object, BonoboObject *newobj); BonoboObject *bonobo_object_query_local_interface (BonoboObject *object, const char *repo_id); Bonobo_Unknown bonobo_object_query_remote (Bonobo_Unknown unknown, const char *repo_id, CORBA_Environment *opt_ev); Bonobo_Unknown bonobo_object_query_interface (BonoboObject *object, const char *repo_id, CORBA_Environment *opt_ev); Bonobo_Unknown bonobo_object_corba_objref (BonoboObject *object); void bonobo_object_set_poa (BonoboObject *object, PortableServer_POA poa); /* * Gnome Object Life Cycle */ Bonobo_Unknown bonobo_object_dup_ref (Bonobo_Unknown object, CORBA_Environment *opt_ev); Bonobo_Unknown bonobo_object_release_unref (Bonobo_Unknown object, CORBA_Environment *opt_ev); gpointer bonobo_object_ref (gpointer obj); void bonobo_object_idle_unref (gpointer obj); gpointer bonobo_object_unref (gpointer obj); void bonobo_object_set_immortal (BonoboObject *object, gboolean immortal); gpointer bonobo_object_trace_refs (gpointer obj, const char *fn, int line, gboolean ref); #ifdef BONOBO_OBJECT_DEBUG # define bonobo_object_ref(o) bonobo_object_trace_refs ((o),G_STRFUNC,__LINE__,TRUE); # define bonobo_object_unref(o) bonobo_object_trace_refs ((o),G_STRFUNC,__LINE__,FALSE); #endif /* BONOBO_OBJECT_DEBUG */ void bonobo_object_dump_interfaces (BonoboObject *object); /* * Error checking */ void bonobo_object_check_env (BonoboObject *object, CORBA_Object corba_object, CORBA_Environment *ev); #define BONOBO_OBJECT_CHECK(o,c,e) \ G_STMT_START { \ if ((e)->_major != CORBA_NO_EXCEPTION) \ bonobo_object_check_env(o,c,e); \ } G_STMT_END /* * Others */ gboolean bonobo_unknown_ping (Bonobo_Unknown object, CORBA_Environment *opt_ev); void bonobo_object_list_unref_all (GList **list); void bonobo_object_slist_unref_all (GSList **list); /* * A weak-ref cache scheme */ #define BONOBO_COPY_FUNC(fn) ((BonoboCopyFunc)(fn)) typedef gpointer (*BonoboCopyFunc) (gconstpointer key); BonoboObjectBag *bonobo_object_bag_new (GHashFunc hash_func, GEqualFunc key_equal_func, BonoboCopyFunc key_copy_func, GDestroyNotify key_destroy_func); BonoboObject *bonobo_object_bag_get_ref (BonoboObjectBag *bag, gconstpointer key); gboolean bonobo_object_bag_add_ref (BonoboObjectBag *bag, gconstpointer key, BonoboObject *object); void bonobo_object_bag_remove (BonoboObjectBag *bag, gconstpointer key); void bonobo_object_bag_destroy (BonoboObjectBag *bag); GPtrArray *bonobo_object_bag_list_ref (BonoboObjectBag *bag); /* Detects the pointer type and returns the object reference - magic. */ BonoboObject *bonobo_object (gpointer p); /* The same thing but faster - has a double evaluate */ #define bonobo_object_fast(o) \ ((((BonoboObjectHeader *)(o))->object_signature == BONOBO_OBJECT_SIGNATURE) ? \ (BonoboObject *)(o) : (BonoboObject *)(((guchar *) (o)) - BONOBO_OBJECT_HEADER_SIZE)) /* Compat */ #define bonobo_object_from_servant(s) ((BonoboObject *)(((guchar *) (s)) - BONOBO_OBJECT_HEADER_SIZE)) #define bonobo_object_get_servant(o) ((PortableServer_Servant)((guchar *)(o) + BONOBO_OBJECT_HEADER_SIZE)) PortableServer_POA bonobo_object_get_poa (BonoboObject *object); /* Use G_STRUCT_OFFSET to calc. epv_struct_offset */ GType bonobo_type_unique (GType parent_type, BonoboObjectPOAFn init_fn, BonoboObjectPOAFn fini_fn, int epv_struct_offset, const GTypeInfo *info, const gchar *type_name); gboolean bonobo_type_setup (GType type, BonoboObjectPOAFn init_fn, BonoboObjectPOAFn fini_fn, int epv_struct_offset); #define BONOBO_TYPE_FUNC_FULL(class_name, corba_name, parent, prefix) \ GType \ prefix##_get_type (void) \ { \ GType ptype; \ static GType type = 0; \ \ if (type == 0) { \ static GTypeInfo info = { \ sizeof (class_name##Class), \ (GBaseInitFunc) NULL, \ (GBaseFinalizeFunc) NULL, \ (GClassInitFunc) prefix##_class_init, \ NULL, NULL, \ sizeof (class_name), \ 0, \ (GInstanceInitFunc) prefix##_init \ }; \ ptype = (parent); \ type = bonobo_type_unique (ptype, \ POA_##corba_name##__init, POA_##corba_name##__fini, \ G_STRUCT_OFFSET (class_name##Class, epv), \ &info, #class_name); \ } \ return type; \ } #define BONOBO_TYPE_FUNC(class_name, parent, prefix) \ GType \ prefix##_get_type (void) \ { \ GType ptype; \ static GType type = 0; \ \ if (type == 0) { \ static GTypeInfo info = { \ sizeof (class_name##Class), \ (GBaseInitFunc) NULL, \ (GBaseFinalizeFunc) NULL, \ (GClassInitFunc) prefix##_class_init, \ NULL, NULL, \ sizeof (class_name), \ 0, \ (GInstanceInitFunc) prefix##_init \ }; \ ptype = (parent); \ type = bonobo_type_unique (ptype, NULL, NULL, 0, \ &info, #class_name); \ } \ return type; \ } G_END_DECLS #endif libbonobo-2.32.1/bonobo/bonobo-private.h0000644000076400007640000000165411173072711015060 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /* * bonobo-private.h: internal private init & shutdown routines * used by bonobo_init & bonobo_shutdown * * Authors: * Michael Meeks (michael@helixcode.com) * * Copyright 2001 Ximian, Inc. */ #ifndef _BONOBO_PRIVATE_H_ #define _BONOBO_PRIVATE_H_ #ifdef HAVE_GTHREADS extern GMutex *_bonobo_lock; #define BONOBO_LOCK() g_mutex_lock(_bonobo_lock); #define BONOBO_UNLOCK() g_mutex_unlock(_bonobo_lock); #else #define BONOBO_LOCK() G_STMT_START{ (void)0; }G_STMT_END #define BONOBO_UNLOCK() G_STMT_START{ (void)0; }G_STMT_END #endif void bonobo_context_init (void); void bonobo_context_shutdown (void); int bonobo_object_shutdown (void); void bonobo_exception_shutdown (void); void bonobo_property_bag_shutdown (void); void bonobo_running_context_shutdown (void); #endif /* _BONOBO_PRIVATE_H_ */ libbonobo-2.32.1/bonobo/bonobo-moniker-simple.c0000644000076400007640000001374211173072711016335 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /* * bonobo-moniker-simple: Simplified object naming abstraction * * Author: * Michael Meeks (michael@helixcode.com) * * Copyright 2000, Ximian, Inc. */ #include #include #include #include #include static GObjectClass *parent_class = NULL; struct _BonoboMonikerSimplePrivate { GClosure *resolve_closure; }; static void bonobo_marshal_BOXED__RESOLVEOPTIONS_STRING_BOXED (GClosure *closure, GValue *return_value, guint n_param_values, const GValue *param_values, gpointer invocation_hint, gpointer marshal_data) { typedef gpointer (*GMarshalFunc_BOXED__POINTER_STRING_BOXED) (gpointer data1, gpointer arg_1, gpointer arg_2, gpointer arg_3, gpointer data2); register GMarshalFunc_BOXED__POINTER_STRING_BOXED callback; register GCClosure *cc = (GCClosure*) closure; register gpointer data1, data2; Bonobo_ResolveOptions resopt; gpointer v_return; g_return_if_fail (return_value != NULL); g_return_if_fail (n_param_values == 5); if (G_CCLOSURE_SWAP_DATA (closure)) { data1 = closure->data; data2 = g_value_peek_pointer (param_values + 0); } else { data1 = g_value_peek_pointer (param_values + 0); data2 = closure->data; } callback = (GMarshalFunc_BOXED__POINTER_STRING_BOXED) (marshal_data ? marshal_data : cc->callback); resopt.flags = g_value_get_flags (param_values + 1) ? Bonobo_MONIKER_ALLOW_USER_INTERACTION : 0; resopt.timeout = g_value_get_long (param_values + 2); v_return = callback (data1, &resopt, (char*) g_value_get_string (param_values + 3), g_value_get_boxed (param_values + 4), data2); g_value_take_boxed (return_value, v_return); } static Bonobo_Unknown simple_resolve (BonoboMoniker *moniker, const Bonobo_ResolveOptions *options, const CORBA_char *requested_interface, CORBA_Environment *ev) { BonoboMonikerSimple *simple; Bonobo_Unknown ret; Bonobo_ResolveFlag resolve_flag; glong timeout; g_return_val_if_fail (BONOBO_IS_MONIKER_SIMPLE (moniker), CORBA_OBJECT_NIL); simple = BONOBO_MONIKER_SIMPLE (moniker); resolve_flag = options ? options->flags : 0; timeout = options ? options->timeout : -1; bonobo_closure_invoke ( simple->priv->resolve_closure, BONOBO_TYPE_STATIC_CORBA_OBJECT, &ret, BONOBO_TYPE_MONIKER, moniker, BONOBO_TYPE_RESOLVE_FLAG, resolve_flag, G_TYPE_LONG, timeout, G_TYPE_STRING | G_SIGNAL_TYPE_STATIC_SCOPE, requested_interface, BONOBO_TYPE_STATIC_CORBA_EXCEPTION, ev, G_TYPE_INVALID); return ret; } static void simple_finalize (GObject *object) { BonoboMonikerSimple *simple = (BonoboMonikerSimple *) object; if (simple->priv) { if (simple->priv->resolve_closure) g_closure_unref (simple->priv->resolve_closure); g_free (simple->priv); simple->priv = NULL; } parent_class->finalize (object); } static void bonobo_moniker_simple_class_init (BonoboMonikerClass *klass) { GObjectClass *gobject_class = (GObjectClass *) klass; klass->resolve = simple_resolve; gobject_class->finalize = simple_finalize; parent_class = g_type_class_peek_parent (klass); } static void bonobo_moniker_simple_init (GObject *object) { BonoboMonikerSimple *simple = BONOBO_MONIKER_SIMPLE (object); simple->priv = g_new0 (BonoboMonikerSimplePrivate, 1); } BONOBO_TYPE_FUNC (BonoboMonikerSimple, bonobo_moniker_get_type (), bonobo_moniker_simple) /** * bonobo_moniker_simple_construct: * @moniker: the moniker to construct * @name: the name of the moniker eg. 'file:' * @resolve_closure: the closure used to resolve the moniker * * Constructs a simple moniker * * Return value: the constructed moniker or NULL on failure. **/ BonoboMoniker * bonobo_moniker_simple_construct (BonoboMonikerSimple *moniker, const char *name, GClosure *resolve_closure) { g_return_val_if_fail (resolve_closure != NULL, NULL); moniker->priv->resolve_closure = bonobo_closure_store (resolve_closure, bonobo_marshal_BOXED__RESOLVEOPTIONS_STRING_BOXED); return bonobo_moniker_construct ( BONOBO_MONIKER (moniker), name); } /** * bonobo_moniker_simple_new_closure: * @name: the display name for the moniker * @resolve_closure: a closure for the resolve process. * * Create a new instance of a simplified moniker. * * Instead of the Bonobo_ResolveOptions struct, the closure takes its * contents as two arguments: BONOBO_TYPE_RESOLVE_FLAG and G_TYPE_LONG. * * Return value: the moniker object **/ BonoboMoniker * bonobo_moniker_simple_new_closure (const char *name, GClosure *resolve_closure) { BonoboMoniker *moniker; moniker = g_object_new (bonobo_moniker_simple_get_type (), NULL); return bonobo_moniker_simple_construct ( BONOBO_MONIKER_SIMPLE (moniker), name, resolve_closure); } /** * bonobo_moniker_simple_new: * @name: the display name for the moniker * @resolve_fn: a resolve function for the moniker * * Create a new instance of a simplified moniker. * * Return value: the moniker object **/ BonoboMoniker * bonobo_moniker_simple_new (const char *name, BonoboMonikerSimpleResolveFn resolve_fn) { return bonobo_moniker_simple_new_closure ( name, g_cclosure_new (G_CALLBACK (resolve_fn), NULL, NULL)); } GType bonobo_resolve_flag_get_type (void) { static GType resolve_flag_type = 0; static GFlagsValue resolve_flag_values[] = { { Bonobo_MONIKER_ALLOW_USER_INTERACTION, "bonobo-moniker-allow-user-interaction", "bonobo-moniker-allow-user-interaction" }, { 0, NULL, NULL } }; if (!resolve_flag_type) resolve_flag_type = g_flags_register_static ("BonoboResolveFlag", resolve_flag_values); return resolve_flag_type; } libbonobo-2.32.1/bonobo/bonobo-moniker.h0000644000076400007640000000541511173072711015051 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /** * bonobo-moniker: Object naming abstraction * * Author: * Michael Meeks (michael@helixcode.com) * * Copyright 2000, Helix Code, Inc. */ #ifndef _BONOBO_MONIKER_H_ #define _BONOBO_MONIKER_H_ #include G_BEGIN_DECLS typedef struct _BonoboMonikerPrivate BonoboMonikerPrivate; typedef struct _BonoboMoniker BonoboMoniker; #define BONOBO_TYPE_MONIKER (bonobo_moniker_get_type ()) #define BONOBO_MONIKER_TYPE BONOBO_TYPE_MONIKER /* deprecated, you should use BONOBO_TYPE_MONIKER */ #define BONOBO_MONIKER(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), BONOBO_TYPE_MONIKER, BonoboMoniker)) #define BONOBO_MONIKER_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), BONOBO_TYPE_MONIKER, BonoboMonikerClass)) #define BONOBO_IS_MONIKER(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), BONOBO_TYPE_MONIKER)) #define BONOBO_IS_MONIKER_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), BONOBO_TYPE_MONIKER)) struct _BonoboMoniker { BonoboObject object; BonoboMonikerPrivate *priv; }; typedef struct { BonoboObjectClass parent_class; POA_Bonobo_Moniker__epv epv; /* virtual methods */ Bonobo_Unknown (*resolve) (BonoboMoniker *moniker, const Bonobo_ResolveOptions *options, const CORBA_char *requested_interface, CORBA_Environment *ev); void (*set_internal_name) (BonoboMoniker *moniker, const char *unescaped_name); const char *(*get_internal_name) (BonoboMoniker *moniker); gpointer dummy; } BonoboMonikerClass; GType bonobo_moniker_get_type (void) G_GNUC_CONST; BonoboMoniker *bonobo_moniker_construct (BonoboMoniker *moniker, const char *prefix); Bonobo_Moniker bonobo_moniker_get_parent (BonoboMoniker *moniker, CORBA_Environment *opt_ev); void bonobo_moniker_set_parent (BonoboMoniker *moniker, Bonobo_Moniker parent, CORBA_Environment *opt_ev); const char *bonobo_moniker_get_name (BonoboMoniker *moniker); const char *bonobo_moniker_get_name_full (BonoboMoniker *moniker); char *bonobo_moniker_get_name_escaped (BonoboMoniker *moniker); void bonobo_moniker_set_name (BonoboMoniker *moniker, const char *name); const char *bonobo_moniker_get_prefix (BonoboMoniker *moniker); void bonobo_moniker_set_case_sensitive (BonoboMoniker *moniker, gboolean sensitive); gboolean bonobo_moniker_get_case_sensitive (BonoboMoniker *moniker); G_END_DECLS #endif /* _BONOBO_MONIKER_H_ */ libbonobo-2.32.1/bonobo/bonobo-main.h0000644000076400007640000000323011173072711014322 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /** * bonobo-main.h: Bonobo Main * * Author: * Miguel de Icaza (miguel@gnu.org) * Nat Friedman (nat@nat.org) * Peter Wainwright (prw@wainpr.demo.co.uk) * * Copyright 1999 Helix Code, Inc. */ #ifndef __LIBBONOBO_MAIN_H__ #define __LIBBONOBO_MAIN_H__ #include #include G_BEGIN_DECLS gboolean bonobo_is_initialized (void); gboolean bonobo_init (int *argc, char **argv); gboolean bonobo_init_full (int *argc, char **argv, CORBA_ORB opt_orb, PortableServer_POA opt_poa, PortableServer_POAManager opt_manager); int bonobo_debug_shutdown (void); void bonobo_main (void); void bonobo_main_quit (void); guint bonobo_main_level (void); gboolean bonobo_activate (void); void bonobo_setup_x_error_handler (void); CORBA_ORB bonobo_orb (void); PortableServer_POA bonobo_poa (void); PortableServer_POAManager bonobo_poa_manager (void); PortableServer_POA bonobo_poa_get_threaded (ORBitThreadHint hint, ...); PortableServer_POA bonobo_poa_get_threadedv (ORBitThreadHint hint, va_list args); PortableServer_POA bonobo_poa_new_from (PortableServer_POA tmpl, const char *name, const CORBA_PolicyList *opt_policies, CORBA_Environment *opt_ev); G_END_DECLS #endif /* __LIBBONOBO_MAIN_H__ */ libbonobo-2.32.1/bonobo/bonobo-arg.h0000644000076400007640000001267411173072711014163 00000000000000/* * bonobo-arg.h Bonobo argument support: * * A thin wrapper of CORBA_any's with macros * to assist in handling values safely. * * Author: * Michael Meeks (michael@helixcode.com) * * Copyright 2000, Helix Code, Inc. */ #ifndef __BONOBO_ARG_H__ #define __BONOBO_ARG_H__ #include #include G_BEGIN_DECLS typedef CORBA_any BonoboArg; typedef CORBA_TypeCode BonoboArgType; typedef void (*BonoboArgToGValueFn) (BonoboArg const *arg, GValue *out_value); typedef void (*BonoboArgFromGValueFn) (BonoboArg *out_arg, GValue const *value); #define BONOBO_ARG_NULL TC_null #define BONOBO_ARG_BOOLEAN TC_CORBA_boolean #define BONOBO_ARG_SHORT TC_CORBA_short #define BONOBO_ARG_INT TC_CORBA_long #define BONOBO_ARG_LONG TC_CORBA_long #define BONOBO_ARG_LONGLONG TC_CORBA_long_long #define BONOBO_ARG_FLOAT TC_CORBA_float #define BONOBO_ARG_DOUBLE TC_CORBA_double #define BONOBO_ARG_CHAR TC_CORBA_char #define BONOBO_ARG_STRING TC_CORBA_string #if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(__cplusplus) # define BONOBO_ARG_GET_GENERAL(a,c,t,e) ({g_assert (bonobo_arg_type_is_equal ((a)->_type, c, e)); *((t *)((a)->_value)); }) # define BONOBO_ARG_SET_GENERAL(a,v,c,t,e) ({g_assert (bonobo_arg_type_is_equal ((a)->_type, c, e)); *((t *)((a)->_value)) = (t)(v); }) #else # define BONOBO_ARG_GET_GENERAL(a,c,t,e) (*((t *)((a)->_value))) # define BONOBO_ARG_SET_GENERAL(a,v,c,t,e) (*((t *)((a)->_value)) = (v)) #endif #define BONOBO_ARG_GET_BOOLEAN(a) (BONOBO_ARG_GET_GENERAL (a, TC_CORBA_boolean, CORBA_boolean, NULL)) #define BONOBO_ARG_SET_BOOLEAN(a,v) (BONOBO_ARG_SET_GENERAL (a, v, TC_CORBA_boolean, CORBA_boolean, NULL)) #define BONOBO_ARG_GET_SHORT(a) (BONOBO_ARG_GET_GENERAL (a, TC_CORBA_short, CORBA_short, NULL)) #define BONOBO_ARG_SET_SHORT(a,v) (BONOBO_ARG_SET_GENERAL (a, v, TC_CORBA_short, CORBA_short, NULL)) #define BONOBO_ARG_GET_INT(a) (BONOBO_ARG_GET_GENERAL (a, TC_CORBA_long, CORBA_long, NULL)) #define BONOBO_ARG_SET_INT(a,v) (BONOBO_ARG_SET_GENERAL (a, v, TC_CORBA_long, CORBA_long, NULL)) #define BONOBO_ARG_GET_LONG(a) (BONOBO_ARG_GET_GENERAL (a, TC_CORBA_long, CORBA_long, NULL)) #define BONOBO_ARG_SET_LONG(a,v) (BONOBO_ARG_SET_GENERAL (a, v, TC_CORBA_long, CORBA_long, NULL)) #define BONOBO_ARG_GET_ULONG(a) (BONOBO_ARG_GET_GENERAL (a, TC_CORBA_unsigned_long, CORBA_unsigned_long, NULL)) #define BONOBO_ARG_SET_ULONG(a,v) (BONOBO_ARG_SET_GENERAL (a, v, TC_CORBA_unsigned_long, CORBA_unsigned_long, NULL)) #define BONOBO_ARG_GET_LONGLONG(a) (BONOBO_ARG_GET_GENERAL (a, TC_CORBA_long_long, CORBA_long_long, NULL)) #define BONOBO_ARG_SET_LONGLONG(a,v) (BONOBO_ARG_SET_GENERAL (a, v, TC_CORBA_long_long, CORBA_long_long, NULL)) #define BONOBO_ARG_GET_FLOAT(a) (BONOBO_ARG_GET_GENERAL (a, TC_CORBA_float, CORBA_float, NULL)) #define BONOBO_ARG_SET_FLOAT(a,v) (BONOBO_ARG_SET_GENERAL (a, v, TC_CORBA_float, CORBA_float, NULL)) #define BONOBO_ARG_GET_DOUBLE(a) (BONOBO_ARG_GET_GENERAL (a, TC_CORBA_double, CORBA_double, NULL)) #define BONOBO_ARG_SET_DOUBLE(a,v) (BONOBO_ARG_SET_GENERAL (a, v, TC_CORBA_double, CORBA_double, NULL)) #define BONOBO_ARG_GET_CHAR(a) (BONOBO_ARG_GET_GENERAL (a, TC_CORBA_char, CORBA_char, NULL)) #define BONOBO_ARG_SET_CHAR(a,v) (BONOBO_ARG_SET_GENERAL (a, v, TC_CORBA_char, CORBA_char, NULL)) #if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(__cplusplus) #define BONOBO_ARG_GET_STRING(a) ({g_assert ((a)->_type->kind == CORBA_tk_string); *((CORBA_char **)((a)->_value)); }) #define BONOBO_ARG_SET_STRING(a,v) ({g_assert ((a)->_type->kind == CORBA_tk_string); CORBA_free (*(char **)(a)->_value); *((CORBA_char **)((a)->_value)) = CORBA_string_dup ((v)?(v):""); }) #else #define BONOBO_ARG_GET_STRING(a) (*((CORBA_char **)((a)->_value))) #define BONOBO_ARG_SET_STRING(a,v) {CORBA_free (*(char **)(a)->_value); *((CORBA_char **)((a)->_value)) = CORBA_string_dup ((v)?(v):""); } #endif BonoboArg *bonobo_arg_new (BonoboArgType t); BonoboArg *bonobo_arg_new_from (BonoboArgType t, gconstpointer data); void bonobo_arg_release (BonoboArg *arg); BonoboArg *bonobo_arg_copy (const BonoboArg *arg); void bonobo_arg_from_gvalue (BonoboArg *a, const GValue *value); BonoboArgType bonobo_arg_type_from_gtype (GType t); void bonobo_arg_to_gvalue (GValue *value, const BonoboArg *arg); GType bonobo_arg_type_to_gtype (BonoboArgType id); gboolean bonobo_arg_is_equal (const BonoboArg *a, const BonoboArg *b, CORBA_Environment *opt_ev); gboolean bonobo_arg_type_is_equal (BonoboArgType a, BonoboArgType b, CORBA_Environment *opt_ev); gboolean bonobo_arg_to_gvalue_alloc (BonoboArg const *arg, GValue *value); gboolean bonobo_arg_from_gvalue_alloc (BonoboArg *arg, GValue const *value); void bonobo_arg_register_to_gvalue_converter (BonoboArgType arg_type, BonoboArgToGValueFn converter); void bonobo_arg_register_from_gvalue_converter (GType gtype, BonoboArgFromGValueFn converter); /* private */ void bonobo_arg_init (void); G_END_DECLS #endif /* ! __BONOBO_ARG_H__ */ libbonobo-2.32.1/bonobo/bonobo-shlib-factory.h0000644000076400007640000000706711173072711016160 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /** * bonobo-shlib-factory.h: a ShlibFactory object. * * Author: * Michael Meeks (michael@helixcode.com) * * Copyright 2000, 2001 Ximian, Inc. */ #ifndef _BONOBO_SHLIB_FACTORY_H_ #define _BONOBO_SHLIB_FACTORY_H_ #include #include #include #include #include G_BEGIN_DECLS #define BONOBO_TYPE_SHLIB_FACTORY (bonobo_shlib_factory_get_type ()) #define BONOBO_SHLIB_FACTORY_TYPE BONOBO_TYPE_SHLIB_FACTORY /* deprecated, you should use BONOBO_TYPE_SHLIB_FACTORY */ #define BONOBO_SHLIB_FACTORY(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), BONOBO_TYPE_SHLIB_FACTORY, BonoboShlibFactory)) #define BONOBO_SHLIB_FACTORY_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), BONOBO_TYPE_SHLIB_FACTORY, BonoboShlibFactoryClass)) #define BONOBO_IS_SHLIB_FACTORY(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), BONOBO_TYPE_SHLIB_FACTORY)) #define BONOBO_IS_SHLIB_FACTORY_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), BONOBO_TYPE_SHLIB_FACTORY)) typedef struct _BonoboShlibFactoryPrivate BonoboShlibFactoryPrivate; typedef struct _BonoboShlibFactory BonoboShlibFactory; struct _BonoboShlibFactory { BonoboGenericFactory base; BonoboShlibFactoryPrivate *priv; }; typedef struct { BonoboGenericFactoryClass parent_class; } BonoboShlibFactoryClass; GType bonobo_shlib_factory_get_type (void) G_GNUC_CONST; BonoboShlibFactory *bonobo_shlib_factory_construct (BonoboShlibFactory *factory, const char *act_iid, PortableServer_POA poa, gpointer act_impl_ptr, GClosure *closure); BonoboShlibFactory *bonobo_shlib_factory_new (const char *component_id, PortableServer_POA poa, gpointer act_impl_ptr, BonoboFactoryCallback factory_cb, gpointer user_data); BonoboShlibFactory *bonobo_shlib_factory_new_closure (const char *act_iid, PortableServer_POA poa, gpointer act_impl_ptr, GClosure *factory_closure); Bonobo_Unknown bonobo_shlib_factory_std (const char *component_id, PortableServer_POA poa, gpointer act_impl_ptr, BonoboFactoryCallback factory_cb, gpointer user_data, CORBA_Environment *ev); #define BONOBO_OAF_SHLIB_FACTORY(oafiid, descr, fn, data) \ BONOBO_ACTIVATION_SHLIB_FACTORY(oafiid, descr, fn, data) #define BONOBO_OAF_SHLIB_FACTORY_MULTI(oafiid, descr, fn, data) \ BONOBO_ACTIVATION_SHLIB_FACTORY(oafiid, descr, fn, data) #define BONOBO_ACTIVATION_SHLIB_FACTORY(oafiid, descr, fn, data) \ static Bonobo_Unknown \ make_factory (PortableServer_POA poa, const char *iid, gpointer impl_ptr, \ CORBA_Environment *ev) \ { \ return bonobo_shlib_factory_std (oafiid, poa, impl_ptr, fn, data, ev);\ } \ static BonoboActivationPluginObject plugin_list[] = {{oafiid, make_factory}, { NULL } }; \ const BonoboActivationPlugin Bonobo_Plugin_info = { plugin_list, descr }; G_END_DECLS #endif libbonobo-2.32.1/depcomp0000755000076400007640000004426711432275522012072 00000000000000#! /bin/sh # depcomp - compile a program generating dependencies as side-effects scriptversion=2009-04-28.21; # UTC # Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006, 2007, 2009 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 outputing dependencies. libtool Whether libtool is used (yes/no). Report bugs to . EOF exit $? ;; -v | --v*) echo "depcomp $scriptversion" exit $? ;; esac 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 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 ' ' ' ' < "$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. ## 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" ;; 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 ' ' ' ' < "$tmpdepfile" \ | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \ tr ' ' ' ' >> "$depfile" echo >> "$depfile" # The second pass generates a dummy entry for each header file. tr ' ' ' ' < "$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" ;; 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" # That's a tab and a space in the []. sed -e 's,^.*\.[a-z]*:[ ]*,,' -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 understands `-MD -MF file'. However on # icc -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 ... \ # ... "$@" -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 "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile" # Some versions of the HPUX 10.20 sed can't process this invocation # correctly. Breaking it into two sed invocations is a workaround. sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" | sed -e 's/$/ :/' >> "$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" # That's a tab and a space in the []. sed -e 's,^.*\.[a-z]*:[ ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile" else echo "#dummy" > "$depfile" fi rm -f "$tmpdepfile" ;; #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:^[ ]*[^: ][^:][^:]*\:[ ]*:'"$object"'\: :' > "$tmpdepfile" rm -f "$depfile" cat < "$tmpdepfile" > "$depfile" tr ' ' ' ' < "$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" cat < "$tmpdepfile" > "$depfile" sed '1,2d' "$tmpdepfile" | tr ' ' ' ' | \ ## 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:: \1 \\:p' >> "$depfile" echo " " >> "$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: libbonobo-2.32.1/libbonobo.h0000644000076400007640000000267211173072711012622 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /** * Main include file for the Bonobo component model * * Authors: * Miguel de Icaza (miguel@ximian.com) * Michael Meeks (michael@ximian.com) * * Copyright 2001 Ximian, Inc. */ #ifndef __LIBBONOBO_H__ #define __LIBBONOBO_H__ #include G_BEGIN_DECLS #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include G_END_DECLS #endif /* __LIBBONOBO_H__ */ libbonobo-2.32.1/mkinstalldirs0000755000076400007640000000672211432275522013315 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: libbonobo-2.32.1/bonobo-activation-config.xml0000644000076400007640000000053711173072711016104 00000000000000 libbonobo-2.32.1/NEWS0000664000076400007640000006666511546332757011236 00000000000000libbonobo 2.32.1 * Translation updates libbonobo 2.32.0 * Translation updates libbonobo 2.31.91 * Port to GDBus * Translation updates libbonobo 2.24.3 * Set up dbus environment in test-activation/test.sh (Ray Strode) * Fix memory corruption (Michael Meeks) * Updated translations (ast, bn, ca@valencia, cy, en@shaw, gl) libbonobo 2.24.2 Ani Peter (2): Updated Malayalam Translation Updated Malayalam Translation Denis Arnaud (1): Updated breton translation, added br in LINGUAS file Djihed Afifi (1): Updated Arabic translation Ignacio Casal Quinteiro (1): Updated Galician translation Ivar Smolin (2): Updating Estonian translation Updating Estonian translation Kjartan Maraas (1): Remove duplicate to fix build with automake-1.11 Miquel Esplà (1): Added Valencian-Catalan translation Rajesh Ranjan (1): hindi updated by Rajesh Ranjan Rodrigo L. M. Flores (1): Updated Brazilian Portuguese mailing list address. Shankar Prasad (2): added kn.po and updated ChangeLog and LINGUAS updated kn.po dumol (1): Updated Romanian translation libbonobo 2.24.1 * Win32 portability fixes (Tor Lillqvist) * cleanups for newer glib releases (Cosimo Cecchi) * Other cleanups for single glib includes (Przemysław Grzegorczyk) * Cross-compiling fixes (Fridrich Strba) libbonobo 2.24.0 * Threading fix (Tor Lillqvist) * Updated translations (ar, hr, pt, ro, ta, te) libbonobo 2.23.1 * Fix a race (Michael) * Documentation improvement (Tobias Mueller) * Check that we're initialized properly (Tobias Mueller) libbonobo 2.23.0 * Use D-BUS to start and exit when the session ends. * Build fixes. * Translation updates. libbonobo 2.22.0 * Fix warnings from GCC 4.3.x * Translation updates. libbonobo 2.21.90 * Fix build with glib 2.15.4. libbonobo 2.20.4 * Fix build on Solaris (Brian Cameron) * Fix potential situation hanging the entire desktop (Michael) libbonobo 2.20.3 * Fix some gcc'isms causing problems with glib 2.15.0 * fix C99ism libbonobo 2.20.2 * Fix regression introduced in 2.20.0 * Code cleanup libbonobo 2.20.1 * Plug some leaks (Matthias Clasen, Kjartan) * Updated translations - Norwegian nynorsk (Kjartan) - Thai (aka.ape) libbonobo 2.20.0 * Add unit test for bug 427992. (Gustavo Carneiro) * Align configure switches (Gilles Dartiguelounge) * Updated translations: - Arabic (Khaled Hosny) - Bengali (Djihed Afifi) - Finnish (Ilkka Tuohela) - French (Stéphane Raimbault) - Italian (Milo Casagrande) - Malayalam (Ani Peter) - libbonobo 2.19.5 * Use gmodule-no-export-2.0 instead of gmodule-2.0 (#449841) * Win32 fix for pipe macro (Tor Lillqvist) libbonobo 2.19.4 * Fix b-a-s crash with legacy client (Gustavo Carneiro) * Code cleanup (Kjartan Maraas) * Use glib/gi18n[-lib].h instead of bonobo-i18n.h (Christian Persch) * Fix memory leak reported by valgrind (Matthias Clasen, Gustavo) libbonobo 2.18.0 * Code cleanups (Kjartan) * Build fix (Loïc Minier) * Updated translations: - Albanian (Laurent Dhima) - Bengali Indian (Runa Bhattacharjee) - Brazilian Portugese (Leonardo Ferreira Fontenelle) - Dutch (Timo Meinen) - Dzongkha (Pema Geyleg) - Finnish (Illka Tuohela) - Greek (Simos Xenitellis) - Gujarati (Ankit Patel) - Hungarian (Gabor Kelemen) - Lithuanian (Gintautas Miliauskas) - Macedonian (Jovan Naumovski) - Polish (The GNOME PL team) - Romanian (Mişu Moldovan) - Russian (Leonid Kanter) - Serbian (Goran Rakić) - Tamil (I Felix) - Traditional Chinese (Chao-Hsiung Liao) libbonobo 2.17.92 * Further reduce relocations (Christian) * Compiler warning fixes (Matthew Barnes) * Updated translations: - Illka Tuohela (fi) - Gabor Kelemen (hu) - GNOME PL Team (pl) - Leonardo Ferreira Fontenelle (pt_BR) libbonobo 2.17.91 * Build fixes (Gustavo, Kjartan) * Compiler warning fixes (Kjartan) * Factor out some more popt references (Christian) libbonobo 2.17.90 * Fix leaks (Chris Heath) * Code cleanups (Kjartan, Gustavo) * Fixes for unit testing (Gustavo) * Remove unneeded checks before g_strdup/g_free (Kjartan) * Fixes to reduce relocation (Christian) * Win32 fixes (Tor) * String fixes (Christian, Ernani Azevedo, Gustavo, David Lodge) * API-docs fixes (Matthew Barnes) * Depend on the right version of ORBit2 (Mark Johnson) * libbonobo 2.16.0 * API DOC fixes (Alex, Gustavo) * Don't check for xrdb or dladdr when we don't use them (Kjartan) * Updated and new translations libbonobo 2.15.3 * Fix ghtread configure test when building uninstalled (Brian Cameron) * Various bonobo-activation login fixes (Michael) * Various cleanups of exception handling (Gustavo) * Fixes for panel sometimes hanging on login (Alex) libbonobo 2.15.2 * Warning and build fixes. (Marcus Meissner, Kjartan) * Revert a change that caused segfaults during make check (Kjartan) * New and updated translations libbonobo 2.15.1 * Fix Coverity reports for leaks, accessing uninitialized memory and null pointer derefs (Michael, Kjartan) libbonobo 2.15.0 * Add new MIME api to make gnome-vfs not have a hard dependency on libbonobo (Alex) * Fix some leaks (Kjartan) * Win32 portability fixes (Tor) * po/LINGUAS porting (Przemysław Grzegorczyk) * Port to GOption from popt (Michael Terry) * Build fixes and cleanups (Michael Meeks, Kjartan) libbonobo 2.13.93 * Always pass program arguments to bonobo_activation_init (Michael) * Fixed re-enterancy problems on slow machines (Michael) * Translation updates: * Rhys Jones (cy) * Hendrik Brandt (de) * Kostas Papadimas (el) * Inaki Larranaga (eu) * Gabor Kelemen (hu) * Luca Ferretti (it) * Changwoo Ryu (ko) * Žygimantas Beručka (lt) * Artur Flinta (pl) * Duarte Loreto (pt) * Raphael Higino (pt_BR) * Leonid Kanter (ru) * Slobodan D, Sredojevic (sr, sr@Latn) * Maxim Dziumanenko (uk) * Funda Wang (zh_CN) libbonobo 2.13.1 * Fix corruption issue that was causing hangs on login (Michael) * Fix GOption argument parsing typo (Christian Perch) * Unregister run-time defined ServerInfos on program exit (Gustavo) libbonobo 2.13.0 * Rework the end-user installation location independence code for Win32 (Tor Lillqvist) * Don't use deprecated functions (Kjartan) * Fix build on solaris 10 with sun studio 10 compiler [#315145] * Add support for GOption argument parsing in libgnome (Pawel Sliwowski, chpe) [#307312] * Merge cleanups from stable (Kjartan) * Translation updates: * Mahay Alam Khan (bn) * Jordi Mallach (ca) * Miloslav Trmac (cs) * Martin Willemoes Hansen (da) * Adam Weinberger (en_CA) * Francisco Javier F. Serrador (es) * Ivar Smolin (et) * Iñaki Larrañaga Murgoitio (eu) * Christophe Merlet (RedFox) (fr) * Ignacio Casal Quinteiro (gl) * Ankit Patel (gu) * Gabor Kelemen (hu) * Mohammad DAMT (id) * Alessio Frusciante (it) * Takeshi AIHANA (ja) * Changwoo Ryu (ko) * Erdal Ronahi (ku) * Huib Kleinhout (nl) * Leonid Kanter (ru) * Marcel Telka (sk) * Christian Rose (sv) * Baris Cicek (tr) * Clytie Siddall (vi) libbonobo 2.10.1 * Release this so we have coherency after having released 2.10.0 twice... libbonobo 2.10.0 * bug fixes + fix includes (Gustavo) + export dynamic fix (Mark) + OS/X fix (Shreyas) + man page fixes (Dan Jacobson) + dataroot fix (Stepan Kasal) * features + port to Win32 (Tor Lillqvist) + language list memory saving (AlexL) libbonobo 2.8.1 * bug fixes + Fix registering server right after installing its server info file (Mark McLoughlin) + Server search optimization (Padraig O'Briain) + Fix autoheader warnings (Thomas Vander Stichele) + Fix crash when BonoboApplication returning GValue with NULL string (Gustavo) + Fix linking on Darwin (Hans Petter Jansson) + Fix problem with locale env variables (Mark, Ryan Lortie) * misc. + Documentation for bonobo:environment property (Gustavo) + README updated (Michael) libbonobo 2.6.0 + featurelets + uninstalled pkg-config files (Glynn Foster) + configure cleanup (Tomasz Kloczko) libbonobo 2.5.4 + bugs fixed + application init (Gustavo) + program arg translation (Anders, Hidetoshi) + featurelets + *Application* documentation (Gustavo) + better activation debugging (Rodrigo, Michael) libbonobo 2.5.3 + bugs fixed + regression tests problems (Gustavo) + AIX portability (Albert Chin-A-Young) + featurelets + improve b-a-s debug code (Michael) + use syslog for run-time spew (Michael Terry) libbonobo 2.5.2 + bugs fixed + _active query cache fix (Michael) + property bag logic bug fix (Dave Jones) + backwards compat dameon fix (Michael, Crispin Flowerday) + object directory fixes (Gustavo) + l10n docs fix (Martin Kretzschmar) + BonoboApplication fixes (Gustavo) + use environ not _environ for Solaris (Michael) + featurelets (Gustavo) + b-a-s tracks dead clients + updated tests libbonobo 2.5.1 + ... libbonobo 2.3.6 + bugs fixes + improved tests (Gustavo) + improved FAQ (Gustavo) + featurelets + bogus inheritance trap (Michael) libbonobo 2.3.5 * Bugs fixed + reference tracking race (Gustavo Carneiro) + incompatible activation-client fix (Antonio Xu) + popt fixage (Michael, Damien Carbery) * Featurelets + factory regression tests (Gustavo) libbonobo 2.3.4 * Bugs fixed + don't use C++ keyword in C code (Frederic Crozat) + fix activation test linking and script (Michael) * Translations + az (Metin Amiroff) + id (Mohammad Damt) + ml (Guntupalli Karunakar) + nl (Huib Kleinhout) + bn (Mahmudur Rahman) + fi (Pauli Virtanen) + ru (Russian team, Dmitry G. Mastrukov) + da (Ole Laursen) + sr (Serbian team, Danilo Å egan) + sq (Laurent Dhima) libbonobo 2.3.3 * Features + use Gdk::WindowId for Bonobo_Canvas (Michael) * Bugs fixed + CORBA_boolean handling in property bag (Dan Winship) + cancel pending timeouts when destroying factory (Gustavo Carneiro) libbonobo 2.3.2 * Features + very much improved API docs (Gustavo Carneiro, Martin Kretschmar, Rodrigo Moya) + dynamic b-a-s path update (Antonio Xu) + fix DNS reverse-lookup (Shailesh Mittal, Michael) + always run in thread-safe mode (Michael) + tentative BonoboObject locking action (Michael) + new thread policy APIs (Michael) + bump default factory timeouts (Gustavo) + more regression tests (Michael, Gustavo) * Bugs fixed + de-linc-ization (Michael) + build fixes (Jens Granseuer, Martin) libbonobo 2.3.1 * Features + lots more API & other doc work (Gustavo) + selectable BonoboObject POAs (Michael, Gustavo) + re-factored activation server (Michael) + merged bonobo-activation (Michael) + unknown app registration (Gustavo) + cygwin build fixes (Masahiro Sakai) + BonoboForeignObject - for bindings (Gustavo, James H) * Bugs fixed + BonoboArg improvements (Gustavo) + make check doesn't trash /tmp (Michael) + remove .so library suffix (Michael) + trailing ; fixes (Padraig O'Briain) + C++ BonoboArg bits (Martin Kretzchmar) + gettext fixes (Hidetoshi Tajima) + build fixes (Thomas VS, James H, Carlos Marin) * Translations + am - Daniel Yacob, de, fa, mk, nl - Pablo Saratxaga + ro - Marius Andreiana, mn, id, eo, sr - Christian Rose + ml - Guntupalli Karunakar libbonobo 2.2.0 * Features + large pretty new docs; lots of work (Gustavo J.A.M. Carneiro) * Bugs fixed + translation fix (Abel Cheung) + portability fixes (James H.) + build fixage (Julio Merino, Frederic Crozat) libbonobo 2.1.0 * Featurelets + add async property set API (Michael) + add QI C wrapper for convenience (Michael) + make release_unref async - pending ORB fixes (Michael) libbonobo 2.0.1 * Bugs fixed + leak fix (Kjartan Maraas) + 64bit GType cleans (hhetter) + init/shutdown count (Padraig O'Briain) + -pthread LIBS fix (Michael) + build clean fixes (Padraig O'Briain) * i18n + pt_BR, lv Gustavo Noronha Silva, Peteris Krisjanis + el, cs Simos Xenitellis, Stanislav Brabec libbonobo 2.0.0 * Featurelets + add BonoboObject padding (Michael) + add --enable-debug config option (Gustavo Giráldez) libbonobo 1.117.1 * Bugs fixed + quiescence after destroy for event-source & listener (Michael) libbonobo 1.117.0 * Featurelets + env var debugging conditionals (Jaka Mocnik) BONOBO_DEBUG=regs:aggregate:lifecycle:running:object libbonobo 1.115.0 * Bugs fixed + SEEK_CUR rename (Murray Cumming) + event_source fix (Stephane Demurget) libbonobo 1.113.0 * Bugs fixed + GValue / Boxed type updates (Michael) + kill bogus ListenerId typedef (Mark McLoughlin) + update ORBit2 debugging blurb (Mark) + global 'parent_class' privatised (Michael) * Featurelets + event source efficiency fix (Michael) libbonobo 1.112.0 * Bugs fixed + bonobo_closure_invoke leak fix (Tim Janik) + build fixes (Gediminas Paulauskas, Jacob) * Featurelets + make ref/unref more glib like (Michael) + flag the deprecated & compat bits as such (Michael) libbonobo 1.111.0 * Bugs fixed + item handler leak (Mark McLoughlin) + deprecated cruft removal (Micahel) + _WRITABLE for Americans (Michael) libbonobo 1.110.0 * Bugs fixed + kill bogus shlib factory unregister + setAttr needs a component_name + fix aggregate ref count debug + docs updates (Rodrigo Moya) + update moniker linkage (Johan Dahlin) + standardize conditional IDL compiles (Johan, Darin) libbonobo 1.109.0 * Features + API documentation setup (John Fleck) + Control Accessibility method (Me) + always on Bonobo reference accounting (Me) * Bugs fixed + update various GType bits (Me) + generic factory fixage (Anders, Darin) + improved GObject property mapping (Jacob) + fixed item container signal (Jens Finke) + marshaler fixage (Mark McLouglin) + item handler fixage (Mark) + C++ comments nailed (Mark) libbonobo 1.108.0 * Bugs fixed (Me) + exception translation use right domain + don't fiddle with ref at all if immortal + build fixage (Jacob Berkman, Abel Cheung) + Gergo's name is not spelt Gero, doh. * Featurelets (Me) + imported docs from bonobo/ + moniker resolution has chatty exceptions + install 'echo' in sample directory (Rodrigo) libbonobo 1.107.0 * Featurlets + BONOBO_BOILERPLATE macros (Darin) + Control IDL updates (Me) + UI exception added (Me) + accelerated object instantiation (Me, Mark) + IDL spelling fixes (Darin) + memory storage tests updates (Gergo Erdi) * Bugs fixed + glib fixage (Owen, Miles Lane) + moniker finalize chain (Me) + bonobo-storage-memory fixage (Gergo Erdi) libbonobo 1.106.0 * Bonobo_Control IDL re-write (Me) + improved Gdk / Gtk split out + make Control / Frame work in converse + add getAccessible for Bill + cleaned, Java friendly sizing * BonoboObject (Me) + bonobo_object_fast, new magic cast macro + always on object accounting & warnings + don't poke inside CORBA_Object + remove bogus QI virtualization + kill curious GType fiddling on QI. * Reference tracking (Me) + bonobo_debug_shutdown to flag bugs + scads of leaks fixed * beef up regression tests (Me) + new magic casts consistency + moniker equal tests + fail on reference leaks * Factory fixes + handle errors correctly (Jacob) + shlib factory rationalized (Me) + generic factory cleaned (Me) + Generic factory - autoexit unref (Me) * Property Bag (Me) + fixup mapping of Gtk+ properties + lifecyle issues + update GValue <-> CORBA_any mappings * Monikers + implement Asynchronous monikers (Me) + remove bogus virtualization (Me) + moniker leak fix (Dirk-Jan) * Misc + bonobo_exception_general_error (Me) + remove bogus virt. on BonoboStorageMemory + fixup listener construction (Iain Holmes) + hold CORBA ref on Unknown in ping (Ettore) + GValue issues & system_exception bug fix (Me) + Type name standardization (Seth Nickell) * Build fixes + parallel install (Abel Cheung, Havoc) + header re-organisation (Jacob) + misc. build fixage (Jacob) libbonobo 1.103.0 * Bug fixes * glib API tracking (Alex Larsson) * closure invocations (Me, Ariel Rios) * build system updates (Mark McLouglin, Havoc) * property bag segv (Me) * moniker escaping ABE (Me) * event source fix (Dan Winship) * Featurelets * improved regression tests (Me) * more ansification (Frank Belew) * several new translations Bonobo 1.0.0 * Documentation * Full C API documentation (Me, Miguel & John Sheets) * Lots of nice DIA diagrams (John Sheets) * preliminary UI XML DTD (Paolo) * Storage / Stream * fix symlink issues in fs storage (Vladimir Vukicevic) * fs storage permissions fix (Dietmar) * improved storage-fs / stream-fs mime typing (Jens Finke) * Event source / Listener * event-source fixes (Richard Hult) * event-source cleans (Dietmar) * event-source re-enterancy fix (Me) * Property Bag * batch property get/set impl. (Dietmar) * property bag client SEGV fix (Larry) * PropertyBag leak fixes (Iain Holmes) * Monikers * moniker file extender fix (Dietmar) * monikers memory leak fix (Dietmar) * moniker URL registry (Dietmar) * Any support logic * bonobo-arg fixes (Dietmar) * XML typecode reference fix (Dietmar) * Fix XML type coding bugs (Me) * UI handler bits * Revert unsafe attempt at AA pixbufs (Me) * minor XML de-merge logic fix (Me) * config fixes (Iain Holmes) * Always cleanup XML we hand out (Me) * pixmap <-> XML acceleration (John Harper) * Misc fixes * fix multiple translation issues (Me) * gshell fixes (Martin Baulig) * include config.h some more (Kjartan) * control / object destruction race fix (Darin) * Reduce control's memory footprint (Me) Bonobo 0.37 * Fix Bonobo Zoomable (Michael Engber) * Documentation fixage (John Sheets) * Any serialization xml supports aliases (Dietmar) * Listener / Event Source fixes (Dan Winship) * Bonobo Control fixage (Dan Winship) * UI str compare fixage (Darin Adler) * Cleanup config dialog (Cody Russell) * Publicised XObject type & bits (Me) Bonobo 0.36 * Convert print to BonoboXObject (Me) - forgot it. * Fix flicker issue (Me) * Remove bonobo-idl (Me) * Use nice type creation macro (Dietmar) * Toolbar control leak fix (Maciej) Bonobo 0.35 * BonoboXObject (Me) * Canvas fixes (Mike Kestner) * IDL cleanups * Misc bug fixage * UI handler * Toolbar shadow preference fix (Federico Mena) * Toolbar sizing problems (Ettore) * Builtin toolbar customization GUI & popup (Me) * UI configuration code (Me) * UI Menu rebuild acceleration (Me) * UI config Leak fixes (Iain) * Toolbar resize bug (Cody Russell) * Tearoff menu fixage (Me, Darin Adler) * Monikers * comparison method (Me) * stream cache moniker (Dietmar) * Misc new features * Use a Stream to transfer print data (Me) * Re-namespace IDL files (Me) * Property bag fixage (Dietmar) * Automatic shlib reference tracking (Dietmar) * Profiling config support (Pavel Cisler) * Zoomable interface expansion (Cody Russell) * Misc bug fixing * Leak fixes (Morten, Me) * Method chaining bugs (Me) * Depend on oaf >= 0.6.2 (Me) * LibIDL checks for bonobo-idl (Me) * Fix bonobo-idl build (Me) * function signature fix (George Lebl) * Stream moniker extender fix (Lutz Muller) * Calm ORBit warnings (Maciej Stachowiak) * Reference counting problems nailed (Owen, Me) * Begginings of keyboard focus fixage (Federico) Bonobo 0.33 * Fixed broken standard moniker id (Me) * Fix UI verb tracking leak (Me) * Fix old UI race condition (Me) Bonobo 0.32 * Monikers * Virtualized more of BonoboMoniker (Me) * Item container re-written (Me) * Item handler implemented (Miguel) * UI stuff (Me) * Substantialy re-factored * Acceleration (with Pavel) * Configuration engine * Toolbar customization dialog * Ignore Gtk+ keybinding assignment * Hide lots of internals * Docs updated * honour more GNOME prefs (Jacob) * Property Bag (Dietmar) * Improved exception handling * Reference leaks fixed * new Property listener methods * Property is an Unknown * Canvas Items (Mike Kestner) * Add event signal * Add grab / ungrab * Fix UI merging code * Update proxy creation * Fixed reference handling on addInterface (Dietmar) * Event Source updated (Dietmar) * Several reference leaks nailed (Dietmar) * Improved running context ref tracking (Dietmar) * Macros to reduce code complexity (Dietmar) * Header include cleanups (Jason Leach) * Conversion to xml-i18n-tools (Maciej) * Misc. bugs fixed (Darin, Eskil Olsen, Robin Slomkowski) Bonobo 0.31 * Serious bugs fixed * Depend on ORBit-0.5.6 * Re-include Federico's Policy leak fixes. * Fix fatal toolbar icon bug (DanW) * memset fixes (George Lebl) * Monikers Drastic simplification of Moniker API (Me) Std monikers merged to shlib (Dietmar) Moniker extenders implemented (Dietmar, Me) Misc. fixes (Miguel) Parsing tests added (Me) Simplify interface naming on resolve (Me) * Property bag Listening re-written using EventSource (Dietmar) Use our own ID scheme to identity listeners (Dietmar) Allow sub-classing (George Lebl) * Running context to track references implemented (Me) * Useful cleanups * API documentation (Miguel, Me) * Make generic-factory sub-classable (Me) * Make the component selector control useful (Me) * Implement a shlib factory to handle module unloading (Me) * UI methods on Canvas embeddables (Me) * VFS storage fixes (Lutz Muller) * Persist fixes (Gergo Erdi) * Make bonobo-transient sub-classable (George Lebl) * Build & misc. bug fixes (Arturo Tena, Richard Hult, Dave Camp Daniel Egger, Maciej Stachowiak) Bonobo 0.30 * Released since Elliot would not produce a fixed ORBit release, reverts fixes in 0.29, should not pass distcheck. Bonobo 0.29 * Evil bugs * X / CORBA synchronisation issues fixed (Me) * Property bag / transient memory leaks fixed (Federico) * Toolbar widget leak (Darin Alder) * Lots of misc leaks nailed (Morten) * Bonobo plug / socket race condition nailed (Me) * Storage stuff * Local FS Stream / Storage impl. completed (Dietmar) * Efs stream / storage polished up (Dietmar) * VFS storage cleans (Me) * Bonobo IO plugins version fixage (Dietmar) * Storage module cleans, and regression testing (Dietmar) * Monikers * Bonobo widget switched to use monikers (Me) * Bonobo contexts - moniker context (Me) * tar moniker (Vladimir Vukicevic) * http, gunzip monikers (Joe Shaw) * moniker test code (Joe Shaw) * Asynchronous moniker resolution (Me) * New transient CORBA object helper (Miguel) * UI stuff * Alpha composited icons (for pixmap themes) (Cody Russell) * Control desired size querying (Martin) * Completed toolbar item 'look' markup (John Sullivan) * pixmap location code flexed (Martin) * placeholder can hide all its contents (Darin) * UI signaling race conditions nailed (Darin, Me) * Helpers for removing dead UI components (Maciej) * Misc * CORBA_any * <-> XML serialization (Me) * generic listener / event interface re-written (Alex Graveley) * Created component selector control (Me) * listener fixes (Iain Holmes) * BonoboPropertyControl implemented & honed (Iain) * Make each IDL file parse individualy (Mathieu Lacage) * Embeddable factory bug flattened (Mike Kestner) * Docs * API build cleanups (Zach Frey) * Lots of API doc writing / organising (Miguel) * doc/NAMESPACE added to start namespacing IDL (Me) * Lots of bugs fixed. Bonobo 0.28 * Fixes to XML translation to fix seperate build dir (Me) * Beautified XML translation script (Kenneth) * Fixes to allow perl relocation (Dan Winship) * Remove Gtk arg <-> property mapping sillyness (Radek Doulik) Bonobo 0.27 * New test environment for storage drivers (Dietmar) * Lots of internal stream / storage fixes (Dietmar) * API rename & documentation clean (Me) * Property bag fixes * improved ref debugging (Martin) * Lots of moniker (http, gzip) work (Joe Shaw) * Library versioning sorted (Ian Peters) * UI Leaks fixed (Me) * XML Translation scheme re-engineered (Kenneth) * Lots of API Documentation mending (Zach Frey) Bonobo 0.26 * Big Stream / Storage cleanups (Dietmar) * Use OAF more cleanly internaly (Joe Shaw) * Remove broken property preconditions (Me) * Property bag POA policy fix (Miguel) * Updated docs (Zach Frey) * text-plain fix (Martin) * Moniker improvements (Miguel) * Leak fix (George Lebl) Bonobo 0.25 * UI related bonobo-control-frame fix (Martin) Bonobo 0.24 * cleanup of storage / stream plugins (Dietmar) * toolbar control view update by orientation (Jon K Hellan * toolbar look update by orientation (Me) * verb / listener remove functions (Me) Bonobo 0.23 * fix pernicious UI widget parenting problem (Me) * nail translation problem finaly (Me) * fix licensing cockup GPL -> LGPL (Ettore) * update docs on accelerators (John) * impl toolbar control class (Jon K Hellan) * gdk_rgb_init fix for icons (Jody) Bonobo 0.22 * Several automake fixes (Martin) Bonobo 0.21 * UI handler changes (Me) + cleaned XML spec. + fixed evil translation problems + sexy toolbar sizing (Ettore) + expandable toolbar items (Ettore) + more sophisticated toolbar layout (Andy) + nicer looking separators (Cody Russell) + all samples! converted to new UI handler (Martin) + bug fixes (Larry, Andy, Darin, John) * Moniker fixes (Miguel) * Batch Property interface (Miguel) * More Zoomable work (Martin) * Big components clean (Martin) * Storage modules rename (Dietmar) Bonobo 0.20 * gshell fixes (Martin) * UI handler changes (Me) + cleaning + large UI API update + UI flicker killed + Improve cmd / widget separation + full toolbar behavoir (John Sullivan) + menue show / hide fix (Mathieu) * Update to LGPL 21. (Martin) * Socket fixes (Maciej) * Header cleans (Darin) * More cunning toolbar item sizing fixes (Andy) * Zoom interface imported from Nautilus (Martin) Recieved with thanks from Eazel. * Skeleton generic listener interface (Me) Bonobo 0.19 Main bits: * UI handler totaly re-implemented (Myself) + New shinier Toolbar widget (Ettore, Jody) + XML UI description + XML node abstraction (Havoc) * Property bag Listener interface (Mike) * libefs updates (Dietmar) * New 'new:' moniker (Myself) Bugs fixed: * UI leak fixes (Darin) * Text/Plain component sorted out (Maciej) Bonobo 0.18 Paper bag release. Bonobo 0.17 Main bits: * Monikers, total re-write along with some standard monikers, 'file', 'oafiid', 'item' (Myself) * Aggregate Object finalization bug nailed (Federico) * Switched to a single Oaf build (Gnorba is no longer supported) cleaning loads of cruft, object activation cleaned, bonobo-selector API shrunk (Myself) * Bonobo has been split into GUI-less and GUI versions of Bonobo (bonobo, bonobox libraries to assist non-gui Bonobo component development (Myself). * Property Bag Client - new more flexible helper interface removing BonoboObjectClient (Myself) Bugs fixed: * Bonobo-Widget bug nailed (Dan) * Evil, fatal, intermittent plug / socket unrealize bug inherited from Gtk fixed (Federico, Myself) * UI handler bugs nailed (Darin, Myself, Peter Williams) * Blocking problems in listners fixed (Ettore) * Spec file sorted (Robin Slomkowski) * Updated docs/refcounting.txt and enforced inter object ref counting policy globaly * Various naming daftnesses cleaned (Gergo) libbonobo-2.32.1/tests/0000775000076400007640000000000011546334244011727 500000000000000libbonobo-2.32.1/tests/test-generic-factory.sh0000755000076400007640000000244611173072711016242 00000000000000#! /bin/sh if test "z$ORBIT_TMPDIR" = "z"; then ORBIT_TMPDIR="/tmp/orbit-$USER/tst" rm -Rf $ORBIT_TMPDIR mkdir -p $ORBIT_TMPDIR fi TMPDIR=$ORBIT_TMPDIR; export TMPDIR; BONOBO_ACTIVATION_SERVER="../activation-server/bonobo-activation-server"; PATH=".:$PATH"; LD_LIBRARY_PATH="./.libs:$LD_LIBRARY_PATH"; unset BONOBO_ACTIVATION_DEBUG_OUTPUT PATH="./.libs:$PATH"; export BONOBO_ACTIVATION_SERVER PATH LD_LIBRARY_PATH # job control must be active set -m echo "Starting factory" ./generic-factory | tr -d '\015' > generic-factory.output & sleep 1 echo "Starting client" ./test-generic-factory | tr -d '\015' > test-generic-factory.output echo "Waiting for factory to terminate; Please hold on a second, otherwise hit Ctrl-C." wait %1 2> /dev/null echo "Comparing factory output with model..." if diff -u $MODELS_DIR/generic-factory.output generic-factory.output; then echo "...OK" rm -f generic-factory.output else echo "...DIFFERENT!" rm -f generic-factory.output rm -f test-generic-factory.output exit 1; fi echo "Comparing client output with model..." if diff -u $MODELS_DIR/test-generic-factory.output test-generic-factory.output; then echo "...OK" rm -f test-generic-factory.output else echo "...DIFFERENT!" rm -f test-generic-factory.output exit 1; fi exit 0 libbonobo-2.32.1/tests/test-object.c0000644000076400007640000001164311173072711014233 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ #include #include #include #include #include #include #define GENERAL_ERROR_MESSAGE "Hello World" static int ret_ex_test (CORBA_Environment *ev) { BONOBO_RET_VAL_EX (ev, 1); return 0; } static void ex_test (CORBA_Environment *ev) { BONOBO_RET_EX (ev); } static int signal_emitted = 0; static void system_exception_cb (BonoboObject *object, CORBA_Object cobject, CORBA_Environment *ev, gpointer user_data) { g_assert (BONOBO_IS_OBJECT (object)); g_assert ((BonoboObject *)user_data == object); g_assert (ev != NULL); g_assert (ev->_major == CORBA_SYSTEM_EXCEPTION); g_assert (!strcmp (BONOBO_EX_REPOID (ev), ex_CORBA_COMM_FAILURE)); signal_emitted = 1; } int main (int argc, char *argv []) { BonoboObject *object; Bonobo_Unknown ref; CORBA_Environment *ev, real_ev; g_thread_init (NULL); free (malloc (8)); if (bonobo_init (&argc, argv) == FALSE) g_error ("Can not bonobo_init"); bonobo_activate (); ev = &real_ev; CORBA_exception_init (ev); fprintf (stderr, "Local lifecycle\n"); { object = BONOBO_OBJECT (g_object_new ( bonobo_moniker_get_type (), NULL)); g_assert (bonobo_object_ref (object) == object); g_assert (bonobo_object_unref (BONOBO_OBJECT (object)) == NULL); bonobo_object_unref (BONOBO_OBJECT (object)); } fprintf (stderr, "In-proc lifecycle\n"); { object = BONOBO_OBJECT (g_object_new ( bonobo_moniker_get_type (), NULL)); ref = CORBA_Object_duplicate (BONOBO_OBJREF (object), NULL); bonobo_object_release_unref (ref, NULL); } fprintf (stderr, "Query interface\n"); { BonoboObject *a, *b; a = BONOBO_OBJECT (g_object_new ( bonobo_moniker_get_type (), NULL)); b = BONOBO_OBJECT (g_object_new ( bonobo_stream_mem_get_type (), NULL)); bonobo_object_add_interface (a, b); fprintf (stderr, " invalid interface\n"); object = bonobo_object_query_local_interface ( a, "IDL:This/Is/Not/There:1.0"); g_assert (object == CORBA_OBJECT_NIL); fprintf (stderr, " symmetry\n"); object = bonobo_object_query_local_interface ( a, "IDL:Bonobo/Stream:1.0"); g_assert (object == b); bonobo_object_unref (object); object = bonobo_object_query_local_interface ( b, "IDL:Bonobo/Stream:1.0"); g_assert (object == b); bonobo_object_unref (object); object = bonobo_object_query_local_interface ( a, "IDL:Bonobo/Moniker:1.0"); g_assert (object == a); bonobo_object_unref (object); object = bonobo_object_query_local_interface ( b, "IDL:Bonobo/Moniker:1.0"); g_assert (object == a); bonobo_object_unref (object); fprintf (stderr, " remote\n"); ref = Bonobo_Unknown_queryInterface ( BONOBO_OBJREF (a), "IDL:Broken/1.0", ev); g_assert (!BONOBO_EX (ev)); g_assert (ref == CORBA_OBJECT_NIL); ref = Bonobo_Unknown_queryInterface ( BONOBO_OBJREF (a), "IDL:Bonobo/Stream:1.0", ev); g_assert (!BONOBO_EX (ev)); g_assert (ref == BONOBO_OBJREF (b)); bonobo_object_release_unref (ref, ev); g_assert (!BONOBO_EX (ev)); bonobo_object_unref (a); } fprintf (stderr, "Environment exception checks\n"); { object = BONOBO_OBJECT (g_object_new ( bonobo_moniker_get_type (), NULL)); g_signal_connect (G_OBJECT (object), "system_exception", G_CALLBACK (system_exception_cb), object); CORBA_exception_set_system ( ev, ex_CORBA_COMM_FAILURE, CORBA_COMPLETED_MAYBE); g_assert (BONOBO_EX (ev)); signal_emitted = 0; BONOBO_OBJECT_CHECK ( object, BONOBO_OBJREF (object), ev); g_assert (signal_emitted); CORBA_exception_free (ev); bonobo_object_unref (object); } fprintf (stderr, "Servant mapping...\n"); { PortableServer_Servant servant; object = BONOBO_OBJECT (g_object_new ( bonobo_moniker_get_type (), NULL)); servant = (PortableServer_Servant) &object->servant; g_assert (bonobo_object (object) == object); g_assert (bonobo_object (&object->servant) == object); g_assert (bonobo_object_get_servant (object) == servant); g_assert (bonobo_object_from_servant (servant) == object); g_assert (bonobo_object_fast (object) == object); g_assert (bonobo_object_fast (servant) == object); bonobo_object_unref (object); } fprintf (stderr, "Ret-ex tests...\n"); { g_assert (!ret_ex_test (ev)); ex_test (ev); CORBA_exception_set (ev, CORBA_USER_EXCEPTION, ex_Bonobo_PropertyBag_NotFound, NULL); g_assert (ret_ex_test (ev)); CORBA_exception_free (ev); } fprintf (stderr, "General error tests...\n"); { bonobo_exception_general_error_set ( ev, NULL, "a%s exception occurred", "n exceptional"); g_assert (BONOBO_EX (ev)); g_assert (!strcmp (BONOBO_EX_REPOID (ev), ex_Bonobo_GeneralError)); g_assert (!strcmp (bonobo_exception_get_text (ev), "an exceptional exception occurred")); } fprintf (stderr, "All tests passed\n"); return bonobo_debug_shutdown (); } libbonobo-2.32.1/tests/test-stream-mem.c0000644000076400007640000000415311173072711015032 00000000000000/* -*- mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ #include #include #include #include #include #include #define BUFSIZE 100 static gboolean test_read_write (BonoboStream *memstream) { CORBA_Environment ev; char *write_string = "This is the BonoboStreamMem test application"; char *read_string = 0; Bonobo_Stream stream; stream = bonobo_object_corba_objref (BONOBO_OBJECT (memstream)); CORBA_exception_init (&ev); printf ("\tWriting '%s' to stream\n", write_string); bonobo_stream_client_write_string (stream, write_string, TRUE, &ev); if (BONOBO_EX (&ev)) printf ("\tWrite failed"); CORBA_exception_free (&ev); CORBA_exception_init (&ev); Bonobo_Stream_seek (stream, 0, Bonobo_Stream_SeekSet, &ev); CORBA_exception_free (&ev); CORBA_exception_init (&ev); bonobo_stream_client_read_string (stream, &read_string, &ev); if (BONOBO_EX (&ev)) printf ("\tRead failed"); else printf ("\tRead '%s' from stream\n", read_string); CORBA_exception_free (&ev); if (!strcmp (read_string, write_string)) return TRUE; else return FALSE; } int main (int argc, char *argv []) { BonoboStream *memstream; guint8 *buffer; g_thread_init (NULL); free (malloc (8)); if (!bonobo_init (&argc, argv)) g_error ("bonobo_init failed"); printf ("Creating a stream in memory from scratch " "(size: %d bytes)\n", BUFSIZE); memstream = bonobo_stream_mem_create (NULL, BUFSIZE, FALSE, TRUE); if (test_read_write (memstream)) printf ("Passed\n"); else printf ("Failed\n"); bonobo_object_unref (memstream); printf ("Creating a stream in memory from pre-allocated buffer " "(size: %d bytes)\n", BUFSIZE); buffer = g_new0 (guint8, BUFSIZE); memstream = bonobo_stream_mem_create (buffer, BUFSIZE, FALSE, TRUE); if (test_read_write (memstream)) printf ("Passed\n"); else printf ("Failed\n"); bonobo_object_unref (memstream); return bonobo_debug_shutdown (); } libbonobo-2.32.1/tests/Makefile.am0000664000076400007640000000326711436445320013707 00000000000000SUBDIRS = test-activation models check_PROGRAMS = \ test-thread \ test-moniker \ test-properties-server \ test-properties-client \ test-event-source \ test-object \ test-stream-mem \ test-storage-mem \ test-main-loop \ generic-factory \ test-uniqapp #check_PROGRAMS += \ # test-generic-factory INCLUDES = \ -DGNOMELOCALEDIR=\""$(datadir)/locale"\" \ -I$(top_srcdir) \ $(WARN_CFLAGS) \ $(LIBBONOBO_CFLAGS) \ $(DISABLE_DEPRECATED_CFLAGS) LDADD = $(top_builddir)/bonobo/libbonobo-2.la $(LIBBONOBO_LIBS) test_properties_server_SOURCES = \ test-properties-server.c test_properties_client_SOURCES = \ test-properties-client.c test_thread_SOURCES = test-thread.c test_moniker_SOURCES = test-moniker.c test_object_SOURCES = test-object.c test_event_source_SOURCES = test-event-source.c test_stream_mem_SOURCES = test-stream-mem.c test_storage_mem_SOURCES = test-storage-mem.c test_uniqapp_SOURCES = test-uniqapp.c test_main_loop_SOURCES = test-main-loop.c TESTS_ENVIRONMENT = \ LD_LIBRARY_PATH="$(top_builddir)/bonobo/.libs:$$LD_LIBRARY_PATH" \ PATH="$(top_builddir)/bonobo/.libs:$$PATH" \ BONOBO_PLUGIN_PATH="$(top_builddir)/storage-modules/.libs:$$BONOBO_PLUGIN_PATH"\ BONOBO_ACTIVATION_PATH="$(srcdir)$(SEARCHPATHSEP)$$BONOBO_ACTIVATION_PATH"\ MODELS_DIR="$(srcdir)/models" TESTS = test-moniker$(EXEEXT) test-event-source$(EXEEXT) test-object$(EXEEXT) \ test-stream-mem$(EXEEXT) $(srcdir)/test-properties.sh test-storage-mem$(EXEEXT) \ test-main-loop$(EXEEXT) # TESTS += test-generic-factory.sh check_SCRIPTS = test-properties.sh test-generic-factory.sh EXTRA_DIST=$(check_SCRIPTS) Test_Generic_Factory.server test-generic-factory.sh libbonobo-2.32.1/tests/Test_Generic_Factory.server0000644000076400007640000000146711173072711017141 00000000000000 libbonobo-2.32.1/tests/test-storage-mem.c0000644000076400007640000001650011173072711015202 00000000000000/* -*- mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ #include #include #include #include int main (int argc, char *argv []) { BonoboObject *storage; Bonobo_Storage corba_storage; Bonobo_Storage ret_storage; Bonobo_Stream ret_stream; CORBA_Environment real_ev, *ev; Bonobo_StorageInfo *info; Bonobo_Storage_DirectoryList *dir_list; int num_ok = 0; int num_tests = 0; g_thread_init (NULL); ev = &real_ev; if (!bonobo_init (&argc, argv)) g_error ("bonobo_init failed"); storage = bonobo_storage_mem_create (); corba_storage = bonobo_object_corba_objref (storage); CORBA_exception_init (ev); printf ("creating storage:\t"); num_tests++; ret_storage = Bonobo_Storage_openStorage (corba_storage, "/foo", Bonobo_Storage_CREATE, ev); if (!BONOBO_EX (ev)) { printf ("passed\t'/foo'\n"); num_ok++; } else { printf ("failed\t'/foo'\n"); CORBA_exception_free (ev); } bonobo_object_release_unref (ret_storage, NULL); printf ("creating sub-storage:\t"); num_tests++; ret_stream = Bonobo_Storage_openStorage (corba_storage, "/foo/bar", Bonobo_Storage_CREATE, ev); if (!BONOBO_EX (ev)) { printf ("passed\t'/foo/bar'\n"); num_ok++; } else { printf ("failed: %s\n", BONOBO_EX_REPOID (ev)); CORBA_exception_free (ev); } bonobo_object_release_unref (ret_stream, NULL); printf ("creating stream:\t"); num_tests++; ret_stream = Bonobo_Storage_openStream (corba_storage, "/foo/bar/baz", Bonobo_Storage_CREATE, ev); if (!BONOBO_EX (ev)) { printf ("passed\t'/foo/bar/baz'\n"); num_ok++; } else { printf ("failed: %s\n", BONOBO_EX_REPOID (ev)); CORBA_exception_free (ev); } bonobo_object_release_unref (ret_stream, NULL); printf ("creating stream:\t"); num_tests++; ret_stream = Bonobo_Storage_openStream (corba_storage, "/foo/quux", Bonobo_Storage_CREATE, ev); if (!BONOBO_EX (ev)) { printf ("passed\t'/foo/quux'\n"); num_ok++; } else { printf ("failed: %s\n", BONOBO_EX_REPOID (ev)); CORBA_exception_free (ev); } bonobo_object_release_unref (ret_stream, NULL); printf ("opening stream:\t\t"); num_tests++; ret_stream = Bonobo_Storage_openStream (corba_storage, "/foo/quux", Bonobo_Storage_READ, ev); if (!BONOBO_EX (ev)) { printf ("passed\n"); num_ok++; } else { printf ("failed: %s\n", BONOBO_EX_REPOID (ev)); CORBA_exception_free (ev); } bonobo_object_release_unref (ret_stream, NULL); printf ("opening missing stream:\t"); num_tests++; Bonobo_Storage_openStream (corba_storage, "/foo/dummy", Bonobo_Storage_READ, ev); if (BONOBO_EX (ev) && !strcmp (BONOBO_EX_REPOID (ev), ex_Bonobo_Storage_NotFound)) { printf ("passed\n"); CORBA_exception_free (ev); num_ok++; } else { printf ("failed: %s\n", BONOBO_EX_REPOID (ev)); CORBA_exception_free (ev); } printf ("rename (storage):\t"); num_tests++; Bonobo_Storage_rename (corba_storage, "/foo", "/renamed", ev); if (!BONOBO_EX (ev)) { printf ("passed\t'%s' -> '%s'\n", "/foo", "/renamed"); num_ok++; } else { printf ("failed: %s\n", BONOBO_EX_REPOID (ev)); CORBA_exception_free (ev); } printf ("getInfo (storage):\t"); num_tests++; info = Bonobo_Storage_getInfo (corba_storage, "/renamed", Bonobo_FIELD_TYPE, ev); if (!BONOBO_EX (ev)) { printf ("passed\n"); printf ("\t\t\t\tname:\t'%s'\n", info->name); printf ("\t\t\t\ttype:\t%s\n", info->type ? "storage" : "stream" ); CORBA_free (info); num_ok++; } else { printf ("failed: %s\n", BONOBO_EX_REPOID (ev)); CORBA_exception_free (ev); } printf ("getInfo (stream):\t"); num_tests++; info = Bonobo_Storage_getInfo (corba_storage, "/renamed/quux", Bonobo_FIELD_TYPE | Bonobo_FIELD_SIZE | Bonobo_FIELD_CONTENT_TYPE, ev); if (!BONOBO_EX (ev)) { printf ("passed\n"); printf ("\t\t\t\tname:\t'%s'\n", info->name); printf ("\t\t\t\ttype:\t%s\n", info->type ? "storage" : "stream" ); printf ("\t\t\t\tmime:\t%s\n", info->content_type); CORBA_free (info); num_ok++; } else { printf ("failed: %s\n", BONOBO_EX_REPOID (ev)); CORBA_exception_free (ev); } printf ("getInfo (root):\t\t"); num_tests++; info = Bonobo_Storage_getInfo (corba_storage, "/", Bonobo_FIELD_TYPE, ev); if (!BONOBO_EX (ev)) { printf ("passed\n"); printf ("\t\t\t\tname:\t'%s'\n", info->name); printf ("\t\t\t\ttype:\t%s\n", info->type ? "storage" : "stream" ); CORBA_free (info); num_ok++; } else { printf ("failed: %s\n", BONOBO_EX_REPOID (ev)); CORBA_exception_free (ev); } printf ("listContents:\t\t"); num_tests++; dir_list = Bonobo_Storage_listContents (corba_storage, "/renamed", 0, ev); if (!BONOBO_EX (ev)) { int i; printf ("passed\n"); for (i = 0; i < dir_list->_length; i++) printf ("\t\t\t\t%s%c\n", dir_list->_buffer[i].name, dir_list->_buffer[i].type ? '/' : ' '); CORBA_free (dir_list); num_ok++; } else { printf ("failed: %s\n", BONOBO_EX_REPOID (ev)); CORBA_exception_free (ev); } printf ("erase (stream):\t\t"); num_tests++; Bonobo_Storage_erase (corba_storage, "/renamed/bar/baz", ev); if (!BONOBO_EX (ev)) { printf ("passed\n"); num_ok++; } else { printf ("failed: %s\n", BONOBO_EX_REPOID (ev)); CORBA_exception_free (ev); } printf ("erase (empty storage):\t"); num_tests++; Bonobo_Storage_erase (corba_storage, "/renamed/bar", ev); if (!BONOBO_EX (ev)) { printf ("passed\n"); CORBA_exception_free (ev); num_ok++; } else { printf ("failed: %s\n", BONOBO_EX_REPOID (ev)); CORBA_exception_free (ev); } printf ("getInfo (dltd stream):\t"); num_tests++; info = Bonobo_Storage_getInfo ( corba_storage, "/renamed/bar/baz", Bonobo_FIELD_TYPE | Bonobo_FIELD_SIZE | Bonobo_FIELD_CONTENT_TYPE, ev); if (BONOBO_EX (ev) && !strcmp (BONOBO_EX_REPOID (ev), ex_Bonobo_Storage_NotFound)) { printf ("passed\n"); num_ok++; CORBA_exception_free (ev); } else { printf ("failed: %s\n", BONOBO_EX_REPOID (ev)); CORBA_exception_free (ev); } printf ("getInfo (dltd storage):\t"); num_tests++; info = Bonobo_Storage_getInfo (corba_storage, "/renamed/bar", Bonobo_FIELD_TYPE, ev); if (BONOBO_EX (ev) && !strcmp (BONOBO_EX_REPOID (ev), ex_Bonobo_Storage_NotFound)) { printf ("passed\n"); CORBA_exception_free (ev); num_ok++; } else { printf ("failed: %s\n", BONOBO_EX_REPOID (ev)); CORBA_exception_free (ev); } printf ("listContents (deleted):\t"); num_tests++; dir_list = Bonobo_Storage_listContents (corba_storage, "/renamed/bar", 0, ev); if (BONOBO_EX (ev) && !strcmp (BONOBO_EX_REPOID (ev), ex_Bonobo_Storage_NotFound)) { printf ("passed\n"); num_ok++; CORBA_exception_free (ev); } else { printf ("failed: %s\n", BONOBO_EX_REPOID (ev)); CORBA_exception_free (ev); } CORBA_exception_free (ev); bonobo_object_unref (BONOBO_OBJECT (storage)); printf ("%d of %d tests passed\n", num_ok, num_tests); if (num_ok != num_tests) return 1; return bonobo_debug_shutdown (); } libbonobo-2.32.1/tests/test-properties-server.c0000644000076400007640000001346411173072711016470 00000000000000#include #include #include #include #include static CORBA_ORB orb; static BonoboPropertyBag *pb; static CORBA_Environment ev; enum { PROP_BOOLEAN_TEST, PROP_INTEGER_TEST, PROP_LONG_TEST, PROP_FLOAT_TEST, PROP_DOUBLE_TEST, PROP_STRING_TEST }; typedef struct { gint i; glong l; gboolean b; gfloat f; gdouble d; char *s; } PropData; static void set_prop (BonoboPropertyBag *bag, const BonoboArg *arg, guint arg_id, CORBA_Environment *ev, gpointer user_data) { PropData *pd = user_data; switch (arg_id) { case PROP_BOOLEAN_TEST: pd->b = BONOBO_ARG_GET_BOOLEAN (arg); break; case PROP_INTEGER_TEST: pd->i = BONOBO_ARG_GET_INT (arg); break; case PROP_LONG_TEST: pd->l = BONOBO_ARG_GET_LONG (arg); break; case PROP_FLOAT_TEST: pd->f = BONOBO_ARG_GET_FLOAT (arg); break; case PROP_DOUBLE_TEST: pd->d = BONOBO_ARG_GET_DOUBLE (arg); break; case PROP_STRING_TEST: pd->s = BONOBO_ARG_GET_STRING (arg); break; default: bonobo_exception_set (ev, ex_Bonobo_PropertyBag_NotFound); }; } static void get_prop (BonoboPropertyBag *bag, BonoboArg *arg, guint arg_id, CORBA_Environment *ev, gpointer user_data) { PropData *pd = user_data; switch (arg_id) { case PROP_BOOLEAN_TEST: BONOBO_ARG_SET_BOOLEAN (arg, pd->b); break; case PROP_INTEGER_TEST: BONOBO_ARG_SET_INT (arg, pd->i); break; case PROP_LONG_TEST: BONOBO_ARG_SET_LONG (arg, pd->l); break; case PROP_FLOAT_TEST: BONOBO_ARG_SET_FLOAT (arg, pd->f); break; case PROP_DOUBLE_TEST: BONOBO_ARG_SET_DOUBLE (arg, pd->d); break; case PROP_STRING_TEST: BONOBO_ARG_SET_STRING (arg, pd->s); break; default: bonobo_exception_set (ev, ex_Bonobo_PropertyBag_NotFound); }; } static char * simple_prop_to_string (BonoboArg *arg) { static char s [1024]; if (!arg) { g_snprintf (s, sizeof (s), "NULL"); return g_strdup (s); } g_assert (arg->_type != NULL); switch (arg->_type->kind) { case CORBA_tk_boolean: g_snprintf (s, sizeof (s), "boolean: %s", BONOBO_ARG_GET_BOOLEAN (arg) ? "True" : "False"); break; case CORBA_tk_long: g_snprintf (s, sizeof (s), "integer: %d", BONOBO_ARG_GET_INT (arg)); break; case CORBA_tk_float: g_snprintf (s, sizeof (s), "float: %f", BONOBO_ARG_GET_FLOAT (arg)); break; case CORBA_tk_double: g_snprintf (s, sizeof (s), "double: %g", BONOBO_ARG_GET_DOUBLE (arg)); break; case CORBA_tk_string: { g_snprintf (s, sizeof (s), "string: '%s'", BONOBO_ARG_GET_STRING (arg)); break; } default: g_error ("Unhandled type: %u", arg->_type->kind); break; } return g_strdup (s); } static void create_bag (void) { PropData *pd = g_new0 (PropData, 1); BonoboArg *def; char *dstr; CORBA_char *ior; FILE *iorfile; pd->i = 987654321; pd->l = 123456789; pd->b = TRUE; pd->f = 2.71828182845; pd->d = 3.14159265358; pd->s = "Hello world"; /* Create the property bag. */ pb = bonobo_property_bag_new (get_prop, set_prop, pd); dstr = "Testing 1 2 3"; /* Add properties */ bonobo_property_bag_add (pb, "int-test", PROP_INTEGER_TEST, BONOBO_ARG_INT, NULL, dstr, 0); def = bonobo_arg_new (BONOBO_ARG_STRING); BONOBO_ARG_SET_STRING (def, "a default string"); bonobo_property_bag_add (pb, "string-test", PROP_STRING_TEST, BONOBO_ARG_STRING, def, dstr, Bonobo_PROPERTY_READABLE | Bonobo_PROPERTY_WRITEABLE); bonobo_property_bag_add (pb, "long-test", PROP_LONG_TEST, BONOBO_ARG_LONG, NULL, dstr, 0); bonobo_property_bag_add (pb, "boolean-test", PROP_BOOLEAN_TEST, BONOBO_ARG_BOOLEAN, NULL, dstr, 0); def = bonobo_arg_new (BONOBO_ARG_FLOAT); BONOBO_ARG_SET_FLOAT (def, 0.13579); bonobo_property_bag_add (pb, "float-test", PROP_FLOAT_TEST, BONOBO_ARG_FLOAT, def, dstr, 0); bonobo_property_bag_add (pb, "double-test", PROP_DOUBLE_TEST, BONOBO_ARG_DOUBLE, NULL, dstr, 0); iorfile = fopen ("iorfile", "wb"); /* Print out the IOR for this object. */ ior = CORBA_ORB_object_to_string (orb, BONOBO_OBJREF (pb), &ev); /* So we can tee the output to compare */ fwrite (ior, strlen (ior), 1, iorfile); fclose (iorfile); CORBA_free (ior); } static void print_props (void) { GList *props; GList *l; /* This is a private function; we're just using it for testing. */ props = bonobo_property_bag_get_prop_list (pb); for (l = props; l != NULL; l = l->next) { BonoboArg *arg; BonoboProperty *prop = l->data; char *s1, *s2; arg = bonobo_pbclient_get_value (BONOBO_OBJREF(pb), prop->name, NULL, NULL); s1 = simple_prop_to_string (arg); bonobo_arg_release (arg); s2 = simple_prop_to_string (prop->default_value); g_print ("Prop %12s [%2u] %s %s %s %s %s %s\n", prop->name, prop->type->kind, s1, s2, prop->doctitle, prop->flags & Bonobo_PROPERTY_READABLE ? "Readable" : "NotReadable", prop->flags & Bonobo_PROPERTY_WRITEABLE ? "Writeable" : "NotWriteable", prop->flags & Bonobo_PROPERTY_NO_LISTENING ? "NoListening" : "Listeners-enabled"); g_free (s1); g_free (s2); } g_list_free (props); } static void quit_main (GObject *object) { bonobo_main_quit (); } int main (int argc, char **argv) { BonoboObject *context; g_thread_init (NULL); if (!bonobo_init (&argc, argv)) g_error ("Could not initialize Bonobo"); orb = bonobo_orb (); create_bag (); print_props (); /* FIXME: this is unusual, with a factory you normally * want to use bonobo_running_context_auto_exit_unref */ context = bonobo_context_running_get (); g_signal_connect_data ( G_OBJECT (context), "last_unref", G_CALLBACK (quit_main), NULL, NULL, 0); bonobo_object_unref (context); bonobo_main (); return bonobo_debug_shutdown (); } libbonobo-2.32.1/tests/models/0000775000076400007640000000000011546334244013212 500000000000000libbonobo-2.32.1/tests/models/generic-factory.output0000644000076400007640000000011611173072711017463 00000000000000new instance: #1 instance #1 destroyed new instance: #2 instance #2 destroyed libbonobo-2.32.1/tests/models/Makefile.am0000644000076400007640000000003711173072711015156 00000000000000EXTRA_DIST=${wildcard *.output}libbonobo-2.32.1/tests/models/test-generic-factory.output0000644000076400007640000000007211173072711020441 00000000000000activate 1 timeout1 timeout2 activate 2 timeout3 timeout4 libbonobo-2.32.1/tests/models/runtest-output-test-properties-server.output0000644000076400007640000000123311173072711024120 00000000000000Prop long-test [ 3] integer: 123456789 NULL Testing 1 2 3 Stored Readable Writeable NotDefaultOptimized Prop string-test [18] string: 'Hello world' string: 'a default string' Testing 1 2 3 Stored Readable Writeable NotDefaultOptimized Prop boolean-test [ 8] boolean: True NULL Testing 1 2 3 Stored Readable Writeable NotDefaultOptimized Prop int-test [ 3] integer: 987654321 NULL Testing 1 2 3 Stored Readable Writeable NotDefaultOptimized Prop double-test [ 7] double: 3.14159 NULL Testing 1 2 3 Stored Readable Writeable NotDefaultOptimized Prop float-test [ 6] float: 2.718282 float: 0.135790 Testing 1 2 3 Stored Readable Writeable NotDefaultOptimized libbonobo-2.32.1/tests/models/Makefile.in0000664000076400007640000002626211546333030015177 00000000000000# Makefile.in generated by automake 1.11.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008, 2009 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@ VPATH = @srcdir@ 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 = tests/models DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.in 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_$(V)) am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) am__v_GEN_0 = @echo " GEN " $@; AM_V_at = $(am__v_at_$(V)) am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) am__v_at_0 = @ SOURCES = DIST_SOURCES = DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ AR = @AR@ AS = @AS@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ BONOBO_ACTIVATION_LT_VERSION_INFO = @BONOBO_ACTIVATION_LT_VERSION_INFO@ BONOBO_MAJOR_VERSION = @BONOBO_MAJOR_VERSION@ BONOBO_MICRO_VERSION = @BONOBO_MICRO_VERSION@ BONOBO_MINOR_VERSION = @BONOBO_MINOR_VERSION@ BONOBO_SLAY = @BONOBO_SLAY@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DISABLE_DEPRECATED_CFLAGS = @DISABLE_DEPRECATED_CFLAGS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GREP = @GREP@ GTHREAD_CFLAGS = @GTHREAD_CFLAGS@ GTHREAD_LIBS = @GTHREAD_LIBS@ GTKDOC_CHECK = @GTKDOC_CHECK@ GTKDOC_MKPDF = @GTKDOC_MKPDF@ GTKDOC_REBASE = @GTKDOC_REBASE@ HTML_DIR = @HTML_DIR@ IF_BSD_PS = @IF_BSD_PS@ IF_CYGWIN_PS = @IF_CYGWIN_PS@ IF_POSIX_PS = @IF_POSIX_PS@ 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@ LD = @LD@ LDFLAGS = @LDFLAGS@ LEX = @LEX@ LEXLIB = @LEXLIB@ LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ LFLAGS = @LFLAGS@ LIBBONOBO_CFLAGS = @LIBBONOBO_CFLAGS@ LIBBONOBO_LIBS = @LIBBONOBO_LIBS@ LIBBONOBO_LT_VERSION_INFO = @LIBBONOBO_LT_VERSION_INFO@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIPO = @LIPO@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ NM = @NM@ NMEDIT = @NMEDIT@ OBJDUMP = @OBJDUMP@ OBJEXT = @OBJEXT@ ORBIT_IDL = @ORBIT_IDL@ OTOOL = @OTOOL@ OTOOL64 = @OTOOL64@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PERL_PATH = @PERL_PATH@ PKG_CONFIG = @PKG_CONFIG@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ PS_PATH = @PS_PATH@ RANLIB = @RANLIB@ SEARCHPATHSEP = @SEARCHPATHSEP@ SED = @SED@ SERVER_CFLAGS = @SERVER_CFLAGS@ SERVER_LIBS = @SERVER_LIBS@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SOPREFIX = @SOPREFIX@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ WARN_CFLAGS = @WARN_CFLAGS@ XGETTEXT = @XGETTEXT@ YACC = @YACC@ YFLAGS = @YFLAGS@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ 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@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ lt_ECHO = @lt_ECHO@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ 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 = ${wildcard *.output} 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) --foreign tests/models/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --foreign tests/models/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: $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install 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: libbonobo-2.32.1/tests/models/runtest-output-test-properties-client.output0000644000076400007640000000101011173072711024061 00000000000000float-test [float] 2.718282 0.135790 ReadWrite double-test [double] 3.141593 372203301159032830782740174981780439288744435512765301597973768646025100746739828842434739670730546486425577197632168561890592985669003152469407197626938977104755911755110466147887402844632669642129411140815095967618311892500480.000000 ReadWrite int-test [long] 987654321 1634231145 ReadWrite boolean-test [boolean] True True ReadWrite string-test [string] Hello world a default string ReadWrite long-test [long] 123456789 134793760 ReadWrite libbonobo-2.32.1/tests/test-main-loop.c0000644000076400007640000000117011173072711014652 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ #include #include #include #include static gboolean timeout (gpointer data) { printf ("timeout\n"); bonobo_main_quit (); return FALSE; } static gboolean run_tests (gpointer data) { printf ("main loop level = %u\n", bonobo_main_level ()); g_timeout_add (1000, timeout, NULL); return FALSE; } int main (int argc, char **argv) { g_thread_init (NULL); if (!bonobo_init (&argc, argv)) g_error ("Cannot init bonobo"); g_idle_add (run_tests, NULL); bonobo_main (); return bonobo_debug_shutdown (); } libbonobo-2.32.1/tests/test-uniqapp.c0000644000076400007640000001221211173072711014433 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ #include #include #include #include "bonobo/bonobo-marshal.h" #define TEST_MESSAGE "test-message" #define CLOSURE_MESSAGE "closure-message" static gboolean quit_after_timeout (gpointer data) { bonobo_main_quit (); return FALSE; } static GValue * message_quit_cb (BonoboAppClient *app_client, const gchar *message, GValueArray *args) { g_timeout_add (1000, quit_after_timeout, NULL); return NULL; } static GValue * message_cb (BonoboAppClient *app_client, const gchar *message, GValueArray *args) { GValue *retval; g_return_val_if_fail (strcmp (message, TEST_MESSAGE) == 0, NULL); g_return_val_if_fail (args->n_values == 2, NULL); g_return_val_if_fail (G_VALUE_HOLDS_DOUBLE (&args->values[0]), NULL); g_return_val_if_fail (G_VALUE_HOLDS_STRING (&args->values[1]), NULL); g_message ("message_cb: %s(%f, \"%s\")", message, g_value_get_double (&args->values[0]), g_value_get_string (&args->values[1])); retval = g_new0 (GValue, 1); g_value_init (retval, G_TYPE_DOUBLE); g_value_set_double (retval, 2 * g_value_get_double (&args->values[0])); return retval; } static void test_app_hook (BonoboApplication *app, gpointer data) { g_message ("App '%s' created; data == %p", app->name, data); } static gint new_instance_cb (BonoboApplication *app, gint argc, char *argv[]) { int i; g_message ("new-instance received. argc = %i; argv follows:", argc); for (i = 0; i < argc; ++i) g_message ("argv[%i] = \"%s\"", i, argv[i]); g_message ("new-instance: returning argc (%i)", argc); return argc; } static gdouble closure_message_cb (BonoboApplication *app, gint arg_1, gdouble arg_2, gpointer data2) { g_message("closure_message_cb: %p, %i, %f, %p", app, arg_1, arg_2, data2); return arg_1 * arg_2; } int main (int argc, char *argv []) { BonoboApplication *app; gchar *serverinfo; Bonobo_RegistrationResult reg_res; BonoboAppClient *client; double msg_arg = 3.141592654; GClosure *closure; gchar const *envp[] = { "LANG", NULL }; if (bonobo_init (&argc, argv) == FALSE) g_error ("Can not bonobo_init"); bonobo_activate (); bonobo_application_add_hook (test_app_hook, (gpointer) 0xdeadbeef); app = bonobo_application_new ("Libbonobo-Test-Uniqapp"); closure = g_cclosure_new (G_CALLBACK (closure_message_cb), (gpointer) 0xdeadbeef, NULL); g_closure_set_marshal (closure, bonobo_marshal_DOUBLE__LONG_DOUBLE); bonobo_application_register_message (app, CLOSURE_MESSAGE, "This is a test message", closure, G_TYPE_DOUBLE, G_TYPE_LONG, G_TYPE_DOUBLE, G_TYPE_NONE); serverinfo = bonobo_application_create_serverinfo (app, envp); reg_res = bonobo_application_register_unique (app, serverinfo, &client); g_free (serverinfo); switch (reg_res) { case Bonobo_ACTIVATION_REG_ALREADY_ACTIVE: { BonoboAppClientMsgDesc const *msgdescs; GValue *retval; int i; g_message ("I am an application client."); bonobo_object_unref (BONOBO_OBJECT (app)); app = NULL; msgdescs = bonobo_app_client_msg_list (client); g_assert (msgdescs); for (i = 0; msgdescs[i].name; ++i) g_message ("Application supports message '%s'", msgdescs[i].name); g_message ("Sending message string '%s' with argument %f", TEST_MESSAGE, msg_arg); retval = bonobo_app_client_msg_send (client, TEST_MESSAGE, NULL, G_TYPE_DOUBLE, msg_arg, G_TYPE_STRING, "this is a string", G_TYPE_NONE); g_message ("Return value: %f", g_value_get_double (retval)); if (retval) { g_value_unset (retval); g_free (retval); } g_message ("Sending message string '%s' with arguments %i and %f", CLOSURE_MESSAGE, 10, 3.141592654); retval = bonobo_app_client_msg_send (client, CLOSURE_MESSAGE, NULL, G_TYPE_LONG, 10, G_TYPE_DOUBLE, 3.141592654, G_TYPE_NONE); g_message ("Return value: %f", g_value_get_double (retval)); if (retval) { g_value_unset (retval); g_free (retval); } g_message ("Sending new-instance, with argc/argv"); i = bonobo_app_client_new_instance (client, argc, argv, NULL); g_message ("new-instance returned %i", i); g_message ("Asking the server to quit"); retval = bonobo_app_client_msg_send (client, "quit", NULL, G_TYPE_NONE); if (retval) { g_value_unset (retval); g_free (retval); } g_object_unref (client); return bonobo_debug_shutdown (); } case Bonobo_ACTIVATION_REG_SUCCESS: g_message ("I am an application server"); g_signal_connect (app, "message::test-message", G_CALLBACK (message_cb), NULL); g_signal_connect (app, "new-instance", G_CALLBACK (new_instance_cb), NULL); bonobo_application_new_instance (app, argc, argv); g_signal_connect (app, "message::quit", G_CALLBACK (message_quit_cb), NULL); break; case Bonobo_ACTIVATION_REG_ERROR: default: g_error("bonobo activation error when registering unique application"); } bonobo_main (); if (app) bonobo_object_unref (BONOBO_OBJECT (app)); return bonobo_debug_shutdown (); } libbonobo-2.32.1/tests/test-thread.c0000644000076400007640000000622111173072711014230 00000000000000#include #include #include #include #include #define NUM_THREADS 8 #define NUM_GETS 8 #define PROP_IN_MAIN 1 #define PROP_NON_MAIN 2 static GThread *main_thread = NULL; static void get_fn (BonoboPropertyBag *bag, BonoboArg *arg, guint arg_id, CORBA_Environment *ev, gpointer user_data) { fprintf (stderr, "Check property %u\n", arg_id); if (arg_id == PROP_IN_MAIN) g_assert (g_thread_self () == main_thread); else g_assert (g_thread_self () != main_thread); BONOBO_ARG_SET_BOOLEAN (arg, TRUE); } typedef struct { const char *prop; gboolean value; Bonobo_PropertyBag pb; } TestClosure; static void test_prop (TestClosure *tc, CORBA_Environment *ev) { g_assert (bonobo_pbclient_get_boolean (tc->pb, tc->prop, ev) == tc->value); g_assert (!BONOBO_EX (ev)); } static long running_threads; G_LOCK_DEFINE_STATIC (running_threads); static gpointer test_thread (gpointer data) { int i; CORBA_Environment ev[1]; TestClosure *tc = data; CORBA_exception_init (ev); for (i = 0; i < NUM_GETS; i++) test_prop (tc, ev); G_LOCK (running_threads); running_threads--; G_UNLOCK (running_threads); CORBA_exception_free (ev); return data; } static gboolean wakeup_fn (gpointer data) { return TRUE; } static void test_threads (TestClosure *tc) { int i; guint wakeup; GThread *threads [NUM_THREADS]; running_threads = NUM_THREADS; for (i = 0; i < NUM_THREADS; i++) threads [i] = g_thread_create (test_thread, tc, TRUE, NULL); wakeup = g_timeout_add (100, wakeup_fn, NULL); while (1) { G_LOCK (running_threads); if (running_threads == 0) { G_UNLOCK (running_threads); break; } G_UNLOCK (running_threads); g_main_context_iteration (NULL, TRUE); } g_source_remove (wakeup); for (i = 0; i < NUM_THREADS; i++) { if (!(g_thread_join (threads [i]) == tc)) g_error ("Wierd thread join problem '%d'", i); } } int main (int argc, char *argv []) { CORBA_Environment ev[1]; BonoboPropertyBag *pb; PortableServer_POA poa; TestClosure tc; free (malloc (8)); CORBA_exception_init (ev); if (bonobo_init (&argc, argv) == FALSE) g_error ("Can not bonobo_init"); bonobo_activate (); main_thread = g_thread_self (); { poa = bonobo_poa_get_threaded (ORBIT_THREAD_HINT_PER_REQUEST); pb = g_object_new (BONOBO_TYPE_PROPERTY_BAG, "poa", poa, NULL); bonobo_property_bag_construct (pb, g_cclosure_new (G_CALLBACK (get_fn), NULL, NULL), NULL, bonobo_event_source_new ()); bonobo_property_bag_add (pb, "non_main", PROP_NON_MAIN, TC_CORBA_boolean, NULL, "non_main", BONOBO_PROPERTY_READABLE); tc.prop = "non_main"; tc.value = TRUE; tc.pb = BONOBO_OBJREF (pb); test_threads (&tc); bonobo_object_unref (pb); } { pb = bonobo_property_bag_new (get_fn, NULL, NULL); bonobo_property_bag_add (pb, "in_main", PROP_IN_MAIN, TC_CORBA_boolean, NULL, "in_main", BONOBO_PROPERTY_READABLE); tc.prop = "in_main"; tc.value = TRUE; tc.pb = BONOBO_OBJREF (pb); test_prop (&tc, ev); test_threads (&tc); bonobo_object_unref (pb); } CORBA_exception_free (ev); return bonobo_debug_shutdown (); } libbonobo-2.32.1/tests/test-event-source.c0000644000076400007640000000431511173072711015402 00000000000000#include #include #include #include static int idle_id, em_count, ev_count; #define CHECK_RESULT(ev, evc, emc) {g_assert (!BONOBO_EX (ev)); g_assert (evc == ev_count); g_assert (emc == em_count);} static void event_cb (BonoboListener *listener, const char *event_name, const CORBA_any *any, CORBA_Environment *ev, gpointer user_data) { if (!strcmp (event_name, user_data)) em_count++; ev_count++; printf ("Got Event %s %s %d %d\n", event_name, (char *)user_data, ev_count, em_count); } static void run_tests (void) { BonoboEventSource *es; CORBA_Environment ev; CORBA_any *value; char *mask; CORBA_exception_init (&ev); g_source_remove (idle_id); value = bonobo_arg_new (BONOBO_ARG_LONG); es = bonobo_event_source_new (); g_assert (es != NULL); mask = "a/test"; bonobo_event_source_client_add_listener (BONOBO_OBJREF (es), event_cb, mask, &ev, mask); mask = "=a/test"; bonobo_event_source_client_add_listener (BONOBO_OBJREF (es), event_cb, mask, &ev, mask); bonobo_event_source_notify_listeners (es, "a/test", value, &ev); CHECK_RESULT (&ev, 2, 1); bonobo_event_source_notify_listeners (es, "a/test/xyz", value, &ev); CHECK_RESULT (&ev, 3, 1); bonobo_event_source_notify_listeners (es, "a/tes", value, &ev); CHECK_RESULT (&ev, 3, 1); bonobo_event_source_notify_listeners (es, "test", value, &ev); CHECK_RESULT (&ev, 3, 1); bonobo_event_source_notify_listeners (es, "a/test", value, &ev); CHECK_RESULT (&ev, 5, 2); bonobo_event_source_notify_listeners (es, "a/test:", value, &ev); CHECK_RESULT (&ev, 6, 2); bonobo_event_source_notify_listeners (es, "a/test:xyz", value, &ev); CHECK_RESULT (&ev, 7, 2); bonobo_event_source_notify_listeners (es, "a/", value, &ev); CHECK_RESULT (&ev, 7, 2); bonobo_event_source_notify_listeners (es, "a/test1:xyz", value, &ev); CHECK_RESULT (&ev, 8, 2); bonobo_object_unref (BONOBO_OBJECT (es)); bonobo_main_quit (); } int main (int argc, char **argv) { g_thread_init (NULL); if (!bonobo_init (&argc, argv)) g_error ("Cannot init bonobo"); idle_id = g_idle_add ((GSourceFunc) run_tests, NULL); bonobo_main (); return bonobo_debug_shutdown (); } libbonobo-2.32.1/tests/README0000644000076400007640000000004211173072711012513 00000000000000 Nothing to see here, move along. libbonobo-2.32.1/tests/generic-factory.c0000644000076400007640000000177411173072711015075 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ #include #include #include #include static void destroy_cb (BonoboObject *obj, gpointer data) { printf ("instance #%i destroyed\n", GPOINTER_TO_INT (data)); } static BonoboObject * generic_factory_cb (BonoboGenericFactory *this, const char *object_id, void *data) { BonoboObject *object = NULL; g_return_val_if_fail (object_id != NULL, NULL); if (!strcmp (object_id, "OAFIID:Test_Generic_Factory")) { static int counter = 1; int instance = counter++; printf("new instance: #%i\n", instance); object = (BonoboObject *) bonobo_event_source_new (); g_signal_connect (object, "destroy", G_CALLBACK (destroy_cb), GINT_TO_POINTER (instance)); } else g_warning ("Unknown OAFIID '%s'", object_id); return object; } BONOBO_ACTIVATION_FACTORY("OAFIID:Test_Generic_FactoryFactory", "a test", "0", generic_factory_cb, NULL) libbonobo-2.32.1/tests/test-properties.sh0000755000076400007640000000024711173072711015352 00000000000000#! /bin/sh rm iorfile ./test-properties-server & until test -s iorfile; do sleep 0; done if ./test-properties-client; then rm iorfile else rm iorfile exit 1 fi libbonobo-2.32.1/tests/Makefile.in0000664000076400007640000007736311546333030013724 00000000000000# Makefile.in generated by automake 1.11.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008, 2009 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@ VPATH = @srcdir@ 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@ check_PROGRAMS = test-thread$(EXEEXT) test-moniker$(EXEEXT) \ test-properties-server$(EXEEXT) \ test-properties-client$(EXEEXT) test-event-source$(EXEEXT) \ test-object$(EXEEXT) test-stream-mem$(EXEEXT) \ test-storage-mem$(EXEEXT) test-main-loop$(EXEEXT) \ generic-factory$(EXEEXT) test-uniqapp$(EXEEXT) subdir = tests DIST_COMMON = README $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.in 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 = generic_factory_SOURCES = generic-factory.c generic_factory_OBJECTS = generic-factory.$(OBJEXT) generic_factory_LDADD = $(LDADD) am__DEPENDENCIES_1 = generic_factory_DEPENDENCIES = $(top_builddir)/bonobo/libbonobo-2.la \ $(am__DEPENDENCIES_1) AM_V_lt = $(am__v_lt_$(V)) am__v_lt_ = $(am__v_lt_$(AM_DEFAULT_VERBOSITY)) am__v_lt_0 = --silent am_test_event_source_OBJECTS = test-event-source.$(OBJEXT) test_event_source_OBJECTS = $(am_test_event_source_OBJECTS) test_event_source_LDADD = $(LDADD) test_event_source_DEPENDENCIES = \ $(top_builddir)/bonobo/libbonobo-2.la $(am__DEPENDENCIES_1) am_test_main_loop_OBJECTS = test-main-loop.$(OBJEXT) test_main_loop_OBJECTS = $(am_test_main_loop_OBJECTS) test_main_loop_LDADD = $(LDADD) test_main_loop_DEPENDENCIES = $(top_builddir)/bonobo/libbonobo-2.la \ $(am__DEPENDENCIES_1) am_test_moniker_OBJECTS = test-moniker.$(OBJEXT) test_moniker_OBJECTS = $(am_test_moniker_OBJECTS) test_moniker_LDADD = $(LDADD) test_moniker_DEPENDENCIES = $(top_builddir)/bonobo/libbonobo-2.la \ $(am__DEPENDENCIES_1) am_test_object_OBJECTS = test-object.$(OBJEXT) test_object_OBJECTS = $(am_test_object_OBJECTS) test_object_LDADD = $(LDADD) test_object_DEPENDENCIES = $(top_builddir)/bonobo/libbonobo-2.la \ $(am__DEPENDENCIES_1) am_test_properties_client_OBJECTS = test-properties-client.$(OBJEXT) test_properties_client_OBJECTS = $(am_test_properties_client_OBJECTS) test_properties_client_LDADD = $(LDADD) test_properties_client_DEPENDENCIES = \ $(top_builddir)/bonobo/libbonobo-2.la $(am__DEPENDENCIES_1) am_test_properties_server_OBJECTS = test-properties-server.$(OBJEXT) test_properties_server_OBJECTS = $(am_test_properties_server_OBJECTS) test_properties_server_LDADD = $(LDADD) test_properties_server_DEPENDENCIES = \ $(top_builddir)/bonobo/libbonobo-2.la $(am__DEPENDENCIES_1) am_test_storage_mem_OBJECTS = test-storage-mem.$(OBJEXT) test_storage_mem_OBJECTS = $(am_test_storage_mem_OBJECTS) test_storage_mem_LDADD = $(LDADD) test_storage_mem_DEPENDENCIES = $(top_builddir)/bonobo/libbonobo-2.la \ $(am__DEPENDENCIES_1) am_test_stream_mem_OBJECTS = test-stream-mem.$(OBJEXT) test_stream_mem_OBJECTS = $(am_test_stream_mem_OBJECTS) test_stream_mem_LDADD = $(LDADD) test_stream_mem_DEPENDENCIES = $(top_builddir)/bonobo/libbonobo-2.la \ $(am__DEPENDENCIES_1) am_test_thread_OBJECTS = test-thread.$(OBJEXT) test_thread_OBJECTS = $(am_test_thread_OBJECTS) test_thread_LDADD = $(LDADD) test_thread_DEPENDENCIES = $(top_builddir)/bonobo/libbonobo-2.la \ $(am__DEPENDENCIES_1) am_test_uniqapp_OBJECTS = test-uniqapp.$(OBJEXT) test_uniqapp_OBJECTS = $(am_test_uniqapp_OBJECTS) test_uniqapp_LDADD = $(LDADD) test_uniqapp_DEPENDENCIES = $(top_builddir)/bonobo/libbonobo-2.la \ $(am__DEPENDENCIES_1) 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_$(V)) am__v_CC_ = $(am__v_CC_$(AM_DEFAULT_VERBOSITY)) am__v_CC_0 = @echo " CC " $@; AM_V_at = $(am__v_at_$(V)) am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) 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_$(V)) am__v_CCLD_ = $(am__v_CCLD_$(AM_DEFAULT_VERBOSITY)) am__v_CCLD_0 = @echo " CCLD " $@; AM_V_GEN = $(am__v_GEN_$(V)) am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) am__v_GEN_0 = @echo " GEN " $@; SOURCES = generic-factory.c $(test_event_source_SOURCES) \ $(test_main_loop_SOURCES) $(test_moniker_SOURCES) \ $(test_object_SOURCES) $(test_properties_client_SOURCES) \ $(test_properties_server_SOURCES) $(test_storage_mem_SOURCES) \ $(test_stream_mem_SOURCES) $(test_thread_SOURCES) \ $(test_uniqapp_SOURCES) DIST_SOURCES = generic-factory.c $(test_event_source_SOURCES) \ $(test_main_loop_SOURCES) $(test_moniker_SOURCES) \ $(test_object_SOURCES) $(test_properties_client_SOURCES) \ $(test_properties_server_SOURCES) $(test_storage_mem_SOURCES) \ $(test_stream_mem_SOURCES) $(test_thread_SOURCES) \ $(test_uniqapp_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 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 am__tty_colors = \ red=; grn=; lgn=; blu=; std= 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@ ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ AR = @AR@ AS = @AS@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ BONOBO_ACTIVATION_LT_VERSION_INFO = @BONOBO_ACTIVATION_LT_VERSION_INFO@ BONOBO_MAJOR_VERSION = @BONOBO_MAJOR_VERSION@ BONOBO_MICRO_VERSION = @BONOBO_MICRO_VERSION@ BONOBO_MINOR_VERSION = @BONOBO_MINOR_VERSION@ BONOBO_SLAY = @BONOBO_SLAY@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DISABLE_DEPRECATED_CFLAGS = @DISABLE_DEPRECATED_CFLAGS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GREP = @GREP@ GTHREAD_CFLAGS = @GTHREAD_CFLAGS@ GTHREAD_LIBS = @GTHREAD_LIBS@ GTKDOC_CHECK = @GTKDOC_CHECK@ GTKDOC_MKPDF = @GTKDOC_MKPDF@ GTKDOC_REBASE = @GTKDOC_REBASE@ HTML_DIR = @HTML_DIR@ IF_BSD_PS = @IF_BSD_PS@ IF_CYGWIN_PS = @IF_CYGWIN_PS@ IF_POSIX_PS = @IF_POSIX_PS@ 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@ LD = @LD@ LDFLAGS = @LDFLAGS@ LEX = @LEX@ LEXLIB = @LEXLIB@ LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ LFLAGS = @LFLAGS@ LIBBONOBO_CFLAGS = @LIBBONOBO_CFLAGS@ LIBBONOBO_LIBS = @LIBBONOBO_LIBS@ LIBBONOBO_LT_VERSION_INFO = @LIBBONOBO_LT_VERSION_INFO@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIPO = @LIPO@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ NM = @NM@ NMEDIT = @NMEDIT@ OBJDUMP = @OBJDUMP@ OBJEXT = @OBJEXT@ ORBIT_IDL = @ORBIT_IDL@ OTOOL = @OTOOL@ OTOOL64 = @OTOOL64@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PERL_PATH = @PERL_PATH@ PKG_CONFIG = @PKG_CONFIG@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ PS_PATH = @PS_PATH@ RANLIB = @RANLIB@ SEARCHPATHSEP = @SEARCHPATHSEP@ SED = @SED@ SERVER_CFLAGS = @SERVER_CFLAGS@ SERVER_LIBS = @SERVER_LIBS@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SOPREFIX = @SOPREFIX@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ WARN_CFLAGS = @WARN_CFLAGS@ XGETTEXT = @XGETTEXT@ YACC = @YACC@ YFLAGS = @YFLAGS@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ 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@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ lt_ECHO = @lt_ECHO@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ 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 = test-activation models #check_PROGRAMS += \ # test-generic-factory INCLUDES = \ -DGNOMELOCALEDIR=\""$(datadir)/locale"\" \ -I$(top_srcdir) \ $(WARN_CFLAGS) \ $(LIBBONOBO_CFLAGS) \ $(DISABLE_DEPRECATED_CFLAGS) LDADD = $(top_builddir)/bonobo/libbonobo-2.la $(LIBBONOBO_LIBS) test_properties_server_SOURCES = \ test-properties-server.c test_properties_client_SOURCES = \ test-properties-client.c test_thread_SOURCES = test-thread.c test_moniker_SOURCES = test-moniker.c test_object_SOURCES = test-object.c test_event_source_SOURCES = test-event-source.c test_stream_mem_SOURCES = test-stream-mem.c test_storage_mem_SOURCES = test-storage-mem.c test_uniqapp_SOURCES = test-uniqapp.c test_main_loop_SOURCES = test-main-loop.c TESTS_ENVIRONMENT = \ LD_LIBRARY_PATH="$(top_builddir)/bonobo/.libs:$$LD_LIBRARY_PATH" \ PATH="$(top_builddir)/bonobo/.libs:$$PATH" \ BONOBO_PLUGIN_PATH="$(top_builddir)/storage-modules/.libs:$$BONOBO_PLUGIN_PATH"\ BONOBO_ACTIVATION_PATH="$(srcdir)$(SEARCHPATHSEP)$$BONOBO_ACTIVATION_PATH"\ MODELS_DIR="$(srcdir)/models" TESTS = test-moniker$(EXEEXT) test-event-source$(EXEEXT) test-object$(EXEEXT) \ test-stream-mem$(EXEEXT) $(srcdir)/test-properties.sh test-storage-mem$(EXEEXT) \ test-main-loop$(EXEEXT) # TESTS += test-generic-factory.sh check_SCRIPTS = test-properties.sh test-generic-factory.sh EXTRA_DIST = $(check_SCRIPTS) Test_Generic_Factory.server test-generic-factory.sh all: all-recursive .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) --foreign tests/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --foreign tests/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-checkPROGRAMS: @list='$(check_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 generic-factory$(EXEEXT): $(generic_factory_OBJECTS) $(generic_factory_DEPENDENCIES) @rm -f generic-factory$(EXEEXT) $(AM_V_CCLD)$(LINK) $(generic_factory_OBJECTS) $(generic_factory_LDADD) $(LIBS) test-event-source$(EXEEXT): $(test_event_source_OBJECTS) $(test_event_source_DEPENDENCIES) @rm -f test-event-source$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_event_source_OBJECTS) $(test_event_source_LDADD) $(LIBS) test-main-loop$(EXEEXT): $(test_main_loop_OBJECTS) $(test_main_loop_DEPENDENCIES) @rm -f test-main-loop$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_main_loop_OBJECTS) $(test_main_loop_LDADD) $(LIBS) test-moniker$(EXEEXT): $(test_moniker_OBJECTS) $(test_moniker_DEPENDENCIES) @rm -f test-moniker$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_moniker_OBJECTS) $(test_moniker_LDADD) $(LIBS) test-object$(EXEEXT): $(test_object_OBJECTS) $(test_object_DEPENDENCIES) @rm -f test-object$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_object_OBJECTS) $(test_object_LDADD) $(LIBS) test-properties-client$(EXEEXT): $(test_properties_client_OBJECTS) $(test_properties_client_DEPENDENCIES) @rm -f test-properties-client$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_properties_client_OBJECTS) $(test_properties_client_LDADD) $(LIBS) test-properties-server$(EXEEXT): $(test_properties_server_OBJECTS) $(test_properties_server_DEPENDENCIES) @rm -f test-properties-server$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_properties_server_OBJECTS) $(test_properties_server_LDADD) $(LIBS) test-storage-mem$(EXEEXT): $(test_storage_mem_OBJECTS) $(test_storage_mem_DEPENDENCIES) @rm -f test-storage-mem$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_storage_mem_OBJECTS) $(test_storage_mem_LDADD) $(LIBS) test-stream-mem$(EXEEXT): $(test_stream_mem_OBJECTS) $(test_stream_mem_DEPENDENCIES) @rm -f test-stream-mem$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_stream_mem_OBJECTS) $(test_stream_mem_LDADD) $(LIBS) test-thread$(EXEEXT): $(test_thread_OBJECTS) $(test_thread_DEPENDENCIES) @rm -f test-thread$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_thread_OBJECTS) $(test_thread_LDADD) $(LIBS) test-uniqapp$(EXEEXT): $(test_uniqapp_OBJECTS) $(test_uniqapp_DEPENDENCIES) @rm -f test-uniqapp$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_uniqapp_OBJECTS) $(test_uniqapp_LDADD) $(LIBS) mostlyclean-compile: -rm -f *.$(OBJEXT) distclean-compile: -rm -f *.tab.c @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/generic-factory.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-event-source.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-main-loop.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-moniker.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-object.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-properties-client.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-properties-server.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-storage-mem.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-stream-mem.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-thread.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-uniqapp.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 @am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(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 @am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(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 @am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $< 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 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 \ echo "$$grn$$dashes"; \ else \ echo "$$red$$dashes"; \ fi; \ echo "$$banner"; \ test -z "$$skipped" || echo "$$skipped"; \ test -z "$$report" || echo "$$report"; \ echo "$$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 @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ test -d "$(distdir)/$$subdir" \ || $(MKDIR_P) "$(distdir)/$$subdir" \ || exit 1; \ fi; \ done @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ 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 $(MAKE) $(AM_MAKEFLAGS) $(check_PROGRAMS) $(check_SCRIPTS) $(MAKE) $(AM_MAKEFLAGS) check-TESTS 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: $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install 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-checkPROGRAMS clean-generic clean-libtool \ mostlyclean-am distclean: distclean-recursive -rm -rf ./$(DEPDIR) -rm -f Makefile distclean-am: clean-am distclean-compile 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 -rf ./$(DEPDIR) -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-recursive mostlyclean-am: mostlyclean-compile mostlyclean-generic \ mostlyclean-libtool pdf: pdf-recursive pdf-am: ps: ps-recursive ps-am: uninstall-am: .MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) check-am \ ctags-recursive install-am install-strip tags-recursive .PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \ all all-am check check-TESTS check-am clean \ clean-checkPROGRAMS clean-generic clean-libtool ctags \ ctags-recursive 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-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-compile \ 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: libbonobo-2.32.1/tests/test-properties-client.c0000644000076400007640000001170511173072711016434 00000000000000#include #include #include static Bonobo_PropertyBag pb; static CORBA_Environment ev; static Bonobo_PropertyBag pb; static char * simple_print_type (CORBA_TypeCode tc) { static char s[1024]; switch (tc->kind) { case CORBA_tk_boolean: g_snprintf (s, sizeof (s), "boolean"); break; case CORBA_tk_short: g_snprintf (s, sizeof (s), "short"); break; case CORBA_tk_ushort: g_snprintf (s, sizeof (s), "ushort"); break; case CORBA_tk_long: g_snprintf (s, sizeof (s), "long"); break; case CORBA_tk_ulong: g_snprintf (s, sizeof (s), "ulong"); break; case CORBA_tk_float: g_snprintf (s, sizeof (s), "float"); break; case CORBA_tk_double: g_snprintf (s, sizeof (s), "double"); break; case CORBA_tk_string: g_snprintf (s, sizeof (s), "string"); break; default: g_snprintf (s, sizeof (s), "Unknown"); break; } return s; } static char * simple_print_value (char *name, CORBA_TypeCode tc) { static char s[1024]; switch (tc->kind) { case CORBA_tk_boolean: g_snprintf (s, sizeof (s), "%s", bonobo_pbclient_get_boolean (pb, name, NULL) ? "True" : "False"); break; case CORBA_tk_long: g_snprintf (s, sizeof (s), "%d", bonobo_pbclient_get_long (pb, name, NULL)); break; case CORBA_tk_float: g_snprintf (s, sizeof (s), "%f", bonobo_pbclient_get_float (pb, name, NULL)); break; case CORBA_tk_double: g_snprintf (s, sizeof (s), "%f", bonobo_pbclient_get_double (pb, name, NULL)); break; case CORBA_tk_string: g_snprintf (s, sizeof (s), "%s", bonobo_pbclient_get_string (pb, name, NULL)); break; default: g_snprintf (s, sizeof (s), "Unknown"); break; } return s; } static char * simple_print_default_value (char *name, CORBA_TypeCode tc) { static char s[1024]; switch (tc->kind) { case CORBA_tk_boolean: g_snprintf (s, sizeof (s), "%s", bonobo_pbclient_get_default_boolean (pb, name, NULL) ? "True" : "False"); break; case CORBA_tk_long: g_snprintf (s, sizeof (s), "%d", bonobo_pbclient_get_default_long (pb, name, NULL)); break; case CORBA_tk_float: g_snprintf (s, sizeof (s), "%f", bonobo_pbclient_get_default_float (pb, name, NULL)); break; case CORBA_tk_double: g_snprintf (s, sizeof (s), "%f", bonobo_pbclient_get_default_double (pb, name, NULL)); break; case CORBA_tk_string: g_snprintf (s, sizeof (s), "%s", bonobo_pbclient_get_default_string (pb, name, NULL)); break; default: g_snprintf (s, sizeof (s), "Unknown"); break; } return s; } static char * simple_print_read_only (char *name) { Bonobo_PropertyFlags flags; flags = bonobo_pbclient_get_flags (pb, name, NULL); return (flags & Bonobo_PROPERTY_READABLE) ? "ReadOnly" : "ReadWrite"; } static void print_props (void) { GList *props; GList *l; props = bonobo_pbclient_get_keys (pb, NULL); for (l = props; l != NULL; l = l->next) { CORBA_TypeCode tc; char *name = l->data; tc = bonobo_pbclient_get_type (pb, name, NULL); g_print ("%s [%s] %s %s %s\n", name, simple_print_type (tc), simple_print_value (name, tc), simple_print_default_value (name, tc), simple_print_read_only (name)); CORBA_Object_release ((CORBA_Object) tc, NULL); } bonobo_pbclient_free_keys (props); } static guint create_bag_client (void) { print_props (); bonobo_pbclient_set_boolean (pb, "boolean-test", FALSE, NULL); bonobo_pbclient_set_long (pb, "long-test", 3, NULL); bonobo_pbclient_set_float (pb, "float-test", 0.00001, NULL); bonobo_pbclient_set_double (pb, "double-test", 2.0001, NULL); bonobo_pbclient_set_string (pb, "string-test", "life is a wonderful gift", NULL); bonobo_pbclient_set ( pb, NULL, "boolean-test", TC_CORBA_boolean, FALSE, "long-test", TC_CORBA_long, 3, "float-test", TC_CORBA_float, 0.00001, "double-test", TC_CORBA_double, 2.0001, "string-test", TC_CORBA_string, "you are a precious flower", NULL); { CORBA_any a; CORBA_boolean b = TRUE; a._type = TC_CORBA_boolean; a._value = &b; bonobo_pbclient_set_value_async (pb, "boolean-test", &a, NULL); } bonobo_main_quit (); return FALSE; } int main (int argc, char **argv) { CORBA_ORB orb; CORBA_exception_init (&ev); g_thread_init (NULL); if (!bonobo_init (&argc, argv)) g_error ("Could not initialize Bonobo"); orb = bonobo_orb (); { int size; char ior [1024]; FILE *infile = fopen ("iorfile","rb"); if (!infile) g_error ("Start the server before running the client"); size = fread (ior,1,1024,infile); fclose (infile); ior [size] = '\0'; /* insure that string is terminated correctly */ pb = CORBA_ORB_string_to_object (orb, ior, &ev); g_assert (ev._major == CORBA_NO_EXCEPTION); } if (pb == CORBA_OBJECT_NIL || CORBA_Object_non_existent (pb, &ev)) { g_error ("Could not bind to PropertyBag object"); return 1; } g_idle_add ((GSourceFunc) create_bag_client, NULL); bonobo_main (); bonobo_object_release_unref (pb, NULL); return bonobo_debug_shutdown (); } libbonobo-2.32.1/tests/test-activation/0000775000076400007640000000000011546334244015045 500000000000000libbonobo-2.32.1/tests/test-activation/plugin.idl0000644000076400007640000000005611173072711016746 00000000000000 interface Plugin { void doPluginTest (); }; libbonobo-2.32.1/tests/test-activation/broken.server0000644000076400007640000000307311173072711017470 00000000000000 libbonobo-2.32.1/tests/test-activation/empty.idl0000644000076400007640000000017011173072711016603 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ interface Empty { void doNothing (); }; libbonobo-2.32.1/tests/test-activation/Makefile.am0000664000076400007640000000460111433015514017011 00000000000000check_PROGRAMS= \ bonobo-activation-test \ bonobo-activation-test-async \ bonobo-activation-env-test \ bonobo-activation-empty-server noinst_LTLIBRARIES=libtest-plugin.la bin_PROGRAMS=bonobo-activation-run-query bonobo_activation_test_async_SOURCES= \ bonobo-activation-test-async.c bonobo_activation_test_SOURCES= \ bonobo-activation-test.c \ empty-common.c \ empty.h \ empty-stubs.c bonobo_activation_test_LDADD=libtest-plugin.la ../../bonobo/libbonobo-2.la bonobo_activation_env_test_LDADD=../../bonobo/libbonobo-2.la # Horrible, digusting and atrocious hack to # get libtool to build a noinst shared lib. libtest_plugin_la_LDFLAGS= \ -rpath $(shell (cd $(top_builddir);pwd))/test/.libs \ -module -avoid-version -no-undefined libtest_plugin_la_LIBADD= \ ../../bonobo-activation/libbonobo-activation.la \ $(LIBBONOBO_LIBS) libtest_plugin_la_SOURCES= \ plugin.h \ plugin-common.c \ plugin-skels.c \ plugin-stubs.c \ bonobo-activation-testplugin.c bonobo_activation_run_query_SOURCES= \ bonobo-activation-run-query.c \ empty-common.c \ empty.h \ empty-stubs.c bonobo_activation_empty_server_SOURCES= \ empty-server.c \ empty.h \ empty-common.c \ empty-skels.c BUILT_SOURCES= \ empty.h \ empty-common.c \ empty-stubs.c \ empty-skels.c \ plugin.h \ plugin-stubs.c \ plugin-skels.c \ plugin-common.c empty.h empty-common.c empty-stubs.c empty-skels.c: empty_built plugin.h plugin-common.c plugin-stubs.c plugin-skels.c: plugin_built empty_built: empty.idl $(ORBIT_IDL) $(AM_V_GEN) $(ORBIT_IDL) $(srcdir)/empty.idl @touch empty_built plugin_built: plugin.idl $(ORBIT_IDL) $(AM_V_GEN) $(ORBIT_IDL) $(srcdir)/plugin.idl @touch plugin_built CLEANFILES=empty_built plugin_built $(BUILT_SOURCES) INCLUDES= \ -I$(top_srcdir) \ -I$(top_builddir) \ $(WARN_CFLAGS) \ $(DISABLE_DEPRECATED_CFLAGS) $(LIBBONOBO_CFLAGS) LDADD = ../../bonobo-activation/libbonobo-activation.la \ $(LIBBONOBO_LIBS) serverfiles=empty.server broken.server plugin.server noinst_DATA=$(serverfiles) EXTRA_DIST= test.sh empty.idl plugin.idl $(serverfiles) # TESTS= test.sh bonobo-activation-test-async TESTS= test.sh dist-hook: cd $(distdir); rm -f $(CLEANFILES) TESTS_ENVIRONMENT = \ BONOBO_ACTIVATION_DEBUG=1 \ BONOBO_ACTIVATION_PATH="$(srcdir)$(SEARCHPATHSEP)$(top_builddir)/activation-server$(SEARCHPATHSEP)$$BONOBO_ACTIVATION_PATH" libbonobo-2.32.1/tests/test-activation/test.sh0000755000076400007640000000232411261737303016277 00000000000000#!/bin/sh # This is a generic script for firing up a server, waiting for it to write # its stringified IOR to a file, then firing up a server [ -z "$USER" ] && USER=`id -un` ## Disable core dumps because bonobo-activation-empty-server is aborting with the error: ## "This process has not registered the required OAFIID your source ## code should register '%s'. If your code is performing delayed ## registration and this message is trapped in error, see ## bonobo_activation_i"... ## And the core file is making distcheck fail. ## TODO: Check why is bonobo-activation-empty-server aborting. ulimit -c 0 eval $(dbus-launch --sh-syntax) if test "z$ORBIT_TMPDIR" = "z"; then ORBIT_TMPDIR="/tmp/orbit-$USER/tst" rm -Rf $ORBIT_TMPDIR mkdir -p $ORBIT_TMPDIR fi TMPDIR=$ORBIT_TMPDIR; export TMPDIR; BONOBO_ACTIVATION_SERVER="../../activation-server/bonobo-activation-server"; BONOBO_ACTIVATION_DEBUG_OUTPUT="1"; PATH=".:./.libs:$PATH"; LD_LIBRARY_PATH="./.libs:$LD_LIBRARY_PATH"; export BONOBO_ACTIVATION_SERVER BONOBO_ACTIVATION_DEBUG_OUTPUT BONOBO_ACTIVATION_PATH PATH LD_LIBRARY_PATH if ./bonobo-activation-test; then kill -15 $DBUS_SESSION_BUS_PID exit 0; else kill -15 $DBUS_SESSION_BUS_PID exit 1; fi libbonobo-2.32.1/tests/test-activation/plugin.server0000644000076400007640000000033311173072711017502 00000000000000 libbonobo-2.32.1/tests/test-activation/empty-server.c0000644000076400007640000000646511173072711017576 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ #include #include #include #include #include #include #include "empty.h" Empty empty_client = CORBA_OBJECT_NIL; static void do_Nothing (PortableServer_Servant servant, CORBA_Environment * ev); PortableServer_ServantBase__epv base_epv = { NULL, NULL, NULL }; POA_Empty__epv empty_epv = { NULL, do_Nothing }; POA_Empty__vepv poa_empty_vepv = { &base_epv, &empty_epv }; POA_Empty poa_empty_servant = { NULL, &poa_empty_vepv }; static void do_exit (int arg) { exit (2); } int main (int argc, char *argv[]) { PortableServer_ObjectId *objid; PortableServer_POA poa; GOptionContext *ctx; GOptionGroup *goption_group; GError *error = NULL; GMainLoop *loop; CORBA_Environment ev; CORBA_ORB orb; GSList *reg_env = NULL; signal (SIGINT, do_exit); signal (SIGTERM, do_exit); g_thread_init (NULL); CORBA_exception_init (&ev); orb = bonobo_activation_init (argc, argv); g_set_prgname ("bonobo-activation-empty-server"); ctx = g_option_context_new (NULL); goption_group = bonobo_activation_get_goption_group (); g_option_context_set_main_group (ctx, goption_group); if (!g_option_context_parse (ctx, &argc, &argv, &error)) { g_printerr ("%s\n", error->message); g_error_free (error); exit (1); } g_option_context_free (ctx); POA_Empty__init (&poa_empty_servant, &ev); poa = (PortableServer_POA) CORBA_ORB_resolve_initial_references (orb, "RootPOA", &ev); objid = PortableServer_POA_activate_object (poa, &poa_empty_servant, &ev); empty_client = PortableServer_POA_servant_to_reference (poa, &poa_empty_servant, &ev); if (!empty_client) { printf ("Cannot get objref\n"); return 1; } #ifndef G_OS_WIN32 reg_env = bonobo_activation_registration_env_set ( reg_env, "DISPLAY", getenv ("DISPLAY")); reg_env = bonobo_activation_registration_env_set ( reg_env, "SESSION_MANAGER", getenv ("SESSION_MANAGER")); reg_env = bonobo_activation_registration_env_set ( reg_env, "AUDIODEV", getenv ("AUDIODEV")); #endif reg_env = bonobo_activation_registration_env_set ( reg_env, "LANG", getenv ("LANG")); /* * NB. It is imperative to register the server that is being * requested last - or we can still race in the activation daemon. */ bonobo_activation_register_active_server ("OAFIID:Empty2:19991025", empty_client, reg_env); g_usleep (500000); /* 1/2 sec */ bonobo_activation_register_active_server ("OAFIID:Empty:19991025", empty_client, reg_env); bonobo_activation_registration_env_free (reg_env); PortableServer_POAManager_activate (PortableServer_POA__get_the_POAManager (poa, &ev), &ev); /* run the CORBA main loop for a couple of seconds then quit */ loop = g_main_loop_new (NULL, FALSE); g_timeout_add (1000, (GSourceFunc) g_main_loop_quit, loop); g_main_loop_run (loop); bonobo_activation_active_server_unregister ("OAFIID:Empty:19991025", empty_client); bonobo_activation_active_server_unregister ("OAFIID:Empty2:19991025", empty_client); PortableServer_POA_deactivate_object (poa, objid, &ev); return 0; } static void do_Nothing (PortableServer_Servant servant, CORBA_Environment *ev) { g_print ("doNothing called!"); } libbonobo-2.32.1/tests/test-activation/bonobo-activation-run-query.c0000644000076400007640000000442411173072711022507 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ #include #include #include #include "empty.h" #include int main (int argc, char *argv[]) { Bonobo_ServerInfoList *result; CORBA_Environment ev; char *query; char **sort_criteria; int i; CORBA_exception_init (&ev); bonobo_activation_init (argc, argv); sort_criteria = NULL; if (argc > 1) { query = argv[1]; if (argc > 2) { int i; int num_conditions; num_conditions = argc - 2; printf ("Number of sort criteria: %d\n", num_conditions); sort_criteria = g_malloc (sizeof (char *) * (num_conditions + 1)); for (i = 0; i < num_conditions; i++) { sort_criteria[i] = g_strdup (argv[i + 2]); puts (sort_criteria[i]); } sort_criteria[num_conditions] = NULL; } } else { query = "repo_ids.has('IDL:Empty:1.0')"; } /* putenv("Bonobo_BARRIER_INIT=1"); */ result = bonobo_activation_query (query, sort_criteria, &ev); /* result = bonobo_activation_query ("iid == 'OAFIID:Empty:19991025'", NULL, &ev); */ if (ev._major != CORBA_NO_EXCEPTION) { if (ev._major == CORBA_USER_EXCEPTION) { if (!strcmp (ev._id, ex_Bonobo_GeneralError)) { Bonobo_GeneralError *err = CORBA_exception_value (&ev); printf ("An exception '%s' occurred\n", err->description); } else { printf ("An unknown user exception ('%s') " "occurred\n", ev._id); } } else if (ev._major == CORBA_SYSTEM_EXCEPTION) { printf ("A system exception ('%s') occurred\n", ev._id); } else { g_assert_not_reached (); } } else if (result == NULL) { puts ("NULL result failed"); } else { printf ("number of results: %d\n", result->_length); for (i = 0; i < result->_length; i++) { puts ((result->_buffer[i]).iid); } CORBA_free (result); } CORBA_exception_free (&ev); if (bonobo_activation_debug_shutdown ()) { return 0; } else { return 1; } } libbonobo-2.32.1/tests/test-activation/bonobo-activation-env-test.c0000644000076400007640000000224611173072711022305 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ #include #include #include #include #include #include #include #define TEST_ASSERT_STR_EQUAL(value, refvalue) \ if (value == NULL || strcmp (value, refvalue) != 0) { \ fprintf (stderr, "%s:%i: expected value %s but got %s.\n", \ __FILE__, __LINE__, refvalue, value? value : "(null)"); \ return 2; \ } int main (int argc, char *argv[]) { CORBA_char *value; bonobo_init (&argc, argv); bonobo_activation_set_activation_env_value ("DISPLAY", ":0"); value = _bonobo_activation_get_activation_env_value ("DISPLAY"); TEST_ASSERT_STR_EQUAL(value, ":0"); bonobo_activation_set_activation_env_value ("DISPLAY", ":0.0"); value = _bonobo_activation_get_activation_env_value ("DISPLAY"); TEST_ASSERT_STR_EQUAL(value, ":0.0"); return 0; } libbonobo-2.32.1/tests/test-activation/bonobo-activation-test.c0000644000076400007640000004056111173072711021521 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ #include #include #include #include #include #include #include #include "activation-server/server.h" #include "empty.h" #include "plugin.h" #define TOTAL_TEST_SCORE 17 CORBA_Object name_service = CORBA_OBJECT_NIL; static char * bonobo_activation_exception_id (CORBA_Environment *ev) { if (ev->_major == CORBA_USER_EXCEPTION) { if (!strcmp (ev->_id, "IDL:Bonobo/GeneralError:1.0")) { Bonobo_GeneralError *err = CORBA_exception_value (ev); if (!err || !err->description) { return "No general exception error message"; } else { return err->description; } } else { return ev->_id; } } else { return CORBA_exception_id (ev); } } static gboolean test_bonobo_activation_server (CORBA_Environment *ev, const char *type) { CORBA_Object ns; ns = bonobo_activation_name_service_get (ev); if (ev->_major != CORBA_NO_EXCEPTION) { g_warning ("Exception '%s' (%s) finding bonobo_activation_server %s", bonobo_activation_exception_id (ev), ev->_id, type); return FALSE; } if (name_service != CORBA_OBJECT_NIL && name_service != ns) { g_warning ("bonobo_activation_server crashed %s", type); return FALSE; } if (name_service == CORBA_OBJECT_NIL) name_service = ns; else CORBA_Object_release (ns, ev); return TRUE; } static gboolean test_object (CORBA_Object obj, CORBA_Environment *ev, const char *type) { if (ev->_major != CORBA_NO_EXCEPTION) { g_warning ("Activation %s failed: %s\n", type, bonobo_activation_exception_id (ev)); } else if (CORBA_Object_is_nil (obj, ev)) { g_warning ("Activation %s failed (returned NIL but no exception)!", type); } else { return TRUE; } if (!test_bonobo_activation_server (ev, type)) { return FALSE; } return FALSE; } static int test_plugin (CORBA_Object obj, CORBA_Environment *ev, const char *type) { Plugin_doPluginTest (obj, ev); if (ev->_major != CORBA_NO_EXCEPTION) { g_warning ("Call failed: %s\n", bonobo_activation_exception_id (ev)); return 0; } else { fprintf (stderr, "Test %s succeeded\n", type); CORBA_Object_release (obj, ev); return 1; } } static int test_empty (CORBA_Object obj, CORBA_Environment *ev, const char *type) { Empty_doNothing (obj, ev); if (ev->_major != CORBA_NO_EXCEPTION) { g_warning ("Call failed: %s\n", bonobo_activation_exception_id (ev)); return 0; } else { fprintf (stderr, "Test %s succeeded\n", type); CORBA_Object_release (obj, ev); return 1; } } static int idle_base_activation (gpointer user_data) { /* This is a facile test, we always activate the * ActivationContext first and then get the OD from it */ bonobo_activation_activation_context_get (); return FALSE; } static void race_base_init (void) { g_idle_add (idle_base_activation, NULL); /* to race with the activation context get in the same process */ bonobo_activation_object_directory_get (NULL, NULL); } int passed = 0; int failed = 0; int async_done = 0; static void empty_activation_cb (CORBA_Object obj, const char *error_reason, gpointer user_data) { CORBA_Environment ev; gboolean ret = FALSE; char *repo_id = user_data; CORBA_exception_init (&ev); if (error_reason) g_warning ("Async activation error activating '%s' : '%s'", repo_id, error_reason); else if (test_object (obj, &ev, "by async query")) ret = test_empty (obj, &ev, "by async query"); if (ret) { passed++; fprintf (stderr, "PASSED %d of %d: async activation\n", passed + failed, TOTAL_TEST_SCORE); } else { failed++; fprintf (stderr, "FAILED %d of %d: async activation\n", passed + failed, TOTAL_TEST_SCORE); } CORBA_exception_free (&ev); async_done++; } static void race_empty (CORBA_Environment *ev) { bonobo_activation_activate_async ( "repo_ids.has('IDL:Empty2:1.0')", NULL, 0, empty_activation_cb, "IDL:Empty2:1.0", ev); g_assert (ev->_major == CORBA_NO_EXCEPTION); bonobo_activation_activate_async ( "repo_ids.has('IDL:Empty:1.0')", NULL, 0, empty_activation_cb, "IDL:Empty:1.0", ev); g_assert (ev->_major == CORBA_NO_EXCEPTION); while (async_done < 2) g_main_context_iteration (NULL, TRUE); } static void listener_cb (BonoboListener *listener, const char *event_name, const CORBA_any *any, CORBA_Environment *ev, gpointer user_data) { g_message ("Activation callback successfully called on %s", bonobo_event_subtype (event_name)); } int main (int argc, char *argv[]) { CORBA_Object obj; CORBA_Environment ev; Bonobo_ServerInfoList *info; CORBA_Object ac; char *sort_by[4]; char *query; int i; GTimer *timer = g_timer_new (); Bonobo_EventSource event_source; g_thread_init (NULL); CORBA_exception_init (&ev); bonobo_activation_object_directory_get ( bonobo_activation_username_get (), bonobo_activation_hostname_get ()); bonobo_init (&argc, argv); /* putenv("Bonobo_BARRIER_INIT=1"); */ event_source = bonobo_activation_activate_from_id ("OAFIID:Bonobo_Activation_EventSource", 0, NULL, &ev); if (event_source != CORBA_OBJECT_NIL) { passed++; fprintf (stderr, "PASSED %d of %d: Activation event source okay\n", passed + failed, TOTAL_TEST_SCORE); bonobo_event_source_client_add_listener (event_source, listener_cb, "Bonobo/ObjectDirectory", &ev, NULL); } else { failed++; fprintf (stderr, "FAILED %d of %d: Activation event source not found\n", passed + failed, TOTAL_TEST_SCORE); } race_base_init (); sort_by[0] = "prefer_by_list_order(iid, [" "'OAFIID:nautilus_file_manager_icon_view:42681b21-d5ca-4837-87d2-394d88ecc058'," "'OAFIID:nautilus_file_manager_list_view:521e489d-0662-4ad7-ac3a-832deabe111c'," "'OAFIID:nautilus_music_view:9456b5d2-60a8-407f-a56e-d561e1821391'])"; sort_by[1] = "iid != 'OAFIID:nautilus_content_loser:95901458-c68b-43aa-aaca-870ced11062d'"; sort_by[2] = "iid != 'OAFIID:nautilus_sample_content_view:45c746bc-7d64-4346-90d5-6410463b43ae'"; sort_by[3] = NULL; query = "( (((repo_ids.has_all (['IDL:Bonobo/Control:1.0'," "'IDL:Nautilus/View:1.0']) OR (repo_ids.has_one " "(['IDL:Bonobo/Control:1.0','IDL:Bonobo/Embeddable:1.0']) AND " "repo_ids.has_one (['IDL:Bonobo/PersistStream:1.0', " "'IDL:Bonobo/ProgressiveDataSink:1.0', " "'IDL:Bonobo/PersistFile:1.0']))) AND (bonobo:supported_mime_types.defined () OR " "bonobo:supported_uri_schemes.defined () OR " "bonobo:additional_uri_schemes.defined ()) AND " "(((NOT bonobo:supported_mime_types.defined () OR " "bonobo:supported_mime_types.has ('x-directory/normal') OR " "bonobo:supported_mime_types.has ('x-directory/*') OR " "bonobo:supported_mime_types.has ('*/*')) AND " "(NOT bonobo:supported_uri_schemes.defined () OR " "bonobo:supported_uri_schemes.has ('file') OR " "bonobo:supported_uri_schemes.has ('*'))) OR " "(bonobo:additional_uri_schemes.has ('file') OR " "bonobo:additional_uri_schemes.has ('*'))) AND " "nautilus:view_as_name.defined ()) OR false) AND " "(has (['OAFIID:nautilus_file_manager_icon_view:42681b21-d5ca-4837-87d2-394d88ecc058', " "'OAFIID:nautilus_file_manager_list_view:521e489d-0662-4ad7-ac3a-832deabe111c'], iid)) ) AND " "(NOT test_only.defined() OR NOT test_only)"; ac = bonobo_activation_activation_context_get (); g_timer_start (timer); info = bonobo_activation_query (query, sort_by, &ev); for (i = 0; i < 1000; i++) { Bonobo_ServerInfoList *copy; copy = Bonobo_ServerInfoList_duplicate (info); CORBA_free (copy); } g_timer_stop (timer); fprintf (stderr, "Time to query '%g'\n", g_timer_elapsed (timer, NULL)); if (ev._major == CORBA_NO_EXCEPTION) { passed++; fprintf (stderr, "PASSED %d of %d: timed query\n", passed + failed, TOTAL_TEST_SCORE); } else { failed++; fprintf (stderr, "FAILED %d of %d: timed query\n", passed + failed, TOTAL_TEST_SCORE); CORBA_exception_free (&ev); } /* * We wait to see if the server (sever) * timeout is mis-behaving [ at this stage we * have not registered anything with the server ] */ fprintf (stderr, "Waiting to see if the server erroneously quits\n"); g_usleep (SERVER_IDLE_QUIT_TIMEOUT * 2 * 1000); g_assert (ORBit_small_get_connection_status (ac) == ORBIT_CONNECTION_CONNECTED); race_empty (&ev); obj = bonobo_activation_activate_from_id ("OAFIID:Empty:19991025", 0, NULL, &ev); if (test_object (obj, &ev, "from id") && test_empty (obj, &ev, "from id")) { passed++; fprintf (stderr, "PASSED %d of %d: IID activation\n", passed + failed, TOTAL_TEST_SCORE); } else { failed++; fprintf (stderr, "FAILED %d of %d: IID activation\n", passed + failed, TOTAL_TEST_SCORE); } obj = bonobo_activation_activate_from_id ("OAFAID:[OAFIID:Empty:19991025]", 0, NULL, &ev); if (test_object (obj, &ev, "from aid") && test_empty (obj, &ev, "from aid")) { passed++; fprintf (stderr, "PASSED %d of %d: AID activation\n", passed + failed, TOTAL_TEST_SCORE); } else { failed++; fprintf (stderr, "FAILED %d of %d: AID activation\n", passed + failed, TOTAL_TEST_SCORE); } obj = bonobo_activation_activate_from_id ("OAFAID:[OAFIID:Plugin:20010713]", 0, NULL, &ev); if (test_object (obj, &ev, "from aid") && test_plugin (obj, &ev, "from aid")) { passed++; fprintf (stderr, "PASSED %d of %d: plugin activation\n", passed + failed, TOTAL_TEST_SCORE); } else { failed++; fprintf (stderr, "FAILED %d of %d: plugin activation\n", passed + failed, TOTAL_TEST_SCORE); } obj = bonobo_activation_activate_from_id ("OAFIID:Bogus:20000526", 0, NULL, &ev); if (ev._major != CORBA_NO_EXCEPTION) { passed++; fprintf (stderr, "PASSED %d of %d: Broken link test : %s\n", passed + failed, TOTAL_TEST_SCORE, bonobo_activation_exception_id (&ev)); CORBA_exception_free (&ev); } else { failed++; fprintf (stderr, "FAILED %d of %d: Broken link test\n", passed + failed, TOTAL_TEST_SCORE); } if (test_bonobo_activation_server (&ev, "with broken factory link")) { passed++; fprintf (stderr, "PASSED %d of %d: activation server okay\n", passed + failed, TOTAL_TEST_SCORE); } else { failed++; fprintf (stderr, "FAILED %d of %d: activation server okay\n", passed + failed, TOTAL_TEST_SCORE); } fprintf (stderr, "Broken exe test "); obj = bonobo_activation_activate_from_id ("OAFIID:Broken:20000530", 0, NULL, &ev); if (ev._major != CORBA_NO_EXCEPTION) { passed++; fprintf (stderr, "PASSED %d of %d: Broken exe test : %s\n", passed + failed, TOTAL_TEST_SCORE, bonobo_activation_exception_id (&ev)); CORBA_exception_free (&ev); } else { failed++; fprintf (stderr, "FAILED %d of %d: Broken exe test\n", passed + failed, TOTAL_TEST_SCORE); } if (test_bonobo_activation_server (&ev, "with broken factory link")) { passed++; fprintf (stderr, "PASSED %d of %d: activation server okay\n", passed + failed, TOTAL_TEST_SCORE); } else { failed++; fprintf (stderr, "FAILED %d of %d: activation server okay\n", passed + failed, TOTAL_TEST_SCORE); } obj = bonobo_activation_activate_from_id ("OAFIID:Circular:20000530", 0, NULL, &ev); if (ev._major != CORBA_NO_EXCEPTION) { passed++; fprintf (stderr, "PASSED %d of %d: Circular link test : %s\n", passed + failed, TOTAL_TEST_SCORE, bonobo_activation_exception_id (&ev)); CORBA_exception_free (&ev); } else { failed++; fprintf (stderr, "FAILED %d of %d: Circular link test\n", passed + failed, TOTAL_TEST_SCORE); } if (test_bonobo_activation_server (&ev, "with broken factory link")) { passed++; fprintf (stderr, "PASSED %d of %d: activation server okay\n", passed + failed, TOTAL_TEST_SCORE); } else { failed++; fprintf (stderr, "FAILED %d of %d: activation server okay\n", passed + failed, TOTAL_TEST_SCORE); } obj = bonobo_activation_activate_from_id ("OAFIID:NotInServer:20000717", 0, NULL, &ev); if (ev._major != CORBA_NO_EXCEPTION) { passed++; fprintf (stderr, "PASSED %d of %d: Server that doesn't register IID test : %s\n", passed + failed, TOTAL_TEST_SCORE, bonobo_activation_exception_id (&ev)); CORBA_exception_free (&ev); } else { failed++; fprintf (stderr, "FAILED %d of %d: Server that doesn't register IID test\n", passed + failed, TOTAL_TEST_SCORE); } if (test_bonobo_activation_server (&ev, "with non-registering server")) { passed++; fprintf (stderr, "PASSED %d of %d: activation server okay\n", passed + failed, TOTAL_TEST_SCORE); } else { failed++; fprintf (stderr, "FAILED %d of %d: activation server okay\n", passed + failed, TOTAL_TEST_SCORE); } obj = bonobo_activation_activate_from_id ("OAFIID:BrokenNoType:20000808", 0, NULL, &ev); if (ev._major != CORBA_NO_EXCEPTION) { failed++; fprintf (stderr, "FAILED %d of %d: Server with IID but no type or location : %s\n", passed + failed, TOTAL_TEST_SCORE, bonobo_activation_exception_id (&ev)); CORBA_exception_free (&ev); } else if (obj) { failed++; fprintf (stderr, "FAILED %d of %d: Server with IID but no type or location\n", passed + failed, TOTAL_TEST_SCORE); } else { passed++; fprintf (stderr, "PASSED %d of %d: Server with IID but no type or location\n", passed + failed, TOTAL_TEST_SCORE); } if (test_bonobo_activation_server (&ev, "with no-type/loc server")) { passed++; fprintf (stderr, "PASSED %d of %d: activation server okay\n", passed + failed, TOTAL_TEST_SCORE); } else { failed++; fprintf (stderr, "FAILED %d of %d: activation server okay\n", passed + failed, TOTAL_TEST_SCORE); } fprintf (stderr, "\n%d of %d tests passed (%s)\n", passed, TOTAL_TEST_SCORE, passed == TOTAL_TEST_SCORE? "All": "some failures"); if (passed < (TOTAL_TEST_SCORE * 2 / 3)) { fprintf (stderr, "It looks like you have not installed broken.server " "into ${prefix}/share/bonobo-activation/, this must be done " "by hand to avoid problems with normal operation.\n"); fprintf (stderr, "Another possibility is that you failed to kill " "bonobo_activation_server before running make check; try running bonobo-slay.\n"); } if (name_service != CORBA_OBJECT_NIL) CORBA_Object_release (name_service, &ev); if (event_source != CORBA_OBJECT_NIL) CORBA_Object_release (event_source, &ev); CORBA_exception_free (&ev); if (passed == TOTAL_TEST_SCORE) { if (bonobo_debug_shutdown ()) { return 0; } else { return 1; } } else { return 1; } } libbonobo-2.32.1/tests/test-activation/Makefile.in0000664000076400007640000007140011546333030017024 00000000000000# Makefile.in generated by automake 1.11.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008, 2009 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@ VPATH = @srcdir@ 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@ check_PROGRAMS = bonobo-activation-test$(EXEEXT) \ bonobo-activation-test-async$(EXEEXT) \ bonobo-activation-env-test$(EXEEXT) \ bonobo-activation-empty-server$(EXEEXT) bin_PROGRAMS = bonobo-activation-run-query$(EXEEXT) subdir = tests/test-activation DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.in 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) am__DEPENDENCIES_1 = libtest_plugin_la_DEPENDENCIES = \ ../../bonobo-activation/libbonobo-activation.la \ $(am__DEPENDENCIES_1) am_libtest_plugin_la_OBJECTS = plugin-common.lo plugin-skels.lo \ plugin-stubs.lo bonobo-activation-testplugin.lo libtest_plugin_la_OBJECTS = $(am_libtest_plugin_la_OBJECTS) AM_V_lt = $(am__v_lt_$(V)) am__v_lt_ = $(am__v_lt_$(AM_DEFAULT_VERBOSITY)) am__v_lt_0 = --silent libtest_plugin_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ $(AM_CFLAGS) $(CFLAGS) $(libtest_plugin_la_LDFLAGS) $(LDFLAGS) \ -o $@ am__installdirs = "$(DESTDIR)$(bindir)" PROGRAMS = $(bin_PROGRAMS) am_bonobo_activation_empty_server_OBJECTS = empty-server.$(OBJEXT) \ empty-common.$(OBJEXT) empty-skels.$(OBJEXT) bonobo_activation_empty_server_OBJECTS = \ $(am_bonobo_activation_empty_server_OBJECTS) bonobo_activation_empty_server_LDADD = $(LDADD) bonobo_activation_empty_server_DEPENDENCIES = \ ../../bonobo-activation/libbonobo-activation.la \ $(am__DEPENDENCIES_1) bonobo_activation_env_test_SOURCES = bonobo-activation-env-test.c bonobo_activation_env_test_OBJECTS = \ bonobo-activation-env-test.$(OBJEXT) bonobo_activation_env_test_DEPENDENCIES = ../../bonobo/libbonobo-2.la am_bonobo_activation_run_query_OBJECTS = \ bonobo-activation-run-query.$(OBJEXT) empty-common.$(OBJEXT) \ empty-stubs.$(OBJEXT) bonobo_activation_run_query_OBJECTS = \ $(am_bonobo_activation_run_query_OBJECTS) bonobo_activation_run_query_LDADD = $(LDADD) bonobo_activation_run_query_DEPENDENCIES = \ ../../bonobo-activation/libbonobo-activation.la \ $(am__DEPENDENCIES_1) am_bonobo_activation_test_OBJECTS = bonobo-activation-test.$(OBJEXT) \ empty-common.$(OBJEXT) empty-stubs.$(OBJEXT) bonobo_activation_test_OBJECTS = $(am_bonobo_activation_test_OBJECTS) bonobo_activation_test_DEPENDENCIES = libtest-plugin.la \ ../../bonobo/libbonobo-2.la am_bonobo_activation_test_async_OBJECTS = \ bonobo-activation-test-async.$(OBJEXT) bonobo_activation_test_async_OBJECTS = \ $(am_bonobo_activation_test_async_OBJECTS) bonobo_activation_test_async_LDADD = $(LDADD) bonobo_activation_test_async_DEPENDENCIES = \ ../../bonobo-activation/libbonobo-activation.la \ $(am__DEPENDENCIES_1) 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_$(V)) am__v_CC_ = $(am__v_CC_$(AM_DEFAULT_VERBOSITY)) am__v_CC_0 = @echo " CC " $@; AM_V_at = $(am__v_at_$(V)) am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) 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_$(V)) am__v_CCLD_ = $(am__v_CCLD_$(AM_DEFAULT_VERBOSITY)) am__v_CCLD_0 = @echo " CCLD " $@; AM_V_GEN = $(am__v_GEN_$(V)) am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) am__v_GEN_0 = @echo " GEN " $@; SOURCES = $(libtest_plugin_la_SOURCES) \ $(bonobo_activation_empty_server_SOURCES) \ bonobo-activation-env-test.c \ $(bonobo_activation_run_query_SOURCES) \ $(bonobo_activation_test_SOURCES) \ $(bonobo_activation_test_async_SOURCES) DIST_SOURCES = $(libtest_plugin_la_SOURCES) \ $(bonobo_activation_empty_server_SOURCES) \ bonobo-activation-env-test.c \ $(bonobo_activation_run_query_SOURCES) \ $(bonobo_activation_test_SOURCES) \ $(bonobo_activation_test_async_SOURCES) DATA = $(noinst_DATA) ETAGS = etags CTAGS = ctags am__tty_colors = \ red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ AR = @AR@ AS = @AS@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ BONOBO_ACTIVATION_LT_VERSION_INFO = @BONOBO_ACTIVATION_LT_VERSION_INFO@ BONOBO_MAJOR_VERSION = @BONOBO_MAJOR_VERSION@ BONOBO_MICRO_VERSION = @BONOBO_MICRO_VERSION@ BONOBO_MINOR_VERSION = @BONOBO_MINOR_VERSION@ BONOBO_SLAY = @BONOBO_SLAY@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DISABLE_DEPRECATED_CFLAGS = @DISABLE_DEPRECATED_CFLAGS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GREP = @GREP@ GTHREAD_CFLAGS = @GTHREAD_CFLAGS@ GTHREAD_LIBS = @GTHREAD_LIBS@ GTKDOC_CHECK = @GTKDOC_CHECK@ GTKDOC_MKPDF = @GTKDOC_MKPDF@ GTKDOC_REBASE = @GTKDOC_REBASE@ HTML_DIR = @HTML_DIR@ IF_BSD_PS = @IF_BSD_PS@ IF_CYGWIN_PS = @IF_CYGWIN_PS@ IF_POSIX_PS = @IF_POSIX_PS@ 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@ LD = @LD@ LDFLAGS = @LDFLAGS@ LEX = @LEX@ LEXLIB = @LEXLIB@ LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ LFLAGS = @LFLAGS@ LIBBONOBO_CFLAGS = @LIBBONOBO_CFLAGS@ LIBBONOBO_LIBS = @LIBBONOBO_LIBS@ LIBBONOBO_LT_VERSION_INFO = @LIBBONOBO_LT_VERSION_INFO@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIPO = @LIPO@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ NM = @NM@ NMEDIT = @NMEDIT@ OBJDUMP = @OBJDUMP@ OBJEXT = @OBJEXT@ ORBIT_IDL = @ORBIT_IDL@ OTOOL = @OTOOL@ OTOOL64 = @OTOOL64@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PERL_PATH = @PERL_PATH@ PKG_CONFIG = @PKG_CONFIG@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ PS_PATH = @PS_PATH@ RANLIB = @RANLIB@ SEARCHPATHSEP = @SEARCHPATHSEP@ SED = @SED@ SERVER_CFLAGS = @SERVER_CFLAGS@ SERVER_LIBS = @SERVER_LIBS@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SOPREFIX = @SOPREFIX@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ WARN_CFLAGS = @WARN_CFLAGS@ XGETTEXT = @XGETTEXT@ YACC = @YACC@ YFLAGS = @YFLAGS@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ 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@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ lt_ECHO = @lt_ECHO@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ 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@ noinst_LTLIBRARIES = libtest-plugin.la bonobo_activation_test_async_SOURCES = \ bonobo-activation-test-async.c bonobo_activation_test_SOURCES = \ bonobo-activation-test.c \ empty-common.c \ empty.h \ empty-stubs.c bonobo_activation_test_LDADD = libtest-plugin.la ../../bonobo/libbonobo-2.la bonobo_activation_env_test_LDADD = ../../bonobo/libbonobo-2.la # Horrible, digusting and atrocious hack to # get libtool to build a noinst shared lib. libtest_plugin_la_LDFLAGS = \ -rpath $(shell (cd $(top_builddir);pwd))/test/.libs \ -module -avoid-version -no-undefined libtest_plugin_la_LIBADD = \ ../../bonobo-activation/libbonobo-activation.la \ $(LIBBONOBO_LIBS) libtest_plugin_la_SOURCES = \ plugin.h \ plugin-common.c \ plugin-skels.c \ plugin-stubs.c \ bonobo-activation-testplugin.c bonobo_activation_run_query_SOURCES = \ bonobo-activation-run-query.c \ empty-common.c \ empty.h \ empty-stubs.c bonobo_activation_empty_server_SOURCES = \ empty-server.c \ empty.h \ empty-common.c \ empty-skels.c BUILT_SOURCES = \ empty.h \ empty-common.c \ empty-stubs.c \ empty-skels.c \ plugin.h \ plugin-stubs.c \ plugin-skels.c \ plugin-common.c CLEANFILES = empty_built plugin_built $(BUILT_SOURCES) INCLUDES = \ -I$(top_srcdir) \ -I$(top_builddir) \ $(WARN_CFLAGS) \ $(DISABLE_DEPRECATED_CFLAGS) $(LIBBONOBO_CFLAGS) LDADD = ../../bonobo-activation/libbonobo-activation.la \ $(LIBBONOBO_LIBS) serverfiles = empty.server broken.server plugin.server noinst_DATA = $(serverfiles) EXTRA_DIST = test.sh empty.idl plugin.idl $(serverfiles) # TESTS= test.sh bonobo-activation-test-async TESTS = test.sh TESTS_ENVIRONMENT = \ BONOBO_ACTIVATION_DEBUG=1 \ BONOBO_ACTIVATION_PATH="$(srcdir)$(SEARCHPATHSEP)$(top_builddir)/activation-server$(SEARCHPATHSEP)$$BONOBO_ACTIVATION_PATH" all: $(BUILT_SOURCES) $(MAKE) $(AM_MAKEFLAGS) 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) --foreign tests/test-activation/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --foreign tests/test-activation/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 libtest-plugin.la: $(libtest_plugin_la_OBJECTS) $(libtest_plugin_la_DEPENDENCIES) $(AM_V_CCLD)$(libtest_plugin_la_LINK) $(libtest_plugin_la_OBJECTS) $(libtest_plugin_la_LIBADD) $(LIBS) install-binPROGRAMS: $(bin_PROGRAMS) @$(NORMAL_INSTALL) test -z "$(bindir)" || $(MKDIR_P) "$(DESTDIR)$(bindir)" @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \ 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)$(bindir)$$dir'"; \ $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(bindir)$$dir" || exit $$?; \ } \ ; done uninstall-binPROGRAMS: @$(NORMAL_UNINSTALL) @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || 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)$(bindir)' && rm -f" $$files ")"; \ cd "$(DESTDIR)$(bindir)" && rm -f $$files clean-binPROGRAMS: @list='$(bin_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 clean-checkPROGRAMS: @list='$(check_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 bonobo-activation-empty-server$(EXEEXT): $(bonobo_activation_empty_server_OBJECTS) $(bonobo_activation_empty_server_DEPENDENCIES) @rm -f bonobo-activation-empty-server$(EXEEXT) $(AM_V_CCLD)$(LINK) $(bonobo_activation_empty_server_OBJECTS) $(bonobo_activation_empty_server_LDADD) $(LIBS) bonobo-activation-env-test$(EXEEXT): $(bonobo_activation_env_test_OBJECTS) $(bonobo_activation_env_test_DEPENDENCIES) @rm -f bonobo-activation-env-test$(EXEEXT) $(AM_V_CCLD)$(LINK) $(bonobo_activation_env_test_OBJECTS) $(bonobo_activation_env_test_LDADD) $(LIBS) bonobo-activation-run-query$(EXEEXT): $(bonobo_activation_run_query_OBJECTS) $(bonobo_activation_run_query_DEPENDENCIES) @rm -f bonobo-activation-run-query$(EXEEXT) $(AM_V_CCLD)$(LINK) $(bonobo_activation_run_query_OBJECTS) $(bonobo_activation_run_query_LDADD) $(LIBS) bonobo-activation-test$(EXEEXT): $(bonobo_activation_test_OBJECTS) $(bonobo_activation_test_DEPENDENCIES) @rm -f bonobo-activation-test$(EXEEXT) $(AM_V_CCLD)$(LINK) $(bonobo_activation_test_OBJECTS) $(bonobo_activation_test_LDADD) $(LIBS) bonobo-activation-test-async$(EXEEXT): $(bonobo_activation_test_async_OBJECTS) $(bonobo_activation_test_async_DEPENDENCIES) @rm -f bonobo-activation-test-async$(EXEEXT) $(AM_V_CCLD)$(LINK) $(bonobo_activation_test_async_OBJECTS) $(bonobo_activation_test_async_LDADD) $(LIBS) mostlyclean-compile: -rm -f *.$(OBJEXT) distclean-compile: -rm -f *.tab.c @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-activation-env-test.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-activation-run-query.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-activation-test-async.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-activation-test.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-activation-testplugin.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/empty-common.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/empty-server.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/empty-skels.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/empty-stubs.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/plugin-common.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/plugin-skels.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/plugin-stubs.Plo@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 @am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(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 @am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(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 @am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $< mostlyclean-libtool: -rm -f *.lo clean-libtool: -rm -rf .libs _libs 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 \ echo "$$grn$$dashes"; \ else \ echo "$$red$$dashes"; \ fi; \ echo "$$banner"; \ test -z "$$skipped" || echo "$$skipped"; \ test -z "$$report" || echo "$$report"; \ echo "$$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 $(MAKE) $(AM_MAKEFLAGS) \ top_distdir="$(top_distdir)" distdir="$(distdir)" \ dist-hook check-am: all-am $(MAKE) $(AM_MAKEFLAGS) $(check_PROGRAMS) $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: $(BUILT_SOURCES) $(MAKE) $(AM_MAKEFLAGS) check-am all-am: Makefile $(LTLIBRARIES) $(PROGRAMS) $(DATA) installdirs: for dir in "$(DESTDIR)$(bindir)"; 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: $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install 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-binPROGRAMS clean-checkPROGRAMS clean-generic \ clean-libtool clean-noinstLTLIBRARIES 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-dvi: install-dvi-am install-dvi-am: install-exec-am: install-binPROGRAMS 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-binPROGRAMS .MAKE: all check check-am install install-am install-strip .PHONY: CTAGS GTAGS all all-am check check-TESTS check-am clean \ clean-binPROGRAMS clean-checkPROGRAMS clean-generic \ clean-libtool clean-noinstLTLIBRARIES ctags dist-hook \ distclean distclean-compile distclean-generic \ distclean-libtool distclean-tags distdir dvi dvi-am html \ html-am info info-am install install-am install-binPROGRAMS \ 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-compile \ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ tags uninstall uninstall-am uninstall-binPROGRAMS empty.h empty-common.c empty-stubs.c empty-skels.c: empty_built plugin.h plugin-common.c plugin-stubs.c plugin-skels.c: plugin_built empty_built: empty.idl $(ORBIT_IDL) $(AM_V_GEN) $(ORBIT_IDL) $(srcdir)/empty.idl @touch empty_built plugin_built: plugin.idl $(ORBIT_IDL) $(AM_V_GEN) $(ORBIT_IDL) $(srcdir)/plugin.idl @touch plugin_built dist-hook: cd $(distdir); rm -f $(CLEANFILES) # 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: libbonobo-2.32.1/tests/test-activation/empty.server0000644000076400007640000000070611173072711017346 00000000000000 libbonobo-2.32.1/tests/test-activation/bonobo-activation-test-async.c0000644000076400007640000001146611173072711022636 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ #include #include #include #include #define DEBUG_TIMEOUT 2000 #define DEBUG_TIME 1 typedef struct { gboolean callback_called; gboolean succeeded; GMainLoop *loop; } callback_data_t; static void test_callback (CORBA_Object activated_object, const char *error_reason, gpointer user_data) { callback_data_t *data; data = (callback_data_t *) user_data; if (activated_object == CORBA_OBJECT_NIL) { data->succeeded = FALSE; } else { CORBA_Environment ev; CORBA_exception_init (&ev); CORBA_Object_release (activated_object, &ev); CORBA_exception_free (&ev); data->succeeded = TRUE; } data->callback_called = TRUE; g_main_loop_quit (data->loop); } /* returns 1 in case of success. 0 otherwise. -1 if answer timeouted.... */ static int test_activate (char *requirements) { CORBA_Environment ev; callback_data_t data; GMainLoop *loop = g_main_loop_new (NULL, FALSE); guint timeout_id; CORBA_exception_init (&ev); data.callback_called = FALSE; data.succeeded = FALSE; data.loop = loop; bonobo_activation_activate_async (requirements, NULL, 0, test_callback, &data, &ev); timeout_id = g_timeout_add (DEBUG_TIMEOUT, (GSourceFunc) g_main_loop_quit, loop); g_main_loop_run (loop); if (data.callback_called == FALSE) g_source_remove (timeout_id); g_main_loop_unref (loop); if (data.callback_called == FALSE) { return -1; } if (data.succeeded == TRUE) { return 1; } else { return 0; } } /* returns 1 in case of success. 0 otherwise. -1 if answer timeouted.... */ static int test_activate_from_id (char *aid) { CORBA_Environment ev; callback_data_t data; GMainLoop *loop = g_main_loop_new (NULL, FALSE); guint timeout_id; CORBA_exception_init (&ev); data.callback_called = FALSE; data.succeeded = FALSE; data.loop = loop; bonobo_activation_activate_from_id_async (aid, 0, test_callback, &data, &ev); timeout_id = g_timeout_add (DEBUG_TIMEOUT, (GSourceFunc) g_main_loop_quit, loop); g_main_loop_run (loop); if (data.callback_called == FALSE) g_source_remove (timeout_id); g_main_loop_unref (loop); if (data.callback_called == FALSE) { return -1; } if (data.succeeded == TRUE) { return 1; } else { return 0; } } #define TOTAL_TESTS 4 int main (int argc, char *argv[]) { int test_status; int test_passed; test_passed = 0; bonobo_activation_init (argc, argv); g_message ("testing async interfaces\n"); g_message ("testing activate_async... "); /* this should fail */ test_status = test_activate (""); if (test_status == FALSE) { test_passed++; g_message (" passed\n"); } else if (test_status == TRUE || test_status == -1) { g_message (" failed\n"); } g_message ("testing activate_async... "); test_status = test_activate ("has (repo_ids, 'IDL:Empty:1.0')"); if (test_status == TRUE) { test_passed++; printf (" passed\n"); } else if (test_status == FALSE || test_status == -1) { g_message (" failed\n"); } g_message ("testing activate_from_id_async... "); test_status = test_activate_from_id (""); if (test_status == FALSE) { test_passed++; g_message (" passed\n"); } else if (test_status == TRUE || test_status == -1) { g_message (" failed\n"); } g_message ("testing activate_from_id_async... "); test_status = test_activate_from_id ("OAFIID:Empty:19991025"); if (test_status == TRUE) { test_passed++; g_message (" passed\n"); } else if (test_status == FALSE || test_status == -1) { g_message (" failed\n"); } g_message ("Async Test Results: %d passed upon %d \n", test_passed, TOTAL_TESTS); if (test_passed != TOTAL_TESTS) { return 1; } if (bonobo_activation_debug_shutdown ()) { return 0; } else { return 1; } } libbonobo-2.32.1/tests/test-activation/bonobo-activation-testplugin.c0000644000076400007640000000231511173072711022733 00000000000000#include #include "plugin.h" static gpointer bonobo_activation_plugin_impl_ptr = NULL; static void plugin_test_impl (PortableServer_Servant servant, CORBA_Environment *ev) { bonobo_activation_plugin_unuse (bonobo_activation_plugin_impl_ptr); } static PortableServer_ServantBase__epv base_epv = { NULL, NULL, NULL }; static POA_Plugin__epv plugin_epv = { NULL, plugin_test_impl }; static POA_Plugin__vepv plugin_vepv = { &base_epv, &plugin_epv }; static POA_Plugin plugin_servant = { NULL, &plugin_vepv }; static CORBA_Object activate_plugin (PortableServer_POA poa, const char *iid, gpointer impl_ptr, CORBA_Environment *ev) { CORBA_Object objref; POA_Plugin__init (&plugin_servant, ev); bonobo_activation_plugin_use (&plugin_servant, impl_ptr); bonobo_activation_plugin_impl_ptr = impl_ptr; objref = PortableServer_POA_servant_to_reference (poa, &plugin_servant, ev); return objref; } static BonoboActivationPluginObject plugin_list[] = { {"OAFIID:Plugin:20010713", activate_plugin}, {NULL} }; const BonoboActivationPlugin Bonobo_Plugin_info = { plugin_list, "Bonobo Activation Test Plugin" }; libbonobo-2.32.1/tests/test-moniker.c0000644000076400007640000000535511173072711014434 00000000000000#include #include #include #include #include static void check_string (const char *prefix, const char *escaped, const char *unescaped) { BonoboMoniker *moniker; const char *const_str; char *str; char *s, *name; CORBA_Environment ev; CORBA_long equal; moniker = bonobo_moniker_construct ( g_object_new (bonobo_moniker_get_type (), NULL), prefix); name = g_strconcat (prefix, escaped, NULL); bonobo_moniker_set_name (moniker, name); const_str = bonobo_moniker_get_name (moniker); fprintf (stderr, "'%s' == '%s'\n", unescaped, const_str); g_assert (!strcmp (const_str, unescaped)); CORBA_exception_init (&ev); equal = Bonobo_Moniker_equal (BONOBO_OBJREF (moniker), name, &ev); g_assert (!BONOBO_EX (&ev)); g_assert (equal); CORBA_exception_free (&ev); s = g_strconcat (prefix, escaped, NULL); str = bonobo_moniker_get_name_escaped (moniker); fprintf (stderr, "'%s' == '%s'\n", str, s); g_assert (!strcmp (str, s)); g_free (str); g_free (s); g_assert (bonobo_moniker_client_equal ( BONOBO_OBJREF (moniker), name, NULL)); bonobo_object_unref (BONOBO_OBJECT (moniker)); g_free (name); } static void check_parse_name (const char *name, const char *res, int plen) { const char *mname; int l; mname = bonobo_moniker_util_parse_name (name, &l); fprintf (stderr, "result %s %s %d\n", name, mname, l); g_assert (!strcmp (res, mname)); g_assert (plen == l); } static void test_real_monikers (void) { CORBA_Environment *ev, real_ev; Bonobo_Unknown object; CORBA_exception_init ((ev = &real_ev)); /* Try an impossible moniker resolve */ object = bonobo_get_object ("OAFIID:Bonobo_Moniker_Oaf", "IDL:Bonobo/PropertyBag:1.0", ev); g_assert (object == CORBA_OBJECT_NIL); if (BONOBO_EX (ev)) printf ("%s\n", bonobo_exception_get_text (ev)); CORBA_exception_free (ev); } int main (int argc, char *argv []) { g_thread_init (NULL); free (malloc (8)); if (!bonobo_init (NULL, NULL)) g_error ("Can not bonobo_init"); bonobo_activate (); check_string ("a:", "\\\\", "\\"); check_string ("a:", "\\#", "#"); check_string ("prefix:", "\\!", "!"); check_string ("a:", "1\\!\\#\\!\\!\\#\\\\", "1!#!!#\\"); check_parse_name ("#b:", "b:", 0); check_parse_name ("a:#b:", "b:", 2); check_parse_name ("a:!b:", "!b:", 2); check_parse_name ("a:3456789#b:", "b:", 9); check_parse_name ("a:\\##b:", "b:", 4); check_parse_name ("a:\\#c:", "a:\\#c:", 0); check_parse_name ("a:\\\\##c:", "c:", 5); check_parse_name ("a:\\\\#b:#c:", "c:", 7); check_parse_name ("a:\\\\#b:\\#c:", "b:\\#c:", 4); check_parse_name ("a:\\\\\\#b:\\#c:", "a:\\\\\\#b:\\#c:", 0); test_real_monikers (); return bonobo_debug_shutdown (); } libbonobo-2.32.1/COPYING.LIB0000644000076400007640000006347611173072711012155 00000000000000 GNU LESSER GENERAL PUBLIC LICENSE Version 2.1, February 1999 Copyright (C) 1991, 1999 Free Software Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. [This is the first released version of the Lesser GPL. It also counts as the successor of the GNU Library Public License, version 2, hence the version number 2.1.] Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public Licenses are intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This license, the Lesser General Public License, applies to some specially designated software packages--typically libraries--of the Free Software Foundation and other authors who decide to use it. You can use it too, but we suggest you first think carefully about whether this license or the ordinary General Public License is the better strategy to use in any particular case, based on the explanations below. When we speak of free software, we are referring to freedom of use, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish); that you receive source code or can get it if you want it; that you can change the software and use pieces of it in new free programs; and that you are informed that you can do these things. To protect your rights, we need to make restrictions that forbid distributors to deny you these rights or to ask you to surrender these rights. These restrictions translate to certain responsibilities for you if you distribute copies of the library or if you modify it. For example, if you distribute copies of the library, whether gratis or for a fee, you must give the recipients all the rights that we gave you. You must make sure that they, too, receive or can get the source code. If you link other code with the library, you must provide complete object files to the recipients, so that they can relink them with the library after making changes to the library and recompiling it. And you must show them these terms so they know their rights. We protect your rights with a two-step method: (1) we copyright the library, and (2) we offer you this license, which gives you legal permission to copy, distribute and/or modify the library. To protect each distributor, we want to make it very clear that there is no warranty for the free library. Also, if the library is modified by someone else and passed on, the recipients should know that what they have is not the original version, so that the original author's reputation will not be affected by problems that might be introduced by others. Finally, software patents pose a constant threat to the existence of any free program. We wish to make sure that a company cannot effectively restrict the users of a free program by obtaining a restrictive license from a patent holder. Therefore, we insist that any patent license obtained for a version of the library must be consistent with the full freedom of use specified in this license. Most GNU software, including some libraries, is covered by the ordinary GNU General Public License. This license, the GNU Lesser General Public License, applies to certain designated libraries, and is quite different from the ordinary General Public License. We use this license for certain libraries in order to permit linking those libraries into non-free programs. When a program is linked with a library, whether statically or using a shared library, the combination of the two is legally speaking a combined work, a derivative of the original library. The ordinary General Public License therefore permits such linking only if the entire combination fits its criteria of freedom. The Lesser General Public License permits more lax criteria for linking other code with the library. We call this license the "Lesser" General Public License because it does Less to protect the user's freedom than the ordinary General Public License. It also provides other free software developers Less of an advantage over competing non-free programs. These disadvantages are the reason we use the ordinary General Public License for many libraries. However, the Lesser license provides advantages in certain special circumstances. For example, on rare occasions, there may be a special need to encourage the widest possible use of a certain library, so that it becomes a de-facto standard. To achieve this, non-free programs must be allowed to use the library. A more frequent case is that a free library does the same job as widely used non-free libraries. In this case, there is little to gain by limiting the free library to free software only, so we use the Lesser General Public License. In other cases, permission to use a particular library in non-free programs enables a greater number of people to use a large body of free software. For example, permission to use the GNU C Library in non-free programs enables many more people to use the whole GNU operating system, as well as its variant, the GNU/Linux operating system. Although the Lesser General Public License is Less protective of the users' freedom, it does ensure that the user of a program that is linked with the Library has the freedom and the wherewithal to run that program using a modified version of the Library. The precise terms and conditions for copying, distribution and modification follow. Pay close attention to the difference between a "work based on the library" and a "work that uses the library". The former contains code derived from the library, whereas the latter must be combined with the library in order to run. GNU LESSER GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License Agreement applies to any software library or other program which contains a notice placed by the copyright holder or other authorized party saying it may be distributed under the terms of this Lesser General Public License (also called "this License"). Each licensee is addressed as "you". A "library" means a collection of software functions and/or data prepared so as to be conveniently linked with application programs (which use some of those functions and data) to form executables. The "Library", below, refers to any such software library or work which has been distributed under these terms. A "work based on the Library" means either the Library or any derivative work under copyright law: that is to say, a work containing the Library or a portion of it, either verbatim or with modifications and/or translated straightforwardly into another language. (Hereinafter, translation is included without limitation in the term "modification".) "Source code" for a work means the preferred form of the work for making modifications to it. For a library, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the library. Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running a program using the Library is not restricted, and output from such a program is covered only if its contents constitute a work based on the Library (independent of the use of the Library in a tool for writing it). Whether that is true depends on what the Library does and what the program that uses the Library does. 1. You may copy and distribute verbatim copies of the Library's complete source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and distribute a copy of this License along with the Library. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. 2. You may modify your copy or copies of the Library or any portion of it, thus forming a work based on the Library, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a) The modified work must itself be a software library. b) You must cause the files modified to carry prominent notices stating that you changed the files and the date of any change. c) You must cause the whole of the work to be licensed at no charge to all third parties under the terms of this License. d) If a facility in the modified Library refers to a function or a table of data to be supplied by an application program that uses the facility, other than as an argument passed when the facility is invoked, then you must make a good faith effort to ensure that, in the event an application does not supply such function or table, the facility still operates, and performs whatever part of its purpose remains meaningful. (For example, a function in a library to compute square roots has a purpose that is entirely well-defined independent of the application. Therefore, Subsection 2d requires that any application-supplied function or table used by this function must be optional: if the application does not supply it, the square root function must still compute square roots.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Library, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Library, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Library. In addition, mere aggregation of another work not based on the Library with the Library (or with a work based on the Library) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may opt to apply the terms of the ordinary GNU General Public License instead of this License to a given copy of the Library. To do this, you must alter all the notices that refer to this License, so that they refer to the ordinary GNU General Public License, version 2, instead of to this License. (If a newer version than version 2 of the ordinary GNU General Public License has appeared, then you can specify that version instead if you wish.) Do not make any other change in these notices. Once this change is made in a given copy, it is irreversible for that copy, so the ordinary GNU General Public License applies to all subsequent copies and derivative works made from that copy. This option is useful when you wish to copy part of the code of the Library into a program that is not a library. 4. You may copy and distribute the Library (or a portion or derivative of it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange. If distribution of object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place satisfies the requirement to distribute the source code, even though third parties are not compelled to copy the source along with the object code. 5. A program that contains no derivative of any portion of the Library, but is designed to work with the Library by being compiled or linked with it, is called a "work that uses the Library". Such a work, in isolation, is not a derivative work of the Library, and therefore falls outside the scope of this License. However, linking a "work that uses the Library" with the Library creates an executable that is a derivative of the Library (because it contains portions of the Library), rather than a "work that uses the library". The executable is therefore covered by this License. Section 6 states terms for distribution of such executables. When a "work that uses the Library" uses material from a header file that is part of the Library, the object code for the work may be a derivative work of the Library even though the source code is not. Whether this is true is especially significant if the work can be linked without the Library, or if the work is itself a library. The threshold for this to be true is not precisely defined by law. If such an object file uses only numerical parameters, data structure layouts and accessors, and small macros and small inline functions (ten lines or less in length), then the use of the object file is unrestricted, regardless of whether it is legally a derivative work. (Executables containing this object code plus portions of the Library will still fall under Section 6.) Otherwise, if the work is a derivative of the Library, you may distribute the object code for the work under the terms of Section 6. Any executables containing that work also fall under Section 6, whether or not they are linked directly with the Library itself. 6. As an exception to the Sections above, you may also combine or link a "work that uses the Library" with the Library to produce a work containing portions of the Library, and distribute that work under terms of your choice, provided that the terms permit modification of the work for the customer's own use and reverse engineering for debugging such modifications. You must give prominent notice with each copy of the work that the Library is used in it and that the Library and its use are covered by this License. You must supply a copy of this License. If the work during execution displays copyright notices, you must include the copyright notice for the Library among them, as well as a reference directing the user to the copy of this License. Also, you must do one of these things: a) Accompany the work with the complete corresponding machine-readable source code for the Library including whatever changes were used in the work (which must be distributed under Sections 1 and 2 above); and, if the work is an executable linked with the Library, with the complete machine-readable "work that uses the Library", as object code and/or source code, so that the user can modify the Library and then relink to produce a modified executable containing the modified Library. (It is understood that the user who changes the contents of definitions files in the Library will not necessarily be able to recompile the application to use the modified definitions.) b) Use a suitable shared library mechanism for linking with the Library. A suitable mechanism is one that (1) uses at run time a copy of the library already present on the user's computer system, rather than copying library functions into the executable, and (2) will operate properly with a modified version of the library, if the user installs one, as long as the modified version is interface-compatible with the version that the work was made with. c) Accompany the work with a written offer, valid for at least three years, to give the same user the materials specified in Subsection 6a, above, for a charge no more than the cost of performing this distribution. d) If distribution of the work is made by offering access to copy from a designated place, offer equivalent access to copy the above specified materials from the same place. e) Verify that the user has already received a copy of these materials or that you have already sent this user a copy. For an executable, the required form of the "work that uses the Library" must include any data and utility programs needed for reproducing the executable from it. However, as a special exception, the materials to be distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. It may happen that this requirement contradicts the license restrictions of other proprietary libraries that do not normally accompany the operating system. Such a contradiction means you cannot use both them and the Library together in an executable that you distribute. 7. You may place library facilities that are a work based on the Library side-by-side in a single library together with other library facilities not covered by this License, and distribute such a combined library, provided that the separate distribution of the work based on the Library and of the other library facilities is otherwise permitted, and provided that you do these two things: a) Accompany the combined library with a copy of the same work based on the Library, uncombined with any other library facilities. This must be distributed under the terms of the Sections above. b) Give prominent notice with the combined library of the fact that part of it is a work based on the Library, and explaining where to find the accompanying uncombined form of the same work. 8. You may not copy, modify, sublicense, link with, or distribute the Library except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense, link with, or distribute the Library is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 9. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Library or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Library (or any work based on the Library), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Library or works based on it. 10. Each time you redistribute the Library (or any work based on the Library), the recipient automatically receives a license from the original licensor to copy, distribute, link with or modify the Library subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties with this License. 11. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Library at all. For example, if a patent license would not permit royalty-free redistribution of the Library by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Library. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply, and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. 12. If the distribution and/or use of the Library is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Library under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. 13. The Free Software Foundation may publish revised and/or new versions of the Lesser General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Library specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Library does not specify a license version number, you may choose any version ever published by the Free Software Foundation. 14. If you wish to incorporate parts of the Library into other free programs whose distribution conditions are incompatible with these, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Libraries If you develop a new library, and you want it to be of the greatest possible use to the public, we recommend making it free software that everyone can redistribute and change. You can do so by permitting redistribution under these terms (or, alternatively, under the terms of the ordinary General Public License). To apply these terms, attach the following notices to the library. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Also add information on how to contact you by electronic and paper mail. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the library, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the library `Frob' (a library for tweaking knobs) written by James Random Hacker. , 1 April 1990 Ty Coon, President of Vice That's all there is to it! libbonobo-2.32.1/config.sub0000755000076400007640000010316711432275520012471 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 # Free Software Foundation, Inc. timestamp='2009-11-20' # 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, write to the Free Software # Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA # 02110-1301, 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. # 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 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-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/'` ;; *) 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 \ | 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 \ | bfin \ | c4x | clipper \ | d10v | d30v | dlx | dsp16xx \ | fido | fr30 | frv \ | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ | i370 | i860 | i960 | ia64 \ | ip2k | iq2000 \ | 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 \ | nios | nios2 \ | ns16k | ns32k \ | or32 \ | pdp10 | pdp11 | pj | pjl \ | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \ | pyramid \ | 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 | strongarm \ | tahoe | thumb | tic4x | tic80 | tron \ | ubicom32 \ | v850 | v850e \ | we32k \ | x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \ | z8k | z80) basic_machine=$basic_machine-unknown ;; m6811 | m68hc11 | m6812 | m68hc12 | picochip) # Motorola 68HC11/12. basic_machine=$basic_machine-unknown os=-none ;; m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) ;; ms1) basic_machine=mt-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-* \ | 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-* \ | bfin-* | bs2000-* \ | c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \ | 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-* \ | i*86-* | i860-* | i960-* | ia64-* \ | ip2k-* | iq2000-* \ | 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-* \ | nios-* | nios2-* \ | none-* | np1-* | ns16k-* | ns32k-* \ | orion-* \ | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \ | pyramid-* \ | 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-* | strongarm-* | sv1-* | sx?-* \ | tahoe-* | thumb-* \ | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* | tile-* \ | tron-* \ | ubicom32-* \ | v850-* | v850e-* | vax-* \ | we32k-* \ | x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \ | 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 ;; 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) 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'm not sure what "Sysv32" means. Should this be sysv3.2? 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-/'` ;; mvs) basic_machine=i370-ibm os=-mvs ;; 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 ;; 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) basic_machine=powerpc-unknown ;; ppc-*) 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 ;; 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 ;; tic54x | c54x*) basic_machine=tic54x-unknown os=-coff ;; tic55x | c55x*) basic_machine=tic55x-unknown os=-coff ;; tic6x | c6x*) basic_machine=tic6x-unknown os=-coff ;; tile*) basic_machine=tile-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 ;; 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* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ | -mingw32* | -linux-gnu* | -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 ;; -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 ;; # 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 # This also exists in the configure program, but was not the # default. # os=-sunos4 ;; 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: libbonobo-2.32.1/po/0000775000076400007640000000000011546334245011204 500000000000000libbonobo-2.32.1/po/cy.po0000644000076400007640000004023611373604303012073 00000000000000# libbonobo yn Gymraeg. # Copyright (C) 2003 Free Software Foundation, Inc. # This file is distributed under the same license as the libbonobo package. # Dafydd Harries , 2003. # Rhys Jones , 2003. # Iestyn Pryce , 2009. msgid "" msgstr "" "Project-Id-Version: libbonobo\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2009-12-20 12:31+0000\n" "PO-Revision-Date: 2009-12-20 12:36+0100\n" "Last-Translator: Iestyn Pryce \n" "Language-Team: Welsh \n" "Language: cy\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==2) ? 1 : 0;\n" "X-Generator: Virtaal 0.5.0\n" #: ../activation-server/activation-context-corba.c:530 msgid "Couldn't find which child the server was listed in" msgstr "Methu canfod pa blentyn rhestrwyd y gweinydd ynddi" #: ../activation-server/activation-context-corba.c:822 msgid "Not a valid Activation ID" msgstr "Nid yw'n ID Gweithredu dilys" #: ../activation-server/activation-server-main.c:176 msgid "Directory to read .server files from" msgstr "Y cyfeiriadur i ddarllen ffeiliau .server ohoni" #: ../activation-server/activation-server-main.c:176 msgid "DIRECTORY" msgstr "CYFEIRIADUR" #: ../activation-server/activation-server-main.c:179 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "" "Gweini fel ActicationContext (fel ObjectDirectory yn unig yn rhagosodedig)" #: ../activation-server/activation-server-main.c:183 msgid "File descriptor to write IOR to" msgstr "Disgrifiwr ffeil i ysgrifennu’r IOR iddi" # EFALLAI #: ../activation-server/activation-server-main.c:183 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:186 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "" "Cofrestru fel gweinydd actifadu y defnyddiwr heb cloeon. Rhybudd: mae'r " "opsiwn hwn yn gallu cael sgil effeithiau peryglus ar sefydlogrwydd sesiwn " "presennol y defnyddiwr, a ddylid cael ei ddefnyddio ar gyfer dad-nammu yn " "unig. " #: ../activation-server/activation-server-main.c:194 msgid "Query expression to evaluate" msgstr "Mynegiant ymholiad i'w werthuso" #: ../activation-server/activation-server-main.c:194 msgid "EXPRESSION" msgstr "MYNEGIANT" #: ../activation-server/activation-server-main.c:547 #: ../utils/bonobo-activation-sysconf.c:305 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "" "Defnyddiwch '%s --help' i weld rhestr lawn o'r opsiynau llinell orchymyn " "sydd ar gael.\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "Gwasanaeth CosNaming CORBA." #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "Gwasanaeth enw" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "Gwasanaeth hysbysu" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "Gwasanaeth hysbysu er mwyn cychwyn" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "Dydyn ni ddim yn ymdrin â gwrthrychau shlib mewn proses bell eto" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "Ni ddarllenwyd ffeil cyfluniad Gweithrediad Bonobo yn llwyddiannus. Os " "gwelwch yn dda, gwiriwch ei fod yn ddilys yn: %s" #: ../activation-server/object-directory-load.c:102 msgid "a NULL iid is not valid" msgstr "nid yw iid NULL yn ddilys" #: ../activation-server/object-directory-load.c:106 #, c-format msgid "iid %s has a NULL type" msgstr "mae gan yr iid %s fath NULL" #: ../activation-server/object-directory-load.c:110 #, c-format msgid "iid %s has a NULL location" msgstr "mae gan yr iid %s lleoliad NULL" #: ../activation-server/object-directory-load.c:119 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "nod annilys '%c' yn yr iid '%s'" #: ../activation-server/object-directory-load.c:349 #, c-format msgid "Property '%s' has no value" msgstr "Does dim gwerth gan y priodoledd '%s'" #: ../activation-server/object-directory-load.c:583 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "Methwyd gramadegu dogfen XML %s sydd wedi cam-ffurfio" #: ../activation-server/object-directory-load.c:629 #, c-format msgid "Trying dir %s" msgstr "Yn ceisio'r cyfeiriadur %s" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "Ni roddodd y proses plentyn neges gwall, digwyddodd methiant anhysbys" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "Methwyd darllen o broses plentyn: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, c-format msgid "EOF from child process\n" msgstr "EOF o'r broses plentyn\n" # EFALLAI (forcio?) #: ../bonobo-activation/bonobo-activation-fork-server.c:438 msgid "Couldn't spawn a new process" msgstr "Methu creu proses newydd o'r un bresennol" #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "File descriptor to print IOR on" msgstr "Disgrifiwr ffeil i argraffu'r IOD iddi" #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:399 msgid "IID to activate" msgstr "Yr IID i'w weithredu" #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Prevent registering of server with OAF" msgstr "Rhwystro cofrestru'r gweinydd gydag OAF" #: ../bonobo-activation/bonobo-activation-init.c:409 msgid "Bonobo Activation options:" msgstr "Opsiynau gweithredu Bonobo:" #: ../bonobo-activation/bonobo-activation-init.c:410 msgid "Show Bonobo Activation options" msgstr "Dangos opsiynau gweithredu Bonobo" #: ../bonobo-activation/bonobo-activation-init.c:518 msgid "Bonobo activation options" msgstr "Opsiynau gweithredu Bonobo" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "methodd g_module_open agor `%s' gyda'r gwall `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "Methu canfod y symbol Bonobo_Plugin_info yn `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "Dychwelodd y ffatri `%s' NIL ar gyfer `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Nid oedd y shlib `%s' yn cynnwys `%s'" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "Enw" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "Enw unigryw rhaglen" # EFALLAI #: ../bonobo/bonobo-object.c:929 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:929 msgid "Custom CORBA POA" msgstr "POA CORBA Addasedig" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "Ceisiwyd gweithred ni chynhelir" # EFALLAI (IO?) #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "Gwall IO" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "Gwerth ymresymiad annilys" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "Heb ganfod y gwrthrych" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "Gwall cystrawen yn nisgrifiad gwrthrych" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "Methu gweithredu gwrthrych o ffatri" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "Dim caniatâd i gael mynediad i'r llif" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "Ceisiwyd gweithred llif ni chynhelir" # EFALLAI (IO?) #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "Gwall IO ar y llif" # EFALLAI (IO?) #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "Gwall IO ar storfa" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "Mae'r enw yn bodoli eisoes yn y storfa" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "Ni chanfuwyd y gwrthrych yn y storfa" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "Dim caniatâd i wneud y weithred ar y storfa" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "Ceisiwyd gweithred storfa ni chynhelir" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "Nid yw'r gwrthrych yn llif" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "Nid yw'r gwrthrych yn storfa" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "Nid yw'r storfa yn wag" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "disgrifiad rhyngwyneb defnyddiwr XML annilys" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "llwybr annilys at elfen XML rhyngwyneb defnyddiwr" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "nid yw'r priodoledd rhyngwyneb defnyddiwr gofynnwyd amdani'n bodoli" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "Berf neu orchymyn anhysbys" # EFALLAI (ansensitif?) #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "Mae'r gorchymyn yn ansensitif" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "math data anghywir" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "methu canfod y llif" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "methu canfod y priodoledd" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "mae gan y priodoledd fath annilys" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "gellir darllen y priodoledd yn unig" # EFALLAI (ochr gefn?) #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "methodd yr ochr gefn cronfa data " #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "Methu canfod y rhyngwyneb moniker" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "Rhedodd gweithrediad y moniker allan o amser" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "Gwall cystrawen o fewn moniker" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "Mae gan y moniker flaenosodiad moniker anhysbys" # EFALLAI (huh?!) #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "Gwall gwirio gwallau; dim eithriad" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "Gwall gweithrediad cyffredinol gyda dim disgrifiad" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s" msgstr "Methu datrys, neu estyn '%s'" #: ../bonobo/bonobo-moniker-util.c:247 msgid "Failed to activate object" msgstr "Methu gweithredu'r gwrthrych" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "Eithriad wrth weithredu '%s'" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "Methu gweithredu '%s'" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "Moniker HTTP" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "moniker trin IOR ORB" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "Ffatri Moniker safonol" # EFALLAI (generig?) #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "moniker gweithrediad Oaf generig" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "moniker ymholiad Oaf generig" # EFALLAI (huh?!) #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "moniker 'newydd' ffatri generig" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "moniker eitem generig" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "MonikerExtender llif" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "ffatri gweinydd Echo Bonobo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "rhaglen sampl gweinydd Echo Bonobo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "cydran Echo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "ffatri cydran Echo" #: ../samples/echo/echo-client.c:24 msgid "I could not initialize Bonobo" msgstr "Methais gychwyn Bonobo" #: ../samples/echo/echo-client.c:35 msgid "Could not create an instance of the sample echo component" msgstr "Methu creu enghraifft o'r gydran echo sampl" #: ../samples/echo/echo-client.c:47 #, c-format msgid "An exception occurred '%s'" msgstr "Digwyddodd eithriad '%s'" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Could not save configuration file.\n" msgstr "Methwyd cadw'r ffeil cyfluniad.\n" #: ../utils/bonobo-activation-sysconf.c:84 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "Os gwelwch yn dda, gwiriwch fod gennych ganiatâd ysgrifennu at '%s'\n" #: ../utils/bonobo-activation-sysconf.c:87 #, c-format msgid "Successfully wrote configuration file.\n" msgstr "Ysgrifennwyd y ffeil cyfluniad yn llwyddiannus.\n" #: ../utils/bonobo-activation-sysconf.c:104 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "y ffeil cyfluniad yw:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:146 #, c-format msgid "%s already in configuration file\n" msgstr "mae %s yn y ffeil cyfluniad eisoes\n" #: ../utils/bonobo-activation-sysconf.c:166 #, c-format msgid "there is not a properly structured configuration file\n" msgstr "nid oes ffeil cyfluniad wedi ei strwythuro'n gywir\n" #: ../utils/bonobo-activation-sysconf.c:237 #, c-format msgid "Bonobo-activation configuration file contains:\n" msgstr "Mae ffeil cyfluniad bonobo-activation yn cynnwys:\n" #: ../utils/bonobo-activation-sysconf.c:267 msgid "Directory to remove from configuration file" msgstr "Cyfeiriadur i'w dynnu o'r ffeil cyfluniad" #: ../utils/bonobo-activation-sysconf.c:267 #: ../utils/bonobo-activation-sysconf.c:269 msgid "PATH" msgstr "LLWYBR" #: ../utils/bonobo-activation-sysconf.c:269 msgid "Directory to add to configuration file" msgstr "Cyfeiriadur i'w ychwanegu i'r ffeil cyfluniad" #: ../utils/bonobo-activation-sysconf.c:271 msgid "Display directories in configuration file" msgstr "Dangos cyfeiriaduron yn y ffeil cyfluniad" #: ../utils/bonobo-activation-sysconf.c:273 msgid "Display path to configuration file" msgstr "Dangos y llwybr i'r ffeil cyfluniad" #~ msgid "" #~ "Register as the users' activation server without locking [!] for debugging" #~ msgstr "" #~ "Cofrestru yn weinydd gweithredu'r defnyddwyr heb gloi [!] ar gyfer " #~ "datnamu." #~ msgid "Bonobo Activation" #~ msgstr "Gweithredu Bonobo" # EFALLAI (cychwyn?) #~ msgid "Could not initialize Bonobo" #~ msgstr "Methu cychwyn Bonobo" #~ msgid "Race condition activating server '%s'" #~ msgstr "Amod ras wrth weithredu gweinydd '%s'" #~ msgid "directory path" #~ msgstr "llwybr cyfeiriadur" #~ msgid "Child received signal %u (%s)" #~ msgstr "Derbyniodd blentyn arwydd %u (%s)" libbonobo-2.32.1/po/pa.po0000664000076400007640000004656511436445317012105 00000000000000# translation of libbonobo.HEAD.po to Punjabi # Copyright (C) 2004 THE libbonobo.HEAD'S COPYRIGHT HOLDER # This file is distributed under the same license as the libbonobo.HEAD package. # # Amanpreet Singh Alam , 2004. # Amanpreet Singh Alam , 2005. # A S Alam , 2006. # A S Alam , 2007, 2010. msgid "" msgstr "" "Project-Id-Version: libbonobo.HEAD\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug." "cgi?product=bonobo&component=libbonobo\n" "POT-Creation-Date: 2010-06-21 20:31+0000\n" "PO-Revision-Date: 2010-08-29 09:25+0530\n" "Last-Translator: A S Alam \n" "Language-Team: testLokalize \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: Lokalize 1.0\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #: ../activation-server/activation-context-corba.c:530 msgid "Couldn't find which child the server was listed in" msgstr "ਲੱਭ ਨਹੀਂ ਸਕਿਆ ਚਲਾਇਡ ਕਿਸ ਸਰਵਰ ਉੱਤੇ ਸੂਚੀਬੱਧ ਸੀ" #: ../activation-server/activation-context-corba.c:822 msgid "Not a valid Activation ID" msgstr "ਸਹੀ ਸਰਗਰਮੀ ID ਨਹੀਂ ਹੈ" #: ../activation-server/activation-server-main.c:174 msgid "Directory to read .server files from" msgstr ".server ਫਾਇਲਾਂ ਪੜ੍ਹਨ ਲਈ ਡਾਇਰੈਕਟਰੀ ਇੱਥੋਂ" #: ../activation-server/activation-server-main.c:174 msgid "DIRECTORY" msgstr "ਡਾਇਰੈਕਟਰੀ" #: ../activation-server/activation-server-main.c:177 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "ActivationContext ਦੇ ਤੌਰ ਤੇ ਵੰਡੋ (ਮੂਲ ObjectDirectory ਹੀ)" #: ../activation-server/activation-server-main.c:181 msgid "File descriptor to write IOR to" msgstr "ਫਾਇਲ ਵੇਰਵਾ IOR ਤੇ ਲਿਖਣ ਲਈ" #: ../activation-server/activation-server-main.c:181 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:184 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "" "ਬਿਨਾਂ ਲਾਕ ਦੇ ਯੂਜ਼ਰ ਦੇ ਸਰਗਰਮੀ ਸਰਵਰ ਨਾਲ ਰਜਿਸਟਰ ਕਰੋ। ਸਾਵਧਾਨ: ਇਹ ਚੋਣ ਨਾਲ ਯੂਜ਼ਰ ਦੇ " "ਚੱਲਦੇ ਸ਼ੈਸ਼ਨ ਲਈ ਖਤਰਨਾਕ ਨੁਕਸਾਨ ਹੋ ਸਕਦੇ ਹੋ ਅਤੇ ਸਿਰਫ਼ ਡੀਬੱਗ ਵਾਸਤੇ ਹੀ ਵਰਤਣਾ ਚਾਹੀਦਾ ਹੈ।" #: ../activation-server/activation-server-main.c:192 msgid "Query expression to evaluate" msgstr "ਮੁਲਆਂਕਣ ਕਰਨ ਲਈ ਕਿਊਰੀ ਸਮੀਕਰਨ" #: ../activation-server/activation-server-main.c:192 msgid "EXPRESSION" msgstr "ਸਮੀਕਰਨ" #: ../activation-server/activation-server-main.c:541 #: ../utils/bonobo-activation-sysconf.c:305 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "ਉਪਲੱਬਧ ਕਮਾਂਡ ਲਾਇਨ ਚੋਣਾਂ ਦੀ ਪੂਰੀ ਲਿਸਟ ਵੇਖਣ ਵਾਸਤੇ '%s --help' ਚਲਾਓ।\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "ਕੋਰਬਾ Cos ਨਾਂ ਸੇਵਾ" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "ਨੇਮ ਸਰਵਿਸ" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "ਸੂਚਨਾ ਸਰਵਿਸ" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "ਸਰਗਰਮੀ ਲਈ ਸੂਚਨਾ ਸਰਵਿਸ" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "ਅਸੀ shlib ਇਕਾਈਆ ਨੂੰ ਰਿਮੋਟ ਪਰੋਸੈਸ ਅਜੇ ਸੰਭਾਲਦੇ ਨਹੀਂ" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "ਬੋਨਬੋ ਸਰਗਰਮੀ ਸੰਰਚਨਾ ਫਾਇਲ ਸਫਲਤਾਪੂਰਕ ਪੜ੍ਹੀ ਨਹੀਂ ਗਈ ਹੈ । ਇਸ ਦੀ ਮਿਆਦ ਦੀ ਜਾਂਚ ਕਰੋ ਜੀ: %s" #: ../activation-server/object-directory-load.c:102 msgid "a NULL iid is not valid" msgstr "ਇੱਕ NULL iid ਜਾਇਜ਼ ਨਹੀਂ ਹੈ" #: ../activation-server/object-directory-load.c:106 #, c-format msgid "iid %s has a NULL type" msgstr "iid %s ਦੀ ਕਿਸਮ NULL ਹੈ" #: ../activation-server/object-directory-load.c:110 #, c-format msgid "iid %s has a NULL location" msgstr "iid %s ਦਾ ਟਿਕਾਣਾ NULL ਹੈ" #: ../activation-server/object-directory-load.c:119 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "ਗਲਤ ਅੱਖਰ '%c' ਵਿੱਚ iid '%s'" #: ../activation-server/object-directory-load.c:349 #, c-format msgid "Property '%s' has no value" msgstr "ਵਿਸ਼ੇਸ਼ਤਾ '%s' ਦਾ ਕੋਈ ਮੁੱਲ ਨਹੀਂ ਹੈ" #: ../activation-server/object-directory-load.c:583 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "ਨਕਾਰਾ ਫਾਰਮੈਟਡ XML ਦਸਤਾਵੇਜ਼ %s ਨੂੰ ਪਾਰਸ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ" #: ../activation-server/object-directory-load.c:629 #, c-format msgid "Trying dir %s" msgstr "ਡਾਇ %s ਕੋਸ਼ਿਸ ਅਧੀਨ ਹੈ" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "ਚਲਾਇਡ ਪਰੋਸੈਸ ਨੇ ਗਲਤੀ ਸੁਨੇਹਾ ਨਹੀਂ ਦਿੱਤੲ, ਅਣਜਾਣੀ ਗਲਤੀ ਆਈ ਹੈ" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "ਚਲਾਇਡ ਪਰੋਸੈਸ ਤੋ ਪੜ੍ਹਨ ਵਿੱਚ ਅਸਫ਼ਲ: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, c-format msgid "EOF from child process\n" msgstr "ਚਲਾਈਡ ਪਰੋਸੈਸ ਤੋਂ EOF\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:438 msgid "Couldn't spawn a new process" msgstr "ਨਵੇਂ ਪਰੋਸੈਸ ਨੂੰ ਸਵੈਪ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਿਆ" #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "File descriptor to print IOR on" msgstr "ਫਾਇਲ ਵੇਰਵਾ, IOR ਛਾਪਣ ਲਈ" #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:399 msgid "IID to activate" msgstr "ਸਰਗਰਮ ਕਰਨ ਲਈ IID" #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Prevent registering of server with OAF" msgstr "OAF ਨਾਲ ਸਰਵਰ ਨੂੰ ਸੂਚੀਬੱਧ ਹੋਣ ਤੋਂ ਟਾਲਿਆ ਜਾ ਰਿਹਾ ਹੈ" #: ../bonobo-activation/bonobo-activation-init.c:409 msgid "Bonobo Activation options:" msgstr "ਬੋਨਬੋ ਸਰਗਰਮੀ ਚੋਣ:" #: ../bonobo-activation/bonobo-activation-init.c:410 msgid "Show Bonobo Activation options" msgstr "ਬੋਨਬੋ ਸਰਗਰਮੀ ਚੋਣ ਵੇਖੋ" #: ../bonobo-activation/bonobo-activation-init.c:518 msgid "Bonobo activation options" msgstr "ਬੋਨਬੋ ਸਰਗਰਮੀ ਚੋਣ" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "`%s' ਦਾ g_module_open `%s' ਨਾਲ ਅਸਫ਼ਲ" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "`%s' ਵਿੱਚ ਬੋਨਬੋ-ਪਲੱਗ-ਇਨ ਜਾਣਕਾਰੀ ਨਿਸ਼ਾਨ ਨਹੀਂ ਲੱਭਿਆ ਹੈ" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "ਫੈਕਟਰੀ `%s' ਨੇ `%s' ਲਈ NIL ਵਾਪਸ ਕੀਤਾ ਹੈ" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Shlib `%s' ਕੋਲ `%s' ਨਹੀਂ ਹੈ" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "ਨਾਂ" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "ਐਪਲੀਕੇਸ਼ਨ ਵਿਲੱਖਣ ਨਾਂ" #: ../bonobo/bonobo-object.c:929 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:929 msgid "Custom CORBA POA" msgstr "ਕਸਟਮ ਕੋਰਬਾ POA" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "ਬਿਨ-ਸਹਾਇਕ ਐਕਸ਼ਨ ਲਈ ਕੋਸ਼ਿਸ" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "IO ਗਲਤੀ" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "ਗਲਤ ਆਰਗੂਮੈਂਟ ਮੁੱਲ" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "ਆਬਜੈਕਟ ਨਹੀਂ ਲੱਭੀ" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "ਆਬਜੈਕਟ ਵੇਰਵੇ ਵਿੱਚ ਸੰਟੇਕਸ ਗਲਤੀ ਹੈ" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "ਫੈਕਟਰੀ ਵਿੱਚੋ ਇਕਾਈ ਸਰਗਰਮ ਨਹੀਂ ਕਰ ਸਕਿਆ" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "ਸਟਰੀਮ ਲਈ ਪਹੁੰਚ ਦੀ ਮਨਜ਼ੂਰੀ ਨਹੀਂ" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "ਗ਼ੈਰ-ਸਹਾਇਕ ਸਟਰੀਮ ਲਈ ਕੋਸ਼ਿਸ" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "ਸਟਰੀਮ 'ਤੇ IO ਗਲਤੀ" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "ਸਟੋਰੇਜ਼ 'ਤੇ IO ਗਲਤੀ" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "ਨਾਂ ਸਟੋਰੇਜ਼ 'ਤੇ ਪਹਿਲਾਂ ਹੀ ਮੌਜੂਦ ਹੈ" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "ਸਟੋਰੇਜ਼ ਵਿੱਚ ਇਕਾਈ ਨਹੀਂ ਲੱਭੀ" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "ਸਟੋਰੇਜ਼ ਤੇ ਕਾਰਵਾਈ ਕਰਨ ਦੀ ਮਨਜ਼ੂਰੀ ਨਹੀਂ ਹੈ" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "ਬਿਨ-ਸਹਾਇਤਾ ਪ੍ਰਾਪਤ ਸਟੋਰੇਜ਼ ਕਾਰਵਾਈ ਲਈ ਕੋਸ਼ਿਸ" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "ਸਟਰੀਮ ਵਿੱਚ ਇਕਾਈ ਨਹੀਂ ਹੈ" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "ਸਟੋਰੇਜ਼ ਵਿੱਚ ਇਕਾਈ ਨਹੀਂ" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "ਸਟੋਰੇਜ਼ ਖਾਲੀ ਨਹੀਂ ਹੈ" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "malformed ਯੂਜਰ ਇੰਟਰਫੇਸ XML ਵੇਰਵਾ" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "XML ਯੂਜਰ ਇੰਟਰਫੇਸ ਇਕਾਈ ਲਈ ਰਾਹ ਗਲਤ ਹੈ" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "ਲੋਡ਼ੀਦਾ UI ਗੁਣ ਮੌਜੂਦ ਨਹੀਂ ਹੈ" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "ਅਣਜਾਣ ਕਮਾਂਡ ਜਾਂ ਸ਼ਬਦ" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "ਕਮਾਂਡ ਸੰਵੇਦਨਸ਼ੀਲ ਨਹੀਂ ਹੈ" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "ਗਲਤ ਡਾਟਾ-ਕਿਸਮ" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "ਸਟਰੀਮ ਨਹੀਂ ਲੱਭੀ" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "ਵਿਸ਼ੇਸ਼ਤਾ ਨਹੀਂ ਲੱਭੀ" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "ਵਿਸ਼ੇਸ਼ਤਾ ਦੀ ਕਿਸਮ ਗਲਤ ਹੈ" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "ਵਿਸ਼ੇਸ਼ਤਾ ਸਿਰਫ ਪੜ੍ਹਨ ਲਈ ਹੈ" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "ਸੰਰਚਨਾ ਡਾਟਾਬੇਸ ਬੈਕਐਂਡ ਅਸਫ਼ਲ" #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "ਮਾਨੀਕਰ ਇੰਟਰਫੇਸ ਨਹੀਂ ਲੱਭਿਆ" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "ਮਾਨੀਕਰ ਸਰਗਰਮੀ ਸਮਾਂ-ਸਮਾਪਤ" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "ਮਾਨੀਕਰ ਵਿੱਚ ਸੰਟੇਕਸ ਗਲਤੀ" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "ਮਾਨੀਕਰ ਵਿੱਚ ਅਣਜਾਣ ਮਾਨੀਕਰ ਅਗੇਤਰ ਹੈ" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "ਗਲਤੀ ਜਾਂਚਣ ਦੌਰਾਨ ਗਲਤੀ, ਕੋਈ ਵੱਖਰਾ ਨਹੀਂ" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "ਆਮ ਸਰਗਰਮੀ ਗਲਤੀ, ਬਿਨਾਂ ਵੇਰਵੇ ਦੇ" #: ../bonobo/bonobo-moniker.c:342 #, c-format #| msgid "Failed to resolve, or extend '%s" msgid "Failed to resolve, or extend '%s'" msgstr "ਹੱਲ ਕਰਨ ਵਿੱਚ ਫੇਲ੍ਹ, ਜਾਂ ਵਾਧਾ '%s'" #: ../bonobo/bonobo-moniker-util.c:247 msgid "Failed to activate object" msgstr "ਇਕਾਈ ਸਰਗਰਮ ਕਰਨ ਲਈ ਫੇਲ੍ਹ" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "ਸਰਗਰਮੀ '%s' ਅਪਵਾਦ" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr " '%s' ਨੂੰ ਸਰਗਰਮ ਲਈ ਫੇਲ੍ਹ" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "HTTP ਮਾਨੀਕਰ" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "ORB IOR ਹੈਂਡਲਿੰਗ ਮਾਨੀਕਰ" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "ਮਿਆਰੀ ਮਾਨੀਕਰ ਫੈਕਟਰੀ" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "ਸਧਾਰਨ Oaf ਸਰਗਰਮੀ ਮਾਨੀਕਰ" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "ਸਧਾਰਨ Oaf ਕਿਊਰੀ ਮਾਨੀਕਰ" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "ਸਧਾਰਨ ਫੈਕਟਰੀ 'ਨਵਾਂ' ਮਾਨੀਕਰ" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "ਸਧਾਰਨ ਇਕਾਈ ਮਾਨੀਕਰ" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "ਸਟਰੀਮ ਮਾਨੀਕਰ-ਵਧਾਰਾ" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "ਬੋਨਬੋ ਈਚੋ ਸਰਵਰ ਫੈਕਟਰੀ" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "ਬੋਨਬੋ ਈਚੋ ਸਰਵਰ ਸਧਾਰਨ ਪਰੋਗਰਾਮ" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "ਈਚੋ ਭਾਗ" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "ਈਚੋ ਭਾਗ ਫੈਕਟਰੀ" #: ../samples/echo/echo-client.c:24 msgid "I could not initialize Bonobo" msgstr "ਮੈਂ ਬੋਨਬੋ ਨੂੰ ਆਰੰਭ ਨਹੀਂ ਕਰ ਸਕਿਆ" #: ../samples/echo/echo-client.c:35 msgid "Could not create an instance of the sample echo component" msgstr "ਸਧਾਰਨ ਈਚੋ ਭਾਗ ਦਾ ਮੌਕਾ ਨਹੀਂ ਬਣਾ ਸਕਿਆ" #: ../samples/echo/echo-client.c:47 #, c-format msgid "An exception occurred '%s'" msgstr "ਇੱਕ ਅਪਵਾਦ ਆਇਆ '%s'" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Could not save configuration file.\n" msgstr "ਸੰਰਚਨਾ ਫਾਇਲ ਨੂੰ ਸੰਭਾਲ ਨਹੀਂ ਸਕਿਆ।\n" #: ../utils/bonobo-activation-sysconf.c:84 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "ਜਾਂਚ ਲਵੋ ਜੀ ਕਿ ਤੁਹਾਨੂੰ '%s' 'ਤੇ ਲਿਖਣ ਦਾ ਅਧਿਕਾਰ ਹੈ।\n" #: ../utils/bonobo-activation-sysconf.c:87 #, c-format msgid "Successfully wrote configuration file.\n" msgstr "ਸੰਰਚਨਾ ਫਾਇਲ ਨੂੰ ਸਫ਼ਲਤਾਪੂਰਕ ਲਿਖਿਆ ਗਿਆ ਹੈ।\n" #: ../utils/bonobo-activation-sysconf.c:104 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "ਸੰਰਚਨਾ ਫਾਇਲ ਹੈ:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:146 #, c-format msgid "%s already in configuration file\n" msgstr "ਸੰਰਚਨਾ ਫਾਇਲ ਵਿੱਚ %s ਪਹਿਲਾਂ ਹੀ ਮੌਜੂਦ ਹੈ\n" #: ../utils/bonobo-activation-sysconf.c:166 #, c-format msgid "there is not a properly structured configuration file\n" msgstr "ਇਹ ਸਹੀ ਢਾਂਚੇ ਨਾਲ ਬਣੀ ਸੰਰਚਨਾ ਫਾਇਲ ਨਹੀਂ ਹੈ।\n" #: ../utils/bonobo-activation-sysconf.c:237 #, c-format msgid "Bonobo-activation configuration file contains:\n" msgstr "ਬੋਨਬੋ-ਸਰਗਰਮੀ ਸੰਰਚਨਾ ਫਾਇਲ ਵਿੱਚ:\n" #: ../utils/bonobo-activation-sysconf.c:267 msgid "Directory to remove from configuration file" msgstr "ਸੰਰਚਨਾ ਫਾਇਲ ਵਿੱਚੋਂ ਹਟਾਉਣ ਲਈ ਡਾਇਰੈਕਟਰੀ" #: ../utils/bonobo-activation-sysconf.c:267 #: ../utils/bonobo-activation-sysconf.c:269 msgid "PATH" msgstr "ਮਾਰਗ" #: ../utils/bonobo-activation-sysconf.c:269 msgid "Directory to add to configuration file" msgstr "ਸੰਰਚਨਾ ਫਾਇਲ ਵਿੱਚ ਜੋਡ਼ਨ ਲਈ ਡਾਇਰੈਕਟਰੀ" #: ../utils/bonobo-activation-sysconf.c:271 msgid "Display directories in configuration file" msgstr "ਸੰਰਚਨਾ ਫਾਇਲ ਵਿੱਚ ਡਾਇਰੈਕਟਰੀ ਵੇਖੋ" #: ../utils/bonobo-activation-sysconf.c:273 msgid "Display path to configuration file" msgstr "ਸੰਰਚਨਾ ਫਾਇਲ ਲਈ ਰਾਹ ਵੇਖੋ" #~ msgid "Could not initialize Bonobo" #~ msgstr "ਬੋਨਬੋ ਆਰੰਭ ਨਹੀਂ ਕਰ ਸਕਿਆ" libbonobo-2.32.1/po/POTFILES.in0000644000076400007640000000153611173072711012675 00000000000000activation-server/activation-context-corba.c activation-server/activation-server-main.c activation-server/Bonobo_CosNaming_NamingContext.server.in.in activation-server/object-directory-activate.c activation-server/object-directory-config-file.c activation-server/object-directory-corba.c activation-server/object-directory-load.c bonobo-activation/bonobo-activation-fork-server.c bonobo-activation/bonobo-activation-get-language-list.c bonobo-activation/bonobo-activation-init.c bonobo-activation/bonobo-activation-shlib.c bonobo/bonobo-application.c bonobo/bonobo-object.c bonobo/bonobo-exception.c bonobo/bonobo-generic-factory.h bonobo/bonobo-moniker.c bonobo/bonobo-moniker-util.c monikers/bonobo-moniker-oaf.c monikers/Bonobo_Moniker_std.server.in.in samples/echo/Bonobo_Sample_Echo.server.in.in samples/echo/echo-client.c utils/bonobo-activation-sysconf.c libbonobo-2.32.1/po/hu.po0000664000076400007640000004023111436275736012107 00000000000000# Hungarian translation of libbonobo. # Copyright (C) 2002, 2003, 2004, 2006, 2007, 2008, 2010 Free Software Foundation, Inc. # This file is distributed under the same license as the libbonobo package. # # Emese Kovacs , 2002, 2003. # Andras Timar , 2003, 2004. # Laszlo Dvornik , 2004. # Gabor Kelemen , 2005, 2006, 2007, 2008. # Gabor Kelemen , 2010. msgid "" msgstr "" "Project-Id-Version: libbonobo\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2010-08-26 04:10+0200\n" "PO-Revision-Date: 2010-08-26 04:10+0200\n" "Last-Translator: Gabor Kelemen \n" "Language-Team: Hungarian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.11.4\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #: ../activation-server/activation-context-corba.c:530 msgid "Couldn't find which child the server was listed in" msgstr "Nem található, hogy melyik gyermekben van felsorolva a kiszolgáló" #: ../activation-server/activation-context-corba.c:822 msgid "Not a valid Activation ID" msgstr "Nem érvényes aktivációs azonosító" #: ../activation-server/activation-server-main.c:174 msgid "Directory to read .server files from" msgstr "A könyvtár, amelyből a .server fájlokat kell olvasni" #: ../activation-server/activation-server-main.c:174 msgid "DIRECTORY" msgstr "KÖNYVTÁR" #: ../activation-server/activation-server-main.c:177 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "" "Szolgáljon ActivationContext-ként (az alapértelmezett csak az " "ObjectDirectory)" #: ../activation-server/activation-server-main.c:181 msgid "File descriptor to write IOR to" msgstr "Fájlleíró, amelybe az IOR-t kell írni" #: ../activation-server/activation-server-main.c:181 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:184 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "" "Regisztráció a felhasználó aktivációs kiszolgálójaként zárolás nélkül. " "Figyelmeztetés: ez a beállítás veszélyes mellékhatásokkal lehet a " "felhasználó futó munkamenetének stabilitására és csak hibakeresési célokra " "használandó" #: ../activation-server/activation-server-main.c:192 msgid "Query expression to evaluate" msgstr "Kiértékelendő lekérdező kifejezés" #: ../activation-server/activation-server-main.c:192 msgid "EXPRESSION" msgstr "KIFEJEZÉS" #: ../activation-server/activation-server-main.c:541 #: ../utils/bonobo-activation-sysconf.c:305 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "" "Adja ki a(z) „%s --help” parancsot az elérhető parancssori kapcsolók teljes " "listájáért.\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "CORBA CosNaming szolgáltatás." #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "Névszolgáltatás" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "Értesítési szolgáltatás" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "Értesítési szolgáltatás az aktivációhoz" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "" "Jelenleg még nem kezeljük a távoli folyamatok shlib objektumainak aktiválását" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "A Bonobo Activation konfigurációs fájlját nem sikerült beolvasni. " "Ellenőrizze, hogy érvényes-e: %s" #: ../activation-server/object-directory-load.c:102 msgid "a NULL iid is not valid" msgstr "egy NULL iid nem érvényes" #: ../activation-server/object-directory-load.c:106 #, c-format msgid "iid %s has a NULL type" msgstr "%s iid-nek NULL típusa van" #: ../activation-server/object-directory-load.c:110 #, c-format msgid "iid %s has a NULL location" msgstr "%s iid-nek NULL helye van" #: ../activation-server/object-directory-load.c:119 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "érvénytelen „%c” karakter a(z) „%s” iid-ben" #: ../activation-server/object-directory-load.c:349 #, c-format msgid "Property '%s' has no value" msgstr "A(z) „%s” tulajdonságnak nincs értéke" #: ../activation-server/object-directory-load.c:583 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "Nem lehet értelmezni a rosszul formázott %s XML-dokumentumot" #: ../activation-server/object-directory-load.c:629 #, c-format msgid "Trying dir %s" msgstr "Próba: %s könyvtár" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "A gyermekfolyamat nem adott hibaüzenetet, ismeretlen hiba történt" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "Nem sikerült olvasni a gyermekfolyamatból: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, c-format msgid "EOF from child process\n" msgstr "EOF a gyermekfolyamatból\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:438 msgid "Couldn't spawn a new process" msgstr "Nem lehet új folyamatot indítani" #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "File descriptor to print IOR on" msgstr "A fájlleíró, amelyre az IOR-t kell nyomtatni" #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:399 msgid "IID to activate" msgstr "Az aktiválandó IID" #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Prevent registering of server with OAF" msgstr "A kiszolgáló OAF-regisztrálásának megakadályozása" #: ../bonobo-activation/bonobo-activation-init.c:409 msgid "Bonobo Activation options:" msgstr "Bonobo aktiválás beállításai:" #: ../bonobo-activation/bonobo-activation-init.c:410 msgid "Show Bonobo Activation options" msgstr "Bonobo-aktiválás beállításainak megjelenítése" #: ../bonobo-activation/bonobo-activation-init.c:518 msgid "Bonobo activation options" msgstr "Bonobo-aktiválás beállításai" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "„%s” g_module_open művelete sikertelen: „%s”" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "Nem található a Bonobo_Plugin_info szimbólum a következőben: „%s”" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "A(z) „%s” factory NIL-t adott vissza erre: „%s”" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "A(z) „%s” shlib nem tartalmazta a következőt: „%s”" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "Név" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "Az alkalmazás egyedi neve" #: ../bonobo/bonobo-object.c:929 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:929 msgid "Custom CORBA POA" msgstr "Egyéni CORBA POA" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "Nem támogatott műveletet kísérelt meg" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "IO-hiba" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "Érvénytelen argumentumérték" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "Az objektum nem található" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "Szintaktikai hiba az objektum leírásban" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "Nem lehet aktiválni az objektumot a factory-ból" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "Nincs jogosultsága a folyam hozzáféréséhez" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "Nem támogatott folyamműveletet kísérelt meg" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "IO-hiba a folyamon" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "IO hiba a tárolón" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "Már van ilyen név a tárolóban" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "Az objektum nem található a tárolóban" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "Nincs jogosultsága művelet végzéséhez a tárolón" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "Nem támogatott tárolóműveletet kísérelt meg" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "Az objektum nem folyam" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "Az objektum nem tároló" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "A tároló nem üres" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "hibás felhasználói felület leíró XML" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "érvénytelen elérési útvonal az XML felhasználói felület elemhez" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "a kért UI attribútum nem létezett" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "Ismeretlen parancs vagy ige" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "A parancs nem érzékeny" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "helytelen adattípus" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "a folyam nem található" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "a tulajdonság nem található" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "a tulajdonság típusa érvénytelen" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "a tulajdonság csak olvasható" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "az adatbázis-háttérprogram beállítása sikertelen " #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "A Moniker-felület nem található" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "A Moniker aktiválása időtúllépés miatt sikertelen" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "Szintaktikai hiba a moniker-ben" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "A Moniker-nek ismeretlen a moniker előtagja" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "Hibaellenőrzési hiba; nincs kivétel" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "Általános aktiválási hiba, leírás nélkül" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s'" msgstr "„%s” feloldása vagy kiterjesztése sikertelen" #: ../bonobo/bonobo-moniker-util.c:247 msgid "Failed to activate object" msgstr "Nem sikerült aktiválni az objektumot" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "Kivétel „%s” aktiválásakor" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "A következő aktiválása meghiúsult: „%s”" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "HTTP Moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "ORB IOR kezelő moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "Szabványos Moniker factory" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "általános Oaf aktiváló moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "általános Oaf lekérdező moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "általános factory „new” moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "általános elem moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "folyam MonikerExtender" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Bonobo Echo-kiszolgáló factory" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Bonobo Echo-kiszolgáló példaprogram" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Echo komponens" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Echo komponens factory" #: ../samples/echo/echo-client.c:24 msgid "I could not initialize Bonobo" msgstr "A Bonobo inicializálása sikertelen" #: ../samples/echo/echo-client.c:35 msgid "Could not create an instance of the sample echo component" msgstr "Nem lehet létrehozni az echo példaprogramból egy példányt sem" #: ../samples/echo/echo-client.c:47 #, c-format msgid "An exception occurred '%s'" msgstr "Kivétel történt: „%s”" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Could not save configuration file.\n" msgstr "Nem lehet menteni a konfigurációs fájlt.\n" #: ../utils/bonobo-activation-sysconf.c:84 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "Ellenőrizze, hogy van-e jogosultsága „%s” írásához.\n" #: ../utils/bonobo-activation-sysconf.c:87 #, c-format msgid "Successfully wrote configuration file.\n" msgstr "A konfigurációs fájl kiírása sikeres volt.\n" #: ../utils/bonobo-activation-sysconf.c:104 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "a konfigurációs fájl:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:146 #, c-format msgid "%s already in configuration file\n" msgstr "%s már benne van a konfigurációs fájlban\n" #: ../utils/bonobo-activation-sysconf.c:166 #, c-format msgid "there is not a properly structured configuration file\n" msgstr "nincs megfelelően strukturált konfigurációs fájl\n" #: ../utils/bonobo-activation-sysconf.c:237 #, c-format msgid "Bonobo-activation configuration file contains:\n" msgstr "A Bonobo-activation konfigurációs fájlja tartalmazza:\n" #: ../utils/bonobo-activation-sysconf.c:267 msgid "Directory to remove from configuration file" msgstr "A konfigurációs fájlból eltávolítandó könyvtár" #: ../utils/bonobo-activation-sysconf.c:267 #: ../utils/bonobo-activation-sysconf.c:269 msgid "PATH" msgstr "ÚTVONAL" #: ../utils/bonobo-activation-sysconf.c:269 msgid "Directory to add to configuration file" msgstr "A konfigurációs fájlhoz hozzáadandó könyvtár" #: ../utils/bonobo-activation-sysconf.c:271 msgid "Display directories in configuration file" msgstr "Könyvtárak megjelenítése a konfigurációs fájlban" #: ../utils/bonobo-activation-sysconf.c:273 msgid "Display path to configuration file" msgstr "Konfigurációs fájl elérési útjának megjelenítése" libbonobo-2.32.1/po/ja.po0000664000076400007640000004161111447711412012054 00000000000000# libbonobo ja.po # Copyright (C) 1999-2007,2010 Free Software Foundation, Inc. # Yukihiro Nakai , 1999. # Takayuki KUSANO , 1999-2002, 2010. # Takeshi Aihana , 2000,2003-2007. # KAMAGASAKO Masatoshi , 2003. # msgid "" msgstr "" "Project-Id-Version: libbonobo master\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?" "product=bonobo&component=libbonobo\n" "POT-Creation-Date: 2010-09-01 03:12+0000\n" "PO-Revision-Date: 2010-09-13 23:53+0900\n" "Last-Translator: Takayuki KUSANO \n" "Language-Team: Japanese \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../activation-server/activation-context-corba.c:530 msgid "Couldn't find which child the server was listed in" msgstr "どの子プロセスでサーバが登録されたか分かりませんでした" #: ../activation-server/activation-context-corba.c:822 msgid "Not a valid Activation ID" msgstr "活性化 ID が正しくありません" #: ../activation-server/activation-server-main.c:174 msgid "Directory to read .server files from" msgstr ".server ファイルを読み込むディレクトリ" #: ../activation-server/activation-server-main.c:174 msgid "DIRECTORY" msgstr "DIRECTORY" #: ../activation-server/activation-server-main.c:177 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "" "ActivationContextとして振る舞う (デフォルトでは ObjectDirectory としてのみ)" #: ../activation-server/activation-server-main.c:181 msgid "File descriptor to write IOR to" msgstr "IORを書き込むファイル・ディスクリプタ" #: ../activation-server/activation-server-main.c:181 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:184 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "" "ロックせずにユーザの活性化サーバを登録する (警告: このオプションはユーザが実" "行しているセッションの安定性の面から見るといくつか危険な側面を持っているの" "で、デバッグを行う時にのみ使用すること)" #: ../activation-server/activation-server-main.c:192 msgid "Query expression to evaluate" msgstr "評価する問い合わせの式" #: ../activation-server/activation-server-main.c:192 msgid "EXPRESSION" msgstr "EXPRESSION" #: ../activation-server/activation-server-main.c:541 #: ../utils/bonobo-activation-sysconf.c:305 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "" "'%s --help' すると、利用可能なすべてのコマンドライン引数の一覧が表示されま" "す\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "CORBA CosNaming サービス" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "ネーム・サービス" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "通知サービス" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "活性化の通知サービス" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "" "リモート・プロセスの shlib オブジェクトの活性化は未だ実装されていません" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "Bonobo Activatoin 設定ファイルの読み込みに失敗しました (妥当なものか確認して" "ください : %s)" #: ../activation-server/object-directory-load.c:102 msgid "a NULL iid is not valid" msgstr "NULL の iid は有効ではありません" #: ../activation-server/object-directory-load.c:106 #, c-format msgid "iid %s has a NULL type" msgstr "iid %s の型が NULL です" #: ../activation-server/object-directory-load.c:110 #, c-format msgid "iid %s has a NULL location" msgstr "iid %s の場所が NULL です" #: ../activation-server/object-directory-load.c:119 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "不正な文字 '%c' が iid '%s' の中にあります" #: ../activation-server/object-directory-load.c:349 #, c-format msgid "Property '%s' has no value" msgstr "プロパティ '%s' には値がありません" #: ../activation-server/object-directory-load.c:583 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "おかしな型式の XML ドキュメント %s を解析できませんでした" #: ../activation-server/object-directory-load.c:629 #, c-format msgid "Trying dir %s" msgstr "ディレクトリ %s の試行中" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "" "子プロセスがエラーメッセージを出力しませんでした (不明なエラーが発生しました)" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "子プロセスからの読み込みに失敗: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, c-format msgid "EOF from child process\n" msgstr "子プロセスからの EOF\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:438 msgid "Couldn't spawn a new process" msgstr "新規プロセスを生成できませんでした" #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "File descriptor to print IOR on" msgstr "IOR の出力先のファイル・ディスクリプタ" #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:399 msgid "IID to activate" msgstr "IID の活性化" #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Prevent registering of server with OAF" msgstr "OAF でサーバ登録の禁止" #: ../bonobo-activation/bonobo-activation-init.c:409 msgid "Bonobo Activation options:" msgstr "Bonobo 活性化オプション:" #: ../bonobo-activation/bonobo-activation-init.c:410 msgid "Show Bonobo Activation options" msgstr "Bonobo 活性化オプションを表示する" #: ../bonobo-activation/bonobo-activation-init.c:518 msgid "Bonobo activation options" msgstr "Bonobo 活性化オプション" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "'%s' の g_module_open に失敗: '%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "'%s' でシンボル Bonobo_Plugin_info を発見できません" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "ファクトリ '%s' が '%s' に NIL を返しました" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Shlib '%s' は '%s' を含んでいませんでした" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "名称" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "アプリケーション固有の名前" #: ../bonobo/bonobo-object.c:929 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:929 msgid "Custom CORBA POA" msgstr "カスタム CORBA POA" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "サポートされてないアクションが試みられました" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "I/O エラー" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "無効な引数の値です" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "オブジェクトが見つかりません" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "オブジェクトの記述に文法エラーがあります" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "ファクトリからオブジェクトを活性化できません" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "ストリームヘアクセスする許可がありません" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "サポートされてないストリームのアクションが試みられました" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "ストリームで I/O エラー" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "ストレージで I/O エラー" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "ストレージに名前が既に存在しています" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "ストレージにオブジェクトがありません" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "ストレージへの操作が許可されていません" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "サポートされてないストレージのアクションが試みられました" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "オブジェクトはストリームではありません" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "オブジェクトはストレージではありません" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "ストレージが空ではありません" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "ユーザインターフェイスを記述した XML が壊れています" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "XML のユーザーインターフェイス要素へのパスが無効です" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "要求された UI の属性が存在しません" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "不明なコマンドまたは動詞です" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "コマンドは無反応です" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "データ型が正しくありません" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "ストリームが見つかりません" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "プロパティが見つかりません" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "プロパティが無効な型です" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "プロパティは読み出し専用です" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "設定データベースのバックエンドでエラー" #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "モニカのインタフェースが見つかりません" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "モニカの活性化がタイムアウト" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "モニカに文法エラー" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "モニカに不明なモニカ・プリフィックスがあります" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "エラーをチェックする際にエラー: 例外は発生していません" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "一般的な活性化エラー (説明なし)" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s'" msgstr "'%s' の解決、あるいは拡張に失敗しました" #: ../bonobo/bonobo-moniker-util.c:247 msgid "Failed to activate object" msgstr "オブジェクトの活性化に失敗しました" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "'%s' 活性化での例外" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "'%s' の活性化に失敗" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "HTTP モニカ" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "ORB IRO 操作モニカ" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "標準モニカのファクトリ" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "Oaf 活性化汎用モニカ" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "Oaf 問い合わせ汎用モニカ" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "汎用 'new' モニカのファクトリ" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "アイテム汎用モニカ" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "ストリームの MonikerExtender" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Bonobo Echo サーバ・ファクトリ" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Bonobo Echo サーバ・サンプル・プログラム" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Echo コンポーネント" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Echo コンポーネント・ファクトリ" #: ../samples/echo/echo-client.c:24 msgid "I could not initialize Bonobo" msgstr "Bonobo を初期化できません" #: ../samples/echo/echo-client.c:35 msgid "Could not create an instance of the sample echo component" msgstr "サンプルの Echo コンポーネントのインスタンスを作成できませんでした" #: ../samples/echo/echo-client.c:47 #, c-format msgid "An exception occurred '%s'" msgstr "例外が発生しました: '%s'" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Could not save configuration file.\n" msgstr "設定ファイルを保存できませんでした\n" #: ../utils/bonobo-activation-sysconf.c:84 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "'%s' への書き込み権限を持っているか確認してください\n" #: ../utils/bonobo-activation-sysconf.c:87 #, c-format msgid "Successfully wrote configuration file.\n" msgstr "設定ファイルの書き込みが完了しました\n" #: ../utils/bonobo-activation-sysconf.c:104 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "設定ファイル:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:146 #, c-format msgid "%s already in configuration file\n" msgstr "%s は設定ファイルの中に既に存在しています\n" #: ../utils/bonobo-activation-sysconf.c:166 #, c-format msgid "there is not a properly structured configuration file\n" msgstr "正しく構造化された設定ファイルがありません\n" #: ../utils/bonobo-activation-sysconf.c:237 #, c-format msgid "Bonobo-activation configuration file contains:\n" msgstr "Bonobo activation 設定ファイルの内容:\n" #: ../utils/bonobo-activation-sysconf.c:267 msgid "Directory to remove from configuration file" msgstr "設定ファイルから削除するディレクトリ" #: ../utils/bonobo-activation-sysconf.c:267 #: ../utils/bonobo-activation-sysconf.c:269 msgid "PATH" msgstr "PATH" #: ../utils/bonobo-activation-sysconf.c:269 msgid "Directory to add to configuration file" msgstr "設定ファイルへ追加するディレクトリ" #: ../utils/bonobo-activation-sysconf.c:271 msgid "Display directories in configuration file" msgstr "設定ファイル中のディレクトリの表示" #: ../utils/bonobo-activation-sysconf.c:273 msgid "Display path to configuration file" msgstr "設定ファイルのパスを表示" #~ msgid "Could not initialize Bonobo" #~ msgstr "Bonobo を初期化できませんでした" libbonobo-2.32.1/po/hr.po0000644000076400007640000003671411173072711012077 00000000000000# Translation of libbonobo to Croatiann # Copyright (C) Croatiann team # Translators: Automatski Prijevod <>,Robert Sedak , msgid "" msgstr "" "Project-Id-Version: libbonobo 0\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2008-09-09 15:54+0200\n" "PO-Revision-Date: 2008-03-11 00:34+0000\n" "Last-Translator: Launchpad Translations Administrators \n" "Language-Team: Croatian \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" "X-Launchpad-Export-Date: 2008-05-28 12:24+0000\n" "X-Generator: Launchpad (build Unknown)\n" #: ../activation-server/activation-context-corba.c:530 msgid "Couldn't find which child the server was listed in" msgstr "Ne mogu pronaći koji je nasljedni proces poslužitelj slušao" #: ../activation-server/activation-context-corba.c:822 msgid "Not a valid Activation ID" msgstr "Neispravan aktivacijski ID" #: ../activation-server/activation-server-main.c:166 msgid "Directory to read .server files from" msgstr "Mapa iz koje će se čitati .server datoteke" #: ../activation-server/activation-server-main.c:166 msgid "DIRECTORY" msgstr "DIREKTORIJ" #: ../activation-server/activation-server-main.c:169 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "" "Poslužuje kao ActivationContext (uobičajeno je samo kako ObjectDirectory)" #: ../activation-server/activation-server-main.c:173 msgid "File descriptor to write IOR to" msgstr "Opis datoteke za pisanje IOR na" #: ../activation-server/activation-server-main.c:173 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:176 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "" "Registrira se kao poslužitelj korisnika bez zaključavanja. POZOR: " "ova opcija može imati opasne popratne efekte na stabilnost korisnikove " "sesije, te se treba koristiti samo za potrebe ispravljajna grešaka u programu" #: ../activation-server/activation-server-main.c:184 msgid "Query expression to evaluate" msgstr "Izraz upita za procjenu" #: ../activation-server/activation-server-main.c:184 msgid "EXPRESSION" msgstr "IZRAZ" #: ../activation-server/activation-server-main.c:470 #: ../utils/bonobo-activation-sysconf.c:305 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "Pokrenite naredbu '%s --help' za pregled popisa dostupnih opcija.\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "Servis CORBA CosNaming." #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "Ime servisa" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "Servis obavješćivanja" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "Servis obavješćivanja za pokretanje" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "Još ne upravljamo pokretanjem shlib objektima na udaljenim procesima" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "Datoteka s postavkama za pokretanje Bonobo-a nije uspješno pročitana. Molim, " "provjerite da li je ispravna u: %s" #: ../activation-server/object-directory-load.c:102 msgid "a NULL iid is not valid" msgstr "nije ispravan NULL iid" #: ../activation-server/object-directory-load.c:106 #, c-format msgid "iid %s has a NULL type" msgstr "iid %s ima NULL vrstu" #: ../activation-server/object-directory-load.c:110 #, c-format msgid "iid %s has a NULL location" msgstr "iid %s ima NULL lokaciju" #: ../activation-server/object-directory-load.c:119 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "neispravni znak '%c' u iid '%s'" #: ../activation-server/object-directory-load.c:349 #, c-format msgid "Property '%s' has no value" msgstr "Svojstvo '%s' nema vrijednost" #: ../activation-server/object-directory-load.c:583 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "Ne mogu prevesti loše oblikovani XML dokument %s" #: ../activation-server/object-directory-load.c:629 #, c-format msgid "Trying dir %s" msgstr "Pokušavam mapu %s" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "" "Nasljedni proces nije dao poruku s greškom, dogodila se nepoznata greška" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "Nisam uspio čitati iz nasljednog procesa: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 msgid "EOF from child process\n" msgstr "EOF od nasljednog procesa\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:438 msgid "Couldn't spawn a new process" msgstr "Nije moguće pokrenuti novi proces" #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "File descriptor to print IOR on" msgstr "Opis datoteke za ispis IOR na" #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:399 msgid "IID to activate" msgstr "Pokretanje IID" #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Prevent registering of server with OAF" msgstr "Sprečava registraciju poslužitelja pomoću OAF" #: ../bonobo-activation/bonobo-activation-init.c:409 msgid "Bonobo Activation options:" msgstr "Opcije Bonobo aktivacije" #: ../bonobo-activation/bonobo-activation-init.c:410 msgid "Show Bonobo Activation options" msgstr "Prikaži opcije Bonobo aktivacije" #: ../bonobo-activation/bonobo-activation-init.c:518 msgid "Bonobo activation options" msgstr "Opcije pokretanja Bonobo-a" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "g_module_open od `%s' nije uspio s `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "NE mogu naći simbol Bonobo_Plugin_info u `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "Tvornica je vratila `%s' NIL za `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Shlib `%s' ne sadrži `%s'" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "Ime" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "Jedinstveno ime programa" #: ../bonobo/bonobo-object.c:929 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:929 msgid "Custom CORBA POA" msgstr "Prilagođena CORBA POA" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "Pokušaj izvršavanja nepodržane radnje" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "IO greška" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "Neispravna vrijednost argumenta" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "Objekt nije nađen" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "Sintaksna greška u opisu objekta" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "Ne mogu pokrenuti objekt iz tvornice" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "Nema ovlasti za pristup toku podataka" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "Pokušaj nepodržane radnje nad tokom podataka" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "IO greška na toku podataka" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "IO greška na pohrani podataka" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "Već postoji ime u pohrani podataka" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "Objekt nije nađen na pohrani podataka" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "Nema ovlasti za izvršavanje operacija na pohrani podataka" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "Pokušaj izvršavanja nepodržane radnje nad pohranom podataka" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "Objekt nije tok podataka" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "Objekt nije pohrana podataka" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "Pohrana podataka nije prazna" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "izobličen XML opis korisničkog sučelja" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "neispravna putanja do XML elementa korisničkog sučelja" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "ne postoji zahtijevani UI atribut" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "Nepoznata naredba ili djelatnost" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "Naredba ne razlikuje mala i velika slova" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "neispravna vrsta podataka" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "tok podataka nije nađen" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "svojstvo nije nađeno" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "svojstvo je neispravne vrste" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "svojstvo se može samo čitati" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "neuspjelo postavljanje zaštitne kopije postavki baze podataka " #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "Ne mogu naći sučelje Moniker-a" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "Vremensko ograničenje pokretanja Moniker-a" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "Sintaksna greška unutar moniker-a" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "Moniker ima nepoznati moniker prefiks" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "Greška kod provjere greški; bez iznimke" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "Općenita greška kod pokretanja, bez opisa" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s" msgstr "Nisam uspio razriješiti ili proširiti %s" #: ../bonobo/bonobo-moniker-util.c:247 msgid "Failed to activate object" msgstr "Nisam uspio pokrenuti objekt" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "Greška kod pokretanja '%s'" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "Nisam uspio pokrenuti '%s'" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "HTTP Moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "Moniker za rukovanje ORB IOR-pm" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "Standardna Moniker tvornica" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "Generički Oaf pokretački moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "generički Oaf zahtjevni moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "ganerički tvornički 'novi' moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "generička stavka moniker-a" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "MonikerExtender tok podataka" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Tvornica poslužitelja Bonobo Echo-a" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Primjer programa poslužitelja Bonobo Echo-a" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Echo komponenta" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Tvornica Echo komponenti" #: ../samples/echo/echo-client.c:24 msgid "I could not initialize Bonobo" msgstr "Ne mogu inicijalizirati Bonobo" #: ../samples/echo/echo-client.c:35 msgid "Could not create an instance of the sample echo component" msgstr "Ne mogu stvoriti primjer uzorka echo komponente" #: ../samples/echo/echo-client.c:47 #, c-format msgid "An exception occurred '%s'" msgstr "Dogodila se greška '%s'" #: ../utils/bonobo-activation-sysconf.c:83 msgid "Could not save configuration file.\n" msgstr "Ne mogu spremiti datoteku s postavkama.\n" #: ../utils/bonobo-activation-sysconf.c:84 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "Molim, budite sigurni da imate prava pisanja po '%s'.\n" #: ../utils/bonobo-activation-sysconf.c:87 msgid "Successfully wrote configuration file.\n" msgstr "Datoteka s postavkama je uspješno zapisana.\n" #: ../utils/bonobo-activation-sysconf.c:104 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "datoteka s postavkama je:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:146 #, c-format msgid "%s already in configuration file\n" msgstr "%s se već nalazi u datoteci s postavkama\n" #: ../utils/bonobo-activation-sysconf.c:166 msgid "there is not a properly structured configuration file\n" msgstr "ne postoji odgovarajuće strukturirana datoteka s postavkama\n" #: ../utils/bonobo-activation-sysconf.c:237 msgid "Bonobo-activation configuration file contains:\n" msgstr "Datoteka postavki za pokretanje Bonobo-a sadrži:\n" #: ../utils/bonobo-activation-sysconf.c:267 msgid "Directory to remove from configuration file" msgstr "Mapa koja će biti uklonjena iz datoteke s postavkama" #: ../utils/bonobo-activation-sysconf.c:267 #: ../utils/bonobo-activation-sysconf.c:269 msgid "PATH" msgstr "PUTANJA" #: ../utils/bonobo-activation-sysconf.c:269 msgid "Directory to add to configuration file" msgstr "Mapa u koju će biti dodana datoteka s postavkama" #: ../utils/bonobo-activation-sysconf.c:271 msgid "Display directories in configuration file" msgstr "Prikazuje mape u datoteci s postavkama" #: ../utils/bonobo-activation-sysconf.c:273 msgid "Display path to configuration file" msgstr "Prikazuje putanje u datoteci s postavkama" libbonobo-2.32.1/po/es.po0000644000076400007640000004264611373604303012076 00000000000000# Translation into spanish of libbonobo. # Copyright (C) 2001,2003, 2004 Free Software Foundation, Inc. # Diego Sevilla Ruiz , 2000. # Carlos Perelló Marín , 2001. # Héctor García Álvarez , 2001. # Germán Poo-Caamaño , 2002. # Francisco Javier F. Serrador , 2004. # Jorge González , 2010. # msgid "" msgstr "" "Project-Id-Version: libbonobo-2.16\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?" "product=libbonobo&component=general\n" "POT-Creation-Date: 2010-04-21 08:51+0000\n" "PO-Revision-Date: 2010-04-21 18:23+0200\n" "Last-Translator: Jorge González \n" "Language-Team: Español \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.3.1\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #: ../activation-server/activation-context-corba.c:530 msgid "Couldn't find which child the server was listed in" msgstr "No se ha podido determinar qué proceso hijo contiene al servidor" #: ../activation-server/activation-context-corba.c:822 msgid "Not a valid Activation ID" msgstr "No es un ID de Activación válido" #: ../activation-server/activation-server-main.c:176 msgid "Directory to read .server files from" msgstr "Directorio desde el cual leer los archivos .server" #: ../activation-server/activation-server-main.c:176 msgid "DIRECTORY" msgstr "DIRECTORIO" #: ../activation-server/activation-server-main.c:179 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "" "Servir también como un ActivationContext (por omisión sólo como un " "ObjectDirectory)" #: ../activation-server/activation-server-main.c:183 msgid "File descriptor to write IOR to" msgstr "Descriptor de archivo en el que escribir el IOR" #: ../activation-server/activation-server-main.c:183 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:186 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "" "Registrarse como el servidor de activación del usuario sin bloqueo. " "Advertencia: esta opción puede tener efectos laterales peligrosos para la " "estabilidad de la sesión en ejecución del usuario, y sólo se debería usar " "para propósitos de depuración." #: ../activation-server/activation-server-main.c:194 msgid "Query expression to evaluate" msgstr "Expresión de consulta a evaluar" #: ../activation-server/activation-server-main.c:194 msgid "EXPRESSION" msgstr "EXPRESIÓN" #: ../activation-server/activation-server-main.c:547 #: ../utils/bonobo-activation-sysconf.c:305 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "" "Ejecutar «%s --help» para ver una lista completa de opciones de línea de " "comandos disponibles.\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "Servicio CORBA CosNaming." #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "Servicio de nombres" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "Servicio de notificación" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "Servicio de notificación para activación" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "Aún no manejamos la activación de objetos shlib en un proceso remoto" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "El archivo de configuración de bonobo no se leyó satisfactoriamente. " "Compruebe que es válido en: %s" #: ../activation-server/object-directory-load.c:102 msgid "a NULL iid is not valid" msgstr "un IID con el valor NULL no es válido" #: ../activation-server/object-directory-load.c:106 #, c-format msgid "iid %s has a NULL type" msgstr "El IID %s tiene tipo NULL" #: ../activation-server/object-directory-load.c:110 #, c-format msgid "iid %s has a NULL location" msgstr "El IID %s tiene una localización NULL" #: ../activation-server/object-directory-load.c:119 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "Carácter '%c' inválido en IID «%s»" #: ../activation-server/object-directory-load.c:349 #, c-format msgid "Property '%s' has no value" msgstr "No se le ha dado un valor al atributo «%s»" #: ../activation-server/object-directory-load.c:583 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "No se pudo interpretar el documento XML mal formado %s" #: ../activation-server/object-directory-load.c:629 #, c-format msgid "Trying dir %s" msgstr "Probando con el directorio %s" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "" "El proceso hijo no dio ningún mensaje de error, ha ocurrido un fallo " "desconocido" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "No se ha podido leer desde el proceso hijo: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, c-format msgid "EOF from child process\n" msgstr "EOF desde el proceso hijo\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:438 msgid "Couldn't spawn a new process" msgstr "No se puede iniciar un nuevo proceso (spawn)" #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "File descriptor to print IOR on" msgstr "Descriptor de archivo en el cual escribir el IOR" #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:399 msgid "IID to activate" msgstr "IID que activar" #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Prevent registering of server with OAF" msgstr "Evitar el registro de un servidor en el OAF" #: ../bonobo-activation/bonobo-activation-init.c:409 msgid "Bonobo Activation options:" msgstr "Opciones de la activación de Bonobo:" #: ../bonobo-activation/bonobo-activation-init.c:410 msgid "Show Bonobo Activation options" msgstr "Mostrar opciones de la activación de Bonobo" #: ../bonobo-activation/bonobo-activation-init.c:518 msgid "Bonobo activation options" msgstr "Opciones de la activación de Bonobo" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "Ha fallado g_module_open de «%s» con «%s»" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "No se puede encontrar el símbolo Bonobo_Plugin_info en «%s»" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "La fábrica «%s» ha devuelto NULO para «%s»" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Shlib «%s» no contenía «%s»" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "Nombre" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "Nombre único de aplicación" #: ../bonobo/bonobo-object.c:929 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:929 msgid "Custom CORBA POA" msgstr "CORBA POA personalizado" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "Se ha intentado realizar una acción no soportada" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "Error de E/S" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "Valor inválido para el argumento" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "Objeto no encontrado" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "Error de sintaxis en la descripción del objeto" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "No puedo activar el objeto desde la factoría" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "Carece de permisos para acceder al flujo de datos" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "Se intentó una acción no soportada sobre el flujo de datos" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "Error de E/S en el flujo de datos" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "Error de E/S en el almacenamiento" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "El nombre ya existe en el almacenamiento" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "Objeto no encontrado en el almacenamiento" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "No tiene permisos para realizar la operación en el almacenamiento" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "Se ha intentado una acción de almacenamiento no soportada" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "El objeto no es un flujo de datos" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "El objeto no es un almacenamiento" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "El almacenamiento no está vacío" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "descripción de la interfaz de usuario XML mal construida" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "ruta errónea al elemento de la interfaz de usuario XML" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "el atributo pedido de la UI no existe" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "Comando u orden desconocida" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "El comando es insensitivo" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "tipo de dato incorrecto" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "flujo de datos no encontrado" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "propiedad no encontrada" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "la propiedad tiene un tipo no válido" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "la propiedad es de sólo lectura" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "fallo el manejador de la base de datos de configuraciones" #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "Interfaz para el moniker no encontrada" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "El tiempo de activación del moniker ha expirado" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "Error de sintaxis en el moniker" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "El moniker tiene un prefijo de moniker desconocido" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "Error al comprobar el error; no hay excepción" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "Error de activación general sin descripción" #: ../bonobo/bonobo-moniker.c:342 #, c-format #| msgid "Failed to resolve, or extend '%s" msgid "Failed to resolve, or extend '%s'" msgstr "No se pudo resolver o extender «%s»" #: ../bonobo/bonobo-moniker-util.c:247 msgid "Failed to activate object" msgstr "No se ha podido activar el objeto" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "Activando la excepción «%s»" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "No se ha podido activar «%s»" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "Moniker HTTP" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "moniker para el manejo de ORB IOR" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "Fábrica de moniker estándar" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "moniker genérico de activación de OAF" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "moniker genérico de consulta de OAF" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "Fábrica de moniker genérico" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "Ítem de moniker genérico" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "flujo MonikerExtender" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Fábrica del servidor Bonobo Echo (eco)" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Programa de ejemplo del servidor Bonobo Echo (eco)" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Componente eco" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Fábrica del componente echo (eco)" #: ../samples/echo/echo-client.c:24 msgid "I could not initialize Bonobo" msgstr "No se ha podido inicializar Bonobo" #: ../samples/echo/echo-client.c:35 msgid "Could not create an instance of the sample echo component" msgstr "No se puede crear una instancia del ejemplo del componente eco" #: ../samples/echo/echo-client.c:47 #, c-format msgid "An exception occurred '%s'" msgstr "Ha ocurrido una excepción «%s»" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Could not save configuration file.\n" msgstr "No se pudo guardar el archivo de configuración.\n" #: ../utils/bonobo-activation-sysconf.c:84 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "Asegúrese de tener permiso de escritura en el archivo «%s».\n" #: ../utils/bonobo-activation-sysconf.c:87 #, c-format msgid "Successfully wrote configuration file.\n" msgstr "El archivo de configuración ha sido guardado correctamente.\n" #: ../utils/bonobo-activation-sysconf.c:104 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "El archivo de configuración es:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:146 #, c-format msgid "%s already in configuration file\n" msgstr "%s ya está en el archivo de configuración\n" #: ../utils/bonobo-activation-sysconf.c:166 #, c-format msgid "there is not a properly structured configuration file\n" msgstr "no hay un archivo de configuración estructurado correctamente\n" #: ../utils/bonobo-activation-sysconf.c:237 #, c-format msgid "Bonobo-activation configuration file contains:\n" msgstr "El archivo de configuración de bonobo-activation contiene:\n" #: ../utils/bonobo-activation-sysconf.c:267 msgid "Directory to remove from configuration file" msgstr "Directorio a eliminar del archivo de configuración" #: ../utils/bonobo-activation-sysconf.c:267 #: ../utils/bonobo-activation-sysconf.c:269 msgid "PATH" msgstr "RUTA" #: ../utils/bonobo-activation-sysconf.c:269 msgid "Directory to add to configuration file" msgstr "Directorio a añadir al archivo de configuración" #: ../utils/bonobo-activation-sysconf.c:271 msgid "Display directories in configuration file" msgstr "Mostrar los directorios del archivo de configuración" #: ../utils/bonobo-activation-sysconf.c:273 msgid "Display path to configuration file" msgstr "Mostrar la ruta del archivo de configuración" #~ msgid "Could not initialize Bonobo" #~ msgstr "No pude inicializar Bonobo" #~ msgid "Bonobo Activation" #~ msgstr "Activación de Bonobo" #~ msgid "" #~ "Register as the users' activation server without locking [!] for debugging" #~ msgstr "" #~ "Registrarse como el servidor de activación del usuario sin bloquear [!] " #~ "para depurar" #~ msgid "Race condition activating server '%s'" #~ msgstr "Condición de carrera activando el servidor «%s»" #~ msgid "directory path" #~ msgstr "directorio" #~ msgid "Too many alias levels for a locale, may indicate a loop" #~ msgstr "Hay muchos niveles de alias para un locale, puede ser un ciclo" #~ msgid "Child received signal %u (%s)" #~ msgstr "El proceso hijo recibió la señal %u (%s)" #~ msgid "Unknown non-exit error (status is %u)" #~ msgstr "Error de salida desconocido (el estado es %u)" #~ msgid "bonobo-activation failed to set process group of %s: %s\n" #~ msgstr "" #~ "bonobo-activation no ha podido establecer el grupo del proceso de %s: %s\n" #~ msgid "Failed to execute %s: %d (%s)\n" #~ msgstr "No se ha podido ejecutar %s: %d (%s)\n" libbonobo-2.32.1/po/hy.po0000664000076400007640000004442611436275736012125 00000000000000# Translation of libbonobo to Armenian # This file is distributed under the same license as the libbonobo package. # Copyright (C) 2010, Astghik Mkrtchyan # Astghik Mkrtchyan # msgid "" msgstr "" "Project-Id-Version: libbonobo.HEAD\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2010-08-20 17:15+0500\n" "PO-Revision-Date: 2010-08-20 17:00+0400\n" "Last-Translator: Nune \n" "Language-Team: Armenian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../activation-server/activation-context-corba.c:530 msgid "Couldn't find which child the server was listed in" msgstr "Չի հաջողվել գտնել զավակ, որը պարունակում է հղում սերվերի վրա" #: ../activation-server/activation-context-corba.c:822 msgid "Not a valid Activation ID" msgstr "Անվավեր ակտիվացման իդենտիֆիկատոր (Activation ID)" #: ../activation-server/activation-server-main.c:174 msgid "Directory to read .server files from" msgstr "Պանակ, որտեղից կարդացվելու են .server ֆայլերը" #: ../activation-server/activation-server-main.c:174 msgid "DIRECTORY" msgstr "ՊԱՆԱԿ" #: ../activation-server/activation-server-main.c:177 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "Մշակել որպես ActivationContext (լռելյայն միայն ObjectDirectory )" #: ../activation-server/activation-server-main.c:181 msgid "File descriptor to write IOR to" msgstr "Ֆայլային դեսկրիպտոր, որի մեջ պետք է գրվի IOR" #: ../activation-server/activation-server-main.c:181 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "FD" msgstr "Ֆայլային դեսկրիպտոր" #: ../activation-server/activation-server-main.c:184 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "" "Գրանցել որպես օգտագործողի ակտիվացման սերվեր առանց արգելափակման։ Զգուշացում․ " "այս ընտրանքը կարող է վտանգավոր ազդեցություն ունենալ օգտագործողի ընթացիկ " "սեսիայի հաստատունության վրա և կարող է օգտագործվել միայն վրիպազերծման նպատակով" #: ../activation-server/activation-server-main.c:192 msgid "Query expression to evaluate" msgstr "Հարցում-արտահայտություն գնահատման համար" #: ../activation-server/activation-server-main.c:192 msgid "EXPRESSION" msgstr "ԱՐՏԱՀԱՅՏՈՒԹՅՈՒՆ" #: ../activation-server/activation-server-main.c:541 #: ../utils/bonobo-activation-sysconf.c:305 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "" "Աշխատեցնել '%s --help' տեսնելու համար հրամանային տողի հասանելի " "հատկութունների ամբողջական ցանկը։\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "CORBA CosNaming ծառայություն։" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "Անունների ծառայություն" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "Ծանուցման ծառայություն" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "Ծանուցման ծառայություն ակտիվացման համար" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "" "Հեռացված պրոցեսում բաժանված գրադարանների օբյեկտների ակտիվացումը դեռ չի " "աջակցվում" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "Bonobo Activation կոնֆիգուրացիոն ֆայլը հաջողությամբ չի կարդացվել․ Խնդրում " "ենք ստուգել նրա վավերությունը․ %s" #: ../activation-server/object-directory-load.c:102 msgid "a NULL iid is not valid" msgstr "NULL iid-ն վավեր չէ" #: ../activation-server/object-directory-load.c:106 #, c-format msgid "iid %s has a NULL type" msgstr "%s iid-ն ունի NULL տիպը" #: ../activation-server/object-directory-load.c:110 #, c-format msgid "iid %s has a NULL location" msgstr "%s iid-ն ունի NULL տեղադրություն" #: ../activation-server/object-directory-load.c:119 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "Անվավեր '%c' նիշ '%s' iid-ում" #: ../activation-server/object-directory-load.c:349 #, c-format msgid "Property '%s' has no value" msgstr "'%s' հատկությունը արժեք չունի" #: ../activation-server/object-directory-load.c:583 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "Չի հաջողվել վերլուծել վատ ձևավորված %s XML փաստաթուղթը" #: ../activation-server/object-directory-load.c:629 #, c-format msgid "Trying dir %s" msgstr "Փորձ է կատարվում բացել %s պանակը" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "" "Ենթապրոցեսը չի վերադարձրել սխալի հաղորդագրություն, տեղի է ունեցել անհայտ " "դադարեցում" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "Չի հաջողվել կարդալ ենթապրոցեսից․ %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, c-format msgid "EOF from child process\n" msgstr "EOF ենթապրոցեսից\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:438 msgid "Couldn't spawn a new process" msgstr "Չի հաջողվել սկսել նոր պրոցես" #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "File descriptor to print IOR on" msgstr "Ֆայլի դեսկրիպտոր IOR տպելու համար" #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:399 msgid "IID to activate" msgstr "IID ակտիվացման համար" #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Prevent registering of server with OAF" msgstr "Արգելել սերվերի գրանցումը OAF-ով" #: ../bonobo-activation/bonobo-activation-init.c:409 msgid "Bonobo Activation options:" msgstr "Bonobo-ի ակտիվացման հատկությունները․" #: ../bonobo-activation/bonobo-activation-init.c:410 msgid "Show Bonobo Activation options" msgstr "Ցույց տալ Bonobo-ի ակտիվացման հատկությունները" #: ../bonobo-activation/bonobo-activation-init.c:518 msgid "Bonobo activation options" msgstr "Bonobo-ի ակտիվացման հատկությունները" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "Չի հաջողվել `%s'-ի g_module_open-ը `%s' համար" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "Չի հաջողվում գտնել Bonobo_Plugin_info սիմվոլը `%s'-ում" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "`%s' ֆաբրիկան վերադարձրել է NIL `%s'-ի համար" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "`%s' բաժանելի գրադարանը չի պարունակում `%s'" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "Անուն" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "Ծրագրի եզակի անուն" #: ../bonobo/bonobo-object.c:929 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:929 msgid "Custom CORBA POA" msgstr "Պատվիրված CORBA POA" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "Նկատվել է չաջակցվող գործողություն" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "Մուտք-ելքի (IO) սխալ" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "Արգումենտի անվավեր արժեք" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "Օբյեկտը չի գտնվել" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "Քերականական սխալ օբյեկտի նկարագրության մեջ" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "Չի հաջողվում ակտիվացնել ֆաբրիկայի օբյեկտը" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "Հոսքին հասանելիություն չկա" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "Նկատվել է չաջակցվող հոսքային գործողություն" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "Մուտք-ելքի (IO) սխալ հոսքում" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "Մուտք-ելքի (IO) սխալ պահեստում" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "Անունը արդեն պարունակվում է պահեստում" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "Օբյեկտը չի գտնվել պահեստում" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "Իրավունք չկա կատարել գործողություն պահեստում" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "Նկատվել է չաջակցվող պահեստային գործողություն" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "Օբյեկտը հոսք չէ" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "Օբյեկտը պահեստ չէ" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "Պահեստը դատարկ չէ" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "Օգտագործողի ինտերֆեյսի սխալ XML նկարագրություն" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "Օգտագործողի ինտերֆեյսի XML էլեմենտի անվավեր ուղի" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "Պահանջված UI ատրիբուտը չի պարունակվում" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "Անհայտ հրաման կամ գործողություն" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "Հրամանը անիմաստ է" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "Տվյալների սխալ տիպ" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "Հոսքը չի գտնվել" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "Հատկությունը չի գտնվել" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "Հատկությունը ունի անվավեր տիպ" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "Հատկությունը միայն կարդալու համար է" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "Տեղի է ունեցել սխալ կոնֆիգուրացիոն տվյալների բազայում" #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "Moniker-ի ինտերֆեյսը չի գտնվել" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "Moniker- ի ակտիվացման ժամանակը սպառվել է" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "Տեղի է ունեցել քերականական սխալ moniker-ում" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "Moniker-ը ունի անհայտ moniker նախածանց" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "Սխալը ստուգելիս․ արտահայտություն չկա" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "Տեղի է ունեցել ընդհանուր ակտիվացման սխալ առանց նկարագրության" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s'" msgstr "Լուծման կամ ընդլայնման սխալ '%s'" #: ../bonobo/bonobo-moniker-util.c:247 msgid "Failed to activate object" msgstr "Չի հաջողվել ակտիվացնել օբյեկտը" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "Ակտիվացվում է '%s' բացառությունը" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "Չի հաջողվել ակտիվացնել '%s'" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "HTTP մոնիկեր" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "ORB IOR մշակման մոնիկեր" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "Ստանդարտ Moniker ֆաբրիկա" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "Oaf ակտիվացման ընդհանուր մոնիկեր" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "Oaf հարցման ընդհանուր մոնիկեր" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "'new' ֆաբրիկայի ընդհանուր մոնիկեր" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "Տարրի ընդհանուր մոնիկեր" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "MonikerExtender հոսք" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Bonobo Echo համակարգային ֆաբրիկա" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Bonobo Echo համակարգի ծրագրի օրինակ" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Echo բաղադրիչ" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Echo բաղադրիչի ֆաբրիկա" #: ../samples/echo/echo-client.c:24 msgid "I could not initialize Bonobo" msgstr "Չի ստացվել սկզբնարժեքավորել Bonobo-ն" #: ../samples/echo/echo-client.c:35 msgid "Could not create an instance of the sample echo component" msgstr "Չի հաջողվել ստեղծել Էխո բաղադրիչի օրինակ" #: ../samples/echo/echo-client.c:47 #, c-format msgid "An exception occurred '%s'" msgstr "Հանդիպել է '%s' բացառություն" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Could not save configuration file.\n" msgstr "Չի հաջողվել պահպանել կոնֆիգուրացիոն ֆայլը։\n" #: ../utils/bonobo-activation-sysconf.c:84 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "Խնդրւմ ենք համոզվել, որ դուք ունեք իրավունք գրելու '%s' -ում։\n" #: ../utils/bonobo-activation-sysconf.c:87 #, c-format msgid "Successfully wrote configuration file.\n" msgstr "Կոնֆիգուրացիոն ֆայլը հաջողությամբ գրվել է։\n" #: ../utils/bonobo-activation-sysconf.c:104 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "Կոնֆիգուրացիոն ֆայլն է․\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:146 #, c-format msgid "%s already in configuration file\n" msgstr "%s արդեն կոնֆիգուրացիոն ֆայլում է \n" #: ../utils/bonobo-activation-sysconf.c:166 #, c-format msgid "there is not a properly structured configuration file\n" msgstr "Կոնֆիգուրացիոն ֆայլը սխալ է կառուցված\n" #: ../utils/bonobo-activation-sysconf.c:237 #, c-format msgid "Bonobo-activation configuration file contains:\n" msgstr "Bonobo-activation կոնֆիգուրացիոն ֆայլը պարունակում է․\n" #: ../utils/bonobo-activation-sysconf.c:267 msgid "Directory to remove from configuration file" msgstr "Կոնֆիգուրացիոն ֆայլից հեռացվող պանակը" #: ../utils/bonobo-activation-sysconf.c:267 #: ../utils/bonobo-activation-sysconf.c:269 msgid "PATH" msgstr "ՈՒՂԻ" #: ../utils/bonobo-activation-sysconf.c:269 msgid "Directory to add to configuration file" msgstr "Պանակը, որը պետք է ավելացվի կոնֆիգուրացիոն ֆայլին" #: ../utils/bonobo-activation-sysconf.c:271 msgid "Display directories in configuration file" msgstr "Ցույց տալ կոնֆիգուրացիոն ֆայլի պանակները" #: ../utils/bonobo-activation-sysconf.c:273 msgid "Display path to configuration file" msgstr "Ցույց տալ կոնֆիգուրացիոն ֆայլի ուղին" libbonobo-2.32.1/po/uk.po0000644000076400007640000004462411173072711012104 00000000000000# Ukrainian translation of libbonobo. # Copyright (C) 2001 Free Software Foundation, Inc. # Yuriy Syrota , 2001. # Maxim Dziumanenko , 2004-2006 # msgid "" msgstr "" "Project-Id-Version: libbonobo\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-01-18 18:17+0200\n" "PO-Revision-Date: 2007-01-17 18:45+0200\n" "Last-Translator: Maxim Dziumanenko \n" "Language-Team: Ukrainian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../activation-server/activation-context-corba.c:523 msgid "Couldn't find which child the server was listed in" msgstr "Не вдається знайти дочірній процес, в якому вказано сервер" #: ../activation-server/activation-context-corba.c:815 msgid "Not a valid Activation ID" msgstr "Неправильний ідентифікатор активації" #: ../activation-server/activation-server-main.c:163 msgid "Directory to read .server files from" msgstr "Каталог, з якого будуть зчитуватись файли типу .server" #: ../activation-server/activation-server-main.c:163 msgid "DIRECTORY" msgstr "КАТАЛОГ" #: ../activation-server/activation-server-main.c:166 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "обробляти як ActivationContext (типовим є лише ObjectDirectory)" #: ../activation-server/activation-server-main.c:170 msgid "File descriptor to write IOR to" msgstr "Дескриптор файлу для запису IOR у" #: ../activation-server/activation-server-main.c:170 #: ../bonobo-activation/bonobo-activation-init.c:355 #: ../bonobo-activation/bonobo-activation-init.c:365 msgid "FD" msgstr "ФД" #: ../activation-server/activation-server-main.c:173 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "" "Реєструватись як сервер активації користувача без блокування. Попередження: " "цей параметр може мати небезпечні побічні ефекти для стабільності запущеного " "сеансу користувача, і має використовуватись лише для налагодження" #: ../activation-server/activation-server-main.c:181 msgid "Query expression to evaluate" msgstr "Вираз запиту для аналізу" #: ../activation-server/activation-server-main.c:181 msgid "EXPRESSION" msgstr "ВИРАЗ" #: ../activation-server/activation-server-main.c:430 #: ../utils/bonobo-activation-sysconf.c:304 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "" "Запустіть '%s --help' для повного списку доступних параметрів команд.\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "Служба CosNaming середовища CORBA." #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "Служба назв" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "Служба сповіщення" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "Служба сповіщення для активації" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "" "Активація об'єктів спільних бібліотек у віддалених процесах поки-що не " "підтримується" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "Не вдається прочитати файл конфігурації активації Bonobo. Переконайтесь, що " "файл \"%s\" вказано правильно" #: ../activation-server/object-directory-load.c:101 msgid "a NULL iid is not valid" msgstr "iid не може мати значення NULL" #: ../activation-server/object-directory-load.c:105 #, c-format msgid "iid %s has a NULL type" msgstr "iid %s дорівнює NULL" #: ../activation-server/object-directory-load.c:109 #, c-format msgid "iid %s has a NULL location" msgstr "Адреса iid %s дорівнює NULL" #: ../activation-server/object-directory-load.c:118 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "невірний символ \"%c\" в iid \"%s\"" #: ../activation-server/object-directory-load.c:348 #, c-format msgid "Property '%s' has no value" msgstr "Для властивості \"%s\" не задане значення" #: ../activation-server/object-directory-load.c:580 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "" "Не вдається проаналізувати неправильно сформований документ формату XML \"%s" "\"" #: ../activation-server/object-directory-load.c:626 #, c-format msgid "Trying dir %s" msgstr "Спроба відкрити каталог %s" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "" "Дочірній процес не видав повідомлення про помилку, виникла невідома помилка" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "Не вдається прочитати дані від дочірнього процесу: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 msgid "EOF from child process\n" msgstr "Отримано ознаку кінця файлу від дочірнього процесу\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:435 msgid "Couldn't spawn a new process" msgstr "Не вдається створити новий процес" #: ../bonobo-activation/bonobo-activation-init.c:355 #: ../bonobo-activation/bonobo-activation-init.c:365 msgid "File descriptor to print IOR on" msgstr "Дескриптор файлу для друку IOR" #: ../bonobo-activation/bonobo-activation-init.c:357 #: ../bonobo-activation/bonobo-activation-init.c:367 msgid "IID to activate" msgstr "IID до активації" #: ../bonobo-activation/bonobo-activation-init.c:359 #: ../bonobo-activation/bonobo-activation-init.c:369 msgid "Prevent registering of server with OAF" msgstr "Запобігти реєстрації сервера з OAF" #: ../bonobo-activation/bonobo-activation-init.c:403 msgid "Bonobo Activation options:" msgstr "Параметри активації Bonobo:" #: ../bonobo-activation/bonobo-activation-init.c:404 msgid "Show Bonobo Activation options" msgstr "Показувати параметри активації Bonobo" #: ../bonobo-activation/bonobo-activation-init.c:512 msgid "Bonobo activation options" msgstr "Параметри активації Bonobo" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "Помилка у g_module_open для \"%s\" з \"%s\"" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "Не вдається знайти позначення Bonobo_Plugin_info в \"%s\"" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "Фабрика \"%s\" повернула NIL для \"%s\"" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Спільна бібліотека \"%s\" не містить \"%s\"" #: ../bonobo/bonobo-application.c:350 msgid "Name" msgstr "Назва" #: ../bonobo/bonobo-application.c:350 msgid "Application unique name" msgstr "Унікальна назва програми" #: ../bonobo/bonobo-object.c:923 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:923 msgid "Custom CORBA POA" msgstr "Інший адаптер CORBA POA" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "Спроба виконати непідтримувану дію" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "Помилка вводу-виводу" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "Неправильне значення аргументу" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "Об'єкта не знайдено" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "Синтаксична помилка в описі об'єкту" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "Не вдається активувати об'єкт з фабрики" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "Немає прав на доступ до потоку" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "Спроба виконати непідтримувану дію потоку" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "Помилка вводу-виводу у потоці" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "Помилка вводу-виводу у сховищі" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "Назва вже існує у сховищі" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "Об'єкт не знайдено у сховищі" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "Немає права на виконання операції зі сховищем" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "Спроба виконати непідтримувану дію зі сховищем" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "Об'єкт не є потоком" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "Об'єкт не є сховищем" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "Сховище не порожнє" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "неправильний XML-опис інтерфейсу користувача" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "неприпустимий шлях до XML-елемента інтерфейсу користувача" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "запитаний атрибут інтерфейсу користувача не існував" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "Невідома команда чи дія" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "Команда не має змісту" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "неправильний тип даних" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "поток не знайдено" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "властивість не знайдено" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "властивість має неправильний тип" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "властивість лише для зчитування" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "помилка в модулі конфігураційної бази даних" #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "Не вдається знайти інтерфейс монікера" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "Вийшов час активації монікера" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "Синтаксична помилка в монікері" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "Монікер має невідомий префікс монікера" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "Помилка перевірки на помилку; без виключної ситуації" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "Загальна помилка активації без опису" #: ../bonobo/bonobo-generic-factory.h:79 ../bonobo/bonobo-generic-factory.h:83 msgid "Could not initialize Bonobo" msgstr "Не вдається ініціалізувати Bonobo" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s" msgstr "Не вдається розв'язати чи розширити \"%s\"" #: ../bonobo/bonobo-moniker-util.c:246 msgid "Failed to activate object" msgstr "Не вдається активувати об'єкт" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "Виключна ситуація під час активації \"%s\"" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "Не вдається активувати \"%s\"" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "Монікер HTTP" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "Монікер обробки ORB IOR" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "Фабрика стандартних монікерів" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "Загальний монікер активації OAF" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "Загальний монікер запиту OAF" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "Загальний монікер фабрики \"new\"" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "Загальний монікер елемента" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "потоковий MonikerExtender" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Фабрика серверів відлуння Bonobo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Зразок програми сервера відлуння" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Компонент відлуння" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Фабрика компонентів відлуння" #: ../samples/echo/echo-client.c:22 msgid "I could not initialize Bonobo" msgstr "Не вдається ініціалізувати Bonobo" #: ../samples/echo/echo-client.c:33 msgid "Could not create an instance of the sample echo component" msgstr "Не вдається створити екземпляр зразка компонента відлуння" #: ../samples/echo/echo-client.c:45 #, c-format msgid "An exception occurred '%s'" msgstr "Виникла виключна ситуація \"%s\"" #: ../utils/bonobo-activation-sysconf.c:82 msgid "Could not save configuration file.\n" msgstr "Не вдається зберегти файл конфігурації.\n" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "Переконайтесь, що ви маєте права на запис у \"%s\".\n" #: ../utils/bonobo-activation-sysconf.c:86 msgid "Successfully wrote configuration file.\n" msgstr "Файл конфігурації успішно збережено.\n" #: ../utils/bonobo-activation-sysconf.c:103 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "файл конфігурації є:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:145 #, c-format msgid "%s already in configuration file\n" msgstr "%s вже міститься у файлі конфігурації\n" #: ../utils/bonobo-activation-sysconf.c:165 msgid "there is not a properly structured configuration file\n" msgstr "файл конфігурації має неправильну структуру\n" #: ../utils/bonobo-activation-sysconf.c:236 msgid "Bonobo-activation configuration file contains:\n" msgstr "Файл конфігурації служби Bonobo-activation містить:\n" #: ../utils/bonobo-activation-sysconf.c:266 msgid "Directory to remove from configuration file" msgstr "Каталог, який слід видалити з файла конфігурації" #: ../utils/bonobo-activation-sysconf.c:266 #: ../utils/bonobo-activation-sysconf.c:268 msgid "PATH" msgstr "ШЛЯХ" #: ../utils/bonobo-activation-sysconf.c:268 msgid "Directory to add to configuration file" msgstr "Каталог, який слід додати у файл конфігурації" #: ../utils/bonobo-activation-sysconf.c:270 msgid "Display directories in configuration file" msgstr "Показати каталоги з файлу конфігурації" #: ../utils/bonobo-activation-sysconf.c:272 msgid "Display path to configuration file" msgstr "Показати шлях до файла конфігурації" libbonobo-2.32.1/po/en_CA.po0000644000076400007640000003575611173072711012440 00000000000000# English/Canada translation of libbonobo. # Copyright (C) 2004-2005 Adam Weinberger and the GNOME Foundation # This file is distributed under the same licence as the libbonobo package. # Adam Weinberger , 2004, 2005. # # msgid "" msgstr "" "Project-Id-Version: libbonobo\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2006-12-28 13:19-0500\n" "PO-Revision-Date: 2005-02-22 16:34-0500\n" "Last-Translator: Adam Weinberger \n" "Language-Team: Canadian English \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../activation-server/activation-context-corba.c:523 msgid "Couldn't find which child the server was listed in" msgstr "Couldn't find which child the server was listed in" #: ../activation-server/activation-context-corba.c:815 msgid "Not a valid Activation ID" msgstr "Not a valid Activation ID" #: ../activation-server/activation-server-main.c:163 msgid "Directory to read .server files from" msgstr "Directory to read .server files from" #: ../activation-server/activation-server-main.c:163 msgid "DIRECTORY" msgstr "DIRECTORY" #: ../activation-server/activation-server-main.c:166 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "Serve as an ActivationContext (default is as an ObjectDirectory only)" #: ../activation-server/activation-server-main.c:170 msgid "File descriptor to write IOR to" msgstr "File descriptor to write IOR to" #: ../activation-server/activation-server-main.c:170 #: ../bonobo-activation/bonobo-activation-init.c:355 #: ../bonobo-activation/bonobo-activation-init.c:365 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:173 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" #: ../activation-server/activation-server-main.c:181 msgid "Query expression to evaluate" msgstr "Query expression to evaluate" #: ../activation-server/activation-server-main.c:181 msgid "EXPRESSION" msgstr "EXPRESSION" #: ../activation-server/activation-server-main.c:430 #: ../utils/bonobo-activation-sysconf.c:304 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "Run '%s --help' to see a full list of available command line options.\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "CORBA CosNaming service." #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "Name service" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "Notification service" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "Notification service for activation" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "We don't handle activating shlib objects in a remote process yet" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "The Bonobo Activation configuration file was not read successfully. Please " "check it is valid in: %s" #: ../activation-server/object-directory-load.c:101 msgid "a NULL iid is not valid" msgstr "a NULL iid is not valid" #: ../activation-server/object-directory-load.c:105 #, c-format msgid "iid %s has a NULL type" msgstr "IID %s has a NULL type" #: ../activation-server/object-directory-load.c:109 #, c-format msgid "iid %s has a NULL location" msgstr "IID %s has a NULL location" #: ../activation-server/object-directory-load.c:118 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "invalid character '%c' in IID '%s'" #: ../activation-server/object-directory-load.c:348 #, c-format msgid "Property '%s' has no value" msgstr "Property '%s' has no value" #: ../activation-server/object-directory-load.c:580 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "Could not parse badly formed XML document %s" #: ../activation-server/object-directory-load.c:627 #, c-format msgid "Trying dir %s" msgstr "Trying dir %s" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "Child process did not give an error message, unknown failure occurred" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "Failed to read from child process: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 msgid "EOF from child process\n" msgstr "EOF from child process\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:435 msgid "Couldn't spawn a new process" msgstr "Could not spawn a new process" #: ../bonobo-activation/bonobo-activation-init.c:355 #: ../bonobo-activation/bonobo-activation-init.c:365 msgid "File descriptor to print IOR on" msgstr "File descriptor to print IOR on" #: ../bonobo-activation/bonobo-activation-init.c:357 #: ../bonobo-activation/bonobo-activation-init.c:367 msgid "IID to activate" msgstr "IID to activate" #: ../bonobo-activation/bonobo-activation-init.c:359 #: ../bonobo-activation/bonobo-activation-init.c:369 msgid "Prevent registering of server with OAF" msgstr "Prevent registering of server with OAF" #: ../bonobo-activation/bonobo-activation-init.c:403 msgid "Bonobo Activation options:" msgstr "Bonobo Activation options:" #: ../bonobo-activation/bonobo-activation-init.c:404 msgid "Show Bonobo Activation options" msgstr "Show Bonobo Activation options" #: ../bonobo-activation/bonobo-activation-init.c:512 msgid "Bonobo activation options" msgstr "Bonobo activation options" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "g_module_open of `%s' failed with `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "Can't find symbol Bonobo_Plugin_info in `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "Factory `%s' returned NIL for `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Shlib `%s' didn't contain `%s'" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "Name" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "Application unique name" #: ../bonobo/bonobo-object.c:923 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:923 msgid "Custom CORBA POA" msgstr "Custom CORBA POA" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "An unsupported action was attempted" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "IO Error" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "Invalid argument value" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "Object not found" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "Syntax error in object description" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "Cannot activate object from factory" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "No permission to access stream" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "An unsupported stream action was attempted" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "IO Error on stream" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "IO Error on storage" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "Name already exists in storage" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "Object not found in storage" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "No permission to perform operation on storage" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "An unsupported storage action was attempted" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "Object is not a stream" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "Object is not a storage" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "Storage is not empty" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "malformed user interface XML description" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "invalid path to XML user interface element" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "the requested UI attribute didn't exist" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "Unknown command or verb" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "Command is insensitive" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "incorrect data type" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "stream not found" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "property not found" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "property has invalid type" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "property is read only" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "config database backend failed " #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "Moniker interface cannot be found" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "Moniker activation timed out" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "Syntax error within moniker" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "Moniker has an unknown moniker prefix" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "Error checking error; no exception" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "General activation error with no description" #: ../bonobo/bonobo-generic-factory.h:79 ../bonobo/bonobo-generic-factory.h:83 msgid "Could not initialize Bonobo" msgstr "Could not initialize Bonobo" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s" msgstr "Failed to resolve or extend '%s" #: ../bonobo/bonobo-moniker-util.c:246 msgid "Failed to activate object" msgstr "Failed to activate object" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "Exception activating '%s'" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "Failed to activate '%s'" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "HTTP Moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "ORB IOR handling moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "Standard Moniker factory" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "generic Oaf activation moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "generic Oaf query moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "generic factory 'new' moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "generic item moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "stream MonikerExtender" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Bonobo Echo server factory" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Bonobo Echo server sample program" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Echo component" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Echo component factory" #: ../samples/echo/echo-client.c:22 msgid "I could not initialize Bonobo" msgstr "Could not initialize Bonobo" #: ../samples/echo/echo-client.c:33 msgid "Could not create an instance of the sample echo component" msgstr "Could not create an instance of the sample echo component" #: ../samples/echo/echo-client.c:45 #, c-format msgid "An exception occurred '%s'" msgstr "An exception occured '%s'" #: ../utils/bonobo-activation-sysconf.c:82 msgid "Could not save configuration file.\n" msgstr "Could not save configuration file.\n" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "Make sure you have permission to write to '%s'.\n" #: ../utils/bonobo-activation-sysconf.c:86 msgid "Successfully wrote configuration file.\n" msgstr "Successfully wrote configuration file.\n" #: ../utils/bonobo-activation-sysconf.c:103 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "configuration file is:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:145 #, c-format msgid "%s already in configuration file\n" msgstr "%s already in configuration file\n" #: ../utils/bonobo-activation-sysconf.c:165 msgid "there is not a properly structured configuration file\n" msgstr "there is not a properly structured configuration file\n" #: ../utils/bonobo-activation-sysconf.c:236 msgid "Bonobo-activation configuration file contains:\n" msgstr "Bonobo-activation configuration file contains:\n" #: ../utils/bonobo-activation-sysconf.c:266 msgid "Directory to remove from configuration file" msgstr "Directory to remove from configuration file" #: ../utils/bonobo-activation-sysconf.c:266 #: ../utils/bonobo-activation-sysconf.c:268 msgid "PATH" msgstr "PATH" #: ../utils/bonobo-activation-sysconf.c:268 msgid "Directory to add to configuration file" msgstr "Directory to add to configuration file" #: ../utils/bonobo-activation-sysconf.c:270 msgid "Display directories in configuration file" msgstr "Display directories in configuration file" #: ../utils/bonobo-activation-sysconf.c:272 msgid "Display path to configuration file" msgstr "Display path to configuration file" libbonobo-2.32.1/po/bn.po0000644000076400007640000005334511373604303012064 00000000000000# The Bengali translation for libbonobo # Copyright (C) 2003 Free Software Foundation . # This file is distributed under the same license as the libbonobo package. # Muhammad Mahmudur Rahman Khan , 2003. # Mahay Alam Khan , 2005. # Samia Niamatullah , 2005. # Sadia Afroz , 2010. # Israt Jahan , 2010. # msgid "" msgstr "" "Project-Id-Version: bn\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?" "product=libbonobo&component=general\n" "POT-Creation-Date: 2010-03-28 09:46+0000\n" "PO-Revision-Date: 2010-03-28 20:07+0600\n" "Last-Translator: Sadia Afroz \n" "Language-Team: Bengali \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../activation-server/activation-context-corba.c:530 msgid "Couldn't find which child the server was listed in" msgstr "কোন চাইল্ডে সার্ভারের তালিকা হয়েছিল খুঁজে পাওয়া যায়নি" #: ../activation-server/activation-context-corba.c:822 msgid "Not a valid Activation ID" msgstr "অ্যাকটিভেশন আইডি কার্যকর নয়" #: ../activation-server/activation-server-main.c:176 msgid "Directory to read .server files from" msgstr "যে ডিরেক্টরি থেকে .server ফাইল পড়তে হবে" #: ../activation-server/activation-server-main.c:176 msgid "DIRECTORY" msgstr "DIRECTORY" #: ../activation-server/activation-server-main.c:179 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "" "ActivationContext হিসেবে সেবা দেয়া হবে (পূর্বনির্ধারিত শুধুমাত্র একটি " "ObjectDirectory)" #: ../activation-server/activation-server-main.c:183 msgid "File descriptor to write IOR to" msgstr "IOR লেখার জন্য ফাইল বর্ণনাকারী" #: ../activation-server/activation-server-main.c:183 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:186 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "" "লক না করেই ব্যবহারকারী সক্রিয়করণ সার্ভার হিসেবে রেজিস্টার করুন। সতর্কীকরণ: এই " "অপশনটি ব্যবহারীর চলন্ত সেশনে মারাত্মক ক্ষতিকর হতে পারে, এবং শুধুমাত্র ডিবাগিং এর " "জন্য ব্যবহার হওয়া উচিত" #: ../activation-server/activation-server-main.c:194 msgid "Query expression to evaluate" msgstr "যাচাইয়ের জন্য কোয়েরী এক্সপ্রেশন" #: ../activation-server/activation-server-main.c:194 msgid "EXPRESSION" msgstr "EXPRESSION" #: ../activation-server/activation-server-main.c:547 #: ../utils/bonobo-activation-sysconf.c:305 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "বিদ্যমান কমান্ড লাইন অপশনের পূর্ণ তালিকা দেখতে '%s --সহায়তা' চালান।\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "কোরবা CosNaming সার্ভিস।" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "নাম সার্ভিস" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "ঘোষনা সার্ভিস" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "সক্রিয়করণের জন্য ঘোষনা সার্ভিস" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "দূরবর্তী প্রক্রিয়াতে আমরা এখনও shlib অবজেক্ট সক্রিয়করণ পরিচালনা করিনি" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "বোনোবো সক্রিয়করণ কনফিগারেশন ফাইল সফলভাবে পড়া যায়নি। অনুগ্রহ করে, পরীক্ষা করুন এটি " "কার্যকর: %s" #: ../activation-server/object-directory-load.c:102 msgid "a NULL iid is not valid" msgstr "ফাঁকা iid কার্যকর নয়" #: ../activation-server/object-directory-load.c:106 #, c-format msgid "iid %s has a NULL type" msgstr "iid %s-এর একটি ফাঁকা ধরন রয়েছে" #: ../activation-server/object-directory-load.c:110 #, c-format msgid "iid %s has a NULL location" msgstr "iid %s-এর একটি ফাঁকা অবস্থান রয়েছে" #: ../activation-server/object-directory-load.c:119 #| msgid "invalid character '%c' in iid '%s'" msgid "invalid character '%c' in iid '%s'" msgstr "iid '%2$s' এ অকার্যকর অক্ষর '%1$c'" #: ../activation-server/object-directory-load.c:349 #, c-format msgid "Property '%s' has no value" msgstr "বৈশিষ্ট্য '%s'-এর কোন মান নেই" #: ../activation-server/object-directory-load.c:583 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "ত্রুটিপূর্ণভাবে গঠিত XML নথি %s পার্স করা যায়নি" #: ../activation-server/object-directory-load.c:629 #, c-format msgid "Trying dir %s" msgstr "dir %s চেষ্টা করা হচ্ছে" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "চাইল্ড প্রক্রিয়া কোন ত্রুটি বার্তা দেয়নি, অজানা ব্যর্থতা ঘটেছে" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "চাইল্ড প্রক্রিয়া থেকে পড়তে ব্যর্থ: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, c-format msgid "EOF from child process\n" msgstr "চাইল্ড প্রক্রিয়া থেকে EOF\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:438 msgid "Couldn't spawn a new process" msgstr "নতুন প্রক্রিয়া তৈরী করা যায়নি" #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "File descriptor to print IOR on" msgstr "IOR মুদ্রণের জন্য ফাইল বর্ণনাকারী" #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:399 msgid "IID to activate" msgstr "যে IID সক্রিয় করতে হবে" #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Prevent registering of server with OAF" msgstr "OAF-এর সাথে সার্ভার নিবন্ধন প্রতিরোধ" #: ../bonobo-activation/bonobo-activation-init.c:409 msgid "Bonobo Activation options:" msgstr "বোনোবো সক্রিয়করণ অপশন:" #: ../bonobo-activation/bonobo-activation-init.c:410 msgid "Show Bonobo Activation options" msgstr "বোনোবো সক্রিয়করণ অপশন প্রদর্শন" #: ../bonobo-activation/bonobo-activation-init.c:518 msgid "Bonobo activation options" msgstr "বোনোবো সক্রিয়করণ অপশন" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "`%2$s'-এর সাথে `%1$s'-এর g_module_open ব্যর্থ হয়েছে" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "`%s' তে Bonobo_Plugin_info চিহ্ন খুঁজে পাওয়া যাচ্ছে না" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "ফ্যাক্টরি `%s', `%s' এর জন্য NIL ফেরত দিয়েছে " #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Shlib `%s', `%s' ধারণ করে না" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "নাম" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "অ্যাপ্লিকেশনের অনন্য নাম" #: ../bonobo/bonobo-object.c:929 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:929 msgid "Custom CORBA POA" msgstr "স্বনির্ধারিত কোরবা POA" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "কোন অসমর্থিত কাজ করার চেষ্টা করা হয়েছে" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "ইনপুট আউটপুট ত্রুটি " #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "অকার্যকর আর্গুমেন্টের মান" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "অবজেক্ট খুঁজে পাওয়া যায়নি" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "অবজেক্টের বিবরণে বানান (syntax) ত্রুটি" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "ফ্যাক্টরি থেকে অবজেক্ট সক্রিয় করা যাচ্ছে না" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "স্ট্রীম ব্যবহারের অনুমতি নেই" # msgstr "স্ট্রীম (stream) ব্যবহারের অনুমতি নেই" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "স্ট্রীমে কোন অসমর্থিত কাজ করার চেষ্টা করা হয়েছে" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "স্ট্রীমে ইনপুট আউটপুট ত্রুটি" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "স্টোরেজে ইনপুট আউটপুট ত্রুটি" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "স্টোরেজে যে নামটি আগে থেকেই আছে " #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "স্টোরেজে অবজেক্ট খুঁজে পাওয়া যায়নি" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "স্টোরেজে কোন কাজ করার অনুমতি নেই" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "স্টোরেজে কোন অসমর্থিত কাজ করার চেষ্টা করা হয়েছে" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "অবজেক্ট কোন স্ট্রীম নয়" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "অবজেক্ট কোন স্টোরেজ নয়" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "স্টোরেজ ফাঁকা নয়" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "ত্রুটিপূর্ণভাবে গঠিত ব্যবহারকারী ইন্টারফেস XML বিবরণ" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "XML ব্যবহারকারী ইন্টারফেস উপাদানের অকার্যকর পাথ" # # এক্স.এম.এল -- should be consistent #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "অনুরোধকৃত UI বৈশিষ্ট্য বিদ্যমান নেই" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "অজানা কমান্ড অথবা কাজ" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "কমান্ড অসংবেদনশীল" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "ডাটা'র ধরন ভুল" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "স্ট্রীম খুঁজে পাওয়া যায়নি" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "বৈশিষ্ট্য খুঁজে পাওয়া যায়নি" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "বৈশিষ্টের ধরন অকার্যকর" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "বৈশিষ্ট্যাবলী অপরিবর্তনীয়" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "ডাটাবেসের ব্যাকএন্ড কনফিগারেশন ব্যর্থ" #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "মনিকার ইন্টারফেস খুঁজে পাওয়া যায়নি" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "মনিকার সক্রিয়করণের সময় শেষ" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "মনিকারে বানান (Syntax) ত্রুটি" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "মনিকারে অজানা মনিকার উপসর্গ (Prefix) রয়েছে" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "ত্রুটি নির্ণয়ে ত্রুটি; কোন ব্যতিক্রম নেই" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "বিবরণহীন সাধারণ সক্রিয়করণ ত্রুটি" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s" msgstr "'%s-কে সমাধান করতে, বা বাড়াতে ব্যর্থ" #: ../bonobo/bonobo-moniker-util.c:247 msgid "Failed to activate object" msgstr "অবজেক্টকে সক্রিয় করতে ব্যর্থ " #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "'%s' সক্রিয়করণে ব্যতিক্রম " #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "'%s' সক্রিয় করতে ব্যর্থ" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "HTTP মনিকার" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "ORB IOR দ্বারা চালিত মনিকার" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "আদর্শ মনিকার ফ্যাক্টরি" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "সামগ্রিক Oaf সক্রিয়করণ মনিকার" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "সামগ্রিক Oaf জিজ্ঞাসা মনিকার" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "সামগ্রিক ফ্যাক্টরি 'নতুন' মনিকার" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "সামগ্রিক আইটেম মনিকার" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "MonikerExtender স্ট্রীম" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "বোনোবো ইকো সার্ভার ফ্যাক্টরি" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "বোনোবো ইকো সার্ভারের নমুনা প্রোগ্রাম" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "ইকোর কম্পোনেন্ট" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "ইকো কম্পোনেন্টের ফ্যাক্টরি" #: ../samples/echo/echo-client.c:24 msgid "I could not initialize Bonobo" msgstr "আমি বোনোবো আরম্ভ করতে পারিনি" #: ../samples/echo/echo-client.c:35 msgid "Could not create an instance of the sample echo component" msgstr "নমুনা ইকো কম্পোনেন্টের কোন উদাহরণ তৈরি করা যায়নি" #: ../samples/echo/echo-client.c:47 #, c-format msgid "An exception occurred '%s'" msgstr "একটি ব্যতিক্রম '%s' ঘটেছে" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Could not save configuration file.\n" msgstr "কনফিগারেশন ফাইল সংরক্ষণ করা যায়নি।\n" #: ../utils/bonobo-activation-sysconf.c:84 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "অনুগ্রহ করে, নিশ্চিত হোন যে '%s'-এ আপনার লেখার অনুমতি রয়েছে।\n" #: ../utils/bonobo-activation-sysconf.c:87 #, c-format msgid "Successfully wrote configuration file.\n" msgstr "সফলভাবে কনফিগারেশন ফাইল লেখা হয়েছে।\n" #: ../utils/bonobo-activation-sysconf.c:104 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "কনফিগারেশন ফাইল হচ্ছে:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:146 #, c-format msgid "%s already in configuration file\n" msgstr "%s ইতিমধ্যেই কনফিগারেশন ফাইলে রয়েছে\n" #: ../utils/bonobo-activation-sysconf.c:166 #, c-format msgid "there is not a properly structured configuration file\n" msgstr "সঠিক কাঠামোর কোন কনফিগারেশন ফাইল নেই\n" #: ../utils/bonobo-activation-sysconf.c:237 #, c-format msgid "Bonobo-activation configuration file contains:\n" msgstr "বোনোবো-সক্রিয়করণ কনফিগারেশন ফাইল ধারন করে:\n" #: ../utils/bonobo-activation-sysconf.c:267 msgid "Directory to remove from configuration file" msgstr "কনফিগারেশন ফাইল থেকে যে ডিরেক্টরি সরানো হবে" #: ../utils/bonobo-activation-sysconf.c:267 #: ../utils/bonobo-activation-sysconf.c:269 msgid "PATH" msgstr "PATH" #: ../utils/bonobo-activation-sysconf.c:269 msgid "Directory to add to configuration file" msgstr "কনফিগারেশন ফাইলে যে ডিরেক্টরি সংযুক্ত হবে" #: ../utils/bonobo-activation-sysconf.c:271 msgid "Display directories in configuration file" msgstr "কনফিগারেশন ফাইলে ডিরেক্টরি প্রদর্শন" #: ../utils/bonobo-activation-sysconf.c:273 msgid "Display path to configuration file" msgstr "কনফিগারেশন ফাইলে পাথ প্রদর্শন" #~ msgid "" #~ "Register as the users' activation server without locking [!] for debugging" #~ msgstr "" #~ "ডিবাগ করার জন্য লকবিহীন [!] অবস্থায় ব্যবহারকারীর অ্যাক্টিভেশন-সার্ভাররূপে " #~ "নিবন্ধিত করা হবে" #~ msgid "Bonobo Activation" #~ msgstr "বোনোবো সক্রিয়করণ" #~ msgid "Could not initialize Bonobo" #~ msgstr "বনোবো চালু (Initialize) করা যায়নি" #~ msgid "Race condition activating server '%s'" #~ msgstr "রেস অবস্থা সক্রিয়করণ সার্ভার '%s'" #~ msgid "directory path" #~ msgstr "ডিরেক্টরি পাথ" #~ msgid "Failed to execute %s: %d (%s)\n" #~ msgstr "%s সক্রিয় করতে ব্যর্থ: %d (%s)\n" libbonobo-2.32.1/po/zh_HK.po0000664000076400007640000003675511433015514012475 00000000000000# Chinese (Hong Kong) translation for libbonobo. # Copyright (C) 2001, 02, 03, 04, 05, 06, 07 Free Software Foundation, Inc. # Joe Man , 2001, 2002. # Ben Wu , 2002 # Chao-Hsiung Liao , 2005. # Abel Cheung , 2003, 04, 06. # # msgid "" msgstr "" "Project-Id-Version: libbonobo 2.31.0\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2010-07-24 19:54+0800\n" "PO-Revision-Date: 2010-07-24 19:55+0800\n" "Last-Translator: Chao-Hsiung Liao \n" "Language-Team: Chinese (Hong Kong) \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../activation-server/activation-context-corba.c:530 msgid "Couldn't find which child the server was listed in" msgstr "無法找出該伺服器位列於哪一個客戶端內" #: ../activation-server/activation-context-corba.c:822 msgid "Not a valid Activation ID" msgstr "不是有效的 Activation ID" #: ../activation-server/activation-server-main.c:174 msgid "Directory to read .server files from" msgstr ".server 檔案所在的目錄" #: ../activation-server/activation-server-main.c:174 msgid "DIRECTORY" msgstr "目錄" #: ../activation-server/activation-server-main.c:177 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "以 ActivationContext 模式提供服務(預設是 ObjectDirectory 模式)" #: ../activation-server/activation-server-main.c:181 msgid "File descriptor to write IOR to" msgstr "用作寫入 IOR 的 file descriptor" #: ../activation-server/activation-server-main.c:181 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:184 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "註冊為沒有鎖定的使用者 activation 伺服器。警告:這選項的副作用是可能會影響使用者正在運行的作業階段的穩定性,及此的應為除錯時使用。" #: ../activation-server/activation-server-main.c:192 msgid "Query expression to evaluate" msgstr "需要進行查詢的表示式" #: ../activation-server/activation-server-main.c:192 msgid "EXPRESSION" msgstr "表示式" #: ../activation-server/activation-server-main.c:541 #: ../utils/bonobo-activation-sysconf.c:305 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "執行‘%s --help’可列出完整的選項。\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "CORBA CosNaming 服務。" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "名稱服務" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "通知服務" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "activation 的通知服務" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "目前仍然未可以處理在遠端進程內啟動 shlib 物件的情況" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "無法正確讀取 Bonobo Activation 設定檔。請查核該檔案是否正確:%s" #: ../activation-server/object-directory-load.c:102 msgid "a NULL iid is not valid" msgstr "NULL 的 iid 是不合法的" #: ../activation-server/object-directory-load.c:106 #, c-format msgid "iid %s has a NULL type" msgstr "iid %s 的類型是 NULL" #: ../activation-server/object-directory-load.c:110 #, c-format msgid "iid %s has a NULL location" msgstr "iid %s 的位置是 NULL" #: ../activation-server/object-directory-load.c:119 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "iid‘%2$s’出現不合法的字符‘%1$c’" #: ../activation-server/object-directory-load.c:349 #, c-format msgid "Property '%s' has no value" msgstr "屬性‘%s’沒有設定值" #: ../activation-server/object-directory-load.c:583 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "無法解析格式不正確的 XML 文件 %s" #: ../activation-server/object-directory-load.c:629 #, c-format msgid "Trying dir %s" msgstr "嘗試開啟 %s 目錄" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "子進程沒有傳回錯誤訊息,發生了不明的錯誤" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "讀取子進程失敗:%s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, c-format msgid "EOF from child process\n" msgstr "子進程的 EOF\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:438 msgid "Couldn't spawn a new process" msgstr "無法衍生新的進程" #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "File descriptor to print IOR on" msgstr "用作印出 IOR 的 file descriptor" #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:399 msgid "IID to activate" msgstr "準備啟用的 IID" #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Prevent registering of server with OAF" msgstr "防止使用 OAF 來登記伺服器" #: ../bonobo-activation/bonobo-activation-init.c:409 msgid "Bonobo Activation options:" msgstr "Bonobo activation 選項:" #: ../bonobo-activation/bonobo-activation-init.c:410 msgid "Show Bonobo Activation options" msgstr "顯示 Bonobo Activation 選項" #: ../bonobo-activation/bonobo-activation-init.c:518 msgid "Bonobo activation options" msgstr "Bonobo activation 選項" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "‘%s’的 g_module_open 傳回‘%s’錯誤" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "無法在‘%s’內找到 Bonobo_Plugin_info 函數" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "元件工廠‘%s’回傳 NIL 給‘%s’" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Shlib‘%s’沒有包含‘%s’" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "名稱" # FIXME: 我很不滿意自己這個翻譯,表達不出 unique 的意義 -- Abel #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "程式唯一名稱" #: ../bonobo/bonobo-object.c:929 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:929 msgid "Custom CORBA POA" msgstr "自選 CORBA POA" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "嘗試執行不支援的操作程序" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "輸出入錯誤" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "參數值不合法" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "找不到物件" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "物件描述內有語法錯誤" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "無法從元件工廠啟動物件" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "不允許存取資料串流" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "嘗試執行不支援的資料串流動作" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "資料串流發生輸出入錯誤" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "儲存庫發生輸出入錯誤" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "儲存庫內已有相同的名稱" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "在儲存庫內找不到物件" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "在儲存庫內不允許執行動作" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "嘗試執行不支援的儲存庫動作" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "物件不是資料串流" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "物件不是儲存庫" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "儲存庫內仍有物件" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "不合格式的使用者界面 XML 描述資料" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "XML 使用者界面元件的路徑不合法" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "要求的 UI 屬性並不存在" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "不明的指令或行動" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "指令暫時無法使用" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "不正確的資料類別" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "找不到資料串流" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "找不到屬性" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "不合規格的屬性類別" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "屬性是唯讀的" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "設定資料庫背景模組失敗" #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "無法找到命名器界面" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "啟動命名器逾時" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "命名器內含有語法錯誤" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "命名器具有不明的前置字串" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "檢查錯誤時發生錯誤;沒有例外處理" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "沒有說明的一般啟動錯誤" # FIXME: Wish if I knew more about CORBA stuff..... -- Abel #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s'" msgstr "無法解析或擴展「%s」" #: ../bonobo/bonobo-moniker-util.c:247 msgid "Failed to activate object" msgstr "無法啟動物件" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "啟動‘%s’時發生例外情況" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "無法啟動‘%s’" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "HTTP 命名器" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "ORB IOR 命名器處理" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "標準命名器元件工廠" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "一般的 Oaf 啟動命名器" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "一般的 Oaf 查詢命名器" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "一般的「新增」命名器的元件工廠" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "一般的項目命名器" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "資料串流命名延伸器" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Bonobo Echo 伺服器工廠" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Bonobo Echo 伺服器樣本程式" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Echo 元件" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Echo 元件工廠" #: ../samples/echo/echo-client.c:24 msgid "I could not initialize Bonobo" msgstr "無法初始化 Bonobo" #: ../samples/echo/echo-client.c:35 msgid "Could not create an instance of the sample echo component" msgstr "無法產生 echo 範例元件的進程" #: ../samples/echo/echo-client.c:47 #, c-format msgid "An exception occurred '%s'" msgstr "發生例外處理情況:‘%s’" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Could not save configuration file.\n" msgstr "無法儲存設定檔。\n" #: ../utils/bonobo-activation-sysconf.c:84 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "請確定你有足夠權限寫入‘%s’。\n" #: ../utils/bonobo-activation-sysconf.c:87 #, c-format msgid "Successfully wrote configuration file.\n" msgstr "寫入設定檔完成。\n" #: ../utils/bonobo-activation-sysconf.c:104 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "設定檔是:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:146 #, c-format msgid "%s already in configuration file\n" msgstr "設定檔內已經有 %s\n" #: ../utils/bonobo-activation-sysconf.c:166 #, c-format msgid "there is not a properly structured configuration file\n" msgstr "這並不是具有正確結構的設定檔\n" #: ../utils/bonobo-activation-sysconf.c:237 #, c-format msgid "Bonobo-activation configuration file contains:\n" msgstr "Bonobo-activation 設定檔內包含:\n" #: ../utils/bonobo-activation-sysconf.c:267 msgid "Directory to remove from configuration file" msgstr "從設定檔內移除的目錄" #: ../utils/bonobo-activation-sysconf.c:267 #: ../utils/bonobo-activation-sysconf.c:269 msgid "PATH" msgstr "路徑" #: ../utils/bonobo-activation-sysconf.c:269 msgid "Directory to add to configuration file" msgstr "準備新增至設定檔的目錄" #: ../utils/bonobo-activation-sysconf.c:271 msgid "Display directories in configuration file" msgstr "顯示設定檔中的目錄" #: ../utils/bonobo-activation-sysconf.c:273 msgid "Display path to configuration file" msgstr "顯示設定檔的路徑" #~ msgid "Could not initialize Bonobo" #~ msgstr "無法初始化 Bonobo" #~ msgid "" #~ "Register as the users' activation server without locking [!] for debugging" #~ msgstr "註冊為使用者的 activation 伺服器而不鎖定以為偵錯之用。" #~ msgid "Bonobo Activation" #~ msgstr "Bonobo Activation" #~ msgid "Race condition activating server '%s'" #~ msgstr "啟動伺服器‘%s’時出現衝突狀態" #~ msgid "directory path" #~ msgstr "目錄路徑" libbonobo-2.32.1/po/et.po0000664000076400007640000002414711546203545012102 00000000000000# Libbonobo eesti keele tõlge. # Estonian translation of libbonobo. # # Copyright (C) 2005, 2006 Free Software Foundation, Inc. # Copyright (C) 2007–2010, The GNOME Project. # This file is distributed under the same license as the libbonobo package. # # Ivar Smolin , 2005–2010. # msgid "" msgstr "" "Project-Id-Version: libbonobo HEAD\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?" "product=bonobo&component=libbonobo\n" "POT-Creation-Date: 2010-12-10 18:33+0000\n" "PO-Revision-Date: 2010-04-25 08:05+0300\n" "Last-Translator: Ivar Smolin \n" "Language-Team: Estonian \n" "Language: et\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" msgid "Couldn't find which child the server was listed in" msgstr "Pole võimalik leida, millises alamprotsessis server kuulas" msgid "Not a valid Activation ID" msgstr "Vigane aktiveerimise ID" msgid "Directory to read .server files from" msgstr "Kataloog, millest lugeda .server faile" msgid "DIRECTORY" msgstr "KATALOOG" msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "" "Serveeritakse kui ActivationContexti (vaikimisi serveeritakse " "ObjectDirectoryt)" msgid "File descriptor to write IOR to" msgstr "Failideskriptor, kuhu IOR kirjutada" msgid "FD" msgstr "FD" msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "" "Kasutaja aktiveerimisserveri registreerimine ilma lukustamata. Hoiatus: " "selle valiku kasutamisega võivad kaasneda ohtlikud kõrvalmõjud kasutaja " "käimasolevale seansile ja seda peaks kasutama ainult silumiseesmärgil" msgid "Query expression to evaluate" msgstr "Hinnatav päringuavaldis" msgid "EXPRESSION" msgstr "AVALDIS" #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "" "Täieliku saadaolevate käsureavõtmete loetelu jaoks käivita '%s --help'.\n" msgid "CORBA CosNaming service." msgstr "CORBA CosNaming teenus." msgid "Name service" msgstr "Nimeteenus" msgid "Notification service" msgstr "Teavitusteenus" msgid "Notification service for activation" msgstr "Teavitusteenus aktiveerimise jaoks" msgid "We don't handle activating shlib objects in a remote process yet" msgstr "" "Shlib objektide aktiveerimist kaugprotsessides pole veel võimalik käsitleda" #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "Bonobo Aktiveerimise seadistusfaili lugemine nurjus. Palun veendu, et see " "oleks korrektne sisend: %s" msgid "a NULL iid is not valid" msgstr "NULL-iid pole lubatud" #, c-format msgid "iid %s has a NULL type" msgstr "iid %s on NULL-tüüpi" #, c-format msgid "iid %s has a NULL location" msgstr "iid %s on NULL-asukohaga" #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "lubamatu märk '%c' iid-is '%s'" #, c-format msgid "Property '%s' has no value" msgstr "Omadusel '%s' puudub väärtus" #, c-format msgid "Could not parse badly formed XML document %s" msgstr "Vigaselt vormindatud XML-dokumenti %s pole võimalik analüüsida" #, c-format msgid "Trying dir %s" msgstr "Kataloogi %s proovimine" msgid "Child process did not give an error message, unknown failure occurred" msgstr "Tekkis tundmatu tõrge, alamprotsess ei väljastanud veateadet" #, c-format msgid "Failed to read from child process: %s\n" msgstr "Tõrge alamprotsessilt andmete lugemisel: %s\n" #, c-format msgid "EOF from child process\n" msgstr "Alamprotsessilt tuli faililõputunnus\n" msgid "Couldn't spawn a new process" msgstr "Uut protsessi pole võimalik luua" msgid "File descriptor to print IOR on" msgstr "Failideskriptor, kuhu IOR printida" msgid "IID to activate" msgstr "Aktiveeritav IID" msgid "Prevent registering of server with OAF" msgstr "" "Serveri registreerimise keelamine objektide aktiveerimisraamistikuga (OAF)" msgid "Bonobo Activation options:" msgstr "Bonobo aktiveerimisvalikud:" msgid "Show Bonobo Activation options" msgstr "Bonobo aktiveerimisvõtmete näitamine" msgid "Bonobo activation options" msgstr "Bonobo aktiveerimisvõtmed" #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "g_module_open `%s' avamisel tekkis tõrge `%s'" #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "Sümbolit Bonobo_Plugin_info pole võimalik `%s' seest leida" #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "Factory `%s' tagastas `%s' jaoks väärtuse NIL" #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Shlib `%s' ei sisaldanud `%s'" msgid "Name" msgstr "Nimi" msgid "Application unique name" msgstr "Rakenduse unikaalne nimi" msgid "POA" msgstr "POA" msgid "Custom CORBA POA" msgstr "Kohandatud CORBA POA" msgid "An unsupported action was attempted" msgstr "Prooviti toetamata toimingut" msgid "IO Error" msgstr "S/V viga" msgid "Invalid argument value" msgstr "Vigane argumendi väärtus" msgid "Object not found" msgstr "Objekti ei leitud" msgid "Syntax error in object description" msgstr "Süntaksi viga objekti kirjelduses" msgid "Cannot activate object from factory" msgstr "Objekti pole factoryst võimalik aktiveerida" msgid "No permission to access stream" msgstr "Voole ligipääsuks pole õiguseid" msgid "An unsupported stream action was attempted" msgstr "Prooviti toetamata vootoimingut" msgid "IO Error on stream" msgstr "S/V viga voos" msgid "IO Error on storage" msgstr "S/V viga salvestis" msgid "Name already exists in storage" msgstr "Nimi on salvestis juba olemas" msgid "Object not found in storage" msgstr "Objekti ei leitud salvestist" msgid "No permission to do operation on storage" msgstr "Salvestiga tegelemiseks pole piisavalt õigusi" msgid "An unsupported storage action was attempted" msgstr "Prooviti toetamata salvestitoimingut" msgid "Object is not a stream" msgstr "Objekt ei ole voog" msgid "Object is not a storage" msgstr "Objekt ei ole salvesti" msgid "Storage is not empty" msgstr "Salvesti ei ole tühi" msgid "malformed user interface XML description" msgstr "kasutajaliidese vigaselt vormindatud XML-kirjeldus" msgid "invalid path to XML user interface element" msgstr "vigane rada XML-kasutajaliidese elemendile" msgid "the requested UI attribute didn't exist" msgstr "küsitud kasutajaliideseatribuuti pole olemas" msgid "Unknown command or verb" msgstr "Tundmatu käsk või verb" msgid "Command is insensitive" msgstr "Käsk on tõstutundetu" msgid "incorrect data type" msgstr "vigane andmetüüp" msgid "stream not found" msgstr "voogu ei leitud" msgid "property not found" msgstr "omadust ei leitud" msgid "property has invalid type" msgstr "omadus on vigase tüübiga" msgid "property is read only" msgstr "omadus on kirjutuskaitsega" msgid "config database backend failed " msgstr "tõrge seadistuste andmebaasi taustaprogrammis " msgid "Moniker interface cannot be found" msgstr "Monikeri liidest ei leitud" msgid "Moniker activation timed out" msgstr "Monikeri aktiveerimine ületas ajapiirangu" msgid "Syntax error within moniker" msgstr "Süntaksi viga monikeris" msgid "Moniker has an unknown moniker prefix" msgstr "Monikeril on tundmatu monikerieesliide" msgid "Error checking error; no exception" msgstr "Viga veakontrollil, erand puudub" msgid "General activation error with no description" msgstr "Üldine ilma kirjelduseta aktiveerimisviga" #, c-format msgid "Failed to resolve, or extend '%s'" msgstr "Tõrge '%s' lahendamisel või laiendamisel" msgid "Failed to activate object" msgstr "Tõrge objekti aktiveerimisel" #, c-format msgid "Exception activating '%s'" msgstr "Viga '%s' aktiveerimisel" #, c-format msgid "Failed to activate '%s'" msgstr "Tõrge '%s' aktiveerimisel" msgid "HTTP Moniker" msgstr "HTTP-Moniker" msgid "ORB IOR handling moniker" msgstr "ORB IOR käsitlemise moniker" msgid "Standard Moniker factory" msgstr "Standard Moniker factory" msgid "generic Oaf activation moniker" msgstr "üldine Oaf-i aktiveerimismoniker" msgid "generic Oaf query moniker" msgstr "üldine Oaf-i päringumoniker" msgid "generic factory 'new' moniker" msgstr "üldise factory 'uus' moniker" msgid "generic item moniker" msgstr "üldise kirje moniker" msgid "stream MonikerExtender" msgstr "voo MonikerExtender" msgid "Bonobo Echo server factory" msgstr "Bonobo Kajaserveri factory" msgid "Bonobo Echo server sample program" msgstr "Bonobo Kajaserveri näidisprogramm" msgid "Echo component" msgstr "Kaja komponent" msgid "Echo component factory" msgstr "Kajakomponendi factory" msgid "I could not initialize Bonobo" msgstr "Bonobo lähtestamine pole võimalik" msgid "Could not create an instance of the sample echo component" msgstr "Näidiskomponendi (kaja) instantsi pole võimalik luua" #, c-format msgid "An exception occurred '%s'" msgstr "Leidis aset erandolukord '%s'" #, c-format msgid "Could not save configuration file.\n" msgstr "Seadistusfaili pole võimalik salvestada.\n" #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "Palun veendu, et sul on õigused '%s' kirjutamiseks.\n" #, c-format msgid "Successfully wrote configuration file.\n" msgstr "Seadistusfail kirjutati edukalt.\n" #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "seadistusfail on:\n" " %s\n" #, c-format msgid "%s already in configuration file\n" msgstr "%s on juba seadistusfailis\n" #, c-format msgid "there is not a properly structured configuration file\n" msgstr "puudub korralikult struktureeritud seadistusfail\n" #, c-format msgid "Bonobo-activation configuration file contains:\n" msgstr "Bonobo-activation seadistusfail sisaldab:\n" msgid "Directory to remove from configuration file" msgstr "Seadistusfailist eemaldatav kataloog" msgid "PATH" msgstr "RADA" msgid "Directory to add to configuration file" msgstr "Seadistusfaili lisatav kataloog" msgid "Display directories in configuration file" msgstr "Kataloogide kuvamine seadistusfailides" msgid "Display path to configuration file" msgstr "Seadistusfaili raja kuvamine" libbonobo-2.32.1/po/sq.po0000644000076400007640000004227311173072711012106 00000000000000# Përkthimi i mesazheve të libbono në shqip # Copyright (C) 2003, 2004, 2005, 2007, 2008 Free Software Foundation, Inc. # # # Laurent Dhima , 2003, 2004, 2005, 2007, 2008. msgid "" msgstr "" "Project-Id-Version: libbonobo HEAD\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2008-07-16 15:32+0200\n" "PO-Revision-Date: 2008-03-18 16:49+0100\n" "Last-Translator: Laurent Dhima \n" "Language-Team: albanian \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" #: ../activation-server/activation-context-corba.c:530 msgid "Couldn't find which child the server was listed in" msgstr "E pamundur gjetja se në çfarë proçesi bir përfshihej serveri" #: ../activation-server/activation-context-corba.c:822 msgid "Not a valid Activation ID" msgstr "ID aktivimi e pavlefshme" #: ../activation-server/activation-server-main.c:166 msgid "Directory to read .server files from" msgstr "Directory nga e cila duhet të lexohen files .server" #: ../activation-server/activation-server-main.c:166 msgid "DIRECTORY" msgstr "DIRECTORY" #: ../activation-server/activation-server-main.c:169 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "" "Sjellje si ActivationContext (e prezgjedhur është vetëm ObjectDirectory)" #: ../activation-server/activation-server-main.c:173 msgid "File descriptor to write IOR to" msgstr "Përshkruesi i file ku do të shkruhet IOR" #: ../activation-server/activation-server-main.c:173 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:176 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "" "Regjistron si server aktivimi i përdoruesit pa bllokuar. Kujdes: ky opsion " "mund të ketë efekte të rrezikshme në stabilitetin e seancës në ekzekutin të " "përdoruesit, dhe duhet përdorur vetëm për qëllime testimi" #: ../activation-server/activation-server-main.c:184 msgid "Query expression to evaluate" msgstr "Ekspresioni i kërkesës që duhet vlerësuar" # (pofilter) acronyms: acronyms should not be translated: EXPRESSION #: ../activation-server/activation-server-main.c:184 msgid "EXPRESSION" msgstr "EKSPRESION" #: ../activation-server/activation-server-main.c:470 #: ../utils/bonobo-activation-sysconf.c:305 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "" "Zbato '%s --help' për të shikuar listën e plotë të opsioneve të komandës.\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "Shërbimi CORBA CosNaming." #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "Shërbimi i emrave" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "Shërbimi i njoftimeve" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "Shërbimi i njoftimeve për aktivimin" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "" "Aktivimi i objekteve shlib në një proçes remot nuk mund të kryhet akoma" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "File i konfigurimit të Bonobo Activation nuk është lexuar me korrektësi. " "Verifiko që është i vlefshëm: %s" #: ../activation-server/object-directory-load.c:102 msgid "a NULL iid is not valid" msgstr "një iid NULL nuk është i vlefshëm" #: ../activation-server/object-directory-load.c:106 #, c-format msgid "iid %s has a NULL type" msgstr "iid %s ka një tip NULL" #: ../activation-server/object-directory-load.c:110 #, c-format msgid "iid %s has a NULL location" msgstr "iid %s ka një pozicion NULL" #: ../activation-server/object-directory-load.c:119 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "simbol i pavlefshëm '%c' tek iid '%s'" #: ../activation-server/object-directory-load.c:349 #, c-format msgid "Property '%s' has no value" msgstr "Pronësia '%s' nuk ka një vlerë" #: ../activation-server/object-directory-load.c:583 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "I pamundur analizimi i dokumentit XML të keqformuar %s" #: ../activation-server/object-directory-load.c:629 #, c-format msgid "Trying dir %s" msgstr "Duke provuar dir %s" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "" "Proçesi bir nuk ka dhënë asnjë mesazh gabimi, është verifikuar një difekt i " "panjohur" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "E pamundur të lexosh nga proçesi bir: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, c-format msgid "EOF from child process\n" msgstr "EOF nga proçesi bir\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:438 msgid "Couldn't spawn a new process" msgstr "I pamundur gjenerimi i një proçesi të ri" #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "File descriptor to print IOR on" msgstr "Përshkruesi i file ku të stampohet IOR" #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:399 msgid "IID to activate" msgstr "IID për t'u aktivuar" #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Prevent registering of server with OAF" msgstr "Ndalo regjistrimin e server me OAF" #: ../bonobo-activation/bonobo-activation-init.c:409 msgid "Bonobo Activation options:" msgstr "Opsione për Bonobo activation" #: ../bonobo-activation/bonobo-activation-init.c:410 msgid "Show Bonobo Activation options" msgstr "Shfaq opcionet e aktivizimit të Bonobo" # (pofilter) simplecaps: checks the capitalisation of two strings isn't wildly different #: ../bonobo-activation/bonobo-activation-init.c:518 msgid "Bonobo activation options" msgstr "Opsione për Bonobo activation" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "g_module_open për `%s' dështoi me `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "E pamundur gjetja e simbolit Bonobo_Plugin_info në `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "Fabrika `%s' ka kthyer NIL për `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Shlib `%s' nuk përmban `%s'" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "Emri" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "Emri i dallueshëm i programit" #: ../bonobo/bonobo-object.c:926 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:926 msgid "Custom CORBA POA" msgstr "CORBA POA e personalizuar" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "Është kryer një operacion i pasuportuar" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "Gabim IO" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "Vlerë argumenti e pavlefshme" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "Objekti nuk u gjet" # (pofilter) endwhitespace: checks whether whitespace at the end of the strings matches #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "Gabim sintakse në përshkrimin e objektit " #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "I pamundur aktivimi i objektit nga fabrika" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "Mungojnë lejet për t'u futur në stream" # (pofilter) endwhitespace: checks whether whitespace at the end of the strings matches #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "Është kryer një operacion në stream i pasuportuar " #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "Gabim IO në stream" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "Gabim IO në storage" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "Ky emër ekziston në storage" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "Objekti nuk u gjet në storage" # (pofilter) endwhitespace: checks whether whitespace at the end of the strings matches #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "Mungon leja për të kryer operacionin në storage " #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "Është kryer një aksion i pasuportuar në storage" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "Objekti nuk është një stream" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "Objekti nuk është një storage" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "Storage nuk është bosh" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "përshkrim i keqformuar XML i interfaqes së përdoruesit" # (pofilter) endwhitespace: checks whether whitespace at the end of the strings matches #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "" "pozicioni për tek elementi XML i interfaqes së përdoruesit nuk është i saktë " #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "karakteristika e kërkuar UI nuk ekziston" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "Komandë apo thërritje e panjohur" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "Komanda nuk është e ndjeshme" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "lloj e dhëne jo korrekte" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "stream nuk u gjet" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "pronësia nuk u gjet" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "pronësia nuk ka lloj të vlefshëm" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "pronësia është vetëm për lexim" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "backend i databazës së konfigurimit dështoi " # (pofilter) simplecaps: checks the capitalisation of two strings isn't wildly different #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "Nuk u gjet interfaqja Moniker" # (pofilter) simplecaps: checks the capitalisation of two strings isn't wildly different #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "Aktivimi i Moniker skadoi" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "Gabim sintaksor në moniker" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "Moniker ka një prefiks moniker të panjohur" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "Gabim gjatë kontrollit të gabimit; asnjë përjashtim" # (pofilter) endwhitespace: checks whether whitespace at the end of the strings matches #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "Gabim në aktivimin e përgjithshëm, pa përshkrim të hollësishëm " #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s" msgstr "E pamundur zgjidhja, apo zgjerimi i '%s" #: ../bonobo/bonobo-moniker-util.c:247 msgid "Failed to activate object" msgstr "Aktivimi i objektit dështoi" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "Përjashtim gjatë aktivimit të '%s'" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "I pamundur aktivimi i '%s'" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "Moniker HTTP" # (pofilter) startcaps: checks that the message starts with the correct capitalisation #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "Moniker i trajtuesit IOR ORB" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "Fabrikë për Moniker standart" # (pofilter) startcaps: checks that the message starts with the correct capitalisation #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "Moniker i përgjithshëm për aktivimin Oaf" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "moniker i përgjithshëm për kërkesa Oaf" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "moniker i përgjithshëm për factory 'new'" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "moniker i përgjithshëm për objektet" # (pofilter) startcaps: checks that the message starts with the correct capitalisation #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "MonikerExtender stream" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Fabrikë për server-in Bonobo Echo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Program si shembull për server-in Bonobo Echo" # (pofilter) simplecaps: checks the capitalisation of two strings isn't wildly different #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Përbërësi Echo" # (pofilter) simplecaps: checks the capitalisation of two strings isn't wildly different #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Fabrika e përbërësit Echo" #: ../samples/echo/echo-client.c:24 msgid "I could not initialize Bonobo" msgstr "E pamundur nisja e Bonobo" # (pofilter) endwhitespace: checks whether whitespace at the end of the strings matches #: ../samples/echo/echo-client.c:35 msgid "Could not create an instance of the sample echo component" msgstr "I pamundur krijimi i një instance për përbërësin e shembullit echo " #: ../samples/echo/echo-client.c:47 #, c-format msgid "An exception occurred '%s'" msgstr "U verifikua një përjashtim '%s'" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Could not save configuration file.\n" msgstr "E pamundur ruajtja e file të konfigurimit.\n" #: ../utils/bonobo-activation-sysconf.c:84 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "Ju lutem, sigurohuni që keni të drejtën e shkrimit tek '%s'.\n" #: ../utils/bonobo-activation-sysconf.c:87 #, c-format msgid "Successfully wrote configuration file.\n" msgstr "File i konfigurimit u shkrua me sukses.\n" # (pofilter) startcaps: checks that the message starts with the correct capitalisation #: ../utils/bonobo-activation-sysconf.c:104 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "file i konfigurimit është:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:146 #, c-format msgid "%s already in configuration file\n" msgstr "%s ekziston tek file i konfigurimit\n" #: ../utils/bonobo-activation-sysconf.c:166 #, c-format msgid "there is not a properly structured configuration file\n" msgstr "nuk ekziston një file konfigurimi korrekt\n" # (pofilter) simplecaps: checks the capitalisation of two strings isn't wildly different #: ../utils/bonobo-activation-sysconf.c:237 #, c-format msgid "Bonobo-activation configuration file contains:\n" msgstr "File i konfigurimit të Bonobo-activation përmban:\n" #: ../utils/bonobo-activation-sysconf.c:267 msgid "Directory to remove from configuration file" msgstr "Directory që duhet hequr nga file i konfigurimit" # (pofilter) acronyms: acronyms should not be translated: PATH #: ../utils/bonobo-activation-sysconf.c:267 #: ../utils/bonobo-activation-sysconf.c:269 msgid "PATH" msgstr "POZICIONI" #: ../utils/bonobo-activation-sysconf.c:269 msgid "Directory to add to configuration file" msgstr "Directory për t'u shtuar tek file i konfigurimit" #: ../utils/bonobo-activation-sysconf.c:271 msgid "Display directories in configuration file" msgstr "Shfaq directories tek file i konfigurimit" #: ../utils/bonobo-activation-sysconf.c:273 msgid "Display path to configuration file" msgstr "Shfaq pozicionin e file të konfigurimit" libbonobo-2.32.1/po/fi.po0000644000076400007640000004043011173072711012052 00000000000000# libbonobo Finnish translation # Suomennos: http://gnome-fi.sourceforge.net/ # # Copyright (C) 2002 Free Software Foundation, Inc. # Sami Gerdt , 2000. # Pauli Virtanen , 2000-2002. # # # embeddable = upote # control = säädin # msgid "" msgstr "" "Project-Id-Version: libbonobo 1.109.1\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-08-06 16:47+0300\n" "PO-Revision-Date: 2007-02-12 18:15+0300\n" "Last-Translator: Pauli Virtanen \n" "Language-Team: Finnish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../activation-server/activation-context-corba.c:525 msgid "Couldn't find which child the server was listed in" msgstr "Ei selvinnyt, missä lapsiprosessissa palvelin on luetteloitu" #: ../activation-server/activation-context-corba.c:817 msgid "Not a valid Activation ID" msgstr "Epäkelpo aktivointi-ID" #: ../activation-server/activation-server-main.c:162 msgid "Directory to read .server files from" msgstr "Kansio, josta .server-tiedostot luetaan" #: ../activation-server/activation-server-main.c:162 msgid "DIRECTORY" msgstr "KANSIO" #: ../activation-server/activation-server-main.c:165 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "Toimi ActivationContextina (oletuksena on vain ObjectDirectory)" #: ../activation-server/activation-server-main.c:169 msgid "File descriptor to write IOR to" msgstr "Tiedostokahva, johon IOR kirjoittuu" #: ../activation-server/activation-server-main.c:169 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:172 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "" "Rekisteröidy käyttäjän aktivointipalvelimeksi lukitsematta. Varoitus: tällä " "valitsimella voi olla käyttäjän istuntoon vaikuttavia vakavia " "sivuvaikutuksia ja sit tulisi käyttää vain vianetsinnässä." #: ../activation-server/activation-server-main.c:180 msgid "Query expression to evaluate" msgstr "Käsiteltävä kyselylauseke" #: ../activation-server/activation-server-main.c:180 msgid "EXPRESSION" msgstr "LAUSEKE" #: ../activation-server/activation-server-main.c:429 #: ../utils/bonobo-activation-sysconf.c:305 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "" "Suorita \"%s --help\" nähdäksesi listan kaikista komentorivivalitsimista.\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "CORBA CosNaming -palvelu." #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "Nimipalvelu" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "Huomautuspalvelu" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "Huomautuspalvelu aktivointia varten" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "shlib-olioiden aktivointi etäprosessissa ei onnistu vielä" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "Bonobo-aktivoinnin asetustiedoston lukeminen epäonnistui. Tarkista, että se " "on kunnossa: %s" #: ../activation-server/object-directory-load.c:102 msgid "a NULL iid is not valid" msgstr "NULL iid ei kelpaa" #: ../activation-server/object-directory-load.c:106 #, c-format msgid "iid %s has a NULL type" msgstr "iid:llä %s on NULL-tyyppi" #: ../activation-server/object-directory-load.c:110 #, c-format msgid "iid %s has a NULL location" msgstr "iid:llä %s on NULL-sijainti" #: ../activation-server/object-directory-load.c:119 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "virheellinen merkki \"%c\" iid:ssä \"%s\"" #: ../activation-server/object-directory-load.c:349 #, c-format msgid "Property '%s' has no value" msgstr "Ominaisuudella \"%s\" ei ole arvoa" #: ../activation-server/object-directory-load.c:581 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "Virheellisen muotoisen XML-tiedoston jäsennys epäonnistui: %s" #: ../activation-server/object-directory-load.c:627 #, c-format msgid "Trying dir %s" msgstr "Kokeillaan kansiota %s" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "" "Lapsiprosessi ei lähettänyt virheviestiä: tuntematon virhe on tapahtunut" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "Luku lapsiprosessista epäonnistui: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 msgid "EOF from child process\n" msgstr "Tiedoston loppu lapsiprosessilta\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:438 msgid "Couldn't spawn a new process" msgstr "Uuden prosessin käynnistäminen epäonnistui" #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "File descriptor to print IOR on" msgstr "Tiedostokahva, johon IOR tulostuu" #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:399 msgid "IID to activate" msgstr "Aktivoitava IID" #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Prevent registering of server with OAF" msgstr "Estä palvelimen rekisteröityminen OAF:iin" #: ../bonobo-activation/bonobo-activation-init.c:409 msgid "Bonobo Activation options:" msgstr "Bonobo-aktivoinnin valitsimet:" #: ../bonobo-activation/bonobo-activation-init.c:410 msgid "Show Bonobo Activation options" msgstr "Näytä Bonobo-aktivoinnin valitsimet" #: ../bonobo-activation/bonobo-activation-init.c:518 msgid "Bonobo activation options" msgstr "Bonobo-aktivoinnin valitsimet" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "g_module_open \"%s\" epäonnistui: %s" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "Symbolia Bonobo_Plugin_info ei löytynyt tiedostosta \"%s\"" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "Tehdas \"%s\" palautti arvon NIL iid:lle \"%s\"" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Jaettu kirjasto \"%s\" ei sisältänyt iid:tä \"%s\"" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "Nimi" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "Sovelluksen ainutkertainen nimi" #: ../bonobo/bonobo-object.c:926 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:926 msgid "Custom CORBA POA" msgstr "Mukautettu CORBA POA" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "Yritetty toimintoa, joka ei ole tuettu" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "IO-virhe" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "Virheellinen parametrin arvo" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "Oliota ei löytynyt" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "Muotovirhe olion kuvauksessa" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "Oliota ei voi aktivoida tehtaasta" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "Ei oikeuksia virran käyttöön" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "Yritettiin virtatoimintoa, joka ei ole tuettu" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "IO-virhe virrassa" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "IO-virhe varastossa" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "Nimi on jo varastossa" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "Olio ei ollut varastossa" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "Ei lupaa varaston käsittelyyn" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "Yritettiin varastotoimintoa, joka ei ole tuettu" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "Olio ei ole virta" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "Olio ei ole varasto" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "Varasto ei ole tyhjä" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "viallinen käyttöliittymän XML-kuvaus" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "virheellinen polku XML-käyttöliittymäosaan" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "haluttua käyttöliittymäattribuuttia ei ollut olemassa" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "Tuntematon komento tai verbi" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "Komento on epäherkkä" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "väärä tietotyyppi" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "virtaa ei löydy" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "ominaisuutta ei löydy" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "ominaisuudella on väärä tyyppi" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "ominaisuutta voi vain lukea" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "asetustietokannan backend epäonnistui" #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "Moniker-rajapintaa ei löydy" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "Monikerin aktivointi aikakatkaistu" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "Monikerissa muotovirhe" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "Monikerilla on tuntematon moniker-etuliite" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "Virhe virhettä tarkistaessa; ei poikkeusta" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "Yleinen aktivointivirhe, jolla ei ole kuvausta" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s" msgstr "\"%s\":n selvittäminen tai laajentaminen epäonnistui" #: ../bonobo/bonobo-moniker-util.c:247 msgid "Failed to activate object" msgstr "Olion aktivointi epäonnistui" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "Poikkeus monikerin \"%s\" aktivoinnissa" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "Monikerin \"%s\" aktivointi epäonnistui" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "HTTP-moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "ORB IOR -käsittelijämoniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "Tavallisten Monikereiden tehdas" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "yleinen Oaf-aktivointimoniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "yleinen Oaf-kyselymoniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "yleinen tehdas 'new'-moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "yleinen kohdemoniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "virta-MonikerExtender" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Bonobo-kaikupalvelintehdas" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Bonobo-kaikupalvelinesimerkkiohjelma" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Kaikukomponentti" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Kaikukomponenttitehdas" #: ../samples/echo/echo-client.c:24 msgid "I could not initialize Bonobo" msgstr "Bonoboa ei voitu alustaa" #: ../samples/echo/echo-client.c:35 msgid "Could not create an instance of the sample echo component" msgstr "Ei voinut luoda ilmentymää esimerkkikaikukomponentista" #: ../samples/echo/echo-client.c:47 #, c-format msgid "An exception occurred '%s'" msgstr "Poikkeus tapahtui \"%s\"" #: ../utils/bonobo-activation-sysconf.c:83 msgid "Could not save configuration file.\n" msgstr "Asetustiedoston tallentaminen epäonnistui.\n" #: ../utils/bonobo-activation-sysconf.c:84 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "" "Tarkista, että sinulla on oikeudet tiedostoon \"%s\" kirjoittamiseen.\n" #: ../utils/bonobo-activation-sysconf.c:87 msgid "Successfully wrote configuration file.\n" msgstr "Asetustiedoston kirjoittaminen onnistui.\n" #: ../utils/bonobo-activation-sysconf.c:104 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "asetustiedosto on:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:146 #, c-format msgid "%s already in configuration file\n" msgstr "%s on jo asetustiedostossa\n" #: ../utils/bonobo-activation-sysconf.c:166 msgid "there is not a properly structured configuration file\n" msgstr "oikearakenteista asetustiedosta ei ole\n" #: ../utils/bonobo-activation-sysconf.c:237 msgid "Bonobo-activation configuration file contains:\n" msgstr "Bonobo-aktivoinnin asetustiedosto sisältää:\n" #: ../utils/bonobo-activation-sysconf.c:267 msgid "Directory to remove from configuration file" msgstr "Kansio, joka poistetaan asetustiedostosta" #: ../utils/bonobo-activation-sysconf.c:267 #: ../utils/bonobo-activation-sysconf.c:269 msgid "PATH" msgstr "POLKU" #: ../utils/bonobo-activation-sysconf.c:269 msgid "Directory to add to configuration file" msgstr "Kansio, joka lisätään asetustiedostoon" #: ../utils/bonobo-activation-sysconf.c:271 msgid "Display directories in configuration file" msgstr "Näytä asetustiedostossa olevat kansiot" #: ../utils/bonobo-activation-sysconf.c:273 msgid "Display path to configuration file" msgstr "Näytä asetustiedoston polku" #~ msgid "Could not initialize Bonobo" #~ msgstr "Ei voinut alustaa Bonoboa" #~ msgid "Bonobo Activation" #~ msgstr "Bonobo-aktivointi" #~ msgid "" #~ "Register as the users' activation server without locking [!] for debugging" #~ msgstr "" #~ "Rekisteröi käyttäjän aktivointipalvelimen lukitsematta (!) vianetsintää " #~ "varten" #~ msgid "Race condition activating server '%s'" #~ msgstr "Kilpatilanne palvelimen \"%s\" aktivoituessa" #~ msgid "directory path" #~ msgstr "kansion polku" #~ msgid "Too many alias levels for a locale, may indicate a loop" #~ msgstr "" #~ "Maa-asetustolla on liian monta alias-tasoa, mikä voi merkitä silmukkaa" #~ msgid "Child received signal %u (%s)" #~ msgstr "Lapsiprosessi vastaanotti signaalin %u (%s)" #~ msgid "Unknown non-exit error (status is %u)" #~ msgstr "Tuntematon ei-lopetusvirhe (tila on %u)" #~ msgid "bonobo-activation failed to set process group of %s: %s\n" #~ msgstr "" #~ "bonobo-aktivointi ei onnistunut asettamaan komennon %s prosessiryhmää: %" #~ "s\n" #~ msgid "Failed to execute %s: %d (%s)\n" #~ msgstr "Ohjelman %s käynnistys epäonnistui: %d (%s)\n" libbonobo-2.32.1/po/en_GB.po0000644000076400007640000003777511373604303012450 00000000000000# English (British) translation. # Copyright (C) 2004 THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the libbonobo package. # Gareth Owen 2004 # Bruce Cowan , 2010. msgid "" msgstr "" "Project-Id-Version: libbonobo\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2010-04-22 15:09+0100\n" "PO-Revision-Date: 2010-04-22 15:12+0100\n" "Last-Translator: Bruce Cowan \n" "Language-Team: British English \n" "Language: en_GB\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" "X-Generator: Virtaal 0.5.2\n" #: ../activation-server/activation-context-corba.c:530 msgid "Couldn't find which child the server was listed in" msgstr "Couldn't find which child the server was listed in" #: ../activation-server/activation-context-corba.c:822 msgid "Not a valid Activation ID" msgstr "Not a valid Activation ID" #: ../activation-server/activation-server-main.c:176 msgid "Directory to read .server files from" msgstr "Directory to read .server files from" #: ../activation-server/activation-server-main.c:176 msgid "DIRECTORY" msgstr "DIRECTORY" #: ../activation-server/activation-server-main.c:179 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "Serve as an ActivationContext (default is as an ObjectDirectory only)" #: ../activation-server/activation-server-main.c:183 msgid "File descriptor to write IOR to" msgstr "File descriptor to write IOR to" #: ../activation-server/activation-server-main.c:183 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:186 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" #: ../activation-server/activation-server-main.c:194 msgid "Query expression to evaluate" msgstr "Query expression to evaluate" #: ../activation-server/activation-server-main.c:194 msgid "EXPRESSION" msgstr "EXPRESSION" #: ../activation-server/activation-server-main.c:547 #: ../utils/bonobo-activation-sysconf.c:305 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "" "Run '%s --help' to see a full list of available command line options.\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "CORBA CosNaming service." #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "Name service" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "Notification service" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "Notification service for activation" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "We don't handle activating shlib objects in a remote process yet" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" #: ../activation-server/object-directory-load.c:102 msgid "a NULL iid is not valid" msgstr "a NULL iid is not valid" #: ../activation-server/object-directory-load.c:106 #, c-format msgid "iid %s has a NULL type" msgstr "iid %s has a NULL type" #: ../activation-server/object-directory-load.c:110 #, c-format msgid "iid %s has a NULL location" msgstr "iid %s has a NULL location" #: ../activation-server/object-directory-load.c:119 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "invalid character '%c' in iid '%s'" #: ../activation-server/object-directory-load.c:349 #, c-format msgid "Property '%s' has no value" msgstr "Property '%s' has no value" #: ../activation-server/object-directory-load.c:583 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "Could not parse badly formed XML document %s" #: ../activation-server/object-directory-load.c:629 #, c-format msgid "Trying dir %s" msgstr "Trying dir %s" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "Child process did not give an error message, unknown failure occurred" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "Failed to read from child process: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, c-format msgid "EOF from child process\n" msgstr "EOF from child process\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:438 msgid "Couldn't spawn a new process" msgstr "Couldn't spawn a new process" #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "File descriptor to print IOR on" msgstr "File descriptor to print IOR on" #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:399 msgid "IID to activate" msgstr "IID to activate" #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Prevent registering of server with OAF" msgstr "Prevent registering of server with OAF" #: ../bonobo-activation/bonobo-activation-init.c:409 msgid "Bonobo Activation options:" msgstr "Bonobo Activation options:" #: ../bonobo-activation/bonobo-activation-init.c:410 msgid "Show Bonobo Activation options" msgstr "Show Bonobo Activation options" #: ../bonobo-activation/bonobo-activation-init.c:518 msgid "Bonobo activation options" msgstr "Bonobo activation options" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "g_module_open of `%s' failed with `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "Can't find symbol Bonobo_Plugin_info in `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "Factory `%s' returned NIL for `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Shlib `%s' didn't contain `%s'" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "Name" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "Application unique name" #: ../bonobo/bonobo-object.c:929 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:929 msgid "Custom CORBA POA" msgstr "Custom CORBA POA" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "An unsupported action was attempted" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "IO Error" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "Invalid argument value" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "Object not found" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "Syntax error in object description" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "Cannot activate object from factory" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "No permission to access stream" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "An unsupported stream action was attempted" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "IO Error on stream" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "IO Error on storage" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "Name already exists in storage" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "Object not found in storage" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "No permission to do operation on storage" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "An unsupported storage action was attempted" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "Object is not a stream" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "Object is not a storage" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "Storage is not empty" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "malformed user interface XML description" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "invalid path to XML user interface element" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "the requested UI attribute didn't exist" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "Unknown command or verb" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "Command is insensitive" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "incorrect data type" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "stream not found" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "property not found" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "property has invalid type" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "property is read only" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "config database backend failed " #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "Moniker interface cannot be found" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "Moniker activation timed out" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "Syntax error within moniker" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "Moniker has an unknown moniker prefix" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "Error checking error; no exception" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "General activation error with no description" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s'" msgstr "Failed to resolve, or extend '%s'" #: ../bonobo/bonobo-moniker-util.c:247 msgid "Failed to activate object" msgstr "Failed to activate object" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "Exception activating '%s'" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "Failed to activate '%s'" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "HTTP Moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "ORB IOR handling moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "Standard Moniker factory" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "generic Oaf activation moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "generic Oaf query moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "generic factory 'new' moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "generic item moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "stream MonikerExtender" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Bonobo Echo server factory" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Bonobo Echo server sample program" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Echo component" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Echo component factory" #: ../samples/echo/echo-client.c:24 msgid "I could not initialize Bonobo" msgstr "I could not initialise Bonobo" #: ../samples/echo/echo-client.c:35 msgid "Could not create an instance of the sample echo component" msgstr "Could not create an instance of the sample echo component" #: ../samples/echo/echo-client.c:47 #, c-format msgid "An exception occurred '%s'" msgstr "An exception occurred '%s'" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Could not save configuration file.\n" msgstr "Could not save configuration file.\n" #: ../utils/bonobo-activation-sysconf.c:84 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "Please, make sure you have permissions to write to '%s'.\n" #: ../utils/bonobo-activation-sysconf.c:87 #, c-format msgid "Successfully wrote configuration file.\n" msgstr "Successfully wrote configuration file.\n" #: ../utils/bonobo-activation-sysconf.c:104 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "configuration file is:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:146 #, c-format msgid "%s already in configuration file\n" msgstr "%s already in configuration file\n" #: ../utils/bonobo-activation-sysconf.c:166 #, c-format msgid "there is not a properly structured configuration file\n" msgstr "there is not a properly structured configuration file\n" #: ../utils/bonobo-activation-sysconf.c:237 #, c-format msgid "Bonobo-activation configuration file contains:\n" msgstr "Bonobo-activation configuration file contains:\n" #: ../utils/bonobo-activation-sysconf.c:267 msgid "Directory to remove from configuration file" msgstr "Directory to remove from configuration file" #: ../utils/bonobo-activation-sysconf.c:267 #: ../utils/bonobo-activation-sysconf.c:269 msgid "PATH" msgstr "PATH" #: ../utils/bonobo-activation-sysconf.c:269 msgid "Directory to add to configuration file" msgstr "Directory to add to configuration file" #: ../utils/bonobo-activation-sysconf.c:271 msgid "Display directories in configuration file" msgstr "Display directories in configuration file" #: ../utils/bonobo-activation-sysconf.c:273 msgid "Display path to configuration file" msgstr "Display path to configuration file" #~ msgid "Could not initialize Bonobo" #~ msgstr "Could not initialise Bonobo" #~ msgid "" #~ "Register as the users' activation server without locking [!] for debugging" #~ msgstr "" #~ "Register as the users' activation server without locking [!] for debugging" #~ msgid "Bonobo Activation" #~ msgstr "Bonobo Activation" #~ msgid "Race condition activating server '%s'" #~ msgstr "Race condition activating server '%s'" #~ msgid "Too many alias levels for a locale, may indicate a loop" #~ msgstr "Too many alias levels for a locale, may indicate a loop" #~ msgid "directory path" #~ msgstr "directory path" #~ msgid "Child received signal %u (%s)" #~ msgstr "Child received signal %u (%s)" #~ msgid "Unknown non-exit error (status is %u)" #~ msgstr "Unknown non-exit error (status is %u)" #~ msgid "bonobo-activation failed to set process group of %s: %s\n" #~ msgstr "bonobo-activation failed to set process group of %s: %s\n" #~ msgid "Failed to execute %s: %d (%s)\n" #~ msgstr "Failed to execute %s: %d (%s)\n" libbonobo-2.32.1/po/it.po0000664000076400007640000003777411433015514012110 00000000000000# Italian localization for libbonobo # Copyright (C) 2001 Free Software Foundation, Inc. # Pier Luigi Fiorini , 2000. # Christopher R. Gabriel , 2003. # Luca Ferretti , 2005-2006. # Milo Casagrande , 2010. msgid "" msgstr "" "Project-Id-Version: libbonobo 2.16.x\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?" "product=bonobo&component=libbonobo\n" "POT-Creation-Date: 2010-06-09 14:14+0000\n" "PO-Revision-Date: 2010-06-21 22:29+0200\n" "Last-Translator: Milo Casagrande \n" "Language-Team: Italian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../activation-server/activation-context-corba.c:530 msgid "Couldn't find which child the server was listed in" msgstr "Impossibile trovare in quale processo figlio era elencato il server" #: ../activation-server/activation-context-corba.c:822 msgid "Not a valid Activation ID" msgstr "ID di attivazione non valido" #: ../activation-server/activation-server-main.c:176 msgid "Directory to read .server files from" msgstr "Directory dalla quale leggere i file .server" #: ../activation-server/activation-server-main.c:176 msgid "DIRECTORY" msgstr "DIRECTORY" #: ../activation-server/activation-server-main.c:179 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "" "Comportamento da ActivationContext (quello predefinito è solo " "ObjectDirectory)" #: ../activation-server/activation-server-main.c:183 msgid "File descriptor to write IOR to" msgstr "Descrittore del file su cui scrivere lo IOR" #: ../activation-server/activation-server-main.c:183 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:186 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "" "Registrazione come server di attivazione dell'utente senza il blocco. " "Attenzione: questa opzione può causare effetti negativi sulla stabilità " "della sessione dell'utente e dovrebbe essere usata solo per il debug" #: ../activation-server/activation-server-main.c:194 msgid "Query expression to evaluate" msgstr "Espressione di interrogazione da valutare" #: ../activation-server/activation-server-main.c:194 msgid "EXPRESSION" msgstr "ESPRESSIONE" #: ../activation-server/activation-server-main.c:547 #: ../utils/bonobo-activation-sysconf.c:305 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "" "Eseguire \"%s --help\" per avere un elenco completo delle opzioni " "disponibili da riga di comando.\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "Servizio CORBA CosNaming." #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "Servizio di nomi" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "Servizio di notifica" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "Servizio di notifica per l'attivazione" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "" "L'attivazione di oggetti shlib in un processo remoto non è ancora gestita" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "Il file di configurazione di Bonobo Activation non è stato letto " "correttamente. Verificare che sia valido: %s" #: ../activation-server/object-directory-load.c:102 msgid "a NULL iid is not valid" msgstr "un iid NULL non è valido" #: ../activation-server/object-directory-load.c:106 #, c-format msgid "iid %s has a NULL type" msgstr "l'iid %s presenta un tipo NULL" #: ../activation-server/object-directory-load.c:110 #, c-format msgid "iid %s has a NULL location" msgstr "l'iid %s presenta un percorso NULL" #: ../activation-server/object-directory-load.c:119 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "carattere '%c' non valido nell'iid \"%s\"" #: ../activation-server/object-directory-load.c:349 #, c-format msgid "Property '%s' has no value" msgstr "La proprietà \"%s\" non presenta alcun valore" #: ../activation-server/object-directory-load.c:583 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "Impossibile analizzare il documento XML mal formato %s" #: ../activation-server/object-directory-load.c:629 #, c-format msgid "Trying dir %s" msgstr "Prova della directory %s" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "" "Il processo figlio non ha restituito alcun messaggio di errore, si è " "verificato un errore sconosciuto" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "Lettura dal processo figlio non riuscita: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, c-format msgid "EOF from child process\n" msgstr "EOF dal processo figlio\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:438 msgid "Couldn't spawn a new process" msgstr "Impossibile creare un nuovo processo" #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "File descriptor to print IOR on" msgstr "Descrittore di file su cui stampare lo IOR" #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:399 msgid "IID to activate" msgstr "IID da attivare" #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Prevent registering of server with OAF" msgstr "Impedisci la registrazione del server con OAF" #: ../bonobo-activation/bonobo-activation-init.c:409 msgid "Bonobo Activation options:" msgstr "Opzioni di Bonobo Activation:" #: ../bonobo-activation/bonobo-activation-init.c:410 msgid "Show Bonobo Activation options" msgstr "Mostra le opzioni di Bonobo activation" #: ../bonobo-activation/bonobo-activation-init.c:518 msgid "Bonobo activation options" msgstr "Opzioni di Bonobo Activation" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "g_module_open per \"%s\" non riuscita con \"%s\"" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "Impossibile trovare il simbolo Bonobo_Plugin_info in \"%s\"" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "La fabbrica \"%s\" ha restituito NIL per \"%s\"" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "La shlib \"%s\" non contiene \"%s\"" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "Nome" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "Nome univoco dell'applicazione" #: ../bonobo/bonobo-object.c:929 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:929 msgid "Custom CORBA POA" msgstr "POA CORBA personalizzato" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "È stata tentata una operazione non supportata" # credo che IO sia Input/Output.. -Luca #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "Errore di I/O" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "Valore argomento non valido" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "Oggetto non trovato" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "Errore di sintassi nella descrizione dell'oggetto" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "Impossibile attivare l'oggetto dalla factory" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "Non ci sono permessi per accedere allo stream" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "È stata tentata un'azione di stream non supportata" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "Errore di I/O sullo stream" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "Errore di I/O sullo storage" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "Il name esiste già nello storage" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "Oggetto non trovato nello storage" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "Non ci sono permessi per eseguire l'operazione sullo storage" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "È stata tentata un'operazione sullo storage non supportata" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "L'oggetto non è uno stream" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "L'oggetto non è uno storage" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "Lo storage non è vuoto" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "descrizione XML dell'interfaccia utente malformata" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "percorso all'elemento XML dell'interfaccia utente non valido" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "l'attribuito UI richiesto non esiste" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "Comando o verbo sconosciuto" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "Il comando non è sensibile" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "tipo di dati non corretto" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "stream non trovato" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "proprietà non trovata" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "la proprietà presenta tipo non valido" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "la proprietà è in sola lettura" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "backend database di configurazione fallito " #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "Non è possibile trovare l'interfaccia Moniker" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "Attivazione Moniker scaduta" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "Errore di sintassi nel moniker" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "Il moniker presenta un prefisso moniker sconosciuto" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "Errore nel controllo di errore; nessun eccezione" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "Errore di attivazione generale senza descrizione" #: ../bonobo/bonobo-moniker.c:342 #, c-format #| msgid "Failed to resolve, or extend '%s" msgid "Failed to resolve, or extend '%s'" msgstr "Risoluzione o estensione di «%s» non riuscita" #: ../bonobo/bonobo-moniker-util.c:247 msgid "Failed to activate object" msgstr "Attivazione dell'oggetto non riuscita" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "Eccezione nell'attivazione di \"%s\"" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "Impossibile attivare \"%s\"" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "Moniker HTTP" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "moniker di gestione IOR ORB" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "Factory standard per Moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "Moniker generico per l'attivazione Oaf" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "Moniker generico per interrogazioni Oaf" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "moniker generico per factory \"new\"" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "moniker genericop per oggetti" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "MonikerExtender stream" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Fabbrica per il server bonobo Echo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Programma di esempio per il server Bonobo Echo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Componente Echo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Fabbrica componente Echo" #: ../samples/echo/echo-client.c:24 msgid "I could not initialize Bonobo" msgstr "Impossibile inizializzare Bonobo" #: ../samples/echo/echo-client.c:35 msgid "Could not create an instance of the sample echo component" msgstr "Impossibile creare un'istanza per il componente di esempio Echo" #: ../samples/echo/echo-client.c:47 #, c-format msgid "An exception occurred '%s'" msgstr "Si è verificata un'eccezione \"%s\"" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Could not save configuration file.\n" msgstr "Impossibile salvare il file di configurazione.\n" #: ../utils/bonobo-activation-sysconf.c:84 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "Accertarsi di avere i permessi per scrivere su \"%s\".\n" #: ../utils/bonobo-activation-sysconf.c:87 #, c-format msgid "Successfully wrote configuration file.\n" msgstr "Il file di configurazione è stato scritto con successo.\n" #: ../utils/bonobo-activation-sysconf.c:104 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "il file di configurazione è:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:146 #, c-format msgid "%s already in configuration file\n" msgstr "%s è già nel file di configurazione\n" #: ../utils/bonobo-activation-sysconf.c:166 #, c-format msgid "there is not a properly structured configuration file\n" msgstr "non esiste un file di configurazione propriamente strutturato\n" #: ../utils/bonobo-activation-sysconf.c:237 #, c-format msgid "Bonobo-activation configuration file contains:\n" msgstr "Il file di configurazione di Bonobo Activation contiene:\n" #: ../utils/bonobo-activation-sysconf.c:267 msgid "Directory to remove from configuration file" msgstr "Directory da rimuovere dal file di configurazione" #: ../utils/bonobo-activation-sysconf.c:267 #: ../utils/bonobo-activation-sysconf.c:269 msgid "PATH" msgstr "PERCORSO" #: ../utils/bonobo-activation-sysconf.c:269 msgid "Directory to add to configuration file" msgstr "Directory da aggiungere al file di configurazione" #: ../utils/bonobo-activation-sysconf.c:271 msgid "Display directories in configuration file" msgstr "Mostra le directory nel file di configurazione" #: ../utils/bonobo-activation-sysconf.c:273 msgid "Display path to configuration file" msgstr "Mostra il percorso del file di configurazione" libbonobo-2.32.1/po/de.po0000644000076400007640000004124311373604303012047 00000000000000# German libbonobo translation # Copyright (C) 2002-2004 Free Software Foundation, Inc. # Jörgen Scheibengruber , 2002. # Christian Meyer , 2002. # Christian Neumair , 2002-2004. # Hendrik Richter , 2007, 2010. msgid "" msgstr "" "Project-Id-Version: libbonobo 2.5.3\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2010-04-21 12:08+0200\n" "PO-Revision-Date: 2010-04-21 12:09+0200\n" "Last-Translator: Hendrik Richter \n" "Language-Team: German \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../activation-server/activation-context-corba.c:530 msgid "Couldn't find which child the server was listed in" msgstr "Keine Informationen, in welchem Kindprozess der Server gelistet war" #: ../activation-server/activation-context-corba.c:822 msgid "Not a valid Activation ID" msgstr "Keine gültige Aktivierungskennung" #: ../activation-server/activation-server-main.c:176 msgid "Directory to read .server files from" msgstr "Verzeichnis, in dem die .server-Datei gelesen werden soll" #: ../activation-server/activation-server-main.c:176 msgid "DIRECTORY" msgstr "VERZEICHNIS" #: ../activation-server/activation-server-main.c:179 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "" "Als ActivationContext fungieren (Vorgabe: Ausschließlich als ObjectDirectory " "fungieren)" #: ../activation-server/activation-server-main.c:183 msgid "File descriptor to write IOR to" msgstr "Datei-Deskriptor, in dem IOR geschrieben wird" #: ../activation-server/activation-server-main.c:183 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:186 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "" "Als Aktivierungs-Server des Benutzers ohne Sperren registrieren. Warnung: " "diese Option kann unerwünschte Auswirkungen auf die Stabilität der laufenden " "Sitzung haben und sollte daher nur zur Fehlerdiagnose eingesetzt werden." #: ../activation-server/activation-server-main.c:194 msgid "Query expression to evaluate" msgstr "Ausdruck der untersucht werden soll" #: ../activation-server/activation-server-main.c:194 msgid "EXPRESSION" msgstr "AUSDRUCK" #: ../activation-server/activation-server-main.c:547 #: ../utils/bonobo-activation-sysconf.c:305 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "" "Starten Sie '%s --help' um eine vollständige Liste verfügbarer " "Kommandozeilenoptionen anzuzeigen.\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "CORBA-CosNaming-Dienst." # CHECK #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "Namensdienst" # CHECK #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "Benachrichtigungsdienst" # CHECK #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "Benachrichtigungsdienst zur Aktivierung" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "" "Es können noch keine shlib-Objekte in einem fernen Prozess aktiviert werden" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "Die Bonobo-Activation-Konfigurationsdatei konnte nicht erfolgreich " "eingelesen werden: Bitte überprüfen Sie, ob sie gültig ist: %s" #: ../activation-server/object-directory-load.c:102 msgid "a NULL iid is not valid" msgstr "eine NULL-IID ist ungültig" #: ../activation-server/object-directory-load.c:106 #, c-format msgid "iid %s has a NULL type" msgstr "IID %s hat den Typ NULL" #: ../activation-server/object-directory-load.c:110 #, c-format msgid "iid %s has a NULL location" msgstr "IID %s hat den Ort NULL" #: ../activation-server/object-directory-load.c:119 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "ungültige Zeichen »%c« in IID »%s«" #: ../activation-server/object-directory-load.c:349 #, c-format msgid "Property '%s' has no value" msgstr "Attribut »%s« hat keinen Wert" #: ../activation-server/object-directory-load.c:583 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "" "Syntax des fehlerhaft formatierten XML-Dokuments %s konnte nicht " "interpretiwert werden" #: ../activation-server/object-directory-load.c:629 #, c-format msgid "Trying dir %s" msgstr "Verz. %s wird versucht" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "" "Kindprozess gab keine Fehlermeldung aus. Ein unbekannter Störfall trat auf" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "Vom Kindprozess konnte nicht gelesen werden: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, c-format msgid "EOF from child process\n" msgstr "Dateiende vom Kindprozess erhalten\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:438 msgid "Couldn't spawn a new process" msgstr "Es konnte kein neuer Prozess abgespalten werden" #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "File descriptor to print IOR on" msgstr "Dateibeschreibung, in die die IOR geschrieben wird" #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:399 msgid "IID to activate" msgstr "Zu aktivierende IID" #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Prevent registering of server with OAF" msgstr "Registrieren von Servern mit OAF vermeiden" #: ../bonobo-activation/bonobo-activation-init.c:409 msgid "Bonobo Activation options:" msgstr "Bonobo-Activation-Optionen:" #: ../bonobo-activation/bonobo-activation-init.c:410 msgid "Show Bonobo Activation options" msgstr "Bonobo-Activation-Optionen anzeigen" #: ../bonobo-activation/bonobo-activation-init.c:518 msgid "Bonobo activation options" msgstr "Bonobo-Activation-Optionen" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "Öffnen des Moduls »%s« mittels »g_module_open« fehlgeschlagen mit »%s«" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "Symbol Bonobo_Plugin_info konnte nicht in »%s« gefunden werden" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "Fabrik »%s« lieferte NIL für »%s«" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Shlib »%s« enthielt »%s« nicht" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "Name" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "Eindeutiger Anwendungsname" #: ../bonobo/bonobo-object.c:929 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:929 msgid "Custom CORBA POA" msgstr "Benutzerdefinierter CORBA-POA" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "Es wurde versucht, eine nicht unterstützte Aktion auszuführen" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "E/A-Fehler" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "Argument mit ungültigem Wert" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "Objekt nicht gefunden" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "Syntaxfehler in Objektbeschreibung" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "Fabrikobjekt konnte nicht aktiviert werden" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "Keine Berechtigung, auf den Datenstrom zuzugreifen" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "" "Es wurde versucht, eine nicht unterstützte Datenstrom-Aktion auszuführen" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "E/A-Fehler im Datenstrom" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "E/A-Fehler auf dem Speichermedium" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "Name existiert bereits auf dem Speichermedium" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "Objekt konnte auf dem Speichermedium nicht gefunden werden" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "" "Keine Berechtigung, um diese Operation auf dem Speichermedium auszuführen" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "" "Es wurde versucht, eine nicht unterstützte Aktion auf dem Speichermedium " "auszuführen" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "Objekt ist kein Datenstrom" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "Objekt ist kein Speichermedium" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "Speichermedium ist nicht leer" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "ungültige XML-Benutzeroberflächenbeschreibung" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "ungültiger Pfad zum XML-Benutzeroberflächenelement" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "angefordertes Benutzeroberflächenattribut existiert nicht" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "Unbekannter Befehl oder Verb" # CHECK!! #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "Befehl ist unempfindlich" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "Falscher Datentyp" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "Datenstrom nicht gefunden" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "Eigenschaft nicht gefunden" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "Eigenschaft hat ungültigen Typ" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "Eigenschaft ist nur lesbar" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "Fehler in der Verwaltung der Konfigurationsdatenbank " #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "Moniker-Schnittstelle konnte nicht gefunden werden" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "Die Moniker-Aktivierung hat das Zeitlimit überschritten" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "Syntaxfehler im Moniker" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "Moniker hat unbekannten Moniker-Präfix" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "Fehler beim Überprüfen des Fehlers; es trat keine Ausnahme auf" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "Allgemeiner Aktivierungsfehler ohne Beschreibung" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s'" msgstr "»%s« konnte nicht aufgelöst oder erweitert werden" #: ../bonobo/bonobo-moniker-util.c:247 msgid "Failed to activate object" msgstr "Objekt konnte nicht aktiviert werden" # CHECK #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "Ausnahmefehler beim Aktivieren von »%s«" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "»%s« konnte nicht aktiviert werden" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "HTTP-Moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "ORB-IOR-Handling-Moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "Standard-Moniker-Fabrik" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "allgemeiner OAF-Aktivierungs-Moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "allgemeiner OAF-Abfrage-Moniker" # CHECK #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "allgemeiner »new«-Fabrik-Moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "allgemeiner Objekt-Moniker" # CHECK #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "Datenstrom-MonikerExtender" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Bonobo-Echo-Server-Fabrik" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Bonobo-Echo-Server-Beispielprogramm" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Echo-Komponente" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Echo-Komponentenfabrik" #: ../samples/echo/echo-client.c:24 msgid "I could not initialize Bonobo" msgstr "Bonobo konnte nicht initialisiert werden" #: ../samples/echo/echo-client.c:35 msgid "Could not create an instance of the sample echo component" msgstr "Es konnte keine Instanz der Beispiel-Echo-Komponente erzeugt werden" #: ../samples/echo/echo-client.c:47 #, c-format msgid "An exception occurred '%s'" msgstr "Ein Ausnahmefehler ist aufgetreten »%s«" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Could not save configuration file.\n" msgstr "Die Konfigurationsdatei konnte nicht gespeichert werden.\n" #: ../utils/bonobo-activation-sysconf.c:84 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "" "Stellen Sie sicher, dass Sie die nötigen Zugriffsrechte haben, um auf »%s« zu " "schreiben.\n" #: ../utils/bonobo-activation-sysconf.c:87 #, c-format msgid "Successfully wrote configuration file.\n" msgstr "Konfigurationsdatei erfolgreich geschrieben.\n" #: ../utils/bonobo-activation-sysconf.c:104 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "Konfigurationsdatei ist:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:146 #, c-format msgid "%s already in configuration file\n" msgstr "%s befindet sich bereits in der Konfigurationsdatei\n" #: ../utils/bonobo-activation-sysconf.c:166 #, c-format msgid "there is not a properly structured configuration file\n" msgstr "es ist keine richtig struktierte Konfigurationsdatei vorhanden\n" #: ../utils/bonobo-activation-sysconf.c:237 #, c-format msgid "Bonobo-activation configuration file contains:\n" msgstr "Bonobo-Activation-Konfigurationsdatei enthält:\n" #: ../utils/bonobo-activation-sysconf.c:267 msgid "Directory to remove from configuration file" msgstr "Verzeichnis, das aus der Konfigurationsdatei entfernt werden soll" #: ../utils/bonobo-activation-sysconf.c:267 #: ../utils/bonobo-activation-sysconf.c:269 msgid "PATH" msgstr "PFAD" #: ../utils/bonobo-activation-sysconf.c:269 msgid "Directory to add to configuration file" msgstr "Verzeichnis, das zur Konfigurationsdatei hinzugefügt werden soll" #: ../utils/bonobo-activation-sysconf.c:271 msgid "Display directories in configuration file" msgstr "Verzeichnisse in der Konfigurationsdatei anzeigen" #: ../utils/bonobo-activation-sysconf.c:273 msgid "Display path to configuration file" msgstr "Pfad zur Konfigurationsdatei anzeigen" #~ msgid "Could not initialize Bonobo" #~ msgstr "Bonobo konnte nicht initialisiert werden" #~ msgid "" #~ "Register as the users' activation server without locking [!] for debugging" #~ msgstr "" #~ "Als Aktivierungs-Server (ohne Sperrung [!] zur Fehlerdiagnose) des " #~ "Benutzers registrieren." #~ msgid "Bonobo Activation" #~ msgstr "Bonobo-Activation" #~ msgid "Race condition activating server '%s'" #~ msgstr "»Race-Condition« beim Aktivieren des Servers »%s«" #~ msgid "directory path" #~ msgstr "Verzeichnispfad" libbonobo-2.32.1/po/hi.po0000644000076400007640000005116311173072711012061 00000000000000# translation of hi.po to Hindi # Copyright (C) 2003, 2004, 2005, 2006, 2009 Free Software Foundation, Inc. # # G Karunakar , 2003. # Ravishankar Shrivastava , 2004. # Rajesh Ranjan , 2005, 2006, 2009. msgid "" msgstr "" "Project-Id-Version: hi\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2008-11-07 14:28+0100\n" "PO-Revision-Date: 2009-03-06 14:09+0530\n" "Last-Translator: Rajesh Ranjan \n" "Language-Team: Hindi \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.11.4\n" "Plural-Forms: nplurals=2; plural=(n!=1);\n\n" "\n" "\n" "\n" #: ../activation-server/activation-context-corba.c:530 msgid "Couldn't find which child the server was listed in" msgstr "ढूंढ नहीं पाया कि कौन सा शिशु सर्वर सूचीबद्ध है." #: ../activation-server/activation-context-corba.c:822 msgid "Not a valid Activation ID" msgstr "वैध सक्रियण आईडी नहीं" #: ../activation-server/activation-server-main.c:166 msgid "Directory to read .server files from" msgstr "डिरेक्ट्री जहाँ से .server फ़ाइलें पढ़नी हैं" #: ../activation-server/activation-server-main.c:166 msgid "DIRECTORY" msgstr "डिरेक्ट्री" #: ../activation-server/activation-server-main.c:169 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "सक्रियण-कॉन्टेक्स्ट की तरह सेवारत है (डिफ़ॉल्ट सिर्फ एक ऑब्जेक्ट-डिरेक्ट्री है)" #: ../activation-server/activation-server-main.c:173 msgid "File descriptor to write IOR to" msgstr "आईओआर में लिखने हेतु फ़ाइल डिस्क्रिप्टर" #: ../activation-server/activation-server-main.c:173 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "FD" msgstr "एफ़डी" #: ../activation-server/activation-server-main.c:176 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "बतौर उपयोक्ता सक्रियण बिना लॉकिंग के पंजीकृत करें. चेतावनी: यह विकल्प उपयोक्ता कार्यशील सत्र की स्थिरता पर गंभीर प्रभाव प्रकारांतर से डालता है, और इसे केवल डिबगिंग प्रक्रिया के लिए प्रयोग किया जाना चाहिए." #: ../activation-server/activation-server-main.c:184 msgid "Query expression to evaluate" msgstr "मूल्यांकन हेतु क्वैरी एक्सप्रेशन" #: ../activation-server/activation-server-main.c:184 msgid "EXPRESSION" msgstr "एक्सप्रेशन" #: ../activation-server/activation-server-main.c:472 #: ../utils/bonobo-activation-sysconf.c:305 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "उपलब्ध कमांड लाइन विकल्प की पूरी सूची देखने के लिये '%s --help' चलायें.\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "कोरबा कास-नेमिंग सेवा." #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "नाम सेवा" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "सूचना सेवा" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "सक्रियण हेतु सूचना सेवा" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "हम एसएचलिब ऑब्जैक्ट्स को अभी रिमोट प्रक्रिया में सक्रियण हेतु हैण्डल नहीं करते" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "बोनबो सक्रियण कॉन्फ़िगरेशन फ़ाइल को सफलतापूर्वक नहीं पढ़ा जा सका. कृपया यह जांच कर लें कि " "यह %s में वैध है" #: ../activation-server/object-directory-load.c:102 msgid "a NULL iid is not valid" msgstr "एक नल आईआईडी वैध नहीं है" #: ../activation-server/object-directory-load.c:106 #, c-format msgid "iid %s has a NULL type" msgstr "आईआईडी %s में नल प्रकार है" #: ../activation-server/object-directory-load.c:110 #, c-format msgid "iid %s has a NULL location" msgstr "आईआईडी %s में एक नल स्थान है" #: ../activation-server/object-directory-load.c:119 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "अवैध अक्षर '%c' आईआईडी '%s' में" #: ../activation-server/object-directory-load.c:349 #, c-format msgid "Property '%s' has no value" msgstr "गुण '%s' का कोई मान नहीं है" #: ../activation-server/object-directory-load.c:583 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "खराब फॉर्म्ड एक्सएमएल दस्तावेज़ %s पार्से नहीं कर सका" #: ../activation-server/object-directory-load.c:629 #, c-format msgid "Trying dir %s" msgstr "डिरेक्ट्री %s आज़मा रहे" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "शिशु प्रक्रियाएँ कोई त्रुटि संदेश नहीं देती हैं, अज्ञात असफलता हुई" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "शिशु प्रक्रिया %s से पढ़ने में असफल\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, c-format msgid "EOF from child process\n" msgstr "शिशु प्रक्रिया से EOF\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:438 msgid "Couldn't spawn a new process" msgstr "एक नई प्रक्रिया बनायी नहीं की जा सकी" #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "File descriptor to print IOR on" msgstr "आईओआर मुद्रण हेतु फ़ाइल वर्णनकर्ता" #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:399 msgid "IID to activate" msgstr "सक्रियण हेतु आईआईडी" #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Prevent registering of server with OAF" msgstr "ओएएफ़ से सर्वर के पंजीकरण को रोकें" #: ../bonobo-activation/bonobo-activation-init.c:409 msgid "Bonobo Activation options:" msgstr "बोनबो सक्रियण विकल्प:" #: ../bonobo-activation/bonobo-activation-init.c:410 msgid "Show Bonobo Activation options" msgstr "बोनबो सक्रियकरण विकल्प दिखायें" #: ../bonobo-activation/bonobo-activation-init.c:518 msgid "Bonobo activation options" msgstr "बोनबो सक्रियण विकल्प" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "`%s' का g-module-open `%s' से असफल" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "चिह्न Bonobo_Plugin_info '%s' में ढूंढ नहीं पाया" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "फैक्ट्री `%s' ने `%s' हेतु निल लौटाया" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "एसएचलिब '%s' में '%s' नहीं है" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "नाम" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "अनुप्रयोग बेजोड़ नाम" #: ../bonobo/bonobo-object.c:929 msgid "POA" msgstr "पीओए" #: ../bonobo/bonobo-object.c:929 msgid "Custom CORBA POA" msgstr "अनुकूलित कोरबा पीओए" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "एक असमर्थित क्रिया हेतु प्रयास किया गया" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "आईओ त्रुटि" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "अवैध आर्गुमेंट मूल्य" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "ऑब्जेक्ट नही मिला" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "ऑब्जेक्ट वर्णन में सिंटेक्स त्रुटि" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "फैक्ट्री से ऑब्जेक्ट सक्रिय नहीं कर सका" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "स्ट्रीम पर पहुँच हेतु कोई अनुमति नहीं" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "एक असमर्थित स्ट्रीम क्रिया हेतु प्रयास किया गया" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "स्ट्रीम में आईओ त्रुटि" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "भंडार में आईओ त्रुटि" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "भंडार में नाम पहले से ही मौज़ूद है" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "भंडार में ऑब्जेक्ट नहीं मिला" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "भंडार पर ऑपरेशन हेतु कोई अनुमतियाँ नहीं" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "एक असमर्थित भंडार क्रिया हेतु प्रयास किया गया" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "ऑब्जेक्ट एक स्ट्रीम नहीं है" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "ऑब्जेक्ट एक भंडार नहीं है" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "भंडार खाली नही है" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "गलत उपयोगकर्ता इंटरफेस एक्सएमएल वर्णन" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "एक्सएमएल उपयोगकर्ता इंटरफेस अवयव पर अवैध पथ" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "निवेदित यूआई गुण मौज़ूद नहीं हैं" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "अज्ञात कमांड या क्रिया" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "कमांड असंवेदनशील है" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "अशुद्ध डेटा प्रकार" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "स्ट्रीम नहीं मिला" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "गुण नहीं मिला" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "गुण में अवैध प्रकार है" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "गुण सिर्फ पढ़ने लायक है" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "कॉन्फ़िग डेटाबेस बैकएण्ड असफल" #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "मॉनीकर इंटरफेस नहीं मिला" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "मॉनीकर सक्रियण टाइमआउट" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "मॉनीकर के भीतर सिंटेक्स त्रुटि" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "मॉनीकर में एक अज्ञात मॉनीकर उपसर्ग है" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "त्रुटि जाँचने में त्रुटि; कोई एक्सेप्शन नहीं" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "बिना वर्णन के साथ सामान्य सक्रियण त्रुटि" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s" msgstr "'%s का समाधान या विस्तार करने में असफल" #: ../bonobo/bonobo-moniker-util.c:247 msgid "Failed to activate object" msgstr "ऑब्जैक्ट को सक्रिय करने में असफल" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "'%s' सक्रिय करने में एक्सेप्शन" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "'%s' को सक्रिय करने में असफल" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "एचटीटीपी मॉनिकर" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "ओआरबी आईओआर हैंडलिंग मॉनिकर" # monikers/GNOME_VFS_Moniker_std.server.in.in.h:1 #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "मानक मॉनीकर फैक्ट्री" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "ज़ेनेरिक ओएएफ़ सक्रियण मॉनिकर" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "ज़ेनेरिक ओएएफ़ क्वैरी मॉनिकर" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "ज़ेनेरिक फैक्ट्री 'नया' मॉनिकर" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "ज़ेनेरिक आइटम मॉनिकर" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "स्ट्रीम मॉनिकर-एक्सटेंडर" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "बोनोबो इको सर्वर फैक्ट्री" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "बोनोबो इको सर्वर नमूना प्रोग्राम" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "इको अवयव" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "इको अवयव फैक्ट्री" #: ../samples/echo/echo-client.c:24 msgid "I could not initialize Bonobo" msgstr "मैं बोनोबो प्रारंभ नहीं कर सका" #: ../samples/echo/echo-client.c:35 msgid "Could not create an instance of the sample echo component" msgstr "नमूना इको अवयव का एक इंस्टैंस तैयार नहीं कर सका" #: ../samples/echo/echo-client.c:47 #, c-format msgid "An exception occurred '%s'" msgstr "एक एक्सेप्शन हुआ '%s'" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Could not save configuration file.\n" msgstr "कॉन्फ़िगरेशन फ़ाइल सहेज नहीं सका.\n" #: ../utils/bonobo-activation-sysconf.c:84 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "कपया सुनिश्चित करें कि आपको '%s' में लिखने की अनुमति है?\n" #: ../utils/bonobo-activation-sysconf.c:87 #, c-format msgid "Successfully wrote configuration file.\n" msgstr "कॉन्फ़िगरेशन फ़ाइल सफलतापूर्वक लिखा गया.\n" #: ../utils/bonobo-activation-sysconf.c:104 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "कॉन्फ़िगरेशन फ़ाइल है:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:146 #, c-format msgid "%s already in configuration file\n" msgstr "कॉन्फ़िगरेशन फ़ाइल में %s पहले से ही मौजूद है\n" #: ../utils/bonobo-activation-sysconf.c:166 #, c-format msgid "there is not a properly structured configuration file\n" msgstr "वहाँ एक उचित कॉन्फ़िगरेशन फ़ाइल नहीं है\n" #: ../utils/bonobo-activation-sysconf.c:237 #, c-format msgid "Bonobo-activation configuration file contains:\n" msgstr "बोनोबो-सक्रियण कॉन्फ़िगरेशन फ़ाइल में है:\n" #: ../utils/bonobo-activation-sysconf.c:267 msgid "Directory to remove from configuration file" msgstr "डिरेक्ट्री जिसे कॉन्फ़िगरेशन फ़ाइल से मिटाना है" #: ../utils/bonobo-activation-sysconf.c:267 #: ../utils/bonobo-activation-sysconf.c:269 msgid "PATH" msgstr "पथ" #: ../utils/bonobo-activation-sysconf.c:269 msgid "Directory to add to configuration file" msgstr "डिरेक्ट्री जिसे कॉन्फ़िगरेशन फ़ाइल में जोड़नी है" #: ../utils/bonobo-activation-sysconf.c:271 msgid "Display directories in configuration file" msgstr "कॉन्फ़िगरेशन फ़ाइल में डिरेक्ट्रीज़ प्रदर्शित करें" #: ../utils/bonobo-activation-sysconf.c:273 msgid "Display path to configuration file" msgstr "कॉन्फ़िगरेशन फ़ाइल का पथ दर्शाएँ" libbonobo-2.32.1/po/kn.po0000644000076400007640000005230611173072711012071 00000000000000# translation of libbonobo.HEAD.po to Kannada # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Shankar Prasad , 2009. msgid "" msgstr "" "Project-Id-Version: libbonobo.HEAD\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=libbonobo&component=general\n" "POT-Creation-Date: 2009-01-27 17:34+0000\n" "PO-Revision-Date: 2009-03-25 23:21+0530\n" "Last-Translator: Shankar Prasad \n" "Language-Team: Kannada \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.11.4\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #: ../activation-server/activation-context-corba.c:530 msgid "Couldn't find which child the server was listed in" msgstr "ಪರಿಚಾರಕವನ್ನು ಯಾವ ಚೈಲ್ಡಿನಲ್ಲಿ ಪಟ್ಟಿ ಮಾಡಲಾಗಿದೆ" #: ../activation-server/activation-context-corba.c:822 msgid "Not a valid Activation ID" msgstr "ಮಾನ್ಯವಾದ ಸಕ್ರಿಯಗೊಳಿಕಾ ID ಆಗಿಲ್ಲ" #: ../activation-server/activation-server-main.c:176 msgid "Directory to read .server files from" msgstr ".server ಕಡತಗಳನ್ನು ಓದಬೇಕಿರುವ ಕೋಶ" #: ../activation-server/activation-server-main.c:176 msgid "DIRECTORY" msgstr "DIRECTORY" #: ../activation-server/activation-server-main.c:179 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "ActivationContext ಆಗಿ ಒಂದು ಪರಿಚಾರಕ (ಪೂರ್ವನಿಯೋಜಿತವು ಕೇವಲ ObjectDirectory ಯಂತೆ ಇರುತ್ತದೆ)" #: ../activation-server/activation-server-main.c:183 msgid "File descriptor to write IOR to" msgstr "IOR ಅನ್ನು ಬರೆಯಲು ಕಡತ ವಿವರಣೆಗಾರ" #: ../activation-server/activation-server-main.c:183 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:186 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "ಲಾಕ್ ಮಾಡದೆ ಬಳಕೆದಾರರ ಸಕ್ರಿಯಗೊಳಿಕಾ ಪರಿಚಾರಕವಾಗಿ ನೋಂದಾಯಿಸಿ. ಎಚ್ಚರಿಕೆ: ಈ ಆಯ್ಕೆಯಿಂದ ಬಳಕೆದಾರರ ಚಾಲನೆಯಲ್ಲಿರುವ ಅಧಿವೇಶನದ ಸ್ಥಿರತೆಯ ಮೇಲೆ ಅಪಾಯಕಾರಿ ಅಡ್ಡಪರಿಣಾಮಗಳು ಉಂಟಾಗಬಹುದು, ಹಾಗು ಇದನ್ನು ಕೇವಲ ದೋಷನಿವಾರಣಾ ಕಾರ್ಯಗಳಲ್ಲಿ ಮಾತ್ರವೆ ಬಳಸಬೇಕು" #: ../activation-server/activation-server-main.c:194 msgid "Query expression to evaluate" msgstr "ವಿಶ್ಲೇಷಣೆಗಾಗಿ ಸಂದೇಹ ಎಕ್ಸ್‌ಪ್ರೆಶನ್" #: ../activation-server/activation-server-main.c:194 msgid "EXPRESSION" msgstr "EXPRESSION" #: ../activation-server/activation-server-main.c:547 #: ../utils/bonobo-activation-sysconf.c:305 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "ಲಭ್ಯವಿರುವ ಆಜ್ಞೆಯ ಒಂದು ಸಂಪೂರ್ಣ ಪಟ್ಟಿಯನ್ನು ನೋಡಲು '%s --help' ಅನ್ನು ಚಲಾಯಿಸಿ.\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "CORBA CosNaming ಸೇವೆ." #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "ಹೆಸರು ಸೇವೆ" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "ಸೂಚನಾ ಸೇವೆ" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "ಸಕ್ರಿಯಗೊಳಿಕೆಗಾಗಿನ ಸೂಚನಾ ಸೇವೆ" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "ದೂರಸ್ಥ ಪ್ರಕ್ರಿಯೆಯಲ್ಲಿ ಇನ್ನೂ ಸಹ ನಾವು shlib ಅನ್ನು ಸಕ್ರಿಯಗೊಳಿಕೆಯನ್ನು ನಿಭಾಯಿಸುವುದನ್ನು ಬೆಂಬಲಿಸುವುದಿಲ್ಲ" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "Bonobo ಸಕ್ರಿಯಗೊಳಿಕಾ ಸಂರಚನಾ ಕಡತವನ್ನು ಯಶಸ್ವಿಗಾಗಿ ಓದಲಾಗಿಲ್ಲ. ದಯವಿಟ್ಟು ಅದು ಇದರಲ್ಲಿ ಮಾನ್ಯವಾಗಿದೆಯೆ ಎಂದು ಪರೀಕ್ಷಿಸಿ: %s" #: ../activation-server/object-directory-load.c:102 msgid "a NULL iid is not valid" msgstr "ಒಂದು NULL iid ಯು ಮಾನ್ಯವಾದುದಲ್ಲ" #: ../activation-server/object-directory-load.c:106 #, c-format msgid "iid %s has a NULL type" msgstr "iid %s ಯು ಒಂದು NULL ಬಗೆಯನ್ನು ಹೊಂದಿದೆ" #: ../activation-server/object-directory-load.c:110 #, c-format msgid "iid %s has a NULL location" msgstr "iid %s ಯು ಒಂದು NULL ಸ್ಥಳವಾಗಿದೆ" #: ../activation-server/object-directory-load.c:119 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "ಅಮಾನ್ಯವಾದ ಅಕ್ಷರ '%c', iid '%s' ಯಲ್ಲಿ" #: ../activation-server/object-directory-load.c:349 #, c-format msgid "Property '%s' has no value" msgstr "ಗುಣಲಕ್ಷಣ '%s' ವು ಯಾವುದೆ ಮೌಲ್ಯವನ್ನು ಹೊಂದಿಲ್ಲ" #: ../activation-server/object-directory-load.c:583 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "ತಪ್ಪಾಗಿ ರಚಿಸಲಾದ XML ದಸ್ತಾವೇಜು %s ಅನ್ನು ಪಾರ್ಸ್ ಮಾಡಲಾಗಿಲ್ಲ" #: ../activation-server/object-directory-load.c:629 #, c-format msgid "Trying dir %s" msgstr "ಕೋಶ %s ಅನ್ನು ಪ್ರಯತ್ನಿಸಲಾಗುತ್ತಿದೆ" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "ಉಪ ಪ್ರಕ್ರಿಯೆಯು ಒಂದು ದೋಷ ಸಂದೇಶವನ್ನು ನೀಡಿಲ್ಲ, ತಿಳಿಯದ ವಿಫಲತೆ ಎದುರಾಗಿದೆ" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "ಉಪ ಪ್ರಕ್ರಿಯೆಯಿಂದ ಓದಲಾಗಿಲ್ಲ: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, c-format msgid "EOF from child process\n" msgstr "ಉಪ ಪ್ರಕ್ರಿಯೆಯಿಂದ EOF\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:438 msgid "Couldn't spawn a new process" msgstr "ಹೊಸ ಪ್ರಕ್ರಿಯೆಯನ್ನು ಹೆಚ್ಚಿಸಲು ಸಾಧ್ಯವಾಗಿಲ್ಲ" #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "File descriptor to print IOR on" msgstr "IOR ಅನ್ನು ಮುದ್ರಿಸಲು ಕಡತ ವಿವರಣೆಗಾರ" #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:399 msgid "IID to activate" msgstr "ಸಕ್ರಿಯಗೊಳಿಸಲು IID" #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Prevent registering of server with OAF" msgstr "ಪರಿಚಾರಕವನ್ನು OAF ನೊಂದಿಗೆ ನೋಂದಾಯಿಸುವುದನ್ನು ನಿರ್ಬಂಧಿಸು" #: ../bonobo-activation/bonobo-activation-init.c:409 msgid "Bonobo Activation options:" msgstr "Bonobo ಸಕ್ರಿಯಗೊಳಿಕಾ ಆಯ್ಕೆಗಳು:" #: ../bonobo-activation/bonobo-activation-init.c:410 msgid "Show Bonobo Activation options" msgstr "Bonobo ಸಕ್ರಿಯಗೊಳಿಕಾ ಆಯ್ಕೆಗಳನ್ನು ತೋರಿಸು" #: ../bonobo-activation/bonobo-activation-init.c:518 msgid "Bonobo activation options" msgstr "Bonobo ಸಕ್ರಿಯಗೊಳಿಕಾ ಆಯ್ಕೆಗಳು" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "`%s' ನ g_module_open `%s' ನೊಂದಿಗೆ ವಿಫಲಗೊಂಡಿದೆ" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "`%s' ನಲ್ಲಿ ಸಂಕೇತ Bonobo_Plugin_info ಕಂಡುಬಂದಿಲ್ಲ" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "ಫ್ಯಾಕ್ಟರಿ `%s' ಯು `%s' ಗಾಗಿ NIL ಅನ್ನು ಮರಳಿಸಿದೆ" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Shlib `%s' ಯು `%s' ಅನ್ನು ಹೊಂದಿದೆ" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "ಹೆಸರು" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "ಅನ್ವಯದ ವಿಶಿಷ್ಟವಾದ ಹೆಸರು" #: ../bonobo/bonobo-object.c:929 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:929 msgid "Custom CORBA POA" msgstr "ಇಚ್ಛೆಯ CORBA POA" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "ಒಂದು ಬೆಂಬಲವಿಲ್ಲದ ಕಾರ್ಯಕ್ಕೆ ಪ್ರಯತ್ನಿಸಲಾಗಿದೆ" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "IO ದೋಷ" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "ಅಮಾನ್ಯವಾದ ಆರ್ಗುಮೆಂಟ್ ಮೌಲ್ಯ" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "ಆಬ್ಜೆಕ್ಟ್ ಕಂಡು ಬಂದಿಲ್ಲ" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "ವಸ್ತುವಿನ ವಿವರಣೆಯಲ್ಲಿ ಸಿಂಟಾಕ್ಸಿನ ದೋಷ" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "ಫ್ಯಾಕ್ಟರಿಯಿಂದ ವಸ್ತುವನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಲಾಗಲಿಲ್ಲ" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "ಸ್ಟ್ರೀಮನ್ನು ನಿಲುಕಿಸಿಕೊಳ್ಳಲು ಅನುಮತಿಯಿಲ್ಲ" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "ಒಂದು ಬೆಂಬಲವಿಲ್ಲದ ಸ್ಟ್ರೀಮ್‌ ಕಾರ್ಯಕ್ಕೆ ಪ್ರಯತ್ನಿಸಲಾಗಿದೆ" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "ಸ್ಟ್ರೀಮಿನಲ್ಲಿ IO ದೋಷ" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "ಶೇಖರಣೆಯಲ್ಲಿ IO ದೋಷ" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "ಹೆಸರು ಶೇಖರಣೆಯಲ್ಲಿ ಈಗಾಗಲೆ ಅಸ್ತಿತ್ವದಲ್ಲಿದೆ" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "ವಸ್ತುವು ಶೇಖರಣೆಯಲ್ಲಿ ಕಂಡುಬಂದಿಲ್ಲ" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "ಶೇಖರಣೆಯ ಮೇಲೆ ಯಾವುದೆ ಕಾರ್ಯಾಚರಣೆ ಮಾಡಲು ಅನುಮತಿ ಇಲ್ಲ" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "ಬೆಂಬಲವಿರದ ಶೇಖರಣಾ ಕಾರ್ಯಕ್ಕಾಗಿ ಪ್ರಯತ್ನಿಸಲಾಗಿದೆ" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "ವಸ್ತುವು ಒಂದು ಸ್ಟ್ರೀಮ್‌ ಆಗಿಲ್ಲ" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "ವಸ್ತುವು ಒಂದು ಶೇಖರಣೆಯಾಗಿಲ್ಲ" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "ಶೇಖರಣೆಯು ಖಾಲಿ ಇಲ್ಲ" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "ತಪ್ಪಾಗಿರುವ ಬಳಕೆದಾರ ಸಂಪರ್ಕಸಾಧನ XML ವಿವರಣೆಗಾರ" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "XML ಬಳಕೆದಾರ ಸಂಪರ್ಕಸಾಧನ ಘಟಕಕ್ಕೆ ಅಮಾನ್ಯವಾದ ಮಾರ್ಗ" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "ಮನವಿಸಲ್ಲಿಸಲಾದ UI ಗುಣವೈಶಿಷ್ಟ್ಯವು ಅಸ್ತಿತ್ವದಲ್ಲಿಲ್ಲ" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "ಅಜ್ಞಾತವಾದ ಆಜ್ಞೆ ಅಥವ ಕ್ರಿಯಾಪದ" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "ಆಜ್ಞೆಯು ಸಂವೇದನಾತ್ಮಕವಾಗಿಲ್ಲ" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "ಸರಿಯಲ್ಲದ ದತ್ತಾಂಶದ ಬಗೆ" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "ಸ್ಟ್ರೀಮ್ ಕಂಡು ಬಂದಿಲ್ಲ" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "ಗುಣಲಕ್ಷಣವು ಕಂಡು ಬಂದಿಲ್ಲ" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "ಗುಣಲಕ್ಷಣವು ಅಮಾನ್ಯವಾದ ಬಗೆಯದ್ದಾಗಿದೆ" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "ಗುಣಲಕ್ಷಣವು ಓದಲು ಮಾತ್ರವಾಗಿದೆ" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "ಸಂರಚನಾ ದತ್ತಸಂಚಯವು ಬ್ಯಾಕೆಂಡ್ ವಿಫಲಗೊಂಡಿದೆ " #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "ಯಾವುದೆ Moniker ಸಂಪರ್ಕಸಾಧನವು ಕಂಡು ಬಂದಿಲ್ಲ" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "Moniker ಸಕ್ರಿಯಗೊಳಿಕೆಯು ಕಾಲಾವಧಿ ತೀರಿದೆ" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "moniker ನ ಒಳಗೆ ಸಿಂಟಾಕ್ಸಿನ ದೋಷ" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "Moniker ನಲ್ಲಿ ಒಂದು ತಿಳಿಯದೆ ಇರುವ moniker ಪೂರ್ವಪ್ರತ್ಯಯವಿದೆ" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "ದೋಷವನ್ನು ಪರಿಶೀಲಿಸುವಲ್ಲಿ ದೋಷ; ಯಾವುದೆ ಆಕ್ಷೇಪಣೆ ಇಲ್ಲ" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "ಯಾವುದೆ ವಿವರಗಳಿಲ್ಲದ ಸಾಮಾನ್ಯ ಸಕ್ರಿಗೊಳಿಕಾ ದೋಷ" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s" msgstr "'%s ಅನ್ನು ಪರಿಹರಿಸುವಲ್ಲಿ, ಅಥವ ವಿಸ್ತರಿಸುವಲ್ಲಿ ವಿಫಲಗೊಂಡಿದೆ" #: ../bonobo/bonobo-moniker-util.c:247 msgid "Failed to activate object" msgstr "ವಸ್ತುವನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಲು ವಿಫಲಗೊಂಡಿದೆ" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "'%s' ಅನ್ನು ಸಕ್ರಿಯಗೊಳಿಸುವಲ್ಲಿನ ಆಕ್ಷೇಪಣೆ" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "'%s' ಅನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಲು ವಿಫಲಗೊಂಡಿದೆ" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "HTTP Moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "ORB IOR ನಿಭಾಯಿಸುವ moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "ಮಾನಕ Moniker ಫ್ಯಾಕ್ಟರಿ" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "ಸಾಮಾನ್ಯ Oaf ಸಕ್ರಿಯಗೊಳಿಕಾ moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "ಸಾಮಾನ್ಯ Oaf ಮನವಿ moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "ಸಾಮಾನ್ಯ ಫ್ಯಾಕ್ಟರಿ 'ಹೊಸ' moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "ಸಾಮಾನ್ಯ ಅಂಶ moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "ಸ್ಟ್ರೀಮ್ MonikerExtender" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Bonobo Echo ಪರಿಚಾರಕದ ಫ್ಯಾಕ್ಟರಿ" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Bonobo Echo ಪರಿಚಾರಕದ ನಮೂನೆ ಪ್ರೋಗ್ರಾಮ್" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Echo ಘಟಕ" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Echo ಘಟಕದ ಫ್ಯಾಕ್ಟರಿ" #: ../samples/echo/echo-client.c:24 msgid "I could not initialize Bonobo" msgstr "Bonobo ಅನ್ನು ಆರಂಭಿಸಲು ಸಾಧ್ಯವಾಗಿಲ್ಲ" #: ../samples/echo/echo-client.c:35 msgid "Could not create an instance of the sample echo component" msgstr "ನಮೂನೆ echo ಘಟಕದ ಒಂದು ಸನ್ನಿವೇಶವನ್ನು ನಿರ್ಮಿಸಲು ಸಾಧ್ಯವಾಗಿಲ್ಲ" #: ../samples/echo/echo-client.c:47 #, c-format msgid "An exception occurred '%s'" msgstr "ಒಂದು ಆಕ್ಷೇಪಣೆಯು ಎದುರಾಗಿದೆ '%s'" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Could not save configuration file.\n" msgstr "ಸಂರಚನಾ ಕಡತವನ್ನು ಉಳಿಸಲಾಗಲಿಲ್ಲ.\n" #: ../utils/bonobo-activation-sysconf.c:84 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "ದಯವಿಟ್ಟು, '%s' ಗೆ ಬರೆಯಲು ನಿಮಗೆ ಸಾಕಷ್ಟು ಅನುಮತಿ ಇದೆ ಎಂದು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಿ.\n" #: ../utils/bonobo-activation-sysconf.c:87 #, c-format msgid "Successfully wrote configuration file.\n" msgstr "ಸಂರಚನಾ ಕಡತಕ್ಕೆ ಯಶಸ್ವಿಯಾಗಿ ಬರೆಯಲಾಗಿದೆ.\n" #: ../utils/bonobo-activation-sysconf.c:104 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "ಸಂರಚನಾ ಕಡತವು ಇದಾಗಿದೆ:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:146 #, c-format msgid "%s already in configuration file\n" msgstr "%s ಯು ಈಗಾಗಲೆ ಸಂರಚನಾ ಕಡತದಲ್ಲಿದೆ\n" #: ../utils/bonobo-activation-sysconf.c:166 #, c-format msgid "there is not a properly structured configuration file\n" msgstr "ಸೂಕ್ತವಾಗಿ ರಚಿಸಲಾದ ಯಾವುದೆ ಸಂರಚನಾ ಕಡತವಿಲ್ಲ \n" #: ../utils/bonobo-activation-sysconf.c:237 #, c-format msgid "Bonobo-activation configuration file contains:\n" msgstr "Bonobo-ಸಕ್ರಿಯಗೊಳಿಸುವ ಸಂರಚನಾ ಕಡತವು ಇದನ್ನು ಹೊಂದಿದೆ:\n" #: ../utils/bonobo-activation-sysconf.c:267 msgid "Directory to remove from configuration file" msgstr "ಸಂರಚನಾ ಕಡತದಿಂದ ತೆಗೆದು ಹಾಕಬೇಕಿರುವ ಕೋಶ" #: ../utils/bonobo-activation-sysconf.c:267 #: ../utils/bonobo-activation-sysconf.c:269 msgid "PATH" msgstr "PATH" #: ../utils/bonobo-activation-sysconf.c:269 msgid "Directory to add to configuration file" msgstr "ಸಂರಚನಾ ಕಡತಕ್ಕೆ ಸೇರಿಸಬೇಕಿರುವ ಕೋಶ" #: ../utils/bonobo-activation-sysconf.c:271 msgid "Display directories in configuration file" msgstr "ಸಂರಚನಾ ಕಡತದಲ್ಲಿ ಕೋಶಗಳನ್ನು ತೋರಿಸು" #: ../utils/bonobo-activation-sysconf.c:273 msgid "Display path to configuration file" msgstr "ಸಂರಚನಾ ಕಡತಕ್ಕಾಗಿನ ಮಾರ್ಗವನ್ನು ತೋರಿಸು" libbonobo-2.32.1/po/lv.po0000664000076400007640000003701311546203545012107 00000000000000# translation of lv.po to Latvian # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Raivis Dejus , 2006, 2009. # Rudolfs , 2011. msgid "" msgstr "" "Project-Id-Version: lv\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug." "cgi?product=bonobo&component=libbonobo\n" "POT-Creation-Date: 2010-06-21 20:31+0000\n" "PO-Revision-Date: 2011-03-07 14:09+0200\n" "Last-Translator: Rudolfs \n" "Language-Team: Latvian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: Lokalize 1.1\n" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : " "2);\n" #: ../activation-server/activation-context-corba.c:530 msgid "Couldn't find which child the server was listed in" msgstr "Nevar atrast, kuru pakārtoto serveris iekārtoja sarakstā" #: ../activation-server/activation-context-corba.c:822 msgid "Not a valid Activation ID" msgstr "Nav derīgs Aktivācijas ID" #: ../activation-server/activation-server-main.c:174 msgid "Directory to read .server files from" msgstr "Direktorija, no kuras nolasīt .server failus" #: ../activation-server/activation-server-main.c:174 msgid "DIRECTORY" msgstr "DIREKTORIJA" #: ../activation-server/activation-server-main.c:177 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "Servēt kā ActivitionContext (noklusētais ir tikai ObjectDirectory)" #: ../activation-server/activation-server-main.c:181 msgid "File descriptor to write IOR to" msgstr "Faila deskriptors lai rakstītu IOR uz" #: ../activation-server/activation-server-main.c:181 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:184 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "" "Reģistrējiet kā lietotāja aktivizācijas serveri bez saslēgšanas. " "Brīdinājums: šai iespējai var būt bīstami blakusefekti uz lietotāja sesijas " "stabilitāti, to vajadzētu izmantot vienīgi atkļūdošanas vajadzībām" #: ../activation-server/activation-server-main.c:192 msgid "Query expression to evaluate" msgstr "Pārbaudāmā prasījuma izteiksme" #: ../activation-server/activation-server-main.c:192 msgid "EXPRESSION" msgstr "EXPRESSION" #: ../activation-server/activation-server-main.c:541 #: ../utils/bonobo-activation-sysconf.c:305 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "" "Palaidiet '%s --help' lai iegūtu sarakstu ar pieejamajām komandrindas " "opcijām.\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "CORBA CosNaming serviss." #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "Nosaukumu serviss" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "Ziņošanas serviss" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "Aktivizācijas ziņošanas serviss" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "Mēs vēl nepārvaldam shlib objektu aktivizēšanu attālinātajā procesā" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "Bonobo Aktivizācijas konfigurācijas fails nav nolasīts veiksmīgi. Lūdzu vai " "tas ir pareizs: %s" #: ../activation-server/object-directory-load.c:102 msgid "a NULL iid is not valid" msgstr "NULL idd nav derīgs" #: ../activation-server/object-directory-load.c:106 #, c-format msgid "iid %s has a NULL type" msgstr "iid %s ir NULL tips" #: ../activation-server/object-directory-load.c:110 #, c-format msgid "iid %s has a NULL location" msgstr "iid %s ir NULL lokācija" #: ../activation-server/object-directory-load.c:119 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "nepareizs simbols '%c' iid '%s'" #: ../activation-server/object-directory-load.c:349 #, c-format msgid "Property '%s' has no value" msgstr "Rekvizītam '%s' nav vērtības" #: ../activation-server/object-directory-load.c:583 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "Nevarēju noparsēt slikti noformētu XML dokumentu %s" #: ../activation-server/object-directory-load.c:629 #, c-format msgid "Trying dir %s" msgstr "Meģina dir %s" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "Pakārtotais process nenodeva kļūdas ziņojumu, nezināmas probēmas" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "Nespēja nolasīt no pakārtotā procesa: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, c-format msgid "EOF from child process\n" msgstr "EOF no apakšprocesa\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:438 msgid "Couldn't spawn a new process" msgstr "Nevarēju izveidot jaunu procesu" #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "File descriptor to print IOR on" msgstr "Faila deskriptors drukāšanai IOR uz" #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:399 msgid "IID to activate" msgstr "IID aktivizēšanai" #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Prevent registering of server with OAF" msgstr "Novērst reģistrēšanos ar serveri ar OAF" #: ../bonobo-activation/bonobo-activation-init.c:409 msgid "Bonobo Activation options:" msgstr "Bonobo aktivizācijas iespējas:" #: ../bonobo-activation/bonobo-activation-init.c:410 msgid "Show Bonobo Activation options" msgstr "Parādīt Bonobo aktivizācijas opcijas" #: ../bonobo-activation/bonobo-activation-init.c:518 msgid "Bonobo activation options" msgstr "Bonobo aktivizācijas opcijas" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "`%s' g_module_open neizdevās ar `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "Nevar atrast simbolu Bonobo_Plugin_info `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "Ražotne `%s' atgrieza NIL `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Shlib `%s' nesatur `%s'" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "Nosaukums" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "Aplikācijas unikālais nosaukums" #: ../bonobo/bonobo-object.c:929 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:929 msgid "Custom CORBA POA" msgstr "Pielāgota CORBA POA" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "Tika mēģiāts veikt neatbalstītu darbību" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "IO Kļūda" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "Nepareiza argumenta vērtība" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "Objekts nav atrasts" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "Sintakses kļūda objekta aprakstā" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "Nevaru aktivizēt objektu no ražotnes" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "Nav pieejas atļaujas straumei" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "Tika mēģiāta neatbalstīta straumes darbība" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "IO Kļūda straumē" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "IO Kļūda glabātuvē" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "Glabātuvē jau tāds nosaukums eksistē" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "Objekts netika atrasts glabātuvē" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "Nav atļaujas, lai veiktu operāciju ar glabātuvi" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "Tika mēģināts veikt neatbalstītu darbību ar glabātuvi" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "Objekts nav straume" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "Objekts nav glabātuve" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "Glabātuve nav tukša" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "nepareizi formēts lietotāja saskarnes XML apraksts" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "nepareizs ceļš uz XML lietotaja saskarnes elementu" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "Pieprasītais UI atribūts neekistē" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "Nezināma komanda vai verbs" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "Komanda ir 'nejūtīga'" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "nepareizs datu tips" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "straume nav atrasta" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "rekvizīts nav atrasts" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "rekvizītam ir nepareizs tips" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "rekvizīts ir tikai nolasīšanai" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "konfigurācijas datubāzes atbalsts neizdevies" #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "Moniker saskarne nevar tikt atrasta" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "Moniker aktivizācija iztecējusi" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "Sintakses kļūda ar moniker" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "Moniker ir nezināms moniker prefikss" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "Kļūda pārbaudot kļūdu; nav izņēmumu" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "Vispārēja aktivizācijas kļūda bez apraksta" #: ../bonobo/bonobo-moniker.c:342 #, c-format #| msgid "Failed to resolve, or extend '%s" msgid "Failed to resolve, or extend '%s'" msgstr "Neizdevās atrisināt, vai paplašināt '%s'" #: ../bonobo/bonobo-moniker-util.c:247 msgid "Failed to activate object" msgstr "Neizdevās aktivizēt objektu" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "Izņēmums aktivējot '%s" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "Neizdevās aktivēt '%s" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "HTTP moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "ORB IOR pārvaldošs moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "Standarta Moniker ražotne" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "parasts Oaf aktivizācijas moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "parasts Oaf prasījuma moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "parasts ražotnes 'jaunais' moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "parasts priekšmets moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "straume MonikerExtender" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Bonobo Echo servera ražotne" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Bonobo Echo servera parauga programma" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Echo komponente" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Echo komponentes ražotne" #: ../samples/echo/echo-client.c:24 msgid "I could not initialize Bonobo" msgstr "Es nespēju inicializēt Bonobo" #: ../samples/echo/echo-client.c:35 msgid "Could not create an instance of the sample echo component" msgstr "Es nespēju izveidot instanci parauga echo komponentam" #: ../samples/echo/echo-client.c:47 #, c-format msgid "An exception occurred '%s'" msgstr "Parādījies izņēmums '%s'" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Could not save configuration file.\n" msgstr "Nevar noglabāt konfigurācijas failu.\n" #: ../utils/bonobo-activation-sysconf.c:84 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "Lūdzu, pārliecinieties vai jums ir atļaujas rakstīt uz '%s'.\n" #: ../utils/bonobo-activation-sysconf.c:87 #, c-format msgid "Successfully wrote configuration file.\n" msgstr "Veiksmīgi ierakstīts konfigurācijas fails.\n" #: ../utils/bonobo-activation-sysconf.c:104 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "konfigurācijas fails ir:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:146 #, c-format msgid "%s already in configuration file\n" msgstr "%s jau ir konfigurācijas failā\n" #: ../utils/bonobo-activation-sysconf.c:166 #, c-format msgid "there is not a properly structured configuration file\n" msgstr "nav pareizi strukturēts konfigurācijas fails\n" #: ../utils/bonobo-activation-sysconf.c:237 #, c-format msgid "Bonobo-activation configuration file contains:\n" msgstr "Bonobo-activation konfigurācijas fails satur:\n" #: ../utils/bonobo-activation-sysconf.c:267 msgid "Directory to remove from configuration file" msgstr "Izņemt direktoriju no konfigurācijas faila" #: ../utils/bonobo-activation-sysconf.c:267 #: ../utils/bonobo-activation-sysconf.c:269 msgid "PATH" msgstr "CEĻŠ" #: ../utils/bonobo-activation-sysconf.c:269 msgid "Directory to add to configuration file" msgstr "Pievienot direktoriju konfigurācijas failam" #: ../utils/bonobo-activation-sysconf.c:271 msgid "Display directories in configuration file" msgstr "Parādīt konfigurācijas faila direktorijas" #: ../utils/bonobo-activation-sysconf.c:273 msgid "Display path to configuration file" msgstr "Parādīt ceļu uz konfigurācijas failu" libbonobo-2.32.1/po/ru.po0000664000076400007640000004625011433015514012107 00000000000000# translation of ru.po to # translation of libbonobo.HEAD.po to # Copyright (C) 2001-2002, 2005, 2006, 2007 Free Software Foundation, Inc. # Sun G11n # # Valek Filippov , 2001-2002. # Dmitry Mastrukov , 2002. # Leonid Kanter , 2005, 2006, 2007. msgid "" msgstr "" "Project-Id-Version: ru\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2010-08-03 16:58+0300\n" "PO-Revision-Date: 2010-04-26 19:48+0300\n" "Last-Translator: Yuri Myasoedov \n" "Language-Team: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.11.4\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" #: ../activation-server/activation-context-corba.c:530 msgid "Couldn't find which child the server was listed in" msgstr "Не удалось найти потомка со ссылкой на сервер" #: ../activation-server/activation-context-corba.c:822 msgid "Not a valid Activation ID" msgstr "Идентификатор активации (Activation ID) недопустим" #: ../activation-server/activation-server-main.c:174 msgid "Directory to read .server files from" msgstr "Каталог, из которого будут считываться файлы типа .server" #: ../activation-server/activation-server-main.c:174 msgid "DIRECTORY" msgstr "КАТАЛОГ" #: ../activation-server/activation-server-main.c:177 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "" "Обрабатывать как ActivationContext (по умолчанию только как ObjectDirectory)" #: ../activation-server/activation-server-main.c:181 msgid "File descriptor to write IOR to" msgstr "Дескриптор файла для записи IOR" #: ../activation-server/activation-server-main.c:181 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:184 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "" "Зарегистрировать как сервер активации пользователя без блокирования. " "Внимание: этот параметр может оказывать опасные побочные эффекты на " "стабильность текущего сеанса пользователя, и может использоваться только в " "отладочных целях." #: ../activation-server/activation-server-main.c:192 msgid "Query expression to evaluate" msgstr "Выражение-запрос для разбора" #: ../activation-server/activation-server-main.c:192 msgid "EXPRESSION" msgstr "ВЫРАЖЕНИЕ" #: ../activation-server/activation-server-main.c:541 #: ../utils/bonobo-activation-sysconf.c:305 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "" "Выполните '%s --help', чтобы просмотреть полный список доступных параметров " "командной строки.\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "Сервис CosNaming среды CORBA." #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "Сервис имён" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "Сервис уведомления" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "Сервис уведомления для активации" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "" "Активация объектов разделяемых библиотек в удалённых процессах ещё не " "поддерживается" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "Не удалось прочитать файл конфигурации Bonobo Activation. Проверьте, что " "файл \"%s\" указан правильно" #: ../activation-server/object-directory-load.c:102 msgid "a NULL iid is not valid" msgstr "IID не может иметь значение NULL" #: ../activation-server/object-directory-load.c:106 #, c-format msgid "iid %s has a NULL type" msgstr "iid %s равен NULL" #: ../activation-server/object-directory-load.c:110 #, c-format msgid "iid %s has a NULL location" msgstr "Местоположение iid %s равно NULL" #: ../activation-server/object-directory-load.c:119 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "Cимвол \"%c\" в iid \"%s\" недопустим" #: ../activation-server/object-directory-load.c:349 #, c-format msgid "Property '%s' has no value" msgstr "Свойству \"%s\" не задано значение" #: ../activation-server/object-directory-load.c:583 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "" "Не удалось разобрать неверно сформированный документ формата XML \"%s\"" #: ../activation-server/object-directory-load.c:629 #, c-format msgid "Trying dir %s" msgstr "Идёт попытка открыть каталог \"%s\"" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "" "Процесс-потомок не выдал сообщения об ошибке, произошел неопознанный сбой" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "Произошёл сбой при чтении из процесса-потомка: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, c-format msgid "EOF from child process\n" msgstr "EOF от дочернего процесса\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:438 msgid "Couldn't spawn a new process" msgstr "Не удается породить новый процесс" #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "File descriptor to print IOR on" msgstr "Дескриптор файла для печати IOR" #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:399 msgid "IID to activate" msgstr "IID для активации" #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Prevent registering of server with OAF" msgstr "Запретить регистрацию сервера через OAF" #: ../bonobo-activation/bonobo-activation-init.c:409 msgid "Bonobo Activation options:" msgstr "Параметры активации Bonobo:" #: ../bonobo-activation/bonobo-activation-init.c:410 msgid "Show Bonobo Activation options" msgstr "Отображать параметры активации Bonobo" #: ../bonobo-activation/bonobo-activation-init.c:518 msgid "Bonobo activation options" msgstr "Параметры активации Bonobo" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "Произошёл сбой в функции g_module_open для \"%s\" с \"%s\"" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "Невозможно найти символ Bonobo_Plugin_info в \"%s\"" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "Фабрика \"%s\" возвратила для \"%s\" значение NIL" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Разделяемая библиотека \"%s\" не содержит \"%s\"" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "Наименование" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "Уникальное имя приложения" #: ../bonobo/bonobo-object.c:929 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:929 msgid "Custom CORBA POA" msgstr "Прочий адаптер CORBA POA" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "Произошла попытка выполнить неподдерживаемое действие" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "Произошла ошибка ввода-вывода" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "Значение аргумента недопустимо" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "Объект не найден" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "Синтаксическая ошибка присутствует в описании объекта" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "Невозможно активировать объект из фабрики" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "Отсутствуют права на доступ к потоку" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "Произошла попытка выполнить неподдерживаемое действие потока" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "Произошла ошибка ввода-вывода в потоке" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "Произошла ошибка ввода-вывода в хранилище" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "Название уже существует в хранилище" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "Объект в хранилище не найден" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "Отсутствуют права для выполнения действий c хранилищем" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "Произошла попытка выполнить неподдерживаемое действие с хранилищем" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "Объект не является потоком" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "Объект не является хранилищем" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "Хранилище не пусто" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "неправильное XML-описание пользовательского интерфейса" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "недопустимый путь к XML-элементу пользовательского интерфейса" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "запрошенный атрибут интерфейса пользователя не существовал" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "Команда или действие неизвестны" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "Команда является бессмысленной" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "неправильный тип данных" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "поток не найден" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "свойство не найдено" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "свойство имеет недопустимый тип" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "свойство только для чтения" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "произошёл сбой в модуле конфигурационной базы данных" #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "Невозможно найти интерфейс моникера" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "Время ожидания активации моникера превышено" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "Произошла синтаксическая ошибка в моникере" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "Моникер имеет неизвестный префикс" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "Произошла ошибка проверки ошибок; исключение отсутствует" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "Произошла общая ошибка активирования без описания" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s'" msgstr "Произошёл сбой при разрешении или расширении «%s»" #: ../bonobo/bonobo-moniker-util.c:247 msgid "Failed to activate object" msgstr "Произошёл сбой при активации объекта" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "Исключение \"%s\" активируется" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "Произошёл сбой при активации \"%s\"" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "Моникер HTTP" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "Моникер обработки ORB IOR" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "Фабрика стандартного моникера" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "общий моникер активации Oaf" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "общий моникер запроса Oaf" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "общий моникер \"new\" фабрики" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "общий моникер элемента" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "потоковый MonikerExtender" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Фабрика эхо-сервера Bonobo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Образец программы эхо-сервера Bonobo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Компонент Эхо" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Фабрика компонента Эхо" #: ../samples/echo/echo-client.c:24 msgid "I could not initialize Bonobo" msgstr "Не удалось инициализировать систему Bonobo" #: ../samples/echo/echo-client.c:35 msgid "Could not create an instance of the sample echo component" msgstr "Не удалось создать экземпляр образца компонента эхо" #: ../samples/echo/echo-client.c:47 #, c-format msgid "An exception occurred '%s'" msgstr "Возникло исключение \"%s\"" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Could not save configuration file.\n" msgstr "Не удалось сохранить файл конфигурации.\n" #: ../utils/bonobo-activation-sysconf.c:84 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "Убедитесь, что у вас есть права на запись в \"%s\".\n" #: ../utils/bonobo-activation-sysconf.c:87 #, c-format msgid "Successfully wrote configuration file.\n" msgstr "Файл конфигурации успешно записан.\n" #: ../utils/bonobo-activation-sysconf.c:104 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "файл конфигурации:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:146 #, c-format msgid "%s already in configuration file\n" msgstr "%s уже содержится в файле конфигурации\n" #: ../utils/bonobo-activation-sysconf.c:166 #, c-format msgid "there is not a properly structured configuration file\n" msgstr "файл конфигурации имеет неправильную структуру\n" #: ../utils/bonobo-activation-sysconf.c:237 #, c-format msgid "Bonobo-activation configuration file contains:\n" msgstr "Файл конфигурации сервиса Bonobo-activation содержит:\n" #: ../utils/bonobo-activation-sysconf.c:267 msgid "Directory to remove from configuration file" msgstr "Каталог, который нужно удалить из файла конфигурации" #: ../utils/bonobo-activation-sysconf.c:267 #: ../utils/bonobo-activation-sysconf.c:269 msgid "PATH" msgstr "PATH" #: ../utils/bonobo-activation-sysconf.c:269 msgid "Directory to add to configuration file" msgstr "Каталог, который нужно добавить в файл конфигурации" #: ../utils/bonobo-activation-sysconf.c:271 msgid "Display directories in configuration file" msgstr "Показать каталоги из файла конфигурации" #: ../utils/bonobo-activation-sysconf.c:273 msgid "Display path to configuration file" msgstr "Показать путь к файлу конфигурации" #~ msgid "Could not initialize Bonobo" #~ msgstr "Не удалось инициализировать систему Bonobo" libbonobo-2.32.1/po/ka.po0000644000076400007640000005205111173072711012051 00000000000000# translation of ka.po to Georgian # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Vladimer Sichinava , 2006. # Vladimer Sichinava , 2006. # Vladimer Sichinava ვლადიმერ სიჭინავა , 2007. msgid "" msgstr "" "Project-Id-Version: ka\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-09-14 14:18+0200\n" "PO-Revision-Date: 2007-09-14 14:20+0200\n" "Last-Translator: Vladimer Sichinava ვლადიმერ სიჭინავა \n" "Language-Team: Georgian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Poedit-Language: Georgian\n" "X-Poedit-Country: GEORGIA\n" "X-Generator: KBabel 1.11.4\n" "Plural-Forms: nplurals=1; plural=0\n" #: ../activation-server/activation-context-corba.c:525 msgid "Couldn't find which child the server was listed in" msgstr "ვერ მოიძებნა ქვესია რომელშიც სერვერია შეტანილი" #: ../activation-server/activation-context-corba.c:817 msgid "Not a valid Activation ID" msgstr "აქტივაციის მცდარი კოდი (ID)" #: ../activation-server/activation-server-main.c:162 msgid "Directory to read .server files from" msgstr "დასტა .server ფაილების წასაკითხად" #: ../activation-server/activation-server-main.c:162 msgid "DIRECTORY" msgstr "დასტა" #: ../activation-server/activation-server-main.c:165 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "დამუშავება როგორც ActivationContext (ნაგულისხმებია მხოლოდ ObjectDirectory)" #: ../activation-server/activation-server-main.c:169 msgid "File descriptor to write IOR to" msgstr "ფაილის აღმწერი IOR ჩასაწერად" #: ../activation-server/activation-server-main.c:169 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:172 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "" "დაბლოკვის გარეშე რეგისტრირება, როგორც მომხმარებლის აქტივაციის სერვერი. " "გაფრთხილებთ ამ ოფციას შეიძლება არასასურველი შედეგები მოჰყვეს, შესაძლებელი " "საფრთხე მომხმარებლების მიმდინარე სესიებს ეხება. სასურველია ოფცია გამართვის " "დროს გამოიყენოთ" #: ../activation-server/activation-server-main.c:180 msgid "Query expression to evaluate" msgstr "დასამუშავებელი მოთხოვნის გამოსახულება" #: ../activation-server/activation-server-main.c:180 msgid "EXPRESSION" msgstr "გამოსახულება" #: ../activation-server/activation-server-main.c:429 #: ../utils/bonobo-activation-sysconf.c:305 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "გაუშვით '%s --help' ხელმისაწვდომი ტექსტური ბრძანებების სანახავად.\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "CORBA CosNaming მომსახურება." #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "სახელთა მომსახურება" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "შეტყობინების მომსახურება" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "შეტყობინების მომსახურება გააქტივებისთვის" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "shlib ობიექტების აქტივაცია დაშორებულ პროცესებში ჯერ არაა რეალიზებული" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "Bonobo აქტივაციის კონფიგურაცია მცდარადაა წაკითხული. გთხოვთ გადაამოწმოთ " "მართებულობა: %s" #: ../activation-server/object-directory-load.c:102 msgid "a NULL iid is not valid" msgstr "NULL მნიშვნელობა IID-სთვის დაუშვებელია" #: ../activation-server/object-directory-load.c:106 #, c-format msgid "iid %s has a NULL type" msgstr "IID %s NULL ტიპისაა" #: ../activation-server/object-directory-load.c:110 #, c-format msgid "iid %s has a NULL location" msgstr "IID %s მისამართია NULL" #: ../activation-server/object-directory-load.c:119 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "მცდარი სიმბოლო '%c' IID-იში '%s'" #: ../activation-server/object-directory-load.c:349 #, c-format msgid "Property '%s' has no value" msgstr "'%s' პარამეტრი მნიშვნელობის გარეშეა" #: ../activation-server/object-directory-load.c:581 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "ვერ ხერხდება მცდარი XML ფორმატის %s დოკუმენტის დამუშავება" #: ../activation-server/object-directory-load.c:627 #, c-format msgid "Trying dir %s" msgstr "%s ვცდილობ დასტის გახსნას" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "ქვეპროცესს შეცდომის შეტყობინება არ დაუბრუნებია, დაიმზირება უცნობი შეცდომა" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "ქვეპროცესის წაკითხვის შეცდომა: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, c-format msgid "EOF from child process\n" msgstr "ქვეპროცესის დასრული (EOF)\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:438 msgid "Couldn't spawn a new process" msgstr "ახალი პროცესის წარმოქმნა ვერ ხერხდება" #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "File descriptor to print IOR on" msgstr "ფაილის აღმწერი IOR დასაბეჭდად" #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:399 msgid "IID to activate" msgstr "გასააქტივებელი IID" #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Prevent registering of server with OAF" msgstr "სერვერზე OAF-ით რეგისტრაციის აკრძალვა" #: ../bonobo-activation/bonobo-activation-init.c:409 msgid "Bonobo Activation options:" msgstr "Bonobo აქტივაციის პარამეტრები:" #: ../bonobo-activation/bonobo-activation-init.c:410 msgid "Show Bonobo Activation options" msgstr "Bonobo აქტივაციის პარამეტრების ჩვენება" #: ../bonobo-activation/bonobo-activation-init.c:518 msgid "Bonobo activation options" msgstr "Bonobo აქტივაციის პარამეტრები" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "g_module_open `%s' შეცდომა პარამეტრით `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "ვერ ხერხდებაl Bonobo_Plugin_info სიმბოლოს პოვნა აქ - `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "`%s' - დააბრუნა NIL მნიშვნელობა - `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "`%s' Shlib ბიბლიოთეკა `%s'-ს არ შეიცავს" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "სახელი" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "პროგრამის სახელი" #: ../bonobo/bonobo-object.c:926 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:926 msgid "Custom CORBA POA" msgstr "საკუთარი CORBA POA" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "არარეალიზებული ქმედების მცდელობა" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "IO შეცდომა" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "არგუმენტის მცდარი მნიშვნელობა" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "ობიექტი ვერ მოიძებნა" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "სინტაქსური შეცდომა ობიექტის აღწერილობაში" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "ობიექტის აქტივაცია ფაბრიკიდან ვერ ხერხდება" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "ნაკადთან დაშვება აკრძალულია" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "ნაკადის დაუშვებელი ქმედების მცდელობა" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "ნაკადის IO შეცდომა" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "საცავის IO შეცდომა" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "სახელი საცავში უკვე არსებობს" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "ობიექტი საცავში ვერ მოიძებნა" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "საცავთან ოპერაციები დაუშვებელია" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "საცავის დაუშვებელი ქმედების მცდელობა" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "ობიექტი ნაკადი არაა" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "ობიექტი საცავი არაა" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "საცავი ცარიელი არაა" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "მომხმარებლის ინტერფეისის უმართებლო XML აღწერა" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "XML მომხმარებლის ინტერფეისის ელემენტის მცდარი გეზი" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "მოთხოვნილი UI ატრიბუტი ვერ მოიძებნა" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "უცნობი ბრძანება ან ზმნა" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "ბრძანება ვერ აღიქმება" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "მონაცემთა მცდარი ტიპი" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "ნაკადი ვერ მოიძებნა" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "პარამეტრი ვერ მოიძებნა" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "პარამეტრის მცდარი ტიპი" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "პარამეტრი მხოლოდ კითხვადია" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "მონაცემთა ბაზის კონფიგურაცია არ შედგა" #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "მონიკერის ინტერფეისი ვერ მოიძებნა" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "მონიკერის აქტივაციის ვადა გავიდა" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "სინტაქსური შეცდომა მონიკერში" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "მონიკერს უცნობი პრეფიქსი აქვს" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "შეცდომის შემოწმების შეცდომა; გამონაკლისის გარეშე" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "აქტივაციის ძირითადი შეცდომა აღწერილობის გარეშე" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s" msgstr "შეცდომა მოგვარებისას ან გაფართოებისას - '%s" #: ../bonobo/bonobo-moniker-util.c:247 msgid "Failed to activate object" msgstr "ობიექტის აქტივაცია ვერ შედგა" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "გამონაკლისის აქტივაცია - '%s'" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "აქტივაცია ვერ მოხერხდა - '%s'" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "HTTP მონიკერი" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "ORB IOR დამუშავების მონიკერი" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "სტანდარტული მონიკერის საწარმო" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "Oaf აქტივაციის საზოგადო მონიკერი" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "Oaf მოთხოვნის საზოგადო მონიკერი" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "საწარმოს 'ახალი' საზოგადო მონიკერი" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "ელემენტის საზოგადო მონიკერი" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "ნაკადის MonikerExtender" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Bonobo ექო სერვერის საწარმო" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Bonobo ექო სერვერის სანიმუშო პროგრამა" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "ექოს კომპონენტი" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "ექოს კომპონენტის საწარმო" #: ../samples/echo/echo-client.c:24 msgid "I could not initialize Bonobo" msgstr "Bonobo-ს ინიციალიზაცია ვერ ხერხდება" #: ../samples/echo/echo-client.c:35 msgid "Could not create an instance of the sample echo component" msgstr "ექოს კომპონენტის ნიმუშის შექმნა ვერ ხერხდება" #: ../samples/echo/echo-client.c:47 #, c-format msgid "An exception occurred '%s'" msgstr "დაიმზირება გამონაკლისი - '%s'" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Could not save configuration file.\n" msgstr "კონფიგურაციის ფაილის შენახვა ვერ ხერხდება.\n" #: ../utils/bonobo-activation-sysconf.c:84 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "გთხოვთ გადაამოწმოთ ჩაწერის უფლება - '%s'.\n" #: ../utils/bonobo-activation-sysconf.c:87 #, c-format msgid "Successfully wrote configuration file.\n" msgstr "კონფიგურაციის ფაილი წარმატებით შეინახა.\n" #: ../utils/bonobo-activation-sysconf.c:104 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "კონფიგურაციის ფაილია:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:146 #, c-format msgid "%s already in configuration file\n" msgstr "%s უკვე კონფიგურაციის ფაილშია\n" #: ../utils/bonobo-activation-sysconf.c:166 #, c-format msgid "there is not a properly structured configuration file\n" msgstr "კონფიგურაციის ამ ფაილის სტრუქტურა უმართებლოა\n" #: ../utils/bonobo-activation-sysconf.c:237 #, c-format msgid "Bonobo-activation configuration file contains:\n" msgstr "Bonobo-ს აქტივაციის კონფიგურაციის ფაილი შეიცავს:\n" #: ../utils/bonobo-activation-sysconf.c:267 msgid "Directory to remove from configuration file" msgstr "კონფიგურაციის ფაილიდან ამოსაშლელი დასტა" #: ../utils/bonobo-activation-sysconf.c:267 #: ../utils/bonobo-activation-sysconf.c:269 msgid "PATH" msgstr "PATH" #: ../utils/bonobo-activation-sysconf.c:269 msgid "Directory to add to configuration file" msgstr "კონფიგურაციის ფაილში დასამატებელი დასტა" #: ../utils/bonobo-activation-sysconf.c:271 msgid "Display directories in configuration file" msgstr "კონფიგურაციის ფაილში დასტების ჩვენება" #: ../utils/bonobo-activation-sysconf.c:273 msgid "Display path to configuration file" msgstr "კონფიგურაციის ფაილის გეზის ჩვენება" libbonobo-2.32.1/po/sr.po0000664000076400007640000005121211436275736012120 00000000000000# Serbian translation of libbonobo # Courtesy of Prevod.org team (http://prevod.org/) -- 2003, 2004, 2005, 2006, 2007. # # This file is distributed under the same license as the libbonobo package. # # Maintainer: Вељко М. Станојевић # Reviewed on 2005-07-09 by: Данило Шеган # Translated on 2006-02-01 by Слободан Д. Средојевић # Милош Поповић , 2010. # msgid "" msgstr "" "Project-Id-Version: libbonobo\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?" "product=bonobo&component=libbonobo\n" "POT-Creation-Date: 2010-06-21 20:31+0000\n" "PO-Revision-Date: 2010-08-21 20:27+0200\n" "Last-Translator: Милош Поповић \n" "Language-Team: Serbian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=4; plural=n==1? 3 : n%10==1 && n%100!=11 ? 0 : n" "%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" #: ../activation-server/activation-context-corba.c:530 msgid "Couldn't find which child the server was listed in" msgstr "Нисам успео да откријем на који подпроцес је сервер уврштен" #: ../activation-server/activation-context-corba.c:822 msgid "Not a valid Activation ID" msgstr "Неважећа идентификација за покретање" #: ../activation-server/activation-server-main.c:174 msgid "Directory to read .server files from" msgstr "Директоријум из којег ће се читати .server датотеке" #: ../activation-server/activation-server-main.c:174 msgid "DIRECTORY" msgstr "ДИРЕКТОРИЈУМ" #: ../activation-server/activation-server-main.c:177 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "Служи као ActivationContext (подразумевано је само ObjectDirectory)" #: ../activation-server/activation-server-main.c:181 msgid "File descriptor to write IOR to" msgstr "Описник датотеке за уписивање IOR-а" # Описник датотеке? #: ../activation-server/activation-server-main.c:181 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "FD" msgstr "ОД" #: ../activation-server/activation-server-main.c:184 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "" "Пријави се као корисников сервер за покретања без закључавања. Упозорење: " "ова опција се може опасно одразити на стабилност корисникове сесије која је " "у току и треба је користити само при откривању грешака" #: ../activation-server/activation-server-main.c:192 msgid "Query expression to evaluate" msgstr "Израз за претрагу који треба вредновати" #: ../activation-server/activation-server-main.c:192 msgid "EXPRESSION" msgstr "ИЗРАЗ" #: ../activation-server/activation-server-main.c:541 #: ../utils/bonobo-activation-sysconf.c:305 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "" "Покрените „%s --help“ да бисте видели целу листу доступних опција командне " "линије.\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "CORBA CosNaming служба." #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "Служба именовања" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "Служба за обавештења" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "Служба обавештавања за активацију" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "Још немамо начина за руковање shlib објектима у удаљеном процесу" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "Датотека са подешавањима за Бонобо активацију није успешно прочитана. " "Проверите да ли је исправна у: %s" #: ../activation-server/object-directory-load.c:102 msgid "a NULL iid is not valid" msgstr "NULL iid је неважећи" #: ../activation-server/object-directory-load.c:106 #, c-format msgid "iid %s has a NULL type" msgstr "iid %s је NULL врсте" #: ../activation-server/object-directory-load.c:110 #, c-format msgid "iid %s has a NULL location" msgstr "iid %s има NULL локацију" #: ../activation-server/object-directory-load.c:119 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "неважећи знак „%c“ in iid „%s“" #: ../activation-server/object-directory-load.c:349 #, c-format msgid "Property '%s' has no value" msgstr "Особина „%s“ нема никакву вредност" #: ../activation-server/object-directory-load.c:583 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "Не могу да обрадим лоше обликован XML документ %s" # bug: s/dir/directory/ #: ../activation-server/object-directory-load.c:629 #, c-format msgid "Trying dir %s" msgstr "Покушавам директоријум %s" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "" "Подпроцес није дао никакву поруку о грешци, догодила се непозната грешка" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "Нисам успео да читам из подпроцеса: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, c-format msgid "EOF from child process\n" msgstr "Крај датотеке из подпроцеса\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:438 msgid "Couldn't spawn a new process" msgstr "Нисам могао до почнем нови процес" #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "File descriptor to print IOR on" msgstr "Описник датотеке на којем ће се исписати IOR" #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:399 msgid "IID to activate" msgstr "IID који треба покренути" #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Prevent registering of server with OAF" msgstr "Спречи регистровање сервера на OAF-у" #: ../bonobo-activation/bonobo-activation-init.c:409 msgid "Bonobo Activation options:" msgstr "Опције за покретање бонобоа:" #: ../bonobo-activation/bonobo-activation-init.c:410 msgid "Show Bonobo Activation options" msgstr "Прикажи могућности Бонобо покретања" #: ../bonobo-activation/bonobo-activation-init.c:518 msgid "Bonobo activation options" msgstr "Опције за покретање бонобоа" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "g_module_open за „%s“ није успео са „%s“" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "Не могу да нађем симбол Bonobo_Plugin_info у „%s“" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "Творница „%s“ је вратила NIL за „%s“" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Shlib „%s“ не садржи „%s“" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "Име" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "Јединствено име програма" #: ../bonobo/bonobo-object.c:929 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:929 msgid "Custom CORBA POA" msgstr "Прилагођен CORBA POA" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "Покушај извршења радње која није подржана" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "УИ грешка" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "Неважећа вредност аргумента" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "Објекат није пронађен" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "Синтаксна грешка у опису објекта" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "Не могу да активирам објекат из творнице" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "Нема овлашћења за приступ низу" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "Покушај извршења неподржане радње на низу" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "УИ грешка на току" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "УИ грешка при складиштењу" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "Име већ постоји у складишту" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "Објекат није пронађен у складишту" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "Нема овлашћења за извршење радње на складишту" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "Покушај извршења неподржане складишне радње" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "Објекат није у току" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "Објекат није складиште" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "Складиште није празно" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "погрешно обликован XML опис корисничког сучеља" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "неисправна стаза ка XML елементу корисничког сучеља" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "затражена особина корисничког сучеља не постоји" # Хм, ово ми сувише личи на функционалне програмске језике и „предикате“, па уместо „глагола“ стављам то... #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "Непозната наредба или предикат" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "Наредба је неосетљива" # „data“ је множина #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "неисправна врста података" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "ток није нађен" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "особина није нађена" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "особина је неважеће врсте" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "особина је само за читање" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "грешка у бази са подешавањима" #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "Нисам нашао спрегу надимака" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "Истекло је време за активацију надимка" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "Синтаксна грешка у надимку" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "Надимак има непознат предметак за надимке" # bug: lovely, indeed #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "Грешка при провери грешке; без изузетка" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "Општа грешка при активацији без описа" #: ../bonobo/bonobo-moniker.c:342 #, c-format #| msgid "Failed to resolve, or extend '%s" msgid "Failed to resolve, or extend '%s'" msgstr "Не могу да разрешим или проширим „%s“" #: ../bonobo/bonobo-moniker-util.c:247 msgid "Failed to activate object" msgstr "Неуспех активирања објекта" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "Изузеће при активацији „%s“" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "Неуспела активација „%s“" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "HTTP надимак" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "Надимак за руковање са ORB IOR" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "Стандардна творница надимака" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "општи надимак за активацију Oaf-а" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "општи надимак за упит Oaf-а" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "општа творница „new“ надимака" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "општи надимак за ставке" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "MonikerExtender тока" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Бонобо творница Echo сервера" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Пример Бонобо Echo сервер програма" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Echo компонента" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Творница Echo компоненте" #: ../samples/echo/echo-client.c:24 msgid "I could not initialize Bonobo" msgstr "Не могу да покренем Бонобо" #: ../samples/echo/echo-client.c:35 msgid "Could not create an instance of the sample echo component" msgstr "Неуспех стварања примерка пробне echo компоненте" #: ../samples/echo/echo-client.c:47 #, c-format msgid "An exception occurred '%s'" msgstr "Догодио се изузетак „%s“" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Could not save configuration file.\n" msgstr "Нисам могао да сачувам датотеку са подешавањима.\n" #: ../utils/bonobo-activation-sysconf.c:84 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "Проверите да ли имате овлашћења да пишете у „%s“.\n" #: ../utils/bonobo-activation-sysconf.c:87 #, c-format msgid "Successfully wrote configuration file.\n" msgstr "Успешно записана датотека са подешавањима.\n" #: ../utils/bonobo-activation-sysconf.c:104 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "датотека са подешавањима је:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:146 #, c-format msgid "%s already in configuration file\n" msgstr "%s већ постоји у датотеци са подешавањима\n" #: ../utils/bonobo-activation-sysconf.c:166 #, c-format msgid "there is not a properly structured configuration file\n" msgstr "нема исправно структуиране датотеке са подешавањима\n" #: ../utils/bonobo-activation-sysconf.c:237 #, c-format msgid "Bonobo-activation configuration file contains:\n" msgstr "Датотека са подешавањима за бонобо-активацију садржи:\n" #: ../utils/bonobo-activation-sysconf.c:267 msgid "Directory to remove from configuration file" msgstr "Директоријум који треба уклонити из датотеке са подешавањима" #: ../utils/bonobo-activation-sysconf.c:267 #: ../utils/bonobo-activation-sysconf.c:269 msgid "PATH" msgstr "ПУТАЊА" #: ../utils/bonobo-activation-sysconf.c:269 msgid "Directory to add to configuration file" msgstr "Директоријум који треба додати у датотеку са подешавањима" #: ../utils/bonobo-activation-sysconf.c:271 msgid "Display directories in configuration file" msgstr "Прикажи директоријуме у датотеци са подешавањима" #: ../utils/bonobo-activation-sysconf.c:273 msgid "Display path to configuration file" msgstr "Прикажи путању до датотеке са подешавањима" #~ msgid "Could not initialize Bonobo" #~ msgstr "Бонобо није могао бити покренут" #~ msgid "" #~ "Register as the users' activation server without locking [!] for debugging" #~ msgstr "" #~ "Регистрован као кориснички сервер за активирање без закључавања [!] за " #~ "отклањање грешака" #~ msgid "Bonobo Activation" #~ msgstr "Бонобо покретање" # „Race“ је појава када два процеса покушају истовремено да користе један ресурс, с тим што један процес држи оно што је потребно да би други наставио — односно, ниједан не може да настави #~ msgid "Race condition activating server '%s'" #~ msgstr "Утркивање при активирању сервера „%s“" #~ msgid "directory path" #~ msgstr "путања директоријума" #~ msgid "Child received signal %u (%s)" #~ msgstr "Подпроцес је примио сигнал %u (%s)" #~ msgid "Unknown non-exit error (status is %u)" #~ msgstr "Непозната не-излазна грешка (status is %u)" #~ msgid "bonobo-activation failed to set process group of %s: %s\n" #~ msgstr "бонобо активација није успела да постави групу процеса %s: %s\n" #~ msgid "Failed to execute %s: %d (%s)\n" #~ msgstr "Нисам успео да извршим %s: %d (%s)\n" #~ msgid "Too many alias levels for a locale, may indicate a loop" #~ msgstr "Превише нивоа надимака за локалитет — може указивати на петљу" libbonobo-2.32.1/po/tr.po0000644000076400007640000004224311173072711012105 00000000000000# Turkish translation of libbonobo. # Copyright (C) 2001-2003 Free Software Foundation, Inc. # Ömer Fadıl USTA , 2001. # Nilgün Belma Bugüner , 2001. # Fatih Demir , 2001. # Arman Aksoy , 2003. # # msgid "" msgstr "" "Project-Id-Version: libbonobo\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-04-08 14:58+0300\n" "PO-Revision-Date: 2006-05-30 04:41+0300\n" "Last-Translator: Baris Cicek \n" "Language-Team: Turkish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../activation-server/activation-context-corba.c:525 msgid "Couldn't find which child the server was listed in" msgstr "Sunucuyu listeleyen alt süreç bulunamadı" #: ../activation-server/activation-context-corba.c:817 msgid "Not a valid Activation ID" msgstr "Hatalı aktivasyon tanımlayıcısı" #: ../activation-server/activation-server-main.c:162 msgid "Directory to read .server files from" msgstr ".server dosyalarının okunacağı dizin" #: ../activation-server/activation-server-main.c:162 msgid "DIRECTORY" msgstr "DİZİN" #: ../activation-server/activation-server-main.c:165 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "" "Bir EtkinlikBağlamı olarak sunuluyor (sadece bir NesneDizini olarak " "öntanımlı)" #: ../activation-server/activation-server-main.c:169 msgid "File descriptor to write IOR to" msgstr "IOR'un üzerine yazacağı dosya tanımlayıcı" #: ../activation-server/activation-server-main.c:169 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:172 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "" "Kullanıcının etkinleştirme sunucusunu kilitlemeden kayıt ol. Uyarı: bu " "seçenek kullanıcının çalışan oturumu üzerine tehlikeli yan etkilere sebep " "olabilir ve sadece hata ayıklama amaçlı olarak kullanılmalıdır" #: ../activation-server/activation-server-main.c:180 msgid "Query expression to evaluate" msgstr "Değerlendirilecek sorgu ifadesi" #: ../activation-server/activation-server-main.c:180 msgid "EXPRESSION" msgstr "İFADE" #: ../activation-server/activation-server-main.c:429 #: ../utils/bonobo-activation-sysconf.c:305 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "" "Kullanılabilecek komut satırı seçeneklerinin tam listesini almak için '%s --" "help' çalıştırın.\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "CORBA CosNaming Servisi." #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "Servis Adı" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "Uyarı servisi" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "Etkinleştirme için uyarı servisi" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "Henüz bir uzak süreçteki shlib nesneleri etkinleştirilemiyor" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "Bonobo Aktivasyon yapılandırma dosyası düzgün okunmadı. Lütfen %s için " "geçerliliğini denetleyin." #: ../activation-server/object-directory-load.c:102 msgid "a NULL iid is not valid" msgstr "Boş bir IID geçerli değildir" #: ../activation-server/object-directory-load.c:106 #, c-format msgid "iid %s has a NULL type" msgstr "IID %s bir NULL veri türü içeriyor" #: ../activation-server/object-directory-load.c:110 #, c-format msgid "iid %s has a NULL location" msgstr "IID %s bir NULL konuma sahip" #: ../activation-server/object-directory-load.c:119 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "'%c' karakteri IID '%s' içinde kullanılamaz" #: ../activation-server/object-directory-load.c:349 #, c-format msgid "Property '%s' has no value" msgstr "'%s' özelliğine değer atanmamış" #: ../activation-server/object-directory-load.c:581 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "Hatali biçimlenmiş XML belgesi %s ayrıştırılamadı" #: ../activation-server/object-directory-load.c:627 #, c-format msgid "Trying dir %s" msgstr "%s dizini deneniyor" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "Ast süreç bir hata iletisi vermedi, başarısızlık sebebi bilinmiyor" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "Ast süreçten okuma başarısız: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 msgid "EOF from child process\n" msgstr "Alt süreçten EOF\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:434 msgid "Couldn't spawn a new process" msgstr "Yeni bir süreç ayrılamadı" #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "File descriptor to print IOR on" msgstr "IOR'un üstüne yazdıracağı dosya tanımlayıcı" #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:399 msgid "IID to activate" msgstr "Etkinleştirilecek IID" #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Prevent registering of server with OAF" msgstr "Sunucunun OAF ile kaydedilmesini engeller" #: ../bonobo-activation/bonobo-activation-init.c:409 msgid "Bonobo Activation options:" msgstr "Bonobo Etkinleştirme seçenekleri" #: ../bonobo-activation/bonobo-activation-init.c:410 msgid "Show Bonobo Activation options" msgstr "Bonobo etkinleştirme seçeneklerini göster" #: ../bonobo-activation/bonobo-activation-init.c:518 msgid "Bonobo activation options" msgstr "Bonobo etkinleştirme seçenekleri" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "`%s' için g_module_open işlevi `%s' ile başarısız" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "`%s' içinde Bonobo_Plugin_info sembolü bulunamıyor" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "`%s' `%s' için NIL ile döndü" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Shlib `%s' `%s' içermiyor" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "İsim" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "Uygulamanın özel ismi" #: ../bonobo/bonobo-object.c:926 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:926 msgid "Custom CORBA POA" msgstr "Özel CORBA POA" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "Desteklenmeyen bir eylem gerçekleştirildi" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "IO Hatası" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "Geçersiz parametre girdisi" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "Nesne Bulunamadı" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "Nesne Açıklamasında Kural Hatası" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "Nesne aktifleştirilemiyor" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "Akıma erişim izniniz yok" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "Desteklenmeyen bir akım eylemi gerçekleştirildi" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "Akım sırasında IO hatası" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "Depolama anında IO hatası" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "Depoda bu isimde zaten kayıt var" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "Depoda nesne bulunamadı" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "Depolama anında işlem yürütmeye izniniz yok" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "Desteklenmeyen bir depolama eylemi gerçekleştirildi" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "Nesne bir akım değildir" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "Nesne bir depolama değildir" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "Depolama boş değil" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "XML için kusurlu kullanıcı arayüzü tanımlaması" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "XML kullanıcı arayüzü öğesi için geçersiz yol tanımlaması" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "istenilen UI özelliği yok" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "Bilinmeyen komut veya fiil" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "Duyarsız komut" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "Hatalı veri tipi" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "Akım bulunamadı" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "Özellik bulunamadı" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "Geçersiz özellik tipi" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "Özellik salt okunur" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "Yapılandırma veritabanı başarısızlıkla sonuçlandı" #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "Moniker arayüzü bulunamadı" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "Moniker için aktifleştirme zaman aşımı" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "Moniker için yazım hatası" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "Moniker, bilinmeyen bir moniker sabitine sahip!" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "Hata kontrol hatası; itiraz edilemiyor" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "Tanımlamasız genel aktifleştirme hatası" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s" msgstr "'%s etkinleştirmesi başarısız" #: ../bonobo/bonobo-moniker-util.c:247 msgid "Failed to activate object" msgstr "Nesne etkinleştirme başarısız" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "'%s' etkinleştirmesi kullanılmayacak" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "'%s' etkinleştirmesi başarısız" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "HTTP Moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "Moniker ORB IOR tutuşu" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "Moniker Fabrika standardı" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "Genel Moniker Oaf etkinleştirmesi" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "Genel Moniker Oaf sorgulaması" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "Moniker genel üretim 'yeni'" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "Moniker genel öğesi" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "Moniker Kapsamındaki akım" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Bonobo Echo sunucu üreticisi" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Bonobo Echo sunucu örnek programı" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Echo içeriği" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Echo içerik üreticisi" #: ../samples/echo/echo-client.c:24 msgid "I could not initialize Bonobo" msgstr "Bonobo uygulamasını başlatamıyorum" #: ../samples/echo/echo-client.c:35 msgid "Could not create an instance of the sample echo component" msgstr "Echo içeriğinin bir örneği yaratılamıyor" #: ../samples/echo/echo-client.c:47 #, c-format msgid "An exception occurred '%s'" msgstr "'%s' dışlaması gerçekleşti" #: ../utils/bonobo-activation-sysconf.c:83 msgid "Could not save configuration file.\n" msgstr "Yapılandırma dosyası kaydedilemedi.\n" #: ../utils/bonobo-activation-sysconf.c:84 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "Lütfen '%s' dosyasına yazma izniniz olup olmadığını kontrol edin.\n" #: ../utils/bonobo-activation-sysconf.c:87 msgid "Successfully wrote configuration file.\n" msgstr "Yapılandırma dosyası başarıyla kaydedildi.\n" #: ../utils/bonobo-activation-sysconf.c:104 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "Yapılandırma dosyası:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:146 #, c-format msgid "%s already in configuration file\n" msgstr "%s zaten yapılandırma dosyasında\n" #: ../utils/bonobo-activation-sysconf.c:166 msgid "there is not a properly structured configuration file\n" msgstr "Doğru düzenlenmiş bir yapılandırma dosyası yok\n" #: ../utils/bonobo-activation-sysconf.c:237 msgid "Bonobo-activation configuration file contains:\n" msgstr "Bonobo-etkinleştirme yapılandırma dosyasının içeriği:\n" #: ../utils/bonobo-activation-sysconf.c:267 msgid "Directory to remove from configuration file" msgstr "Yapılandırma dosyasından kaldırılacak dizin" #: ../utils/bonobo-activation-sysconf.c:267 #: ../utils/bonobo-activation-sysconf.c:269 msgid "PATH" msgstr "YOL" #: ../utils/bonobo-activation-sysconf.c:269 msgid "Directory to add to configuration file" msgstr "Yapılandırma dosyasına eklenecek dizin" #: ../utils/bonobo-activation-sysconf.c:271 msgid "Display directories in configuration file" msgstr "Dizinleri yapılandırma dosyasında gösterir" #: ../utils/bonobo-activation-sysconf.c:273 msgid "Display path to configuration file" msgstr "Dosya yolunu yapılandırma dosyasında gösterir" #~ msgid "" #~ "Register as the users' activation server without locking [!] for debugging" #~ msgstr "" #~ "Hata ayıklama için kilitleme olmaksızın [!] kullanıcıların etkinleştirme " #~ "sunucusu olarak kaydol" #~ msgid "Bonobo Activation" #~ msgstr "Bonobo etkinleştirme" #~ msgid "Could not initialize Bonobo" #~ msgstr "Bonobo başlatılamıyor " #~ msgid "Race condition activating server '%s'" #~ msgstr "Sınıflandırma konumu '%s' sunucusu açılıyor" #~ msgid "directory path" #~ msgstr "dizin yolu" #~ msgid "Child received signal %u (%s)" #~ msgstr "Alt süreç %u sinyali aldı (%s)" #~ msgid "Unknown non-exit error (status is %u)" #~ msgstr "Bilinmeyen çıkış engelleme hatası (durum %u)" #~ msgid "bonobo-activation failed to set process group of %s: %s\n" #~ msgstr "Bonobo-etkinleştirme %s süreç grubunu belirleyemedi: %s\n" #~ msgid "Failed to execute %s: %d (%s)\n" #~ msgstr "Çalıştırılamadı: %s: %d (%s)\n" #~ msgid "Too many alias levels for a locale, may indicate a loop" #~ msgstr "Locale için çok fazla takma ad seviyesi, bir döngüye neden olabilir" #~ msgid "No server corresponding to your query" #~ msgstr "Sorgunuzla ilişkilendirilebilecek bir sunucu yok." #~ msgid "Query failed: " #~ msgstr "Sorgulama başarısız: " #~ msgid "Activation failed: " #~ msgstr "Etkinleştirme başarısız: " #~ msgid "Could not parse AID" #~ msgstr "AID çözümlenemedi" #~ msgid "Could not parse context: " #~ msgstr "Bağlam çözümlenemedi: " #~ msgid "Could not activate server: " #~ msgstr "Sunucu etkinleştirilemedi: " #~ msgid "Domain of ObjectDirectory" #~ msgstr "NesneDizini Alanı" #~ msgid "DOMAIN" #~ msgstr "BÖLGE" #~ msgid "Object directory to use when registering servers" #~ msgstr "Sunucuları kaydederken kullanılacak nesne dizini" libbonobo-2.32.1/po/LINGUAS0000664000076400007640000000054111546203545012147 00000000000000# please keep this list sorted alphabetically # am ar as ast az be bg bn bn_IN br bs ca ca@valencia cs cy da de dz el en_CA en_GB en@shaw eo es et eu fa fi fr ga gl gu he hi hr hu hy id is it ja ka kn ko ku li lt lv mai mg mk ml mn mr ms nb ne nl nn oc or pa pl pt pt_BR ro ru rw sk sl sq sr sr@latin sv ta te th tr ug uk vi wa xh yi zh_CN zh_HK zh_TW libbonobo-2.32.1/po/bn_IN.po0000644000076400007640000005316011173072711012445 00000000000000# The Bengali India translation for libbonobo # Copyright (C) 2003 Free Software Foundation . # This file is distributed under the same license as the libbonobo package. # Muhammad Mahmudur Rahman Khan , 2003. # Mahay Alam Khan , 2005. # Samia Niamatullah , 2005. # msgid "" msgstr "" "Project-Id-Version: libbonobo.HEAD\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-01-02 05:40+0000\n" "PO-Revision-Date: 2007-03-05 16:05+0530\n" "Last-Translator: Runa Bhattacharjee \n" "Language-Team: Bengali India\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.9.1\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n\n" #: ../activation-server/activation-context-corba.c:523 msgid "Couldn't find which child the server was listed in" msgstr "সার্ভারের তথ্য ধারণকারী চাইল্ড সনাক্ত করা যায়নি" #: ../activation-server/activation-context-corba.c:815 msgid "Not a valid Activation ID" msgstr "অ্যাক্টিভেশন ID বৈধ নয়" #: ../activation-server/activation-server-main.c:163 msgid "Directory to read .server files from" msgstr ".server ফাইল পড়ার উদ্দেশ্যে চিহ্নিত ডিরেক্টরি" #: ../activation-server/activation-server-main.c:163 msgid "DIRECTORY" msgstr "DIRECTORY" #: ../activation-server/activation-server-main.c:166 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "" "ActivationContext রূপে প্রয়োগ করা হবে (ডিফল্টরূপে শুধুমাত্র ObjectDirectory হিসাবে " "ব্যবহার করা হয়)" #: ../activation-server/activation-server-main.c:170 msgid "File descriptor to write IOR to" msgstr "IOR লেখার উদ্দেশ্যে চিহ্নিত ফাইল ডিস্ক্রিপ্টর" #: ../activation-server/activation-server-main.c:170 #: ../bonobo-activation/bonobo-activation-init.c:355 #: ../bonobo-activation/bonobo-activation-init.c:365 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:173 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "লক বিনা ব্যবহারকারীর সক্রিয়করণ সার্ভার রূপে নিবন্ধন করা হবে। সতর্কবার্তা: এই বিকল্পের ব্যবহারের ফলে ব্যবহারকারীর চলমান সেশানের উপর বিরূপ প্রতিক্রিয়া হওয়ার সম্ভাবনা রয়েছে এবং শুধুমাত্র ডিবাগ করার জন্য এটি প্রয়োগ করা আবশ্যক।" #: ../activation-server/activation-server-main.c:181 msgid "Query expression to evaluate" msgstr "মীমাংসা করার উদ্দেশ্যে কোয়েরি" #: ../activation-server/activation-server-main.c:181 msgid "EXPRESSION" msgstr "মান" #: ../activation-server/activation-server-main.c:430 #: ../utils/bonobo-activation-sysconf.c:304 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "" "কমান্ড-লাইন থেকে ব্যবহারযোগ্য সমস্ত উপলব্ধ বিকল্পের তালিকা দেখতে '%s --help' " "ব্যবহার করুন।\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "CORBA CosNaming পরিসেবা" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "নেম পরিসেবা" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "সূচনাপ্রদানের পরিসেবা" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "সক্রিয়করণের জন্য ব্যবহৃত সূচনাপ্রদানের পরিসেবা" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "দূরবর্তী প্রসেসের ক্ষেত্রে shlib অবজেক্ট সক্রিয়করণ বর্তমানে উপলব্ধ নেই" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "Bonobo সক্রিয়করণের কনফিগারেশন ফাইল সঠিকরূপে পড়া যায়নি। অনুগ্রহ করে পরীক্ষা করুন " "এটি বৈধ কিনা: %s" #: ../activation-server/object-directory-load.c:101 msgid "a NULL iid is not valid" msgstr "NULL iid বৈধ নয়" #: ../activation-server/object-directory-load.c:105 #, c-format msgid "iid %s has a NULL type" msgstr "iid %s NULL প্রকৃতির" #: ../activation-server/object-directory-load.c:109 #, c-format msgid "iid %s has a NULL location" msgstr "iid %s'র ক্ষেত্রে অবস্থান NULL" #: ../activation-server/object-directory-load.c:118 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "অবৈধ অক্ষর '%c', iid '%s'-র মধ্যে অন্তর্ভুক্ত করা হয়েছে" #: ../activation-server/object-directory-load.c:348 #, c-format msgid "Property '%s' has no value" msgstr "'%s' নামক বৈশিষ্ট্যের মান অনুপস্থিত" #: ../activation-server/object-directory-load.c:580 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "ভুলভাবে গঠিত XML নথি %s পার্স করতে ব্যর্থ" #: ../activation-server/object-directory-load.c:627 #, c-format msgid "Trying dir %s" msgstr "dir %s প্রচেষ্টা করা হচ্ছে" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "চাইল্ড প্রসেস থেকে কোনো ত্রুটির বার্তা উৎপন্ন হয়নি, অজানা সমস্যা ঘটেছে" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "চাইল্ড প্রসেস থেকে পড়তে ব্যর্থ: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 msgid "EOF from child process\n" msgstr "চাইল্ড প্রসেস থেকে EOF প্রাপ্ত\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:435 msgid "Couldn't spawn a new process" msgstr "নতুন প্রসেস স্পন করতে ব্যর্থ" #: ../bonobo-activation/bonobo-activation-init.c:355 #: ../bonobo-activation/bonobo-activation-init.c:365 msgid "File descriptor to print IOR on" msgstr "IOR প্রিন্ট করার উদ্দেশ্যে চিহ্নিত ফাইল ডিস্ক্রিপ্টর" #: ../bonobo-activation/bonobo-activation-init.c:357 #: ../bonobo-activation/bonobo-activation-init.c:367 msgid "IID to activate" msgstr "সক্রিয় করার উদ্দেশ্যে IID" #: ../bonobo-activation/bonobo-activation-init.c:359 #: ../bonobo-activation/bonobo-activation-init.c:369 msgid "Prevent registering of server with OAF" msgstr "OAF'র সার্ভার নিবন্ধীকরণ প্রতিরোধ করা হবে" #: ../bonobo-activation/bonobo-activation-init.c:403 msgid "Bonobo Activation options:" msgstr "Bonobo সক্রিয়করণ সংক্রান্ত বিকল্প:" #: ../bonobo-activation/bonobo-activation-init.c:404 msgid "Show Bonobo Activation options" msgstr "Bonobo সক্রিয়করণ সংক্রান্ত বিকল্প প্রদর্শন করা হবে" #: ../bonobo-activation/bonobo-activation-init.c:512 msgid "Bonobo activation options" msgstr "Bonobo সক্রিয়করণ সংক্রান্ত বিকল্প" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "`%s'-র g_module_open `%s' সহ ব্যর্থ" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "`%s'-র মধ্যে Bonobo_Plugin_info চিহ্ন পাওয়া যায়নি" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "`%s' ফ্যাক্টরির দ্বারা `%s'-র ক্ষেত্রে NIL মান প্রস্তুত করা হয়েছে" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Shlib `%s'-র মধ্যে `%s' উপস্থিত নেই" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "নাম" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "অ্যাপ্লিকেশনের জন্য নির্ধারিত স্বতন্ত্র নাম" #: ../bonobo/bonobo-object.c:923 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:923 msgid "Custom CORBA POA" msgstr "কাস্টম CORBA POA" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "অসমর্থিত কর্ম সঞ্চানলের প্রচেষ্টা" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "IO সংক্রান্ত সমস্যা" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "আর্গুমেন্টের মান বৈধ নয়" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "অবজেক্ট পাওয়া যায়নি" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "অবজেক্টের বর্ণনায় সিন্টেক্স জড়িত সমস্যা" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "ফ্যাক্টরি থেকে অবজেক্ট সক্রিয় করতে ব্যর্থ" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "স্ট্রিম ব্যবহারের অনুমোদন নেই" # msgstr "স্ট্রীম (stream) ব্যবহারের অনুমতি নেই" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "স্ট্রিম-জড়িত অসমর্থিত কর্ম সঞ্চালনের প্রচেষ্টা করা হয়েছে" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "স্ট্রিমের ক্ষেত্রে IO সংক্রান্ত সমস্যা" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "সংগ্রহস্থলের ক্ষেত্রে IO সংক্রান্ত সমস্যা" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "সংগ্রহস্থলের মধ্যে নাম বর্তমানে উপস্থিত" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "সংগ্রহস্থলের মধ্যে অবজেক্ট পাওয়া যায়নি" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "সংগ্রহস্থলের মধ্যে কর্ম সঞ্চালনের অনুমতি অনুপস্থিত" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "সংগ্রহস্থলের ক্ষেত্র অসমর্থিত কর্ম সঞ্চালনের প্রচেষ্টা করা হয়েছে" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "চিহ্নিত অবজেক্ট স্ট্রিম নয়" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "চিহ্নিত অবজেক্ট সংগ্রহস্থল নয়" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "সংগ্রহস্থল ফাঁকা নয়" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "XML ইউজার ইন্টারফেসের বিবরণ ভুলভাবে গঠিত" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "XML ইউজার ইন্টারফেসের বস্তুর পাথ ভুল" # # এক্স.এম.এল -- should be consistent #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "অনুরোধ করা UI বৈশিষ্ট্য বর্তমানে অনুপস্থিত" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "অজানা কমান্ড অথবা ক্রিয়া" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "কমান্ড সংবেদনশীল নয়" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "তথ্যের ধরন সঠিক নয়" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "স্ট্রিম পাওয়া যায়নি" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "বৈশিষ্ট্য পাওয়া যায়নি" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "বৈশিষ্ট্যের ধরন অবৈধ" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "শুধুমাত্র পাঠ-যোগ্য বৈশিষ্ট্য" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "কনফিগ ডাটাবেসের ব্যাক-এন্ড বিফল" #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "Moniker প্রেক্ষাপট পাওয়া যায়নি" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "Moniker সক্রিয়করণের সময়সীমা অতিক্রান্ত" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "moniker'র মধ্যে সিন্টেক্স জড়িত ত্রুটি" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "Moniker'র মধ্যে অজানা moniker প্রেফিক্স" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "ত্রুটি পরীক্ষণে সমস্যা; কোনো এক্সেপশন উৎপন্ন হয়নি" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "বর্ণনাবিনা সক্রিয়করণ সংক্রান্ত সাধারণ ত্রুটি" #: ../bonobo/bonobo-generic-factory.h:79 ../bonobo/bonobo-generic-factory.h:83 msgid "Could not initialize Bonobo" msgstr "Bonobo আরম্ভ করতে ব্যর্থ" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s" msgstr "'%s মীমাংসা অথবা প্রসারিত করতে ব্যর্থ" #: ../bonobo/bonobo-moniker-util.c:246 msgid "Failed to activate object" msgstr "অবজেক্ট সক্রিয় করতে ব্যর্থ" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "'%s' সক্রিয় করতে ব্যর্থ" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "'%s' সক্রিয় করতে ব্যর্থ" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "HTTP Moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "ORB IOR ব্যবস্থাকারী moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "প্রমিত Moniker ফ্যাক্টরি" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "সাধারণ Oaf সক্রিয়কারী moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "সাধারণ Oaf অনুসন্ধানকারী moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "সাধারণ ফ্যাক্টরির 'নতুন' moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "সাধারণ বস্তুর moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "MonikerExtender স্ট্রিম করা হবে" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Bonobo Echo সার্ভার ফ্যাক্টরি" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Bonobo Echo সার্ভারের নমুনা প্রোগ্রাম" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Echo'র বস্তু" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Echo বস্তুর ফ্যাক্টরি" #: ../samples/echo/echo-client.c:22 msgid "I could not initialize Bonobo" msgstr "Bonobo আরম্ভ করতে ব্যর্থ" #: ../samples/echo/echo-client.c:33 msgid "Could not create an instance of the sample echo component" msgstr "echo বস্তুর নমুনার ইনস্ট্যান্স নির্মাণে ব্যর্থ" #: ../samples/echo/echo-client.c:45 #, c-format msgid "An exception occurred '%s'" msgstr "'%s'-এ এক্সেপশন উৎপন্ন হয়েছে" #: ../utils/bonobo-activation-sysconf.c:82 msgid "Could not save configuration file.\n" msgstr "কনফিগারেশন ফাইল সংরক্ষণ করতে ব্যর্থ।\n" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "অনুগ্রহ করে নিশ্চিত করুন '%s'-এ মধ্যে জন্য আপনার পর্যাপ্ত অনুমতি রয়েছে কিনা।\n" #: ../utils/bonobo-activation-sysconf.c:86 msgid "Successfully wrote configuration file.\n" msgstr "কনফিগারেশন ফাইল সাফল্যের সাথে লেখা হয়েছে।\n" #: ../utils/bonobo-activation-sysconf.c:103 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "কনফিগারেশন ফাইল হল:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:145 #, c-format msgid "%s already in configuration file\n" msgstr "%s বর্তমানে কনফিগারেশন ফাইলে অন্তর্ভুক্ত রয়েছে\n" #: ../utils/bonobo-activation-sysconf.c:165 msgid "there is not a properly structured configuration file\n" msgstr "সঠিকরূপে গঠিত কনফিগারেশন ফাইল উপস্থিত নেই\n" #: ../utils/bonobo-activation-sysconf.c:236 msgid "Bonobo-activation configuration file contains:\n" msgstr "Bonobo-activation কনফিগারেশন ফাইলের মধ্যে রয়েছে:\n" #: ../utils/bonobo-activation-sysconf.c:266 msgid "Directory to remove from configuration file" msgstr "কনফিগারেশন ফাইল থেকে অপসারণের জন্য চিহ্নিত ডিরেক্টরি" #: ../utils/bonobo-activation-sysconf.c:266 #: ../utils/bonobo-activation-sysconf.c:268 msgid "PATH" msgstr "PATH" #: ../utils/bonobo-activation-sysconf.c:268 msgid "Directory to add to configuration file" msgstr "কনফিগারেশন ফাইলে যোগ করার উদ্দেশ্যে চিহ্নিত ডিরেক্টরি" #: ../utils/bonobo-activation-sysconf.c:270 msgid "Display directories in configuration file" msgstr "কনফিগারেশন ফাইলের মধ্যে ডিরেক্টরি প্রদর্শন করা হবে" #: ../utils/bonobo-activation-sysconf.c:272 msgid "Display path to configuration file" msgstr "কনফিগারেশন ফাইলের পাথ প্রদর্শন করা হবে" libbonobo-2.32.1/po/li.po0000644000076400007640000003730611173072711012070 00000000000000# Limburgish translation of libbonobo. # Limburgse euverzètting van libbonobo # Copyright (C) 2003 Free Software Foundation, Inc. # Mathieu van Woerkom , 2003. # msgid "" msgstr "" "Project-Id-Version: libbonobo 1.110.0\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2006-10-22 16:55+0200\n" "PO-Revision-Date: 2003-06-05 10:21+0100\n" "Last-Translator: Mathieu van Woerkom \n" "Language-Team: Limburgish\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../activation-server/activation-context-corba.c:523 msgid "Couldn't find which child the server was listed in" msgstr "Kós neet vènje in welke dochter de server geneump woor" #: ../activation-server/activation-context-corba.c:815 msgid "Not a valid Activation ID" msgstr "Gein geljige Activation-ID" #: ../activation-server/activation-server-main.c:162 msgid "Directory to read .server files from" msgstr "Map veur .server besjtenj oet te laeze" #: ../activation-server/activation-server-main.c:162 msgid "DIRECTORY" msgstr "DIRECTORY" #: ../activation-server/activation-server-main.c:165 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "" "Doog deens es ein ActivationContext (sjtanderdwaerd is allein es " "ObjectDirectory)" #: ../activation-server/activation-server-main.c:169 msgid "File descriptor to write IOR to" msgstr "File descriptor veur IOR nao te sjrieve" #: ../activation-server/activation-server-main.c:169 #: ../bonobo-activation/bonobo-activation-init.c:355 #: ../bonobo-activation/bonobo-activation-init.c:365 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:172 msgid "" "Register as the users' activation server without locking [!] for debugging" msgstr "" #: ../activation-server/activation-server-main.c:177 msgid "Query expression to evaluate" msgstr "Te evaluere query-ekspressie" #: ../activation-server/activation-server-main.c:177 msgid "EXPRESSION" msgstr "EKSPRESSIE" #: ../activation-server/activation-server-main.c:426 #: ../utils/bonobo-activation-sysconf.c:304 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "CORBA CosNaming service" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "Naam deens" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 #, fuzzy msgid "Notification service" msgstr "Naam deens" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "" "Veer sjtiepe 't aktivere van bibeleteekobjekte in ein anger proses nog neet" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "'t Bonobo Activation kóngfiggerasiebesjtandj kós neet waere ingelaeze. " "konterleer of 't bekweem is in: %s" #: ../activation-server/object-directory-load.c:101 msgid "a NULL iid is not valid" msgstr "ein NULL-iid is óngeljig" #: ../activation-server/object-directory-load.c:105 #, c-format msgid "iid %s has a NULL type" msgstr "iid %s haet ein NULL-tiep" #: ../activation-server/object-directory-load.c:109 #, c-format msgid "iid %s has a NULL location" msgstr "iid %s haet ein NULL lokasie" #: ../activation-server/object-directory-load.c:118 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "óngeljig teike '%c' in iid '%s'" #: ../activation-server/object-directory-load.c:348 #, c-format msgid "Property '%s' has no value" msgstr "Eigesjap '%s' haet gein waerd" #: ../activation-server/object-directory-load.c:580 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "" #: ../activation-server/object-directory-load.c:627 #, c-format msgid "Trying dir %s" msgstr "" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "Dochterproses goof gein faelermeljing, 't goof eine ónbekènde faeler" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "Laeze van dochterproses mislök: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, fuzzy msgid "EOF from child process\n" msgstr "Laeze van dochterproses mislök: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:435 #, fuzzy msgid "Couldn't spawn a new process" msgstr "Kós gein nuuj proses aafsjplitse" # File descriptor om de afkorting duidelijk te laten. Normale gebruikers weten waarschijnlijk neet wat ein besjtandjsbeschrijver is. #: ../bonobo-activation/bonobo-activation-init.c:355 #: ../bonobo-activation/bonobo-activation-init.c:365 msgid "File descriptor to print IOR on" msgstr "File descriptor veur aafdrökke van de IOR" #: ../bonobo-activation/bonobo-activation-init.c:357 #: ../bonobo-activation/bonobo-activation-init.c:367 msgid "IID to activate" msgstr "Te aktivere IID" #: ../bonobo-activation/bonobo-activation-init.c:359 #: ../bonobo-activation/bonobo-activation-init.c:369 msgid "Prevent registering of server with OAF" msgstr "Pareer 't registrere van de server mit OAF" #: ../bonobo-activation/bonobo-activation-init.c:403 #, fuzzy msgid "Bonobo Activation" msgstr "Bonobo-activation opsies" #: ../bonobo-activation/bonobo-activation-init.c:404 #, fuzzy msgid "Show Bonobo Activation options" msgstr "Bonobo-activation opsies" #: ../bonobo-activation/bonobo-activation-init.c:512 msgid "Bonobo activation options" msgstr "Bonobo-activation opsies" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "g_module_open van '%s' mislök: '%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "Kèn symbool 'Bonobo_Plugin_info' neet vènje in '%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "Febrik '%s' goof NIL trök veur '%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Bibeleteek '%s' hauw gein '%s'" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "" #: ../bonobo/bonobo-object.c:923 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:923 msgid "Custom CORBA POA" msgstr "Eige CORBA POA" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "Ein neet gesjtiepde aksie woor geprobeerd" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "IO-faeler" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "Óngeljige argumentwaerd" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "Objek neet gevónje" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "Syntaksfaeler in objekbesjrieving" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "Kèn objek oet febrik neet aktivere" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "Geine toegank tót stream" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "Ein neet gesjtiepde stream aksie woor geprobeerd" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "IO-faeler in stream" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "IO-faeler in storage" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "Naam besjteit al in storage" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "Objek neet in storage gevónje" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "Geine toegank veur operasies in storage te verrichte" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "Ein neet gesjtiepde storage aksie woor geprobeerd" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "Objek is gein stream" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "Objek is gein storage" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "Storage is neet laeg" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "inkorrekde XML gebroekersinterface-ómsjrieving" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "óngeljig paad nao XML gebroekersinterface-elemènt" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "'t gevraogde gebroekersinterface-attribuut besjteit neet" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "Ónbekènde opdrach of ónbekènd wirkwaord" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "De opdrach is neet óntvankelik" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "inkorrek datatiep" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "stream neet gevónje" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "eigesjap is neet gevónje" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "eigesjap is van ein ongeljig tiep" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "eigesjap kèn allein gelaeze waere" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "faeler bie de kóngfiggerasiedatabase backend" #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "Kèn moniker interface neet vènje" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "Aktivere van moniker mislök" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "Syntaktische faeler in moniker" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "Moniker haet ein ónbekènde monikerprefix" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "Faeler bie 't naozeen van faeler; gein oetzunjering" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "Algemeine aktiveringsfaeler zónger ómsjrieving" #: ../bonobo/bonobo-generic-factory.h:79 ../bonobo/bonobo-generic-factory.h:83 msgid "Could not initialize Bonobo" msgstr "Bonobo kós neet geïnisialiseerd waere" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s" msgstr "'%s kós neet gevónje waere of 't oetbreije hievan is mislök" #: ../bonobo/bonobo-moniker-util.c:246 msgid "Failed to activate object" msgstr "Kèn objek neet aktivere" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "Oetzunjering bie aktivere '%s'" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "'t aktivere van '%s' is mislök" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "HTTP Moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "ORB IOR verwirkende moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "Sjtanderd Moniker factory" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "generieke OAF aktiveringsmoniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "generieke OAF query moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "generieke febrik 'nuuj' moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "generieke itemmoniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "stream MonikerExtender" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Bonobo Echo-server febrik" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Bonobo Echo-server veurbildprogram" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Echo komponènt" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Echo komponènt febrik" #: ../samples/echo/echo-client.c:22 msgid "I could not initialize Bonobo" msgstr "Bonobo kós neet geïnisialiseerd waere" #: ../samples/echo/echo-client.c:33 msgid "Could not create an instance of the sample echo component" msgstr "Gein realisasie van 't veurbild 'echo' komponènt kós waere aangemaak" #: ../samples/echo/echo-client.c:45 #, c-format msgid "An exception occurred '%s'" msgstr "Ein oetzunjering is opgetraoje '%s'" #: ../utils/bonobo-activation-sysconf.c:82 msgid "Could not save configuration file.\n" msgstr "Opsjlaon OAF-kóngfiggerasiebesjtandj is mislök.\n" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "Konterleer de sjriefrechte veur '%s'.\n" #: ../utils/bonobo-activation-sysconf.c:86 msgid "Successfully wrote configuration file.\n" msgstr "Opsjlaon OAF-kóngfiggerasiebesjtandj is gesjlaag.\n" #: ../utils/bonobo-activation-sysconf.c:103 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "kóngfiggerasiebesjtandj is:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:145 #, c-format msgid "%s already in configuration file\n" msgstr "%s is al in 't OAF-kóngfiggerasiebesjtandj\n" #: ../utils/bonobo-activation-sysconf.c:165 msgid "there is not a properly structured configuration file\n" msgstr "'t geuf gein korrek gestruktureerd kóngfiggerasiebesjtandj\n" #: ../utils/bonobo-activation-sysconf.c:236 msgid "Bonobo-activation configuration file contains:\n" msgstr "Bonobo-activation kóngfiggerasiebesjtandj haet:\n" #: ../utils/bonobo-activation-sysconf.c:266 msgid "Directory to remove from configuration file" msgstr "Map veur oet 't kóngfiggerasiebesjtandj eweg te doon" #: ../utils/bonobo-activation-sysconf.c:266 #: ../utils/bonobo-activation-sysconf.c:268 msgid "PATH" msgstr "" #: ../utils/bonobo-activation-sysconf.c:268 msgid "Directory to add to configuration file" msgstr "Map veur toe te veuge aan 't kóngfiggerasiebesjtandj" #: ../utils/bonobo-activation-sysconf.c:270 msgid "Display directories in configuration file" msgstr "Mappe tuine in 't kóngfiggerasiebesjtandj" #: ../utils/bonobo-activation-sysconf.c:272 msgid "Display path to configuration file" msgstr "Paad tuine nao 't kóngfiggerasiebesjtandj" #~ msgid "Race condition activating server '%s'" #~ msgstr "Race-condisie bie aktivere van server '%s'" #~ msgid "Child received signal %u (%s)" #~ msgstr "Dochter óntvóng sinjaal %u (%s)" #~ msgid "Unknown non-exit error (status is %u)" #~ msgstr "Ónbekènde, non-exit gerelateerde, faeler (sjtatus is %u)" #~ msgid "bonobo-activation failed to set process group of %s: %s\n" #~ msgstr "bonobo-activation kós de prosesgróp van %s neet insjtèlle: %s\n" #~ msgid "Failed to execute %s: %d (%s)\n" #~ msgstr "Oetveure van %s mislök: %d (%s)\n" #~ msgid "Too many alias levels for a locale, may indicate a loop" #~ msgstr "Teväöl alias-nivoos veur ein locale, geuf mäögelik eine trens aan" #~ msgid "directory path" #~ msgstr "Map-paad" libbonobo-2.32.1/po/mg.po0000644000076400007640000003713111173072711012063 00000000000000# MALAGASY TRANSLATION OF LIBBONOBO. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # Thierry Randrianiriana , YEAR. msgid "" msgstr "" "Project-Id-Version: LIBBONOBO VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2006-12-20 07:54+0100\n" "PO-Revision-Date: 2007-01-21 18:28+0300\n" "Last-Translator: Fanomezana Rajaonarisoa \n" "Language-Team: MALAGASY \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../activation-server/activation-context-corba.c:523 msgid "Couldn't find which child the server was listed in" msgstr "Tsy hita ny zanaka nasiana ilay mpizara" #: ../activation-server/activation-context-corba.c:815 msgid "Not a valid Activation ID" msgstr "ID fandefasana diso" #: ../activation-server/activation-server-main.c:162 msgid "Directory to read .server files from" msgstr "Ny lahatahiry hamakiana ny rakitra .server" #: ../activation-server/activation-server-main.c:162 msgid "DIRECTORY" msgstr "LAHATAHIRY" #: ../activation-server/activation-server-main.c:165 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "Fatao ActivationContext (raha lasitra, ObjectDirectory ihany)" #: ../activation-server/activation-server-main.c:169 msgid "File descriptor to write IOR to" msgstr "Ny mpanoritra rakitra anoratana IOR" #: ../activation-server/activation-server-main.c:169 #: ../bonobo-activation/bonobo-activation-init.c:355 #: ../bonobo-activation/bonobo-activation-init.c:365 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:172 #, fuzzy msgid "Register as the users' activation server without locking [!] for debugging" msgstr "Manao fanambarana fa mpizara fandefasana nefa tsy mangeja ny [!] amin'ny debugging" #: ../activation-server/activation-server-main.c:177 msgid "Query expression to evaluate" msgstr "Filazana fangatahana holanjalanjaina" #: ../activation-server/activation-server-main.c:177 msgid "EXPRESSION" msgstr "FILAZANA" #: ../activation-server/activation-server-main.c:426 #: ../utils/bonobo-activation-sysconf.c:304 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "Alefaso ny '%s --help' ahitana ny safidy rehetra misy momba ny lazam-baiko.\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "Sampan'asa CORBA CosNaming." #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "Sampan'asa momba ny anarana" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "Sampan'asa momba ny fampahafantarana" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "Sampan'asa momba ny fampahafantarana ho an'ny fandefasana" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "Tsy mbola raisinay an-tànana ny fandefasana zavatra shlib anaty fizotra lavi-toerana" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "The Bonobo Activation configuration file was not read successfully. Please, check it is valid in: %s" msgstr "Tsy voavaky tsara ny raki-kirakiran'ny Fandefasana ny Bonobo. Jereo ao amin'ity raha ara-dalàna ilay izy: %s" #: ../activation-server/object-directory-load.c:101 msgid "a NULL iid is not valid" msgstr "Tsy mitombina ny iid NULL" #: ../activation-server/object-directory-load.c:105 #, c-format msgid "iid %s has a NULL type" msgstr "NULL ny karazan'ny iid %s" #: ../activation-server/object-directory-load.c:109 #, c-format msgid "iid %s has a NULL location" msgstr "NULL ny toeran'ny iid %s" #: ../activation-server/object-directory-load.c:118 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "Misy marika tsy mitombina '%c' ao amin'ny iid '%s'" #: ../activation-server/object-directory-load.c:348 #, c-format msgid "Property '%s' has no value" msgstr "Tsy manana sanda ny toetoetra '%s'" #: ../activation-server/object-directory-load.c:580 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "Tsy voazarazara ny tahirin-kevitra XML ratsy voatra %s" #: ../activation-server/object-directory-load.c:627 #, c-format msgid "Trying dir %s" msgstr "Manandrana ny lahatahiry %s" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "Tsy nandefa filazana tsy fetezana ny fizotra zanaka. Nisy olana tsy fantatra nitranga" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "Tsy nahavaky ny mpiatin'ny fizotra zanaka: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 msgid "EOF from child process\n" msgstr "EOF avy amin'ny fizotra zanaka\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:435 msgid "Couldn't spawn a new process" msgstr "Tsy nahaforona fizotra vaovao" #: ../bonobo-activation/bonobo-activation-init.c:355 #: ../bonobo-activation/bonobo-activation-init.c:365 msgid "File descriptor to print IOR on" msgstr "Mpanori-drakitra anontana ny IOR" #: ../bonobo-activation/bonobo-activation-init.c:357 #: ../bonobo-activation/bonobo-activation-init.c:367 msgid "IID to activate" msgstr "Ny IID halefa" #: ../bonobo-activation/bonobo-activation-init.c:359 #: ../bonobo-activation/bonobo-activation-init.c:369 msgid "Prevent registering of server with OAF" msgstr "Manakana ny fanambaranany mpizara amin'ny alalan'ny OAF" #: ../bonobo-activation/bonobo-activation-init.c:403 msgid "Bonobo Activation" msgstr "Fandefasana ny Bonobo" #: ../bonobo-activation/bonobo-activation-init.c:404 msgid "Show Bonobo Activation options" msgstr "Asehoy ny safidy momba ny fandefasana ny Bonobo" #: ../bonobo-activation/bonobo-activation-init.c:512 msgid "Bonobo activation options" msgstr "Safidy momba ny fandefasana ny Bonobo" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "Tsy nahomby ny g_module_open an'ny `%s' tamin'ny `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "Tsy hita ao anatin'ny `%s' ny sariohatra Bonobo_Plugin_info" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "NIL no naverin'ny toerana fanamboarana '%s' momba ny '%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Ny shlib `%s' tsy nahitana `%s'" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "Anarana" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "Ny hany anaran'ilay rindranasa" #: ../bonobo/bonobo-object.c:923 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:923 msgid "Custom CORBA POA" msgstr "CORBA POA safidy" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "Nisy nanandrana nanao asa tsy raisina an-tànana" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "Tsy fetezana IO" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "Sandan-tondriky diso" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "Tsy hita ilay zavatra" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "Misy hadisoan-drariteny anatin'ny soritsoritr'ilay zavatra" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "Tsy mety alefa avy any amin'ny toerana fanamboarana ilay zavatra" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "Tsy misy fahazoan-dàlana hampiasa ilay tosaka" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "Nisy nanandrana nanao asan-tosaka tsy raisina an-tànana" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "Tsy fetezana IO amin'ilay tosaka" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "Tsy fetezana IO amin'ilay fitahirizana" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "Efa misy anatin'ilay fitahirizana io anarana io" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "Tsy hita ao anatin'ilay fitahirizana ilay zavatra" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "Tsy misy fahazoan-dàlana ahafahana miasa amin'ilay fitahirizana" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "Nisy nanandrana nanao asa tsy raisina an-tànana tamin'ilay fitahirizana" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "Tsy tosaka ilay zavatra" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "Tsy fitahirizana ilay zavatra" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "Tsy foana ilay fitahirizana" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "soritsoritra mpaneram-mpampiasa XML ratsy voatra" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "Diso ny sori-dàlana mankany amin'ny singantaharon'ny mpaneram-mpampiasa XML" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "Tsy nisy ny marika manokana UI nangatahana" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "Baiko na matoanteny tsy fantatra" #: ../bonobo/bonobo-exception.c:222 #, fuzzy msgid "Command is insensitive" msgstr "Tsy mamaly ilay baiko" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "karazan-daza diso" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "tsy hita ilay tosaka" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "Tsy hita ilay toetoetra" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "diso ny karazan'ilay toetoetra" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "vakiana-fotsiny ilay toetoetra" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "tsy nahomby ny backendn'ny soratra fototry ny fikirakirana" #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "Tsy mety hita ny mpanera anarana" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "Fe-potoana fandefasana anarana" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "Misy rariteny diso amin'ilay anarana" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "Tsy fantatra ny tovon'ilay anarana" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "Nisy olana teo am-pijerena ilay tsy fetezana; tsy misy avaka" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "Tsy fetezam-pandefasana ankapobeny tsy misy fanoritsoritana" #: ../bonobo/bonobo-generic-factory.h:79 #: ../bonobo/bonobo-generic-factory.h:83 msgid "Could not initialize Bonobo" msgstr "Tsy voatomboka ny Bonobo" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s" msgstr "Tsy voavadika na voavelatra ny '%s'" #: ../bonobo/bonobo-moniker-util.c:246 msgid "Failed to activate object" msgstr "Tsy nahavita nandefa ilay zavatra" #: ../monikers/bonobo-moniker-oaf.c:53 #, fuzzy, c-format msgid "Exception activating '%s'" msgstr "Nisy avaka teo am-pandefasana ny '%s'" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "Tsy nahavita nandefa ny '%s'" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "Anarana HTTP" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "ORB IOR mifehy ilay anarana" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "Toerana fanamboarana anarana tsotra" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "anarana fandefasana Oaf iraisana" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "anarana fanontaniana Oaf iraisana" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "anarana 'vaovao' iraisana avy any amin'ny toerana fanamboarana" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "anaran-tsinga iraisana" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "MonikerExtender an'ny tosaka" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Toerana fanamboarana ny mpizaran'ny Bonobo Echo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Santionan-drindranasan'ny mpizaran'ny Bonobo Echo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Singan'ny Echo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Toerana fanamboarana ny singan'ny Echo" #: ../samples/echo/echo-client.c:22 msgid "I could not initialize Bonobo" msgstr "Tsy afaka nanomboka ny Bonobo aho" #: ../samples/echo/echo-client.c:33 msgid "Could not create an instance of the sample echo component" msgstr "Tsy nahavita namorona santionan-tsingan'ako iray" #: ../samples/echo/echo-client.c:45 #, c-format msgid "An exception occurred '%s'" msgstr "Nisy avaka nitranga '%s'" #: ../utils/bonobo-activation-sysconf.c:82 msgid "Could not save configuration file.\n" msgstr "Tsy voaraikitra ilay raki-kirakira.\n" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "Amarino tsara hoe manana alalana hanoratra amin'ny '%s' ianao.\n" #: ../utils/bonobo-activation-sysconf.c:86 msgid "Successfully wrote configuration file.\n" msgstr "Nahomby ny fanoratana tamin'ilay raki-kirakira.\n" #: ../utils/bonobo-activation-sysconf.c:103 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "Ilay raki-kirakira:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:145 #, c-format msgid "%s already in configuration file\n" msgstr "Efa ao anatin'ilay raki-kirakira ny %s\n" #: ../utils/bonobo-activation-sysconf.c:165 msgid "there is not a properly structured configuration file\n" msgstr "tsy misy raki-kirakira voarafitra araka ny tokony ho izy ao\n" #: ../utils/bonobo-activation-sysconf.c:236 msgid "Bonobo-activation configuration file contains:\n" msgstr "Ny kirakiran'ny fandefasana ny Bonobo dia misy:\n" #: ../utils/bonobo-activation-sysconf.c:266 msgid "Directory to remove from configuration file" msgstr "Ny lahatahiry fafàna tanatin'ilay raki-kirakira" #: ../utils/bonobo-activation-sysconf.c:266 #: ../utils/bonobo-activation-sysconf.c:268 msgid "PATH" msgstr "SORI-DALANA" #: ../utils/bonobo-activation-sysconf.c:268 msgid "Directory to add to configuration file" msgstr "Ny lahatahiry ampidirina ao anatin'ilay raki-kirakira" #: ../utils/bonobo-activation-sysconf.c:270 msgid "Display directories in configuration file" msgstr "Asehoy anatin'ilay raki-kirakira ny lahatahiry" #: ../utils/bonobo-activation-sysconf.c:272 msgid "Display path to configuration file" msgstr "Asehoy ao anatin'ilay raki-kirakira ny sori-dàlana" libbonobo-2.32.1/po/pt_BR.po0000644000076400007640000004172611377016710012476 00000000000000# Brazilian Portuguese translation of libbonobo. # Copyright (C) 2000-2006 Free Software Foundation, Inc. # This file is distributed under the same license as the libbonobo package. # Gustavo Maciel Dias Vieira , 2000. # Evandro Fernandes Giovanini , 2002, 2004, 2005. # Leonardo Ferreira Fontenelle , 2006. # msgid "" msgstr "" "Project-Id-Version: libbonobo\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2010-05-17 10:07-0300\n" "PO-Revision-Date: 2010-05-16 12:07-0300\n" "Last-Translator: Vladimir Melo \n" "Language-Team: Brazilian Portuguese \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../activation-server/activation-context-corba.c:530 msgid "Couldn't find which child the server was listed in" msgstr "Não foi possivel descobrir em qual filho o servidor estava listado" #: ../activation-server/activation-context-corba.c:822 msgid "Not a valid Activation ID" msgstr "Não é um ID de Ativação válido" #: ../activation-server/activation-server-main.c:176 msgid "Directory to read .server files from" msgstr "Diretório de onde ler arquivos .server" #: ../activation-server/activation-server-main.c:176 msgid "DIRECTORY" msgstr "DIRETÓRIO" #: ../activation-server/activation-server-main.c:179 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "" "Servir como um ActivationContext (padrão é como um ObjectDirectory apenas)" #: ../activation-server/activation-server-main.c:183 msgid "File descriptor to write IOR to" msgstr "Descritor de arquivos onde escrever IOR" #: ../activation-server/activation-server-main.c:183 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:186 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "" "Registrar como servidor de ativação do usuário sem bloqueio. Aviso: esta " "opção pode ter efeitos colaterais perigosos sobre a estabilidade da sessão " "atual do usuário, e deve ser usada apenas para depuração" #: ../activation-server/activation-server-main.c:194 msgid "Query expression to evaluate" msgstr "Expressão de consulta a ser avaliada" #: ../activation-server/activation-server-main.c:194 msgid "EXPRESSION" msgstr "EXPRESSÃO" #: ../activation-server/activation-server-main.c:547 #: ../utils/bonobo-activation-sysconf.c:305 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "" "Execute \"%s --help\" para obter uma lista completa de opções de linha de " "comando disponíveis.\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "Serviço CosNaming CORBA." #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "Serviço de nomes" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "Serviço de notificação" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "Serviço de notificação para ativação" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "Ainda não tratamos a ativação de objetos shlib em um processo remoto" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "O arquivo de configuração do Bonobo Activation não foi lido com sucesso. Por " "favor, verifique se ele é válido em: %s" #: ../activation-server/object-directory-load.c:102 msgid "a NULL iid is not valid" msgstr "uma iid NULL não é válida" #: ../activation-server/object-directory-load.c:106 #, c-format msgid "iid %s has a NULL type" msgstr "iid %s tem um tipo NULL" #: ../activation-server/object-directory-load.c:110 #, c-format msgid "iid %s has a NULL location" msgstr "iid %s tem um local NULL" #: ../activation-server/object-directory-load.c:119 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "caractere inválido \"%c\" no iid \"%s\"" #: ../activation-server/object-directory-load.c:349 #, c-format msgid "Property '%s' has no value" msgstr "A propriedade \"%s\" não possui valor" #: ../activation-server/object-directory-load.c:583 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "Não foi possível analisar documento XML mal formado %s" #: ../activation-server/object-directory-load.c:629 #, c-format msgid "Trying dir %s" msgstr "Tentando diretório %s" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "" "Processo filho não exibiu uma mensagem de erro, ocorreu uma falha não " "conhecida" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "Falha ao ler do processo filho: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, c-format msgid "EOF from child process\n" msgstr "EOF do processo filho\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:438 msgid "Couldn't spawn a new process" msgstr "Não foi possível criar um novo processo" #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "File descriptor to print IOR on" msgstr "Descritor de arquivos onde imprimir IOR" #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:399 msgid "IID to activate" msgstr "IID a ser ativado" #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Prevent registering of server with OAF" msgstr "Evitar registro do servidor com o OAF" #: ../bonobo-activation/bonobo-activation-init.c:409 msgid "Bonobo Activation options:" msgstr "Opções do Bonobo Activation:" #: ../bonobo-activation/bonobo-activation-init.c:410 msgid "Show Bonobo Activation options" msgstr "Mostrar opções do Bonobo Activation" #: ../bonobo-activation/bonobo-activation-init.c:518 msgid "Bonobo activation options" msgstr "Opções do Bonobo activation" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "g_module_open de \"%s\" falhou com \"%s\"" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "Não foi possível localizar símbolo Bonobo_Plugin_info em \"%s\"" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "Fábrica \"%s\" retornou NIL para \"%s\"" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Biblioteca \"%s\" não continha \"%s\"" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "Nome" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "Nome único do aplicativo" #: ../bonobo/bonobo-object.c:929 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:929 msgid "Custom CORBA POA" msgstr "CORBA POA personalizada" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "Tentativa de executar uma ação para a qual não há suporte" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "Erro de E/S" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "Valor de argumento inválido" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "Objeto não localizado" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "Erro de sintaxe na descrição do objeto" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "Não foi possível ativar o objeto na fábrica" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "Sem permissão para acessar o fluxo" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "Tentativa de executar uma ação de fluxo para a qual não há suporte" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "Erro de E/S no fluxo" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "Erro de E/S no armazenamento" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "Nome já existente no armazenamento" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "Objeto não localizado no armazenamento" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "Sem permissão para executar a operação em armazenamento" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "" "Tentativa de executar uma ação em armazenamento para a qual não há suporte" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "O objeto não é um fluxo" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "O objeto não é um armazenamento" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "O armazenamento não está vazio" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "descrição XML da interface do usuário incorreta" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "caminho inválido para o elemento da interface do usuário XML" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "o atributo da UI solicitado não existia" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "Comando ou verbo desconhecido" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "Comando insensível" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "tipo de dados incorreto" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "fluxo não localizado" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "propriedade não localizada" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "a propriedade tem um tipo inválido" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "a propriedade é somente leitura" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "falha no backend do banco de dados de configuração " #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "Não é possível localizar a interface do moniker" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "Tempo limite de ativação do moniker esgotado" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "Erro de sintaxe no moniker" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "O moniker possui um prefixo desconhecido" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "Erro ao verificar o erro; nenhuma exceção" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "Erro de ativação geral sem descrição" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s'" msgstr "Falha ao resolver ou estender \"%s\"" #: ../bonobo/bonobo-moniker-util.c:247 msgid "Failed to activate object" msgstr "Falha ao ativar o objeto" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "Exceção ao ativar \"%s\"" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "Falha ao ativar \"%s\"" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "Moniker HTTP" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "Moniker de tratamento de IOR ORB" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "Fábrica de moniker padrão" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "moniker de ativação Oaf genérico" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "moniker de consulta Oaf genérico" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "'novo' moniker de fábrica genérica" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "moniker de item genérico" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "MonikerExtender de fluxo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Fábrica do servidor Bonobo Echo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Programa exemplo do servidor Bonobo Echo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Componente do Echo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Fábrica de componente do Echo" #: ../samples/echo/echo-client.c:24 msgid "I could not initialize Bonobo" msgstr "Não foi possível inicializar o Bonobo" #: ../samples/echo/echo-client.c:35 msgid "Could not create an instance of the sample echo component" msgstr "Não foi possível criar uma ocorrência de componente exemplo Echo" #: ../samples/echo/echo-client.c:47 #, c-format msgid "An exception occurred '%s'" msgstr "Ocorreu uma exceção \"%s\"" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Could not save configuration file.\n" msgstr "Não foi possível salvar arquivo de configuração.\n" #: ../utils/bonobo-activation-sysconf.c:84 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "Favor verificar se você possui as permissões de escrita para \"%s\".\n" #: ../utils/bonobo-activation-sysconf.c:87 #, c-format msgid "Successfully wrote configuration file.\n" msgstr "Arquivo de configuração escrito com sucesso.\n" #: ../utils/bonobo-activation-sysconf.c:104 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "o arquivo de configuração é:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:146 #, c-format msgid "%s already in configuration file\n" msgstr "%s já está no arquivo de configuração\n" #: ../utils/bonobo-activation-sysconf.c:166 #, c-format msgid "there is not a properly structured configuration file\n" msgstr "não há um arquivo de configuração estruturado corretamente\n" #: ../utils/bonobo-activation-sysconf.c:237 #, c-format msgid "Bonobo-activation configuration file contains:\n" msgstr "O arquivo de configuração do Bonobo-activation contém:\n" #: ../utils/bonobo-activation-sysconf.c:267 msgid "Directory to remove from configuration file" msgstr "Diretório a ser removido do arquivo de configuração" #: ../utils/bonobo-activation-sysconf.c:267 #: ../utils/bonobo-activation-sysconf.c:269 msgid "PATH" msgstr "CAMINHO" #: ../utils/bonobo-activation-sysconf.c:269 msgid "Directory to add to configuration file" msgstr "Diretório a ser incluído no arquivo de configuração" #: ../utils/bonobo-activation-sysconf.c:271 msgid "Display directories in configuration file" msgstr "Exibir diretórios no arquivo de configuração" #: ../utils/bonobo-activation-sysconf.c:273 msgid "Display path to configuration file" msgstr "Exibir caminho do arquivo de configuração" #~ msgid "Could not initialize Bonobo" #~ msgstr "Não foi possível inicializar o Bonobo" #~ msgid "Bonobo Activation" #~ msgstr "Bonobo Activation" #~ msgid "" #~ "Register as the users' activation server without locking [!] for debugging" #~ msgstr "" #~ "Registrar como servidor de ativação dos usuários sem bloqueio [!] para " #~ "depuração" #~ msgid "Race condition activating server '%s'" #~ msgstr "Condição de corrida ativando servidor '%s'" #~ msgid "directory path" #~ msgstr "caminho do diretório" #~ msgid "Too many alias levels for a locale, may indicate a loop" #~ msgstr "Excesso de níveis de sinônimos para um locale, pode indicar um loop" #~ msgid "Child received signal %u (%s)" #~ msgstr "Filho recebeu sinal %u (%s)" #~ msgid "Unknown non-exit error (status is %u)" #~ msgstr "Erro desconhecido não de saída (estado é %u)" #~ msgid "bonobo-activation failed to set process group of %s: %s\n" #~ msgstr "" #~ "O bonobo-activation falhou ao definir o grupo de processo de %s: %s\n" #~ msgid "Failed to execute %s: %d (%s)\n" #~ msgstr "Falha ao executar %s: %d (%s)\n" libbonobo-2.32.1/po/eu.po0000644000076400007640000003723011373604303012071 00000000000000# translation of eu.po to Basque # This file is distributed under the same license as the PACKAGE package. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER. # # Hizkuntza Politikarako Sailburuordetza , 2004. # Iñaki Larrañaga Murgoitio , 2004, 2005, 2006, 2007, 2010. # Iñaki Larrañaga Murgoitio , 2007. msgid "" msgstr "" "Project-Id-Version: eu\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2010-05-05 15:06+0200\n" "PO-Revision-Date: 2010-05-05 15:06+0200\n" "Last-Translator: Iñaki Larrañaga Murgoitio \n" "Language-Team: Basque \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.11.4\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" "\n" #: ../activation-server/activation-context-corba.c:530 msgid "Couldn't find which child the server was listed in" msgstr "Ezin izan da aurkitu zerbitzaria zein umetan zegoen zerrendatuta" #: ../activation-server/activation-context-corba.c:822 msgid "Not a valid Activation ID" msgstr "Aktibatzeko IDa ez da baliozkoa" #: ../activation-server/activation-server-main.c:176 msgid "Directory to read .server files from" msgstr "'.server' fitxategiak irakurtzeko direktorioa" #: ../activation-server/activation-server-main.c:176 msgid "DIRECTORY" msgstr "DIREKTORIOA" #: ../activation-server/activation-server-main.c:179 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "" "ActivationContext gisa erabiltzeko (lehenespenez, ObjectDirectory gisa " "bakarrik)" #: ../activation-server/activation-server-main.c:183 msgid "File descriptor to write IOR to" msgstr "IOR idazteko fitxategi-deskriptorea" #: ../activation-server/activation-server-main.c:183 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:186 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "" "Erregistratu erabiltzailearen aktibazio-zerbitzu gisa, blokeatu gabe. " "Abisua: aukera hau eragin arriskutsuak izan ditzake erabiltzailearen uneko " "saioaren egonkortasunean, eta arazketak burutzeko soilik erabiltzea " "gomendatzen da." #: ../activation-server/activation-server-main.c:194 msgid "Query expression to evaluate" msgstr "Ebaluatzeko kontsulta-adierazpena" #: ../activation-server/activation-server-main.c:194 msgid "EXPRESSION" msgstr "ADIERAZPENA" #: ../activation-server/activation-server-main.c:547 #: ../utils/bonobo-activation-sysconf.c:305 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "Exekutatu '%s --help' komando-lerroaren aukera guztiak zerrendatzeko.\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "CORBA CosNaming zerbitzua." #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "Izen-zerbitzua" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "Abisu-zerbitzua" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "Abisu-zerbitzua aktibatzeko" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "Oraindik ez dugu urruneko prozesuetan shlib objekturik aktibatzen" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "Bonobo konfigurazio-fitxategia ez da behar bezala irakurri. Egiaztatu " "baliozkoa dela hemen: %s" #: ../activation-server/object-directory-load.c:102 msgid "a NULL iid is not valid" msgstr "iid NULUA ez da baliozkoa" #: ../activation-server/object-directory-load.c:106 #, c-format msgid "iid %s has a NULL type" msgstr "%s iid-ak mota NULUA dauka" #: ../activation-server/object-directory-load.c:110 #, c-format msgid "iid %s has a NULL location" msgstr "%s iid-ak kokaleku NULUA dauka" #: ../activation-server/object-directory-load.c:119 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "baliogabeko '%c' karakterea '%s' iid-ean" #: ../activation-server/object-directory-load.c:349 #, c-format msgid "Property '%s' has no value" msgstr "'%s' propietateak ez du baliorik" #: ../activation-server/object-directory-load.c:583 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "Ezin izan da XML gaizki formateatutako %s dokumentua analizatu" #: ../activation-server/object-directory-load.c:629 #, c-format msgid "Trying dir %s" msgstr "%s direktorioarekin saiatzen" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "Prozesu umeak ez du errore-mezurik eman, hutsegite ezezaguna gertatu da" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "Huts egin du prozesu ume hau irakurtzean: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, c-format msgid "EOF from child process\n" msgstr "EOF prozesu umetik\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:438 msgid "Couldn't spawn a new process" msgstr "Ezin izan da prozesu berria sardetu" #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "File descriptor to print IOR on" msgstr "IOR inprimatzeko fitxategi-deskriptorea" #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:399 msgid "IID to activate" msgstr "Aktibatzeko IIDa" #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Prevent registering of server with OAF" msgstr "OAF duen zerbitzaria erregistratzea eragozten du" #: ../bonobo-activation/bonobo-activation-init.c:409 msgid "Bonobo Activation options:" msgstr "Bonobo aktibatzeko aukerak:" #: ../bonobo-activation/bonobo-activation-init.c:410 msgid "Show Bonobo Activation options" msgstr "Erakutsi Bonobo aktibatzeko aukerak" #: ../bonobo-activation/bonobo-activation-init.c:518 msgid "Bonobo activation options" msgstr "Bonobo aktibatzeko aukerak" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "'%s'(r)en g_module_open-ek huts egin du '%s'(r)ekin" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "Ezin da Bonobo_Plugin_info ikurra aurkitu '%s'(e)n" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "'%s' fabrikak '%s'(r)en NILa itzuli du" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "'%s' shlib-ak ez dauka '%s'" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "Izena" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "Aplikazioaren izen bakarra" #: ../bonobo/bonobo-object.c:929 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:929 msgid "Custom CORBA POA" msgstr "CORBA POA pertsonalizatua" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "Onartzen ez den eragiketa bat egin nahi izan da" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "S/I errorea" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "Argumentu-balioa okerra" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "Objektua ez da aurkitu" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "Sintaxi-errorea objektuaren deskribapenean" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "Ezin da objektua fabrikatik aktibatu" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "Ez dago korrontea atzitzeko baimenik" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "Onartzen ez den korronte-ekintza bat egin nahi izan da" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "S/I errorea korrontean" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "S/I errorea biltegian" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "Biltegian izen hori badago lehendik" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "Objektua ez da biltegian aurkitu" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "Ez dago baimenik biltegian eragiketa egiteko" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "Onartzen ez den biltegiratze-ekintza bat egin nahi izan da" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "Objektua ez da korrontea" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "Objektua ez da biltegia" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "Biltegia ez dago hutsik" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "erabiltzaile-interfazearen XML deskribapena gaizki osatuta" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "XML erabiltzaile-interfazeko elementurako bide-izen okerra" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "eskatutako UI atributua ez dago" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "Komando edo aditz ezezaguna" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "Komandoa ez da sentikorra" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "datu mota ez da zuzena" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "korrontea ez da aurkitu" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "propietatea ez da aurkitu" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "propietateak mota baliogabea du" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "propietatea irakurtzeko soilik da" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "konfigurazioaren datu-basearen euskarriak huts egin du " #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "Monikerraren interfazea ezin da aurkitu" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "Monikerraren aktibazioa denboraz kanpo" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "Sintaxi-errorea monikerrean" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "Monikerrak moniker-aurrizki ezezaguna dauka" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "Egiaztapen-errorea; salbuespenik ez" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "Aktibatze-errore orokorra azalpenik gabe" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s'" msgstr "Huts egin du '%s konpondu edo hedatzean" #: ../bonobo/bonobo-moniker-util.c:247 msgid "Failed to activate object" msgstr "Ezin izan da objektua aktibatu" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "Salbuespena '%s' aktibatzean" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "Ezin izan da '%s' aktibatu" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "HTTP Monikerra" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "ORB IOR kudeatzeko monikerra" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "Moniker estandarraren fabrika" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "Oaf generikoaren aktibazio-monikerra" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "Oaf generikoaren kontsulta-monikerra" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "fabrika generikoko moniker 'berria' " #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "elementu generikoaren monikerra" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "MonikerExtender korrontea" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Bonobo Echo zerbitzari-fabrika" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Bonobo Echo zerbitzariaren programa-lagina" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Echo osagaia" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Echo osagai-fabrika" #: ../samples/echo/echo-client.c:24 msgid "I could not initialize Bonobo" msgstr "Ezin izan dut Bonobo hasieratu" #: ../samples/echo/echo-client.c:35 msgid "Could not create an instance of the sample echo component" msgstr "Ezin izan da echo osagaiaren laginaren instantzia sortu" #: ../samples/echo/echo-client.c:47 #, c-format msgid "An exception occurred '%s'" msgstr "Salbuespena gertatu da: '%s'" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Could not save configuration file.\n" msgstr "Ezin izan da konfigurazio-fitxategia gorde.\n" #: ../utils/bonobo-activation-sysconf.c:84 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "Ziurtatu baimena duzula '%s'(e)n idazteko.\n" #: ../utils/bonobo-activation-sysconf.c:87 #, c-format msgid "Successfully wrote configuration file.\n" msgstr "Konfigurazio-fitxategia behar bezala idatzi da. \n" #: ../utils/bonobo-activation-sysconf.c:104 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "konfigurazio-fitxategia:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:146 #, c-format msgid "%s already in configuration file\n" msgstr "%s badago lehendik konfigurazio-fitxategian\n" #: ../utils/bonobo-activation-sysconf.c:166 #, c-format msgid "there is not a properly structured configuration file\n" msgstr "ez dago ondo egituratutako konfigurazio-fitxategirik\n" #: ../utils/bonobo-activation-sysconf.c:237 #, c-format msgid "Bonobo-activation configuration file contains:\n" msgstr "Bonobo-activation konfigurazio-fitxategiak hau dauka:\n" #: ../utils/bonobo-activation-sysconf.c:267 msgid "Directory to remove from configuration file" msgstr "Konfigurazio-fitxategitik kendu beharreko direktorioa" #: ../utils/bonobo-activation-sysconf.c:267 #: ../utils/bonobo-activation-sysconf.c:269 msgid "PATH" msgstr "BIDE-IZENA" #: ../utils/bonobo-activation-sysconf.c:269 msgid "Directory to add to configuration file" msgstr "Konfigurazio-fitxategiari gehitu beharreko direktorioa" #: ../utils/bonobo-activation-sysconf.c:271 msgid "Display directories in configuration file" msgstr "Bistaratu konfigurazio-fitxategiko direktorioak" #: ../utils/bonobo-activation-sysconf.c:273 msgid "Display path to configuration file" msgstr "Bistaratu konfigurazio-fitxategiaren bide-izena" libbonobo-2.32.1/po/vi.po0000644000076400007640000004156211173072711012101 00000000000000# Vietnamese translation for LibBonobo. # Copyright © 2007 Gnome i18n Project for Vietnamese. # Nguyễn Thái Ngọc Duy , 2002. # Clytie Siddall , 2005-2007. # msgid "" "" msgstr "Project-Id-Version: libbonobo Gnome HEAD\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-01-02 05:40+0000\n" "PO-Revision-Date: 2007-01-04 21:53+1030\n" "Last-Translator: Clytie Siddall \n" "Language-Team: Vietnamese \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" "X-Generator: LocFactoryEditor 1.6fc1\n" #: ../activation-server/activation-context-corba.c:523 msgid "Couldn't find which child the server was listed in" msgstr "Không thể tìm điều con nào liệt kê trình phục vụ này" #: ../activation-server/activation-context-corba.c:815 msgid "Not a valid Activation ID" msgstr "Không phải ID kích hoạt hợp lệ" #: ../activation-server/activation-server-main.c:163 msgid "Directory to read .server files from" msgstr "Thư mục từ đó cần đọc các tập tin « .server »" #: ../activation-server/activation-server-main.c:163 msgid "DIRECTORY" msgstr "THƯ MỤC" #: ../activation-server/activation-server-main.c:166 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "Phục vụ như là ActivationContext (mặc định chỉ là ObjectDirectory)" #: ../activation-server/activation-server-main.c:170 msgid "File descriptor to write IOR to" msgstr "Bộ mô tả tập tin vào đó cần ghi IOR" #: ../activation-server/activation-server-main.c:170 #: ../bonobo-activation/bonobo-activation-init.c:355 #: ../bonobo-activation/bonobo-activation-init.c:365 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:173 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "Đang ký như là máy phục vụ kích hoạt của người dùng, mà không khoá. Cảnh báo : tùy chọn này có thể có hiệu ứng khác nguy hiểm trong ổn định của phiên chạy đang hoạt động của người dùng thì chỉ nên dùng cho mục đích gỡ lỗi." #: ../activation-server/activation-server-main.c:181 msgid "Query expression to evaluate" msgstr "Biểu thức truy vấn cần ước lượng" #: ../activation-server/activation-server-main.c:181 msgid "EXPRESSION" msgstr "BIỂU THỨC" #: ../activation-server/activation-server-main.c:430 #: ../utils/bonobo-activation-sysconf.c:304 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "Hãy chạy « %s --help » (trợ giúp) để xem danh sách các tùy chọn dòng lệnh có sẵn.\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "Dịch vụ CosNaming CORBA." #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "Dịch vụ tên" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "Dịch vụ thông báo" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "Dịch vụ thông báo việc kích hoạt" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "Chưa có khả năng xử lý kích hoạt đối tượng « shlib » trong tiến trình ở xa" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "Không đọc thành công tập tin cấu hình kích hoạt bonobo. Hãy kiểm tra nó hợp lệ trong: %s" #: ../activation-server/object-directory-load.c:101 msgid "a NULL iid is not valid" msgstr "IID NULL (vô giá trị) không hợp lệ" #: ../activation-server/object-directory-load.c:105 #, c-format msgid "iid %s has a NULL type" msgstr "IID %s có kiểu NULL (vô giá trị)" #: ../activation-server/object-directory-load.c:109 #, c-format msgid "iid %s has a NULL location" msgstr "IID %s có địa điểm NULL (vô giá trị)" #: ../activation-server/object-directory-load.c:118 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "gặp ký tự không hợp lệ « %c » trong IID « %s »." #: ../activation-server/object-directory-load.c:348 #, c-format msgid "Property '%s' has no value" msgstr "Thuộc tính « %s » không có giá trị" #: ../activation-server/object-directory-load.c:580 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "Không thể phân tách tài liệu XML dạng sai %s" #: ../activation-server/object-directory-load.c:627 #, c-format msgid "Trying dir %s" msgstr "Đang thử ra thư mục %s" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "Tiến trình con không đưa ra thông báo lỗi, gặp lỗi không rõ" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "Lỗi khi đọc từ tiến trình con: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 msgid "EOF from child process\n" msgstr "Tiến trình con thông báo gặp kết thúc tập tin (EOF)\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:435 msgid "Couldn't spawn a new process" msgstr "Không thể tạo tiến trình mới" #: ../bonobo-activation/bonobo-activation-init.c:355 #: ../bonobo-activation/bonobo-activation-init.c:365 msgid "File descriptor to print IOR on" msgstr "Bộ mô tả tập tin trên đó cần in IOR" #: ../bonobo-activation/bonobo-activation-init.c:357 #: ../bonobo-activation/bonobo-activation-init.c:367 msgid "IID to activate" msgstr "IID cần kích hoạt" #: ../bonobo-activation/bonobo-activation-init.c:359 #: ../bonobo-activation/bonobo-activation-init.c:369 msgid "Prevent registering of server with OAF" msgstr "Ngan cản đăng ký trình phục vụ với OAF" #: ../bonobo-activation/bonobo-activation-init.c:403 msgid "Bonobo Activation options:" msgstr "Tùy chọn kích hoạt Bonobo :" #: ../bonobo-activation/bonobo-activation-init.c:404 msgid "Show Bonobo Activation options" msgstr "Hiện các tùy chọn kích hoạt Bonobo" #: ../bonobo-activation/bonobo-activation-init.c:512 msgid "Bonobo activation options" msgstr "Tùy chọn kích hoạt Bonobo" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "« g_module_open » của « %s » bị lỗi với « %s »" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "Không thể tìm ký hiệu « Bonobo_Plugin_info » (thông tin về bổ sung Bonobo) trong « %s »" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "Bộ tạo « %s » trả về NIL (số không) cho « %s »" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Shlib « %s » không chứa « %s »" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "Tên" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "Tên ứng dụng duy nhất" #: ../bonobo/bonobo-object.c:923 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:923 msgid "Custom CORBA POA" msgstr "CORBA POA tự chọn" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "Đã cố làm một hành động không được hỗ trợ" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "Lỗi nhập xuất" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "Giá trị đối số không hợp lệ" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "Không tìm thấy đối tượng" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "Gặp lỗi cú pháp trong mô tả đối tượng" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "Không thể kích hoạt đối tượng từ bộ tạo" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "Không có quyền truy cập luồng" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "Đã cố làm một hành động luồng không được hỗ trợ" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "Lỗi nhập xuất trên luồng" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "Lỗi nhập xuất trên kho lưu" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "Tên đã có trong kho lưu" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "Không tìm thấy đối tượng trong kho lưu" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "Không có quyền thao tác trên kho lưu" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "Đã cố làm một hành động kho lưu không được hỗ trợ" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "Đối tượng không phải luồng" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "Đối tượng không phải kho lưu" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "Kho lưu không phải rỗng" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "mô tả XML dạng sai cho giao diện người dùng" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "đường dẫn không hợp lệ đến yếu tố giao diện người dùng XML" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "thuộc tính giao diện người dùng đã yêu cầu không tồn tại" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "Gặp lệnh hay động từ không rõ" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "Lệnh không phản ứng" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "kiểu dữ liệu không đúng" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "không tìm thấy luồng" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "không tìm thấy thuộc tính" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "thuộc tính sai kiểu" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "thuộc tính chỉ cho phép đọc" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "lỗi hậu phương cơ sở dữ liệu cấu hình " #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "Không tìm thấy giao diện Moniker" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "Việc kích hoạt Moniker đã quá thời" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "Gặp lỗi cú pháp trong Moniker" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "Moniker có tiền tố moniker không rõ" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "Lỗi kiểm tra; không có ngoại lệ" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "Lỗi kích hoạt chung, không có mô tả" #: ../bonobo/bonobo-generic-factory.h:79 #: ../bonobo/bonobo-generic-factory.h:83 msgid "Could not initialize Bonobo" msgstr "Không thể khởi động Bonobo" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s" msgstr "Lỗi phân giải hoặc mở rộng « %s »" #: ../bonobo/bonobo-moniker-util.c:246 msgid "Failed to activate object" msgstr "Lỗi kích hoạt đối tượng" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "Gặp ngoại lệ khi kích hoạt « %s »" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "Lỗi kích hoạt « %s »" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "Moniker HTTP" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "Moniker xử lý ORB IOR" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "Bộ tạo Moniker chuẩn" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "moniker kích hoạt Oaf chung" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "moniker truy vấn Oaf chung" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "bộ tạo moniker « mới » chung" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "moniker mục chung" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "luồng MonikerExtender" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Bộ tạo trình phục vụ Vọng Bonobo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Chương trình mẫu trình phục vụ Vọng Bonobo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Thành phần vọng" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Bộ tạo thành phần vọng" #: ../samples/echo/echo-client.c:22 msgid "I could not initialize Bonobo" msgstr "Không thể khởi động Bonobo" #: ../samples/echo/echo-client.c:33 msgid "Could not create an instance of the sample echo component" msgstr "Không thể tạo ra thể hiện của thành phần vọng mẫu" #: ../samples/echo/echo-client.c:45 #, c-format msgid "An exception occurred '%s'" msgstr "Gặp ngoài lệ « %s »" #: ../utils/bonobo-activation-sysconf.c:82 msgid "Could not save configuration file.\n" msgstr "Không thể lưu tập tin cấu hình.\n" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "Hãy kiểm tra lại có quyền ghi vào tập tin « %s ».\n" #: ../utils/bonobo-activation-sysconf.c:86 msgid "Successfully wrote configuration file.\n" msgstr "Tập tin cấu hình đã được ghi.\n" #: ../utils/bonobo-activation-sysconf.c:103 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "tập tin cấu hình là:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:145 #, c-format msgid "%s already in configuration file\n" msgstr "%s đã có trong tập tin cấu hình\n" #: ../utils/bonobo-activation-sysconf.c:165 msgid "there is not a properly structured configuration file\n" msgstr "không có tập tin cấu hình có cấu trúc đúng\n" #: ../utils/bonobo-activation-sysconf.c:236 msgid "Bonobo-activation configuration file contains:\n" msgstr "Tập tin cấu hình bonobo-activation chứa:\n" #: ../utils/bonobo-activation-sysconf.c:266 msgid "Directory to remove from configuration file" msgstr "Thư mục cần gỡ bỏ khỏi tập tin cấu hình" #: ../utils/bonobo-activation-sysconf.c:266 #: ../utils/bonobo-activation-sysconf.c:268 msgid "PATH" msgstr "ĐƯỜNG DẪN" #: ../utils/bonobo-activation-sysconf.c:268 msgid "Directory to add to configuration file" msgstr "Thư mục cần thêm vào tập tin cấu hình" #: ../utils/bonobo-activation-sysconf.c:270 msgid "Display directories in configuration file" msgstr "Hiện các thư mục trong tập tin cấu hình" #: ../utils/bonobo-activation-sysconf.c:272 msgid "Display path to configuration file" msgstr "Hiện đường dẫn đến tập tin cấu hình" #~ msgid "" #~ "Register as the users' activation server without locking [!] for debugging" #~ msgstr "Đăng ký như là trình phục vụ kích hoạt của các người dùng, không khoá [!] " #~ "để gỡ lỗi" #~ msgid "Bonobo Activation" #~ msgstr "Hoạt hóa Bonobo" #~ msgid "Race condition activating server '%s'" #~ msgstr "Lỗi race condition (điệu kiện đa truy cập đồng thời) khi kích hoạt trình " #~ "phục vụ « %s »." libbonobo-2.32.1/po/ku.po0000644000076400007640000002712111173072711012075 00000000000000# translation of libbonobo.HEAD.po to Kurdish # This file is distributed under the same license as the PACKAGE package. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER. # Erdal Ronahi , 2005. # msgid "" msgstr "" "Project-Id-Version: libbonobo.HEAD\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2006-10-22 16:55+0200\n" "PO-Revision-Date: 2005-09-12 16:42+0200\n" "Last-Translator: Erdal Ronahi \n" "Language-Team: Kurdish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.10\n" "Plural-Forms: nplurals=2; plural= n != 1\n" #: ../activation-server/activation-context-corba.c:523 msgid "Couldn't find which child the server was listed in" msgstr "" #: ../activation-server/activation-context-corba.c:815 msgid "Not a valid Activation ID" msgstr "" #: ../activation-server/activation-server-main.c:162 msgid "Directory to read .server files from" msgstr "" #: ../activation-server/activation-server-main.c:162 msgid "DIRECTORY" msgstr "" #: ../activation-server/activation-server-main.c:165 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "" #: ../activation-server/activation-server-main.c:169 msgid "File descriptor to write IOR to" msgstr "" #: ../activation-server/activation-server-main.c:169 #: ../bonobo-activation/bonobo-activation-init.c:355 #: ../bonobo-activation/bonobo-activation-init.c:365 msgid "FD" msgstr "" #: ../activation-server/activation-server-main.c:172 msgid "" "Register as the users' activation server without locking [!] for debugging" msgstr "" #: ../activation-server/activation-server-main.c:177 msgid "Query expression to evaluate" msgstr "" #: ../activation-server/activation-server-main.c:177 msgid "EXPRESSION" msgstr "" #: ../activation-server/activation-server-main.c:426 #: ../utils/bonobo-activation-sysconf.c:304 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" #: ../activation-server/object-directory-load.c:101 msgid "a NULL iid is not valid" msgstr "" #: ../activation-server/object-directory-load.c:105 #, c-format msgid "iid %s has a NULL type" msgstr "" #: ../activation-server/object-directory-load.c:109 #, c-format msgid "iid %s has a NULL location" msgstr "" #: ../activation-server/object-directory-load.c:118 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "" #: ../activation-server/object-directory-load.c:348 #, c-format msgid "Property '%s' has no value" msgstr "" #: ../activation-server/object-directory-load.c:580 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "" #: ../activation-server/object-directory-load.c:627 #, c-format msgid "Trying dir %s" msgstr "" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 msgid "EOF from child process\n" msgstr "" #: ../bonobo-activation/bonobo-activation-fork-server.c:435 msgid "Couldn't spawn a new process" msgstr "" #: ../bonobo-activation/bonobo-activation-init.c:355 #: ../bonobo-activation/bonobo-activation-init.c:365 msgid "File descriptor to print IOR on" msgstr "" #: ../bonobo-activation/bonobo-activation-init.c:357 #: ../bonobo-activation/bonobo-activation-init.c:367 msgid "IID to activate" msgstr "" #: ../bonobo-activation/bonobo-activation-init.c:359 #: ../bonobo-activation/bonobo-activation-init.c:369 msgid "Prevent registering of server with OAF" msgstr "" #: ../bonobo-activation/bonobo-activation-init.c:403 msgid "Bonobo Activation" msgstr "" #: ../bonobo-activation/bonobo-activation-init.c:404 msgid "Show Bonobo Activation options" msgstr "" #: ../bonobo-activation/bonobo-activation-init.c:512 msgid "Bonobo activation options" msgstr "" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "Nav" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "" #: ../bonobo/bonobo-object.c:923 msgid "POA" msgstr "" #: ../bonobo/bonobo-object.c:923 msgid "Custom CORBA POA" msgstr "" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "" #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "" #: ../bonobo/bonobo-generic-factory.h:79 ../bonobo/bonobo-generic-factory.h:83 msgid "Could not initialize Bonobo" msgstr "" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s" msgstr "" #: ../bonobo/bonobo-moniker-util.c:246 msgid "Failed to activate object" msgstr "" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "" #: ../samples/echo/echo-client.c:22 msgid "I could not initialize Bonobo" msgstr "" #: ../samples/echo/echo-client.c:33 msgid "Could not create an instance of the sample echo component" msgstr "" #: ../samples/echo/echo-client.c:45 #, c-format msgid "An exception occurred '%s'" msgstr "" #: ../utils/bonobo-activation-sysconf.c:82 msgid "Could not save configuration file.\n" msgstr "" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "" #: ../utils/bonobo-activation-sysconf.c:86 msgid "Successfully wrote configuration file.\n" msgstr "" #: ../utils/bonobo-activation-sysconf.c:103 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" #: ../utils/bonobo-activation-sysconf.c:145 #, c-format msgid "%s already in configuration file\n" msgstr "" #: ../utils/bonobo-activation-sysconf.c:165 msgid "there is not a properly structured configuration file\n" msgstr "" #: ../utils/bonobo-activation-sysconf.c:236 msgid "Bonobo-activation configuration file contains:\n" msgstr "" #: ../utils/bonobo-activation-sysconf.c:266 msgid "Directory to remove from configuration file" msgstr "" #: ../utils/bonobo-activation-sysconf.c:266 #: ../utils/bonobo-activation-sysconf.c:268 msgid "PATH" msgstr "" #: ../utils/bonobo-activation-sysconf.c:268 msgid "Directory to add to configuration file" msgstr "" #: ../utils/bonobo-activation-sysconf.c:270 msgid "Display directories in configuration file" msgstr "" #: ../utils/bonobo-activation-sysconf.c:272 msgid "Display path to configuration file" msgstr "" libbonobo-2.32.1/po/oc.po0000644000076400007640000002736111173072711012065 00000000000000# Translation of oc.po to Occitan # Occitan translation of libbonobo. # Copyright (C) 2006, 2007, Free Software Foundation, Inc. # This file is distributed under the same license as the libbonobo package. # # Yannig Marchegay (Kokoyaya) , 2006-2008 msgid "" msgstr "" "Project-Id-Version: oc\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2008-03-07 10:22+0100\n" "PO-Revision-Date: 2007-11-20 14:32+0100\n" "Last-Translator: Yannig Marchegay (Kokoyaya) \n" "Language-Team: Occitan \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" "X-Generator: KBabel 1.11.4\n" #: ../activation-server/activation-context-corba.c:527 msgid "Couldn't find which child the server was listed in" msgstr "" #: ../activation-server/activation-context-corba.c:819 msgid "Not a valid Activation ID" msgstr "" #: ../activation-server/activation-server-main.c:162 msgid "Directory to read .server files from" msgstr "" #: ../activation-server/activation-server-main.c:162 msgid "DIRECTORY" msgstr "REPERTÒRI" #: ../activation-server/activation-server-main.c:165 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "" #: ../activation-server/activation-server-main.c:169 msgid "File descriptor to write IOR to" msgstr "" #: ../activation-server/activation-server-main.c:169 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "FD" msgstr "" #: ../activation-server/activation-server-main.c:172 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "" #: ../activation-server/activation-server-main.c:180 msgid "Query expression to evaluate" msgstr "" #: ../activation-server/activation-server-main.c:180 msgid "EXPRESSION" msgstr "EXPRESSION" #: ../activation-server/activation-server-main.c:430 #: ../utils/bonobo-activation-sysconf.c:305 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" #: ../activation-server/object-directory-load.c:102 msgid "a NULL iid is not valid" msgstr "" #: ../activation-server/object-directory-load.c:106 #, c-format msgid "iid %s has a NULL type" msgstr "" #: ../activation-server/object-directory-load.c:110 #, c-format msgid "iid %s has a NULL location" msgstr "" #: ../activation-server/object-directory-load.c:119 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "" #: ../activation-server/object-directory-load.c:349 #, c-format msgid "Property '%s' has no value" msgstr "" #: ../activation-server/object-directory-load.c:583 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "" #: ../activation-server/object-directory-load.c:629 #, c-format msgid "Trying dir %s" msgstr "" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, c-format msgid "EOF from child process\n" msgstr "" #: ../bonobo-activation/bonobo-activation-fork-server.c:438 msgid "Couldn't spawn a new process" msgstr "" #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "File descriptor to print IOR on" msgstr "" #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:399 msgid "IID to activate" msgstr "" #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Prevent registering of server with OAF" msgstr "" #: ../bonobo-activation/bonobo-activation-init.c:409 msgid "Bonobo Activation options:" msgstr "" #: ../bonobo-activation/bonobo-activation-init.c:410 msgid "Show Bonobo Activation options" msgstr "" #: ../bonobo-activation/bonobo-activation-init.c:518 msgid "Bonobo activation options" msgstr "" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "Nom" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "" #: ../bonobo/bonobo-object.c:926 msgid "POA" msgstr "" #: ../bonobo/bonobo-object.c:926 msgid "Custom CORBA POA" msgstr "" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "" #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s" msgstr "" #: ../bonobo/bonobo-moniker-util.c:247 msgid "Failed to activate object" msgstr "" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "" #: ../samples/echo/echo-client.c:24 msgid "I could not initialize Bonobo" msgstr "" #: ../samples/echo/echo-client.c:35 msgid "Could not create an instance of the sample echo component" msgstr "" #: ../samples/echo/echo-client.c:47 #, c-format msgid "An exception occurred '%s'" msgstr "" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Could not save configuration file.\n" msgstr "" #: ../utils/bonobo-activation-sysconf.c:84 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "" #: ../utils/bonobo-activation-sysconf.c:87 #, c-format msgid "Successfully wrote configuration file.\n" msgstr "" #: ../utils/bonobo-activation-sysconf.c:104 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "lo fichièr de configuracion es :\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:146 #, c-format msgid "%s already in configuration file\n" msgstr "" #: ../utils/bonobo-activation-sysconf.c:166 #, c-format msgid "there is not a properly structured configuration file\n" msgstr "" #: ../utils/bonobo-activation-sysconf.c:237 #, c-format msgid "Bonobo-activation configuration file contains:\n" msgstr "" #: ../utils/bonobo-activation-sysconf.c:267 msgid "Directory to remove from configuration file" msgstr "" #: ../utils/bonobo-activation-sysconf.c:267 #: ../utils/bonobo-activation-sysconf.c:269 msgid "PATH" msgstr "CAMIN" #: ../utils/bonobo-activation-sysconf.c:269 msgid "Directory to add to configuration file" msgstr "" #: ../utils/bonobo-activation-sysconf.c:271 msgid "Display directories in configuration file" msgstr "" #: ../utils/bonobo-activation-sysconf.c:273 msgid "Display path to configuration file" msgstr "" libbonobo-2.32.1/po/da.po0000664000076400007640000004251411447711412012051 00000000000000# Danish translation of libbonobo. # Copyright (C) 1999-2007 Free Software Foundation, Inc. # Keld Simonsen , 2001. # Kjartan Maraas , 1999-2001. # Ole Laursen , 2002, 03, 04. # Martin Willemoes Hansen , 2005. # Kenneth Nielsen , 2007. # # Konventioner: # # child -> under- # moniker -> protokolhåndtering # storage -> lager # msgid "" msgstr "" "Project-Id-Version: libbonobo\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2010-09-19 17:41+0200\n" "PO-Revision-Date: 2010-09-19 17:25+0200\n" "Last-Translator: Kenneth Nielsen \n" "Language-Team: Danish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8-bit\n" #: ../activation-server/activation-context-corba.c:530 msgid "Couldn't find which child the server was listed in" msgstr "Kunne ikke finde ud af hvilken underproces serveren var opført hos" #: ../activation-server/activation-context-corba.c:822 msgid "Not a valid Activation ID" msgstr "Ikke en gyldig aktiverings-id" #: ../activation-server/activation-server-main.c:174 msgid "Directory to read .server files from" msgstr "Mappe som .server-filer læses fra" #: ../activation-server/activation-server-main.c:174 msgid "DIRECTORY" msgstr "Mappe" #: ../activation-server/activation-server-main.c:177 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "Virk som en ActivationContext (standard er kun som et ObjectDirectory)" #: ../activation-server/activation-server-main.c:181 msgid "File descriptor to write IOR to" msgstr "Fildeskriptor som IOR skal skrives til" #: ../activation-server/activation-server-main.c:181 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:184 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "" "Registrér som brugerens aktiveringsserver uden at låse. Advarsel: Denne " "valgmulighed kan have farlige bivirkninger for brugerens kørerende session " "og bør kun bruges til fejlfindingsformål" #: ../activation-server/activation-server-main.c:192 msgid "Query expression to evaluate" msgstr "Søgeudtryk der skal evalueres" #: ../activation-server/activation-server-main.c:192 msgid "EXPRESSION" msgstr "UDTRYK" #: ../activation-server/activation-server-main.c:541 #: ../utils/bonobo-activation-sysconf.c:305 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "" "Kør \"%s --help\" for at se den fulde liste af tilgængelige " "kommandolinjetilvalg.\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "CORBA CosNaming-tjeneste." #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "Navnetjeneste" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "Bekendtgørelsestjeneste" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "Bekendtgørelsestjeneste for aktivering" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "" "Vi kan endnu ikke behandle aktivering af shlib-objekter i en fjernproces" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "Konfigurationsfilen til Bonobo-aktivering blev ikke indlæst korrekt. Tjek " "venligst om den er gyldig i: %s" #: ../activation-server/object-directory-load.c:102 msgid "a NULL iid is not valid" msgstr "en nul-IID er ugyldig" #: ../activation-server/object-directory-load.c:106 #, c-format msgid "iid %s has a NULL type" msgstr "IID %s har en NULL-type" #: ../activation-server/object-directory-load.c:110 #, c-format msgid "iid %s has a NULL location" msgstr "IID %s har en NULL-placering" #: ../activation-server/object-directory-load.c:119 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "ugyldigt tegn '%c' i IID '%s'" #: ../activation-server/object-directory-load.c:349 #, c-format msgid "Property '%s' has no value" msgstr "Egenskaben '%s' har ingen værdi" #: ../activation-server/object-directory-load.c:583 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "Kunne ikke fortolke ugyldig udformet XML-dokument %s" #: ../activation-server/object-directory-load.c:629 #, c-format msgid "Trying dir %s" msgstr "Forsøger mappe %s" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "Underproces gav ikke en fejlbesked, ukendt fejl er opstået" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "Det mislykkedes at læse fra underproces: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, c-format msgid "EOF from child process\n" msgstr "EOF fra underproces\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:438 msgid "Couldn't spawn a new process" msgstr "Kunne ikke oprette en ny proces" #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "File descriptor to print IOR on" msgstr "Fildeskriptor som IOR skal skrives til" #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:399 msgid "IID to activate" msgstr "IID som skal aktiveres" #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Prevent registering of server with OAF" msgstr "Forhindr registrering af tjener hos OAF" #: ../bonobo-activation/bonobo-activation-init.c:409 msgid "Bonobo Activation options:" msgstr "Bonobo-aktiveringstilvalg:" #: ../bonobo-activation/bonobo-activation-init.c:410 msgid "Show Bonobo Activation options" msgstr "Vis bonobo-aktiveringstilvalg" #: ../bonobo-activation/bonobo-activation-init.c:518 msgid "Bonobo activation options" msgstr "Bonobo-aktiveringstilvalg" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "g_module_open af '%s' mislykkedes med '%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "Kan ikke finde symbolet Bonobo_Plugin_info i '%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "Fabrikken '%s' returnerede NIL for '%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Delt bibliotek '%s' indeholdt ikke '%s'" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "Navn" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "Program-unikt navn" #: ../bonobo/bonobo-object.c:929 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:929 msgid "Custom CORBA POA" msgstr "Brugerdefineret CORBA POA" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "En ikke-understøttet handling blev forsøgt udført" # RETMIG: suboptimalt - bør undersøges nærmere #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "IO-fejl" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "Ugyldig parameterværdi" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "Objekt ikke fundet" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "Syntaksfejl i objektbeskrivelse" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "Det mislykkedes at aktivere objekt fra fabrik" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "Ingen rettigheder til at tilgå strøm" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "En ikke-understøttet strøm-handling blev forsøgt udført" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "IO-fejl på strøm" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "IO-fejl på lagring" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "Navnet eksisterer allerede i lageret" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "Objekt ikke fundet i lageret" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "Ingen rettigheder til at udføre operation på lageret" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "En ikke-understøttet lagringshandling blev forsøgt udført" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "Objekt er ikke en strøm" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "Objekt er ikke et lager" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "Lageret er tomt" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "forkert udformet XML-beskrivelse af brugergrænseflade" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "ugyldig sti til XML-element for brugergrænseflade" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "den forespurgte grænsefladeegenskab eksisterede ikke" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "Ukendt kommando eller udsagnsord" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "Kommandoen er ufølsom" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "forkert datatype" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "strøm ikke fundet" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "egenskab ikke fundet" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "egenskaben har en ugyldig type" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "egenskaben er skrivebeskyttet" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "fejl i undersystemet for konfigurationsdatabasen" #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "Grænseflade til protokolhåndtering kan ikke findes" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "Tidsafbrud for aktivering af protokolhåndtering" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "Syntaksfejl i protokolhåndtering" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "Protokolhåndtering har et ukendt protokolpræfiks" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "Fejl i fejltjekning; ingen undtagelse" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "Generel fejl under aktivering uden beskrivelse" # "extend" går vist nok på at et alias kan resultere i en længere streng # (i så fald skulle det betyde noget i retning af "udfolde") - # imidlertid er den betydning vist overflødig her #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s'" msgstr "Kunne ikke finde '%s'" #: ../bonobo/bonobo-moniker-util.c:247 msgid "Failed to activate object" msgstr "Det mislykkedes at aktivere objekt" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "Undtagelse ved aktivering af '%s'" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "Det mislykkedes at aktivere '%s'" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "HTTP-protokolhåndtering" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "ORB IOR-protokolhåndtering" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "Fabrik til standardprotokolhåndtering" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "generel aktiviseringsprotokolhåndtering til Oaf" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "generel forespørgselsprotokolhåndtering til Oaf" # RETMIG: klodset #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "generel fabrik-'new'-protokolhåndtering" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "generel elementprotokolhåndtering" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "strøm MonikerExtender" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Bonobo-ekkoserverfabrik" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Bonobo-ekkoserver-eksempelprogram" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Ekkokomponent" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Ekkokomponentfabrik" #: ../samples/echo/echo-client.c:24 msgid "I could not initialize Bonobo" msgstr "Kunne ikke klargøre Bonobo" #: ../samples/echo/echo-client.c:35 msgid "Could not create an instance of the sample echo component" msgstr "Kunne ikke oprette en instans af eksempelekkokomponenten" #: ../samples/echo/echo-client.c:47 #, c-format msgid "An exception occurred '%s'" msgstr "En undtagelse opstod '%s'" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Could not save configuration file.\n" msgstr "Kunne ikke gemme konfigurationsfil.\n" #: ../utils/bonobo-activation-sysconf.c:84 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "Sikr dig venligst at du har rettigheder til at skrive til '%s'.\n" #: ../utils/bonobo-activation-sysconf.c:87 #, c-format msgid "Successfully wrote configuration file.\n" msgstr "Skrev konfigurationsfil.\n" #: ../utils/bonobo-activation-sysconf.c:104 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "konfigurationsfil er:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:146 #, c-format msgid "%s already in configuration file\n" msgstr "%s er allerede i konfigurationsfil\n" #: ../utils/bonobo-activation-sysconf.c:166 #, c-format msgid "there is not a properly structured configuration file\n" msgstr "der er ikke en korrekt struktureret konfigurationsfil\n" #: ../utils/bonobo-activation-sysconf.c:237 #, c-format msgid "Bonobo-activation configuration file contains:\n" msgstr "Bonobo-aktiverings-konfigurationsfilen indeholder:\n" #: ../utils/bonobo-activation-sysconf.c:267 msgid "Directory to remove from configuration file" msgstr "Mappe som skal fjernes fra konfigurationsfil" #: ../utils/bonobo-activation-sysconf.c:267 #: ../utils/bonobo-activation-sysconf.c:269 msgid "PATH" msgstr "STI" #: ../utils/bonobo-activation-sysconf.c:269 msgid "Directory to add to configuration file" msgstr "Mappe som skal tilføjes til konfigurationsfil" #: ../utils/bonobo-activation-sysconf.c:271 msgid "Display directories in configuration file" msgstr "Vis mapper i konfigurationsfil" #: ../utils/bonobo-activation-sysconf.c:273 msgid "Display path to configuration file" msgstr "Vis sti til konfigurationsfil" #~ msgid "Bonobo Activation" #~ msgstr "Bonobo-aktivering" #~ msgid "Could not initialize Bonobo" #~ msgstr "Kunne ikke klargøre Bonobo" #~ msgid "Race condition activating server '%s'" #~ msgstr "Racebetingelser ved aktivering af serveren '%s'" #~ msgid "directory path" #~ msgstr "sti til mappe" #~ msgid "Child received signal %u (%s)" #~ msgstr "Underproces modtog signal %u (%s)" #~ msgid "Unknown non-exit error (status is %u)" #~ msgstr "Ukendt ikke-afslutningsfejl (status er %u)" #~ msgid "bonobo-activation failed to set process group of %s: %s\n" #~ msgstr "" #~ "Det lykkedes ikke bonobo-activation at sætte procesgruppen for %s: %s\n" #~ msgid "Failed to execute %s: %d (%s)\n" #~ msgstr "Det mislykkedes at udføre %s: %d (%s)\n" #~ msgid "Too many alias levels for a locale, may indicate a loop" #~ msgstr "For mange aliasniveauer for en region, kan indikere en løkke" #~ msgid "No server corresponding to your query" #~ msgstr "Ingen server svarer til forespørgslen" #~ msgid "Query failed: " #~ msgstr "Forespørgsel mislykkedes: " #~ msgid "Activation failed: " #~ msgstr "Aktivering mislykkedes: " #~ msgid "Could not parse AID" #~ msgstr "Kunne ikke fortolke AID" #~ msgid "Could not parse context: " #~ msgstr "Kunne ikke fortolke kontekst: " #~ msgid "Could not activate server: " #~ msgstr "Kunne ikke aktivere server: " #~ msgid "Domain of ObjectDirectory" #~ msgstr "Domæne for ObjectDirectory" #~ msgid "DOMAIN" #~ msgstr "DOMÆNE" #~ msgid "Object directory to use when registering servers" #~ msgstr "Objektkatalog som skal bruges ved registrering af tjenere" libbonobo-2.32.1/po/ne.po0000644000076400007640000005071611373604303012066 00000000000000# translation of libbonobo.HEAD.ne.po to Nepali # This file is distributed under the same license as the libbonobo package. # Pawan Chitrakar . # # Shiva Prasad Pokharel , 2005. # Nabin Gautam , 2007. msgid "" msgstr "" "Project-Id-Version: libbonobo.HEAD.ne\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2010-04-21 13:19+0200\n" "PO-Revision-Date: 2007-12-11 11:34+0545\n" "Last-Translator: Nabin Gautam \n" "Language-Team: Nepali \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.11.4\n" "Plural-Forms: nplurals=2; plural=n !=1\n" #: ../activation-server/activation-context-corba.c:530 msgid "Couldn't find which child the server was listed in" msgstr "कुन चाइल्ड सर्भर सूचीकृत गरिएको थियो फेला पार्न सकेन" #: ../activation-server/activation-context-corba.c:822 msgid "Not a valid Activation ID" msgstr "मान्य सक्रिय आईडी होइन" #: ../activation-server/activation-server-main.c:176 msgid "Directory to read .server files from" msgstr " .server फाइलबाट पढिने डाइरेक्टरी" #: ../activation-server/activation-server-main.c:176 msgid "DIRECTORY" msgstr "डाइरेक्टरी" #: ../activation-server/activation-server-main.c:179 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "सक्रिय सन्दर्भका रूपमा सेवा प्रदान गर्दछ (पूर्वनिर्धारित वस्तु डाइरेक्टरी मात्र हो)" #: ../activation-server/activation-server-main.c:183 msgid "File descriptor to write IOR to" msgstr "IOR मा लेखिने फाइल वर्णनकर्ता" #: ../activation-server/activation-server-main.c:183 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "FD" msgstr "एफडी" #: ../activation-server/activation-server-main.c:186 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "" "ताल्चा नलगाइकन प्रयोगकर्ताको सक्रिय सर्भरका रूपमा दर्ता गर्नुहोस् । चेतावनी: यस विकल्पले " "प्रयोगकर्ताको चलिरहेको सत्र स्थायित्वमा खतरनाक प्रभाव पार्न सक्छ र त्रुटिमोचन उद्धेश्यका " "लागि मात्र प्रयोग गर्नुपर्दछ" #: ../activation-server/activation-server-main.c:194 msgid "Query expression to evaluate" msgstr "मूल्याङ्कनका लागि क्वेरी अभिव्यक्ति" #: ../activation-server/activation-server-main.c:194 msgid "EXPRESSION" msgstr "अभिव्यक्ति" #: ../activation-server/activation-server-main.c:547 #: ../utils/bonobo-activation-sysconf.c:305 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "उपलब्ध आदेश लाइन विकल्पको पूरा सूची हेर्न '%s --मद्दत' चलाउनुहोस् ।\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "CORBA CosNaming सेवा ।" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "नाम सेवा" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "सूचना सेवा" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "सक्रियताका लागि सूचना सेवा" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "हामीले अझै पनि टाढाको प्रक्रियामा सक्रिय स्लिब वस्तु ह्यान्डल गर्दैनौ" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "बोनोबो सक्रिय गर्ने कन्फिगरेसन फाइल सफलतापूर्वक पढिएको थिएन । कृपया यो: %s मा मान्य " "भएको जाँच गर्नुहोस्" #: ../activation-server/object-directory-load.c:102 msgid "a NULL iid is not valid" msgstr "NULL iid मान्य छैन" #: ../activation-server/object-directory-load.c:106 #, c-format msgid "iid %s has a NULL type" msgstr "iid %s मा NULL प्रकार छ" #: ../activation-server/object-directory-load.c:110 #, c-format msgid "iid %s has a NULL location" msgstr "iid %s सँग NULL स्थान छ" #: ../activation-server/object-directory-load.c:119 #, fuzzy, c-format msgid "invalid character '%c' in iid '%s'" msgstr "iid '%s' मा अमान्य क्यारेक्टर '%c'" #: ../activation-server/object-directory-load.c:349 #, c-format msgid "Property '%s' has no value" msgstr "गुण '%s' को मान छैन" #: ../activation-server/object-directory-load.c:583 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "गलत रुपको एक्सएमएल (XML) कागजात %s पदवर्णन गर्न सकेन" #: ../activation-server/object-directory-load.c:629 #, c-format msgid "Trying dir %s" msgstr "डाइरेक्टरी %s प्रयास गर्दैछ" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "शाखा प्रक्रियाले त्रुटि सन्देश दिएन, अज्ञात असफलता उत्पन्न भयो" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "चाइल्ड प्रक्रियाबाट पढ्न असफल: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, c-format msgid "EOF from child process\n" msgstr "चाइल्ड प्रक्रियाबाट EOF\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:438 msgid "Couldn't spawn a new process" msgstr "नयाँ प्रक्रिया उत्पन्न गर्न सकेन" #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "File descriptor to print IOR on" msgstr "IOR मुद्रण गरिने फाइल वर्णनकर्ता" #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:399 msgid "IID to activate" msgstr "सक्रिय पारिने IID" #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Prevent registering of server with OAF" msgstr "ओएएफ (OAF) भएको सर्भरको दर्ता निषेध गर्नुहोस्" #: ../bonobo-activation/bonobo-activation-init.c:409 msgid "Bonobo Activation options:" msgstr "बोनोबो सक्रियता विकल्प:" #: ../bonobo-activation/bonobo-activation-init.c:410 msgid "Show Bonobo Activation options" msgstr "बोनोबो सक्रियताको विकल्प देखाउनुहोस्" #: ../bonobo-activation/bonobo-activation-init.c:518 msgid "Bonobo activation options" msgstr "बोनोबो सक्रियता विकल्प" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "`%s' को g_module_open `%s' सँग असफल भयो" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "`%s' मा प्रतीक Bonobo_Plugin_info फेला पार्न सकिँदैन" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "कारखाना `%s' ले `%s' का लागि NIL फर्कायो" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "स्लिब `%s' ले `%s' समाविष्ट गरेन" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "नाम" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "अनुप्रयोगको अद्वितीय नाम" #: ../bonobo/bonobo-object.c:929 msgid "POA" msgstr "पीओए (POA)" #: ../bonobo/bonobo-object.c:929 msgid "Custom CORBA POA" msgstr "अनुकूल CORBA POA" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "एउटा समर्थन नभएको काम गर्ने कोसिस गरिएको थियो" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "IO त्रुटि" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "अमान्य तर्क मान" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "वस्तु फेला परेन" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "वस्तु वर्णनमा वाक्य संरचना त्रुटि" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "कारखानाबाट वस्तु सक्रिय पार्न सकिँदैन" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "स्ट्रिम पहुँच गर्न अनुमति छैन" # º bonïbo/bonobo-exceðtion.ã:180 #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "एउटा असमर्थित स्ट्रिम कार्य प्रयास गरिएको थियो" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "स्ट्रिममा IO त्रुटि" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "मौज्दातमा IO त्रुटि" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "मौज्दातमा नाम पहिला नै अवस्थित छ" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "मौज्दातमा वस्तु फेला परेन" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "मौज्दातमा कार्य गर्न अनुमति छैन" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "असमर्थित मौज्दात कार्य प्रयास गरिएको थियो" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "वस्तु एउटा स्ट्रिम होइन" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "वस्तु मौज्दात होइन" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "मौज्दात खाली छैन" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "विकृत प्रयोगकर्ता इन्टरफेस एक्सएमएल (XML) वर्णन" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "एक्सएमएल (XML) प्रयोगकर्ता इन्टरफेस तत्वमा अमान्य मार्ग" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "अनुरोध गरिएको यूआई (UI) अवस्थित थिएन" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "अज्ञात आदेश वा क्रिया" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "आदेश असम्बेदनशिल छ" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "गलत डेटा प्रकार" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "स्ट्रिम फेला परेन" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "विशेषता फेला परेन" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "विशेषता अमान्य प्रकारको छ" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "विशेषता पढ्नका लागि मात्र हो" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "कन्फिग डेटाबेस ब्याकइन्ड असफल भयो" #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "मोनिकर इन्टरफेस फेला पार्न सकिँदैन" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "मोनिकर सक्रियता समय समाप्त" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "मोनिकरमा वाक्य संरचना त्रुटि" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "मोनिकरसँग एउटा अज्ञात मोनिकर उपसर्ग छ" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "त्रुटि जाँच त्रुटि; अपवाद होइन" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "वर्णन नभएको साधारण सक्रियता त्रुटि" #: ../bonobo/bonobo-moniker.c:342 #, fuzzy, c-format msgid "Failed to resolve, or extend '%s'" msgstr " '%s फेरि समाधान गर्न वा विस्तार गर्न असफल" #: ../bonobo/bonobo-moniker-util.c:247 msgid "Failed to activate object" msgstr "वस्तुलाई सक्रिय पार्न असफल" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr " '%s' सक्रिय पार्ने अपवाद" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr " '%s' सक्रिय पार्न असफल" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "एचटीटीपी मोनिकर" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "ORB IOR ह्यान्डलिङ मोनिकर" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "मानक मोनिकर कारखाना" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "जेनेरिक Oaf सक्रिय मोनिकर" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "जेनेरिक Oaf क्वेरी मोनिकर" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "जेनेरिक कारखाना 'नयाँ' मोनिकर" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "जेनेरिक सामाग्री मोनिकर" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "स्ट्रिम मोनिकर विस्तारक" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "बोनोबो प्रतिध्वनि सर्भर कारखाना" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "बोनोबो प्रतिध्वनि सर्भर नमूना कार्यक्रम" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "प्रतिध्वनि अवयव" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "प्रतिध्वनि अवयव कारखाना" #: ../samples/echo/echo-client.c:24 msgid "I could not initialize Bonobo" msgstr "म बोनोबो सुरु गर्न सक्दिन" #: ../samples/echo/echo-client.c:35 msgid "Could not create an instance of the sample echo component" msgstr "नमूना प्रतिध्वनि अवयवको दृष्टान्त सिर्जना गर्न सकेन" #: ../samples/echo/echo-client.c:47 #, c-format msgid "An exception occurred '%s'" msgstr "एउटा अपवाद उत्पन्न भयो '%s'" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Could not save configuration file.\n" msgstr "कन्फिगरेसन फाइल बचत गर्न सकेन ।\n" #: ../utils/bonobo-activation-sysconf.c:84 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "कृपया, तपाईँलाई '%s' मा लेख्ने अनुमति भएको निश्चित गर्नुहोस् ।\n" #: ../utils/bonobo-activation-sysconf.c:87 #, c-format msgid "Successfully wrote configuration file.\n" msgstr "कन्फिगरेसन फाइल सफलतापूर्वक लेखियो ।\n" #: ../utils/bonobo-activation-sysconf.c:104 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "कन्फिगरेसन फाइल:\n" " %s हो\n" #: ../utils/bonobo-activation-sysconf.c:146 #, c-format msgid "%s already in configuration file\n" msgstr "%s पहिला नै कन्फिगरेसन फाइलमा छ\n" #: ../utils/bonobo-activation-sysconf.c:166 #, c-format msgid "there is not a properly structured configuration file\n" msgstr "त्यहाँ कन्फिगरेसन फाइल संरचनाको गुण छैन\n" #: ../utils/bonobo-activation-sysconf.c:237 #, c-format msgid "Bonobo-activation configuration file contains:\n" msgstr "बोनोबो सक्रियता कन्फिगरेसन फाइलले समाविष्ट गर्दछ:\n" #: ../utils/bonobo-activation-sysconf.c:267 msgid "Directory to remove from configuration file" msgstr "कन्फिगरेसन फाइलबाट हटाइने डाइरेक्टरी" #: ../utils/bonobo-activation-sysconf.c:267 #: ../utils/bonobo-activation-sysconf.c:269 msgid "PATH" msgstr "मार्ग" #: ../utils/bonobo-activation-sysconf.c:269 msgid "Directory to add to configuration file" msgstr "कन्फिगरेसन फाइलमा थपिने डाइरेक्टरी" #: ../utils/bonobo-activation-sysconf.c:271 msgid "Display directories in configuration file" msgstr "कन्फिगरेसन फाइलमा डाइरेक्टरी प्रदर्शन गर्नुहोस्" #: ../utils/bonobo-activation-sysconf.c:273 msgid "Display path to configuration file" msgstr "कन्फिगरेसन फाइलमा मार्ग प्रदर्शन गर्नुहोस्" libbonobo-2.32.1/po/ga.po0000644000076400007640000002761711173072711012057 00000000000000# Irish language translation of oaf # Copyright (C) 2000,2004 Free Software Foundation, Inc. # Alastair McKinstry , 2000. msgid "" msgstr "" "Project-Id-Version: libbonobo HEAD\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2006-10-22 16:55+0200\n" "PO-Revision-Date: 2004-03-16 20:00-0000\n" "Last-Translator: Alastair McKinstry \n" "Language-Team: Irish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../activation-server/activation-context-corba.c:523 msgid "Couldn't find which child the server was listed in" msgstr "" #: ../activation-server/activation-context-corba.c:815 msgid "Not a valid Activation ID" msgstr "" #: ../activation-server/activation-server-main.c:162 msgid "Directory to read .server files from" msgstr "" #: ../activation-server/activation-server-main.c:162 msgid "DIRECTORY" msgstr "FILLTEÁN" #: ../activation-server/activation-server-main.c:165 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "" #: ../activation-server/activation-server-main.c:169 msgid "File descriptor to write IOR to" msgstr "" #: ../activation-server/activation-server-main.c:169 #: ../bonobo-activation/bonobo-activation-init.c:355 #: ../bonobo-activation/bonobo-activation-init.c:365 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:172 msgid "" "Register as the users' activation server without locking [!] for debugging" msgstr "" #: ../activation-server/activation-server-main.c:177 msgid "Query expression to evaluate" msgstr "" #: ../activation-server/activation-server-main.c:177 msgid "EXPRESSION" msgstr "" #: ../activation-server/activation-server-main.c:426 #: ../utils/bonobo-activation-sysconf.c:304 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "Serbhís CosNaming do CORBA." #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "Seirbhís Ainmithe" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" #: ../activation-server/object-directory-load.c:101 msgid "a NULL iid is not valid" msgstr "" #: ../activation-server/object-directory-load.c:105 #, c-format msgid "iid %s has a NULL type" msgstr "" #: ../activation-server/object-directory-load.c:109 #, c-format msgid "iid %s has a NULL location" msgstr "" #: ../activation-server/object-directory-load.c:118 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "caractar neabhailí '%c' san iid '%s'" #: ../activation-server/object-directory-load.c:348 #, c-format msgid "Property '%s' has no value" msgstr "Níl aon luach san caillíocht '%s'" #: ../activation-server/object-directory-load.c:580 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "" #: ../activation-server/object-directory-load.c:627 #, c-format msgid "Trying dir %s" msgstr "" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "Teip ag leámh as an procéis leanbh: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, fuzzy msgid "EOF from child process\n" msgstr "Teip ag leámh as an procéis leanbh: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:435 msgid "Couldn't spawn a new process" msgstr "" #: ../bonobo-activation/bonobo-activation-init.c:355 #: ../bonobo-activation/bonobo-activation-init.c:365 msgid "File descriptor to print IOR on" msgstr "" #: ../bonobo-activation/bonobo-activation-init.c:357 #: ../bonobo-activation/bonobo-activation-init.c:367 msgid "IID to activate" msgstr "" #: ../bonobo-activation/bonobo-activation-init.c:359 #: ../bonobo-activation/bonobo-activation-init.c:369 msgid "Prevent registering of server with OAF" msgstr "" #: ../bonobo-activation/bonobo-activation-init.c:403 msgid "Bonobo Activation" msgstr "" #: ../bonobo-activation/bonobo-activation-init.c:404 msgid "Show Bonobo Activation options" msgstr "" #: ../bonobo-activation/bonobo-activation-init.c:512 msgid "Bonobo activation options" msgstr "" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "Ainm" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "" #: ../bonobo/bonobo-object.c:923 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:923 msgid "Custom CORBA POA" msgstr "CORBA POA Féindheanamh" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "Earraidh IO" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "" #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "" #: ../bonobo/bonobo-generic-factory.h:79 ../bonobo/bonobo-generic-factory.h:83 msgid "Could not initialize Bonobo" msgstr "" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s" msgstr "" #: ../bonobo/bonobo-moniker-util.c:246 msgid "Failed to activate object" msgstr "" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "" #: ../samples/echo/echo-client.c:22 msgid "I could not initialize Bonobo" msgstr "" #: ../samples/echo/echo-client.c:33 msgid "Could not create an instance of the sample echo component" msgstr "" #: ../samples/echo/echo-client.c:45 #, c-format msgid "An exception occurred '%s'" msgstr "" #: ../utils/bonobo-activation-sysconf.c:82 msgid "Could not save configuration file.\n" msgstr "" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "" #: ../utils/bonobo-activation-sysconf.c:86 msgid "Successfully wrote configuration file.\n" msgstr "" #: ../utils/bonobo-activation-sysconf.c:103 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" #: ../utils/bonobo-activation-sysconf.c:145 #, c-format msgid "%s already in configuration file\n" msgstr "" #: ../utils/bonobo-activation-sysconf.c:165 msgid "there is not a properly structured configuration file\n" msgstr "" #: ../utils/bonobo-activation-sysconf.c:236 msgid "Bonobo-activation configuration file contains:\n" msgstr "" #: ../utils/bonobo-activation-sysconf.c:266 msgid "Directory to remove from configuration file" msgstr "" #: ../utils/bonobo-activation-sysconf.c:266 #: ../utils/bonobo-activation-sysconf.c:268 msgid "PATH" msgstr "" #: ../utils/bonobo-activation-sysconf.c:268 msgid "Directory to add to configuration file" msgstr "" #: ../utils/bonobo-activation-sysconf.c:270 msgid "Display directories in configuration file" msgstr "" #: ../utils/bonobo-activation-sysconf.c:272 msgid "Display path to configuration file" msgstr "Taispeán slí do comhad cumraíocht" #~ msgid "Failed to execute %s: %d (%s)\n" #~ msgstr "Teip ag rith %s: %d (%s)\n" #~ msgid "directory path" #~ msgstr "slí fillteán" #~ msgid "Exec failed: %d (%s)\n" #~ msgstr "Teip ar 'Exec': %d (%s)\n" libbonobo-2.32.1/po/gu.po0000644000076400007640000005065611173072711012102 00000000000000# translation of libbonobo.HEAD.gu.po to Gujarati # Copyright (C) 2005, 2006, 2007 Free Software Foundation, Inc. # Ankit Patel , 2005, 2006. # Ankit Patel , 2006, 2007. msgid "" msgstr "" "Project-Id-Version: libbonobo.HEAD.gu\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-01-02 05:40+0000\n" "PO-Revision-Date: 2007-03-02 12:03+0530\n" "Last-Translator: Ankit Patel \n" "Language-Team: Gujarati \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.9.1\n" "Plural-Forms: nplurals=2; plural=(n!=1);\n\n" "\n" "\n" "\n" "\n" #: ../activation-server/activation-context-corba.c:523 msgid "Couldn't find which child the server was listed in" msgstr "સર્વરે આપેલી યાદીમાંથી ક્યો બાળક હતો તે શોધી શકાતો નથી" #: ../activation-server/activation-context-corba.c:815 msgid "Not a valid Activation ID" msgstr "યોગ્ય કાર્યશીલ ઓળખ નથી" #: ../activation-server/activation-server-main.c:163 msgid "Directory to read .server files from" msgstr ".સર્વર ફાઈલો માંથી વાંચવા માટેની ડિરેક્ટરી" #: ../activation-server/activation-server-main.c:163 msgid "DIRECTORY" msgstr "ડિરેક્ટરી" #: ../activation-server/activation-server-main.c:166 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "સર્વર કાર્યશીલ સંદર્ભ તરીકે (મૂળભૂત રીતે ફક્ત વસ્તુડિરેક્ટરી)" #: ../activation-server/activation-server-main.c:170 msgid "File descriptor to write IOR to" msgstr "IORમાં લખાણ માટેની ફાઈલ વર્ણનકર્તા" #: ../activation-server/activation-server-main.c:170 #: ../bonobo-activation/bonobo-activation-init.c:355 #: ../bonobo-activation/bonobo-activation-init.c:365 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:173 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "" "વપરાશકર્તાના સર્વર તરીકે તાળું માર્યા વિના રજીસ્ટર કરો. ચેતવણી: આ વિકલ્પને " "વપરાશકર્તાના ચાલી રહેલ સત્રની સુગમતા માટે ભયાનક આડ અસરો હોઈ શકે, અને તે માત્ર ડિબગીંગ " "હેતુઓ માટે જ વાપરી શકાશે" #: ../activation-server/activation-server-main.c:181 msgid "Query expression to evaluate" msgstr "શોધવા માટે પ્રશ્ર્ન વ્યક્ત કરવા" #: ../activation-server/activation-server-main.c:181 msgid "EXPRESSION" msgstr "સમીકરણ" #: ../activation-server/activation-server-main.c:430 #: ../utils/bonobo-activation-sysconf.c:304 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "ઉપલબ્ધ આદેશ વાક્ય વિકલ્પોની સંપૂર્ણ યાદી જોવા માટે '%s --help' ચલાવો.\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "CORBA CosNaming સેવા." #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "નામની સેવા" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "નોંધણીની સેવા" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "કાર્યશીલ માટે નોંધણીની સેવા" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "દૂરસ્ત પ્રક્રિયા માટે હજુ શ્લીબ વસ્તુઓને કાર્યશીલ કરવાની વ્યવસ્થા કરી શકાઈ નથી" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "બોનોબો રુપરેખાને કાર્યશીલ કરવાની ફાઈલ સફળતાથી વાંચી શકાઈ નહિ. મહેરબાની કરીને તપાસો " "કે તે યોગ્ય %sમાં છે" #: ../activation-server/object-directory-load.c:101 msgid "a NULL iid is not valid" msgstr "એક ખાલી iid યોગ્ય નથી" #: ../activation-server/object-directory-load.c:105 #, c-format msgid "iid %s has a NULL type" msgstr "iid %s નુ મૂલ્ય NULL પ્રકારનું છે" #: ../activation-server/object-directory-load.c:109 #, c-format msgid "iid %s has a NULL location" msgstr "iid %s માં એક NULLનુ સ્થાન છે" #: ../activation-server/object-directory-load.c:118 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "અયોગ્ય અક્ષર '%c' iid '%s' માં" #: ../activation-server/object-directory-load.c:348 #, c-format msgid "Property '%s' has no value" msgstr "ગુણધર્મ '%s'ની કોઈ કિંમત નથી" #: ../activation-server/object-directory-load.c:580 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "ખરાબ રીતે બનેલ XML દસ્તાવેજ %sનો પદચ્છેદ કરી શકાતો નથી" #: ../activation-server/object-directory-load.c:627 #, c-format msgid "Trying dir %s" msgstr "ડિરેક્ટરી %sનો પ્રયત્ન કરી રહ્યા છે" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "બાળ પ્રક્રિયાએ ભૂલ માટે કોઈ સંદેશ આપ્યો નથી, કોઈક અજાણી ભૂલ થઈ છે" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "બાળ પ્રક્રિયામાંથી વાંચવામાં નિષ્ફળ: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 msgid "EOF from child process\n" msgstr "બાળ પ્રક્રિયામાંથી EOF\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:435 msgid "Couldn't spawn a new process" msgstr "નવી પ્રક્રિયા પેદા કરી શક્યા નહિં" #: ../bonobo-activation/bonobo-activation-init.c:355 #: ../bonobo-activation/bonobo-activation-init.c:365 msgid "File descriptor to print IOR on" msgstr "IOR છાપવા માટેનુ ફાઈલ વર્ણનકર્તા" #: ../bonobo-activation/bonobo-activation-init.c:357 #: ../bonobo-activation/bonobo-activation-init.c:367 msgid "IID to activate" msgstr "કાર્યશીલ કરવાનુ IID" #: ../bonobo-activation/bonobo-activation-init.c:359 #: ../bonobo-activation/bonobo-activation-init.c:369 msgid "Prevent registering of server with OAF" msgstr "AOF ની સાથે સર્વર નોંધણી અટકાવે છે" #: ../bonobo-activation/bonobo-activation-init.c:403 msgid "Bonobo Activation options:" msgstr "બોનોબો સક્રિયકરણ વિકલ્પો:" #: ../bonobo-activation/bonobo-activation-init.c:404 msgid "Show Bonobo Activation options" msgstr "બોનોબો સક્રિયકરણ વિકલ્પો બતાવો" #: ../bonobo-activation/bonobo-activation-init.c:512 msgid "Bonobo activation options" msgstr "બોનોબો કાર્યશીલ કરવાના વિકલ્પો" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "`%s' નુ g_module_ope `%s' સાથે નિષ્ફળ" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "ચિહ્ન Bonobo_Plugin_info '%s'માં શોધી શકાયુ નહિ" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "`%s' ફેક્ટરી `%s' માટે NIL પાછુ આપે છે" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "'%s' Shlib '%s' ધરાવતુ નથી" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "નામ" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "કાર્યક્રમનુ અનન્ય નામ" #: ../bonobo/bonobo-object.c:923 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:923 msgid "Custom CORBA POA" msgstr "કસ્ટમ CORBA POA" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "એક અસમર્થિત ક્રિયા કરવાનો પ્રયાસ" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "IO ની ભૂલ" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "અયોગ્ય દલીલ મૂલ્ય" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "વસ્તુ મળતી નથી" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "વસ્તુના વર્ણનમાં વાક્યરચનાની ભૂલ" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "કારખાનાં માંથી વસ્તુ કાર્યરત કરી શકાતી નથી" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "સ્ટ્રીમ મેળવવાની પરવાનગી નથી" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "સ્ટ્રીમની બિનઆધારિત ક્રિયા કામમાં લેવાઈ હતી" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "સ્ટ્રીમ પર IO ની ભૂલ" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "ભંડાર પર IO ની ભૂલ" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "ભંડારમાં નામ પહેલેથી જ છે" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "ભંડારમાં વસ્તુ મળી નહિં" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "ભંડાર પર પ્રક્રિયા કરવાની પરવાનગી નથી" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "બિનઆધારિત ભંડારની ક્રિયા કામમાં લેવાઈ નથી" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "વસ્તુ એ સ્ટ્રીમ નથી" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "વસ્તુ એ ભંડાર નથી" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "ભંડાર ખાલી નથી" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "વ્યવસ્થિત ન બનેલું વપરાશકર્તાના ઈન્ટરફેસનું XML વર્ણન" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "XML વપરાશકર્તા ઈન્ટરફેસ વસ્તુ માટે અયોગ્ય રસ્તો છે" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "વિનંતિ કરાયેલ UI લક્ષણ અસ્તિત્વમાં જ નથી" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "અજાણ્યો આદેશ અથવા ક્રિયાપદ" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "આદેશ સમજુ છે" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "માહિતિનો પ્રકાર અયોગ્ય છે" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "સ્ટ્રીમ મળી નહિં" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "ગુણધર્મ મળ્યો નહિં" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "ગુણધર્મ અયોગ્ય પ્રકારનો છે" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "ગુણધર્મ માત્ર વાંચી શકાય એવો જ છે" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "રુપરેખીત પાછળનો ડેટાબેઝ નાશ પામ્યો " #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "મોનિકર ઈન્ટરફેસ શોધી શકાયો નહિં" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "મોનિકર સક્રિયકરણ સમય સમાપ્ત થયો" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "મોનિકર સાથે વાક્યરચનાની ભૂલ" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "મોનિકર પાસે અજાણ્યો મોનિકર પૂર્વગ છે" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "ભૂલ ચકાસાઈ રહી છે; કોઈ જ અપવાદ નહિં" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "વર્ણન વગર સામાન્ય સક્રિયકરણ ભૂલ" #: ../bonobo/bonobo-generic-factory.h:79 ../bonobo/bonobo-generic-factory.h:83 msgid "Could not initialize Bonobo" msgstr "બોનોબો શરુ કરી શકાતું નથી" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s" msgstr "'%s'ને ફરીથી ઉકેલવામાં અથવા વિસ્તારવામાં નિષ્ફળતા" #: ../bonobo/bonobo-moniker-util.c:246 msgid "Failed to activate object" msgstr "વસ્તુને કાર્યરત કરવામાં નિષ્ફળતા" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "'%s' ને કાર્યશીલ કરતી વખતે અપવાદ આવ્યો" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "'%s' ને કાર્યશીલ કરવામાં નિષ્ફળ" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "HTTP મોનિકર" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "ORB IOR ને સંભાળતું મોનિકર" # monikers/GNOME_VFS_Moniker_std.server.in.in.h:1 #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "પ્રમાણભૂત મોનિકર કારખાનું" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "સામાન્ય Oaf ક્રિયાશીલ મોનિકર" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "સામાન્ય Oaf શોધનાર મોનિકર" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "સામાન્ય કારખાનું 'નવું' મોનિકર" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "સામાન્ય વસ્તુ મોનિકર" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "સ્ટ્રીમ મોનિકરએક્સટેન્ડર" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "બોનાેબો ઈકો સર્વર કારખાનું" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "બોનાેબો ઈકો સર્વર નમૂનો કાર્યક્રમ" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "ઈકોના ભાગો" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "ઈકોના ભાગોનું કારખાનું" #: ../samples/echo/echo-client.c:22 msgid "I could not initialize Bonobo" msgstr "હું બોનોબો શરુ કરી શક્યો નહિ" #: ../samples/echo/echo-client.c:33 msgid "Could not create an instance of the sample echo component" msgstr "નમૂનાનાં ઈકોના ભાગો બનાવી શકાયા નહી" #: ../samples/echo/echo-client.c:45 #, c-format msgid "An exception occurred '%s'" msgstr "અપવાદ ઉદ્ભવ્યો '%s'" #: ../utils/bonobo-activation-sysconf.c:82 msgid "Could not save configuration file.\n" msgstr "રુપરેખા ફાઈલને સંગ્રહિત કરી શકાઈ નહિ.\n" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "મહેરબાની કરીને, ખાતરી કરો કે તમને '%s' માં લખવાની પરવાનગી છે. \n" #: ../utils/bonobo-activation-sysconf.c:86 msgid "Successfully wrote configuration file.\n" msgstr "રુપરેખા ફાઈલને સફળતાપૂર્વક લખાઈ છે.\n" #: ../utils/bonobo-activation-sysconf.c:103 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "રુપરેખાની ફાઈલ છે:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:145 #, c-format msgid "%s already in configuration file\n" msgstr "રુપરેખા ફાઈલમાં %s પહેલેથી જ હયાત છે\n" #: ../utils/bonobo-activation-sysconf.c:165 msgid "there is not a properly structured configuration file\n" msgstr "રુપરેખા ફાઈલનું બંદારણ યોગ્ય નથી\n" #: ../utils/bonobo-activation-sysconf.c:236 msgid "Bonobo-activation configuration file contains:\n" msgstr "બોનોબો-સક્રિયતા રુપરેખા ફાઈલનાં સમાવિષ્ટો:\n" #: ../utils/bonobo-activation-sysconf.c:266 msgid "Directory to remove from configuration file" msgstr "રુપરેખા ફાઈલમાંથી ડિરેક્ટરી રદ કરો" #: ../utils/bonobo-activation-sysconf.c:266 #: ../utils/bonobo-activation-sysconf.c:268 msgid "PATH" msgstr "PATH" #: ../utils/bonobo-activation-sysconf.c:268 msgid "Directory to add to configuration file" msgstr "ડિરેક્ટરી કે જેમાં રુપરેખા ફાઈલ જોડવાની છે" #: ../utils/bonobo-activation-sysconf.c:270 msgid "Display directories in configuration file" msgstr "રુપરેખા ફાઈલમાં દર્શાવાયેલી ડિરેક્ટરી" #: ../utils/bonobo-activation-sysconf.c:272 msgid "Display path to configuration file" msgstr "રુપરેખા ફાઈલનો દર્શાવાયેલો માર્ગ" libbonobo-2.32.1/po/ug.po0000664000076400007640000004442111546203545012102 00000000000000# Uyghur translation for libbonobo. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # Gheyret Kenji,2010. # Sahran , 2010. # Zeper , 2010. # dolkun731 # msgid "" msgstr "" "Project-Id-Version: libbonobo\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?" "product=bonobo&component=libbonobo\n" "POT-Creation-Date: 2011-01-02 20:02+0000\n" "PO-Revision-Date: 2010-12-08 13:34+0800\n" "Last-Translator: dolkun731 \n" "Language-Team: Uyghur Computer Science Association \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../activation-server/activation-context-corba.c:530 msgid "Couldn't find which child the server was listed in" msgstr "" "بۇ مۇلازىمەت قايسى بالا جەريان تەرىپىدىن تىزىملىتىلغانلىقىنى بىلگىلى بولمىدى" #: ../activation-server/activation-context-corba.c:822 msgid "Not a valid Activation ID" msgstr "ئىناۋەتلىك ئاكتىپلاش ID سى ئەمەس" #: ../activation-server/activation-server-main.c:174 msgid "Directory to read .server files from" msgstr ".server ھۆججىتىنى ئوقۇشتا ئىشلىتىدىغان مۇندەرىجە" #: ../activation-server/activation-server-main.c:174 msgid "DIRECTORY" msgstr "DIRECTORY" #: ../activation-server/activation-server-main.c:177 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "ActivationContext دەك بولىدۇ(كۆڭۈلدىكى قىممىتى ObjectDirectory )" #: ../activation-server/activation-server-main.c:181 msgid "File descriptor to write IOR to" msgstr "IOR غا يېزىلىدىغان ھۆججەت چۈشەندۈرۈش بەلگىسى" #: ../activation-server/activation-server-main.c:181 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:184 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "" "قۇلۇپلانمايدىغان ئىشلەتكۈچى ئاكتىپ مۇلازىمېتىر قىلىپ خەتلەندى. " "ئاگاھلاندۇرۇش: بۇ تاللانما ئىشلەتكۈچى ئىجرا قىلىۋاتقان ئەڭگىمەگە مۇقىملىق " "جەھەتتە خەتەر يەتكۈزۈشى مۇمكىن، سازلاش مەقسىتىدىلا ئىشلىتىلىدۇ." #: ../activation-server/activation-server-main.c:192 msgid "Query expression to evaluate" msgstr "باھالىنىدىغان سۈرۈشتۈرۈش ئىپادىسى" #: ../activation-server/activation-server-main.c:192 msgid "EXPRESSION" msgstr "EXPRESSION" #: ../activation-server/activation-server-main.c:541 #: ../utils/bonobo-activation-sysconf.c:305 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "" "'%s --help' ئىجرا قىلىنسا بۇيرۇق قۇرى تاللانمىسىنىڭ تولۇق تىزىملىكى " "كۆرۈنىدۇ.\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "CORBA CosNaming مۇلازىمىتى." #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "ئات مۇلازىمىتى" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "ئۇقتۇرۇش مۇلازىمىتى" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "ئاكتىپلىنىدىغان ئۇقتۇرۇش مۇلازىمىتى" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "" "بىز يىراق مەشغۇلاتتىكى shilib نەڭىنى ئاكتىپلايدىغان ئىشنى تېخى قىلالمايمىز" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "Bonobo ئاكتىپلاش سەپلىمە ھۆججىتىنى ئوقۇش مۇۋەپپەقىيەتلىك بولمىدى. ئۇنىڭ %s " "نىڭ ئىچىدە ئىناۋەتلىك ئىكەنلىكىنى تەكشۈرۈڭ" #: ../activation-server/object-directory-load.c:102 msgid "a NULL iid is not valid" msgstr "بىر NULL iid ئىناۋەتسىز" #: ../activation-server/object-directory-load.c:106 #, c-format msgid "iid %s has a NULL type" msgstr "iid %s دە NULL تىپ بار" #: ../activation-server/object-directory-load.c:110 #, c-format msgid "iid %s has a NULL location" msgstr "iid %s دە بىر NULL ئورۇن بار" #: ../activation-server/object-directory-load.c:119 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "iid «%2$s» دىكى ھەرپ «%1$c» ئىناۋەتسىز" #: ../activation-server/object-directory-load.c:349 #, c-format msgid "Property '%s' has no value" msgstr "خاسلىق «%s» قىممىتى يوق" #: ../activation-server/object-directory-load.c:583 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "ئۆلچەمسىز XML ھۆججىتى %s نى بىر تەرەپ قىلغىلى بولمىدى" #: ../activation-server/object-directory-load.c:629 #, c-format msgid "Trying dir %s" msgstr "مۇندەرىجە %s نى سىناۋاتىدۇ" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "" "بالا process ھېچقانداق خاتالىق ئۇچۇرى چىقارمىدى، نامەلۇم خاتالىق يۈز بەردى" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "بالا process تىن ئوقۇش مەغلۇپ بولدى: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, c-format msgid "EOF from child process\n" msgstr "بالا process تىن EOF كەلدى\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:438 msgid "Couldn't spawn a new process" msgstr "يېڭى جەريان قۇرۇغىلى بولمىدى" #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "File descriptor to print IOR on" msgstr "IOR غا بېسىلىدىغان ھۆججەت چۈشەندۈرۈش بەلگىسى" #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:399 msgid "IID to activate" msgstr "ئاكتىپلايدىغان IID" #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Prevent registering of server with OAF" msgstr "مۇلازىمېتىرنى OAF بىلەن خەتلىتىشنى توس" #: ../bonobo-activation/bonobo-activation-init.c:409 msgid "Bonobo Activation options:" msgstr "Bonobo ئاكتىپلاش تاللانمىلىرى:" #: ../bonobo-activation/bonobo-activation-init.c:410 msgid "Show Bonobo Activation options" msgstr "Bonobo نىڭ ئاكتىپلاش تىزىملىكىنى كۆرسەت" #: ../bonobo-activation/bonobo-activation-init.c:518 msgid "Bonobo activation options" msgstr "Bonobo ئاكتىپلاش تاللانمىلىرى" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "«%s» نىڭدىكى g_module_open «%s» نىڭ سەۋەبىدىن مەغلۇپ بولدى" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "«%s» دىن Bonobo_Plugin_info بەلگىسىنى تاپقىلى بولمىدى" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "`%s' دېگەن زاۋۇت `%s' غا NIL قايتۇردى" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Shlib «%s» ئىچىدە «%s» يوق" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "ئاتى" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "پروگراممىنىڭ بىردىنبىر ئاتى" #: ../bonobo/bonobo-object.c:929 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:929 msgid "Custom CORBA POA" msgstr "ئىختىيارىي CORBA POA" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "ئىشلەتكىلى بولمايدىغان مەشغۇلات ئېلىپ بېرىلدى" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "IO خاتالىقى" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "پارامېتىر قىممىتى ئىناۋەتسىز" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "نەڭ تېپىلمىدى" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "نەڭ چۈشەندۈرۈشىدە گرامماتىكا خاتالىقى بار" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "factory(زاۋۇت) دىكى نەڭنى ئاكتىپلىغىلى بولمىدى" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "ئېقىمنى زىيارەت قىلىش ھوقۇقى يوق" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "ئىشلەتكىلى بولمايدىغان ئېقىم مەھسۇلاتى ئېلىپ بېرىلدى" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "ئېقىمدا IO خاتالىقى بار" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "ساقلىغۇچتا IO خاتالىقى بار" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "ساقلىغۇچتا(storage) بۇ ئات مەۋجۇت" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "ساقلىغۇچ(storage)تىن نەڭ تېپىلمىدى" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "ساقلىغۇچ(storage) قا مەشغۇلات قىلىش ھوقۇقى يوق" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "ئىشلەتكىلى بولمايدىغان ساقلىغۇچ(storage) مەھسۇلاتى ئېلىپ بېرىلدى" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "نەڭ ئېقىم ئەمەس" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "نەڭ ساقلىغۇچ(storage) ئەمەس" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "ساقلىغۇچ(storage) قۇرۇق ئەمەس" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "فورماتى توغرا بولمىغان كۆرۈنمەيۈز XML چۈشەندۈرۈشى" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "كۆرۈنمەيۈز XML ئېلېمېنتىنىڭ يولى ئىناۋەتسىز" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "ئىلتىماس قىلىنغان كۆرۈنمەيۈز(UI) خاسلىقى مەۋجۇت ئەمەس" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "نامەلۇم بۇيرۇق ياكى پېئىل" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "بۇيرۇق سەزگۈر ئەمەس" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "سانلىق-مەلۇمات تىپى توغرا ئەمەس" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "ئېقىم تېپىلمىدى" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "خاسلىق تېپىلمىدى" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "خاسلىقنىڭ تىپى ئىناۋەتسىز" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "خاسلىقنى «ئوقۇش»قىلە بولىدۇ" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "تەڭشەك ساندانىنىڭ ئاخىرقى ئۇچى مەغلۇپ بولدى " #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "Moniker ئارايۈزىنى تاپقىلى بولمىدى" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "Moniker نى ئاكتىپلاش ۋاقتى قەرەلدىن ئېشىپ كەتتى" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "Moniker دا گرامماتىكىلىق خاتالىق بار" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "Moniker دا بىر نامەلۇم ئالدى قوشۇلغۇچى بار" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "خاتالىقنى تەكشۈرۈۋاتقاندا خاتالىق كۆرۈلدى؛ exception يوق" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "چۈشەندۈرۈشى يوق ئادەتتىكى ئاكتىپلاش خاتالىقى" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s'" msgstr "'%s' نى يېشىش ياكى يېيىش مەغلۇپ بولدى" #: ../bonobo/bonobo-moniker-util.c:247 msgid "Failed to activate object" msgstr "نەڭنى ئاكتىپلاش مەغلۇپ بولدى" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "«%s» نى ئاكتىپلاۋاتقاندا بىنورماللىق يۈز بەردى" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "'%s' نى ئاكتىپلاش مەغلۇپ بولدى" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "HTTP Moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "ORB IOR باشقۇرۇش moniker ئى" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "ئۆلچەملىك Moniker زاۋۇتى" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "ئادەتتىكى Oaf ئاكتىپلاش moniker ئى" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "ئادەتتىكى Oaf سۈرۈشتۈرۈش moniker ئى" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "ئادەتتىكى زاۋۇت «يېڭى» moniker ئى" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "ئادەتتىكى تۈر moniker ئى" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "ئېقىم MonikerExtender" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Bonobo Echo مۇلازىمېتىر زاۋۇتى" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Bonobo Echo مۇلازىمېتىر ئۈلگە پروگراممىسى" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Echo بۆلەك" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Echo بۆلەك زاۋۇتى" #: ../samples/echo/echo-client.c:24 msgid "I could not initialize Bonobo" msgstr "Bonobo نى دەسلەپلەشتۈرەلمىدىم" #: ../samples/echo/echo-client.c:35 msgid "Could not create an instance of the sample echo component" msgstr "ئۈلگە Echo بۆلەكنىڭ مىسالىنى قۇرالمىدى" #: ../samples/echo/echo-client.c:47 #, c-format msgid "An exception occurred '%s'" msgstr "بىنورماللىق كۆرۈلدى «%s»" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Could not save configuration file.\n" msgstr "سەپلىمە ھۆججەتنى ساقلىيالمىدى.\n" #: ../utils/bonobo-activation-sysconf.c:84 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "«%s» نىڭغا يېزىش ھوقۇقىڭىز بارمۇ جەزملەڭ.\n" #: ../utils/bonobo-activation-sysconf.c:87 #, c-format msgid "Successfully wrote configuration file.\n" msgstr "سەپلىمە ھۆججەت مۇۋەپپەقىيەتلىك يېزىلدى.\n" #: ../utils/bonobo-activation-sysconf.c:104 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "سەپلىمە ھۆججەت:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:146 #, c-format msgid "%s already in configuration file\n" msgstr "%s سەپلىمە ھۆججەتنىڭ ئىچىدە بار\n" #: ../utils/bonobo-activation-sysconf.c:166 #, c-format msgid "there is not a properly structured configuration file\n" msgstr "سەپلىمە ھۆججەتنىڭ قۇرۇلمىسى مۇۋاپىق ئەمەس\n" #: ../utils/bonobo-activation-sysconf.c:237 #, c-format msgid "Bonobo-activation configuration file contains:\n" msgstr "Bonobo-activation سەپلىمە ھۆججەتتە تۆۋەندىكىلەر بار:\n" #: ../utils/bonobo-activation-sysconf.c:267 msgid "Directory to remove from configuration file" msgstr "سەپلىمە ھۆججەتتىن ئۆچۈرىدىغان مۇندەرىجە" #: ../utils/bonobo-activation-sysconf.c:267 #: ../utils/bonobo-activation-sysconf.c:269 msgid "PATH" msgstr "PATH" #: ../utils/bonobo-activation-sysconf.c:269 msgid "Directory to add to configuration file" msgstr "سەپلىمە ھۆججەتكە قوشىدىغان مۇندەرىجە" #: ../utils/bonobo-activation-sysconf.c:271 msgid "Display directories in configuration file" msgstr "سەپلىمە ھۆججەتتىكى مۇندەرىجىلەرنى كۆرسەت" #: ../utils/bonobo-activation-sysconf.c:273 msgid "Display path to configuration file" msgstr "سەپلىمە ھۆججەت يولىنى كۆرسەت" libbonobo-2.32.1/po/ms.po0000644000076400007640000003720711173072711012103 00000000000000# libbonobo Bahasa Melayu. # Copyright (C) 2002 Free Software Foundation, Inc., Projek Gabai. # 1. Mohamad Afifi Omar (App) , 2002. # 2. Hasbullah Bin Pit , 2002-2004. # msgid "" msgstr "" "Project-Id-Version: libbonobo\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2006-10-22 16:55+0200\n" "PO-Revision-Date: 2003-01-01 21:24+0800\n" "Last-Translator: Hasbullah Bin Pit \n" "Language-Team: Bahasa Melayu \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../activation-server/activation-context-corba.c:523 msgid "Couldn't find which child the server was listed in" msgstr "Tak dapat mencari anak yang mana yang pelayan disenaraikan" #: ../activation-server/activation-context-corba.c:815 msgid "Not a valid Activation ID" msgstr "BUkan satu ID pengaktifan" #: ../activation-server/activation-server-main.c:162 msgid "Directory to read .server files from" msgstr "Direktori untuk dibaca oleh fail .server" #: ../activation-server/activation-server-main.c:162 msgid "DIRECTORY" msgstr "DIREKTORI" #: ../activation-server/activation-server-main.c:165 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "" "Dilayan sebagai ActivationContext (default ialah ObjectDirectory sahaja)" #: ../activation-server/activation-server-main.c:169 msgid "File descriptor to write IOR to" msgstr "Keterangan fail untuk ditulis oleh IOR" #: ../activation-server/activation-server-main.c:169 #: ../bonobo-activation/bonobo-activation-init.c:355 #: ../bonobo-activation/bonobo-activation-init.c:365 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:172 msgid "" "Register as the users' activation server without locking [!] for debugging" msgstr "" #: ../activation-server/activation-server-main.c:177 msgid "Query expression to evaluate" msgstr "Kueri penyataan untuk dinilai" #: ../activation-server/activation-server-main.c:177 msgid "EXPRESSION" msgstr "UNGKAPAN" #: ../activation-server/activation-server-main.c:426 #: ../utils/bonobo-activation-sysconf.c:304 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "Servis CosNaming CORBA." #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "Nama servis" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "Servis Pemakluman" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "Servis pemakluman bagi pengaktifan" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "Kami tidak mengendali pengaktifan objek shlib pada proses remote lagi" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "Fail konfigurasi Pengaktifan Bonobo tidak dapat dibaca dengan jayanya. Sila " "periksa samada ianya sah pada : %s" #: ../activation-server/object-directory-load.c:101 msgid "a NULL iid is not valid" msgstr "iid NULL adalah tidak sah" #: ../activation-server/object-directory-load.c:105 #, c-format msgid "iid %s has a NULL type" msgstr "iid %s mempunyai jenis NULL" #: ../activation-server/object-directory-load.c:109 #, c-format msgid "iid %s has a NULL location" msgstr "iid %s mempunyai lokasi NULL" #: ../activation-server/object-directory-load.c:118 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "Aksara tidak sah '%c' pada iid '%s'" #: ../activation-server/object-directory-load.c:348 #, c-format msgid "Property '%s' has no value" msgstr "Ciri-ciri '%s' tidak mempunyai nilai" #: ../activation-server/object-directory-load.c:580 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "Tak dapat menghantar dokumen XML bentuk teruk %s" #: ../activation-server/object-directory-load.c:627 #, c-format msgid "Trying dir %s" msgstr "Mencuba dir %s" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "" "Proses anak tidak memberikan mesej rakat, kegagalan tidak diketahui berlaku" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "Gagal membaca daripada proses anak: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, fuzzy msgid "EOF from child process\n" msgstr "Gagal membaca daripada proses anak: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:435 #, fuzzy msgid "Couldn't spawn a new process" msgstr "Tak dapat sepit proses baru" #: ../bonobo-activation/bonobo-activation-init.c:355 #: ../bonobo-activation/bonobo-activation-init.c:365 msgid "File descriptor to print IOR on" msgstr "Keterangan fail untuk pencetak IOR pada" #: ../bonobo-activation/bonobo-activation-init.c:357 #: ../bonobo-activation/bonobo-activation-init.c:367 msgid "IID to activate" msgstr "IID untuk diaktifkan" #: ../bonobo-activation/bonobo-activation-init.c:359 #: ../bonobo-activation/bonobo-activation-init.c:369 msgid "Prevent registering of server with OAF" msgstr "Elak mendaftar pelayan denga OAF" #: ../bonobo-activation/bonobo-activation-init.c:403 #, fuzzy msgid "Bonobo Activation" msgstr "Opsyen pengaktifan Bonobo" #: ../bonobo-activation/bonobo-activation-init.c:404 #, fuzzy msgid "Show Bonobo Activation options" msgstr "Opsyen pengaktifan Bonobo" #: ../bonobo-activation/bonobo-activation-init.c:512 msgid "Bonobo activation options" msgstr "Opsyen pengaktifan Bonobo" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "g_module_open bagi `%s' gagal dengan %s" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "Tidak menjumpai simbol Bonobo_Plugin_info pada '%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "Kilang `%s' memberikan NIL untuk '%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Shlib `%s' tidak mengandungi `%s'" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "Nama" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "Nama unik aplikasi" #: ../bonobo/bonobo-object.c:923 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:923 msgid "Custom CORBA POA" msgstr "POA CORBA tersendiri" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "Berlaku satu cubaan aksi yang tidak disokong " #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "Ralat IO" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "Nilai hujah yang tak sah" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "Objek tidak dijumpai" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "Ralat sintaks pada keterangan objek" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "Gagal menghidupkan objek dari kilang" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "Tiada keizinan untuk mengakses aliran" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "Satu cubaan aksi aliran yang tidak disokong" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "Ralat IO dalam aliran" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "Ralat IO pada simpanan" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "Nama telah wujud pada storan" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "Objek tidak dijumpai pada storan" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "Tiada keizinan untuk melakukan operasi pada storan" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "Satu cubaan aksi storan yang tidak disokong" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "Objek ini bukanlah satu aliran" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "Objek ini bukanlah satu storan" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "Storan ini tidak kosong" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "keterangan antaramuka XML yang tersalahaturan" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "laluan yang tidak sah ke unsur antaramuka pengguna XML " #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "Atribut UI yang diminta tidak wujud" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "Arahan atau pernyataan yang tidak diketahui" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "Arahan ini tidak sensitif" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "jenis data yang salah" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "aliran tidak dijumpai" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "ciri-ciri tidak dijumpai" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "ciri-ciri mempunyai jenis yang tak sah" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "property hanya untuk dibaca sahaja" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "pengkalan data konfigurasi gagal" #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "Antaramuka moniker tidak dijumpai" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "Penjanaan moniker melebihi hadmasa" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "Ralat sintaks di moniker" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "Moniker mempunyai prefiks yang salah" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "Ralat memeriksa rakat; tiada penyecualian" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "Ralat umum penjanaan tanpa keterangan" #: ../bonobo/bonobo-generic-factory.h:79 ../bonobo/bonobo-generic-factory.h:83 msgid "Could not initialize Bonobo" msgstr "Gagal menjanakan Bonobo" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s" msgstr "Gagal resolv atau menlanjutkan '%s'" #: ../bonobo/bonobo-moniker-util.c:246 msgid "Failed to activate object" msgstr "Harap maaf tuan, gagal menghidupkan objek dari kilang" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "Pengecualian mengaktifkan '%s'" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "Gagal mengaktifkan '%s'" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "HTTP Moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "Moniker pengendali ORM IOR" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "Kilang Moniker piawai" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "Moniker penjanaan Oaf generic" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "moniker kueri Oaf generik" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "moniker 'baru' kilang generik" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "moniker item generik" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "MonikerExtender aliran" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Kilang pelayan Echo Bonobo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Contoh program pelayan Echo Bonobo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Komponen Echo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Kilang komponen Echo" #: ../samples/echo/echo-client.c:22 msgid "I could not initialize Bonobo" msgstr "Tak dpaat menginitialisasikan Bonobo" #: ../samples/echo/echo-client.c:33 msgid "Could not create an instance of the sample echo component" msgstr "Tak dapat mencipta instance bagi contoh komponen Echo" #: ../samples/echo/echo-client.c:45 #, c-format msgid "An exception occurred '%s'" msgstr "Pengecualian berlaki '%s'" #: ../utils/bonobo-activation-sysconf.c:82 msgid "Could not save configuration file.\n" msgstr "Tak dapat menyimpan fail konfigurasi.\n" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "Sila pastikan anda mempunyai keizinan untuk penulis pada '%s'.\n" #: ../utils/bonobo-activation-sysconf.c:86 msgid "Successfully wrote configuration file.\n" msgstr "Berjaya menulis fail konfigurasi.\n" #: ../utils/bonobo-activation-sysconf.c:103 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "Fail konfigurasi adalah:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:145 #, c-format msgid "%s already in configuration file\n" msgstr "%s tersedia ada pada fail konfigurasi\n" #: ../utils/bonobo-activation-sysconf.c:165 msgid "there is not a properly structured configuration file\n" msgstr "Terdapat fail konfigurasi yang tidak mempunyai struktur yang betul\n" #: ../utils/bonobo-activation-sysconf.c:236 msgid "Bonobo-activation configuration file contains:\n" msgstr "Fail konfigurasi Bonobo-activation mengandungi:\n" #: ../utils/bonobo-activation-sysconf.c:266 msgid "Directory to remove from configuration file" msgstr "Direktori untuk dibuang daripada fail konfigurasi" #: ../utils/bonobo-activation-sysconf.c:266 #: ../utils/bonobo-activation-sysconf.c:268 msgid "PATH" msgstr "" #: ../utils/bonobo-activation-sysconf.c:268 msgid "Directory to add to configuration file" msgstr "Direktori untuk ditambah pada fail konfigurasi" #: ../utils/bonobo-activation-sysconf.c:270 msgid "Display directories in configuration file" msgstr "Papar direktori pada fail konfigurasi" #: ../utils/bonobo-activation-sysconf.c:272 msgid "Display path to configuration file" msgstr "Papar laluan ke fail konfigurasi" #~ msgid "Race condition activating server '%s'" #~ msgstr "Keadaan race mengaktifkan pelaran '%s'" #~ msgid "Child received signal %u (%s)" #~ msgstr "Anak menerima isyarat %u (%s)" #~ msgid "Unknown non-exit error (status is %u)" #~ msgstr "Rakat non-exit tidak diketahu (status ialah %u)" #~ msgid "bonobo-activation failed to set process group of %s: %s\n" #~ msgstr "bonobo-activation gagal menetapkan kumpulan proses bagi %s: %s\n" #~ msgid "Failed to execute %s: %d (%s)\n" #~ msgstr "Gagal melaksanakan %s: %d (%s)\n" #~ msgid "Too many alias levels for a locale, may indicate a loop" #~ msgstr "" #~ "Terlalu banyak aras alias untuk satu lokaliti, mungkin ia menunjukkan " #~ "gelung" #~ msgid "directory path" #~ msgstr "laluan direktori" libbonobo-2.32.1/po/mk.po0000644000076400007640000004543411173072711012074 00000000000000# translation of libbonobo.HEAD.po to Macedonian # translation of libbonobo.HEAD.mk.po to # translation of libbonobo.HEAD.mk.po to # This file is distributed under the same license as the PACKAGE package. # Copyright (C) 2005 THE PACKAGE'S COPYRIGHT HOLDER. # # Ivan Stojmirov , 2002. # Maratonec , 2002,2003. # Vladislav Bidikov , 2003. # Arangel Angov , 2004, 2006. # Арангел Ангов , 2005. # Jovan Naumovski , 2006. # Arangel Angov , 2007. msgid "" msgstr "" "Project-Id-Version: libbonobo.HEAD\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-01-02 05:40+0000\n" "PO-Revision-Date: 2007-03-06 10:42+0100\n" "Last-Translator: Arangel Angov \n" "Language-Team: Macedonian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.11.4\n" #: ../activation-server/activation-context-corba.c:523 msgid "Couldn't find which child the server was listed in" msgstr "Не можам да пронајдам во кој подпроцес се наоѓа листата на серверот" #: ../activation-server/activation-context-corba.c:815 msgid "Not a valid Activation ID" msgstr "Невалидено ID за активирање" #: ../activation-server/activation-server-main.c:163 msgid "Directory to read .server files from" msgstr "Директориум за вчитување на .server датотеките од" #: ../activation-server/activation-server-main.c:163 msgid "DIRECTORY" msgstr "Директориум" #: ../activation-server/activation-server-main.c:166 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "" "Опслужи го како ActivationContext (преддефинирано е само како " "ObjectDirectory)" #: ../activation-server/activation-server-main.c:170 msgid "File descriptor to write IOR to" msgstr "Опишувачот на датотека за пишување на IOR" #: ../activation-server/activation-server-main.c:170 #: ../bonobo-activation/bonobo-activation-init.c:355 #: ../bonobo-activation/bonobo-activation-init.c:365 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:173 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "" "Регистрирај се како корисничкиот сервер за активација без заклучување. " "Внимание, оваа опција може да има опасни последици на стабилноста на " "корисничката сесија која се извршува и треба да се користи само за " "дебагирање." #: ../activation-server/activation-server-main.c:181 msgid "Query expression to evaluate" msgstr "Прашален израз за проценка" #: ../activation-server/activation-server-main.c:181 msgid "EXPRESSION" msgstr "ИЗРАЗ" #: ../activation-server/activation-server-main.c:430 #: ../utils/bonobo-activation-sysconf.c:304 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "" "Извршете '%s --help' за да ја видите целосната листа на достапни команди и " "опции.\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "CORBA CosNaming сервис." #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "Име на сервисот" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "Сервис за известување" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "Сервис за известување за активирање" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "Сеуште не ги активираме рачно shlib објектите во далечните процеси" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "Конфигурациската датотека за активирање на Bonobo не е прочитана успешно. Ве " "молам проверете ја валидноста во: %s" #: ../activation-server/object-directory-load.c:101 msgid "a NULL iid is not valid" msgstr "NULL iid не е валиден" #: ../activation-server/object-directory-load.c:105 #, c-format msgid "iid %s has a NULL type" msgstr "iid %s има NULL тип" #: ../activation-server/object-directory-load.c:109 #, c-format msgid "iid %s has a NULL location" msgstr "iid %s има NULL локација" #: ../activation-server/object-directory-load.c:118 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "неважечки карактер '%c' во iid '%s'" #: ../activation-server/object-directory-load.c:348 #, c-format msgid "Property '%s' has no value" msgstr "Параметарот '%s' нема вредност" #: ../activation-server/object-directory-load.c:580 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "Не можам да парсирам лошо оштетен XML document %s" #: ../activation-server/object-directory-load.c:627 #, c-format msgid "Trying dir %s" msgstr "Пробувам во директориумот %s" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "Подпроцесот не даде порака за грешка. Се случи непознат прекин" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "Не успеав да прочитам од подпроцесот %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 msgid "EOF from child process\n" msgstr "EOF од подпроцесот\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:435 msgid "Couldn't spawn a new process" msgstr "Не можев да создадам нов процес" #: ../bonobo-activation/bonobo-activation-init.c:355 #: ../bonobo-activation/bonobo-activation-init.c:365 msgid "File descriptor to print IOR on" msgstr "Пронајди опишувач за печатење на IOR на" #: ../bonobo-activation/bonobo-activation-init.c:357 #: ../bonobo-activation/bonobo-activation-init.c:367 msgid "IID to activate" msgstr "IID за активирање" #: ../bonobo-activation/bonobo-activation-init.c:359 #: ../bonobo-activation/bonobo-activation-init.c:369 msgid "Prevent registering of server with OAF" msgstr "Спречи регистрација на серверот со OAF" #: ../bonobo-activation/bonobo-activation-init.c:403 msgid "Bonobo Activation options:" msgstr "Опции за активирање на Bonobo:" #: ../bonobo-activation/bonobo-activation-init.c:404 msgid "Show Bonobo Activation options" msgstr "Покажи опции за активирање на Bonobo" #: ../bonobo-activation/bonobo-activation-init.c:512 msgid "Bonobo activation options" msgstr "Опции за активирање на Bonobo" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "g_module_open на `%s' неуспешно со `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "Не можам да најдам симбол Bonobo_Plugin_info во `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "Фабричкиот `%s' враќа NIL за `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Shlib `%s' не содржи `%s'" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "Име" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "Уникатно име на апликацијата" #: ../bonobo/bonobo-object.c:923 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:923 msgid "Custom CORBA POA" msgstr "Сопствена CORBA POA" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "Пробавте да извршите неподдржано дејство" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "IO грешка" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "Невалиден аргумент на вредноста" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "Објектот не е пронајден" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "Синтаксна грешка во описот на објектот" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "Не можам да го активирам објектот од фабриката" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "Немате пермисии да пристапите до протокот" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "Испробавте проточна акција што не е подржана" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "IO грешка на протокот" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "IO грешка на складот" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "Името веќе постои во складот" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "Објектот не е пронајден во складот" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "Немате пермисии да правите операции во складот" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "Испроба акција за складирање што не е подржана" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "Објектот не е проток" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "Објектот не е склад" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "Складот не е празен" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "лошо формирана корисничка XML инструкција" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "невалиден пат до XML корисничкиот интерфејс елемент" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "побараниот КИ атрибут не постои" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "Непозната команда" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "Командата е нечувствителна" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "неточна вид на податоци" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "протокот не е најден" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "не е најдено својство" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "својството има невалиден тип" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "својството е само за читање" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "конфигурирањето на бекендот на базата на податоци е неуспешно" #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "Не можам да го најдам моникер интерфејсот" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "Времето за активирање на моникер помина" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "Синтаксна грешка во моникер" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "Моникер има непознат моникер префикс" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "Грешка при проверување на грешки; без исклучок" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "Општа грешка при активирање, без опис" #: ../bonobo/bonobo-generic-factory.h:79 ../bonobo/bonobo-generic-factory.h:83 msgid "Could not initialize Bonobo" msgstr "Не можам да го иницијализирам Bonobo" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s" msgstr "Неуспешно разрешување или проширување на '%s" #: ../bonobo/bonobo-moniker-util.c:246 msgid "Failed to activate object" msgstr "Не успеав да го активирам проектот" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "Исклучок при активирање на '%s" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "Не успеав да го активирам '%s" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "HTTP моникер" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "Моникер за ракување со ORB IOR" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "Стандардна фабрика за моникер" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "општ моникер за активирање на Oaf" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "општ моникер за Oaf прашалник" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "нов општ моникер" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "моникер за општи предмети" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "продолжувач за проток на моникер" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Bonobo ехо сервер фабрика" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Bonobo ехо сервер пример програма" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Ехо компонента" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Фабрика за ехо компоненти" #: ../samples/echo/echo-client.c:22 msgid "I could not initialize Bonobo" msgstr "Не можам да го иницијализирам Bonobo" #: ../samples/echo/echo-client.c:33 msgid "Could not create an instance of the sample echo component" msgstr "Не можам да креирам нова копија од примерот на излезна компонента" #: ../samples/echo/echo-client.c:45 #, c-format msgid "An exception occurred '%s'" msgstr "Се појави исклучок '%s'" #: ../utils/bonobo-activation-sysconf.c:82 msgid "Could not save configuration file.\n" msgstr "Не можам да ја зачувам конфигурациската датотека.\n" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "Ве молам проверете дали имате пермисии за запишување во '%s'.\n" #: ../utils/bonobo-activation-sysconf.c:86 msgid "Successfully wrote configuration file.\n" msgstr "Успешно запишав во конфигурациската датотека.\n" #: ../utils/bonobo-activation-sysconf.c:103 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "Конфигурациската датотека е:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:145 #, c-format msgid "%s already in configuration file\n" msgstr "%s веќе е во конфигурациската датотека\n" #: ../utils/bonobo-activation-sysconf.c:165 msgid "there is not a properly structured configuration file\n" msgstr "нема соодветно структурирана конфигурациска датотека\n" #: ../utils/bonobo-activation-sysconf.c:236 msgid "Bonobo-activation configuration file contains:\n" msgstr "Конфигурациската датотека за Bonobo-activation содржи:\n" #: ../utils/bonobo-activation-sysconf.c:266 msgid "Directory to remove from configuration file" msgstr "Директориумот да се отстрани од конфигурациската датотека" #: ../utils/bonobo-activation-sysconf.c:266 #: ../utils/bonobo-activation-sysconf.c:268 msgid "PATH" msgstr "ПАТЕКА" #: ../utils/bonobo-activation-sysconf.c:268 msgid "Directory to add to configuration file" msgstr "Директориумот да се додаде во конфигурациската датотека" #: ../utils/bonobo-activation-sysconf.c:270 msgid "Display directories in configuration file" msgstr "Прикажи ги директориумите во конфигурациската датотека" #: ../utils/bonobo-activation-sysconf.c:272 msgid "Display path to configuration file" msgstr "Прикажи ја патеката до конфигурациската датотека" libbonobo-2.32.1/po/te.po0000644000076400007640000005205111173072711012066 00000000000000# translation of te.po to Telugu # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Krishna Babu K , 2008. msgid "" msgstr "" "Project-Id-Version: te\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2008-09-15 09:47+0000\n" "PO-Revision-Date: 2008-09-15 17:52+0530\n" "Last-Translator: Krishna Babu K \n" "Language-Team: Telugu \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.11.4\n" "Plural-Forms: nplurals=2; plural=(n!=1);\n\n" "\n" #: ../activation-server/activation-context-corba.c:530 msgid "Couldn't find which child the server was listed in" msgstr "ఏ శిశువును సేవిక జాబితా చేసివుందో కనుగొనలేకపోయింది" #: ../activation-server/activation-context-corba.c:822 msgid "Not a valid Activation ID" msgstr "చెల్లునటువంచి క్రియాశీలపరచు ID కాదు" #: ../activation-server/activation-server-main.c:166 msgid "Directory to read .server files from" msgstr ".server దస్త్రములు చదువుటకు సంచయం" #: ../activation-server/activation-server-main.c:166 msgid "DIRECTORY" msgstr "DIRECTORY" #: ../activation-server/activation-server-main.c:169 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "ActivationContext లాగా సేవచేయుము (అప్రమేయం ObjectDirectory మాత్రమే)" #: ../activation-server/activation-server-main.c:173 msgid "File descriptor to write IOR to" msgstr "IORను వ్రాయుటకు ఫైల్ డిస్క్రిప్టార్" #: ../activation-server/activation-server-main.c:173 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:176 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "" "లాకింగ్‌అవ్వకుండా వినియోగదారియొక్క క్రియాశీల సేవికలాగా నమోదవ్వు. హెచ్చరిక: ఈ " "ఐచ్చికము వినియోగదారియొక్క నడుస్తున్న సెషన్‌పైన భయంకరమైన పార్శ్వ ప్రభావాలను " "కలిగివుండగలదు, మరియు డీబగ్గింగ్ ప్రయోజనాలకు మాత్రమే వుపయోగించాలి" #: ../activation-server/activation-server-main.c:184 msgid "Query expression to evaluate" msgstr "కనిపెట్టుటకు క్వరీ సమీకరణం" #: ../activation-server/activation-server-main.c:184 msgid "EXPRESSION" msgstr "EXPRESSION" #: ../activation-server/activation-server-main.c:472 #: ../utils/bonobo-activation-sysconf.c:305 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "అందుబాటులోవున్న ఆదేశ వరుసయొక్క పూర్తి జాబితా చూచుటకొరకు '%s --help' యివ్వుము.\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "CORBA CosNaming సేవ." #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "నామపు సేవ" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "నోటీసు సేవ" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "క్రియాశీలత కొరకు నోటీసు సేవ" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "దూరస్థ కార్యక్రమమునందు shlib ఆబ్జక్టులను క్రియాశీలపరచుట మనము యింకా సంభాలించుటలేదు" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "Bonobo క్రియాశీల ఆకృతీకరణ దస్త్రము సమర్ధవంతంగా చదువబడలేదు. దయచేసి, అది దీనినందు " "చెల్లునదేమో పరిశీలించండి: %s" #: ../activation-server/object-directory-load.c:102 msgid "a NULL iid is not valid" msgstr "NULL iid చెల్లునది కాదు" #: ../activation-server/object-directory-load.c:106 #, c-format msgid "iid %s has a NULL type" msgstr "iid %s NULL రకమును కలిగివుంది" #: ../activation-server/object-directory-load.c:110 #, c-format msgid "iid %s has a NULL location" msgstr "iid %s NULL స్థానమును కలిగివుంది" #: ../activation-server/object-directory-load.c:119 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "'%c' అక్షరము iid '%s' నందు చెల్లదు" #: ../activation-server/object-directory-load.c:349 #, c-format msgid "Property '%s' has no value" msgstr "లక్షణము '%s' యెటువంటి విలువను కలిగిలేదు" #: ../activation-server/object-directory-load.c:583 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "తప్పుగా రూపీకరించబడివున్న XML పత్రము %sను పార్శచేయలేదు" #: ../activation-server/object-directory-load.c:629 #, c-format msgid "Trying dir %s" msgstr "సంచయం %sను ప్రయత్నిస్తోంది" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "శిశువు కార్యక్రమము దోష సందేశాన్ని యివ్వలేదు, తెలియని వైఫల్యం సంభవించింది" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "ఈశిశువు కార్యక్రమమునుండి చదువుటకు విఫలమైంది: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, c-format msgid "EOF from child process\n" msgstr "శిశువు కార్యక్రమమునుండి EOF\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:438 msgid "Couldn't spawn a new process" msgstr "కొత్త కార్యక్రమమను స్పాన్ చేయలేకపోయింది" #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "File descriptor to print IOR on" msgstr "IORను ముద్రించుటకు ఫైల్ డిస్క్రిప్టార్" #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:399 msgid "IID to activate" msgstr "క్రియాశీల పరచుటకు IID" #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Prevent registering of server with OAF" msgstr "OAFతో సేవికయొక్క నమోదీకరణను నిరోదించుము" #: ../bonobo-activation/bonobo-activation-init.c:409 msgid "Bonobo Activation options:" msgstr "బోనోబో క్రియాశీలపరచు ఐచ్చికాలు:" #: ../bonobo-activation/bonobo-activation-init.c:410 msgid "Show Bonobo Activation options" msgstr "బోనోబో క్రియాశీలపరచు ఐచ్చికాలను చూపుము" #: ../bonobo-activation/bonobo-activation-init.c:518 msgid "Bonobo activation options" msgstr "బోనోబో క్రియాశీలపరచు ఐచ్చికాలు" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "`%2$s'తో `%1$s'యొక్క g_module_open విఫలమైంది" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "`%s'నందు Bonobo_Plugin_info చిహ్నమును కనుగొనలేకపోయింది" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "`%2$s' కొరకు `%1$s' NIL తిరిగియిచ్చింది" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Shlib `%s' దీనిని కలిగిలేదు `%s' " #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "నామము" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "అనువర్తనము ఏక నామము" #: ../bonobo/bonobo-object.c:929 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:929 msgid "Custom CORBA POA" msgstr "మలచిన CORBA POA" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "మద్దతీయని చర్య ప్రయత్నించబడింది" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "IO దోషము" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "చెల్లని ఆర్గుమెంట్ విలువ" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "ఆబ్జక్టు కనబడలేదు" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "ఆబ్జక్టు వివరణనందు సిన్టాక్స్‍ దోషము" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "ఫాక్టరీనుండి ఆబ్జక్టును క్రియాశీలపరచలేము" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "స్ట్రీమ్‌ను యాక్సిస్ చేయుటకు అనుమతిలేదు" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "ఒక మద్దతీయని స్ట్రీమ్ చర్య ప్రయత్నించబడింది" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "స్ట్రీమ్‌పైన IO దోషము" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "నిల్వపైన IO దోషము" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "నిల్వనందు నామము యిప్పటికేవుంది" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "నిల్వనందు ఆబ్జక్టు కనబడలేదు" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "నిల్వపైన ఆపరేషన్ జరుపుటకు అనుమతిలేదు" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "మద్దతీయని నిల్వ చర్య ప్రయత్నించబడింది" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "ఆబ్జక్టు స్ట్రీమ్ కాదు" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "ఆబ్జక్టు నిల్వకాదు" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "ఆబ్జక్టు ఖాళీగాలేదు" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "తప్పుగానడుస్తున్న వినియోగదారి ఇంటర్‌ఫైస్ XML వివరణ" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "XML వినియోగదారి ఇంటర్‌ఫేస్ మూలకంకు చెల్లని పాత్" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "అభ్యర్దించబడిన UI యాట్రిబ్యూట్ లేదు" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "తెలియని ఆదేశం లేదా క్రియ" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "ఆదేశము సున్నితమైనదీకాదు" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "సరికాని డాటా టైపు" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "స్ట్రీమ్ కనబడలేదు" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "లక్షణం కనబడలేదు" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "లక్షణం చెల్లని రకమును కలిగివుంది" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "లక్షణం చదువుటకు మాత్రమే" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "డాటాబేస్ బ్యాక్‌యెండ్ ఆకృతీకరణ విఫలమైంది" #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "మానికర్ ఇంటర్‌ఫేస్ కనబడలేదు" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "మానికర్ క్రియాశీలపు సమయం ముగిసినది" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "మానికర్ లోపల సిన్టాక్స్‍ దోషము" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "మానికర్ తెలియని మానికర్ ప్రిఫిక్స్‍‌ను కలిగివుంది" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "దోష పరిశీలన దోషము; ఆక్షేపణ లేదు" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "ఎటువంటి వివరణ లేకుండా సాదారణ క్రియాశీలపు దోషము" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s" msgstr "పరిష్కరించుటకు విఫలమైంది, లేదా '%sను పొడిగించుము" #: ../bonobo/bonobo-moniker-util.c:247 msgid "Failed to activate object" msgstr "ఆబ్జక్టును క్రియాశీలపర్చుటలో విఫలమైంది" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "'%s' క్రియాశీలపరచుటలో ఆక్షేపణ" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "'%s' క్రియాశీలపరచుటలో విఫలమైంది" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "HTTP మానికర్" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "ORB IOR సంభాలిక మానికర్" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "ప్రామాణిక మానికర్ ఫాక్టరి" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "సాధారణ Oaf క్రియాశీలపు మానికర్" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "సాదారణ Oaf క్వరీ మానికర్" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "సాదారణ ఫాక్టరీ 'కొత్త' మానికర్" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "సాదారణ అంశపు మానికర్" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "స్ట్రీమ్ MonikerExtender" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "బోనోబో Echo సేవిక ఫాక్టరి" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "బోనోబో Echo సేవిక మాదిరి ప్రోగ్రామ్" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Echo మూలకము" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Echo ములకము ఫాక్టరీ" #: ../samples/echo/echo-client.c:24 msgid "I could not initialize Bonobo" msgstr "నేను బోనోబోను సిద్దీకరించ లేకపోతున్నాను" #: ../samples/echo/echo-client.c:35 msgid "Could not create an instance of the sample echo component" msgstr "మాదిరి echo మూలకముయొక్క మరియొకసంభవాన్ని సృష్టించ లేకపోయింది" #: ../samples/echo/echo-client.c:47 #, c-format msgid "An exception occurred '%s'" msgstr "ఒక ఆక్షేపణ యెదురైంది '%s'" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Could not save configuration file.\n" msgstr "ఆకృతీకరణ దస్త్రమును భద్రపరచ లేకపోయింది.\n" #: ../utils/bonobo-activation-sysconf.c:84 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "దయచేసి, మీరు '%s'కు వ్రాయుటకు అనుమతులను కలిగివుండునట్లు చూసుకోండి.\n" #: ../utils/bonobo-activation-sysconf.c:87 #, c-format msgid "Successfully wrote configuration file.\n" msgstr "ఆకృతీకరణ దస్త్రమును సమర్ధవంతంగా వ్రాసినది.\n" #: ../utils/bonobo-activation-sysconf.c:104 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "ఆకృతీకరణ దస్త్రము:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:146 #, c-format msgid "%s already in configuration file\n" msgstr "%s యిప్పటికే ఆకృతీకరణ దస్త్రమునందు వుంది\n" #: ../utils/bonobo-activation-sysconf.c:166 #, c-format msgid "there is not a properly structured configuration file\n" msgstr "అక్కడ సరిగా నిర్మించిన ఆకృతీకరణ దస్త్రములేదు\n" #: ../utils/bonobo-activation-sysconf.c:237 #, c-format msgid "Bonobo-activation configuration file contains:\n" msgstr "బోనోబో-క్రియాశీలపు ఆకృతీకరణ దస్త్రము కలిగివుంది:\n" #: ../utils/bonobo-activation-sysconf.c:267 msgid "Directory to remove from configuration file" msgstr "ఆకృతీకరణ దస్త్రమునుండి తొలగించుటకు డైరెక్టరి" #: ../utils/bonobo-activation-sysconf.c:267 #: ../utils/bonobo-activation-sysconf.c:269 msgid "PATH" msgstr "PATH" #: ../utils/bonobo-activation-sysconf.c:269 msgid "Directory to add to configuration file" msgstr "ఆకృతీకరణ దస్త్రముకు జతచేయుటకు డైరెక్టరీ" #: ../utils/bonobo-activation-sysconf.c:271 msgid "Display directories in configuration file" msgstr "ఆకృతీకరణ దస్త్రమునందలి డైరెక్టరీలను ప్రదర్శించుము" #: ../utils/bonobo-activation-sysconf.c:273 msgid "Display path to configuration file" msgstr "ఆకృతీకరణ దస్త్రముకు పాత్‌ను ప్రదర్శించుము" libbonobo-2.32.1/po/en@shaw.po0000644000076400007640000005232511373604303013047 00000000000000# Shavian translation for libbonobo. # Copyright (C) 2009 The Gnome Foundation. # Thomas Thurman , 2009. msgid "" msgstr "" "Project-Id-Version: metacity\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=bonobo&component=libbonobo\n" "POT-Creation-Date: 2010-05-12 20:44+0000\n" "PO-Revision-Date: 2010-05-12 18:37 -0400\n" "Last-Translator: Thomas Thurman \n" "Language-Team: Shavian \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" #, fuzzy #: ../activation-server/activation-context-corba.c:530 msgid "Couldn't find which child the server was listed in" msgstr "𐑒𐑫𐑛𐑯𐑑 𐑓𐑲𐑯𐑛 𐑢𐑦𐑗 𐑗𐑲𐑤𐑛 𐑞 𐑕𐑻𐑝𐑼 𐑢𐑪𐑟 𐑤𐑦𐑕𐑑𐑩𐑛 𐑦𐑯" #: ../activation-server/activation-context-corba.c:822 msgid "Not a valid Activation ID" msgstr "𐑯𐑪𐑑 𐑩 𐑝𐑨𐑤𐑦𐑛 𐑨𐑒𐑑𐑩𐑝𐑱𐑖𐑩𐑯 ID" #: ../activation-server/activation-server-main.c:176 msgid "Directory to read .server files from" msgstr "𐑛𐑲𐑮𐑧𐑒𐑑𐑼𐑦 𐑑 𐑮𐑰𐑛 .𐑕𐑻𐑝𐑼 𐑓𐑲𐑤𐑟 𐑓𐑮𐑪𐑥" #: ../activation-server/activation-server-main.c:176 msgid "DIRECTORY" msgstr "𐑛𐑲𐑮𐑧𐑒𐑑𐑼𐑦" #, fuzzy #: ../activation-server/activation-server-main.c:179 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "𐑕𐑻𐑝 𐑨𐑟 𐑩𐑯 ActivationContext (𐑛𐑦𐑓𐑷𐑤𐑑 𐑦𐑟 𐑨𐑟 𐑩𐑯 ObjectDirectory 𐑴𐑯𐑤𐑦)" #, fuzzy #: ../activation-server/activation-server-main.c:183 msgid "File descriptor to write IOR to" msgstr "𐑓𐑲𐑤 descriptor 𐑑 𐑮𐑲𐑑 IOR 𐑑" #, fuzzy #: ../activation-server/activation-server-main.c:183 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:186 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's running " "session, and should only be used for debugging purposes" msgstr "" "𐑮𐑧𐑡𐑦𐑕𐑑𐑼 𐑨𐑟 𐑞 𐑿𐑟𐑼'𐑕 𐑨𐑒𐑑𐑩𐑝𐑱𐑖𐑩𐑯 𐑕𐑻𐑝𐑼 𐑢𐑦𐑞𐑬𐑑 𐑤𐑪𐑒𐑦𐑙. 𐑢𐑹𐑯𐑦𐑙: 𐑞𐑦𐑕 𐑪𐑐𐑖𐑩𐑯 𐑒𐑨𐑯 𐑣𐑨𐑝 " "𐑛𐑱𐑯𐑡𐑼𐑩𐑕 𐑕𐑲𐑛 𐑦𐑓𐑧𐑒𐑑𐑕 𐑪𐑯 𐑞 𐑕𐑑𐑩𐑚𐑦𐑤𐑦𐑑𐑰 𐑝 𐑞 𐑿𐑟𐑼'𐑕 𐑮𐑳𐑯𐑦𐑙 𐑕𐑧𐑖𐑩𐑯, 𐑯 𐑖𐑫𐑛 𐑴𐑯𐑤𐑦 𐑚𐑰 𐑿𐑟𐑛 𐑓𐑹 " "𐑛𐑰𐑚𐑳𐑜𐑦𐑙 𐑐𐑻𐑐𐑩𐑕𐑩𐑟" #: ../activation-server/activation-server-main.c:194 msgid "Query expression to evaluate" msgstr "𐑒𐑢𐑽𐑦 𐑦𐑒𐑕𐑐𐑮𐑧𐑖𐑩𐑯 𐑑 𐑦𐑝𐑨𐑤𐑘𐑵𐑱𐑑" #: ../activation-server/activation-server-main.c:194 msgid "EXPRESSION" msgstr "𐑦𐑒𐑕𐑐𐑮𐑧𐑖𐑩𐑯" #, c-format #: ../activation-server/activation-server-main.c:547 #: ../utils/bonobo-activation-sysconf.c:305 msgid "" "Run '%s --help' to see a full list of available command line options.\n" msgstr "𐑮𐑳𐑯 '%s --help' 𐑑 𐑕𐑰 𐑩 𐑓𐑫𐑤 𐑤𐑦𐑕𐑑 𐑝 𐑩𐑝𐑱𐑤𐑩𐑚𐑩𐑤 𐑒𐑩𐑥𐑭𐑯𐑛 𐑤𐑲𐑯 𐑪𐑐𐑖𐑩𐑯𐑟.\n" #, fuzzy #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "CORBA CosNaming 𐑕𐑻𐑝𐑦𐑕." #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "𐑯𐑱𐑥 𐑕𐑻𐑝𐑦𐑕" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "𐑯𐑴𐑑𐑦𐑓𐑦𐑒𐑱𐑖𐑩𐑯 𐑕𐑻𐑝𐑦𐑕" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "𐑯𐑴𐑑𐑦𐑓𐑦𐑒𐑱𐑖𐑩𐑯 𐑕𐑻𐑝𐑦𐑕 𐑓𐑹 𐑨𐑒𐑑𐑩𐑝𐑱𐑖𐑩𐑯" #, fuzzy #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "𐑢𐑰 𐑛𐑴𐑯𐑑 𐑣𐑨𐑯𐑛𐑩𐑤 𐑨𐑒𐑑𐑩𐑝𐑱𐑑𐑦𐑙 shlib 𐑪𐑚𐑡𐑧𐑒𐑑𐑕 𐑦𐑯 𐑩 𐑮𐑦𐑥𐑴𐑑 𐑐𐑮𐑴𐑕𐑧𐑕 𐑘𐑧𐑑" #, c-format #: ../activation-server/object-directory-config-file.c:65 msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "𐑞 ·𐑚𐑭𐑯𐑭𐑚𐑴 𐑨𐑒𐑑𐑩𐑝𐑱𐑖𐑩𐑯 𐑒𐑩𐑯𐑓𐑦𐑜𐑘𐑼𐑱𐑖𐑩𐑯 𐑓𐑲𐑤 𐑢𐑪𐑟 𐑯𐑪𐑑 𐑮𐑧𐑛 𐑕𐑩𐑒𐑕𐑧𐑕𐑓𐑩𐑤𐑦. 𐑐𐑤𐑰𐑟, 𐑗𐑧𐑒 𐑦𐑑 𐑦𐑟 " "𐑝𐑨𐑤𐑦𐑛 𐑦𐑯: %s" #, fuzzy #: ../activation-server/object-directory-load.c:102 msgid "a NULL iid is not valid" msgstr "𐑩 𐑯𐑳𐑤 iid 𐑦𐑟 𐑯𐑪𐑑 𐑝𐑨𐑤𐑦𐑛" #, c-format #, fuzzy #: ../activation-server/object-directory-load.c:106 msgid "iid %s has a NULL type" msgstr "iid %s 𐑣𐑨𐑟 𐑩 𐑯𐑳𐑤 𐑑𐑲𐑐" #, c-format #, fuzzy #: ../activation-server/object-directory-load.c:110 msgid "iid %s has a NULL location" msgstr "iid %s 𐑣𐑨𐑟 𐑩 𐑯𐑳𐑤 𐑤𐑴𐑒𐑱𐑖𐑩𐑯" #, c-format #, fuzzy #: ../activation-server/object-directory-load.c:119 msgid "invalid character '%c' in iid '%s'" msgstr "𐑦𐑯𐑝𐑨𐑤𐑦𐑛 𐑒𐑨𐑮𐑩𐑒𐑑𐑼 '%c' 𐑦𐑯 iid '%s'" #, c-format #: ../activation-server/object-directory-load.c:349 msgid "Property '%s' has no value" msgstr "𐑐𐑮𐑪𐑐𐑼𐑑𐑦 '%s' 𐑣𐑨𐑟 𐑯𐑴 𐑝𐑨𐑤𐑿" #, c-format #: ../activation-server/object-directory-load.c:583 msgid "Could not parse badly formed XML document %s" msgstr "𐑒𐑫𐑛 𐑯𐑪𐑑 𐑐𐑸𐑕 𐑚𐑨𐑛𐑤𐑰 𐑓𐑹𐑥𐑛 XML 𐑛𐑪𐑒𐑿𐑥𐑩𐑯𐑑 %s" #, c-format #, fuzzy #: ../activation-server/object-directory-load.c:629 msgid "Trying dir %s" msgstr "𐑑𐑮𐑲𐑦𐑙 dir %s" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "𐑗𐑲𐑤𐑛 𐑐𐑮𐑴𐑕𐑧𐑕 𐑛𐑦𐑛 𐑯𐑪𐑑 𐑜𐑦𐑝 𐑩𐑯 𐑻𐑼 𐑥𐑧𐑕𐑦𐑡, 𐑳𐑯𐑴𐑯 𐑓𐑱𐑤𐑘𐑼 𐑪𐑒𐑻𐑛" #, c-format #: ../bonobo-activation/bonobo-activation-fork-server.c:237 msgid "Failed to read from child process: %s\n" msgstr "𐑓𐑱𐑤𐑛 𐑑 𐑮𐑰𐑛 𐑓𐑮𐑪𐑥 𐑗𐑲𐑤𐑛 𐑐𐑮𐑴𐑕𐑧𐑕: %s\n" #, fuzzy, c-format #: ../bonobo-activation/bonobo-activation-fork-server.c:247 msgid "EOF from child process\n" msgstr "𐑓𐑱𐑤𐑛 𐑑 𐑮𐑰𐑛 𐑓𐑮𐑪𐑥 𐑗𐑲𐑤𐑛 𐑐𐑮𐑴𐑕𐑧𐑕: %s\n" #, fuzzy #: ../bonobo-activation/bonobo-activation-fork-server.c:438 msgid "Couldn't spawn a new process" msgstr "𐑒𐑫𐑛𐑯𐑑 𐑕𐑐𐑭𐑯 𐑩 𐑯𐑿 𐑐𐑮𐑴𐑕𐑧𐑕" #, fuzzy #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "File descriptor to print IOR on" msgstr "𐑓𐑲𐑤 descriptor 𐑑 𐑐𐑮𐑦𐑯𐑑 IOR 𐑪𐑯" #, fuzzy #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:399 msgid "IID to activate" msgstr "IID 𐑑 𐑨𐑒𐑑𐑦𐑝𐑱𐑑" #, fuzzy #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Prevent registering of server with OAF" msgstr "𐑐𐑮𐑦𐑝𐑧𐑯𐑑 𐑮𐑧𐑡𐑦𐑕𐑑𐑼𐑦𐑙 𐑝 𐑕𐑻𐑝𐑼 𐑢𐑦𐑞 OAF" #: ../bonobo-activation/bonobo-activation-init.c:409 msgid "Bonobo Activation options:" msgstr "·𐑚𐑭𐑯𐑭𐑚𐑴 𐑨𐑒𐑑𐑩𐑝𐑱𐑖𐑩𐑯 𐑪𐑐𐑖𐑩𐑯𐑟:" #: ../bonobo-activation/bonobo-activation-init.c:410 msgid "Show Bonobo Activation options" msgstr "𐑖𐑴 ·𐑚𐑭𐑯𐑭𐑚𐑴 𐑨𐑒𐑑𐑩𐑝𐑱𐑖𐑩𐑯 𐑪𐑐𐑖𐑩𐑯𐑟" #: ../bonobo-activation/bonobo-activation-init.c:518 msgid "Bonobo activation options" msgstr "·𐑚𐑭𐑯𐑭𐑚𐑴 𐑨𐑒𐑑𐑩𐑝𐑱𐑖𐑩𐑯 𐑪𐑐𐑖𐑩𐑯𐑟" #, c-format #: ../bonobo-activation/bonobo-activation-shlib.c:107 msgid "g_module_open of `%s' failed with `%s'" msgstr "g_module_open 𐑝 `%s' 𐑓𐑱𐑤𐑛 𐑢𐑦𐑞 `%s'" #, c-format #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "𐑒𐑭𐑯𐑑 𐑓𐑲𐑯𐑛 𐑕𐑦𐑥𐑚𐑩𐑤 Bonobo_Plugin_info 𐑦𐑯 `%s'" #, c-format #: ../bonobo-activation/bonobo-activation-shlib.c:212 msgid "Factory `%s' returned NIL for `%s'" msgstr "𐑓𐑨𐑒𐑑𐑼𐑦 `%s' 𐑮𐑦𐑑𐑻𐑯𐑛 𐑯𐑦𐑤 𐑓𐑹 `%s'" #, c-format #, fuzzy #: ../bonobo-activation/bonobo-activation-shlib.c:229 msgid "Shlib `%s' didn't contain `%s'" msgstr "Shlib `%s' 𐑛𐑦𐑛𐑯𐑑 𐑒𐑩𐑯𐑑𐑱𐑯 `%s'" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "𐑯𐑱𐑥" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "𐑩𐑐𐑤𐑦𐑒𐑱𐑕𐑩𐑯 𐑿𐑯𐑰𐑒 𐑯𐑱𐑥" #, fuzzy #: ../bonobo/bonobo-object.c:929 msgid "POA" msgstr "POA" #, fuzzy #: ../bonobo/bonobo-object.c:929 msgid "Custom CORBA POA" msgstr "𐑒𐑳𐑕𐑑𐑩𐑥 CORBA POA" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "𐑩𐑯 𐑳𐑯𐑕𐑩𐑐𐑹𐑑𐑩𐑛 𐑨𐑒𐑖𐑩𐑯 𐑢𐑪𐑟 𐑩𐑑𐑧𐑥𐑐𐑑𐑩𐑛" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "IO 𐑻𐑼" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "𐑦𐑯𐑝𐑨𐑤𐑦𐑛 𐑸𐑜𐑿𐑥𐑩𐑯𐑑 𐑝𐑨𐑤𐑿" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "𐑩𐑚𐑡𐑧𐑒𐑑 𐑯𐑪𐑑 𐑓𐑬𐑯𐑛" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "𐑕𐑦𐑯𐑑𐑨𐑒𐑕 𐑻𐑼 𐑦𐑯 𐑪𐑚𐑡𐑧𐑒𐑑 𐑛𐑦𐑕𐑒𐑮𐑦𐑐𐑖𐑩𐑯" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "𐑒𐑨𐑯𐑪𐑑 𐑨𐑒𐑑𐑦𐑝𐑱𐑑 𐑩𐑚𐑡𐑧𐑒𐑑 𐑓𐑮𐑪𐑥 𐑓𐑨𐑒𐑑𐑼𐑦" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "𐑯𐑴 𐑐𐑻𐑥𐑦𐑖𐑪𐑯 𐑑 𐑨𐑒𐑕𐑧𐑕 𐑕𐑑𐑮𐑰𐑥" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "𐑩𐑯 𐑳𐑯𐑕𐑩𐑐𐑹𐑑𐑩𐑛 𐑕𐑑𐑮𐑰𐑥 𐑨𐑒𐑖𐑩𐑯 𐑢𐑪𐑟 𐑩𐑑𐑧𐑥𐑐𐑑𐑩𐑛" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "IO 𐑻𐑼 𐑪𐑯 𐑕𐑑𐑮𐑰𐑥" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "IO 𐑻𐑼 𐑪𐑯 𐑕𐑑𐑹𐑦𐑡" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "𐑯𐑱𐑥 𐑷𐑤𐑮𐑧𐑛𐑦 𐑧𐑒𐑟𐑦𐑕𐑑𐑕 𐑦𐑯 𐑕𐑑𐑹𐑦𐑡" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "𐑩𐑚𐑡𐑧𐑒𐑑 𐑯𐑪𐑑 𐑓𐑬𐑯𐑛 𐑦𐑯 𐑕𐑑𐑹𐑦𐑡" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "𐑯𐑴 𐑐𐑻𐑥𐑦𐑖𐑪𐑯 𐑑 𐑛𐑵 𐑪𐑐𐑼𐑱𐑖𐑩𐑯 𐑪𐑯 𐑕𐑑𐑹𐑦𐑡" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "𐑩𐑯 𐑳𐑯𐑕𐑩𐑐𐑹𐑑𐑩𐑛 𐑕𐑑𐑹𐑦𐑡 𐑨𐑒𐑖𐑩𐑯 𐑢𐑪𐑟 𐑩𐑑𐑧𐑥𐑐𐑑𐑩𐑛" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "𐑩𐑚𐑡𐑧𐑒𐑑 𐑦𐑟 𐑯𐑪𐑑 𐑩 𐑕𐑑𐑮𐑰𐑥" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "𐑩𐑚𐑡𐑧𐑒𐑑 𐑦𐑟 𐑯𐑪𐑑 𐑩 𐑕𐑑𐑹𐑦𐑡" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "𐑕𐑑𐑹𐑦𐑡 𐑦𐑟 𐑯𐑪𐑑 𐑧𐑥𐑐𐑑𐑦" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "𐑥𐑨𐑤𐑓𐑹𐑥𐑛 𐑿𐑟𐑼 𐑦𐑯𐑑𐑼𐑓𐑱𐑕 XML 𐑛𐑦𐑕𐑒𐑮𐑦𐑐𐑖𐑩𐑯" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "𐑦𐑯𐑝𐑨𐑤𐑦𐑛 𐑐𐑭𐑔 𐑑 XML 𐑿𐑟𐑼 𐑦𐑯𐑑𐑼𐑓𐑱𐑕 𐑧𐑤𐑩𐑥𐑩𐑯𐑑" #, fuzzy #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "𐑞 𐑮𐑦𐑒𐑢𐑧𐑕𐑑𐑩𐑛 UI 𐑩𐑑𐑮𐑦𐑚𐑿𐑑 𐑛𐑦𐑛𐑯𐑑 𐑧𐑒𐑟𐑦𐑕𐑑" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "𐑳𐑯𐑴𐑯 𐑒𐑩𐑥𐑭𐑯𐑛 𐑹 𐑝𐑻𐑚" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "𐑒𐑩𐑥𐑭𐑯𐑛 𐑦𐑟 𐑦𐑯𐑕𐑧𐑯𐑕𐑩𐑑𐑦𐑝" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "𐑦𐑯𐑒𐑩𐑮𐑧𐑒𐑑 𐑛𐑱𐑑𐑩 𐑑𐑲𐑐" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "𐑕𐑑𐑮𐑰𐑥 𐑯𐑪𐑑 𐑓𐑬𐑯𐑛" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "𐑐𐑮𐑪𐑐𐑼𐑑𐑦 𐑯𐑪𐑑 𐑓𐑬𐑯𐑛" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "𐑐𐑮𐑪𐑐𐑼𐑑𐑦 𐑣𐑨𐑟 𐑦𐑯𐑝𐑨𐑤𐑦𐑛 𐑑𐑲𐑐" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "𐑐𐑮𐑪𐑐𐑼𐑑𐑦 𐑦𐑟 𐑮𐑧𐑛 𐑴𐑯𐑤𐑦" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "𐑒𐑪𐑯𐑓𐑦𐑜 𐑛𐑱𐑑𐑩𐑚𐑱𐑕 𐑚𐑨𐑒𐑧𐑯𐑛 𐑓𐑱𐑤𐑛 " #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "𐑥𐑪𐑯𐑦𐑒𐑼 𐑦𐑯𐑑𐑼𐑓𐑱𐑕 𐑒𐑨𐑯𐑪𐑑 𐑚𐑰 𐑓𐑬𐑯𐑛" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "𐑥𐑪𐑯𐑦𐑒𐑼 𐑨𐑒𐑑𐑩𐑝𐑱𐑖𐑩𐑯 𐑑𐑲𐑥𐑛 𐑬𐑑" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "𐑕𐑦𐑯𐑑𐑨𐑒𐑕 𐑻𐑼 𐑢𐑦𐑞𐑦𐑯 𐑥𐑪𐑯𐑦𐑒𐑼" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "𐑥𐑪𐑯𐑦𐑒𐑼 𐑣𐑨𐑟 𐑩𐑯 𐑳𐑯𐑴𐑯 𐑥𐑪𐑯𐑦𐑒𐑼 𐑐𐑮𐑰𐑓𐑦𐑒𐑕" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "𐑻𐑼 𐑗𐑧𐑒𐑦𐑙 𐑻𐑼; 𐑯𐑴 𐑦𐑒𐑕𐑧𐑐𐑖𐑩𐑯" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "𐑡𐑧𐑯𐑼𐑩𐑤 𐑨𐑒𐑑𐑩𐑝𐑱𐑖𐑩𐑯 𐑻𐑼 𐑢𐑦𐑞 𐑯𐑴 𐑛𐑦𐑕𐑒𐑮𐑦𐑐𐑖𐑩𐑯" #, fuzzy, c-format #: ../bonobo/bonobo-moniker.c:342 msgid "Failed to resolve, or extend '%s'" msgstr "𐑓𐑱𐑤𐑛 𐑑 𐑮𐑦𐑟𐑪𐑤𐑝, 𐑹 𐑦𐑒𐑕𐑑𐑧𐑯𐑛 '%s" #: ../bonobo/bonobo-moniker-util.c:247 msgid "Failed to activate object" msgstr "𐑓𐑱𐑤𐑛 𐑑 𐑨𐑒𐑑𐑦𐑝𐑱𐑑 𐑩𐑚𐑡𐑧𐑒𐑑" #, c-format #: ../monikers/bonobo-moniker-oaf.c:53 msgid "Exception activating '%s'" msgstr "𐑦𐑒𐑕𐑧𐑐𐑖𐑩𐑯 𐑨𐑒𐑑𐑩𐑝𐑱𐑑𐑦𐑙 '%s'" #, c-format #: ../monikers/bonobo-moniker-oaf.c:62 msgid "Failed to activate '%s'" msgstr "𐑓𐑱𐑤𐑛 𐑑 𐑨𐑒𐑑𐑦𐑝𐑱𐑑 '%s'" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "HTTP 𐑥𐑪𐑯𐑦𐑒𐑼" #, fuzzy #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "𐑪𐑮𐑚 IOR 𐑣𐑨𐑯𐑛𐑤𐑦𐑙 𐑥𐑭𐑯𐑦𐑒𐑻" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "𐑕𐑑𐑨𐑯𐑛𐑼𐑛 𐑥𐑪𐑯𐑦𐑒𐑼 𐑓𐑨𐑒𐑑𐑼𐑦" #, fuzzy #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "𐑡𐑩𐑯𐑧𐑮𐑦𐑒 Oaf 𐑨𐑒𐑑𐑩𐑝𐑱𐑖𐑩𐑯 𐑥𐑭𐑯𐑦𐑒𐑻" #, fuzzy #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "𐑡𐑩𐑯𐑧𐑮𐑦𐑒 Oaf 𐑒𐑢𐑽𐑦 𐑥𐑭𐑯𐑦𐑒𐑻" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "𐑡𐑩𐑯𐑧𐑮𐑦𐑒 𐑓𐑨𐑒𐑑𐑼𐑦 '𐑯𐑿' 𐑥𐑪𐑯𐑦𐑒𐑼" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "𐑡𐑩𐑯𐑧𐑮𐑦𐑒 𐑲𐑑𐑩𐑥 𐑥𐑪𐑯𐑦𐑒𐑼" #, fuzzy #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "𐑕𐑑𐑮𐑰𐑥 MonikerExtender" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "·𐑚𐑭𐑯𐑭𐑚𐑴 𐑧𐑒𐑴 𐑕𐑻𐑝𐑼 𐑓𐑨𐑒𐑑𐑼𐑦" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "·𐑚𐑭𐑯𐑭𐑚𐑴 𐑧𐑒𐑴 𐑕𐑻𐑝𐑼 𐑕𐑭𐑥𐑐𐑩𐑤 𐑐𐑮𐑴𐑜𐑮𐑨𐑥" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "𐑧𐑒𐑴 𐑒𐑩𐑥𐑐𐑴𐑯𐑩𐑯𐑑" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "𐑧𐑒𐑴 𐑒𐑩𐑥𐑐𐑴𐑯𐑩𐑯𐑑 𐑓𐑨𐑒𐑑𐑼𐑦" #: ../samples/echo/echo-client.c:24 msgid "I could not initialize Bonobo" msgstr "𐑲 𐑒𐑫𐑛 𐑯𐑪𐑑 𐑦𐑯𐑦𐑖𐑩𐑤𐑲𐑟 ·𐑚𐑭𐑯𐑭𐑚𐑴" #: ../samples/echo/echo-client.c:35 msgid "Could not create an instance of the sample echo component" msgstr "𐑒𐑫𐑛 𐑯𐑪𐑑 𐑒𐑮𐑦𐑱𐑑 𐑩𐑯 𐑦𐑯𐑕𐑑𐑨𐑯𐑕 𐑝 𐑞 𐑕𐑭𐑥𐑐𐑩𐑤 𐑧𐑒𐑴 𐑒𐑩𐑥𐑐𐑴𐑯𐑩𐑯𐑑" #, c-format #: ../samples/echo/echo-client.c:47 msgid "An exception occurred '%s'" msgstr "𐑩𐑯 𐑦𐑒𐑕𐑧𐑐𐑖𐑩𐑯 𐑪𐑒𐑻𐑛 '%s'" #, c-format #: ../utils/bonobo-activation-sysconf.c:83 msgid "Could not save configuration file.\n" msgstr "𐑒𐑫𐑛 𐑯𐑪𐑑 𐑕𐑱𐑝 𐑒𐑩𐑯𐑓𐑦𐑜𐑘𐑼𐑱𐑖𐑩𐑯 𐑓𐑲𐑤.\n" #, c-format #: ../utils/bonobo-activation-sysconf.c:84 msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "𐑐𐑤𐑰𐑟, 𐑥𐑱𐑒 𐑖𐑫𐑼 𐑿 𐑣𐑨𐑝 𐑐𐑻𐑥𐑦𐑖𐑪𐑯𐑟 𐑑 𐑮𐑲𐑑 𐑑 '%s'.\n" #, c-format #: ../utils/bonobo-activation-sysconf.c:87 msgid "Successfully wrote configuration file.\n" msgstr "𐑕𐑩𐑒𐑕𐑧𐑕𐑓𐑩𐑤𐑦 𐑮𐑴𐑑 𐑒𐑩𐑯𐑓𐑦𐑜𐑘𐑼𐑱𐑖𐑩𐑯 𐑓𐑲𐑤.\n" #, c-format #: ../utils/bonobo-activation-sysconf.c:104 msgid "configuration file is:\n %s\n" msgstr "𐑒𐑩𐑯𐑓𐑦𐑜𐑘𐑼𐑱𐑖𐑩𐑯 𐑓𐑲𐑤 𐑦𐑟:\n %s\n" #, c-format #: ../utils/bonobo-activation-sysconf.c:146 msgid "%s already in configuration file\n" msgstr "%s 𐑷𐑤𐑮𐑧𐑛𐑦 𐑦𐑯 𐑒𐑩𐑯𐑓𐑦𐑜𐑘𐑼𐑱𐑖𐑩𐑯 𐑓𐑲𐑤\n" #, c-format #: ../utils/bonobo-activation-sysconf.c:166 msgid "there is not a properly structured configuration file\n" msgstr "𐑞𐑺 𐑦𐑟 𐑯𐑪𐑑 𐑩 𐑐𐑮𐑪𐑐𐑼𐑤𐑦 𐑕𐑑𐑮𐑳𐑒𐑗𐑼𐑛 𐑒𐑩𐑯𐑓𐑦𐑜𐑘𐑼𐑱𐑖𐑩𐑯 𐑓𐑲𐑤\n" #, c-format #: ../utils/bonobo-activation-sysconf.c:237 msgid "Bonobo-activation configuration file contains:\n" msgstr "·𐑚𐑭𐑯𐑭𐑚𐑴-𐑨𐑒𐑑𐑩𐑝𐑱𐑖𐑩𐑯 𐑒𐑩𐑯𐑓𐑦𐑜𐑘𐑼𐑱𐑖𐑩𐑯 𐑓𐑲𐑤 𐑒𐑩𐑯𐑑𐑱𐑯𐑟:\n" #: ../utils/bonobo-activation-sysconf.c:267 msgid "Directory to remove from configuration file" msgstr "𐑛𐑲𐑮𐑧𐑒𐑑𐑼𐑦 𐑑 𐑮𐑦𐑥𐑵𐑝 𐑓𐑮𐑪𐑥 𐑒𐑩𐑯𐑓𐑦𐑜𐑘𐑼𐑱𐑖𐑩𐑯 𐑓𐑲𐑤" #: ../utils/bonobo-activation-sysconf.c:267 #: ../utils/bonobo-activation-sysconf.c:269 msgid "PATH" msgstr "𐑐𐑭𐑔" #: ../utils/bonobo-activation-sysconf.c:269 msgid "Directory to add to configuration file" msgstr "𐑛𐑲𐑮𐑧𐑒𐑑𐑼𐑦 𐑑 𐑨𐑛 𐑑 𐑒𐑩𐑯𐑓𐑦𐑜𐑘𐑼𐑱𐑖𐑩𐑯 𐑓𐑲𐑤" #: ../utils/bonobo-activation-sysconf.c:271 msgid "Display directories in configuration file" msgstr "𐑛𐑩𐑕𐑐𐑤𐑱 𐑛𐑲𐑮𐑧𐑒𐑑𐑼𐑦𐑟 𐑦𐑯 𐑒𐑩𐑯𐑓𐑦𐑜𐑘𐑼𐑱𐑖𐑩𐑯 𐑓𐑲𐑤" #: ../utils/bonobo-activation-sysconf.c:273 msgid "Display path to configuration file" msgstr "𐑛𐑩𐑕𐑐𐑤𐑱 𐑐𐑭𐑔 𐑑 𐑒𐑩𐑯𐑓𐑦𐑜𐑘𐑼𐑱𐑖𐑩𐑯 𐑓𐑲𐑤" libbonobo-2.32.1/po/mai.po0000644000076400007640000005016611173072711012231 00000000000000# translation to libbonobo to Maithili # Copyright (C) 2006 The GNOME Foundation # This file is distributed under the same license as the PACKAGE package. # BOSS GNU/Linux , 2008. msgid "" msgstr "" "Project-Id-Version: gedit.HEAD\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2008-08-19 13:02+0000\n" "PO-Revision-Date: 2008-01-25 13:49+0530\n" "Last-Translator: Sangeeta Kumari\n" "Language-Team: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.11.4\n" "Plural-Forms: nplurals=2; plural=(n!=1);\n\n\n" #: ../activation-server/activation-context-corba.c:530 msgid "Couldn't find which child the server was listed in" msgstr "ढूँढि नहि पएलक जे कओन सन शिशु सर्वर सूचीबद्ध अछि." #: ../activation-server/activation-context-corba.c:822 msgid "Not a valid Activation ID" msgstr "वैध सक्रियण आईडी नहि" #: ../activation-server/activation-server-main.c:166 msgid "Directory to read .server files from" msgstr "निर्देशिका जतएसँ .server फाइलसभकेँ पढ़नाइ छै" #: ../activation-server/activation-server-main.c:166 msgid "DIRECTORY" msgstr "निर्देशिका" #: ../activation-server/activation-server-main.c:169 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "सक्रियण-संदर्भक तरह सेवारत अछि (मूलभूत सिर्फ एकटा आब्जेक्ट-निर्देशिका अछि)" #: ../activation-server/activation-server-main.c:173 msgid "File descriptor to write IOR to" msgstr "आईओआर मे लिखबा लेल फाइल डिस्क्रिप्टर" #: ../activation-server/activation-server-main.c:173 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:176 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "बिनु लाक कएनए प्रयोक्ताक सक्रियण सर्वर रूपेँ पंजीकृत करू. चेतावनी: ई विकल्पक खतरनाक प्रभाव भ' सकैत अछि प्रयोक्ताक कार्यशील सत्र पर, डिबगिंग प्रक्रियाक लेल सिर्फ प्रयोग कएल जएनाइ चाही" #: ../activation-server/activation-server-main.c:184 msgid "Query expression to evaluate" msgstr "मूल्यांकन लेल क्वैरी एक्सप्रेशन" #: ../activation-server/activation-server-main.c:184 msgid "EXPRESSION" msgstr "एक्सप्रेशन" #: ../activation-server/activation-server-main.c:470 #: ../utils/bonobo-activation-sysconf.c:305 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "'%s --help' चलाबू उपलब्ध कमांड लाइन विकल्प देखबाक लेल.\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "कोरबा कास-नेमिंग सेवा." #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "नाम सेवा" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "सूचना सेवा" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "सक्रियण लेल सूचना सेवा" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "हम एसएचलिब ऑब्जैक्टसभकेँ अखन रिमोट प्रक्रियामे सक्रियण लेल नियंत्रण नहि करैत छी" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "बोनबो सक्रियण बिन्यास फाइलकेँ सफलतापूर्वक नहि पढ़ल जाए सकल. कृप्या ई जाँच करू जे " "ई %s मे वैध अछि" #: ../activation-server/object-directory-load.c:102 msgid "a NULL iid is not valid" msgstr "एकटा नल आईआईडी वैध नहि अछि" #: ../activation-server/object-directory-load.c:106 #, c-format msgid "iid %s has a NULL type" msgstr "आईआईडी %s मे नल प्रकार अछि" #: ../activation-server/object-directory-load.c:110 #, c-format msgid "iid %s has a NULL location" msgstr "आईआईडी %s मे एकटा रिक्त स्थान अछि" #: ../activation-server/object-directory-load.c:119 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "अवैध अक्षर '%c' आईआईडी '%s' मे" #: ../activation-server/object-directory-load.c:349 #, c-format msgid "Property '%s' has no value" msgstr "गुण '%s' क' कोनो मान नहि अछि" #: ../activation-server/object-directory-load.c:583 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "अधलाह फॉर्म्ड एक्सएमएल दस्ताबेज %s विश्लेषण नहि कए सकल" #: ../activation-server/object-directory-load.c:629 #, c-format msgid "Trying dir %s" msgstr "निर्देशिका %s अजमाए रहल अछि" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "शिशु प्रक्रियासभ कोनो त्रुटि संदेश नहि दैछ, अज्ञात असफलता भेल" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "शिशु प्रक्रिया %s सँ पढ़बामे असफल\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, c-format msgid "EOF from child process\n" msgstr "शिशु प्रक्रियासँ EOF\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:438 msgid "Couldn't spawn a new process" msgstr "एकटा नवीन प्रक्रिया बनाएल नहि जाए सकल" #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "File descriptor to print IOR on" msgstr "आईओआर मुद्रण लेल फाइल वर्णनकएनिहार" #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:399 msgid "IID to activate" msgstr "सक्रियण लेल आईआईडी" #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Prevent registering of server with OAF" msgstr "ओएएफ सँ सर्वर क' पंजीकरण केँ रोकू" #: ../bonobo-activation/bonobo-activation-init.c:409 msgid "Bonobo Activation options:" msgstr "Bonobo सक्रियण विकल्पसभ:" #: ../bonobo-activation/bonobo-activation-init.c:410 msgid "Show Bonobo Activation options" msgstr "बोनबो सक्रियकरण विकल्प देखाबू" #: ../bonobo-activation/bonobo-activation-init.c:518 msgid "Bonobo activation options" msgstr "बोनबो सक्रियण विकल्पसभ" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "`%s' क' g-module-open `%s' सँ असफल" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "चिह्न Bonobo_Plugin_info '%s' मे ढूंढि नहि पएलक" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "फैक्ट्री `%s' ने `%s' लेल रिक्त घुरैलक" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "एसएचलिब '%s' मे '%s' नहि अछि" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "नाम" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "अनुप्रयोग बेजोड़ नाम" #: ../bonobo/bonobo-object.c:929 msgid "POA" msgstr "पीओए" #: ../bonobo/bonobo-object.c:929 msgid "Custom CORBA POA" msgstr "अनुकूलित कोरबा पीओए" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "एकटा असमर्थित क्रिया लेल प्रयास कएल गेल" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "आईओ त्रुटि" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "अवैध आर्गुमेंट मूल्य" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "आब्जेक्ट नहि मिलल" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "आब्जेक्ट वर्णनमे वाक्यरचनाक त्रुटि" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "फैक्ट्री सँ आब्जेक्ट सक्रिय नहि कए सकल" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "स्ट्रीम पर पहुँच लेल कोनो अनुमति नहि" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "एकटा असमर्थित स्ट्रीम क्रिया लेल प्रयास कएल गेल" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "स्ट्रीममे आईओ त्रुटि" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "भंडारमे आईओ त्रुटि" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "भंडारमे नाम पहिने सँ मोजुद अछि" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "भंडारमे आब्जेक्ट नहि मिलल" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "भंडार पर आपरेशन लेल कोनो अनुमतिसभ नहि" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "एकटा असमर्थित भंडार क्रिया लेल प्रयास कएल गेल" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "आब्जेक्ट एकटा स्ट्रीम नहि अछि" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "आब्जेक्ट एकटा भंडार नहि अछि" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "भंडार खाली नहि अछि" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "विरूपित प्रयोक्ता इंटरफेसक एक्सएमएल वर्णन" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "एक्सएमएल प्रयोक्ता इंटरफेस अवयव पर अवैध पथ" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "निवेदित यूआई गुण मोजुद नहि अछि" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "अज्ञात कमाण्ड अथवा क्रिया" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "कमाण्ड असंवेदनशील अछि" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "अशुद्ध आँकड़ा प्रकार" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "स्ट्रीम नहि मिलल" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "गुण नहि मिलल" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "गुणमे अवैध प्रकार अछि" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "गुण सिर्फ पढ़ै योग्य अछि" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "कॉन्फ़िग डाटाबेस बैकएण्ड असफल" #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "मोनीकर इंटरफेस नहि मिलल" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "मोनीकर सक्रियण टाइमआउट" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "मोनीकर क' भीतर वाक्यरचनाक त्रुटि" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "मोनीकरमे एकटा अज्ञात मोनीकर उपसर्ग अछि" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "त्रुटि जाँचबमे त्रुटि; कोनो एक्सेप्शन नहि" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "बिनु वर्णनक' सँग सामान्य सक्रियण त्रुटि" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s" msgstr "'%s क' समाधान अथवा विस्तार करबामे असफल" #: ../bonobo/bonobo-moniker-util.c:247 msgid "Failed to activate object" msgstr "ऑब्जैक्टकेँ सक्रिय करबामे असफल" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "'%s' सक्रिय करबामे एक्सेप्शन" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "'%s' केँ सक्रिय करबामे असफल" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "एचटीटीपी मोनिकर" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "ओआरबी आईओआर नियंत्रक मोनिकर" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "मानक मोनीकर फैक्ट्री" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "जेनेरिक ओएएफ़ सक्रियण मोनिकर" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "जेनेरिक ओएएफ़ क्वैरी मोनिकर" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "जेनेरिक फैक्ट्री 'नवीन' मोनिकर" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "जेनेरिक आइटम मोनिकर" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "स्ट्रीम मोनिकर-एक्सटेंडर" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "बोनोबो इको सर्वर फैक्ट्री" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "बोनोबो इको सर्वर नमूना प्रोग्राम" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "इको अवयव" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "इको अवयव फैक्ट्री" #: ../samples/echo/echo-client.c:24 msgid "I could not initialize Bonobo" msgstr "हम बोनोबो प्रारंभ नहि कए सकलहुँ" #: ../samples/echo/echo-client.c:35 msgid "Could not create an instance of the sample echo component" msgstr "नमूना इको अवयव क' एकटा इंस्टैंस तैआर नहि कए सकल" #: ../samples/echo/echo-client.c:47 #, c-format msgid "An exception occurred '%s'" msgstr "एकटा एक्सेप्शन भेलए '%s'" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Could not save configuration file.\n" msgstr "बिन्यास फाइल सहेज नहि सकल.\n" #: ../utils/bonobo-activation-sysconf.c:84 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "कृप्या सुनिश्चित करू जे अहाँक '%s' मे लिखबाक अनुमति अछि?\n" #: ../utils/bonobo-activation-sysconf.c:87 #, c-format msgid "Successfully wrote configuration file.\n" msgstr "बिन्यास फाइल सफलतापूर्वक लिखल गेल.\n" #: ../utils/bonobo-activation-sysconf.c:104 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "बिन्यास फाइल अछि:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:146 #, c-format msgid "%s already in configuration file\n" msgstr "बिन्यास फाइलमे %s पहिनेसँ मोजुद अछि\n" #: ../utils/bonobo-activation-sysconf.c:166 #, c-format msgid "there is not a properly structured configuration file\n" msgstr "ओतए एकटा उचित बिन्यास फाइल नहि अछि\n" #: ../utils/bonobo-activation-sysconf.c:237 #, c-format msgid "Bonobo-activation configuration file contains:\n" msgstr "बोनोबो-सक्रियण बिन्यास फाइलमे अछि:\n" #: ../utils/bonobo-activation-sysconf.c:267 msgid "Directory to remove from configuration file" msgstr "निर्देशिका जकरा बिन्यास फाइल सँ मेटाएलल जाइछ" #: ../utils/bonobo-activation-sysconf.c:267 #: ../utils/bonobo-activation-sysconf.c:269 msgid "PATH" msgstr "PATH" #: ../utils/bonobo-activation-sysconf.c:269 msgid "Directory to add to configuration file" msgstr "निर्देशिका जकरा बिन्यास फाइल मे जोड़नाइ छै" #: ../utils/bonobo-activation-sysconf.c:271 msgid "Display directories in configuration file" msgstr "बिन्यास फाइलमे निर्देशिका प्रदर्शित करू" #: ../utils/bonobo-activation-sysconf.c:273 msgid "Display path to configuration file" msgstr "बिन्यास फाइलक पथ देखाबू" libbonobo-2.32.1/po/yi.po0000644000076400007640000004524011173072711012101 00000000000000# bonobo-activation # Yiddish version # Copyright (C) 2003 Free Software Foundation, Inc. # Raphael Finkel , 2003. # msgid "" msgstr "" "Project-Id-Version: 1.0\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2006-10-22 16:55+0200\n" "PO-Revision-Date: 2003-03-19\n" "Last-Translator: Raphael Finkel \n" "Language-Team: Yiddish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../activation-server/activation-context-corba.c:523 msgid "Couldn't find which child the server was listed in" msgstr "ניט געקענט געפֿינען אונטער װעלכן קינד געפֿינט דער סערװירער" #: ../activation-server/activation-context-corba.c:815 msgid "Not a valid Activation ID" msgstr "אומלעקסיקע אַקטיװיר־אידענטיפֿאַציע" #: ../activation-server/activation-server-main.c:162 msgid "Directory to read .server files from" msgstr "פּאַפּקע װוּ די .server טעקעס געפֿינען זיך" #: ../activation-server/activation-server-main.c:162 msgid "DIRECTORY" msgstr "פּאַפּקע" #: ../activation-server/activation-server-main.c:165 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "אַרבעט װי אַן ActivationContext (געװײנטלעך נאָר אַן ObjectDirectory)" #: ../activation-server/activation-server-main.c:169 msgid "File descriptor to write IOR to" msgstr "טעקע־באַשרײַבער אין װעלכן צו שרײַבן IOR" #: ../activation-server/activation-server-main.c:169 #: ../bonobo-activation/bonobo-activation-init.c:355 #: ../bonobo-activation/bonobo-activation-init.c:365 msgid "FD" msgstr "טעקע־באַשרײַבער (FD)" #: ../activation-server/activation-server-main.c:172 msgid "" "Register as the users' activation server without locking [!] for debugging" msgstr "" #: ../activation-server/activation-server-main.c:177 msgid "Query expression to evaluate" msgstr "שאלה אױסשפּראַך צו שאַצן" #: ../activation-server/activation-server-main.c:177 msgid "EXPRESSION" msgstr "אױסשפּראַך" #: ../activation-server/activation-server-main.c:426 #: ../utils/bonobo-activation-sysconf.c:304 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "CORBA CosNaming באַדינוג" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "נאָמען־באַדינונג" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 #, fuzzy msgid "Notification service" msgstr "נאָמען־באַדינונג" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "מיר האַהאַנדלען נאָכניט דאָס אַקטיװירן shlib אײנסן אין אַ װײַטן פּראָצעס" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "ניט קײן הצלחה אין לײענען די באָנאָבאָ אַקטיריװ־צופּאַס טעקע. קאָנראָליר, זײַ אַזױ " "גוט, אין %s" #: ../activation-server/object-directory-load.c:101 msgid "a NULL iid is not valid" msgstr "אַ נוליקע iid איז אומלעקסיק" #: ../activation-server/object-directory-load.c:105 #, c-format msgid "iid %s has a NULL type" msgstr "דער iid %s האָט אַ ניליקן סאָרט" #: ../activation-server/object-directory-load.c:109 #, c-format msgid "iid %s has a NULL location" msgstr "דער iid %s האָט אַ ניליקן אָרט" #: ../activation-server/object-directory-load.c:118 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "אומלעקסיק כאַראַקטער '%c' אין iid '%s'" #: ../activation-server/object-directory-load.c:348 #, c-format msgid "Property '%s' has no value" msgstr "נאַטור %s האָט ניט קײן באַטרעף" #: ../activation-server/object-directory-load.c:580 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "" #: ../activation-server/object-directory-load.c:627 #, c-format msgid "Trying dir %s" msgstr "" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "" "קינד פּראָצעס האָט ניט געגעבן קײן דורכפֿאַל־אָנזאָג, אָבער אַן אומבאַקאַנטן דורכפֿאַל האָט " "פּאַסירט" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "דורכפֿאַל אין לײענען פֿון קינד פּראָצעס: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, fuzzy msgid "EOF from child process\n" msgstr "דורכפֿאַל אין לײענען פֿון קינד פּראָצעס: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:435 #, fuzzy msgid "Couldn't spawn a new process" msgstr "ניט געקענט קלאָנירן אַ נײַעם פּראָצעס" #: ../bonobo-activation/bonobo-activation-init.c:355 #: ../bonobo-activation/bonobo-activation-init.c:365 msgid "File descriptor to print IOR on" msgstr "טעקע־באַשרײַבער אין װעלכן צו דרוקן IOR" #: ../bonobo-activation/bonobo-activation-init.c:357 #: ../bonobo-activation/bonobo-activation-init.c:367 msgid "IID to activate" msgstr "IID צו אַקטיװירן" #: ../bonobo-activation/bonobo-activation-init.c:359 #: ../bonobo-activation/bonobo-activation-init.c:369 msgid "Prevent registering of server with OAF" msgstr "מײַד אױס דאָס רעגיסטרין דעם סערװירער מיט OAF" #: ../bonobo-activation/bonobo-activation-init.c:403 #, fuzzy msgid "Bonobo Activation" msgstr "באָנאָבאָ־אַקטיװירונג אָפּציעס" #: ../bonobo-activation/bonobo-activation-init.c:404 #, fuzzy msgid "Show Bonobo Activation options" msgstr "באָנאָבאָ־אַקטיװירונג אָפּציעס" #: ../bonobo-activation/bonobo-activation-init.c:512 msgid "Bonobo activation options" msgstr "באָנאָבאָ־אַקטיװירונג אָפּציעס" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "g_module_open פֿון %s האָט אַ דורכפֿאַל: %s" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "ניט געקענט געפֿינען סימבאָל Bonobo_Plugin_info אין %s" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "פֿאַבריק %s האָט צוריקגעגעבן NIL פֿאַר %s" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Shlib %s האָט ניט באַהאַלטן %s" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "" #: ../bonobo/bonobo-object.c:923 msgid "POA" msgstr "" #: ../bonobo/bonobo-object.c:923 msgid "Custom CORBA POA" msgstr "" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "מען האָט געפּרוּװט אַ ניט־געשטיצטע אַקציע" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "אַרײַן־אַרױסשרײַב דורכפֿאַל" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "אומלעקסיקער פּאַראַמעטער־באַטרעף" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "אָביעקט ניט געפֿונען" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "סינטאַקס־דורכפֿאַל אין אָביעקט־באַשרײַבונג" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "ניט געקענט אַקטיװירן אָביעקט פֿון זײַן פֿאַבריק" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "ניט קײן דערלױבעניש אָנצוקומען צום שטראָם" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "געפּרוּװט אַ ניט־געשטיצטע שטראָם־אַקציע" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "אַרײַן־אַרױסשרײַב דורכפֿאַל אױפֿן שטראָם" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "אַרײַן־אַרױסשרײַב דורכפֿאַל אינעם מאַגאַזין" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "דער נאָמען געפֿינט זיך שױן אין מאַגאַזין" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "אָביעקט ניט געפֿונען אין מאַגאַזין" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "ניט קײן דערלױבעניש אָפּערירן אױפֿן מאַגאַזין" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "געפּרוּװט אַ ניט־געשטיצטע מאַגאַזין־אַקציע" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "אָביעקט איז ניט קײן שטראָם" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "אָביעקט איז ניט קײן מאַגאַזין" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "מאַגאַזין איז ניט לײדיק" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "אומלעקסיקע ניצער־צובינד XML באַשרײַבונג" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "אומלעקסיקע פּאַפּקע־רשימה צו XML ניצער־צו עלעמענט" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "די אױסגעבעטענע UI אַטריבוט עקזיסטירט ניט" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "ניט־באַקאַנטער באַפֿעל אָדער װערב" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "באַפֿעל איז ניט־חושימדיק" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "ניט־ריכטיקער דאַטנסאָרט" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "שטראָם ניט געפֿונען" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "נאַטור ניט געפֿונען" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "נאַטור האָט אַן אומלעקסיקן סאָרט" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "נאַטור איז בלױז־לײענעװדיק" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "צופּאַס־דאַטנבאַזע הינטער־פּראָגראַם איז דורכגעפֿאַלן" #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "קען ניט געפֿינען צונעמעניש ניצער־צובינד" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "צונעמעניש־אַקטיװירונג איז פֿאַרלאָפֿן" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "סינטאַקס־דורכפֿאַל אין צונעמעניש" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "צונעמעניש האָט אַן אומבאַקאַנטער צונעמעניש־פּרעפֿיקס" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "דורכפֿאַל־קאָנטראָל דורכפֿאַל; ניט קײן אױסנעם" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "אַלגעמײנער אַקטיװירונג־דורכפֿאַל אָן קײן באַשרײַבונג" #: ../bonobo/bonobo-generic-factory.h:79 ../bonobo/bonobo-generic-factory.h:83 msgid "Could not initialize Bonobo" msgstr "ניט געקענט איניציאַליזירן באָנאָבאָ" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s" msgstr "דורכפֿאַל אין רעזאָלירן אָדער פֿאַרלענגערן '%s'" #: ../bonobo/bonobo-moniker-util.c:246 msgid "Failed to activate object" msgstr "דורכפֿאַל אין אַקטיװירן אָביעקט" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "אױסנעם אין אַקטיריװן סערװירער %s" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "דורכגעפֿאַלן אין אַקטיריװן %s" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "HTTP צונעמעניש" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "ORB IOR באַהאַנדלונג צונעמעניש" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "סטאַנדאַרדע צונעמעניש־פֿאַבריק" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "אַלגעמײנער Oaf אַקטיװירונג־צונעמעניש" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "אַלגעמײנער Oaf שאלה־צונעמעניש" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "אַלגעמײנער פֿאַבריק 'נײַ' צונעמעניש" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "אַלגעמײנער אײנס צונעמעניש" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "שאלה צונעמעניש־פֿאַרלענגערער" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "באָנאָבאָ װידערקול־סערװירער פֿאַבריק" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "באָנאָבאָ װידערקול־סערװירער מוסטער־פּראָגראַם" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "װידערקול־קאָמפּאָנענט" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "װידערקול־קאָמפּאָנענט פֿאַבריק" #: ../samples/echo/echo-client.c:22 msgid "I could not initialize Bonobo" msgstr "ניט געקענט איניציאַליזירן באָנאָבאָ" #: ../samples/echo/echo-client.c:33 msgid "Could not create an instance of the sample echo component" msgstr "ניט געקענט שאַפֿן אַ דוגמה פֿון דעם װידערקול־קאָמפּאָנענט מוסטער" #: ../samples/echo/echo-client.c:45 #, c-format msgid "An exception occurred '%s'" msgstr "אַן אױסנעם איז געשען '%s'" #: ../utils/bonobo-activation-sysconf.c:82 msgid "Could not save configuration file.\n" msgstr "ניט געקענט אױפֿהיטן צופּאַס־טעקע\n" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "קאָנטראָליר די רעכטן צו שרײַבן אין %s.\n" #: ../utils/bonobo-activation-sysconf.c:86 msgid "Successfully wrote configuration file.\n" msgstr "הצלחה אין שרײַבן צופּאַס־טעקע\n" #: ../utils/bonobo-activation-sysconf.c:103 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "צופּאַס־טעקע איז:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:145 #, c-format msgid "%s already in configuration file\n" msgstr "%s שױן אין צופּאַס־טעקע\n" #: ../utils/bonobo-activation-sysconf.c:165 msgid "there is not a properly structured configuration file\n" msgstr "ניט קײן לעקסיקע צופּאַס־טעקע\n" #: ../utils/bonobo-activation-sysconf.c:236 msgid "Bonobo-activation configuration file contains:\n" msgstr "באָנאָבאָ אַקטיװיר צופּאַס־טעקע איז כּולל:\n" #: ../utils/bonobo-activation-sysconf.c:266 msgid "Directory to remove from configuration file" msgstr "פּאַפּקע אַװעקצונעמען פֿון צופּאַס־טעקע" #: ../utils/bonobo-activation-sysconf.c:266 #: ../utils/bonobo-activation-sysconf.c:268 msgid "PATH" msgstr "" #: ../utils/bonobo-activation-sysconf.c:268 msgid "Directory to add to configuration file" msgstr "פּאַפּקע אין װעלכן צוצוגעבן צופּאַס־טעקע" #: ../utils/bonobo-activation-sysconf.c:270 msgid "Display directories in configuration file" msgstr "װײַז פּאַפּקעס אין צופּאַס־טעקע" #: ../utils/bonobo-activation-sysconf.c:272 msgid "Display path to configuration file" msgstr "װײַז פּאַפּקע־רשימה צו דער צופּאַס־טעקע" #~ msgid "Race condition activating server '%s'" #~ msgstr "געיעגפֿאַל אין אַקטיריװן סערװירער %s" #~ msgid "Child received signal %u (%s)" #~ msgstr "קינד האָט באַקומען מעלדונג %u (%s)" #~ msgid "Unknown non-exit error (status is %u)" #~ msgstr "אומבאַקאַנטער ניט־שטערבלעקער דורכפֿאַל (סטאַטוס איז %u)" #~ msgid "bonobo-activation failed to set process group of %s: %s\n" #~ msgstr "באָנאָבאָ־אַקטיװירונג האָט ניט געקענט באַשטעטיקן פּראָצעס־גרופּע %s: %s\n" #~ msgid "Failed to execute %s: %d (%s)\n" #~ msgstr "ניט געקענט באַאַרבעטן %s: %d (%s)\n" #~ msgid "Too many alias levels for a locale, may indicate a loop" #~ msgstr "צו פֿיל צונאָמען־שיכטן פֿאַר אַ לאָקאַל; קען זײַן אַ קײַקל" #~ msgid "directory path" #~ msgstr "פּאַפּקע רשימה" libbonobo-2.32.1/po/am.po0000644000076400007640000002737311173072711012064 00000000000000# Translations into the Amharic Language. # Copyright (C) 2002 Free Software Foundation, Inc. # This file is distributed under the same license as the libbonobo package. # Ge'ez Frontier Foundation , 2002. # # msgid "" msgstr "" "Project-Id-Version: libbonobo VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2006-10-22 16:55+0200\n" "PO-Revision-Date: 2003-01-16 08:39+EDT\n" "Last-Translator: Ge'ez Frontier Foundation \n" "Language-Team: Amharic \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../activation-server/activation-context-corba.c:523 msgid "Couldn't find which child the server was listed in" msgstr "" #: ../activation-server/activation-context-corba.c:815 msgid "Not a valid Activation ID" msgstr "" #: ../activation-server/activation-server-main.c:162 msgid "Directory to read .server files from" msgstr "" #: ../activation-server/activation-server-main.c:162 msgid "DIRECTORY" msgstr "ዶሴ" #: ../activation-server/activation-server-main.c:165 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "" #: ../activation-server/activation-server-main.c:169 msgid "File descriptor to write IOR to" msgstr "" #: ../activation-server/activation-server-main.c:169 #: ../bonobo-activation/bonobo-activation-init.c:355 #: ../bonobo-activation/bonobo-activation-init.c:365 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:172 msgid "" "Register as the users' activation server without locking [!] for debugging" msgstr "" #: ../activation-server/activation-server-main.c:177 msgid "Query expression to evaluate" msgstr "" #: ../activation-server/activation-server-main.c:177 msgid "EXPRESSION" msgstr "" #: ../activation-server/activation-server-main.c:426 #: ../utils/bonobo-activation-sysconf.c:304 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" #: ../activation-server/object-directory-load.c:101 msgid "a NULL iid is not valid" msgstr "" #: ../activation-server/object-directory-load.c:105 #, c-format msgid "iid %s has a NULL type" msgstr "" #: ../activation-server/object-directory-load.c:109 #, c-format msgid "iid %s has a NULL location" msgstr "" #: ../activation-server/object-directory-load.c:118 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "" #: ../activation-server/object-directory-load.c:348 #, c-format msgid "Property '%s' has no value" msgstr "" #: ../activation-server/object-directory-load.c:580 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "" #: ../activation-server/object-directory-load.c:627 #, c-format msgid "Trying dir %s" msgstr "" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 msgid "EOF from child process\n" msgstr "" #: ../bonobo-activation/bonobo-activation-fork-server.c:435 msgid "Couldn't spawn a new process" msgstr "" #: ../bonobo-activation/bonobo-activation-init.c:355 #: ../bonobo-activation/bonobo-activation-init.c:365 msgid "File descriptor to print IOR on" msgstr "" #: ../bonobo-activation/bonobo-activation-init.c:357 #: ../bonobo-activation/bonobo-activation-init.c:367 msgid "IID to activate" msgstr "" #: ../bonobo-activation/bonobo-activation-init.c:359 #: ../bonobo-activation/bonobo-activation-init.c:369 msgid "Prevent registering of server with OAF" msgstr "" #: ../bonobo-activation/bonobo-activation-init.c:403 msgid "Bonobo Activation" msgstr "" #: ../bonobo-activation/bonobo-activation-init.c:404 msgid "Show Bonobo Activation options" msgstr "" #: ../bonobo-activation/bonobo-activation-init.c:512 msgid "Bonobo activation options" msgstr "" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "" #: ../bonobo/bonobo-object.c:923 msgid "POA" msgstr "" #: ../bonobo/bonobo-object.c:923 msgid "Custom CORBA POA" msgstr "" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "የIO ስህተት" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "" #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "" #: ../bonobo/bonobo-generic-factory.h:79 ../bonobo/bonobo-generic-factory.h:83 msgid "Could not initialize Bonobo" msgstr "Bonobo ማስጀመር አልቻልኩም" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s" msgstr "" #: ../bonobo/bonobo-moniker-util.c:246 msgid "Failed to activate object" msgstr "" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "" #: ../samples/echo/echo-client.c:22 msgid "I could not initialize Bonobo" msgstr "Bonobo ማስጀመር አልቻልኩም" #: ../samples/echo/echo-client.c:33 msgid "Could not create an instance of the sample echo component" msgstr "" #: ../samples/echo/echo-client.c:45 #, c-format msgid "An exception occurred '%s'" msgstr "" #: ../utils/bonobo-activation-sysconf.c:82 msgid "Could not save configuration file.\n" msgstr "" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "" #: ../utils/bonobo-activation-sysconf.c:86 msgid "Successfully wrote configuration file.\n" msgstr "" #: ../utils/bonobo-activation-sysconf.c:103 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" #: ../utils/bonobo-activation-sysconf.c:145 #, c-format msgid "%s already in configuration file\n" msgstr "" #: ../utils/bonobo-activation-sysconf.c:165 msgid "there is not a properly structured configuration file\n" msgstr "" #: ../utils/bonobo-activation-sysconf.c:236 msgid "Bonobo-activation configuration file contains:\n" msgstr "" #: ../utils/bonobo-activation-sysconf.c:266 msgid "Directory to remove from configuration file" msgstr "" #: ../utils/bonobo-activation-sysconf.c:266 #: ../utils/bonobo-activation-sysconf.c:268 msgid "PATH" msgstr "" #: ../utils/bonobo-activation-sysconf.c:268 msgid "Directory to add to configuration file" msgstr "" #: ../utils/bonobo-activation-sysconf.c:270 msgid "Display directories in configuration file" msgstr "" #: ../utils/bonobo-activation-sysconf.c:272 msgid "Display path to configuration file" msgstr "" #~ msgid "directory path" #~ msgstr "የዶሴ መተላለፊያ" #~ msgid "Domain of ObjectDirectory" #~ msgstr "የObjectDirectory ዶሜን" #~ msgid "DOMAIN" #~ msgstr "ዶሜን" libbonobo-2.32.1/po/az.po0000644000076400007640000003774011173072711012100 00000000000000# translation of libbonobo.HEAD.az.po to Azerbaijani Turkish # Copyright (C) 2001, 2004 Free Software Foundation, Inc. # Vasif İsmayıloğlu MD , 2001. # Mətin Əmirov , 2004. # msgid "" msgstr "" "Project-Id-Version: libbonobo.HEAD.az\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2006-10-22 16:55+0200\n" "PO-Revision-Date: 2004-02-02 12:14+0200\n" "Last-Translator: Mətin Əmirov \n" "Language-Team: Azerbaijani Turkish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.0.2\n" #: ../activation-server/activation-context-corba.c:523 msgid "Couldn't find which child the server was listed in" msgstr "Vericinin sıralandığı törəmə gedişatı tapıla bilmədi" #: ../activation-server/activation-context-corba.c:815 msgid "Not a valid Activation ID" msgstr "Hökmsüz Aktivləşdirmə ID'si" #: ../activation-server/activation-server-main.c:162 msgid "Directory to read .server files from" msgstr ".server fayllarının oxunacağı qovluq" #: ../activation-server/activation-server-main.c:162 msgid "DIRECTORY" msgstr "QOVLUQ" #: ../activation-server/activation-server-main.c:165 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "FəallaşdırmaMəzmunu olaraq xidmət et (əsas: yalnız Cismlər qovluğu)" #: ../activation-server/activation-server-main.c:169 msgid "File descriptor to write IOR to" msgstr "IOR'u yazacaq fayl izahatçısı" #: ../activation-server/activation-server-main.c:169 #: ../bonobo-activation/bonobo-activation-init.c:355 #: ../bonobo-activation/bonobo-activation-init.c:365 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:172 msgid "" "Register as the users' activation server without locking [!] for debugging" msgstr "" #: ../activation-server/activation-server-main.c:177 msgid "Query expression to evaluate" msgstr "Qiymət veriləcək sorğulama ifadəsi" #: ../activation-server/activation-server-main.c:177 msgid "EXPRESSION" msgstr "İFADƏ" #: ../activation-server/activation-server-main.c:426 #: ../utils/bonobo-activation-sysconf.c:304 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "CORBA CosNaming xidməti" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "Adlandırma xidməti" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "Bildiriş xidməti" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "Fəallaşdırma üçün bildiriş xidməti" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "Bölüşdürə bilən cismləri uzaqdan istifadə etməyi indilik dəstəkləmirik" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "Bonobo Başlatma quraşdırma faylı müvəffəqiyyətlə oxunmadı. Xahiş edirik, " "hökmlü olub olmadığını yoxlayın: %s" #: ../activation-server/object-directory-load.c:101 msgid "a NULL iid is not valid" msgstr "NULL iid hökmsüzdür" #: ../activation-server/object-directory-load.c:105 #, c-format msgid "iid %s has a NULL type" msgstr "iid %s NULL növündəndir" #: ../activation-server/object-directory-load.c:109 #, c-format msgid "iid %s has a NULL location" msgstr "iid %s bir NULL yerini daxil edir" #: ../activation-server/object-directory-load.c:118 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "hökmsüz hərf '%c' iid '%s' içində" #: ../activation-server/object-directory-load.c:348 #, c-format msgid "Property '%s' has no value" msgstr "Xüsusiyyət '%s'-nin qiyməti yoxdur" #: ../activation-server/object-directory-load.c:580 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "Hökmsüz formatlanmış %s XML faylı oxuna bilmədi" #: ../activation-server/object-directory-load.c:627 #, c-format msgid "Trying dir %s" msgstr "dir %s sınanır" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "Törəmə gedişat xəta ismarıcı vermədi, namə'lum iflas baş verdi" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "Törəmə gedişatdan oxuna bilmədi: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, fuzzy msgid "EOF from child process\n" msgstr "Törəmə gedişatdan oxuna bilmədi: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:435 #, fuzzy msgid "Couldn't spawn a new process" msgstr "Təzə bir gedişat çəngəlləyə bilmədim" #: ../bonobo-activation/bonobo-activation-init.c:355 #: ../bonobo-activation/bonobo-activation-init.c:365 msgid "File descriptor to print IOR on" msgstr "IORu yazdıracaq dosye izahatı" #: ../bonobo-activation/bonobo-activation-init.c:357 #: ../bonobo-activation/bonobo-activation-init.c:367 msgid "IID to activate" msgstr "İşə salınacaq IID" #: ../bonobo-activation/bonobo-activation-init.c:359 #: ../bonobo-activation/bonobo-activation-init.c:369 msgid "Prevent registering of server with OAF" msgstr "OAFla verici qeydinə icazə vermə" #: ../bonobo-activation/bonobo-activation-init.c:403 #, fuzzy msgid "Bonobo Activation" msgstr "Bonobo fəallaşdırma seçənəkləri" #: ../bonobo-activation/bonobo-activation-init.c:404 #, fuzzy msgid "Show Bonobo Activation options" msgstr "Bonobo fəallaşdırma seçənəkləri" #: ../bonobo-activation/bonobo-activation-init.c:512 msgid "Bonobo activation options" msgstr "Bonobo fəallaşdırma seçənəkləri" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "`%s'-a g_module_open `%s' ilə bacarılmadı" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "`%s' içində Bonobo_Plugin_info simvolu tapıla bilmir" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "`%s' e'malatxanası `%s' üçün NIL cavabı verdi" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "`%s' shlib-i `%s' daxil etmir" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "Ad" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "Proqramın xüsusi adı" #: ../bonobo/bonobo-object.c:923 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:923 msgid "Custom CORBA POA" msgstr "Xüsusi CORBA POA" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "Dəstəklənməyən əməliyyat sınandı" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "GÇ (IO) Xətası" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "Hökmsüz arqument qiyməti" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "Cism tapılmadı" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "Cism izahında imla xətası var" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "Cism vericisini işə sala bilmədim" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "Axıma yetişmək üçün lazımi səlahiyyətlərə sahib deyilsən" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "Dəstəklənməyən bir axım əməliyyatı sınandı" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "Axımda bir G/Ç xətası oldu" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "Saxlamada bir G/Ç xətası oldu" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "Ad qeydlərdə onsuz da var" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "Cism qeydlərdə tapıla bilmədi" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "Qeydlərdə dəyişiklik üçün səlahiyyətlər yoxdur" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "Dəstəklənməyən bir saxlama əməliyyatı sınandı" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "Cism bir axım deyildir" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "Cism bir saxlama deyildir" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "Saxlama boş deyildir" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "xətalı istifadəçi ara üzü XML izahı" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "xətalı XML istifadəçi ara üzü elementi" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "soraqlanan UI atributu mövcud deyildir" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "Namə'lum əmr ya da fe'l" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "Əmr qeyri həssasdır" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "hökmsüz mə'lumat növü" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "axım tapıla bilmədi" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "mülkiyyət tapıla bilmədi" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "mülkiyyət səhv növdədir" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "mülkiyyət sırf oxunandır" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "config database backend failed " #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "Moniker ara üzü tapıla bilmədi" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "Moniker fəallaşdırılması vaxtı doldu" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "Monikerdə sintaks xətası" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "Moniker namə'lum moniker prefiksinə malikdir" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "Xəta yoxlaması xətası; xüsusi hal yoxdur" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "İzahsız ümumi fəallaşdırma xətası" #: ../bonobo/bonobo-generic-factory.h:79 ../bonobo/bonobo-generic-factory.h:83 msgid "Could not initialize Bonobo" msgstr "Bonobo başladıla bilmir" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s" msgstr "'%s'-i çözümləmə vəya uzadmada müvəffəqiyyətsizlik" #: ../bonobo/bonobo-moniker-util.c:246 msgid "Failed to activate object" msgstr "Cismi işə sala bilmədim" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "'%s'-ni fəallaşdırırkən estisna yarandı" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "'%s'-ni işə sala bilmədim" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "HTTP Moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "ORB IOR dəstək monikeri" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "Standard Moniker e'malatxanası" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "sıravi Oaf fəallaşdırma monikeri" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "sıravi Oaf sorğu monikeri" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "sıravi e'malatxanası 'yeni' monikeri" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "sıravi üzv monikeri" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "axım MonikerExtender" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Bonobo Əks-səda verici fabrika" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Bonobo Əks-səda nünumə proqram" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Əks-səda hissəsi" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Əks-səda hissə fabrika" #: ../samples/echo/echo-client.c:22 msgid "I could not initialize Bonobo" msgstr "Bonobonu başlada bilmədim" #: ../samples/echo/echo-client.c:33 msgid "Could not create an instance of the sample echo component" msgstr "Nümunə əks-səda hissəsinin nümunəsini yarada bilmədim" #: ../samples/echo/echo-client.c:45 #, c-format msgid "An exception occurred '%s'" msgstr "Estisna yarandı '%s'" #: ../utils/bonobo-activation-sysconf.c:82 msgid "Could not save configuration file.\n" msgstr "Quraşdırma faylını qeyd edə bilmədim .\n" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "Xahiş edirik, '%s'-i yazmaq səlahiyyətiiz olub olmadığını yoxlayın.\n" #: ../utils/bonobo-activation-sysconf.c:86 msgid "Successfully wrote configuration file.\n" msgstr "Quraşdırma faylını müvəffəqiyyətlə yazdım .\n" #: ../utils/bonobo-activation-sysconf.c:103 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "quraşdırma faylı :\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:145 #, c-format msgid "%s already in configuration file\n" msgstr "%s onsuz da quraşdırma faylında var\n" #: ../utils/bonobo-activation-sysconf.c:165 msgid "there is not a properly structured configuration file\n" msgstr "düzgün quraşdırma faylı yoxdur\n" #: ../utils/bonobo-activation-sysconf.c:236 msgid "Bonobo-activation configuration file contains:\n" msgstr "Bonobo fəallaşdırma quraşdırma faylı möhtəviyyatı :\n" #: ../utils/bonobo-activation-sysconf.c:266 msgid "Directory to remove from configuration file" msgstr "Quraşdırma faylından silinecek cərgə" #: ../utils/bonobo-activation-sysconf.c:266 #: ../utils/bonobo-activation-sysconf.c:268 msgid "PATH" msgstr "" #: ../utils/bonobo-activation-sysconf.c:268 msgid "Directory to add to configuration file" msgstr "Quraşdırma faylına əlavə ediləcək cərgə" #: ../utils/bonobo-activation-sysconf.c:270 msgid "Display directories in configuration file" msgstr "Quraşdırma faylındakı cərgələri göstər" #: ../utils/bonobo-activation-sysconf.c:272 msgid "Display path to configuration file" msgstr "Quraşdırma faylındakı cığırları göstər" #~ msgid "Race condition activating server '%s'" #~ msgstr "'%s' vericisini fəallaşdırırkən yarış vəziyyəti" #~ msgid "Child received signal %u (%s)" #~ msgstr "Törəmə gedişat siqnal %u'yu aldı ( %s )" #~ msgid "Unknown non-exit error (status is %u)" #~ msgstr "Namə'lum xəta ( hal %u )" #~ msgid "bonobo-activation failed to set process group of %s: %s\n" #~ msgstr "bonobo-activation %s qruplarını seçkisini bacarmadı: %s\n" #~ msgid "Failed to execute %s: %d (%s)\n" #~ msgstr "%s icra edilə bilmədi: %d (%s)\n" #~ msgid "Too many alias levels for a locale, may indicate a loop" #~ msgstr "" #~ "Lokal üçün həddindən artıq ləqəb səviyəsi var, buna döngü səbəp olmuş " #~ "olabilər" #~ msgid "directory path" #~ msgstr "dizinleme" libbonobo-2.32.1/po/as.po0000644000076400007640000005214011173072711012060 00000000000000# translation of as.po to Assamese # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Amitakhya Phukan , 2008. msgid "" msgstr "" "Project-Id-Version: as\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2008-02-04 12:31+0000\n" "PO-Revision-Date: 2008-02-05 17:07+0530\n" "Last-Translator: Amitakhya Phukan \n" "Language-Team: Assamese\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.11.4\n" "Plural-Forms: nplurals=2; plural=(n!=1)\n" #: ../activation-server/activation-context-corba.c:527 msgid "Couldn't find which child the server was listed in" msgstr "সেৱকৰ তথ্য ধাৰণকাৰী চাইল্ড চিনাক্ত কৰা নাযায়" #: ../activation-server/activation-context-corba.c:819 msgid "Not a valid Activation ID" msgstr "সক্ৰিয়কৰণ ID বৈধ নহয়" #: ../activation-server/activation-server-main.c:162 msgid "Directory to read .server files from" msgstr ".server নথিপত্ৰ পঢ়াৰ উদ্দেশ্যে চিহ্নিত পঞ্জিকা" #: ../activation-server/activation-server-main.c:162 msgid "DIRECTORY" msgstr "DIRECTORY" #: ../activation-server/activation-server-main.c:165 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "" "ActivationContext ৰূপে প্ৰয়োগ কৰা হ'ব (অবিকল্পিতৰূপে অকল ObjectDirectory হিচাপে " "ব্যৱহাৰ কৰা হয়)" #: ../activation-server/activation-server-main.c:169 msgid "File descriptor to write IOR to" msgstr "IOR লিখাৰ উদ্দেশ্যে চিহ্নিত নথিপত্ৰ ডিস্ক্ৰিপ্টৰ" #: ../activation-server/activation-server-main.c:169 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:172 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "লক বিনা ব্যৱহাৰকাৰীৰ সক্ৰিয়কৰণ সেৱক ৰূপে নিবন্ধন কৰা হ'ব। সতৰ্কবাৰ্তা: এই বিকল্পেৰ ব্যৱহাৰেৰ ফলে ব্যৱহাৰকাৰীৰ চলমান সেশানেৰ উপৰ বিৰূপ প্ৰতিক্ৰিয়া হওয়াৰ সম্ভাবনা ৰয়েছে এবং অকল ডিবাগ কৰাৰ জন্য এটি প্ৰয়োগ কৰা আবশ্যক।" #: ../activation-server/activation-server-main.c:180 msgid "Query expression to evaluate" msgstr "মীমাংসা কৰাৰ উদ্দেশ্যে কোয়েৰি" #: ../activation-server/activation-server-main.c:180 msgid "EXPRESSION" msgstr "মান" #: ../activation-server/activation-server-main.c:430 #: ../utils/bonobo-activation-sysconf.c:305 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "কমান্ড-লাইন থেকে ব্যৱহাৰযোগ্য সমস্ত বিকল্পেৰ তালিকা দেখতে '%s --help' প্ৰয়োগ কৰুন।\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "CORBA CosNaming সেৱা" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "নেম সেৱা" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "সূচনাপ্ৰদানেৰ সেৱা" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "সক্ৰিয়কৰণেৰ জন্য ব্যৱহৃত সূচনাপ্ৰদানেৰ সেৱা" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "দূৰবৰ্তী প্ৰসেসেৰ ক্ষেত্ৰে shlib অবজেক্ট সক্ৰিয়কৰণ বৰ্তমানে উপলব্ধ নেই" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "Bonobo সক্ৰিয়কৰণেৰ কনফিগাৰেশন নথিপত্ৰ সঠিকৰূপে পড়া নাযায়। অনুগ্ৰহ কৰে পৰীক্ষা কৰুন " "এটি বৈধ কিনা: %s" #: ../activation-server/object-directory-load.c:102 msgid "a NULL iid is not valid" msgstr "NULL iid বৈধ নহয়" #: ../activation-server/object-directory-load.c:106 #, c-format msgid "iid %s has a NULL type" msgstr "iid %s NULL প্ৰকৃতিৰ" #: ../activation-server/object-directory-load.c:110 #, c-format msgid "iid %s has a NULL location" msgstr "iid %s'ৰ ক্ষেত্ৰে অবস্থান NULL" #: ../activation-server/object-directory-load.c:119 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "অবৈধ অক্ষৰ '%c', iid '%s'-ৰ মধ্যে অন্তৰ্ভুক্ত কৰা হয়েছে" #: ../activation-server/object-directory-load.c:349 #, c-format msgid "Property '%s' has no value" msgstr "'%s' নামক বৈশিষ্ট্যেৰ মান অনুপস্থিত" #: ../activation-server/object-directory-load.c:583 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "ভুলভাবে গঠিত XML নথি %s পাৰ্স কৰতে ব্যৰ্থ" #: ../activation-server/object-directory-load.c:629 #, c-format msgid "Trying dir %s" msgstr "dir %s প্ৰচেষ্টা কৰা হচ্ছে" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "চাইল্ড প্ৰসেস থেকে কোনো ত্ৰুটিৰ বাৰ্তা উৎপন্ন হয়নি, অজানা সমস্যা ঘটেছে" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "চাইল্ড প্ৰসেস থেকে পড়তে ব্যৰ্থ: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 msgid "EOF from child process\n" msgstr "চাইল্ড প্ৰসেস থেকে EOF প্ৰাপ্ত\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:438 msgid "Couldn't spawn a new process" msgstr "নতুন প্ৰসেস স্পন কৰতে ব্যৰ্থ" #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "File descriptor to print IOR on" msgstr "IOR প্ৰিন্ট কৰাৰ উদ্দেশ্যে চিহ্নিত নথিপত্ৰ ডিস্ক্ৰিপ্টৰ" #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:399 msgid "IID to activate" msgstr "সক্ৰিয় কৰাৰ উদ্দেশ্যে IID" #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Prevent registering of server with OAF" msgstr "OAF'ৰ সেৱক নিবন্ধীকৰণ প্ৰতিৰোধ কৰা হ'ব" #: ../bonobo-activation/bonobo-activation-init.c:409 msgid "Bonobo Activation options:" msgstr "Bonobo সক্ৰিয়কৰণ সংক্ৰান্ত বিকল্প:" #: ../bonobo-activation/bonobo-activation-init.c:410 msgid "Show Bonobo Activation options" msgstr "Bonobo সক্ৰিয়কৰণ সংক্ৰান্ত বিকল্প প্ৰদৰ্শন কৰা হ'ব" #: ../bonobo-activation/bonobo-activation-init.c:518 msgid "Bonobo activation options" msgstr "Bonobo সক্ৰিয়কৰণ সংক্ৰান্ত বিকল্প" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "`%s'-ৰ g_module_open `%s' সহ ব্যৰ্থ" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "`%s'-ৰ মধ্যে Bonobo_Plugin_info চিহ্ন পাওয়া নাযায়" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "`%s' ফ্যাক্টৰিৰ দ্বাৰা `%s'-ৰ ক্ষেত্ৰে NIL মান প্ৰস্তুত কৰা হয়েছে" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Shlib `%s'-ৰ মধ্যে `%s' উপস্থিত নেই" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "নাম" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "অ্যাপ্লিকেশনেৰ জন্য নিৰ্ধাৰিত স্বতন্ত্ৰ নাম" #: ../bonobo/bonobo-object.c:926 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:926 msgid "Custom CORBA POA" msgstr "কাস্টম CORBA POA" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "অসমৰ্থিত কৰ্ম সঞ্চানলেৰ প্ৰচেষ্টা" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "IO সংক্ৰান্ত সমস্যা" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "আৰ্গুমেন্টেৰ মান বৈধ নহয়" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "অবজেক্ট পাওয়া নাযায়" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "অবজেক্টেৰ বৰ্ণনায় সিন্টেক্স জড়িত সমস্যা" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "ফ্যাক্টৰি থেকে অবজেক্ট সক্ৰিয় কৰতে ব্যৰ্থ" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "স্ট্ৰিম ব্যৱহাৰেৰ অনুমোদন নেই" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "স্ট্ৰিম-জড়িত অসমৰ্থিত কৰ্ম সঞ্চালনেৰ প্ৰচেষ্টা কৰা হয়েছে" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "স্ট্ৰিমেৰ ক্ষেত্ৰে IO সংক্ৰান্ত সমস্যা" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "সংগ্ৰহস্থলেৰ ক্ষেত্ৰে IO সংক্ৰান্ত সমস্যা" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "সংগ্ৰহস্থলেৰ মধ্যে নাম বৰ্তমানে উপস্থিত" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "সংগ্ৰহস্থলেৰ মধ্যে অবজেক্ট পাওয়া নাযায়" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "সংগ্ৰহস্থলেৰ মধ্যে কৰ্ম সঞ্চালনেৰ অনুমতি অনুপস্থিত" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "সংগ্ৰহস্থলেৰ ক্ষেত্ৰ অসমৰ্থিত কৰ্ম সঞ্চালনেৰ প্ৰচেষ্টা কৰা হয়েছে" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "চিহ্নিত অবজেক্ট স্ট্ৰিম নহয়" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "চিহ্নিত অবজেক্ট সংগ্ৰহস্থল নহয়" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "সংগ্ৰহস্থল ফাঁকা নহয়" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "XML ইউজাৰ ইন্টাৰফেসেৰ বিবৰণ ভুলভাবে গঠিত" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "XML ইউজাৰ ইন্টাৰফেসেৰ বস্তুৰ পাথ ভুল" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "অনুৰোধ কৰা UI বৈশিষ্ট্য বৰ্তমানে অনুপস্থিত" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "অজানা কমান্ড অথবা ক্ৰিয়া" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "কমান্ড সংবেদনশীল নহয়" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "তথ্যেৰ ধৰন সঠিক নহয়" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "স্ট্ৰিম পাওয়া নাযায়" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "বৈশিষ্ট্য পাওয়া নাযায়" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "বৈশিষ্ট্যেৰ ধৰন অবৈধ" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "অকল পাঠ-যোগ্য বৈশিষ্ট্য" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "কনফিগ ডাটাবেসেৰ ব্যাক-এন্ড বিফল" #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "Moniker প্ৰেক্ষাপট পাওয়া নাযায়" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "Moniker সক্ৰিয়কৰণেৰ সময়সীমা অতিক্ৰান্ত" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "moniker'ৰ মধ্যে সিন্টেক্স জড়িত ত্ৰুটি" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "Moniker'ৰ মধ্যে অজানা moniker প্ৰেফিক্স" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "ত্ৰুটি পৰীক্ষণে সমস্যা; কোনো এক্সেপশন উৎপন্ন হয়নি" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "বৰ্ণনাবিনা সক্ৰিয়কৰণ সংক্ৰান্ত সাধাৰণ ত্ৰুটি" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s" msgstr "'%s মীমাংসা অথবা প্ৰসাৰিত কৰতে ব্যৰ্থ" #: ../bonobo/bonobo-moniker-util.c:247 msgid "Failed to activate object" msgstr "অবজেক্ট সক্ৰিয় কৰতে ব্যৰ্থ" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "'%s' সক্ৰিয় কৰতে ব্যৰ্থ" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "'%s' সক্ৰিয় কৰতে ব্যৰ্থ" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "HTTP Moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "ORB IOR ব্যৱস্থাকাৰী moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "প্ৰমিত Moniker ফ্যাক্টৰি" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "সাধাৰণ Oaf সক্ৰিয়কাৰী moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "সাধাৰণ Oaf অনুসন্ধানকাৰী moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "সাধাৰণ ফ্যাক্টৰিৰ 'নতুন' moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "সাধাৰণ বস্তুৰ moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "MonikerExtender স্ট্ৰিম কৰা হ'ব" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Bonobo Echo সেৱক ফ্যাক্টৰি" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Bonobo Echo সেৱকৰ নমুনা প্ৰোগ্ৰাম" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Echo'ৰ বস্তু" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Echo বস্তুৰ ফ্যাক্টৰি" #: ../samples/echo/echo-client.c:24 msgid "I could not initialize Bonobo" msgstr "Bonobo আৰম্ভ কৰতে ব্যৰ্থ" #: ../samples/echo/echo-client.c:35 msgid "Could not create an instance of the sample echo component" msgstr "echo বস্তুৰ নমুনাৰ ইনস্ট্যান্স নিৰ্মাণে ব্যৰ্থ" #: ../samples/echo/echo-client.c:47 #, c-format msgid "An exception occurred '%s'" msgstr "'%s'-এ এক্সেপশন উৎপন্ন হয়েছে" #: ../utils/bonobo-activation-sysconf.c:83 msgid "Could not save configuration file.\n" msgstr "কনফিগাৰেশন নথিপত্ৰ সংৰক্ষণ কৰতে ব্যৰ্থ।\n" #: ../utils/bonobo-activation-sysconf.c:84 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "অনুগ্ৰহ কৰে নিশ্চিত কৰুন '%s'-এ মধ্যে জন্য আপনাৰ পৰ্যাপ্ত অনুমতি ৰয়েছে কিনা।\n" #: ../utils/bonobo-activation-sysconf.c:87 msgid "Successfully wrote configuration file.\n" msgstr "কনফিগাৰেশন নথিপত্ৰ সাফল্যেৰ সাথে লিখা হয়েছে।\n" #: ../utils/bonobo-activation-sysconf.c:104 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "কনফিগাৰেশন নথিপত্ৰ হল:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:146 #, c-format msgid "%s already in configuration file\n" msgstr "%s বৰ্তমানে কনফিগাৰেশন নথিপত্ৰে অন্তৰ্ভুক্ত ৰয়েছে\n" #: ../utils/bonobo-activation-sysconf.c:166 msgid "there is not a properly structured configuration file\n" msgstr "সঠিকৰূপে গঠিত কনফিগাৰেশন নথিপত্ৰ উপস্থিত নেই\n" #: ../utils/bonobo-activation-sysconf.c:237 msgid "Bonobo-activation configuration file contains:\n" msgstr "Bonobo-activation কনফিগাৰেশন নথিপত্ৰেৰ মধ্যে ৰয়েছে:\n" #: ../utils/bonobo-activation-sysconf.c:267 msgid "Directory to remove from configuration file" msgstr "কনফিগাৰেশন নথিপত্ৰ থেকে অপসাৰণেৰ জন্য চিহ্নিত পঞ্জিকা" #: ../utils/bonobo-activation-sysconf.c:267 #: ../utils/bonobo-activation-sysconf.c:269 msgid "PATH" msgstr "PATH" #: ../utils/bonobo-activation-sysconf.c:269 msgid "Directory to add to configuration file" msgstr "কনফিগাৰেশন নথিপত্ৰে যোগ কৰাৰ উদ্দেশ্যে চিহ্নিত পঞ্জিকা" #: ../utils/bonobo-activation-sysconf.c:271 msgid "Display directories in configuration file" msgstr "কনফিগাৰেশন নথিপত্ৰেৰ মধ্যে পঞ্জিকা প্ৰদৰ্শন কৰা হ'ব" #: ../utils/bonobo-activation-sysconf.c:273 msgid "Display path to configuration file" msgstr "কনফিগাৰেশন নথিপত্ৰেৰ পাথ প্ৰদৰ্শন কৰা হ'ব" libbonobo-2.32.1/po/dz.po0000644000076400007640000006454211173072711012103 00000000000000# Dzongkha translation of libbonobo. # Copyright @ 2006 Free software foundation,Inc. # Mindu Dorji. # msgid "" msgstr "" "Project-Id-Version: libbonobo.HEAD.dz\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-03-04 13:02+0600\n" "PO-Revision-Date: 2007-03-01 16:17+0530\n" "Last-Translator: norbu \n" "Language-Team: DZONGKHA \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" "X-Poedit-Language: Dzongkha\n" "X-Poedit-Country: BHUTAN\n" "X-Poedit-SourceCharset: utf-8\n" #: ../activation-server/activation-context-corba.c:524 msgid "Couldn't find which child the server was listed in" msgstr "སར་བར་དེ་ ཆ་ལག་ག་ཅིའི་ནང་ ཐོ་བཀོད་འབད་འབདཝ་ཨིན་ན་ འཚོལ་མ་ཐོབ།" #: ../activation-server/activation-context-corba.c:816 msgid "Not a valid Activation ID" msgstr "ཤུགས་བཟོ་ནིའི་ཨའི་ཌི་ ནུས་ཅན་ཅིག་མེན་པས།" #: ../activation-server/activation-server-main.c:162 msgid "Directory to read .server files from" msgstr ".སར་བར་ཡིག་སྣོད་ཚུ་ ལྷག་ནིའི་སྣོད་ཐོ།" #: ../activation-server/activation-server-main.c:162 msgid "DIRECTORY" msgstr "སྣོད་ཐོ།" #: ../activation-server/activation-server-main.c:165 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "ཤུགས་བཟོའི་སྐབས་འབབ་བཟུམ་ཅིག་སྦེ་ ལཱ་འབདཝ་ཨིན། (སྔོན་སྒྲིག་དེ་ དངོས་པའི་སྣོད་ཐོ་ཙམ་ཅིག་ཨིན)" #: ../activation-server/activation-server-main.c:169 msgid "File descriptor to write IOR to" msgstr "ཨའི་ཨོ་ཨར་འབྲི་སའི་ ཡིག་སྣོད་འགྲེལ་བཤདཔ།" #: ../activation-server/activation-server-main.c:169 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:388 msgid "FD" msgstr "ཡིག་སྣོད་འགྲེལ་བཤདཔ།" #: ../activation-server/activation-server-main.c:172 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "" "ལྡེ་མིག་མ་རྐྱབས་པར་ ལག་ལེན་པ་གི་ནུས་ལྡན་བཟོ་ནིའི་སར་བར་སྦེ་ཐོའགོད་འབད། ཉེན་བརྡ་: འ་ནི་གདམ་ཁ་འདི་" "གིས་ ལག་ལེན་པ་གི་གཡོག་བའི་ལཱ་ཡུན་འདི་གི་ རྩ་བརྟན་ལུ་ ཉེན་ཁ་ཅན་གྱི་གནོད་པ་ཚུ་འོང་ དེ་ལས་དེ་རྐྱེན་སེལ་" "འབད་ནིའི་དོན་ལུ་རྐྱངམ་ཅིག་ལག་ལེན་འཐབ་དགོ" #: ../activation-server/activation-server-main.c:180 msgid "Query expression to evaluate" msgstr "བརྟག་ཞིབ་ཀྱི་དོན་ལུ་ འདྲི་དཔྱད་ཀྱི་གསལ་བརྗོད།" #: ../activation-server/activation-server-main.c:180 msgid "EXPRESSION" msgstr "གསལ་བརྗོད།" #: ../activation-server/activation-server-main.c:429 #: ../utils/bonobo-activation-sysconf.c:304 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "འཐོབ་ཚུགས་པའི་བཀོད་ལམ་གདམ་ཁའི་ཐོ་ཡིག་ཆ་ཚང་ཅིག་བལྟ་ནི་ལུ་ '%s --help' གཡོག་བཀོལ།\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "ཀོར་བཱ་ ཀོསི་ནེ་མིང་ ཞབས་ཏོག" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "མིང་གི་ཞབས་ཏོག" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "བརྡ་བསྐུལ་ཞབས་ཏོག" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "ཤུགས་བཟོའི་བརྡ་བསྐུལ་ཞབས་ཏོག" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "" "ང་བཅས་ཀྱིས་ ད་ཚུན་གྱི་བར་ན་ ཐག་རིང་ལས་སྦྱོར་ནང་ལུ་ shlib དངོས་པོ་ཤུགས་ལྡན་བཟོ་ནིའི་ ལེགས་སྐྱོང་" "འཐབ་ནི་མེད།" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "བཱོ་ནོ་བཱོ་ ཤུགས་བཟོའི་རིམ་སྒྲིག་ཡིག་སྣོད་དེ་ མཐར་འཁྱོལ་སྦེ་ལྷག་མ་ཚུགས། %s ནང་ལུ་ ནུས་ཅན་ཨིནམ་མེནམ་ " "ཞིབ་དཔྱད་འབད།" #: ../activation-server/object-directory-load.c:101 msgid "a NULL iid is not valid" msgstr "སྟོང་པའི་ ཨའི་ཨའི་ཌི་དེ་ ནུས་མེད་ཨིན་པས།" #: ../activation-server/object-directory-load.c:105 #, c-format msgid "iid %s has a NULL type" msgstr "ཨའི་ཨའི་ཌི་ %s ལུ་ སྟོང་པའི་དབྱེ་བ་ཅིག་འདུ་ག" #: ../activation-server/object-directory-load.c:109 #, c-format msgid "iid %s has a NULL location" msgstr "ཨའི་ཨའི་ཌི་ %s ལུ་ སྟོང་པའི་གནས་ཁོངས་ཅིག་འདུ་ག" #: ../activation-server/object-directory-load.c:118 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "ནུས་མེད་ཡིག་འབྲུ་ '%c' འདུག ཨའི་ཨའི་ཌི་ '%s' ནང་།" #: ../activation-server/object-directory-load.c:348 #, c-format msgid "Property '%s' has no value" msgstr "རྒྱུ་དངོས་ ’%s’ དེ་ལུ་ བེ་ལུ་མིན་འདུ་ག" #: ../activation-server/object-directory-load.c:580 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "བྱང་ཉེས་སྦེ་ གཞི་བསྒྲུབས་འབད་མི་ ཨེགསི་ཨེམ་ཨེལ་ཡིག་ཆ་ %s དེ་ལུ་ མིང་དཔྱད་འབད་མ་ཚུགས།" #: ../activation-server/object-directory-load.c:626 #, c-format msgid "Trying dir %s" msgstr "སྣོད་ཐོ་ %s ལུ་ འབད་རྩོལ་བསྐྱེད་དོ།" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "ཆ་ལག་ལས་སྦྱོར་གྱིས་ འཛོལ་བའི་འཕྲིན་དོན་ཅིག་མ་བྱིན། ཤེས་མ་ཚུགས་པའི་ འཐུས་ཤོར་ཅིག་བྱུང་ནུག" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "ཆ་ལག་ལས་སྦྱོར་ %s ནང་ལས་ ལྷག་མ་ཚུགས། \n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 msgid "EOF from child process\n" msgstr "ཆ་ལག་ལས་སྦྱོར་ནང་ལས་ ཨི་ཨོ་ཨེཕ། \n" #: ../bonobo-activation/bonobo-activation-fork-server.c:434 msgid "Couldn't spawn a new process" msgstr "ལས་སྦྱོར་གསརཔ་ཅིག་ དར་ཁྱབ་འབྱུང་མ་ཚུགས།" #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:388 msgid "File descriptor to print IOR on" msgstr "ཨའི་ཨོ་ཨར་ དཔར་བསྐྲུན་འབད་སའི་ ཡིག་སྣོད་འགྲེལ་བཤདཔ།" #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:390 msgid "IID to activate" msgstr "ནུས་ལྡན་བཟོ་དགོ་པའི་ཨའི་ཨའི་ཌི།" #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:392 msgid "Prevent registering of server with OAF" msgstr "སར་བར་དེ་ ཨོ་ཨེ་ཨེཕ་དང་གཅིག་ཁར་ ཐོ་བཀོད་འབད་ནི་ལུ་ སྔོན་བཀག་འབད།" #: ../bonobo-activation/bonobo-activation-init.c:400 msgid "Bonobo Activation options:" msgstr "བཱོ་ནོ་བཱོ་ ཤུགས་བཟོའི་གདམ་ཁ་:" #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Show Bonobo Activation options" msgstr "བཱོ་ནོ་བཱོ་ཤུགས་བཟོའི་གདམ་ཁ་སྟོན།" #: ../bonobo-activation/bonobo-activation-init.c:509 msgid "Bonobo activation options" msgstr "བཱོ་ནོ་བཱོ་ ཤུགས་བཟོའི་གདམ་ཁ།" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "‘%s’ གི་ g_module_openདེ་ ‘%s’ དང་གཅིག་ཁར་མ་བཏུབ།" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "'%s' ནང་ལུ་ Bonobo_Plugin_info བརྡ་མཚོན་འཚོལ་མ་ཐོབ།" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "འཕྲུལ་ཁང་ ‘%s’ གིས་ ‘%s’ གི་དོན་ལུ་ ཅི་ཡང་མེདཔ་ ལོག་བཏང་ནུག" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Shlib ‘%s’ གི་ནང་ན་ ‘%s’ མིན་འདུ་ག" #: ../bonobo/bonobo-application.c:350 msgid "Name" msgstr "མིང༌།" #: ../bonobo/bonobo-application.c:350 msgid "Application unique name" msgstr "གློག་རིམ་གྱི་ མཐུན་མོང་མ་ཡིན་པའི་མིང༌།" #: ../bonobo/bonobo-object.c:924 msgid "POA" msgstr "པི་ཨོ་ཨེ།" #: ../bonobo/bonobo-object.c:924 msgid "Custom CORBA POA" msgstr "སྲོལ་སྒྲིག་ ཀོར་བཱ་ པི་ཨོ་ཨེ།" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "རྒྱབ་སྐྱོར་མེད་པའི་ བྱ་བ་ཅིག་ དཔའ་བཅམས་ནུག" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "ཨའི་ཨོ་ འཛོལ་བ།" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "ནུས་མེད་སྒྲུབ་རྟགས་ཀྱི་བེ་ལུ།" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "དངོས་པོ་འཚོལ་མ་ཐོབ།" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "དངོས་པོའི་འགྲེལ་བཤད་ནང་ ཚིག་སྦྱོར་གྱི་འཛོལ་བ།" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "འཕྲུལ་ཁང་ནང་ལས་ དངོས་པོ་ཤུགས་ལྡན་བཟོ་མི་ཚུགས།" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "རྒྱུན་རིམ་ལུ་ འཛུལ་སྤྱོད་ཀྱི་ གནང་བ་མིན་འདུ་ག" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "རྒྱབ་སྐྱོར་མེད་པའི་ རྒྱུན་རིམ་བྱ་བ་ཅིག་ དཔའ་བཅམས་ནུག" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "རྒྱུན་རིམ་ལུ་ ཨའི་ཨོའི་གི་འཛོལ་བ།" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "བསག་མཛོད་ལུ་ ཨའི་ཨོ་གི་འཛོལ་བ།" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "བསག་མཛོད་ནང་ མིང་ཧེ་མ་ལས་འདུ་ག" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "བསག་མཛོད་ནང་ དངོས་པོ་འཚོལ་མ་ཐོབ།" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "བསག་མཛོད་ནང་ བཀོལ་སྤྱོད་འབད་ནིའི་ གནང་བ་མིན་འདུ་ག" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "རྒྱབ་སྐྱོར་མེད་པའི་ བསག་མཛོད་ཀྱི་བྱ་བ་ཅིག་ དཔའ་བཅམས་ནུག" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "དངོས་པོ་དེ་ རྒྱུན་རིམ་ཅིག་མེན་པས།" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "དངོས་པོ་དེ་ བསག་མཛོད་ཅིག་མེན་པས།" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "བསག་མཛོད་སྟོངམ་མེན་པས།" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "བཟོ་ཉེས་གྱུར་ཡོད་པའི་ ལག་ལེན་པའི་ ངོས་འདྲ་བའི་ ཨེགསི་ཨེམ་ཨེལ་འགྲེལ་བཤད།" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "ཨེགསི་ཨེམ་ཨེལ་ ལག་ལེན་པའི་ཆ་ཤས་ཀྱི་ ངོས་འདྲ་བ་ལུ་ ནུས་མེད་འགྲུལ་ལམ།" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "ཞུ་བ་འབད་མི་ ཡུ་ཨའི་ཁྱད་ཆོས་དེ་ གནས་ཏེ་མིན་འདུ་ག" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "མ་ཤེས་པའི་ བརྡ་བཀོད་ ཡང་ན་ བྱ་ཚི་ག" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "བརྡ་བཀོད་དེ་ ཉེན་ཅན་མེན་པས།" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "བདེན་མེད་ཀྱི་ གནད་སྡུད་དབྱེ་བ།" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "རྒྱུན་རིམ་འཚོལ་མ་ཐོབ།" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "རྒྱུ་དངོས་འཚོལ་མ་ཐོབ།" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "རྒྱུ་དངོས་ལུ་ ནུས་མེད་དབྱེ་བ་འདུག" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "རྒྱུ་དངོས་དེ་ ལྷག་ནི་ཙམ་ཅིག་ཨིན་པས།" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "རིམ་སྒྲིག་གི་ གནད་སྡུད་གཞི་རྟེན་གྱི་ རྒྱབ་མཐའ་དེ་མ་བཏུབ།" #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "མོ་ནི་ཀར་གྱི་ ངོས་འདྲ་བ་ འཚོལ་མི་ཐོབ་པས།" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "མོ་ནི་ཀར་ ཤུགས་བཟོའི་དུས་ཚོད་རྫོགས་སོ་ནུག" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "མོ་ནི་ཀར་གྱི་ནང་ན་ ཚིག་སྦྱོར་གྱི་འཛོལ་བ།" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "མོ་ནི་ཀར་ལུ་ མ་ཤེས་པའི་མོ་ནི་ཀར་ སྔོན་ཚིག་ཅིག་འདུ་ག" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "འཛོལ་བ་ཞིབ་དཔྱད་ལུ་འཛོལ་བ། དམིགས་བསལ་་མིན་འདུ་ག" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "འགྲེལ་བཤད་མེད་པར་ ཡོངས་ཁྱབ་ཤུགས་བཟོ་ལུ་འཛོལ་བ།" #: ../bonobo/bonobo-generic-factory.h:79 ../bonobo/bonobo-generic-factory.h:83 msgid "Could not initialize Bonobo" msgstr "བཱོ་ནོ་བཱོ་ འགོ་འབྱེད་འབད་མ་ཚུགས།" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s" msgstr "’%s’ དེ་ མོས་མཐུན་འབད་མ་ཚུགས་ ཡང་ཅིན་ རྒྱ་བསྐྱེད་འབད་མ་ཚུགས།" #: ../bonobo/bonobo-moniker-util.c:246 msgid "Failed to activate object" msgstr "དངོས་པོ་ཤུགས་ལྡན་བཟོ་མ་ཚུགས།" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "’%s’ ལུ་ དམིགས་བསལ་ཤུགས་བཟོ་འབད་དོ།" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "’%s’ ཤུགས་ལྡན་བཟོ་མ་ཚུགས།" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "ཨེཆ་ཊི་ཊི་པི་ མོ་ནི་ཀར།" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "ཨོ་ཨར་བི་ ཨའི་ཨོ་ཨར་ ལེགས་སྐྱོང་འཐབ་ནིའི་ མོ་ནི་ཀར།" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "ཚད་ལྡན་མོ་ནི་ཀར་འཕྲུལ་ཁང༌།" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "ཇེ་ནི་རིཀ་ ཨོ་ཨེ་ཨེཕི་ ཤུགས་བཟོའི་མོ་ནི་ཀར།" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "ཇེ་ནི་རིཀ་ ཨོ་ཨེ་ཨེཕི་ འདྲི་དཔྱད་ཀྱི་ མོ་ནི་ཀར།" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "ཇེ་ནི་རིཀ་ འཕྲུལ་ཁང་གི་ མོ་ནི་ཀར་'གསརཔ'།" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "ཇེ་ནི་རིཀ་རྣམ་གྲངས་ཀྱི་ མོ་ནི་ཀར།" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "རྒྱུན་རིམ་གྱི་ མོ་ནི་ཀར་རྒྱ་བསྐྱེདཔ།" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "བཱོ་ནོ་བཱོ་ བྲག་ཅའི་སར་བར་འཕྲུལ་ཁང༌།" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "བཱོ་ནོ་བཱོ་ བྲག་ཅ་སར་བར་གྱི་ དཔེ་ཚད་ལས་རིམ།" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "བྲག་ཅའི་ཆ་ཤས།" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "བྲག་ཆའི་ཆ་ཤས་འཕྲུལ་ཁང༌།" #: ../samples/echo/echo-client.c:23 msgid "I could not initialize Bonobo" msgstr "ང་གིས་ བཱོ་ནོ་བཱོ་ འག་ོའབྱེད་འབད་མ་ཚུགས།" #: ../samples/echo/echo-client.c:34 msgid "Could not create an instance of the sample echo component" msgstr "བྲག་ཅའི་ཆ་ཤས་དཔེ་ཚད་ཀྱི་ དུས་སྐབས་ཅིག་ བཟོ་མ་ཚུགས།" #: ../samples/echo/echo-client.c:46 #, c-format msgid "An exception occurred '%s'" msgstr "དམིགས་བསལ་ '%s' ཅིག་བྱུང་ནུག" #: ../utils/bonobo-activation-sysconf.c:82 msgid "Could not save configuration file.\n" msgstr "རིམ་སྒྲིག་ཡིག་སྣོད་དེ་ སྲུང་བཞག་འབད་མ་ཚུགས། \n" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "ཁྱོད་ཀྱིས་ ’%s’ ལུ་ འབྲི་ནིའི་གནང་བ་ཡོདཔ་ ངེས་གཏན་བཟོ། \n" #: ../utils/bonobo-activation-sysconf.c:86 msgid "Successfully wrote configuration file.\n" msgstr "རིམ་སྒྲིག་ཡིག་སྣོད་ མཐར་འཁྱོལ་འབད་བྲིས་ནུག\n" #: ../utils/bonobo-activation-sysconf.c:103 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "རིམ་སྒྲིག་ཡིག་སྣོད་ :\n" " %s ཨིན། \n" #: ../utils/bonobo-activation-sysconf.c:145 #, c-format msgid "%s already in configuration file\n" msgstr "%s དེ་ ཧེན་མ་ལས་རང་ རིམ་སྒྲིག་ཡིག་སྣོད་ནང་འདུ་ག\n" #: ../utils/bonobo-activation-sysconf.c:165 msgid "there is not a properly structured configuration file\n" msgstr "ཚུལ་ལྡན་སྦེ་ གཞི་བཀོད་འབད་མི་ རིམ་སྒྲིག་ཡིག་སྣོད་ཅིག་མིན་འདུ་ག\n" #: ../utils/bonobo-activation-sysconf.c:236 msgid "Bonobo-activation configuration file contains:\n" msgstr "བཱོ་ནོ་བཱོ་ ཤུགས་བཟོའི་རིམ་སྒྲིག་ཡིག་སྣོད་ནང་འདུག་:\n" #: ../utils/bonobo-activation-sysconf.c:266 msgid "Directory to remove from configuration file" msgstr "རིམ་སྒྲིག་ཡིག་སྣོད་ནང་ལས་ རྩ་བསྐྲད་གཏང་ནིའི་སྣོད་ཐོ།" #: ../utils/bonobo-activation-sysconf.c:266 #: ../utils/bonobo-activation-sysconf.c:268 msgid "PATH" msgstr "འགྲུལ་ལམ།" #: ../utils/bonobo-activation-sysconf.c:268 msgid "Directory to add to configuration file" msgstr "རིམ་སྒྲིག་ཡིག་སྣོད་ལུ་ ཁ་སྐོང་བརྐྱབ་ནིའི་སྣོད་ཐོ།" #: ../utils/bonobo-activation-sysconf.c:270 msgid "Display directories in configuration file" msgstr "རིམ་སྒྲིག་ཡིག་སྣོད་ནང་ སྣོད་ཐོ་ཚུ་ བཀྲམ་སྟོན་འབད།" #: ../utils/bonobo-activation-sysconf.c:272 msgid "Display path to configuration file" msgstr "རིམ་སྒྲིག་ཡིག་སྣོད་ལུ་ འགྲུལ་ལམ་བཀྲམ་སྟོན་འབད།" #~ msgid "" #~ "Register as the users' activation server without locking [!] for debugging" #~ msgstr "" #~ "རྐྱེན་སེལ་གྱི་དོན་ལུ་ [!] ལྡེ་མིག་མ་བརྐྱབས་པར་ ལག་ལེན་པའི་ཤུགས་བཟོ་སར་བར་སྦེ་ ཐོ་འགོད་འབད།" #~ msgid "Bonobo Activation" #~ msgstr "བཱོ་ནོ་བཱོ་ཤུགས་བཟོ།" #~ msgid "Race condition activating server '%s'" #~ msgstr "རྒྱུག་འགྲན་གནས་སྟངས་ ཤུགས་བཟོའི་ཡིག་སྣོད་ ’%s’ །" #~ msgid "Child received signal %u (%s)" #~ msgstr "ཆ་ལག་གིས་ བརྡ་རྟགས་ %u (%s) ཐོབ་ཅི།" #~ msgid "Unknown non-exit error (status is %u)" #~ msgstr "ཤེས་མ་ཚུགས་པའི་ ཕྱིར་འཐོན་མེན་པའི་འཛོལ་བ། (གནས་ཚད་དེ་ %u ཨིན)" #~ msgid "bonobo-activation failed to set process group of %s: %s\n" #~ msgstr "ལས་སྦྱོར་སྡེ་ཚན་ %s: %s གཞི་སྒྲིག་འབད་ནི་ལུ་ བཱོ་ནོ་བཱོ་-ཤུགས་ལྡན་བཟོ་མ་ཚུགས། \n" #~ msgid "Failed to execute %s: %d (%s)\n" #~ msgstr "%s: %d (%s) དེ་ ལག་ལེན་འཐབ་མ་ཚུགས། \n" #~ msgid "Too many alias levels for a locale, may indicate a loop" #~ msgstr "" #~ "ལོ་ཀེལ་ཅིག་གི་དོན་ལུ་ གནས་རིམ་གྱི་མིང་གཞན་ མང་དྲགསཔ་ལས་ འཕྲལ་བཀོལ་ཅིག་གི་ བརྡ་སྟོན་འོང༌།" #~ msgid "directory path" #~ msgstr "སྣོད་ཐོའི་འགྲུལ་ལམ།" libbonobo-2.32.1/po/he.po0000644000076400007640000003775111400527122012056 00000000000000# translation of libbonobo.HEAD.he.po to Hebrew # This file is distributed under the same license as the PACKAGE package. # Copyright (C) 2005 THE PACKAGE'S COPYRIGHT HOLDER. # Gil 'Dolfin' Osher , 2002,2003. # Gil Osher , 2004. # msgid "" msgstr "" "Project-Id-Version: libbonobo.HEAD.he\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2010-05-27 16:40+0300\n" "PO-Revision-Date: 2010-05-27 16:40+0200\n" "Last-Translator: Yaron Shahrabani \n" "Language-Team: Hebrew \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" #: ../activation-server/activation-context-corba.c:530 msgid "Couldn't find which child the server was listed in" msgstr "Couldn't find which child the server was listed in" #: ../activation-server/activation-context-corba.c:822 msgid "Not a valid Activation ID" msgstr "Not a valid Activation ID" #: ../activation-server/activation-server-main.c:176 msgid "Directory to read .server files from" msgstr "Directory to read .server files from" #: ../activation-server/activation-server-main.c:176 msgid "DIRECTORY" msgstr "DIRECTORY" #: ../activation-server/activation-server-main.c:179 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "Serve as an ActivationContext (default is as an ObjectDirectory only)" #: ../activation-server/activation-server-main.c:183 msgid "File descriptor to write IOR to" msgstr "File descriptor to write IOR to" #: ../activation-server/activation-server-main.c:183 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:186 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" #: ../activation-server/activation-server-main.c:194 msgid "Query expression to evaluate" msgstr "Query expression to evaluate" #: ../activation-server/activation-server-main.c:194 msgid "EXPRESSION" msgstr "EXPRESSION" #: ../activation-server/activation-server-main.c:547 #: ../utils/bonobo-activation-sysconf.c:305 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "" "Run '%s --help' to see a full list of available command line options.\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "CORBA CosNaming service." #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "Name service" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "Notification service" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "Notification service for activation" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "We don't handle activating shlib objects in a remote process yet" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" #: ../activation-server/object-directory-load.c:102 msgid "a NULL iid is not valid" msgstr "a NULL iid is not valid" #: ../activation-server/object-directory-load.c:106 #, c-format msgid "iid %s has a NULL type" msgstr "iid %s has a NULL type" #: ../activation-server/object-directory-load.c:110 #, c-format msgid "iid %s has a NULL location" msgstr "iid %s has a NULL location" #: ../activation-server/object-directory-load.c:119 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "invalid character '%c' in iid '%s'" #: ../activation-server/object-directory-load.c:349 #, c-format msgid "Property '%s' has no value" msgstr "Property '%s' has no value" #: ../activation-server/object-directory-load.c:583 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "Could not parse badly formed XML document %s" #: ../activation-server/object-directory-load.c:629 #, c-format msgid "Trying dir %s" msgstr "Trying dir %s" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "Child process did not give an error message, unknown failure occurred" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "Failed to read from child process: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, c-format msgid "EOF from child process\n" msgstr "EOF from child process\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:438 msgid "Couldn't spawn a new process" msgstr "Couldn't spawn a new process" #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "File descriptor to print IOR on" msgstr "File descriptor to print IOR on" #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:399 msgid "IID to activate" msgstr "IID to activate" #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Prevent registering of server with OAF" msgstr "Prevent registering of server with OAF" #: ../bonobo-activation/bonobo-activation-init.c:409 msgid "Bonobo Activation options:" msgstr "Bonobo Activation options:" #: ../bonobo-activation/bonobo-activation-init.c:410 msgid "Show Bonobo Activation options" msgstr "Show Bonobo Activation options" #: ../bonobo-activation/bonobo-activation-init.c:518 msgid "Bonobo activation options" msgstr "Bonobo activation options" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "g_module_open of `%s' failed with `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "Can't find symbol Bonobo_Plugin_info in `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "Factory `%s' returned NIL for `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Shlib `%s' didn't contain `%s'" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "Name" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "Application unique name" #: ../bonobo/bonobo-object.c:929 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:929 msgid "Custom CORBA POA" msgstr "Custom CORBA POA" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "An unsupported action was attempted" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "IO Error" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "Invalid argument value" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "Object not found" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "Syntax error in object description" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "Cannot activate object from factory" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "No permission to access stream" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "An unsupported stream action was attempted" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "IO Error on stream" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "IO Error on storage" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "Name already exists in storage" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "Object not found in storage" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "No permission to do operation on storage" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "An unsupported storage action was attempted" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "Object is not a stream" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "Object is not a storage" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "Storage is not empty" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "malformed user interface XML description" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "invalid path to XML user interface element" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "the requested UI attribute didn't exist" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "Unknown command or verb" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "Command is insensitive" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "incorrect data type" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "stream not found" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "property not found" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "property has invalid type" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "property is read only" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "config database backend failed " #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "Moniker interface cannot be found" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "Moniker activation timed out" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "Syntax error within moniker" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "Moniker has an unknown moniker prefix" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "Error checking error; no exception" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "General activation error with no description" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s'" msgstr "Failed to resolve, or extend '%s'" #: ../bonobo/bonobo-moniker-util.c:247 msgid "Failed to activate object" msgstr "Failed to activate object" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "Exception activating '%s'" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "Failed to activate '%s'" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "HTTP Moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "ORB IOR handling moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "Standard Moniker factory" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "generic Oaf activation moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "generic Oaf query moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "generic factory 'new' moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "generic item moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "stream MonikerExtender" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Bonobo Echo server factory" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Bonobo Echo server sample program" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Echo component" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Echo component factory" #: ../samples/echo/echo-client.c:24 msgid "I could not initialize Bonobo" msgstr "I could not initialize Bonobo" #: ../samples/echo/echo-client.c:35 msgid "Could not create an instance of the sample echo component" msgstr "Could not create an instance of the sample echo component" #: ../samples/echo/echo-client.c:47 #, c-format msgid "An exception occurred '%s'" msgstr "An exception occurred '%s'" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Could not save configuration file.\n" msgstr "Could not save configuration file.\n" #: ../utils/bonobo-activation-sysconf.c:84 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "Please, make sure you have permissions to write to '%s'.\n" #: ../utils/bonobo-activation-sysconf.c:87 #, c-format msgid "Successfully wrote configuration file.\n" msgstr "Successfully wrote configuration file.\n" #: ../utils/bonobo-activation-sysconf.c:104 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "configuration file is:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:146 #, c-format msgid "%s already in configuration file\n" msgstr "%s already in configuration file\n" #: ../utils/bonobo-activation-sysconf.c:166 #, c-format msgid "there is not a properly structured configuration file\n" msgstr "there is not a properly structured configuration file\n" #: ../utils/bonobo-activation-sysconf.c:237 #, c-format msgid "Bonobo-activation configuration file contains:\n" msgstr "Bonobo-activation configuration file contains:\n" #: ../utils/bonobo-activation-sysconf.c:267 msgid "Directory to remove from configuration file" msgstr "Directory to remove from configuration file" #: ../utils/bonobo-activation-sysconf.c:267 #: ../utils/bonobo-activation-sysconf.c:269 msgid "PATH" msgstr "PATH" #: ../utils/bonobo-activation-sysconf.c:269 msgid "Directory to add to configuration file" msgstr "Directory to add to configuration file" #: ../utils/bonobo-activation-sysconf.c:271 msgid "Display directories in configuration file" msgstr "Display directories in configuration file" #: ../utils/bonobo-activation-sysconf.c:273 msgid "Display path to configuration file" msgstr "Display path to configuration file" #~ msgid "Could not initialize Bonobo" #~ msgstr "Could not initialize Bonobo" #~ msgid "" #~ "Register as the users' activation server without locking [!] for debugging" #~ msgstr "" #~ "Register as the users' activation server without locking [!] for debugging" #~ msgid "Bonobo Activation" #~ msgstr "Bonobo Activation" #~ msgid "Race condition activating server '%s'" #~ msgstr "Race condition activating server '%s'" #~ msgid "directory path" #~ msgstr "directory path" #~ msgid "Child received signal %u (%s)" #~ msgstr "Child received signal %u (%s)" #~ msgid "Unknown non-exit error (status is %u)" #~ msgstr "Unknown non-exit error (status is %u)" #~ msgid "bonobo-activation failed to set process group of %s: %s\n" #~ msgstr "bonobo-activation failed to set process group of %s: %s\n" #~ msgid "Failed to execute %s: %d (%s)\n" #~ msgstr "Failed to execute %s: %d (%s)\n" #~ msgid "Too many alias levels for a locale, may indicate a loop" #~ msgstr "Too many alias levels for a locale, may indicate a loop" libbonobo-2.32.1/po/mr.po0000644000076400007640000004743111173072711012102 00000000000000# translation of libbonobo.HEAD.po to marathi # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # sandeep shedmake , 2007. msgid "" msgstr "" "Project-Id-Version: libbonobo.HEAD\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-12-13 11:28+0000\n" "PO-Revision-Date: 2007-12-27 00:15+0530\n" "Last-Translator: sandeep shedmake \n" "Language-Team: marathi\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.11.4\n" "Plural-Forms: nplurals=2; plural=(n!=1);\n\n" "\n" "\n" #: ../activation-server/activation-context-corba.c:527 msgid "Couldn't find which child the server was listed in" msgstr "सर्वर कुठल्या उपकार्यपध्दतीच्या यादीत आहे ते शोधू शकले नाही" #: ../activation-server/activation-context-corba.c:819 msgid "Not a valid Activation ID" msgstr "वैध सक्रीय ID नाही" #: ../activation-server/activation-server-main.c:162 msgid "Directory to read .server files from" msgstr ".server फाइल जीथून वाचायचे ती संचयीका" #: ../activation-server/activation-server-main.c:162 msgid "DIRECTORY" msgstr "संचयीका" #: ../activation-server/activation-server-main.c:165 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "सक्रीयतासंदर्भ म्हणून कार्यरत रहा (मुलभूत फक्त वस्तूसंचयीका आहे)" #: ../activation-server/activation-server-main.c:169 msgid "File descriptor to write IOR to" msgstr "IOR जेथे लिहायचे ते फाइल डीस्क्रीप्टर" #: ../activation-server/activation-server-main.c:169 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:172 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "कुलूपबंदी केल्याविना वापरकर्त्याची सक्रीयता सर्वर म्हणून नोंदणी करा. सावधानता: या पर्यायमुळे वापरकर्त्याचे कार्यरत सत्रावर हानीकारक परिणाम होऊ शकतात, व त्यामुळे फक्त डीबगींग कारणास्तवच वापरायला हवे" #: ../activation-server/activation-server-main.c:180 msgid "Query expression to evaluate" msgstr "विश्लेषण करीता प्रश्न" #: ../activation-server/activation-server-main.c:180 msgid "EXPRESSION" msgstr "EXPRESSION" #: ../activation-server/activation-server-main.c:430 #: ../utils/bonobo-activation-sysconf.c:305 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "उपलब्ध आदेश ओळ पर्याय दर्शविण्याकरीता '%s --help' चालवा.\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "CORBA CosNaming सेवा." #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "नाव सेवा" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "सूचना सेवा" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "सक्रीयता करीता सूचना सेवा" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "दूरस्थ कार्यपध्दती मध्ये अजूनही shlib वस्तू सक्रीयता हाताळणी केली जात नाही" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "Bonobo सक्रीयता संयोजना फाइल यशस्वीरित्या वाचले गेली नाही. कृपयी, त्याची वैधता तपासा: %s" #: ../activation-server/object-directory-load.c:102 msgid "a NULL iid is not valid" msgstr "NULL iid अवैध नाहे" #: ../activation-server/object-directory-load.c:106 #, c-format msgid "iid %s has a NULL type" msgstr "iid %s कडे NULL प्रकार आहे" #: ../activation-server/object-directory-load.c:110 #, c-format msgid "iid %s has a NULL location" msgstr "iid %s कडे NULL स्थान आहे" #: ../activation-server/object-directory-load.c:119 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "iid '%2$s' मध्ये अवैध अक्षर '%1$c'" #: ../activation-server/object-directory-load.c:349 #, c-format msgid "Property '%s' has no value" msgstr "गुणधर्म '%s' मूल्यहीन आहे" #: ../activation-server/object-directory-load.c:583 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "अयोग्यरित्या निर्मीत XML दस्तऐवज %s वाचता आले नाही" #: ../activation-server/object-directory-load.c:629 #, c-format msgid "Trying dir %s" msgstr "संचयीका %s वापरून पहात आहे" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "उप कार्यपध्दतीने त्रुटी संदेश दिले नाही,ी अपरिची त्रुटी आढाळलीत" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "उप कार्यपध्ती पासून वाचण्यास अपयशी: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 msgid "EOF from child process\n" msgstr "उप कार्यपध्दती पासून EOF\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:438 msgid "Couldn't spawn a new process" msgstr "नविन कार्यपध्दती निर्माण करू शकले नाही" #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "File descriptor to print IOR on" msgstr "IOR च्या छपाईकरीताचे फाइल डिस्क्रीप्टर" #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:399 msgid "IID to activate" msgstr "सक्रीय करायचे ते IID" #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Prevent registering of server with OAF" msgstr "OAF शी सर्वर नोंदणीकरण टाळा" #: ../bonobo-activation/bonobo-activation-init.c:409 msgid "Bonobo Activation options:" msgstr "Bonobo सक्रीयता पर्याय:" #: ../bonobo-activation/bonobo-activation-init.c:410 msgid "Show Bonobo Activation options" msgstr "Bonobo सक्रीयता पर्याय दर्शवा" #: ../bonobo-activation/bonobo-activation-init.c:518 msgid "Bonobo activation options" msgstr "Bonobo सक्रीयता पर्याय" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "`%s' चे g_module_open `%s' शी अपयशी झाले" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "`%s' मध्ये चिन्ह Bonobo_Plugin_info आढळले नाही" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "फॅक्टरी `%s' ने `%s' करीता NIL परत पाठविले" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Shlib `%s' मध्ये `%s' समाविष्टीत नाही" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "नाव" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "अनुप्रयोग विशिष्ट नाव" #: ../bonobo/bonobo-object.c:926 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:926 msgid "Custom CORBA POA" msgstr "इच्छिक CORBA POA" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "विना आधार कृती करण्याचा प्रयत्न करण्यात आले" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "IO चूक" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "अवैध बाब मूल्य" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "वस्तू आढळली नाही" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "वस्तू वर्णन मध्ये नियम उल्लंगन त्रुटी" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "फॅक्टरीपासून वस्तू सक्रीय करू शकत नाही" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "स्ट्रीम करीता प्रवेश परवानगी नाही" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "असमर्थीत स्ट्रीम कृती करून पहाण्याचा प्रयत्न केला गेला" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "स्ट्रीमवरील IO त्रुटी" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "संचयनावरील IO त्रुटी" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "संचयन मध्ये नाव आधिपासूनच अस्तीत्वात आहे" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "संचयन मध्ये वस्तू आढळले नाही" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "संचयनावर कार्य करण्यास परवानगी नाही" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "असमर्थीत संचयन कृती करून पहाण्याचा प्रयत्न" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "वस्तू स्ट्रीम नाही" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "वस्तू संचयन नाही" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "संचयन रिकामा नाही" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "सदोषीत वारकर्ता संवाद XML वर्णन" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "XML वारकर्ता संवाद घटक करीता अवैध मार्ग" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "विनंतीकृत UI गुणधर्म अस्तीत्वात नाही" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "अपरिचीत आदेश किंवा क्रियापद" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "आदेश असंवेदनशील" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "चुकीचा माहिती प्रकार" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "स्ट्रीम आढळले नाही" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "गुणधर्म आढळले नाही" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "गुणधर्म मध्ये अवैध प्रकार" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "गुणधर्म फक्त वाचण्याजोगी आहे" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "संयोजना माहितीकोश बॅकऐंड अपयशी " #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "मॉनीकर संवाद आढळला नाही" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "मॉनीकर सक्रीयता कालबाह्य झाले" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "मॉनीकर अंतर्गत नियम त्रुटी" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "मॉनीकरकडील अपरिचीत मॉनीकर पूर्वपद" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "त्रुटी तपासतेवेळी त्रुटी; अपवाद नाही" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "वर्णन वीना सर्वसाधारण सक्रीयता त्रुटी" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s" msgstr "निर्धारण करण्यास अपयशी, किंवा '%s वाढवा" #: ../bonobo/bonobo-moniker-util.c:247 msgid "Failed to activate object" msgstr "वस्तू सक्रीय करण्यास अपयशी" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "अपवाद '%s' सक्रीय करीत आहे" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "'%s' सक्रीय करण्यास अपयशी" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "HTTP मॉनीकर" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "ORB IOR मॉनीकर हाताळत आहे" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "मानक मॉनीकर फॅक्ट्री" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "मुळ Oaf सक्रीयता मॉनीकर" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "मुळ Oaf प्रश्न मॉनीकर" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "मुळ फॅक्ट्री 'नविन' मॉनीकर" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "मुळ घटक मॉनीकर" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "स्ट्रीम मॉनीकर विस्तार" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Bonobo Echo सर्वर फॅक्ट्री" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Bonobo Echo सर्वर चाचणीजोगी कार्यक्रम" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Echo भाग" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Echo भाग फॅक्ट्री" #: ../samples/echo/echo-client.c:24 msgid "I could not initialize Bonobo" msgstr "Bonobo प्रारंभ करू शकले नाही" #: ../samples/echo/echo-client.c:35 msgid "Could not create an instance of the sample echo component" msgstr "चाचणी echo भागाची प्रतिकृती बनवू शकले नाही" #: ../samples/echo/echo-client.c:47 #, c-format msgid "An exception occurred '%s'" msgstr "अपवाद '%s' आढळले" #: ../utils/bonobo-activation-sysconf.c:83 msgid "Could not save configuration file.\n" msgstr "संयोजना फाइल संचयीत करू शकले नाही.\n" #: ../utils/bonobo-activation-sysconf.c:84 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "कृपया, तुमच्याकडे '%s' वर लेखनाची परवानगी आहे याची खात्री करा.\n" #: ../utils/bonobo-activation-sysconf.c:87 msgid "Successfully wrote configuration file.\n" msgstr "संयोजना फाइल यशस्वीरीत्या लिहीले.\n" #: ../utils/bonobo-activation-sysconf.c:104 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "संयोजना फाइल आहे:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:146 #, c-format msgid "%s already in configuration file\n" msgstr "%s आधिपासूनच संयोजना फाइल मध्ये आहे\n" #: ../utils/bonobo-activation-sysconf.c:166 msgid "there is not a properly structured configuration file\n" msgstr "योग्यरीत्या सुस्थीत संयोजना फाइल नाही\n" #: ../utils/bonobo-activation-sysconf.c:237 msgid "Bonobo-activation configuration file contains:\n" msgstr "Bonobo-सक्रीयता संयोजना फाइल मध्ये समाविष्टीत:\n" #: ../utils/bonobo-activation-sysconf.c:267 msgid "Directory to remove from configuration file" msgstr "संयोजना फाइल मधून काढून टाकण्याजोगी संचयीका" #: ../utils/bonobo-activation-sysconf.c:267 #: ../utils/bonobo-activation-sysconf.c:269 msgid "PATH" msgstr "मार्ग" #: ../utils/bonobo-activation-sysconf.c:269 msgid "Directory to add to configuration file" msgstr "संयोजना फाइल करीता जोडण्याजोगी संचयीका" #: ../utils/bonobo-activation-sysconf.c:271 msgid "Display directories in configuration file" msgstr "संयोजना फाइल मध्ये संचयीका प्रदर्शीत करा" #: ../utils/bonobo-activation-sysconf.c:273 msgid "Display path to configuration file" msgstr "संयोजना फाइल करीता मार्ग प्रदर्शीत करा" libbonobo-2.32.1/po/zh_TW.po0000664000076400007640000003675511433015514012525 00000000000000# Chinese (Taiwan) translation for libbonobo. # Copyright (C) 2001, 02, 03, 04, 05, 06, 07 Free Software Foundation, Inc. # Joe Man , 2001, 2002. # Ben Wu , 2002 # Chao-Hsiung Liao , 2005. # Abel Cheung , 2003, 04, 06. # # msgid "" msgstr "" "Project-Id-Version: libbonobo 2.31.0\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2010-07-24 19:54+0800\n" "PO-Revision-Date: 2010-07-20 21:22+0800\n" "Last-Translator: Chao-Hsiung Liao \n" "Language-Team: Chinese (Taiwan) \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../activation-server/activation-context-corba.c:530 msgid "Couldn't find which child the server was listed in" msgstr "無法找出該伺服器位列於哪一個客戶端內" #: ../activation-server/activation-context-corba.c:822 msgid "Not a valid Activation ID" msgstr "不是有效的 Activation ID" #: ../activation-server/activation-server-main.c:174 msgid "Directory to read .server files from" msgstr ".server 檔案所在的目錄" #: ../activation-server/activation-server-main.c:174 msgid "DIRECTORY" msgstr "目錄" #: ../activation-server/activation-server-main.c:177 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "以 ActivationContext 模式提供服務(預設是 ObjectDirectory 模式)" #: ../activation-server/activation-server-main.c:181 msgid "File descriptor to write IOR to" msgstr "用作寫入 IOR 的 file descriptor" #: ../activation-server/activation-server-main.c:181 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:184 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "" "註冊為沒有鎖定的使用者 activation 伺服器。警告:這選項的副作用是可能會影響使" "用者正在運行的作業階段的穩定性,及此的應為除錯時使用。" #: ../activation-server/activation-server-main.c:192 msgid "Query expression to evaluate" msgstr "需要進行查詢的表示式" #: ../activation-server/activation-server-main.c:192 msgid "EXPRESSION" msgstr "表示式" #: ../activation-server/activation-server-main.c:541 #: ../utils/bonobo-activation-sysconf.c:305 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "執行‘%s --help’可列出完整的選項。\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "CORBA CosNaming 服務。" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "名稱服務" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "通知服務" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "activation 的通知服務" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "目前仍然未可以處理在遠端進程內啟動 shlib 物件的情況" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "無法正確讀取 Bonobo Activation 設定檔。請查核該檔案是否正確:%s" #: ../activation-server/object-directory-load.c:102 msgid "a NULL iid is not valid" msgstr "NULL 的 iid 是不合法的" #: ../activation-server/object-directory-load.c:106 #, c-format msgid "iid %s has a NULL type" msgstr "iid %s 的類型是 NULL" #: ../activation-server/object-directory-load.c:110 #, c-format msgid "iid %s has a NULL location" msgstr "iid %s 的位置是 NULL" #: ../activation-server/object-directory-load.c:119 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "iid‘%2$s’出現不合法的字元‘%1$c’" #: ../activation-server/object-directory-load.c:349 #, c-format msgid "Property '%s' has no value" msgstr "屬性‘%s’沒有設定值" #: ../activation-server/object-directory-load.c:583 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "無法解析格式不正確的 XML 文件 %s" #: ../activation-server/object-directory-load.c:629 #, c-format msgid "Trying dir %s" msgstr "嘗試開啟 %s 目錄" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "子進程沒有傳回錯誤訊息,發生了不明的錯誤" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "讀取子進程失敗:%s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, c-format msgid "EOF from child process\n" msgstr "子進程的 EOF\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:438 msgid "Couldn't spawn a new process" msgstr "無法衍生新的進程" #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "File descriptor to print IOR on" msgstr "用作印出 IOR 的 file descriptor" #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:399 msgid "IID to activate" msgstr "準備啟用的 IID" #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Prevent registering of server with OAF" msgstr "防止使用 OAF 來登記伺服器" #: ../bonobo-activation/bonobo-activation-init.c:409 msgid "Bonobo Activation options:" msgstr "Bonobo activation 選項:" #: ../bonobo-activation/bonobo-activation-init.c:410 msgid "Show Bonobo Activation options" msgstr "顯示 Bonobo Activation 選項" #: ../bonobo-activation/bonobo-activation-init.c:518 msgid "Bonobo activation options" msgstr "Bonobo activation 選項" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "‘%s’的 g_module_open 傳回‘%s’錯誤" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "無法在‘%s’內找到 Bonobo_Plugin_info 函式" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "元件工廠‘%s’回傳 NIL 給‘%s’" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Shlib‘%s’沒有包含‘%s’" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "名稱" # FIXME: 我很不滿意自己這個翻譯,表達不出 unique 的意義 -- Abel #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "程式唯一名稱" #: ../bonobo/bonobo-object.c:929 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:929 msgid "Custom CORBA POA" msgstr "自選 CORBA POA" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "嘗試執行不支援的操作程序" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "輸出入錯誤" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "參數值不合法" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "找不到物件" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "物件描述內有語法錯誤" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "無法從元件工廠啟動物件" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "不允許存取資料串流" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "嘗試執行不支援的資料串流動作" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "資料串流發生輸出入錯誤" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "儲存庫發生輸出入錯誤" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "儲存庫內已有相同的名稱" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "在儲存庫內找不到物件" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "在儲存庫內不允許執行動作" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "嘗試執行不支援的儲存庫動作" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "物件不是資料串流" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "物件不是儲存庫" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "儲存庫內仍有物件" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "不合格式的使用者界面 XML 描述資料" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "XML 使用者界面元件的路徑不合法" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "要求的 UI 屬性並不存在" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "不明的指令或行動" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "指令暫時無法使用" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "不正確的資料類別" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "找不到資料串流" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "找不到屬性" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "不合規格的屬性類別" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "屬性是唯讀的" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "設定資料庫背景模組失敗" #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "無法找到命名器界面" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "啟動命名器逾時" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "命名器內含有語法錯誤" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "命名器具有不明的前置字串" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "檢查錯誤時發生錯誤;沒有例外處理" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "沒有說明的一般啟動錯誤" # FIXME: Wish if I knew more about CORBA stuff..... -- Abel #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s'" msgstr "無法解析或擴展「%s」" #: ../bonobo/bonobo-moniker-util.c:247 msgid "Failed to activate object" msgstr "無法啟動物件" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "啟動‘%s’時發生例外情況" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "無法啟動‘%s’" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "HTTP 命名器" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "ORB IOR 命名器處理" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "標準命名器元件工廠" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "一般的 Oaf 啟動命名器" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "一般的 Oaf 查詢命名器" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "一般的「新增」命名器的元件工廠" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "一般的項目命名器" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "資料串流命名延伸器" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Bonobo Echo 伺服器工廠" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Bonobo Echo 伺服器樣本程式" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Echo 元件" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Echo 元件工廠" #: ../samples/echo/echo-client.c:24 msgid "I could not initialize Bonobo" msgstr "無法初始化 Bonobo" #: ../samples/echo/echo-client.c:35 msgid "Could not create an instance of the sample echo component" msgstr "無法產生 echo 範例元件的進程" #: ../samples/echo/echo-client.c:47 #, c-format msgid "An exception occurred '%s'" msgstr "發生例外處理情況:‘%s’" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Could not save configuration file.\n" msgstr "無法儲存設定檔。\n" #: ../utils/bonobo-activation-sysconf.c:84 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "請確定您有足夠權限寫入‘%s’。\n" #: ../utils/bonobo-activation-sysconf.c:87 #, c-format msgid "Successfully wrote configuration file.\n" msgstr "寫入設定檔完成。\n" #: ../utils/bonobo-activation-sysconf.c:104 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "設定檔是:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:146 #, c-format msgid "%s already in configuration file\n" msgstr "設定檔內已經有 %s\n" #: ../utils/bonobo-activation-sysconf.c:166 #, c-format msgid "there is not a properly structured configuration file\n" msgstr "這並不是具有正確結構的設定檔\n" #: ../utils/bonobo-activation-sysconf.c:237 #, c-format msgid "Bonobo-activation configuration file contains:\n" msgstr "Bonobo-activation 設定檔內包含:\n" #: ../utils/bonobo-activation-sysconf.c:267 msgid "Directory to remove from configuration file" msgstr "從設定檔內移除的目錄" #: ../utils/bonobo-activation-sysconf.c:267 #: ../utils/bonobo-activation-sysconf.c:269 msgid "PATH" msgstr "路徑" #: ../utils/bonobo-activation-sysconf.c:269 msgid "Directory to add to configuration file" msgstr "準備新增至設定檔的目錄" #: ../utils/bonobo-activation-sysconf.c:271 msgid "Display directories in configuration file" msgstr "顯示設定檔中的目錄" #: ../utils/bonobo-activation-sysconf.c:273 msgid "Display path to configuration file" msgstr "顯示設定檔的路徑" #~ msgid "Could not initialize Bonobo" #~ msgstr "無法初始化 Bonobo" #~ msgid "" #~ "Register as the users' activation server without locking [!] for debugging" #~ msgstr "註冊為使用者的 activation 伺服器而不鎖定以為偵錯之用。" #~ msgid "Bonobo Activation" #~ msgstr "Bonobo Activation" #~ msgid "Race condition activating server '%s'" #~ msgstr "啟動伺服器‘%s’時出現衝突狀態" #~ msgid "directory path" #~ msgstr "目錄路徑" libbonobo-2.32.1/po/ar.po0000644000076400007640000004143611173072711012065 00000000000000# translation of libbonobo.HEAD.ar.po to Arabic # translation of libbonobo.HEAD.ar.po to # Arabic translation of 1. # Copyright (C) 2003 THE 1'S COPYRIGHT HOLDER # This file is distributed under the same license as the 1 package. # # Mohammed Gamal , 2002. # Ammer Alsabbagh , 2002. # Isam Bayazidi , 2003. # , 2004. # Djihed Afifi , 2006. # Khaled Hosny , 2006, 2007. msgid "" msgstr "" "Project-Id-Version: libbonobo.HEAD.ar\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?" "product=libbonobo&component=general\n" "POT-Creation-Date: 2009-03-13 18:59+0000\n" "PO-Revision-Date: 2007-01-19 21:38+0200\n" "Last-Translator: Khaled Hosny \n" "Language-Team: Arabic \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.11.4\n" "Plural-Forms: Plural-Forms: nplurals=4; plural=n==1 ? 0 : n==2 ? 1 : n>=3 && " "n<=10 ? 2 : 3\n" #: ../activation-server/activation-context-corba.c:530 msgid "Couldn't find which child the server was listed in" msgstr "تعذّر معرفة في أي الأبناء أُدرج الخادوم" #: ../activation-server/activation-context-corba.c:822 msgid "Not a valid Activation ID" msgstr "هوية تنشيط غير سليمة" #: ../activation-server/activation-server-main.c:176 msgid "Directory to read .server files from" msgstr "الدليل الذي تقرء منه ملفات .server" #: ../activation-server/activation-server-main.c:176 msgid "DIRECTORY" msgstr "DIRECTORY" #: ../activation-server/activation-server-main.c:179 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "يخدم كـ ActivationContext (الإفتراضي ObjectDirectory فقط)" #: ../activation-server/activation-server-main.c:183 msgid "File descriptor to write IOR to" msgstr "واصف الملف الذي سيكتب إليه الـ IOR" #: ../activation-server/activation-server-main.c:183 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:186 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "" "سجّل كخادوم تفعيل المستخدم بدون قفل. تحذير: قد يكون لهذا الخيار آثار جانبيّة " "خطير على ثبات الجلسة التي يشغلها المستخدم، ويجب استخدامه لأغراض التنقيح فقط" #: ../activation-server/activation-server-main.c:194 msgid "Query expression to evaluate" msgstr "تعبير الاستعلام ليُقيَّم" #: ../activation-server/activation-server-main.c:194 msgid "EXPRESSION" msgstr "EXPRESSION" #: ../activation-server/activation-server-main.c:547 #: ../utils/bonobo-activation-sysconf.c:305 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "استعمل '%s --help' لإظهار الخيارات المتوفرة.\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "خدمة CORBA CosNaming." #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "خدمة الأسماء" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "خدمة التلبيغ" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "خدمة التبليغ للتنشيط" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "لا نُعالج حاليا تنشيط أجسام shlib في عمليات عن بعد" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "لم يقرأ ملف إعداد Bonobo Activation بنجاح. من فضلط تأكد من صحته في: %s" #: ../activation-server/object-directory-load.c:102 msgid "a NULL iid is not valid" msgstr "NULL iid غير سليم" #: ../activation-server/object-directory-load.c:106 #, c-format msgid "iid %s has a NULL type" msgstr "iid %s له نوع NULL" #: ../activation-server/object-directory-load.c:110 #, c-format msgid "iid %s has a NULL location" msgstr "iid %s له موقع NULL" #: ../activation-server/object-directory-load.c:119 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "محرف غير سليم '%c' في iid '%s'" #: ../activation-server/object-directory-load.c:349 #, c-format msgid "Property '%s' has no value" msgstr "الخاصية '%s' ليس لها قيمة" #: ../activation-server/object-directory-load.c:583 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "تعذّر تحليل مستند XML %s المشوه" #: ../activation-server/object-directory-load.c:629 #, c-format msgid "Trying dir %s" msgstr "سأحاول الدليل %s" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "لم تعط العملية الإبنة رسالة خطأ، حصل فشل غير معروف." #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "فشلت القراءة من العملية الإبنة: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, c-format msgid "EOF from child process\n" msgstr "فشلت القراءة من العملية\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:438 msgid "Couldn't spawn a new process" msgstr "تعذّر تفريق عملية جديدة" #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "File descriptor to print IOR on" msgstr "واصف الملف لكتابة الـ IOR عليه" #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:399 msgid "IID to activate" msgstr "IID ليُنشّط" #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Prevent registering of server with OAF" msgstr "امنع تسجيل الخادوم مع OAF" #: ../bonobo-activation/bonobo-activation-init.c:409 msgid "Bonobo Activation options:" msgstr "خيارات تنشيط بونوبو:" #: ../bonobo-activation/bonobo-activation-init.c:410 msgid "Show Bonobo Activation options" msgstr "أظهر خيارات تنشيط بونوبو" #: ../bonobo-activation/bonobo-activation-init.c:518 msgid "Bonobo activation options" msgstr "خيارات تنشيط بونوبو" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "g_module_open لـ`%s' فشل مع `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "تعذّر ايجاد الرمز Bonobo_Plugin_info في `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "أرجع المصنع `%s' NIL لـ `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Shlib `%s' لم يحوي `%s'" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "الاسم" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "اسم التطبيق الفريد" #: ../bonobo/bonobo-object.c:929 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:929 msgid "Custom CORBA POA" msgstr "CORBA POA خاص" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "تمّت مُحاولة إجراء غير مدعوم" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "خطأ دخْل/خرْج" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "قيمة معامل غير صالحة" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "الكائن مفقود" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "خطأ صياغي في وصف الجسم" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "تعذّر تنشيط الكائن من المصنع" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "لا يوجد إذن للنفوذ إلى تيار البيانات" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "تمت محاولة إجراء عمل تيار بيانات غير مدعوم" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "خطأ إدخال/إخراج عند تيار البيانات" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "خطأ إخراج/إدخال عند المخزن" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "الاسم موجود مسبقًا في المخزن" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "الجسم غير موجود في المخزن" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "لا أذونات لتنفيذ العملية عى المخزن" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "تمت محاولة إجراء عمل مخزن غير مدعوم" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "الجسم ليس تيارًا" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "الجسم ليس مخزنًا" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "المخزن غير خال" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "وصف XML مشوه لواجهة المستخدم" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "مسار غير سليم إلى عنصر XML لواجهة المستخدم" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "الصفة المطلوبة في واجهة المستخدم لا وجود لها" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "فعل أو أمر غير معروف" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "الأمر غير حساس" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "نوع بيانات غير صحيح" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "التيار غير موجود" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "الخاصيّة غير موجودة" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "الخاصيّة ذات نوع غير صالح" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "الخاصيّة للقراءة فقط" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "فشل إعداد الواجهة الخلفية لقاعدة البيانات" #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "تعذّر العثور على واجهة Moniker" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "انتهت مهلة لتنشيط Moniker" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "خطأ صياغي داخل moniker" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "يوجد مقدمة moniker غير معروفة في Moniker" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "خطأ عند فحص الخطأ؛ بدون استثناء" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "خطأ تنشيط عام بدون وصف" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s" msgstr "فشل حل أو توسعة '%s" #: ../bonobo/bonobo-moniker-util.c:247 msgid "Failed to activate object" msgstr "فشل تنشيط الكائن" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "استثناء عند تنشيط '%s" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "فشل تنشيط '%s'" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "HTTP Moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "moniker معالجة ORB IOR" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "مصنع Moniker القياسي" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "moniker عام لتفعيل Oaf" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "moniker عام للبحث عن Oaf" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "moniker 'جديد' لمصتع عام" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "moniker عنصر عام" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "تيار بيانات MonikerExtender" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "مصنع خادوم صدى بونوبو" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "برنامج مثالي لخادوم صدى بونوبو" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "مكون صدى" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "مصنع لمكون الصدى" #: ../samples/echo/echo-client.c:24 msgid "I could not initialize Bonobo" msgstr "لم أتمكن من تفعيل بونوبو" #: ../samples/echo/echo-client.c:35 msgid "Could not create an instance of the sample echo component" msgstr "تعذّر إنشاء حالة من نموذج مكون الصدى" #: ../samples/echo/echo-client.c:47 #, c-format msgid "An exception occurred '%s'" msgstr "حصل استثناء '%s'" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Could not save configuration file.\n" msgstr "تعذّر حفظ ملف الإعدادات.\n" #: ../utils/bonobo-activation-sysconf.c:84 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "من فضلك تأكد من أن لديك الأذونات للكتابة على '%s'.\n" #: ../utils/bonobo-activation-sysconf.c:87 #, c-format msgid "Successfully wrote configuration file.\n" msgstr "كتِب ملف الإعدادات بنجاح.\n" #: ../utils/bonobo-activation-sysconf.c:104 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "ملف الإعدادات هو:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:146 #, c-format msgid "%s already in configuration file\n" msgstr "%s موجود مسبقا في ملف الإعدادات\n" #: ../utils/bonobo-activation-sysconf.c:166 #, c-format msgid "there is not a properly structured configuration file\n" msgstr "ليس هناك ملف إعدادات مركب بشكل صحيح\n" #: ../utils/bonobo-activation-sysconf.c:237 #, c-format msgid "Bonobo-activation configuration file contains:\n" msgstr "ملف إعدادات Bonobo-activation يحوي:\n" #: ../utils/bonobo-activation-sysconf.c:267 msgid "Directory to remove from configuration file" msgstr "دليل ليُزال من ملف الإعدادات" #: ../utils/bonobo-activation-sysconf.c:267 #: ../utils/bonobo-activation-sysconf.c:269 msgid "PATH" msgstr "PATH" #: ../utils/bonobo-activation-sysconf.c:269 msgid "Directory to add to configuration file" msgstr "دليل ليُضاف الى ملف الإعدادات" #: ../utils/bonobo-activation-sysconf.c:271 msgid "Display directories in configuration file" msgstr "اعرض الدلائل في ملف الإعدادات" #: ../utils/bonobo-activation-sysconf.c:273 msgid "Display path to configuration file" msgstr "اعرض المسار الى ملف الإعدادات" #~ msgid "Could not initialize Bonobo" #~ msgstr "تعذّر تفعيل بونوبو" libbonobo-2.32.1/po/bg.po0000664000076400007640000004557211436275736012100 00000000000000# Bulgarian translation of libbonobo po file. # Copyright (C) 2002, 2004, 2007, 2010 Free Software Foundation, Inc. # Alexander Shopov , 2002, 2004, 2007, 2010. # Yanko Kaneti # Rostislav Raykov , 2004 # # msgid "" msgstr "" "Project-Id-Version: libbonobo master\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2010-08-22 23:08+0300\n" "PO-Revision-Date: 2010-08-22 23:08+0300\n" "Last-Translator: Alexander Shopov \n" "Language-Team: Bulgarian \n" "Language: bg\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" #: ../activation-server/activation-context-corba.c:530 msgid "Couldn't find which child the server was listed in" msgstr "Не може да се разбере в кой дъщерен процес е записан сървъра" #: ../activation-server/activation-context-corba.c:822 msgid "Not a valid Activation ID" msgstr "Невалидно ID за активиране" #: ../activation-server/activation-server-main.c:174 msgid "Directory to read .server files from" msgstr "Папка, от която да се прочетат файловете .server" #: ../activation-server/activation-server-main.c:174 msgid "DIRECTORY" msgstr "ПАПКА" #: ../activation-server/activation-server-main.c:177 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "" "Да служи като контекст на активиране (по подразбиране е само директория на " "обектите)" #: ../activation-server/activation-server-main.c:181 msgid "File descriptor to write IOR to" msgstr "Указател на файл, в който да се записва IOR" #: ../activation-server/activation-server-main.c:181 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "FD" msgstr "УФ" #: ../activation-server/activation-server-main.c:184 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "" "Регистриране като сървъра за активиране на потребителя без заключване. " "Предупреждение: тази настройка може да има странични ефекти върху " "стабилността на работната сесия на потребителя и трябва да се използва само " "при откриването и изчистване на грешки" #: ../activation-server/activation-server-main.c:192 msgid "Query expression to evaluate" msgstr "Израз-запитване, което да се оцени" #: ../activation-server/activation-server-main.c:192 msgid "EXPRESSION" msgstr "ИЗРАЗ" #: ../activation-server/activation-server-main.c:541 #: ../utils/bonobo-activation-sysconf.c:305 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "" "Стартирайте програмата така: „%s --help“, за да видите пълния списък с опции " "за командния ред.\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "Услуга за CORBA CosNaming." #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "Услуга за имената" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "Услуга за уведомяване" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "Услуга за уведомяване на активиране" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "Все още е невъзможно активирането на shlib обекти в отдалечени процеси" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "Конфигурационният файл на активирането на Bonobo не бе прочетен успешно. " "Проверете дали е валиден в: %s" #: ../activation-server/object-directory-load.c:102 msgid "a NULL iid is not valid" msgstr "NULL е невалидна стойност за iid" #: ../activation-server/object-directory-load.c:106 #, c-format msgid "iid %s has a NULL type" msgstr "iid %s има за тип NULL" #: ../activation-server/object-directory-load.c:110 #, c-format msgid "iid %s has a NULL location" msgstr "iid %s има за място NULL" #: ../activation-server/object-directory-load.c:119 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "невалиден символ „%c“ в iid „%s“" #: ../activation-server/object-directory-load.c:349 #, c-format msgid "Property '%s' has no value" msgstr "Свойството „%s“ няма стойност" #: ../activation-server/object-directory-load.c:583 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "Не може да се обработи в неправилно формиран документ на XML %s" #: ../activation-server/object-directory-load.c:629 #, c-format msgid "Trying dir %s" msgstr "Проба с папка %s" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "" "Дъщерният процес не генерира съобщение за грешка, получи се неизвестен " "проблем" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "Неуспешно четене от дъщерен процес: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, c-format msgid "EOF from child process\n" msgstr "EOF от дъщерен процес\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:438 msgid "Couldn't spawn a new process" msgstr "Не може да се отдели нов процес" #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "File descriptor to print IOR on" msgstr "Указател на файл, на който да се отпечатва IOR" #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:399 msgid "IID to activate" msgstr "IID за активиране" #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Prevent registering of server with OAF" msgstr "Предотвратяване на регистрирането на сървър към OAF" #: ../bonobo-activation/bonobo-activation-init.c:409 msgid "Bonobo Activation options:" msgstr "Настройки на активирането на Bonobo:" #: ../bonobo-activation/bonobo-activation-init.c:410 msgid "Show Bonobo Activation options" msgstr "Показване на настройките на активирането на Bonobo" #: ../bonobo-activation/bonobo-activation-init.c:518 msgid "Bonobo activation options" msgstr "Настройки на активирането на Bonobo" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "функцията g_module_open върху „%s“ е неуспешна с код „%s“" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "Не може да се открие символа Bonobo_Plugin_info в „%s“" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "Фабриката „%s“ върна NIL за „%s“" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Shlib „%s“ не съдържа „%s“" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "Име" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "Уникално име на програма" #: ../bonobo/bonobo-object.c:929 msgid "POA" msgstr "Адаптер POA" #: ../bonobo/bonobo-object.c:929 msgid "Custom CORBA POA" msgstr "Допълнителен адаптер POA за CORBA" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "Опитано бе действие, което не се поддържа" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "Вх./изх. грешка" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "Невалидна стойност на аргумента" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "Обектът не е открит" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "Синтактична грешка в описанието на обекта" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "Не може да се активира обекта от фабриката" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "Няма позволение за достъп до потока" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "Опитано бе действие върху потока, което не се поддържа" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "Вх./изх. грешка в потока" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "Вх./изх. грешка при съхранение" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "Името вече съществува в хранилището" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "Обектът не е открит в хранилище" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "Няма позволение да се оперира върху хранилището" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "Опитано бе действие в хранилището, което не се поддържа" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "Обектът не е поток" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "Обектът не е хранилище" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "Хранилището не е празно" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "грешно описание чрез XML на потребителски интерфейс" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "невалиден път до елемент на XML потребителски интерфейс" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "поисканият атрибут на потребителски интерфейс не съществува" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "Непозната команда или глагол" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "Командата е нечувствителна" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "грешен тип на данните" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "потокът не е открит" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "свойството не е открито" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "свойството има невалиден тип" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "свойството е с права само за четене" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "грешка в същинската част на конфигурационната база данни" #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "Интерфейсът за моникър не може да бъде открит" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "Времето за активиране на моникъра изтече" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "Синтактична грешка в моникъра" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "Моникър има непозната представка" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "Грешка при проверка на грешка; няма изключение" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "Обща грешка при активиране, няма описание" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s'" msgstr "Неуспех при откриването или разширяването на „%s“" #: ../bonobo/bonobo-moniker-util.c:247 msgid "Failed to activate object" msgstr "Обектът не може да се активира" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "Активиране на съобщение „%s“" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "Неуспех при активиране на „%s“" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "Моникър за HTTP" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "Моникър за обработка на ORB IOR" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "Стандартна фабрика за моникъри" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "стандартен моникър за активирането на Oaf" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "стандартен моникър за запитвания към Oaf" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "стандартен моникър - „нов“ на фабрика" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "стандартен моникър" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "поточен моникър-разширител" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Сървърна фабрика за ехо на Bonobo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Примерна програма „Ехо“ на Bonobo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Компонент „Ехо“" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Фабрика на компонента „Ехо“" #: ../samples/echo/echo-client.c:24 msgid "I could not initialize Bonobo" msgstr "Не може да се активира Bonobo" #: ../samples/echo/echo-client.c:35 msgid "Could not create an instance of the sample echo component" msgstr "Не може да се създаде обект от типа на примерния компонент „Ехо“" #: ../samples/echo/echo-client.c:47 #, c-format msgid "An exception occurred '%s'" msgstr "Възникна изключение „%s“" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Could not save configuration file.\n" msgstr "Не може да запише конфигурационния файл.\n" #: ../utils/bonobo-activation-sysconf.c:84 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "Проверете дали имате права за запис в „%s“.\n" #: ../utils/bonobo-activation-sysconf.c:87 #, c-format msgid "Successfully wrote configuration file.\n" msgstr "Успешно запазване на конфигурационния файл.\n" #: ../utils/bonobo-activation-sysconf.c:104 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "конфигурационният файл е:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:146 #, c-format msgid "%s already in configuration file\n" msgstr "%s е вече в конфигурационния файл\n" #: ../utils/bonobo-activation-sysconf.c:166 #, c-format msgid "there is not a properly structured configuration file\n" msgstr "липсва правилно структуриран конфигурационен файл\n" #: ../utils/bonobo-activation-sysconf.c:237 #, c-format msgid "Bonobo-activation configuration file contains:\n" msgstr "Файлът за конфигурирането на активирането на Bonobo съдържа:\n" #: ../utils/bonobo-activation-sysconf.c:267 msgid "Directory to remove from configuration file" msgstr "Папка, която да се махне от конфигурационния файл" #: ../utils/bonobo-activation-sysconf.c:267 #: ../utils/bonobo-activation-sysconf.c:269 msgid "PATH" msgstr "ПЪТ" #: ../utils/bonobo-activation-sysconf.c:269 msgid "Directory to add to configuration file" msgstr "Папка, която да се добави към конфигурационния файл" #: ../utils/bonobo-activation-sysconf.c:271 msgid "Display directories in configuration file" msgstr "Показване на папките в конфигурационния файл" #: ../utils/bonobo-activation-sysconf.c:273 msgid "Display path to configuration file" msgstr "Показване на пътя до конфигурационния файл" libbonobo-2.32.1/po/nl.po0000664000076400007640000004140211467502331012071 00000000000000# Dutch translation of libbonobo # # Dennis Smit , 2000. # Almer S. Tigelaar , 2000. # Tino Meinen , 2003, 2005, 2006, 2007. # Huib Kleinhout , 2002, 2004. # msgid "" msgstr "" "Project-Id-Version: libbonobo\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2010-09-29 19:11+0200\n" "PO-Revision-Date: 2007-02-06 10:09+0100\n" "Last-Translator: Tino Meinen \n" "Language-Team: Dutch \n" "Language: nl\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../activation-server/activation-context-corba.c:530 msgid "Couldn't find which child the server was listed in" msgstr "Kon niet vinden in welke dochter de server werd genoemd" #: ../activation-server/activation-context-corba.c:822 msgid "Not a valid Activation ID" msgstr "Geen geldige activerings-ID" #: ../activation-server/activation-server-main.c:174 msgid "Directory to read .server files from" msgstr "Map om .server-bestanden uit te lezen" #: ../activation-server/activation-server-main.c:174 msgid "DIRECTORY" msgstr "MAP" #: ../activation-server/activation-server-main.c:177 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "" "Doe dienst als een ActivationContext (standaardwaarde is alleen als " "ObjectDirectory)" #: ../activation-server/activation-server-main.c:181 msgid "File descriptor to write IOR to" msgstr "File descriptor om IOR naar te schrijven" #: ../activation-server/activation-server-main.c:181 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "FD" msgstr "FD" # aanmerken/opzetten/registreren #: ../activation-server/activation-server-main.c:184 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "" "Aanmerken als de activeringsserver van de gebruiker zonder beveiliging " "('locking'). Pas op: deze optie kan gevaarlijke bijeffecten hebben op de " "stabiliteit van de sessie van de gebruiker en zou alleen gebruikt moeten " "worden voor debug-doeleinden." #: ../activation-server/activation-server-main.c:192 msgid "Query expression to evaluate" msgstr "Te evalueren query-expressie" #: ../activation-server/activation-server-main.c:192 msgid "EXPRESSION" msgstr "EXPRESSIE" #: ../activation-server/activation-server-main.c:541 #: ../utils/bonobo-activation-sysconf.c:305 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "" "Geef ‘%s --help’ voor een volledige lijst met beschikbare " "opdrachtregelopties.\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "CORBA CosNaming service" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "Naam service" # verkondiging/aankondiging #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "Aankondigingsservice" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "Aankondigingsservice voor activering" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "" "We ondersteunen het activeren van bibliotheekobjecten in een ander proces " "nog niet" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "Het bonobo-activering configuratiebestand kon niet worden ingelezen. " "Controleer of het in orde is in: %s" #: ../activation-server/object-directory-load.c:102 msgid "a NULL iid is not valid" msgstr "een NULL-iid is ongeldig" #: ../activation-server/object-directory-load.c:106 #, c-format msgid "iid %s has a NULL type" msgstr "iid %s heeft een NULL-type" #: ../activation-server/object-directory-load.c:110 #, c-format msgid "iid %s has a NULL location" msgstr "iid %s heeft een NULL locatie" #: ../activation-server/object-directory-load.c:119 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "ongeldig teken ‘%c’ in iid ‘%s’" #: ../activation-server/object-directory-load.c:349 #, c-format msgid "Property '%s' has no value" msgstr "Eigenschap ‘%s’ heeft geen waarde" #: ../activation-server/object-directory-load.c:583 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "Het foutief opgetelde XML-document %s kon niet worden ingelezen" #: ../activation-server/object-directory-load.c:629 #, c-format msgid "Trying dir %s" msgstr "De map %s wordt geprobeerd" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "" "Dochterproces gaf geen foutmelding, er is een onbekende fout opgetreden" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "Lezen van dochterproces is mislukt: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, c-format msgid "EOF from child process\n" msgstr "EOF van dochterproces\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:438 msgid "Couldn't spawn a new process" msgstr "Kon geen nieuw proces afsplitsen" # File descriptor om de afkorting duidelijk te laten. Normale gebruikers weten waarschijnlijk niet wat een bestandsbeschrijver is. #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "File descriptor to print IOR on" msgstr "File descriptor voor afdrukken van de IOR" #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:399 msgid "IID to activate" msgstr "Te activeren IID" #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Prevent registering of server with OAF" msgstr "Voorkom het registreren van de server met OAF" #: ../bonobo-activation/bonobo-activation-init.c:409 msgid "Bonobo Activation options:" msgstr "Bonobo-activeringsopties:" #: ../bonobo-activation/bonobo-activation-init.c:410 msgid "Show Bonobo Activation options" msgstr "Bonobo-activeringsopties tonen" #: ../bonobo-activation/bonobo-activation-init.c:518 msgid "Bonobo activation options" msgstr "Bonobo-activeringsopties" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "g_module_open van ‘%s’ mislukt: ‘%s’" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "Kan symbool 'Bonobo_Plugin_info' niet vinden in ‘%s’" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "Fabriek ‘%s’ retourneerde NIL voor ‘%s’" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Bibliotheek ‘%s’ bevatte geen ‘%s’" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "Naam" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "Toepassingsunieke naam" #: ../bonobo/bonobo-object.c:929 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:929 msgid "Custom CORBA POA" msgstr "Aangepaste CORBA POA" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "Er is geprobeerd een niet ondersteunde actie uit te voeren" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "I/O Fout" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "Ongeldige argument waarde" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "Object niet gevonden" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "Syntax error in objectbeschrijving" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "Kan object uit factory niet activeren" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "Geen toegang tot stream" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "Er is geprobeerd een niet ondersteunde stream actie uit te voeren" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "I/O Fout in stream" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "I/O Fout in storage" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "Naam bestaat al in storage" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "Object niet in storage gevonden" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "Geen toegang om operaties in storage te verrichten" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "Er is geprobeerd een niet ondersteunde storage actie uit te voeren" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "Object is geen stream" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "Object is geen storage" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "Storage is niet leeg" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "incorrecte XML gebruikersinterface-omschrijving" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "ongeldig pad naar XML gebruikersinterface-element" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "het gevraagde gebruikersinterface attribuut bestaat niet" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "Onbekende opdracht of onbekend werkwoord" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "De opdracht is niet ontvankelijk" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "incorrect datatype" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "stream niet gevonden" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "eigenschap is niet gevonden" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "eigenschap is van een ongeldig type" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "eigenschap kan alleen gelezen worden" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "fout bij de configuratiedatabase backend" #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "Kan moniker interface niet vinden" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "Activeren van moniker mislukt" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "Syntactische fout in moniker" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "Moniker heeft een onbekende monikerprefix" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "Fout bij het nakijken van fout; geen uitzondering" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "Algemene activeringsfout zonder omschrijving" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s'" msgstr "Kon `%s’ niet vinden of uitbreiden" #: ../bonobo/bonobo-moniker-util.c:247 msgid "Failed to activate object" msgstr "Kan object niet activeren" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "Uitzondering bij activeren ‘%s’" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "Het activeren van ‘%s’ is mislukt" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "HTTP Moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "ORB IOR verwerkende moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "Standaard Moniker factory" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "generieke OAF activeringsmoniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "generieke OAF query moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "generieke factory 'nieuw' moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "generieke itemmoniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "stream MonikerExtender" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Bonobo Echo-server factory" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Bonobo Echo-server voorbeeldprogramma" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Echo component" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Echo component fabriek" #: ../samples/echo/echo-client.c:24 msgid "I could not initialize Bonobo" msgstr "Bonobo kon niet geinitialiseerd worden" #: ../samples/echo/echo-client.c:35 msgid "Could not create an instance of the sample echo component" msgstr "" "Er kon geen realisatie van het voorbeeld 'echo' component worden aangemaakt" #: ../samples/echo/echo-client.c:47 #, c-format msgid "An exception occurred '%s'" msgstr "Er is een uitzondering opgetreden ‘%s’" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Could not save configuration file.\n" msgstr "Opslaan OAF-configuratiebestand is mislukt.\n" #: ../utils/bonobo-activation-sysconf.c:84 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "Controleer de schrijfrechten voor ‘%s’.\n" #: ../utils/bonobo-activation-sysconf.c:87 #, c-format msgid "Successfully wrote configuration file.\n" msgstr "Opslaan OAF-configuratiebestand is geslaagd.\n" #: ../utils/bonobo-activation-sysconf.c:104 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "configuratiebestand is:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:146 #, c-format msgid "%s already in configuration file\n" msgstr "%s is al in het OAF-configuratiebestand\n" #: ../utils/bonobo-activation-sysconf.c:166 #, c-format msgid "there is not a properly structured configuration file\n" msgstr "er is geen correct gestructureerde configuratiebestand\n" #: ../utils/bonobo-activation-sysconf.c:237 #, c-format msgid "Bonobo-activation configuration file contains:\n" msgstr "Bonobo-activering configuratiebestand bevat:\n" #: ../utils/bonobo-activation-sysconf.c:267 msgid "Directory to remove from configuration file" msgstr "Map om uit het configuratiebestand te verwijderen" #: ../utils/bonobo-activation-sysconf.c:267 #: ../utils/bonobo-activation-sysconf.c:269 msgid "PATH" msgstr "PAD" #: ../utils/bonobo-activation-sysconf.c:269 msgid "Directory to add to configuration file" msgstr "Map om toe te voegen aan het configuratiebestand" #: ../utils/bonobo-activation-sysconf.c:271 msgid "Display directories in configuration file" msgstr "Mappen tonen in het configuratiebestand" #: ../utils/bonobo-activation-sysconf.c:273 msgid "Display path to configuration file" msgstr "Pad tonen naar het configuratiebestand" #~ msgid "Could not initialize Bonobo" #~ msgstr "Bonobo kon niet geinitialiseerd worden" #~ msgid "" #~ "Register as the users' activation server without locking [!] for debugging" #~ msgstr "" #~ "Registreer de activeringsserver van de gebruiker zonder te vergrendelen " #~ "[!] voor debuggen" #~ msgid "Bonobo Activation" #~ msgstr "Bonobo activering" #~ msgid "Race condition activating server '%s'" #~ msgstr "Race-conditie bij activeren van server ‘%s’" #~ msgid "directory path" #~ msgstr "Map-pad" #~ msgid "Child received signal %u (%s)" #~ msgstr "Dochter ontving signaal %u (%s)" #~ msgid "Unknown non-exit error (status is %u)" #~ msgstr "Onbekende, non-exit gerelateerde, fout (status is %u)" #~ msgid "bonobo-activation failed to set process group of %s: %s\n" #~ msgstr "bonobo-activering kon de procesgroep van %s niet instellen: %s\n" #~ msgid "Failed to execute %s: %d (%s)\n" #~ msgstr "Uitvoeren van %s mislukt: %d (%s)\n" #~ msgid "Too many alias levels for a locale, may indicate a loop" #~ msgstr "" #~ "Te veel alias-niveaus voor een locale, mogelijk een aanwijzing voor een " #~ "lus" libbonobo-2.32.1/po/sl.po0000644000076400007640000004237111373604303012100 00000000000000# Slovenian translation of libbonobo. # Copyright (C) 1999-2007 Free Software Foundation, Inc. # This file is distributed under the same license as the libbonobo package. # # Andraz Tori , 2002. # Matjaž Horvat , 2006. # Matej Urbančič , 2007 - 2010. # msgid "" msgstr "" "Project-Id-Version: libbonobo master\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=libbonobo&component=general\n" "POT-Creation-Date: 2010-04-21 16:26+0000\n" "PO-Revision-Date: 2010-04-22 15:08+0100\n" "Last-Translator: Matej Urbančič \n" "Language-Team: Slovenian GNOME Translation Team \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=4; plural=(n%100==1 ? 1 : n%100==2 ? 2 : n%100==3 || n%100==4 ? 3 : 0);\n" "X-Poedit-Country: SLOVENIA\n" "X-Poedit-Language: Slovenian\n" "X-Poedit-SourceCharset: utf-8\n" #: ../activation-server/activation-context-corba.c:530 msgid "Couldn't find which child the server was listed in" msgstr "Ni mogoče ugotoviti v seznamu katerega podrejenega predmeta je bil strežnik" #: ../activation-server/activation-context-corba.c:822 msgid "Not a valid Activation ID" msgstr "Ni veljaven ID prijave" #: ../activation-server/activation-server-main.c:176 msgid "Directory to read .server files from" msgstr "Mapa z datotekami .server" #: ../activation-server/activation-server-main.c:176 msgid "DIRECTORY" msgstr "MAPA" #: ../activation-server/activation-server-main.c:179 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "Služi kot ActivationContext (privzeto le kot ImenikPredmetov)" #: ../activation-server/activation-server-main.c:183 msgid "File descriptor to write IOR to" msgstr "Datotečni opisnik za vpis IOR" #: ../activation-server/activation-server-main.c:183 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:186 msgid "Register as the user's activation server without locking. Warning: this option can have dangerous side effects on the stability of the user's running session, and should only be used for debugging purposes" msgstr "Prijava v uporabniški prijavni strežnik brez zaklepanja. Opozorilo: izbrana možnost lahko vpliva na stabilnost uporabniške seje in je namenjena izključno razhroščevanju." #: ../activation-server/activation-server-main.c:194 msgid "Query expression to evaluate" msgstr "Izraz poizvedbe za ovrednotenje" #: ../activation-server/activation-server-main.c:194 msgid "EXPRESSION" msgstr "IZRAZ" #: ../activation-server/activation-server-main.c:547 #: ../utils/bonobo-activation-sysconf.c:305 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "Zaženite '%s --help' za ogled celotnega seznama možnosti ukazne vrstice.\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "Storitev CORBA CosNaming." #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "Imenska storitev" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "Storitev obveščanja" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "Storitev obveščanja za prijavo" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "Ni mogoče upravljati s predmetom shlib v oddaljenem opravilu" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "The Bonobo Activation configuration file was not read successfully. Please, check it is valid in: %s" msgstr "Nastavitvene datoteke Bonobo-activation ni mogoče prebrati. Preverite ali je veljavna datoteka v: %s" #: ../activation-server/object-directory-load.c:102 msgid "a NULL iid is not valid" msgstr "NULL iid ni veljaven" #: ../activation-server/object-directory-load.c:106 #, c-format msgid "iid %s has a NULL type" msgstr "iid %s je vrste NULL" #: ../activation-server/object-directory-load.c:110 #, c-format msgid "iid %s has a NULL location" msgstr "iid %s ima določeno NULL mesto" #: ../activation-server/object-directory-load.c:119 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "neveljaven znak '%c' v iid '%s'" #: ../activation-server/object-directory-load.c:349 #, c-format msgid "Property '%s' has no value" msgstr "Lastnost '%s' nima vrednosti" #: ../activation-server/object-directory-load.c:583 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "Ni mogoče razčleniti napačno oblikovanega dokumenta XML %s" #: ../activation-server/object-directory-load.c:629 #, c-format msgid "Trying dir %s" msgstr "Poizkušanje mape %s" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "Podrejeno opravilo ni vrnilo sporočila o napaki; prišlo je do neznane napake" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "Ni mogoče prebrati podatkov podrejenega opravila: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, c-format msgid "EOF from child process\n" msgstr "EOF podrejenega opravila\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:438 msgid "Couldn't spawn a new process" msgstr "Ni mogoče razvejiti novega opravila" #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "File descriptor to print IOR on" msgstr "Datotečno določilo, kamor naj se izpiše IOR" #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:399 msgid "IID to activate" msgstr "IID za prijavo" #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Prevent registering of server with OAF" msgstr "Prepreči vpis strežnika pri OAF" #: ../bonobo-activation/bonobo-activation-init.c:409 msgid "Bonobo Activation options:" msgstr "Možnosti Bonobo zagona:" #: ../bonobo-activation/bonobo-activation-init.c:410 msgid "Show Bonobo Activation options" msgstr "Pokaži možnosti zagona Bonobo" #: ../bonobo-activation/bonobo-activation-init.c:518 msgid "Bonobo activation options" msgstr "Možnosti prijave Bonobo" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "g_module_open predmeta `%s' ni uspešno izveden z `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "Ni mogoče najti simbola Bonobo_Plugin_info v `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "Tovarna `%s' je za `%s' vrnila NIL'" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Shlib `%s' ne vsebuje `%s'" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "Ime" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "Enoznačno ime programa" #: ../bonobo/bonobo-object.c:929 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:929 msgid "Custom CORBA POA" msgstr "Poljuben CORBA POA" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "Zahtevano je bilo izvajanje nepodprtega dejanja" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "V/I napaka" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "Neveljavna vrednost argumenta" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "Predmeta ni mogoče najti" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "Napaka skladnje v opisu predmeta" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "Ni mogoče zagnati predmeta iz tovarne" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "Ni dovoljenja za dostop do pretoka" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "Preizkušeno je bilo nepodprto dejanje pretoka" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "Napaka V/I na pretoku" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "Napaka V/I na shrambi" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "Ime v shrambi že obstaja" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "Predmeta v shrambi ni mogoče najti" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "Ni dovoljenja za opravilo na shrambi" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "Zahtevano je izvajanje nepodprtega dejanja shrambe" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "Predmet ni pretok" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "Predmet ni shramba" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "Shramba ni prazna" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "napačno oblikovan XML opis uporabniškega vmesnika" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "neveljavna pot do predmeta XML uporabniškega vmesnika" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "zahtevan atribut uporabniškega vmesnika ni obstajal" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "Neznan ukaz ali glagol" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "Ukaz ni občutljiv" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "napačna vrsta podatkov" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "pretoka ni mogoče najti" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "lastnosti ni mogoče najti" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "lastnost ima neveljavno vrsto" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "lastnost je le berljiva" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "napaka ozadnjega programa zbirke nastavitev" #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "Vmesnika vzdevka ni mogoče najti" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "Zaganjanju vzdevka je pretekla časovna omejitev" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "Napaka skladnje v vzdevku" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "Vzdevek ima neznano vzdevčno predpono" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "Napaka med preverjanjem napake; ni izjeme" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "Splošna napaka zagona brez opisa" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s'" msgstr "Ni mogoče razrešiti ali razširiti '%s'" #: ../bonobo/bonobo-moniker-util.c:247 msgid "Failed to activate object" msgstr "Ni mogoče zagnati predmeta" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "Izjemna napaka med zaganjanjem '%s'" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "Ni mogoče zagnati '%s'" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "Vzdevek HTTP" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "Vzdevek obravnavanja IOR ORB" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "Običajna tovarna vzdevkov" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "prvotni vzdevek zagona Oaf" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "prvotni vzdevek poizvedbe Oaf" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "prvotna tovarna 'novega' vzdevka" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "prvotni vzdevek predmetov" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "MonikerExtender pretoka" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Tovarna strežnika bonobo odmevov" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Preizkusni program bonobo strežnika odmevov" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Sestavina odmeva" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Tovarna sestavine odmevov" #: ../samples/echo/echo-client.c:24 msgid "I could not initialize Bonobo" msgstr "Ni mogoče zagnati Bonoba" #: ../samples/echo/echo-client.c:35 msgid "Could not create an instance of the sample echo component" msgstr "Ni mogoče ustvariti primerka vzorčnega dela odmeva" #: ../samples/echo/echo-client.c:47 #, c-format msgid "An exception occurred '%s'" msgstr "Prišlo je do izjemne napake '%s'" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Could not save configuration file.\n" msgstr "Ni mogoče shraniti nastavitvene datoteke.\n" #: ../utils/bonobo-activation-sysconf.c:84 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "Preverite ustreznost dovoljenj za pisanje v '%s'.\n" #: ../utils/bonobo-activation-sysconf.c:87 #, c-format msgid "Successfully wrote configuration file.\n" msgstr "Uspešno zapisana nastavitvena datoteka.\n" #: ../utils/bonobo-activation-sysconf.c:104 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "nastavitvena datoteka je:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:146 #, c-format msgid "%s already in configuration file\n" msgstr "%s je že v nastavitveni datoteki\n" #: ../utils/bonobo-activation-sysconf.c:166 #, c-format msgid "there is not a properly structured configuration file\n" msgstr "ni pravilno zgrajene nastavitvene datoteke\n" #: ../utils/bonobo-activation-sysconf.c:237 #, c-format msgid "Bonobo-activation configuration file contains:\n" msgstr "Datoteka nastavitev bonobo-activation vsebuje:\n" #: ../utils/bonobo-activation-sysconf.c:267 msgid "Directory to remove from configuration file" msgstr "Mapa, ki naj se odstrani iz nastavitvene datoteke" #: ../utils/bonobo-activation-sysconf.c:267 #: ../utils/bonobo-activation-sysconf.c:269 msgid "PATH" msgstr "POT" #: ../utils/bonobo-activation-sysconf.c:269 msgid "Directory to add to configuration file" msgstr "Mapa, ki naj se doda nastavitveni datoteki" #: ../utils/bonobo-activation-sysconf.c:271 msgid "Display directories in configuration file" msgstr "Pokaži mape v nastavitveni datoteki" #: ../utils/bonobo-activation-sysconf.c:273 msgid "Display path to configuration file" msgstr "Pokaži pot do nastavitvene datoteke" #~ msgid "Could not initialize Bonobo" #~ msgstr "Ni mogoče inicializirati Bonoba" #~ msgid "" #~ "Register as the users' activation server without locking [!] for debugging" #~ msgstr "" #~ "Registriraj kot strežnik za aktivacijo uporabnikov brez zaklepanja [!] za " #~ "razhroščevanje" #~ msgid "Bonobo Activation" #~ msgstr "Aktivacija Bonobo" #~ msgid "Race condition activating server '%s'" #~ msgstr "Tekemski pogoj ob aktiviranju strežnika '%s'" #~ msgid "Child received signal %u (%s)" #~ msgstr "Podrejeni predmet je dobil signal %u (%s)" #~ msgid "Unknown non-exit error (status is %u)" #~ msgstr "Neznana ne-izhodna napaka (stanje je %u)" #~ msgid "bonobo-activation failed to set process group of %s: %s\n" #~ msgstr "bonobo-activation ni uspel nastaviti opravilne skupine %s: %s\n" #~ msgid "Failed to execute %s: %d (%s)\n" #~ msgstr "Izvedba %s ni uspela: %d (%s)\n" #~ msgid "Too many alias levels for a locale, may indicate a loop" #~ msgstr "" #~ "Preveč ravni vzdevkov za jezikovne nastavitve; napaka lahko pomeni zanko" #~ msgid "directory path" #~ msgstr "pot imenika" #~ msgid "No server corresponding to your query" #~ msgstr "Ni strežnikov, ki bi ustrezali poizvedbi" #~ msgid "Object directory to use when registering servers" #~ msgstr "Predmetni imenik, ki naj se uporabi ob zagonu strežnikov" #~ msgid "Query failed: " #~ msgstr "Poizvedba ni uspela: " #~ msgid "Activation failed: " #~ msgstr "Zagon ni uspela: " #~ msgid "Could not parse AID" #~ msgstr "Ni mogoče razčleniti AID" #~ msgid "Could not parse context: " #~ msgstr "Ni mogoče razčleniti vsebine: " #~ msgid "Could not activate server: " #~ msgstr "Ni mogoče aktivirati strežnika: " #~ msgid "Domain of ObjectDirectory" #~ msgstr "Domena ImenikaPredmetov" #~ msgid "DOMAIN" #~ msgstr "DOMENA" libbonobo-2.32.1/po/ast.po0000644000076400007640000003754611373604303012261 00000000000000# Asturian translation for libbonobo. # Copyright (C) 2010 libbonobo's COPYRIGHT HOLDER # This file is distributed under the same license as the libbonobo package. # FIRST AUTHOR , YEAR. # msgid "" msgstr "" "Project-Id-Version: libbonobo master\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=libbonobo&component=general\n" "POT-Creation-Date: 2010-01-04 01:33+0000\n" "PO-Revision-Date: 2010-01-06 18:26+0100\n" "Last-Translator: astur \n" "Language-Team: Asturian \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" "X-Poedit-Language: asturian\n" #: ../activation-server/activation-context-corba.c:530 msgid "Couldn't find which child the server was listed in" msgstr "Nun pudo determinase qué procesu fíu contién al sirvidor" #: ../activation-server/activation-context-corba.c:822 msgid "Not a valid Activation ID" msgstr "Nun ye un ID d'Activación válidu" #: ../activation-server/activation-server-main.c:176 msgid "Directory to read .server files from" msgstr "Direutoriu dende'l que lleer los ficheros .server" #: ../activation-server/activation-server-main.c:176 msgid "DIRECTORY" msgstr "DIREUTORIU" #: ../activation-server/activation-server-main.c:179 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "Sirvir tamién como un ActivationContext (por omisión namái como un ObjectDirectory)" #: ../activation-server/activation-server-main.c:183 msgid "File descriptor to write IOR to" msgstr "Descriptor de ficheru nel qu'escribir el IOR" #: ../activation-server/activation-server-main.c:183 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:186 msgid "Register as the user's activation server without locking. Warning: this option can have dangerous side effects on the stability of the user's running session, and should only be used for debugging purposes" msgstr "Rexistrase como'l sirvidor d'activación del usuariu ensin bloquéu. Alvertencia: esta opción puede tener efeutos llaterales peligrosos pa la estabilidá de la sesión n'execución del usuariu, y namái tendría d'usase pa propósitos de depuración." #: ../activation-server/activation-server-main.c:194 msgid "Query expression to evaluate" msgstr "Espresión de consulta a evaluar" #: ../activation-server/activation-server-main.c:194 msgid "EXPRESSION" msgstr "ESPRESIÓN" #: ../activation-server/activation-server-main.c:547 #: ../utils/bonobo-activation-sysconf.c:305 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "Executa '%s --help' pa ver una llista ensembre de les opciones de llinia de comandos disponibles.\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "Serviciu CORBA CosNaming." #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "Serviciu de nomes" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "Serviciu de notificación" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "Serviciu de notificación p'activación" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "Entá nun remanamos l'activación d'oxetos shlib nún procesu remotu" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "The Bonobo Activation configuration file was not read successfully. Please, check it is valid in: %s" msgstr "El ficheru de configuración de bonobo nun se lleó satisfactoriamente. Compruebe que ye válidu en: %s" #: ../activation-server/object-directory-load.c:102 msgid "a NULL iid is not valid" msgstr "un iiD col valor NULL nun ye válidu" #: ../activation-server/object-directory-load.c:106 #, c-format msgid "iid %s has a NULL type" msgstr "El iiD %s tien tipu NULL" #: ../activation-server/object-directory-load.c:110 #, c-format msgid "iid %s has a NULL location" msgstr "El IID %s tien una llocalización NULL" #: ../activation-server/object-directory-load.c:119 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "Caráuter '%c' inválidu en IID «%s»" #: ../activation-server/object-directory-load.c:349 #, c-format msgid "Property '%s' has no value" msgstr "Nun se-y dió un valor al atributu «%s»" #: ../activation-server/object-directory-load.c:583 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "Nun pudo interpretase'l documentu XML mal formáu %s" #: ../activation-server/object-directory-load.c:629 #, c-format msgid "Trying dir %s" msgstr "Prebando col direutoriu %s" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "El procesu fíu nun dio dengún mensax de fallu, asocedió un fallu desconocíu" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "Nun pudo lleese dende'l procesu fíu: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, c-format msgid "EOF from child process\n" msgstr "EOF dende'l procesu fíu\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:438 msgid "Couldn't spawn a new process" msgstr "Nun puede aniciase un nuevu procesu (spawn)" #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "File descriptor to print IOR on" msgstr "Descriptor de ficheru nel qu'escribir el IOR" #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:399 msgid "IID to activate" msgstr "IID qu'activar" #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Prevent registering of server with OAF" msgstr "Evitar el rexistru d'un sirvidor nel OAF" #: ../bonobo-activation/bonobo-activation-init.c:409 msgid "Bonobo Activation options:" msgstr "Opciones de l'activación de Bonobo:" #: ../bonobo-activation/bonobo-activation-init.c:410 msgid "Show Bonobo Activation options" msgstr "Amosar opciones de l'activación de Bonobo" #: ../bonobo-activation/bonobo-activation-init.c:518 msgid "Bonobo activation options" msgstr "Opciones de l'activación de Bonobo" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "Falló g_module_open de «%s» con «%s»" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "Nun puede alcontrase'l símbolu Bonobo_Plugin_info en «%s»" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "La fábrica «%s» devolvió NIL pa «%s»" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Shlib «%s» nun contenía «%s»" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "Nome" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "Nome únicu d'aplicación" #: ../bonobo/bonobo-object.c:929 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:929 msgid "Custom CORBA POA" msgstr "CORBA POA personalizáu" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "Intentóse facer una aición non soportada" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "Error de E/S" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "Valor inválidu pal argumentu" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "Nun s'atopa l'oxetu" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "Error de sintaxis na descripción del oxetu" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "Nun puedo activar l'oxetu dende la factoría" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "Nun tienes permisos p'acceder al fluxu de datos" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "Intentóse una aición non soportada sobro'l fluxu de datos" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "Error de E/S nel fluxu de datos" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "Error de E/S nel atroxamientu" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "El nome yá esiste nel atroxamientu" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "Oxetu non alcontráu nel atroxamientu" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "Nun tienes permisos pa facer la operación nel atroxamientu" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "Intentó facese una aición d'atroxamientu non permitida" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "L'oxetu nun ye un fluxu de datos" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "L'oxetu nun ye un atroxamientu" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "L'atroxamientu nun ta ermu" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "descripción de la interface d'usuariu XML mal construyía" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "ruta errónea al elementu de la interface d'usuariu XML" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "l'atributu solicitáu de la UI nun esiste" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "Comandu u orde desconocía" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "El comandu ye insensitivu" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "tipu de datu incorreutu" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "fluxu de datos non alcontráu" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "propiedá non alcontrada" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "la propiedá tien un tipu non válidu" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "la propiedá ye de namái llectura" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "falló'l remanador de la base de datos de configuraciones " #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "Interface pal moniker non alcontrada" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "El tiempu d'activación del moniker caducó" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "Error de sintaxis nel moniker" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "El moniker tien un prefixu de moniker desconocíu" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "Error al comprobar el fallu; nun hai esceición" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "Error d'activación xeneral ensin descripción" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s" msgstr "Nun pudo resolvese o estender «%s»" #: ../bonobo/bonobo-moniker-util.c:247 msgid "Failed to activate object" msgstr "Nun pudo activase l'oxetu" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "Activando la esceición «%s»" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "Nun pudo activase «%s»" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "Moniker HTTP" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "moniker pal remanamientu de ORB IOR" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "Fábrica de moniker estándar" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "moniker xenéricu d'activación de OAF" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "moniker xenéricu de consulta de OAF" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "Fábrica de moniker xenéricu" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "Ítem de moniker xenéricu" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "fluxu MonikerExtender" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Fábrica del sirvidor Bonobo Echo (eco)" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Programa d'exemplu del sirvidor Bonobo Echo (eco)" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Componente eco" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Fábrica del componente echo (eco)" #: ../samples/echo/echo-client.c:24 msgid "I could not initialize Bonobo" msgstr "Nun se puede anicializar Bonobo" #: ../samples/echo/echo-client.c:35 msgid "Could not create an instance of the sample echo component" msgstr "Nun se puede crear una instancia del exemplu del componente eco" #: ../samples/echo/echo-client.c:47 #, c-format msgid "An exception occurred '%s'" msgstr "Asocedió una esceición «%s»" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Could not save configuration file.\n" msgstr "Nun pudo atroxase'l ficheru de configuración.\n" #: ../utils/bonobo-activation-sysconf.c:84 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "Tea xuru de tener permisu d'escritura nel ficheru «%s».\n" #: ../utils/bonobo-activation-sysconf.c:87 #, c-format msgid "Successfully wrote configuration file.\n" msgstr "El ficheru de configuración atroxóse correcho.\n" #: ../utils/bonobo-activation-sysconf.c:104 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "El ficheru de configuración ye:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:146 #, c-format msgid "%s already in configuration file\n" msgstr "%s yá ta nel ficheru de configuración\n" #: ../utils/bonobo-activation-sysconf.c:166 #, c-format msgid "there is not a properly structured configuration file\n" msgstr "nun hai un ficheru de configuración encadarmáu correcho\n" #: ../utils/bonobo-activation-sysconf.c:237 #, c-format msgid "Bonobo-activation configuration file contains:\n" msgstr "El ficheru de configuración de bonobo-activation contién:\n" #: ../utils/bonobo-activation-sysconf.c:267 msgid "Directory to remove from configuration file" msgstr "Direutoriu a desaniciar del ficheru de configuración" #: ../utils/bonobo-activation-sysconf.c:267 #: ../utils/bonobo-activation-sysconf.c:269 msgid "PATH" msgstr "CAMÍN" #: ../utils/bonobo-activation-sysconf.c:269 msgid "Directory to add to configuration file" msgstr "Direutoriu a amestar al ficheru de configuración" #: ../utils/bonobo-activation-sysconf.c:271 msgid "Display directories in configuration file" msgstr "Amosar los direutorios del ficheru de configuración" #: ../utils/bonobo-activation-sysconf.c:273 msgid "Display path to configuration file" msgstr "Amosar el camín del ficheru de configuración" libbonobo-2.32.1/po/wa.po0000644000076400007640000003330611173072711012067 00000000000000# translation of bonobo-activation.po to Walon # Copyright (C) 2003 Free Software Foundation, Inc. # Pablo Saratxaga , 2003. # Pablo Saratxaga , 2004. # msgid "" msgstr "" "Project-Id-Version: bonobo-activation\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2006-10-22 16:55+0200\n" "PO-Revision-Date: 2004-04-06 21:29+0200\n" "Last-Translator: Pablo Saratxaga \n" "Language-Team: Walloon \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.0.2\n" #: ../activation-server/activation-context-corba.c:523 msgid "Couldn't find which child the server was listed in" msgstr "" #: ../activation-server/activation-context-corba.c:815 msgid "Not a valid Activation ID" msgstr "" #: ../activation-server/activation-server-main.c:162 msgid "Directory to read .server files from" msgstr "Ridant k' on léjhe les fitchîs «.server»" #: ../activation-server/activation-server-main.c:162 msgid "DIRECTORY" msgstr "RIDANT" #: ../activation-server/activation-server-main.c:165 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "" "Siervi come èn ActivationContext (li prémetowe valixhance c' est del fé " "seulmint come èn ObjectDirectory)" #: ../activation-server/activation-server-main.c:169 msgid "File descriptor to write IOR to" msgstr "" #: ../activation-server/activation-server-main.c:169 #: ../bonobo-activation/bonobo-activation-init.c:355 #: ../bonobo-activation/bonobo-activation-init.c:365 msgid "FD" msgstr "" #: ../activation-server/activation-server-main.c:172 msgid "" "Register as the users' activation server without locking [!] for debugging" msgstr "" #: ../activation-server/activation-server-main.c:177 msgid "Query expression to evaluate" msgstr "Ratourneure di cweraedje a-z evalouwer" #: ../activation-server/activation-server-main.c:177 msgid "EXPRESSION" msgstr "RATOURNEURE" #: ../activation-server/activation-server-main.c:426 #: ../utils/bonobo-activation-sysconf.c:304 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "Siervice CosNaming di CORBA." #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "No do siervice" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "Siervice di notifiaedje" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" #: ../activation-server/object-directory-load.c:101 msgid "a NULL iid is not valid" msgstr "" #: ../activation-server/object-directory-load.c:105 #, c-format msgid "iid %s has a NULL type" msgstr "" #: ../activation-server/object-directory-load.c:109 #, c-format msgid "iid %s has a NULL location" msgstr "" #: ../activation-server/object-directory-load.c:118 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "caractere «%c» nén valide dins l' iid «%s»" #: ../activation-server/object-directory-load.c:348 #, c-format msgid "Property '%s' has no value" msgstr "Li prôpieté «%s» n' a nole valixhance" #: ../activation-server/object-directory-load.c:580 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "" #: ../activation-server/object-directory-load.c:627 #, c-format msgid "Trying dir %s" msgstr "" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "Dji n' a savou lére a pårti do process efant: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, fuzzy msgid "EOF from child process\n" msgstr "Dji n' a savou lére a pårti do process efant: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:435 #, fuzzy msgid "Couldn't spawn a new process" msgstr "Dji n' a savou fé on fork() d' on novea process" #: ../bonobo-activation/bonobo-activation-init.c:355 #: ../bonobo-activation/bonobo-activation-init.c:365 msgid "File descriptor to print IOR on" msgstr "" #: ../bonobo-activation/bonobo-activation-init.c:357 #: ../bonobo-activation/bonobo-activation-init.c:367 msgid "IID to activate" msgstr "" #: ../bonobo-activation/bonobo-activation-init.c:359 #: ../bonobo-activation/bonobo-activation-init.c:369 msgid "Prevent registering of server with OAF" msgstr "" #: ../bonobo-activation/bonobo-activation-init.c:403 #, fuzzy msgid "Bonobo Activation" msgstr "Tchuzes d' activaedje di bonobo" #: ../bonobo-activation/bonobo-activation-init.c:404 #, fuzzy msgid "Show Bonobo Activation options" msgstr "Tchuzes d' activaedje di bonobo" #: ../bonobo-activation/bonobo-activation-init.c:512 msgid "Bonobo activation options" msgstr "Tchuzes d' activaedje di bonobo" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "Li drovaedje pa g_module_open di «%s» a fwait berwete avou «%s»" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "Dji n' a savou trover li simbole Bonobo_Plugin_info dins «%s»" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Li pårteye livreye «%s» n' a nén «%s» å dvins" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "No" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "No unike do programe" #: ../bonobo/bonobo-object.c:923 msgid "POA" msgstr "" #: ../bonobo/bonobo-object.c:923 msgid "Custom CORBA POA" msgstr "" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "Ene accion nén sopoirtêye a stî sayeye" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "Aroke I/R" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "Valixhance nén valide po l' årgumint" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "Objet nén trové" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "li prôpieté est d' ene sôre nén valide" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "" #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "" #: ../bonobo/bonobo-generic-factory.h:79 ../bonobo/bonobo-generic-factory.h:83 msgid "Could not initialize Bonobo" msgstr "Dji n' sai inicialijhî Bonobo" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s" msgstr "" #: ../bonobo/bonobo-moniker-util.c:246 msgid "Failed to activate object" msgstr "" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "L' enondaedje di «%s» a fwait berwete" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "" #: ../samples/echo/echo-client.c:22 msgid "I could not initialize Bonobo" msgstr "Dji n' a savou inicyî Bonobo" #: ../samples/echo/echo-client.c:33 msgid "Could not create an instance of the sample echo component" msgstr "" #: ../samples/echo/echo-client.c:45 #, c-format msgid "An exception occurred '%s'" msgstr "" #: ../utils/bonobo-activation-sysconf.c:82 msgid "Could not save configuration file.\n" msgstr "Dji n' a savou schaper l' fitchî d' apontiaedje.\n" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "Acertinez vs ki vos avoz l' permissions po scrire e «%s».\n" #: ../utils/bonobo-activation-sysconf.c:86 msgid "Successfully wrote configuration file.\n" msgstr "Li schapaedje do fitchî d' apontiaedje a stî comifåt.\n" #: ../utils/bonobo-activation-sysconf.c:103 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "li fitchî d' apontiaedje est:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:145 #, c-format msgid "%s already in configuration file\n" msgstr "%s est ddja el fitchî d' apontiaedje\n" #: ../utils/bonobo-activation-sysconf.c:165 msgid "there is not a properly structured configuration file\n" msgstr "i gn a pont di fitchî d' apontiaedje sitructuré comifåt\n" #: ../utils/bonobo-activation-sysconf.c:236 msgid "Bonobo-activation configuration file contains:\n" msgstr "Li fitchî d' apontiaedje di bonobo-activation a-st å dvins:\n" #: ../utils/bonobo-activation-sysconf.c:266 msgid "Directory to remove from configuration file" msgstr "Ridant a oister foû pol fitchî d' apontiaedje" #: ../utils/bonobo-activation-sysconf.c:266 #: ../utils/bonobo-activation-sysconf.c:268 msgid "PATH" msgstr "" #: ../utils/bonobo-activation-sysconf.c:268 msgid "Directory to add to configuration file" msgstr "Ridant a radjouter pol fitchî d' apontiaedje" #: ../utils/bonobo-activation-sysconf.c:270 msgid "Display directories in configuration file" msgstr "Håyner les ridants do fitchî d' apontiaedje" #: ../utils/bonobo-activation-sysconf.c:272 msgid "Display path to configuration file" msgstr "Håyner li tchmin do fitchî d' apontiaedje" #~ msgid "Child received signal %u (%s)" #~ msgstr "L' efant a rçuvou li signå %u (%s)" #~ msgid "bonobo-activation failed to set process group of %s: %s\n" #~ msgstr "" #~ "bonobo-activation n' a nén savou mete li groupe li groupe do process di %" #~ "s: %s\n" #~ msgid "Failed to execute %s: %d (%s)\n" #~ msgstr "L' enondaedje di %s a fwait berwete: %d (%s)\n" #~ msgid "Too many alias levels for a locale, may indicate a loop" #~ msgstr "" #~ "Pår trop di liveas d' alias po ene locåle; çoula pout esse cåze d' on " #~ "betchfessî loyén" #~ msgid "directory path" #~ msgstr "tchimin do ridant" libbonobo-2.32.1/po/sk.po0000644000076400007640000003660411173072711012101 00000000000000# libbonobo sk.po # Copyright (C) 2001, 2002, 2003, 2004, 2005, 2008 Free Software Foundation, Inc. # Stanislav Visnovsky , 2000,2001,2002,2003. # Marcel Telka , 2001, 2002, 2003, 2004, 2005, 2008. # msgid "" msgstr "" "Project-Id-Version: libbonobo\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2008-03-06 22:00+0100\n" "PO-Revision-Date: 2008-03-06 22:00+0100\n" "Last-Translator: Marcel Telka \n" "Language-Team: Slovak \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../activation-server/activation-context-corba.c:527 msgid "Couldn't find which child the server was listed in" msgstr "Nie je možné zistiť server, v ktorom bol zapísaný potomok" #: ../activation-server/activation-context-corba.c:819 msgid "Not a valid Activation ID" msgstr "Nie je platné aktivačné ID" #: ../activation-server/activation-server-main.c:162 msgid "Directory to read .server files from" msgstr "Priečinok, z ktorého čítať súbory .server" #: ../activation-server/activation-server-main.c:162 msgid "DIRECTORY" msgstr "PRIEČINOK" #: ../activation-server/activation-server-main.c:165 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "Fungovať ako aktivačný kontext (štandardne je iba ako ObjectDirectory)" #: ../activation-server/activation-server-main.c:169 msgid "File descriptor to write IOR to" msgstr "Deskriptor súboru, do ktorého zapísať IOR" #: ../activation-server/activation-server-main.c:169 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "FD" msgstr "DS" #: ../activation-server/activation-server-main.c:172 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "" "Registrovať sa ako aktivačný server používateľa bez uzamykania. Upozornenie: " "táto voľba môže mať nebezpečné vedľajšie účinky na stabilitu bežiaceho " "sedenia používateľa a mala by byť používaná len na ladiace účely" #: ../activation-server/activation-server-main.c:180 msgid "Query expression to evaluate" msgstr "Výraz, ktorý sa má vyhodnotiť" #: ../activation-server/activation-server-main.c:180 msgid "EXPRESSION" msgstr "VÝRAZ" #: ../activation-server/activation-server-main.c:430 #: ../utils/bonobo-activation-sysconf.c:305 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "" "Spustite '%s --help', aby ste videli úplný zoznam dostupných volieb " "príkazového riadku.\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "Služba CORBA CosNaming." #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "Pomenovávacia služba" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "Oznamovacia služba" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "Oznamovacia služba pre aktiváciu" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "Zatiaľ nie je možné aktivovať shlib objekty vo vzdialených procesoch" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "Konfiguračný súbor Bonobo Activation nebol úspešne načítaný. Prosím, overte, " "že je platný v: %s" #: ../activation-server/object-directory-load.c:102 msgid "a NULL iid is not valid" msgstr "NULL iid nie je platné" #: ../activation-server/object-directory-load.c:106 #, c-format msgid "iid %s has a NULL type" msgstr "iid %s má typ NULL" #: ../activation-server/object-directory-load.c:110 #, c-format msgid "iid %s has a NULL location" msgstr "iid %s má umiestnenie NULL" #: ../activation-server/object-directory-load.c:119 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "neplatný znak '%c' v iid '%s'" #: ../activation-server/object-directory-load.c:349 #, c-format msgid "Property '%s' has no value" msgstr "Vlastnosť '%s' nemá hodnotu" #: ../activation-server/object-directory-load.c:583 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "Nepodarilo sa analyzovať zlý formát XML dokumentu %s" #: ../activation-server/object-directory-load.c:629 #, c-format msgid "Trying dir %s" msgstr "Skúšam priečinok %s" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "Potomok neposlal správu chyby, nastalo neznáme zlyhanie" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "Nepodarilo sa čítanie od potomka: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, c-format msgid "EOF from child process\n" msgstr "Koniec súboru (EOF) z procesu potomka\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:438 msgid "Couldn't spawn a new process" msgstr "Nepodarilo sa vytvoriť nový proces" #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "File descriptor to print IOR on" msgstr "Deskriptor súboru, do ktorého vytlačiť IOR" #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:399 msgid "IID to activate" msgstr "aktivovať IID" #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Prevent registering of server with OAF" msgstr "Zabrániť registrácii serveru v OAF" #: ../bonobo-activation/bonobo-activation-init.c:409 msgid "Bonobo Activation options:" msgstr "Možnosti aktivácie bonobo:" #: ../bonobo-activation/bonobo-activation-init.c:410 msgid "Show Bonobo Activation options" msgstr "Zobraziť možnosti aktivácie bonobo" #: ../bonobo-activation/bonobo-activation-init.c:518 msgid "Bonobo activation options" msgstr "Možnosti aktivácie bonobo" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "g_module_open z `%s' zlyhal s `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "Nepodarilo sa nájsť symbol Bonobo_Plugin_info v `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "Vytváracie rozhranie `%s' vrátilo pre `%s' hodnotu NIL" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Shlib `%s' neobsahovalo `%s'" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "Názov" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "Jedinečné meno aplikácie" #: ../bonobo/bonobo-object.c:926 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:926 msgid "Custom CORBA POA" msgstr "Vlastné CORBA POA" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "Skúsená nepodporovaná akcia" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "V/V chyba" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "Nesprávna hodnota argumentu" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "Objekt nenájdený" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "Chyba syntaxe v popise objektu" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "Nemôžem aktivovať objekt z továrne" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "Nie sú práva na prístup k prúdu" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "Skúsená nepodporovaná akcia prúdu" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "V/V chyba v prúde" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "V/V chyba v úložisku" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "Meno už existuje v úložisku" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "Objekt nebol nájdený v úložisku" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "Nie sú práva na vykonanie operácie v úložisku" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "Skúsená nepodporovaná akcia úložiska" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "Objekt nie je prúd" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "Objekt nie je úložisko" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "Úložisko nie je prázdne" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "porušený XML popis používateľského rozhrania" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "neplatná cesta k prvku XML používateľského rozhrania" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "požadovaná vlastnosť UI neexistuje" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "Neznámy príkaz alebo výraz" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "Príkaz je necitlivý" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "nesprávny typ dát" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "prúd nenájdený" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "vlastnosť nenájdená" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "vlastnosť je neplatného typu" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "vlastnosť je len na čítanie" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "komunikácia s konfiguračnou databázou zlyhala " #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "Rozhranie monikera nemôže byť nájdené" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "Časový limit aktivácie monikera vypršal" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "Chyba syntaxe v monikeri" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "Moniker má neznámu predponu" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "Chyba pri kontrole chyby; bez výnimky" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "Všeobecná chyba aktivácie bez popisu" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s" msgstr "Zlyhalo rozdelenie alebo rozšírenie '%s'" #: ../bonobo/bonobo-moniker-util.c:247 msgid "Failed to activate object" msgstr "Zlyhala aktivácia objektu" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "Aktivácia výnimky '%s'" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "Zlyhala aktivácia '%s'" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "HTTP moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "ORB IOR ovládací moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "Štandardná továreň monikera" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "všeobecný aktivačný moniker Oaf" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "všeobecný dotazovací moniker Oaf" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "všeobecný moniker továrne 'new'" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "všeobecný moniker položiek" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "prúd MonikerExtender" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Bonobo továreň servera echo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Ukážkový program bonobo servera echo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Komponent echo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Továreň komponentu echo" #: ../samples/echo/echo-client.c:24 msgid "I could not initialize Bonobo" msgstr "Nemôžem inicializovať Bonobo" #: ../samples/echo/echo-client.c:35 msgid "Could not create an instance of the sample echo component" msgstr "Nemôžem vytvoriť inštanciu ukážkového komponentu echo" #: ../samples/echo/echo-client.c:47 #, c-format msgid "An exception occurred '%s'" msgstr "Vyskytla sa výnimka '%s'" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Could not save configuration file.\n" msgstr "Nie je možné uložiť konfiguračný súbor.\n" #: ../utils/bonobo-activation-sysconf.c:84 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "Prosím, overte, že máte práva pre zápis do '%s'.\n" #: ../utils/bonobo-activation-sysconf.c:87 #, c-format msgid "Successfully wrote configuration file.\n" msgstr "Úspešne zapísaný konfiguračný súbor.\n" #: ../utils/bonobo-activation-sysconf.c:104 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "konfiguračný súbor je:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:146 #, c-format msgid "%s already in configuration file\n" msgstr "%s už je v konfiguračnom súbore.\n" #: ../utils/bonobo-activation-sysconf.c:166 #, c-format msgid "there is not a properly structured configuration file\n" msgstr "neobsahuje správne štruktúrovaný konfiguračný súbor\n" #: ../utils/bonobo-activation-sysconf.c:237 #, c-format msgid "Bonobo-activation configuration file contains:\n" msgstr "Konfiguračný súbor bonobo-activation obsahuje:\n" #: ../utils/bonobo-activation-sysconf.c:267 msgid "Directory to remove from configuration file" msgstr "Priečinok, ktorý má byť odstránený z konfiguračného súboru" #: ../utils/bonobo-activation-sysconf.c:267 #: ../utils/bonobo-activation-sysconf.c:269 msgid "PATH" msgstr "CESTA" #: ../utils/bonobo-activation-sysconf.c:269 msgid "Directory to add to configuration file" msgstr "Priečinok, ktorý má byť pridaný do konfiguračného súboru" #: ../utils/bonobo-activation-sysconf.c:271 msgid "Display directories in configuration file" msgstr "Zobraziť priečinky, ktoré sú konfiguračnom súbore" #: ../utils/bonobo-activation-sysconf.c:273 msgid "Display path to configuration file" msgstr "Zobraziť cestu ku konfiguračnému súboru" libbonobo-2.32.1/po/xh.po0000644000076400007640000004057011173072711012100 00000000000000# Xhosa translation of libbonobo # Copyright (C) 2005 Canonical Ltd. # This file is distributed under the same license as the libbonobo package. # Translation by Canonical Ltd with thanks to # Translation World CC in South Africa, 2005. # msgid "" msgstr "" "Project-Id-Version: libbonobo\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2006-10-22 16:55+0200\n" "PO-Revision-Date: 2005-02-17 09:50+0200\n" "Last-Translator: Canonical Ltd \n" "Language-Team: Xhosa \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../activation-server/activation-context-corba.c:523 msgid "Couldn't find which child the server was listed in" msgstr "Akufumanekanga mntwana i-server edweliswe kuye" #: ../activation-server/activation-context-corba.c:815 msgid "Not a valid Activation ID" msgstr "Asiyo-ID yokusebenza elungileyo" #: ../activation-server/activation-server-main.c:162 msgid "Directory to read .server files from" msgstr "Uvimba weefayili .server" #: ../activation-server/activation-server-main.c:162 msgid "DIRECTORY" msgstr "UVIMBA WEEFAYILI" #: ../activation-server/activation-server-main.c:165 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "" "Isebenza njenge-ActivationContext (okumiselweyo kunjenge-ObjectDirectory " "kuphela)" #: ../activation-server/activation-server-main.c:169 msgid "File descriptor to write IOR to" msgstr "Ifayili echazayo ishicilele i-IOR" #: ../activation-server/activation-server-main.c:169 #: ../bonobo-activation/bonobo-activation-init.c:355 #: ../bonobo-activation/bonobo-activation-init.c:365 msgid "FD" msgstr "I-FD" #: ../activation-server/activation-server-main.c:172 msgid "" "Register as the users' activation server without locking [!] for debugging" msgstr "" #: ../activation-server/activation-server-main.c:177 msgid "Query expression to evaluate" msgstr "Intetho ebuzayo emayivavanywe" #: ../activation-server/activation-server-main.c:177 msgid "EXPRESSION" msgstr "INTETHO" #: ../activation-server/activation-server-main.c:426 #: ../utils/bonobo-activation-sysconf.c:304 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "Inkonzo i-CORBA CosNaming." #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "Inkonzo yegama" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "Inkonzo yokwazisa" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "Inkonzo yokwazisa ukwenza ukuba isebenze" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "" "Asiphathi zinto ezenza ukuba i-shlib isebenze kwinkqubo engekenzekiyo " "okwangoku" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "Ifayili yokumiselwa kwenkqubo yokwenza ukuba iBonobo isebenze ayifundwanga " "ngokuphumeleleyo. Nceda, ukhangele ukuba ilungile na ku: %s" #: ../activation-server/object-directory-load.c:101 msgid "a NULL iid is not valid" msgstr "I-NULL iid ayilunganga" #: ../activation-server/object-directory-load.c:105 #, c-format msgid "iid %s has a NULL type" msgstr "I-iid %s inohlobo oluyi-NULL" #: ../activation-server/object-directory-load.c:109 #, c-format msgid "iid %s has a NULL location" msgstr "I-iid %s inendawo eyi-NULL" #: ../activation-server/object-directory-load.c:118 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "uphawu olungalunganga '%c' in iid '%s'" #: ../activation-server/object-directory-load.c:348 #, c-format msgid "Property '%s' has no value" msgstr "Uphawu lwenkcazo yesiqendu '%s' alunaxabiso" #: ../activation-server/object-directory-load.c:580 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "Ayikwazanga ukuhluza uxwebhu i-XML %s olungenziwanga kakuhle" #: ../activation-server/object-directory-load.c:627 #, c-format msgid "Trying dir %s" msgstr "Uvimba weefayili %s ozamayo" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "" "Inkqubo yomntwana ayikhange inike umyalezo oyimpazamo, ukungaphumeleli " "okungaziwayo kwenzekile" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "Ayiphumelelanga ukufunda kwinkqubo yomntwana: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, fuzzy msgid "EOF from child process\n" msgstr "Ayiphumelelanga ukufunda kwinkqubo yomntwana: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:435 #, fuzzy msgid "Couldn't spawn a new process" msgstr "Akukwazekanga ukwenza inkqubo entsha" #: ../bonobo-activation/bonobo-activation-init.c:355 #: ../bonobo-activation/bonobo-activation-init.c:365 msgid "File descriptor to print IOR on" msgstr "Ifayili echazayo ishicilele i-IOR" #: ../bonobo-activation/bonobo-activation-init.c:357 #: ../bonobo-activation/bonobo-activation-init.c:367 msgid "IID to activate" msgstr "I-IID yenze ukuba isebenze" #: ../bonobo-activation/bonobo-activation-init.c:359 #: ../bonobo-activation/bonobo-activation-init.c:369 msgid "Prevent registering of server with OAF" msgstr "Inqanda ukubhalisa kweseva nge-OAF" #: ../bonobo-activation/bonobo-activation-init.c:403 #, fuzzy msgid "Bonobo Activation" msgstr "Iindlela ekukhethwa kuzo zokusebenza ze-Bonobo" #: ../bonobo-activation/bonobo-activation-init.c:404 #, fuzzy msgid "Show Bonobo Activation options" msgstr "Iindlela ekukhethwa kuzo zokusebenza ze-Bonobo" #: ../bonobo-activation/bonobo-activation-init.c:512 msgid "Bonobo activation options" msgstr "Iindlela ekukhethwa kuzo zokusebenza ze-Bonobo" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "i-g_module_open nge `%s' ayiphumelelanga nge `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "Alufumaneki uphawu i-Bonobo_Plugin_info in `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "Ifektri `%s' iyibuyisile i-NIL nge `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "I-Shlib `%s' ayikhange ibe ne`%s'" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "Igama" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "Igama elilodwa lenkqubo" #: ../bonobo/bonobo-object.c:923 msgid "POA" msgstr "I-POA" #: ../bonobo/bonobo-object.c:923 msgid "Custom CORBA POA" msgstr "I-CORBA POA ekhethekileyo" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "Isenzo esingaxhaswanga besizanyiwe" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "Impazamo ye-IO" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "Ixabiso lesoluli-nkcazo esingalunganga" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "Akufumanekanga nto" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "Impazamo kulwakhiwo lwezivakalisi kwinkcazelo yento" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "Ayinakuyenza isebenze into kwifektri" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "Akuvumelekanga ukungena kuvimba" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "Isenzo esingaxhaswanga sikavimba besizanyiwe" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "Impazamo i-IO kuvimba" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "Impazamo ye-IO kwindawo yokugcina" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "Igama selikhona kwindawo yokugcina" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "Into ayifumenekanga kwindawo yokugcina" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "Akuvumelekanga ukwenza umsebenzi kwindawo yokugcina" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "Isenzo sokugcina esingaxhaswanga besizanyiwe" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "Into ayingovimba" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "Into ayiyondawo yokugcina" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "Indawo yokugcina iqulathile" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "inkcazelo yomdibaniso wemida i-XML yomsebenzisi engenziwanga kakuhle" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "indlela engalunganga eya kwinto yomdibaniso wemida ye-XML yomsebenzisi" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "uphawu lwe-UI oluceliweyo alukhange lubekho" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "Umyalelo okanye isenzi esingaziwayo" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "Umyalelo awuchaphazeleki" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "uhlobo lweenkcukacha olungalunganga" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "uvimba akafumaneki" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "uphawu alufumanekanga" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "uphawu lunohlobo olungalunganga" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "uphawu lelokufundwa kuphela" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "isigcini solwazi sokumiselwa kwenkqubo ekupheleni akuphumelelanga" #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "Umdibaniso wemida we-Moniker awufumaneki" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "Ukusebenza kwe-Moniker kuphelelwe lixesha" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "Impazamo yolwakhiwo lwezivakalisi kwi-moniker" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "I-moniker inesimaphambili esingaziwayo yi-moniker" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "Impazamo ekhangela impazamo; akukho sinxaxhi" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "Impazamo jikelele yokusebenza engenankcazelo" #: ../bonobo/bonobo-generic-factory.h:79 ../bonobo/bonobo-generic-factory.h:83 msgid "Could not initialize Bonobo" msgstr "Akukwazekanga ukwazisa amaxabiso eenkcukacha zeBonobo" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s" msgstr "Ayiphumelelanga ukusombulula, okanye ukwandisa i-'%s" #: ../bonobo/bonobo-moniker-util.c:246 msgid "Failed to activate object" msgstr "Ayiphumelelanga ukwenza into isebenze" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "Isinxaxhi sokwenza isebenze '%s'" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "Ayiphumelelanga ukuyenza isebenze '%s'" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "I-HTTP Moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "I-moniker ephathaphatha i-ORB IOR" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "Ifektri ye-Moniker eqhelekileyo" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "i-moniker yohlobo oluthile lwe-Oaf eyenza isebenze" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "i-moniker yohlobo oluthile lwe-Oaf yombuzo" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "i-moniker 'entsha' yohlobo oluthile yefektri" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "i-moniker yento yohlobo oluthile" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "i-MonikerExtender kavimba" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Ifektri yeBonobo Echo server" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Umzekelo wenkqubo yeBonobo Echo server" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Ilungu lentlokoma" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Ifektri yelungu lentlokoma" #: ../samples/echo/echo-client.c:22 msgid "I could not initialize Bonobo" msgstr "Andikwazanga ukwaba amaxabiso eenkcukacha zeBonobo" #: ../samples/echo/echo-client.c:33 msgid "Could not create an instance of the sample echo component" msgstr "Andikwazanga ukwenza imo yelungu lomzekelo wentlokoma" #: ../samples/echo/echo-client.c:45 #, c-format msgid "An exception occurred '%s'" msgstr "Kwenzeke into enxaxhileyo '%s'" #: ../utils/bonobo-activation-sysconf.c:82 msgid "Could not save configuration file.\n" msgstr "Akukwazekanga ukugcina ifayili yokumiselwa kwenkqubo.\n" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "Nceda, qinisekisa ukuba unemvume yokubhalela ku '%s'.\n" #: ../utils/bonobo-activation-sysconf.c:86 msgid "Successfully wrote configuration file.\n" msgstr "Ibhalwe ngokuphumeleleyo ifayili yokumiselwa kwenkqubo.\n" #: ../utils/bonobo-activation-sysconf.c:103 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "ifayili yokumiselwa kwenkqubo iyi:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:145 #, c-format msgid "%s already in configuration file\n" msgstr "%s sele ikwifayili yokumiselwa kwenkqubo\n" #: ../utils/bonobo-activation-sysconf.c:165 msgid "there is not a properly structured configuration file\n" msgstr "akukho fayili eyi yokumiselwa kwenkqubo eyakheke kakuhle\n" #: ../utils/bonobo-activation-sysconf.c:236 msgid "Bonobo-activation configuration file contains:\n" msgstr "Ifayili yokumiselwa kwenkqubo yokwenza isebenze eyi-Bonobo iqulethe:\n" #: ../utils/bonobo-activation-sysconf.c:266 msgid "Directory to remove from configuration file" msgstr "Uvimba weefayili wokususwa kwifayili yokumiselwa kwenkqubo" #: ../utils/bonobo-activation-sysconf.c:266 #: ../utils/bonobo-activation-sysconf.c:268 msgid "PATH" msgstr "" #: ../utils/bonobo-activation-sysconf.c:268 msgid "Directory to add to configuration file" msgstr "Uvimba weefayili wokongeza kwifayili yokumiselwa kwenkqubo" #: ../utils/bonobo-activation-sysconf.c:270 msgid "Display directories in configuration file" msgstr "Bonisa oovimba beefayili kwifayili yokumiselwa kwenkqubo" #: ../utils/bonobo-activation-sysconf.c:272 msgid "Display path to configuration file" msgstr "Bonisa indlela eya kwifayili yokumiselwa kwenkqubo" #~ msgid "Race condition activating server '%s'" #~ msgstr "Iseva yemeko i-Race yokwenza ukuba isebenze '%s'" #~ msgid "Child received signal %u (%s)" #~ msgstr "Umntwana uwufumene umqondiso %u (%s)" #~ msgid "Unknown non-exit error (status is %u)" #~ msgstr "Isiphene sokungaphumi esingaziwayo (inqanaba ngu %u)" #~ msgid "bonobo-activation failed to set process group of %s: %s\n" #~ msgstr "" #~ "eyenza ukuba isebenze eyi-bonobo ayiphumelelanga ukulungelelanisa iqela " #~ "lenkqubo le %s: %s\n" #~ msgid "Failed to execute %s: %d (%s)\n" #~ msgstr "Ayiphumelelanga ukwenza %s: %d (%s)\n" #~ msgid "Too many alias levels for a locale, may indicate a loop" #~ msgstr "" #~ "Amanqanaba amaninzi okubizwa ngokwahlukeneyo kwento enye, angabonisa " #~ "ingxaki" #~ msgid "directory path" #~ msgstr "indlela kavimba weefayili" libbonobo-2.32.1/po/ta.po0000644000076400007640000005424011173072711012064 00000000000000# translation of libbonobo.HEAD.ta.po to Tamil # libbonobo translation in Tamil # Copyright (C) 2001, 2004, 2006, 2008 Free Software Foundation, Inc. # # Dinesh Nadarajah , 2001. # Jayaradha N , 2004. # Felix , 2006. # I. Felix , 2008. msgid "" msgstr "" "Project-Id-Version: libbonobo.HEAD.ta\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-03-24 03:48+0000\n" "PO-Revision-Date: 2008-09-18 22:31+0530\n" "Last-Translator: I. Felix \n" "Language-Team: Tamil \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.11.4\n" "Plural-Forms: nplurals=2; plural=(n!=1);\\n\n" "\n" "\n" # server/activation-context-corba.c:513 #: ../activation-server/activation-context-corba.c:525 msgid "Couldn't find which child the server was listed in" msgstr "எந்த சேய் சேவையகத்தில் பட்டியலிடப்பட்டது என கண்டுபிடிக்க முடியவில்லை" #: ../activation-server/activation-context-corba.c:817 msgid "Not a valid Activation ID" msgstr "தூண்டு செய்யும் எண் செல்லாது" # server/activation-server-main.c:64 #: ../activation-server/activation-server-main.c:162 msgid "Directory to read .server files from" msgstr ".server கோப்புகளை வாசிக்க வேண்டிய அடைவு" # server/activation-server-main.c:64 #: ../activation-server/activation-server-main.c:162 msgid "DIRECTORY" msgstr "அடைவு" # server/activation-server-main.c:69 #: ../activation-server/activation-server-main.c:165 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "ActivationContext'ஆக சேவையிடு (கொடா நிலை ObjectDirectory மட்டும்)" # server/activation-server-main.c:74 #: ../activation-server/activation-server-main.c:169 msgid "File descriptor to write IOR to" msgstr "IOR எழுத வேண்டிய கோப்பு விவரிப்பு" # bonobo-activation/bonobo-activation-init.c:224 # server/activation-server-main.c:74 #: ../activation-server/activation-server-main.c:169 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:172 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" # server/activation-server-main.c:79 #: ../activation-server/activation-server-main.c:180 msgid "Query expression to evaluate" msgstr "மதிப்பிட வேண்டிய வினா கோவை" # server/activation-server-main.c:79 #: ../activation-server/activation-server-main.c:180 msgid "EXPRESSION" msgstr "EXPRESSION" #: ../activation-server/activation-server-main.c:429 #: ../utils/bonobo-activation-sysconf.c:305 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "'%s --help' ஐ இயக்கி இருக்கும் கட்டளை வடி விருப்பங்களின் முழுப்பட்டியலையும் காட்டு.\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "CORBA CosNaming சேவை." #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "பெயர் சேவை" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "அறிவித்தல் சேவை" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "தூண்டு செய்வதட்கான அறிவித்தல் சேவை" # server/object-directory-activate.c:62 #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "தற்போது தொலை செயலகத்தினால் shlib இலக்குகளை இயக்க முடியாது" # server/object-directory-config-file.c:47 #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "போனபோ தூண்டு செய்யும் அமைப்பு கோப்பு சரியாக வாசிக்க வில்லை. இதனில் சரிபார்க்கவும்: %s" # server/object-directory-load.c:170 #: ../activation-server/object-directory-load.c:102 msgid "a NULL iid is not valid" msgstr "NULL எனும் iid செல்லுபடியாகாதது" # server/object-directory-load.c:174 #: ../activation-server/object-directory-load.c:106 #, c-format msgid "iid %s has a NULL type" msgstr "%s iid இல் ஓர் NULL வகை" # server/object-directory-load.c:178 #: ../activation-server/object-directory-load.c:110 #, c-format msgid "iid %s has a NULL location" msgstr "%s iid இல் ஓர் NULL இருப்பிடம்" # server/object-directory-load.c:187 #: ../activation-server/object-directory-load.c:119 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "பிழையான வரியுரு '%c' iid '%s' இல்" # server/object-directory-load.c:120 server/object-directory-load.c:150 #: ../activation-server/object-directory-load.c:349 #, c-format msgid "Property '%s' has no value" msgstr "'%s' பண்புக்கு மதிப்பு கிடையாது" #: ../activation-server/object-directory-load.c:581 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "தவருதலாக உருவாக்கப்பட்ட %s XML ஆவணத்தை அலகிட முடியவில்லை" #: ../activation-server/object-directory-load.c:627 #, c-format msgid "Trying dir %s" msgstr "%s அடைவு முயற்சிக்கின்றது" # bonobo-activation/bonobo-activation-fork-server.c:263 #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "சேய் செயல் பிழை செய்தி ஒன்றைக் தரவில்லை, தெரியாத நொடிப்பு நடைபெற்றது" # bonobo-activation/bonobo-activation-fork-server.c:82 #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "சேய் செயலியிலிருந்து வாசிக்கமுடியவில்லை: %s\n" # bonobo-activation/bonobo-activation-fork-server.c:82 #: ../bonobo-activation/bonobo-activation-fork-server.c:247 msgid "EOF from child process\n" msgstr "குழந்தை செயலிலிருந்து EOF\n" # bonobo-activation/bonobo-activation-fork-server.c:181 #: ../bonobo-activation/bonobo-activation-fork-server.c:434 msgid "Couldn't spawn a new process" msgstr "புதிய செயலை தொடங்க முடியவில்லை" # bonobo-activation/bonobo-activation-init.c:224 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "File descriptor to print IOR on" msgstr "IOR அச்சிட வேண்டிய கோப்பு விவரிப்பு" # bonobo-activation/bonobo-activation-init.c:226 #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:399 msgid "IID to activate" msgstr "தூண்டு செய்ய வேண்டிய IID" # bonobo-activation/bonobo-activation-init.c:228 #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Prevent registering of server with OAF" msgstr "OAFஇல் சேவையகத்தை பதிவுசெய்வதை தடுக்கவும்" # bonobo-activation/bonobo-activation-init.c:426 #: ../bonobo-activation/bonobo-activation-init.c:409 msgid "Bonobo Activation options:" msgstr "Bonobo செயல்படுத்தல் விருப்பங்கள்:" # bonobo-activation/bonobo-activation-init.c:426 #: ../bonobo-activation/bonobo-activation-init.c:410 msgid "Show Bonobo Activation options" msgstr "Bonobo செயல்படுத்தல் விருப்பங்களை காட்டு" # bonobo-activation/bonobo-activation-init.c:426 #: ../bonobo-activation/bonobo-activation-init.c:518 msgid "Bonobo activation options" msgstr "Bonobo தொடக்க விருப்பங்கள்" # bonobo-activation/bonobo-activation-shlib.c:102 #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "'%s' இன் ('%s' உடன்) g_module_open நொடிப்படைந்தது" # bonobo-activation/bonobo-activation-shlib.c:120 # bonobo-activation/bonobo-activation-shlib.c:156 #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "'%s' இல் Bonobo_Plugin_info குறியீடைக் கண்டுபிடிக்க முடியவில்லை" # bonobo-activation/bonobo-activation-shlib.c:204 #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "'%s' தொழிற்சாலை, '%s' இக்கு NIL மீண்டது" # bonobo-activation/bonobo-activation-shlib.c:221 #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Shlib '%s' இல் '%s' கிடையாது" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "¦ÀÂ÷" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "செயல்பாடு தனிப்பட்ட பெயர்" #: ../bonobo/bonobo-object.c:926 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:926 msgid "Custom CORBA POA" msgstr "தனிப்பயன் CORBA POA" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "ஓர் ஆதரவளிள்ளா செயல் முயற்சிக்கப்பட்டது" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "IO பிழை" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "பிழையான மாறி மதிப்பு" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "இலக்கு காணவில்லை" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "இலக்கு விவரிப்பில் தொடரியல் பிழை" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "தொழிற்சாலையில் பெற்ற இலக்கை செயற்பட முடியவில்லை" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "ஓடை அணுகலுக்கு அநுமதி கிடையாது" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "ஓர் ஆதரவளிள்ளா ஓடைச் செயல் முயற்சிக்கப்பட்டது" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "ஓடையில் IO பிழை" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "தேக்கத்தில் IO பிழை" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "தேக்கத்தில் ஏற்கனவே பெயர் உண்டு" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "தேக்கத்தில் இலக்கு காணவில்லை" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "தேக்கத்தில் இயக்க அநுமதி கிடையாது" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "ஓர் ஆதரவளிள்ளா தேக்ககச் செயல் முயற்சிக்கப்பட்டது" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "இலக்கு ஓரு ஓடை அல்ல" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "இலக்கு ஓரு தேக்ககம் அல்ல" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "தேக்ககம் வெற்றானது அல்ல" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "பொருத்த-மற்ற பயனர் இடைமுக XML விவரிப்பு" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "XML பயனர் இடைமுக உறுப்பின் பாதை பிழையானது" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "வேண்டுகோளளித்த UI பண்பு இல்லை/கிடையாது" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "தெரியாத கட்டளை அல்லது வினைச்சொல்" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "கட்டளை உணர்விள்ளாதது" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "பிழையான தரவு வகை" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "ஓடை காணவில்லை" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "பண்பு காணவில்லை" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "பண்பில் செல்லுபடியாகாத வகை" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "பண்பு வாசிக்கக்கூடியது மட்டும்" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "config தரவுத்தளத்தின் பின்-இனைப்பு நொடிப்படைந்தது " #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "Moniker இடைமுகம் கண்டுபிடிக்க முடியவில்லை" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "Moniker தூண்டு செய்யும் நேரம் முடிவடைந்தது" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "Moniker உள்ளே தொடரியல் பிழை" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "Moniker has an unknown moniker prefix" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "பிழைபார்க்கும்போது பிழை; விதிவிலக்கு கிடையாது" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "விவரணம் இல்லாமல் பொதுத் தொடங்கல் பிழை" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s" msgstr "'%s சரிபடுத்த அல்லது நீட்டிக்க முடியவில்லை" #: ../bonobo/bonobo-moniker-util.c:247 msgid "Failed to activate object" msgstr "இலக்கை தூண்டு செய் முடியவில்லை" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "'%s' தூண்டு செய்யும்போது விதிவிலக்கு (exception)" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "'%s' தூண்டு செய்ய முடியவில்லை" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "HTTP Moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "ORB IOR handling moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "செந்தர Moniker தொழிற்சாலை" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "வடிவியல் Oaf தூண்டு செய்யும் moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "வடிவியல் Oaf வினவல் moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "வடிவியல் தொழிற்சாலை 'புதிய' moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "வடிவியல் உருப்படி moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "ஓடை MonikerExtender" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Bonobo Echo சேவையக தொழிற்சாலை" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Bonobo Echo சேவையகத்தின் மாதிரி நிரல்" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "எதிரளிப்பு கூறு" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "எதிரளிப்பு கூறு தொழிற்சாலை" #: ../samples/echo/echo-client.c:24 msgid "I could not initialize Bonobo" msgstr "என்னால் பொனோபோவை தொடங்க முடியவில்லை" #: ../samples/echo/echo-client.c:35 msgid "Could not create an instance of the sample echo component" msgstr "மாதிரி எதிரளிப்பு கூறு உருவாக்க முடியவில்லை" #: ../samples/echo/echo-client.c:47 #, c-format msgid "An exception occurred '%s'" msgstr "ஓர் விதிவிலக்கு நடைபெற்றது '%s'" # utils/bonobo-activation-sysconf.c:62 #: ../utils/bonobo-activation-sysconf.c:83 msgid "Could not save configuration file.\n" msgstr "அமை வடிவக கோப்பை சேமிக்க முடியவில்லை.\n" # utils/bonobo-activation-sysconf.c:63 #: ../utils/bonobo-activation-sysconf.c:84 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "தயவுசெய்து '%s' க்கு எழுதுவதற்கு அனுமதி உண்டா என சரிபார்க்கவும்.\n" # utils/bonobo-activation-sysconf.c:66 #: ../utils/bonobo-activation-sysconf.c:87 msgid "Successfully wrote configuration file.\n" msgstr "அமை வடிவக கோப்பு நல்லபடியாக சேமிக்கப்பட்டது.\n" # utils/bonobo-activation-sysconf.c:80 #: ../utils/bonobo-activation-sysconf.c:104 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "அமை வடிவக கோப்பு:\n" " %s\n" # utils/bonobo-activation-sysconf.c:118 #: ../utils/bonobo-activation-sysconf.c:146 #, c-format msgid "%s already in configuration file\n" msgstr "%s ஏற்கெனவே அமை வடிவக கோப்பில் உள்ளது\n" # utils/bonobo-activation-sysconf.c:138 #: ../utils/bonobo-activation-sysconf.c:166 msgid "there is not a properly structured configuration file\n" msgstr "சரியாக கட்டமைக்கப்பட்ட அமை வடிவ கோப்பு கிடையாது\n" # utils/bonobo-activation-sysconf.c:201 #: ../utils/bonobo-activation-sysconf.c:237 msgid "Bonobo-activation configuration file contains:\n" msgstr "Bonobo-activation அமை வடிவக கோப்பினுள்:\n" # utils/bonobo-activation-sysconf.c:233 #: ../utils/bonobo-activation-sysconf.c:267 msgid "Directory to remove from configuration file" msgstr "அமை வடிவக கோப்பில் இருந்து நீக்க வேண்டிய அடைவு" #: ../utils/bonobo-activation-sysconf.c:267 #: ../utils/bonobo-activation-sysconf.c:269 msgid "PATH" msgstr "PATH" # utils/bonobo-activation-sysconf.c:236 #: ../utils/bonobo-activation-sysconf.c:269 msgid "Directory to add to configuration file" msgstr "அமை வடிவக கோப்பில் சேர்க்க வேண்டிய அடைவு" # utils/bonobo-activation-sysconf.c:239 #: ../utils/bonobo-activation-sysconf.c:271 msgid "Display directories in configuration file" msgstr "அமை வடிவக கோப்பில் உல்ல அடைவுகளைக் காண்பி" # utils/bonobo-activation-sysconf.c:242 #: ../utils/bonobo-activation-sysconf.c:273 msgid "Display path to configuration file" msgstr "அமை வடிவக கோப்பின் பாதையைக் காண்பி" libbonobo-2.32.1/po/fa.po0000644000076400007640000003753111173072711012052 00000000000000# translation of libbonobo to Persian # Copyright (C) 2002 The FarsiWeb Project Group # Roozbeh Pournader , 2002 # msgid "" msgstr "" "Project-Id-Version: libbonobo\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2006-10-22 16:55+0200\n" "PO-Revision-Date: 2004-01-03 19:22+0330\n" "Last-Translator: Roozbeh Pournader \n" "Language-Team: Persian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../activation-server/activation-context-corba.c:523 msgid "Couldn't find which child the server was listed in" msgstr "نمی‌توان فرزندی را که کارگزار در آن فهرست شده است یافت" #: ../activation-server/activation-context-corba.c:815 msgid "Not a valid Activation ID" msgstr "شناسه‌ی فعال‌سازی معتبر نیست" #: ../activation-server/activation-server-main.c:162 msgid "Directory to read .server files from" msgstr "شاخه‌ای که پرونده‌های ‎.server باید از آن خوانده شود" #: ../activation-server/activation-server-main.c:162 msgid "DIRECTORY" msgstr "شاخه" #: ../activation-server/activation-server-main.c:165 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "" #: ../activation-server/activation-server-main.c:169 msgid "File descriptor to write IOR to" msgstr "توصیف‌گر پرونده‌ای که باید IOR در آن نوشته شود" #: ../activation-server/activation-server-main.c:169 #: ../bonobo-activation/bonobo-activation-init.c:355 #: ../bonobo-activation/bonobo-activation-init.c:365 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:172 msgid "" "Register as the users' activation server without locking [!] for debugging" msgstr "" #: ../activation-server/activation-server-main.c:177 msgid "Query expression to evaluate" msgstr "عبارت پرس‌وجویی که باید ارزیابی شود" #: ../activation-server/activation-server-main.c:177 msgid "EXPRESSION" msgstr "عبارت" #: ../activation-server/activation-server-main.c:426 #: ../utils/bonobo-activation-sysconf.c:304 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "خدمات CORBA CosNaming." #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "خدمات نام" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" #: ../activation-server/object-directory-load.c:101 msgid "a NULL iid is not valid" msgstr "یک iid خالی معتبر نیست" #: ../activation-server/object-directory-load.c:105 #, c-format msgid "iid %s has a NULL type" msgstr "" #: ../activation-server/object-directory-load.c:109 #, c-format msgid "iid %s has a NULL location" msgstr "" #: ../activation-server/object-directory-load.c:118 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "نویسه‌ی نامعتبر '%c' در iid ‏'%s'" #: ../activation-server/object-directory-load.c:348 #, c-format msgid "Property '%s' has no value" msgstr "" #: ../activation-server/object-directory-load.c:580 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "" #: ../activation-server/object-directory-load.c:627 #, c-format msgid "Trying dir %s" msgstr "" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "فراروند فرزند پیغام خطایی نداد، شکست ناشناخته" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "خواندن از فراروند فرزند شکست خورد: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, fuzzy msgid "EOF from child process\n" msgstr "خواندن از فراروند فرزند شکست خورد: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:435 #, fuzzy msgid "Couldn't spawn a new process" msgstr "نمی‌توان یک فراروند جدید انشعاب کرد" #: ../bonobo-activation/bonobo-activation-init.c:355 #: ../bonobo-activation/bonobo-activation-init.c:365 msgid "File descriptor to print IOR on" msgstr "توصیف‌گر پرونده برای چاپ IOR" #: ../bonobo-activation/bonobo-activation-init.c:357 #: ../bonobo-activation/bonobo-activation-init.c:367 msgid "IID to activate" msgstr "‏IIDای که باید فعال شود" #: ../bonobo-activation/bonobo-activation-init.c:359 #: ../bonobo-activation/bonobo-activation-init.c:369 msgid "Prevent registering of server with OAF" msgstr "ممانعت از ثبت کارگزار نزد OAF" #: ../bonobo-activation/bonobo-activation-init.c:403 #, fuzzy msgid "Bonobo Activation" msgstr "گزینه‌های فعال‌سازی Bonobo" #: ../bonobo-activation/bonobo-activation-init.c:404 #, fuzzy msgid "Show Bonobo Activation options" msgstr "گزینه‌های فعال‌سازی Bonobo" #: ../bonobo-activation/bonobo-activation-init.c:512 msgid "Bonobo activation options" msgstr "گزینه‌های فعال‌سازی Bonobo" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "‏g_module_open کردن ‎`%s'‎ با ‎`%s'‎ شکست خورد" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "نمی‌توان نماد Bonobo_Plugin_info را در ‎`%s'‎ یافت" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "کارخانه‌ی ‎`%s'‎ برای ‎`%s'‎،‏ NIL برگرداند" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "‏Shlib ‏‎`%s'‎ شامل ‎`%s'‎ نیست" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "نام" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "نام یکتای برنامه‌ی کاربردی" #: ../bonobo/bonobo-object.c:923 msgid "POA" msgstr "" #: ../bonobo/bonobo-object.c:923 msgid "Custom CORBA POA" msgstr "" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "تلاش برای انجام عملی پشتیبانی‌نشده صورت گرفت" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "خطای ورودی/خروجی" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "مقدار نامعتبر آرگومان" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "شیء یافته نشد" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "خطای نحوی در توصیف شیء" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "نمی‌توان شیء را از کارخانه فعال کرد" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "اجازه‌ی دست‌یابی به جریان نیست" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "تلاش برای انجام عمل جریانی پشتیبانی‌نشده‌ای صورت گرفت" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "خطای ورودی/خروجی روی جریان" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "خطای ورودی/خروجی روی حافظه" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "نام از قبل در حافظه وجود دارد" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "شیء در حافظه یافت نشد" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "اجازه‌ی عملیات روی حافظه وجود ندارد" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "تلاش برای انجام عمل حافظه‌ای پشتیبانی‌نشده‌ای صورت گرفت" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "این شیء جریان نیست" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "این شیء حافظه نیست" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "حافظه خالی نیست" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "مسیر نامعتبر برای عنصر واسط کاربر XML" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "مشخصه‌ی درخواستی از واسط کاربر وجود ندارد" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "دستور یا فعل ناشناخته" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "فرمان ناحساس است" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "نوع داده‌ای غلط" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "جریان یافته نشد" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "" #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "خطا در بررسی خطا؛ استثنایی نیست" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "خطای عمومی فعال‌سازی بدون توصیف" #: ../bonobo/bonobo-generic-factory.h:79 ../bonobo/bonobo-generic-factory.h:83 msgid "Could not initialize Bonobo" msgstr "نمی‌توان Bonobo را راه‌اندازی کرد" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s" msgstr "نمی‌توان '%s را رفع کرد، یا گسترش داد" #: ../bonobo/bonobo-moniker-util.c:246 msgid "Failed to activate object" msgstr "فعال‌سازی شیء شکست خورد" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "استثنا در فعال‌سازی «%s»" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "شکست در فعال‌سازی «%s»" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "جریان MonikerExtender" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "" #: ../samples/echo/echo-client.c:22 msgid "I could not initialize Bonobo" msgstr "نمی‌توانم Bonobo را راه‌اندازی کنم" #: ../samples/echo/echo-client.c:33 msgid "Could not create an instance of the sample echo component" msgstr "" #: ../samples/echo/echo-client.c:45 #, c-format msgid "An exception occurred '%s'" msgstr "استثنا رخ داد '%s'" #: ../utils/bonobo-activation-sysconf.c:82 msgid "Could not save configuration file.\n" msgstr "نمی‌توان پرونده‌ی پیکربندی را ذخیره کرد.\n" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "لطفاً مطمئن شوید اجازه‌ی نوشتن در '%s' را دارید.\n" #: ../utils/bonobo-activation-sysconf.c:86 msgid "Successfully wrote configuration file.\n" msgstr "پرونده‌ی پیکربندی با موفقیت نوشته شد.\n" #: ../utils/bonobo-activation-sysconf.c:103 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" #: ../utils/bonobo-activation-sysconf.c:145 #, c-format msgid "%s already in configuration file\n" msgstr "‏%s از قبل در پرونده‌ی پیکربندی موجود است\n" #: ../utils/bonobo-activation-sysconf.c:165 msgid "there is not a properly structured configuration file\n" msgstr "" #: ../utils/bonobo-activation-sysconf.c:236 msgid "Bonobo-activation configuration file contains:\n" msgstr "" #: ../utils/bonobo-activation-sysconf.c:266 msgid "Directory to remove from configuration file" msgstr "شاخه‌ای که باید از پرونده‌ی پیکربندی حذف شود" #: ../utils/bonobo-activation-sysconf.c:266 #: ../utils/bonobo-activation-sysconf.c:268 msgid "PATH" msgstr "" #: ../utils/bonobo-activation-sysconf.c:268 msgid "Directory to add to configuration file" msgstr "شاخه‌ای که باید به پرونده‌ی پیکربندی اضافه شود" #: ../utils/bonobo-activation-sysconf.c:270 msgid "Display directories in configuration file" msgstr "نمایش شاخه‌ها در پرونده‌ی پیکربندی" #: ../utils/bonobo-activation-sysconf.c:272 msgid "Display path to configuration file" msgstr "نمایش مسیر پرونده‌ی پیکربندی" #~ msgid "Child received signal %u (%s)" #~ msgstr "فرزند سیگنال %u دریافت کرد (%s)" #~ msgid "Failed to execute %s: %d (%s)\n" #~ msgstr "شکست در اجرای %s: %d (%s)\n" #~ msgid "directory path" #~ msgstr "مسیر شاخه" #~ msgid "No server corresponding to your query" #~ msgstr "هیچ کارگزاری نظیر پرس‌وجوی‌تان نیست" #~ msgid "Query failed: " #~ msgstr "پرس‌وجو شکست خورد: " #~ msgid "Activation failed: " #~ msgstr "فعال سازی شکست خورد: " #~ msgid "Could not parse AID" #~ msgstr "نمی‌توان AID را تجزیه کرد" #~ msgid "Could not activate server: " #~ msgstr "نمی‌توان کارگزار را فعال کرد: " #~ msgid "Domain of ObjectDirectory" #~ msgstr "دامنه‌ی ObjectDirectory" #~ msgid "DOMAIN" #~ msgstr "دامنه" libbonobo-2.32.1/po/id.po0000664000076400007640000003657511447711412012073 00000000000000# Indonesia translation of libbonobo. # Copyright (C) 2005 THE libbonobo'S COPYRIGHT HOLDER # This file is distributed under the same license as the libbonobo package. # Mohammad DAMT , 2005. # msgid "" msgstr "" "Project-Id-Version: libbonobo master\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?" "product=bonobo&component=libbonobo\n" "POT-Creation-Date: 2010-08-31 14:43+0000\n" "PO-Revision-Date: 2010-09-01 09:59+0700\n" "Last-Translator: Andika Triwidada \n" "Language-Team: GNOME Indonesian Translation Team \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Poedit-Language: Indonesian\n" "X-Poedit-Country: Indonesia\n" #: ../activation-server/activation-context-corba.c:530 msgid "Couldn't find which child the server was listed in" msgstr "Tidak dapat menemukan child tempat server terdaftar" #: ../activation-server/activation-context-corba.c:822 msgid "Not a valid Activation ID" msgstr "ID aktifasi tidak valid" #: ../activation-server/activation-server-main.c:174 msgid "Directory to read .server files from" msgstr "Direktori tempat membaca berkas .server" #: ../activation-server/activation-server-main.c:174 msgid "DIRECTORY" msgstr "DIREKTORI" #: ../activation-server/activation-server-main.c:177 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "" "Melayani sebagai suatu ActivationContext (defaultnya adalah hanya untuk " "ObjectDirectory)" #: ../activation-server/activation-server-main.c:181 msgid "File descriptor to write IOR to" msgstr "Descriptor berkas untuk menulis IOR" #: ../activation-server/activation-server-main.c:181 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:184 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "" "Mendaftar sebagai server aktivasi milik pengguna tanpa penguncian. " "Peringatan: pilihan ini bisa memiliki efek samping berbahaya atas kestabilan " "sesi berjalan milik pengguna, dan hanya dipakai untuk tujuan debug." #: ../activation-server/activation-server-main.c:192 msgid "Query expression to evaluate" msgstr "Ekspresi query untuk dijalankan" #: ../activation-server/activation-server-main.c:192 msgid "EXPRESSION" msgstr "EKSPRESI" #: ../activation-server/activation-server-main.c:541 #: ../utils/bonobo-activation-sysconf.c:305 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "" "Jalankan '%s --help' untuk melihat daftar lengkap pilihan baris perintah " "yang tersedia.\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "Layanan CosNaming CORBA." #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "Layanan nama" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "Layanan notifikasi" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "Layanan notifikasi aktivasi" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "Maaf. Aktifasi obyek shlib pada proses remote belum dapat dilakukan" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "Berkas konfigurasi Aktifasi Bonobo tidak dapat dibaca sepenuhnya. Silakan " "periksa dulu keabsahannya: %s" #: ../activation-server/object-directory-load.c:102 msgid "a NULL iid is not valid" msgstr "iid NULL tidak dapat diterima" #: ../activation-server/object-directory-load.c:106 #, c-format msgid "iid %s has a NULL type" msgstr "iid %s bertipe NULL" #: ../activation-server/object-directory-load.c:110 #, c-format msgid "iid %s has a NULL location" msgstr "iid %s berlokasi NULL" #: ../activation-server/object-directory-load.c:119 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "karakter '%c' dalam iid '%s' tidak valid" #: ../activation-server/object-directory-load.c:349 #, c-format msgid "Property '%s' has no value" msgstr "Properti '%s' tidak memiliki nilai" #: ../activation-server/object-directory-load.c:583 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "Dokumen XML %s yang rusak ini tidak dapat dibaca" #: ../activation-server/object-directory-load.c:629 #, c-format msgid "Trying dir %s" msgstr "Mencoba direktori %s" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "" "Proses child tidak memberikan pesan kesalahan, terjadi kegagalan tidak " "dikenal" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "Gagal saat membaca dari proses child: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, c-format msgid "EOF from child process\n" msgstr "EOF dari proses anak\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:438 msgid "Couldn't spawn a new process" msgstr "Tidak dapat menjalankan proses baru" #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "File descriptor to print IOR on" msgstr "Descriptor berkas tempat mencetak IOR" #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:399 msgid "IID to activate" msgstr "IID untuk diaktivasi" #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Prevent registering of server with OAF" msgstr "Mencegah pendaftaran server dengan OAF" #: ../bonobo-activation/bonobo-activation-init.c:409 msgid "Bonobo Activation options:" msgstr "Pilihan Aktivasi Bonobo:" #: ../bonobo-activation/bonobo-activation-init.c:410 msgid "Show Bonobo Activation options" msgstr "Tampilkan pilihan Aktivasi Bonobo" #: ../bonobo-activation/bonobo-activation-init.c:518 msgid "Bonobo activation options" msgstr "Pilihan aktivasi Bonobo" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "g_module_open '%s' gagal dengan '%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "Tidak bisa mencari simbol Bonobo_Plugin_info pada `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "Factory '%s' memberikan NIL untuk '%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Shlib '%s' tidak berisi '%s'" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "Nama" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "Nama unik aplikasi" #: ../bonobo/bonobo-object.c:929 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:929 msgid "Custom CORBA POA" msgstr "POA CORBA custom" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "Aksi yang tidak dikenal terjadi" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "Kesalahan IO" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "Nilai argumen tidak sah" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "Objek tidak ditemukan" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "Ada kesalahan sintaks pada deskripsi objek" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "Tidak dapat mengaktifkan objek dari factory" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "Akses ke stream tidak diizinkan" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "Kegiatan stream tidak dikenal terjadi" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "Kesalahan IO pada stream" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "Kesalahan IO pada penyimpanan" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "Nama sudah ada pada tempat penyimpanan" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "Obyek tidak ada pada tempat penyimpanan" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "Tidak ada izin untuk melakukan kegiatan pada tempat penyimpanan" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "Kegiatan pada tempat penyimpanan yang tidak dikenal terjadi" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "Obyek bukan stream" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "Obyek bukan tempat penyimpanan" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "Tempat penyimpanan masih ada isinya" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "deskripsi XML untuk user interface tidak benar" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "path XML pada elemen user interface tidak benar" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "atribut UI yang diminta tidak ada" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "Perintah tidak dikenal" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "Perintah tidak peka" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "tipe data salah" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "stream tidak ditemukan" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "properti tidak ditemukan" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "salah tipe pada properti" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "properti hanya bisa dibaca" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "database backend untuk konfigurasi gagal " #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "Antar muka moniker tidak ditemukan" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "Aktifasi moniker time out" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "Kesalahan sintaks pada moniker" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "Moniker menggunakan prefiks yang tidak dikenal" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "Kesalahan saat mengecek kesalahan; tidak ada exception" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "Ada kesalahan aktivasi tanpa keterangan" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s'" msgstr "Gagal untuk mengurai atau mengembangkan '%s'" #: ../bonobo/bonobo-moniker-util.c:247 msgid "Failed to activate object" msgstr "Gagal untuk aktivasi obyek" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "Ada exception saat aktivasi '%s'" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "Gagal saat aktivasi '%s'" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "Moniker HTTP" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "Moniker untuk menangani ORB IOR" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "Pabrik Moniker Standar" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "aktifasi moniker Oaf generik" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "moniker query Oaf generik" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "moniker 'new' pabrik generik" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "butir moniker generik" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "stream MonikerExtender" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Pabrik server Echo Bonobo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Program contoh untuk server Echo Bonobo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Komponen Echo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Pabrik komponen Echo" #: ../samples/echo/echo-client.c:24 msgid "I could not initialize Bonobo" msgstr "Saya tidak bisa inisialisasi Bonobo" #: ../samples/echo/echo-client.c:35 msgid "Could not create an instance of the sample echo component" msgstr "Tidak dapat membuat instans baru dari komponen sampel echo" #: ../samples/echo/echo-client.c:47 #, c-format msgid "An exception occurred '%s'" msgstr "Ada exception yang terjadi '%s'" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Could not save configuration file.\n" msgstr "Tidak dapat menyimpan berkas konfigurasi.\n" #: ../utils/bonobo-activation-sysconf.c:84 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "Silakan periksa dulu apakah bisa menulis ke berkas '%s'.\n" #: ../utils/bonobo-activation-sysconf.c:87 #, c-format msgid "Successfully wrote configuration file.\n" msgstr "Berkas konfigurasi berhasil dibuat.\n" #: ../utils/bonobo-activation-sysconf.c:104 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "berkas konfigurasinya adalah:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:146 #, c-format msgid "%s already in configuration file\n" msgstr "%s sudah ada pada berkas konfigurasi\n" #: ../utils/bonobo-activation-sysconf.c:166 #, c-format msgid "there is not a properly structured configuration file\n" msgstr "tidak ada berkas konfigurasi yang benar\n" #: ../utils/bonobo-activation-sysconf.c:237 #, c-format msgid "Bonobo-activation configuration file contains:\n" msgstr "berkas konfigurasi Bonobo-activation berisi:\n" #: ../utils/bonobo-activation-sysconf.c:267 msgid "Directory to remove from configuration file" msgstr "Direktori yang hendak dihapus dari berkas konfigurasi" #: ../utils/bonobo-activation-sysconf.c:267 #: ../utils/bonobo-activation-sysconf.c:269 msgid "PATH" msgstr "PATH" #: ../utils/bonobo-activation-sysconf.c:269 msgid "Directory to add to configuration file" msgstr "Direktori untuk ditambahkan pada berkas konfigurasi" #: ../utils/bonobo-activation-sysconf.c:271 msgid "Display directories in configuration file" msgstr "Tampilkan direktori pada berkas konfigurasi" #: ../utils/bonobo-activation-sysconf.c:273 msgid "Display path to configuration file" msgstr "Tampilkan path ke berkas konfigurasi" libbonobo-2.32.1/po/POTFILES.skip0000644000076400007640000000027711173072711013236 00000000000000activation-server/Bonobo_CosNaming_NamingContext.server.in activation-server/activation-context-query-parser.c monikers/Bonobo_Moniker_std.server.in samples/echo/Bonobo_Sample_Echo.server.in libbonobo-2.32.1/po/pt.po0000664000076400007640000004272511436275736012130 00000000000000# libbonobo's Portuguese Translation # Copyright © 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2010 libbonobo. # Distributed under the same licence as the libbonobo package # Duarte Loreto , 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2010. # msgid "" msgstr "" "Project-Id-Version: 2.32\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2010-08-21 17:26+0100\n" "PO-Revision-Date: 2010-08-21 17:30+0000\n" "Last-Translator: Duarte Loreto \n" "Language-Team: Portuguese \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../activation-server/activation-context-corba.c:530 msgid "Couldn't find which child the server was listed in" msgstr "Incapaz de encontrar em que filho o servidor estava listado" #: ../activation-server/activation-context-corba.c:822 msgid "Not a valid Activation ID" msgstr "Não é um ID de Activação válido" #: ../activation-server/activation-server-main.c:174 msgid "Directory to read .server files from" msgstr "Directório de onde ler ficheiros .server" #: ../activation-server/activation-server-main.c:174 msgid "DIRECTORY" msgstr "DIRECTÓRIO" #: ../activation-server/activation-server-main.c:177 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "Servir de ActivationContext (por omissão é apenas um ObjectDirectory)" #: ../activation-server/activation-server-main.c:181 msgid "File descriptor to write IOR to" msgstr "Descritor de ficheiro para onde escrever IOR" #: ../activation-server/activation-server-main.c:181 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:184 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "" "Registar-se como o servidor de activação do utilizador sem requerer " "exclusividade (locking). Aviso: esta opção pode ter efeitos secundários " "perigosos na estabilidade da sessão do utilizador e apenas deverá ser " "utilizada para fins de depuração" #: ../activation-server/activation-server-main.c:192 msgid "Query expression to evaluate" msgstr "Expressão de consulta a avaliar" #: ../activation-server/activation-server-main.c:192 msgid "EXPRESSION" msgstr "EXPRESSÃO" #: ../activation-server/activation-server-main.c:541 #: ../utils/bonobo-activation-sysconf.c:305 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "" "Execute '%s --help' para consultar uma lista completa de opções de linha de " "comandos.\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "Serviço CosNaming CORBA." #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "Serviço de nomes" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "Serviço de notificação" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "Serviço de notificação para activação" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "Ainda não são geridas activações de objectos shlib num processo remoto" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "O ficheiro de configuração da Activação Bonobo não foi lido com sucesso. " "Verifique se é valido em: %s" #: ../activation-server/object-directory-load.c:102 msgid "a NULL iid is not valid" msgstr "um iid NULL não é válido" #: ../activation-server/object-directory-load.c:106 #, c-format msgid "iid %s has a NULL type" msgstr "iid %s tem um tipo NULL" #: ../activation-server/object-directory-load.c:110 #, c-format msgid "iid %s has a NULL location" msgstr "iid %s tem uma localização NULL" #: ../activation-server/object-directory-load.c:119 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "caracter '%c' inválido no iid '%s'" #: ../activation-server/object-directory-load.c:349 #, c-format msgid "Property '%s' has no value" msgstr "Propriedade '%s' não tem valor" #: ../activation-server/object-directory-load.c:583 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "Incapaz de processar o documento XML mal formado %s" #: ../activation-server/object-directory-load.c:629 #, c-format msgid "Trying dir %s" msgstr "A tentar directório %s" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "" "Processo filho não indicou mensagem de erro, ocorreu uma falha desconhecida" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "Falha ao ler do processo filho: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, c-format msgid "EOF from child process\n" msgstr "EOF no processo filho\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:438 msgid "Couldn't spawn a new process" msgstr "Incapaz de iniciar um novo processo" #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "File descriptor to print IOR on" msgstr "Descritor de ficheiro onde imprimir IOR" #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:399 msgid "IID to activate" msgstr "IID a activar" #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Prevent registering of server with OAF" msgstr "Impedir registo de servidor com OAF" #: ../bonobo-activation/bonobo-activation-init.c:409 msgid "Bonobo Activation options:" msgstr "Opções de Activação do Bonobo:" #: ../bonobo-activation/bonobo-activation-init.c:410 msgid "Show Bonobo Activation options" msgstr "Apresentar opções de Activação Bonobo" #: ../bonobo-activation/bonobo-activation-init.c:518 msgid "Bonobo activation options" msgstr "Opções de activação Bonobo" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "g_module_open de `%s' falhou com `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "Incapaz de encontrar símbolo Bonobo_Plugin_info em `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "Fábrica `%s' devolveu NIL para `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Shlib `%s' não continha `%s'" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "Nome" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "Nome único da aplicação" #: ../bonobo/bonobo-object.c:929 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:929 msgid "Custom CORBA POA" msgstr "POA CORBA Personalizada" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "Tentativa de execução de uma acção não suportada" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "Erro IO" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "Valor de argumento inválido" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "Objecto não encontrado" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "Erro de sintaxe na descrição do objecto" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "Incapaz de activar objecto a partir da fábrica" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "Sem permissões para aceder a fluxo" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "Tentativa de execução de uma acção de fluxo não suportada" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "Erro IO no fluxo" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "Erro IO no armazenamento" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "Nome já existe no armazenamento" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "Objecto não encontrado no armazenamento" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "Sem permissões para executar operação no armazenamento" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "Tentativa de execução de uma acção não suportada no armazenamento" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "Objecto não é um fluxo" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "Objecto não é um armazenamento" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "Armazenamento não está vazio" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "descrição de interface de utilizador XML mal-formada" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "caminho inválido para XML de elemento de interface de utilizador" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "o atributo de UI pedido não existe" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "Comando ou verbo desconhecido" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "Comando é insensível" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "tipo de dados incorrecto" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "fluxo não encontrado" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "propriedade não encontrada" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "propriedade tem tipo inválido" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "propriedade é apenas de leitura" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "falha na configuração de suporte de base de dados" #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "Incapaz de encontrar interface de moniker" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "Expirou o prazo de activação moniker" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "Erro de sintaxe dentro do moniker" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "Moniker tem um prefixo de moniker desconhecido" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "Erro ao verificar erro; sem excepção" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "Erro de activação genérico sem descrição" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s'" msgstr "Falha ao resolver, ou estender '%s'" #: ../bonobo/bonobo-moniker-util.c:247 msgid "Failed to activate object" msgstr "Falha ao activar objecto" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "Excepção ao activar '%s'" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "Falha ao activar '%s'" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "Moniker HTTP" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "Moniker de gestão ORB IOR" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "Fábrica Moniker padrão" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "moniker de activação Oaf genérica" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "moniker de consulta Oaf genérica" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "moniker de fábrica 'novo' genérica" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "moniker de item genérico" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "fluxo MonikerExtender" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Fábrica de servidor Echo Bonobo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Aplicação de exemplo de servidor Echo Bonobo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Componente Echo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Fábrica de componente Echo" #: ../samples/echo/echo-client.c:24 msgid "I could not initialize Bonobo" msgstr "Incapaz de inicializar Bonobo" #: ../samples/echo/echo-client.c:35 msgid "Could not create an instance of the sample echo component" msgstr "Incapaz de criar uma instância do componente echo de exemplo" #: ../samples/echo/echo-client.c:47 #, c-format msgid "An exception occurred '%s'" msgstr "Ocorreu uma excepção '%s'" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Could not save configuration file.\n" msgstr "Incapaz de gravar ficheiro de configuração.\n" #: ../utils/bonobo-activation-sysconf.c:84 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "Certifique-se de que possui permissões de escrita para '%s'.\n" #: ../utils/bonobo-activation-sysconf.c:87 #, c-format msgid "Successfully wrote configuration file.\n" msgstr "Ficheiro de configuração escrito com sucesso.\n" #: ../utils/bonobo-activation-sysconf.c:104 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "ficheiro de configuração é:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:146 #, c-format msgid "%s already in configuration file\n" msgstr "%s já se encontra no ficheiro de configuração\n" #: ../utils/bonobo-activation-sysconf.c:166 #, c-format msgid "there is not a properly structured configuration file\n" msgstr "não existe um ficheiro de configuração apropriadamente estruturado\n" #: ../utils/bonobo-activation-sysconf.c:237 #, c-format msgid "Bonobo-activation configuration file contains:\n" msgstr "Ficheiro de configuração Bonobo-activation contém:\n" #: ../utils/bonobo-activation-sysconf.c:267 msgid "Directory to remove from configuration file" msgstr "Directório a remover do ficheiro de configuração" #: ../utils/bonobo-activation-sysconf.c:267 #: ../utils/bonobo-activation-sysconf.c:269 msgid "PATH" msgstr "CAMINHO" #: ../utils/bonobo-activation-sysconf.c:269 msgid "Directory to add to configuration file" msgstr "Directório a adicionar ao ficheiro de configuração" #: ../utils/bonobo-activation-sysconf.c:271 msgid "Display directories in configuration file" msgstr "Apresentar directórios no ficheiro de configuração" #: ../utils/bonobo-activation-sysconf.c:273 msgid "Display path to configuration file" msgstr "Apresentar caminho para ficheiro de configuração" #~ msgid "Could not initialize Bonobo" #~ msgstr "Incapaz de inicializar Bonobo" #~ msgid "" #~ "Register as the users' activation server without locking [!] for debugging" #~ msgstr "" #~ "Registar-se como o servidor de activação de utilizadores sem trancar [!] " #~ "para depuração" #~ msgid "Bonobo Activation" #~ msgstr "Activação Bonobo" #~ msgid "Race condition activating server '%s'" #~ msgstr "Condição de corrida (race) ao activar servidor '%s" #~ msgid "directory path" #~ msgstr "caminho de directório" #~ msgid "Too many alias levels for a locale, may indicate a loop" #~ msgstr "" #~ "Demasiados níveis de equivalências para uma configuração regional, poderá " #~ "indicar um ciclo" #~ msgid "Child received signal %u (%s)" #~ msgstr "Filho recebeu sinal %u (%s)" #~ msgid "Unknown non-exit error (status is %u)" #~ msgstr "Erro não-terminal desconhecido (estado é %u)" #~ msgid "bonobo-activation failed to set process group of %s: %s\n" #~ msgstr "bonobo-activation falhou ao definir grupo de processo de %s: %s\n" #~ msgid "Failed to execute %s: %d (%s)\n" #~ msgstr "Falha ao executar %s: %d (%s)\n" #~ msgid "No server corresponding to your query" #~ msgstr "Nenhum servidor corresponde à sua consulta" #~ msgid "Query failed: " #~ msgstr "Consulta falhou: " #~ msgid "Activation failed: " #~ msgstr "Activação falhou: " #~ msgid "Could not parse AID" #~ msgstr "Incapaz de processar AID" #~ msgid "Could not parse context: " #~ msgstr "Incapaz de processar o contexto: " #~ msgid "Could not activate server: " #~ msgstr "Incapaz de activar servidor: " #~ msgid "Domain of ObjectDirectory" #~ msgstr "Domínio de ObjectDirectory" #~ msgid "DOMAIN" #~ msgstr "DOMÍNIO" #~ msgid "Object directory to use when registering servers" #~ msgstr "Directório de objecto a utilizar ao registar servidores" libbonobo-2.32.1/po/ro.po0000664000076400007640000003752111467502331012107 00000000000000# Romanian translation for libbonobo # Copyright (C) 2001 - 2009 Free Software Foundation, Inc. # Marius Andreiana , 2001. # Dan Damian , 2001. # Mișu Moldovan , 2003 - 2009. # Daniel Șerbănescu , 2010. msgid "" msgstr "" "Project-Id-Version: libbonobo\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?" "product=bonobo&component=libbonobo\n" "POT-Creation-Date: 2010-10-13 13:05+0000\n" "PO-Revision-Date: 2010-10-15 23:59+0100\n" "Last-Translator: Daniel Șerbănescu \n" "Language-Team: Romanian Gnome Team \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Language: ro\n" "Plural-Forms: nplurals=3; plural=(n==1 ? 0 : (n==0 || (n%100 > 0 && n%100 < " "20)) ? 1 : 2);;\n" "X-Generator: Virtaal 0.6.1\n" #: ../activation-server/activation-context-corba.c:530 msgid "Couldn't find which child the server was listed in" msgstr "Nu s-a putut găsi în care copil era listat serverul" #: ../activation-server/activation-context-corba.c:822 msgid "Not a valid Activation ID" msgstr "Nu e un ID de activare valid" #: ../activation-server/activation-server-main.c:174 msgid "Directory to read .server files from" msgstr "Directorul de unde se vor citi fișiere .server" #: ../activation-server/activation-server-main.c:174 msgid "DIRECTORY" msgstr "DIRECTOR" #: ../activation-server/activation-server-main.c:177 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "Servește ca ActivationContext (implicit este numai ObjectDirectory)" #: ../activation-server/activation-server-main.c:181 msgid "File descriptor to write IOR to" msgstr "Descriptor fișier pentru scrierea IOR" #: ../activation-server/activation-server-main.c:181 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:184 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "" "Înregistrare ca server de activare pentru utilizator, dar fără blocare " "(lock). Atenție: această opțiune poate dăuna stabilității sesiunii pornite " "și ar trebui utilizată doar pentru depanare." #: ../activation-server/activation-server-main.c:192 msgid "Query expression to evaluate" msgstr "Interoghează expresia pentru evaluare" #: ../activation-server/activation-server-main.c:192 msgid "EXPRESSION" msgstr "EXPRESIE" #: ../activation-server/activation-server-main.c:541 #: ../utils/bonobo-activation-sysconf.c:305 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "" "Utilizați „%s --help” pentru a consulta lista completă a opțiunilor " "disponibile în linia de comandă.\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "Serviciu CORBA CosNaming." #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "Serviciu de nume" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "Serviciu de notificare" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "Serviciu de notificare pentru activare" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "" "Nu se gestionează deocamdată obiecte shlib activante într-un proces la " "distanță" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "Fișierul de configurare bonobo-activation nu a fost citit cu succes. " "Verificați dacă este valid la: %s" #: ../activation-server/object-directory-load.c:102 msgid "a NULL iid is not valid" msgstr "un iid NULL nu este valid" #: ../activation-server/object-directory-load.c:106 #, c-format msgid "iid %s has a NULL type" msgstr "iid-ul %s are un tip NULL" #: ../activation-server/object-directory-load.c:110 #, c-format msgid "iid %s has a NULL location" msgstr "iid-ul %s are o locație NULL" #: ../activation-server/object-directory-load.c:119 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "caracter nevalid „%c” în iid-ul „%s”" #: ../activation-server/object-directory-load.c:349 #, c-format msgid "Property '%s' has no value" msgstr "Proprietatea „%s” nu are nici o valoare" #: ../activation-server/object-directory-load.c:583 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "Nu s-a putut procesa documentul XML malformat %s" #: ../activation-server/object-directory-load.c:629 #, c-format msgid "Trying dir %s" msgstr "Se încearcă directorul %s" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "Procesul copil nu a dat un mesaj de eroare, tip necunoscut de eșec" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "Nu s-au putut citi datele de la procesul copil: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, c-format msgid "EOF from child process\n" msgstr "EOF de la procesul copil\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:438 msgid "Couldn't spawn a new process" msgstr "Nu s-a putut crea un nou proces" #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "File descriptor to print IOR on" msgstr "Descriptor fișier în care se va lista IOR" #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:399 msgid "IID to activate" msgstr "IID de activat" #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Prevent registering of server with OAF" msgstr "Previne înregistrarea serverului cu OAF" #: ../bonobo-activation/bonobo-activation-init.c:409 msgid "Bonobo Activation options:" msgstr "Opțiuni de activare Bonobo:" #: ../bonobo-activation/bonobo-activation-init.c:410 msgid "Show Bonobo Activation options" msgstr "Arată opțiunile de activare Bonobo" #: ../bonobo-activation/bonobo-activation-init.c:518 msgid "Bonobo activation options" msgstr "Opțiuni de activare Bonobo" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "g_module_open pentru „%s” a eșuat cu „%s”" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "Nu s-a găsit simbolul Bonobo_Plugin_info în „%s”" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "Fabrica „%s” a returnat NIL pentru „%s”" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Shlib „%s” nu a conținut „%s”" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "Nume" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "Nume unic al aplicației" #: ../bonobo/bonobo-object.c:929 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:929 msgid "Custom CORBA POA" msgstr "POA CORBA personalizat" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "S-a încercat o acțiune nesuportată" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "Eroare I/O" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "Valoarea argumentului e nevalidă" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "Obiectul nu a fost găsit" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "Eroare de sintaxă în descrierea obiectului" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "Nu se poate activa obiectul fabricii" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "Accesul la fluxul de date nu este permis" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "S-a încercat o acțiune nepermisă asupra fluxului de date" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "Eroare I/O în fluxul de date" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "Eroare I/O la stocare" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "Numele există deja în stoc" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "Obiectul nu a fost găsit în stoc" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "Operațiunea nu este permisă la stocare" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "S-a încercat o operațiune nepermisă la stocare" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "Obiectul nu este un flux de date" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "Obiectul nu este un stoc" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "Stocul nu este gol" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "descriere XML nevalidă a interfeței utilizator" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "cale nevalidă către elementul XML al interfeței utilizator" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "atributul UI cerut nu există" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "Comandă necunoscută sau verb necunoscut" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "Comanda nu are majuscule semnificative" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "tip incorect de date" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "fluxul de date lipsește" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "proprietatea lipsește" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "proprietatea are un tip nevalid" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "proprietatea poate fi doar citită" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "motorul bazei de date de configurare a eșuat" #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "Interfața Moniker nu a putut fi găsită" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "Timpul de activare a acestui Moniker a expirat" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "Eroare de sintaxă în cadrul acestui Moniker" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "Acest Moniker are un prefix Moniker necunoscut" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "Eroare la verificarea erorii, nici o excepție" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "Eroare generală de activare fără descriere" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s'" msgstr "Nu s-a putut rezolva ori extinde „%s”" #: ../bonobo/bonobo-moniker-util.c:247 msgid "Failed to activate object" msgstr "Nu s-a putut activa obiectul" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "Excepție la activarea „%s”" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "Nu s-a putut activa „%s”" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "Moniker HTTP" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "Moniker de gestiune ORB IOR" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "Fabrică Moniker standard" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "Moniker de activare Oaf generic" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "Moniker de interogare Oaf generic" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "nou Moniker de fabrică generic" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "Moniker de item generic" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "flux de date MonikerExtender" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Fabrică server Bonobo Echo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Program-exemplu server Bonobo Echo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Componentă Echo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Fabrica componentei Echo" #: ../samples/echo/echo-client.c:24 msgid "I could not initialize Bonobo" msgstr "Nu s-a putut inițializa Bonobo" #: ../samples/echo/echo-client.c:35 msgid "Could not create an instance of the sample echo component" msgstr "Nu s-a putut crea o instanță a componentei eșantion Echo" #: ../samples/echo/echo-client.c:47 #, c-format msgid "An exception occurred '%s'" msgstr "S-a interceptat excepția „%s”" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Could not save configuration file.\n" msgstr "Nu s-a putut salva fișierul de configurare.\n" #: ../utils/bonobo-activation-sysconf.c:84 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "Asigurați-vă că aveți drepturi de scriere în „%s”.\n" #: ../utils/bonobo-activation-sysconf.c:87 #, c-format msgid "Successfully wrote configuration file.\n" msgstr "S-a scris cu succes fișierul de configurare.\n" #: ../utils/bonobo-activation-sysconf.c:104 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "fișierul de configurare este:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:146 #, c-format msgid "%s already in configuration file\n" msgstr "%s e deja în fișierul de configurare\n" #: ../utils/bonobo-activation-sysconf.c:166 #, c-format msgid "there is not a properly structured configuration file\n" msgstr "nu există un fișier de configurare corect structurat\n" #: ../utils/bonobo-activation-sysconf.c:237 #, c-format msgid "Bonobo-activation configuration file contains:\n" msgstr "Fișierul de configurare bonobo-activation conține:\n" #: ../utils/bonobo-activation-sysconf.c:267 msgid "Directory to remove from configuration file" msgstr "Director de eliminat din fișierul de configurare" #: ../utils/bonobo-activation-sysconf.c:267 #: ../utils/bonobo-activation-sysconf.c:269 msgid "PATH" msgstr "PATH" #: ../utils/bonobo-activation-sysconf.c:269 msgid "Directory to add to configuration file" msgstr "Director de adăugat la fișierul de configurare" #: ../utils/bonobo-activation-sysconf.c:271 msgid "Display directories in configuration file" msgstr "Arată directoarele în fișierul de configurare" #: ../utils/bonobo-activation-sysconf.c:273 msgid "Display path to configuration file" msgstr "Arată calea către fișierul de configurare" libbonobo-2.32.1/po/ca@valencia.po0000664000076400007640000004222711467502331013654 00000000000000# libbonobo translation to Catalan. # Copyright © 2001-2007 Free Software Foundation, Inc. # Softcatalà , 2001. # Jordi Mallach , 2002, 2003, 2004, 2005, 2006, 2007. # msgid "" msgstr "" "Project-Id-Version: libbonobo 2.11.92\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2010-10-29 21:24+0100\n" "PO-Revision-Date: 2010-04-23 00:51+0200\n" "Last-Translator: Jordi Mallach \n" "Language-Team: Catalan \n" "Language: ca\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../activation-server/activation-context-corba.c:530 msgid "Couldn't find which child the server was listed in" msgstr "No s'ha trobat en quin fill estava llistat el servidor" #: ../activation-server/activation-context-corba.c:822 msgid "Not a valid Activation ID" msgstr "No és un ID d'activació vàlid" #: ../activation-server/activation-server-main.c:174 msgid "Directory to read .server files from" msgstr "Directori d'on llegir fitxers .server" #: ../activation-server/activation-server-main.c:174 msgid "DIRECTORY" msgstr "DIRECTORI" #: ../activation-server/activation-server-main.c:177 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "" "Serveix com a un «ActivationContext» (per defecte és només un " "ObjectDirectory)" #: ../activation-server/activation-server-main.c:181 msgid "File descriptor to write IOR to" msgstr "Descriptor de fitxer on escriure l'IOR" #: ../activation-server/activation-server-main.c:181 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "FD" msgstr "DF" #: ../activation-server/activation-server-main.c:184 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "" "Registra com a servidor d'activació de l'usuari sense blocatge. Avís: esta " "opció pot tindre efectes laterals perillosos per a l'estabilitat de la " "sessió en execució de l'usuari, per tant, només s'hauria d'utilitzar per a " "la depuració" #: ../activation-server/activation-server-main.c:192 msgid "Query expression to evaluate" msgstr "Expressió de consulta a avaluar" #: ../activation-server/activation-server-main.c:192 msgid "EXPRESSION" msgstr "EXPRESSIÓ" #: ../activation-server/activation-server-main.c:541 #: ../utils/bonobo-activation-sysconf.c:305 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "" "Executeu «%s --help» per a veure una llista d'opcions completa de la línia " "d'ordes.\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "Servei «CosNaming» de CORBA." #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "Servei de noms" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "Servei de notificació" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "Servei de notificació per a l'activació" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "" "Encara no es gestiona l'activació d'objectes «shlib» en un procés remot" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "No s'ha llegit correctament el fitxer de la configuració de l'activació " "Bonobo correctament. Comproveu que és vàlid en: %s" #: ../activation-server/object-directory-load.c:102 msgid "a NULL iid is not valid" msgstr "Un iid nul no és vàlid" #: ../activation-server/object-directory-load.c:106 #, c-format msgid "iid %s has a NULL type" msgstr "L'iid %s té tipus nul" #: ../activation-server/object-directory-load.c:110 #, c-format msgid "iid %s has a NULL location" msgstr "L'iid %s té una ubicació nul·la" #: ../activation-server/object-directory-load.c:119 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "caràcter «%c» no vàlid a l'iid «%s»" #: ../activation-server/object-directory-load.c:349 #, c-format msgid "Property '%s' has no value" msgstr "La propietat «%s» no té valor" #: ../activation-server/object-directory-load.c:583 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "No s'ha pogut analitzar el document XML %s ja que està mal format" #: ../activation-server/object-directory-load.c:629 #, c-format msgid "Trying dir %s" msgstr "S'està provant el directori %s" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "" "El procés fill no ha donat un missatge d'error, s'ha produït un error " "desconegut" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "No s'ha pogut llegir del procés fill: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, c-format msgid "EOF from child process\n" msgstr "Final de fitxer del procés fill\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:438 msgid "Couldn't spawn a new process" msgstr "No s'ha pogut engendrar un procés nou" #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "File descriptor to print IOR on" msgstr "Descriptor de fitxer on escriure l'IOR" #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:399 msgid "IID to activate" msgstr "IDD a activar" #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Prevent registering of server with OAF" msgstr "Previngues el registre de servidors amb OAF" #: ../bonobo-activation/bonobo-activation-init.c:409 msgid "Bonobo Activation options:" msgstr "Opcions d'activació del Bonobo:" #: ../bonobo-activation/bonobo-activation-init.c:410 msgid "Show Bonobo Activation options" msgstr "Mostra les opcions d'activació de Bonobo" #: ../bonobo-activation/bonobo-activation-init.c:518 msgid "Bonobo activation options" msgstr "Opcions d'activació de Bonobo" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "Ha fallat la funció «g_module_open» de «%s» amb «%s»" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "No es pot trobar el símbol «Bonobo_Plugin_info» a «%s»" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "La fàbrica «%s» ha tornat NIL per a «%s»" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "La shlib «%s» no contenia «%s»" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "Nom" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "Nom únic de l'aplicació" #: ../bonobo/bonobo-object.c:929 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:929 msgid "Custom CORBA POA" msgstr "POA de CORBA personalitzat" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "S'ha intentat dur a terme una acció no permesa" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "S'ha produït un error d'entrada/eixida" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "Valor d'argument no vàlid" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "No s'ha trobat l'objecte" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "S'ha trobat un error de sintaxi en la descripció de l'objecte" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "No es pot activar l'objecte de la fàbrica" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "No hi ha permís per accedir al flux" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "S'ha intentat una acció de flux no permesa" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "S'ha produït un error d'entrada/eixida al flux" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "S'ha produït un error d'entrada/eixida en emmagatzemar" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "El nom ja existeix al magatzem" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "No s'ha trobat l'objecte al magatzem" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "No teniu permís per fer l'operació al magatzem" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "S'ha intentat una acció d'emmagatzematge no permesa" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "L'objecte no és un flux" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "L'objecte no és d'emmagatzemament" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "L'emmagatzemament no és buit" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "la descripció XML de la interfície està mal formada" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "camí no vàlid a l'element XML de la interfície d'usuari" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "no existeix l'atribut d'interfície gràfica requerit" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "Orde o verb desconegut" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "L'orde no és sensible" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "tipus de dades incorrecte" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "no s'ha trobat el flux" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "no s'ha trobat la propietat" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "la propietat té un tipus no vàlid" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "la propietat és només de lectura" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "ha fallat el rerefons de la base de dades de configuració " #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "No es pot trobar la interfície del sobrenom" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "S'ha excedit el temps d'activació del sobrenom" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "S'ha trobat un error de sintaxi dins del sobrenom" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "El sobrenom té un prefix desconegut" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "S'ha produït un error en comprovar l'error; cap excepció" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "S'ha produït un error general d'activació sense descripció" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s'" msgstr "No s'ha pogut resoldre o estendre «%s»" #: ../bonobo/bonobo-moniker-util.c:247 msgid "Failed to activate object" msgstr "No s'ha pogut activar l'objecte" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "Ha tingut lloc una excepció en activar «%s»" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "No s'ha pogut activar «%s»" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "Sobrenom HTTP" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "Sobrenom del gestor de l'IOR de l'ORB" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "Fàbrica de sobrenoms estàndard" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "sobrenom genèric d'activació OAF" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "sobrenom genèric de consulta OAF" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "sobrenom «nou» genèric de fàbrica" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "sobrenom genèric d'element" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "flux MonikerExtender" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Fàbrica del servidor d'eco del Bonobo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Programa d'exemple de servidor d'eco del Bonobo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Component d'eco" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Fàbrica de component d'eco" #: ../samples/echo/echo-client.c:24 msgid "I could not initialize Bonobo" msgstr "No s'ha pogut inicialitzar el Bonobo" #: ../samples/echo/echo-client.c:35 msgid "Could not create an instance of the sample echo component" msgstr "No s'ha pogut crear una instància de l'exemple del component d'eco" #: ../samples/echo/echo-client.c:47 #, c-format msgid "An exception occurred '%s'" msgstr "Ha tingut lloc una excepció «%s»" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Could not save configuration file.\n" msgstr "No s'ha pogut alçar el fitxer de configuració.\n" #: ../utils/bonobo-activation-sysconf.c:84 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "Assegureu-vos que teniu permís per a escriure a «%s».\n" #: ../utils/bonobo-activation-sysconf.c:87 #, c-format msgid "Successfully wrote configuration file.\n" msgstr "S'ha alçat el fitxer de configuració correctament.\n" #: ../utils/bonobo-activation-sysconf.c:104 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "el fitxer de configuració és:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:146 #, c-format msgid "%s already in configuration file\n" msgstr "%s ja és al fitxer de configuració\n" #: ../utils/bonobo-activation-sysconf.c:166 #, c-format msgid "there is not a properly structured configuration file\n" msgstr "no hi ha cap fitxer de configuració estructurat correctament\n" #: ../utils/bonobo-activation-sysconf.c:237 #, c-format msgid "Bonobo-activation configuration file contains:\n" msgstr "El fitxer de configuració de «bonobo-activation» conté:\n" #: ../utils/bonobo-activation-sysconf.c:267 msgid "Directory to remove from configuration file" msgstr "Directori a suprimir del fitxer de configuració" #: ../utils/bonobo-activation-sysconf.c:267 #: ../utils/bonobo-activation-sysconf.c:269 msgid "PATH" msgstr "CAMÍ" #: ../utils/bonobo-activation-sysconf.c:269 msgid "Directory to add to configuration file" msgstr "Directori a afegir al fitxer de configuració" #: ../utils/bonobo-activation-sysconf.c:271 msgid "Display directories in configuration file" msgstr "Mostra els directoris al fitxer de configuració" #: ../utils/bonobo-activation-sysconf.c:273 msgid "Display path to configuration file" msgstr "Mostra el camí al fitxer de configuració" #~ msgid "Could not initialize Bonobo" #~ msgstr "No s'ha pogut inicialitzar el Bonobo" #~ msgid "" #~ "Register as the users' activation server without locking [!] for debugging" #~ msgstr "" #~ "Registra com a servidor d'activació de l'usuari sense blocar [!] per a " #~ "depurar" #~ msgid "Bonobo Activation" #~ msgstr "Activació de Bonobo" # Condició de carrera... no sé un altra traducció per a "race condition". jm # (molt després...) en una traducció al castellà he vist "condició de fuga". jm #~ msgid "Race condition activating server '%s'" #~ msgstr "Condició de carrera en activar el servidor «%s»" #~ msgid "directory path" #~ msgstr "camí del directori" #~ msgid "Too many alias levels for a locale, may indicate a loop" #~ msgstr "Massa nivells d'àlies per al locale, pot indicar un bucle" #~ msgid "Child received signal %u (%s)" #~ msgstr "El fill ha rebut el senyal %u (%s)" #~ msgid "Unknown non-exit error (status is %u)" #~ msgstr "S'ha produït un error de no-sortida desconegut (l'estat és %u)" #~ msgid "bonobo-activation failed to set process group of %s: %s\n" #~ msgstr "" #~ "bonobo-activation no ha pogut establir el grup del procés de %s: %s\n" #~ msgid "Failed to execute %s: %d (%s)\n" #~ msgstr "No s'ha pogut executar %s: %d (%s)\n" libbonobo-2.32.1/po/lt.po0000664000076400007640000003743311467502331012110 00000000000000# translation of lt.po to Lithuanian # Lithuanian translation of libbonobo # Copyright (C) 2003-2006, 2007 Free Software Foundation, Inc. # Tomas Kuliavas , 2003-2004. # Žygimantas Beručka , 2004-2006. # Gintautas Miliauskas , 2007. # Rimas Kudelis , 2010. msgid "" msgstr "" "Project-Id-Version: lt\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?" "product=bonobo&component=libbonobo\n" "POT-Creation-Date: 2010-09-29 17:15+0000\n" "PO-Revision-Date: 2010-10-03 13:32+0300\n" "Last-Translator: Rimas Kudelis \n" "Language-Team: Lithuanian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Language: lt\n" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && (n%" "100<10 || n%100>=20) ? 1 : 2);\n" "X-Generator: Virtaal 0.6.1\n" #: ../activation-server/activation-context-corba.c:530 msgid "Couldn't find which child the server was listed in" msgstr "Nepavyko rasti antrinio proceso, kuriame yra nurodytas serveris" #: ../activation-server/activation-context-corba.c:822 msgid "Not a valid Activation ID" msgstr "Netinkamas aktyvavimo ID" #: ../activation-server/activation-server-main.c:174 msgid "Directory to read .server files from" msgstr "Aplankas, iš kurio skaitomos .server failo" #: ../activation-server/activation-server-main.c:174 msgid "DIRECTORY" msgstr "APLANKAS" #: ../activation-server/activation-server-main.c:177 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "" "Veikti kaip ActivationContext (jei nenurodyta kitaip, veikiama tik kaip " "ObjectDirectory)" #: ../activation-server/activation-server-main.c:181 msgid "File descriptor to write IOR to" msgstr "Failo, į kurią reikia įrašyti IOR, nuoroda" #: ../activation-server/activation-server-main.c:181 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:184 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "" "Registruoti kaip naudotojo aktyvacijos serverį be blokavimo. Įspėjame, kad " "ši parinktis gali turėti pavojingų šalutinių efektų naudotojo aktyviai " "sesijai ir turėtų būti naudojama tik programai derinti." #: ../activation-server/activation-server-main.c:192 msgid "Query expression to evaluate" msgstr "Užklausai skirta išraiška" #: ../activation-server/activation-server-main.c:192 msgid "EXPRESSION" msgstr "IŠRAIŠKA" #: ../activation-server/activation-server-main.c:541 #: ../utils/bonobo-activation-sysconf.c:305 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "" "Įvykdykite '%s --help', jei norite pilno komandinės eilutės parametrų " "sąrašo.\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "CORBA CosNaming paslauga." #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "Vardų paslauga" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "Pranešimų paslauga" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "Pranešimų apie aktyvavimą paslauga" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "Kol kas dar negalima aktyvuoti shlib objektų nutolusiuose procesuose" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "Nepavyko sėkmingai perskaityti Bonobo aktyvacijos nustatymų failo. Prašau " "patikrinti, ar ji yra tarp %s" #: ../activation-server/object-directory-load.c:102 msgid "a NULL iid is not valid" msgstr "NULL iid yra nepriimtinas" #: ../activation-server/object-directory-load.c:106 #, c-format msgid "iid %s has a NULL type" msgstr "iid %s yra NULL tipo" #: ../activation-server/object-directory-load.c:110 #, c-format msgid "iid %s has a NULL location" msgstr "iid %s vieta yra NULL" #: ../activation-server/object-directory-load.c:119 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "netinkamas simbolis „%c“ esantis iid „%s“" #: ../activation-server/object-directory-load.c:349 #, c-format msgid "Property '%s' has no value" msgstr "Nenurodyta savybės „%s“ reikšmė" #: ../activation-server/object-directory-load.c:583 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "Negaliu apdoroti blogai suformuoto XML dokumento %s" #: ../activation-server/object-directory-load.c:629 #, c-format msgid "Trying dir %s" msgstr "Bandomas katalogas %s" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "Antrinis procesas nepateikė klaidos pranešimo, įvyko nežinoma klaida" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "Nepavyko gauti informacijos iš antrinio proceso: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, c-format msgid "EOF from child process\n" msgstr "Iš antrinio proceso gauta EOF\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:438 msgid "Couldn't spawn a new process" msgstr "Nepavyko prikelti naujo proceso" #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "File descriptor to print IOR on" msgstr "Failo, į kurią reikia išvesti IOR, nuoroda" #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:399 msgid "IID to activate" msgstr "Aktyvuotinas IID" #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Prevent registering of server with OAF" msgstr "Neleisti registruotis serveriui OAF sistemoje" #: ../bonobo-activation/bonobo-activation-init.c:409 msgid "Bonobo Activation options:" msgstr "Bonobo aktyvavimo nustatymai:" #: ../bonobo-activation/bonobo-activation-init.c:410 msgid "Show Bonobo Activation options" msgstr "Rodyti Bonobo aktyvavimo nustatymus" #: ../bonobo-activation/bonobo-activation-init.c:518 msgid "Bonobo activation options" msgstr "Bonobo aktyvavimo nustatymai" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "g_module_open komanda paleista su`%s' išvedė klaidą `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "Tarp '%s' nepavyko rasti Bonobo_Plugin_info simbolio" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "'%s' gamykla grąžino NIL skirtą `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Shlib `%s' neturėjo `%s'" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "Vardas" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "Programos unikalus vardas" #: ../bonobo/bonobo-object.c:929 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:929 msgid "Custom CORBA POA" msgstr "Tinkintas CORBA POA" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "Bandoma vykdyti nepalaikomą veiksmą" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "IO klaida" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "Klaidinga parametro reikšmė" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "Objektas nerastas" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "Sintaksės klaida objekto aprašyme" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "Nepavyko iš gamyklos aktyvuoti objekto" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "Nepakanka teisių pasiekti srautą" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "Bandyta įvykdyti nepalaikomą srauto veiksmą" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "IO klaida dirbant su srautu" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "IO klaida saugykloje" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "Toks vardas jau yra saugykloje" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "Objektas nerastas saugykloje" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "Nepakanka teisių įvykdyti operaciją saugykloje" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "Bandyta įvykdyti saugyklos nepalaikomą veiksmą" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "Objektas nėra srautas" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "Objektas nėra saugykla" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "Saugykla nėra tuščia" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "blogai suformuotas vartotojo sąsajos XML aprašymas" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "klaidingas kelias iki vartotojo sąsajos XML elemento" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "reikiamas sąsajos požymis neegzistuoja" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "Nežinoma komanda arba veiksmažodis" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "Komanda nepriklauso nuo registro" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "netinkamas duomenų tipas" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "srautas nerastas" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "sąvybė nerasta" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "sąvybė turi neteisingą tipą" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "sąvybė yra nekeičiama" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "nepavyko nustatyti duomenų bazės posistemės" #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "Nerasta trumpo vardo sąsaja" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "Trumpo vardo aktyvavimas pasibaigė be atsako" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "Trumpo vardo sintaksės klaida" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "Trumpas vardas turi nežinomą vardo priešdėlį" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "Klaidos tikrinimo klaida; nėra išvedimo nukreipimo" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "Bendro pobūdžio aktyvavimo klaida be aprašymo" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s'" msgstr "Nepavyko atpažinti arba praplėsti „%s“" #: ../bonobo/bonobo-moniker-util.c:247 msgid "Failed to activate object" msgstr "Nepavyko aktyvuoti objekto" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "Klaida aktyvuojant „%s“" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "Nepavyko aktyvuoti „%s“" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "HTTP trumpas vardas" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "ORB IOR valdymo vardas" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "Standartinė trumpų vardų gamykla" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "bendrinis Oaf aktyvavimo vardas" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "bendrinis Oaf užklausų vardas" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "bendrinis 'naujas' gamyklos vardas" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "bendrinis elemento vardas" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "srauto vardo iįplėtimas" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Bonobo Aido serverio gamykla" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Bonobo Aido serverio pavyzdinė programa" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Aido komponentas" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Aido komponento gamykla" #: ../samples/echo/echo-client.c:24 msgid "I could not initialize Bonobo" msgstr "Nepavyko paleisti Bonobo" #: ../samples/echo/echo-client.c:35 msgid "Could not create an instance of the sample echo component" msgstr "Nepavyko sukurti pavyzdinio aido komponento proceso" #: ../samples/echo/echo-client.c:47 #, c-format msgid "An exception occurred '%s'" msgstr "Įvyko klaida „%s“" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Could not save configuration file.\n" msgstr "Nepavyko išsaugoti nustatymų failo.\n" #: ../utils/bonobo-activation-sysconf.c:84 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "Patikrinkite, ar Jūs turite teisę rašyti į „%s“.\n" #: ../utils/bonobo-activation-sysconf.c:87 #, c-format msgid "Successfully wrote configuration file.\n" msgstr "Sėkmingai išsaugotas nustatymų failas.\n" #: ../utils/bonobo-activation-sysconf.c:104 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "nustatymų failas yra:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:146 #, c-format msgid "%s already in configuration file\n" msgstr "%s jau yra saugomas nustatymų faile\n" #: ../utils/bonobo-activation-sysconf.c:166 #, c-format msgid "there is not a properly structured configuration file\n" msgstr "nerastas tvarkingai struktūraizuotas nustatymų failas\n" #: ../utils/bonobo-activation-sysconf.c:237 #, c-format msgid "Bonobo-activation configuration file contains:\n" msgstr "Bonobo-aktyvacijos nustatymų faile yra:\n" #: ../utils/bonobo-activation-sysconf.c:267 msgid "Directory to remove from configuration file" msgstr "Aplankas, kurį reikia pašalinti iš nustatymų failo" #: ../utils/bonobo-activation-sysconf.c:267 #: ../utils/bonobo-activation-sysconf.c:269 msgid "PATH" msgstr "KELIAS" #: ../utils/bonobo-activation-sysconf.c:269 msgid "Directory to add to configuration file" msgstr "Aplankas, kurį reikia įtraukti į nustatymų failą" #: ../utils/bonobo-activation-sysconf.c:271 msgid "Display directories in configuration file" msgstr "Parodyti aplankus saugomus nustatymų faile" #: ../utils/bonobo-activation-sysconf.c:273 msgid "Display path to configuration file" msgstr "Parodyti kelią iki nustatymų failo" #~ msgid "Could not initialize Bonobo" #~ msgstr "Nepavyko paleisti Bonobo" libbonobo-2.32.1/po/ko.po0000644000076400007640000004156211173072711012074 00000000000000# Korean messages for libbonobo # Chideok Hwang , 2000. # Changwoo Ryu , 2002-2006. # msgid "" msgstr "" "Project-Id-Version: libbonobo 2.13.1\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-02-04 04:50+0900\n" "PO-Revision-Date: 2007-02-04 04:53+0900\n" "Last-Translator: Changwoo Ryu \n" "Language-Team: Korean \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../activation-server/activation-context-corba.c:523 msgid "Couldn't find which child the server was listed in" msgstr "서버가 열거되어있는 자식 프로세스를 발견할 수가 없습니다" #: ../activation-server/activation-context-corba.c:815 msgid "Not a valid Activation ID" msgstr "올바른 액티베이션 ID가 아닙니다" #: ../activation-server/activation-server-main.c:163 msgid "Directory to read .server files from" msgstr ".server 파일을 읽어들일 디렉토리" #: ../activation-server/activation-server-main.c:163 msgid "DIRECTORY" msgstr "<디렉토리>" #: ../activation-server/activation-server-main.c:166 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "" "ActivationContext로 서비스하기 (기본값은 ObjectDirectory로만 서비스합니다)" #: ../activation-server/activation-server-main.c:170 msgid "File descriptor to write IOR to" msgstr "IOR을 출력할 파일 디스크립터" #: ../activation-server/activation-server-main.c:170 #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:392 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:173 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "락킹 없이 사용자의 액티베이션 서버로 등록합니다. 경고: 이 옵션은 사용자의 현재 세션의 안정성에 위험한 영향을 미칠 수 있으므로, 디버깅 목적으로만 사용해야 합니다" #: ../activation-server/activation-server-main.c:181 msgid "Query expression to evaluate" msgstr "적용할 쿼리 표현식" #: ../activation-server/activation-server-main.c:181 msgid "EXPRESSION" msgstr "<표현식>" #: ../activation-server/activation-server-main.c:430 #: ../utils/bonobo-activation-sysconf.c:304 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "사용 가능한 명령행 옵션을 모두 보려면 '%s --help'라고 실행하십시오.\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "CORBA CosNaming 서비스." #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "네임 서비스" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "알림 서비스" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "액티베이션 알림 서비스" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "아직 별도의 프로세스에 있는 shlib object를 활성화 시킬 수는 없습니다" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "보노보 액티베이션 설정 파일을 읽는데 성공하지 못했습니다. 올바른 지 확인해 주" "십시오: %s" #: ../activation-server/object-directory-load.c:101 msgid "a NULL iid is not valid" msgstr "NULL iid는 적합하지않습니다" #: ../activation-server/object-directory-load.c:105 #, c-format msgid "iid %s has a NULL type" msgstr "iid %s이(가) NULL 타입을 가지고 있습니다" #: ../activation-server/object-directory-load.c:109 #, c-format msgid "iid %s has a NULL location" msgstr "iid %s이(가) NULL location을 가지고 있습니다" #: ../activation-server/object-directory-load.c:118 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "부적절한 문자 '%c'이(가) iid '%s'에 끼여있습니다" #: ../activation-server/object-directory-load.c:348 #, c-format msgid "Property '%s' has no value" msgstr "Property '%s'은(는) 값이 지정되지않았습니다" #: ../activation-server/object-directory-load.c:580 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "형식이 잘못된 XML 문서 %s을(를) 파싱할 수 없습니다" #: ../activation-server/object-directory-load.c:626 #, c-format msgid "Trying dir %s" msgstr "%s 디렉토리 시도" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "" "하위 프로세스가 애러 메세지를 내보내지 않은 채, 알 수 없는 이유로 실패했습니" "다" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "하위 프로세스에서 읽는 데 실패했습니다: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 msgid "EOF from child process\n" msgstr "하위 프로세스에서 파일이 끝났습니다\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:434 msgid "Couldn't spawn a new process" msgstr "새로운 프로세스를 시작할 수 없습니다" #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:392 msgid "File descriptor to print IOR on" msgstr "IOR을 인쇄할 파일 인식자" #: ../bonobo-activation/bonobo-activation-init.c:358 #: ../bonobo-activation/bonobo-activation-init.c:394 msgid "IID to activate" msgstr "활성화시킬 IID" #: ../bonobo-activation/bonobo-activation-init.c:360 #: ../bonobo-activation/bonobo-activation-init.c:396 msgid "Prevent registering of server with OAF" msgstr "OAF를 통한 서버의 등록을 금지한다" #: ../bonobo-activation/bonobo-activation-init.c:404 msgid "Bonobo Activation options:" msgstr "보노보 액티베이션 옵션:" #: ../bonobo-activation/bonobo-activation-init.c:405 msgid "Show Bonobo Activation options" msgstr "보노보 액티베이션 옵션 표시" #: ../bonobo-activation/bonobo-activation-init.c:513 msgid "Bonobo activation options" msgstr "보노보 액티베이션 옵션" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "`%s'의 g_module_open이 `%s' 오류로 실패했습니다" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "`%s'에서 Bonobo_Plugin_info 심볼을 찾을 수 없습니다" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "`%s' 팩토리가 `%s'에 대해 NIL을 리턴했습니다" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "`%s' 공유라이브러리에 `%s'이(가) 들어 있지 않습니다" #: ../bonobo/bonobo-application.c:350 msgid "Name" msgstr "이름" #: ../bonobo/bonobo-application.c:350 msgid "Application unique name" msgstr "응용 프로그램 고유 이름" #: ../bonobo/bonobo-object.c:923 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:923 msgid "Custom CORBA POA" msgstr "사용자 지정 CORBA POA" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "지원하지 않는 작업을 시도했습니다" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "입출력 오류" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "인자의 값이 잘못되었습니다" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "개체를 찾을 수 없습니다" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "개체 기술에서 문법 오류가 있습니다" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "팩토리에서 개체를 활성화할 수 없습니다" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "스트림에 접근할 권한이 없습니다" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "지원하지 않는 스트림 작업을 시도했습니다" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "스트림에서 입출력 오류" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "스토리지에서 입출력 오류" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "이름이 이미 스토리지에 존재합니다" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "이름을 스토리지에서 찾을 수 없습니다" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "스토리지에 작업을 수행할 권한이 없습니다" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "지원하지 않는 스토리지 작업을 시도했습니다" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "오브젝트가 스트림이 아닙니다" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "오브젝트가 스토리지가 아닙니다" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "스토리지가 비어 있지 않습니다" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "사용자 인터페이스 XML 기술이 잘못 구성되었습니다(malformed)" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "XML 사용자 인터페이스 항목에 대한 경로가 잘못되었습니다" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "요청한 UI 속성이 존재하지 않습니다" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "명령어 혹은 동사를 알 수 없습니다" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "명령어가 대소문자를 구별하지 않습니다" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "데이타 유형이 올바르지 않습니다" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "스트림을 찾을 수 없습니다" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "등록 정보를 찾을 수 없습니다" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "등록 정보의 유형이 잘못되었습니다" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "등록 정보가 읽기 전용입니다" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "설정 데이타베이스 벡엔드가 실패했습니다 " #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "모니커 인터페이스를 찾을 수 없습니다" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "모니커 활성화가 제한 시간을 초과했습니다" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "모니커에서 문법 오류가 있습니다" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "모니커에 알 수 없는 모니커 접두어가 들어 있습니다" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "오류 검사에서 오류; 예외가 없습니다" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "설명 없는 일반 활성화 오류" #: ../bonobo/bonobo-generic-factory.h:79 ../bonobo/bonobo-generic-factory.h:83 msgid "Could not initialize Bonobo" msgstr "보노보를 초기화할 수 없습니다" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s" msgstr "'%s' 이름을 확인, 혹은 확장할 수 없습니다" #: ../bonobo/bonobo-moniker-util.c:246 msgid "Failed to activate object" msgstr "개체를 활성화하는 데 실패했습니다" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "'%s' 활성화에 예외가 발생했습니다" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "'%s' 활성화에 실패했습니다" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "HTTP 모니커" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "ORB IOR 처리 모니커" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "표준 모니커 팩토리" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "일반 oaf 활성화 모니커" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "일반 oaf 질의 모니커" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "일반 팩토리 '새' 모니커" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "일반 아이템 모니커" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "스트림 모니커익스텐더" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "보노보 메아리 서버 팩토리" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "보노보 메아리 서버 예제 프로그램" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "메아리 컴포넌트" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "메아리 컴포넌트 팩토리" #: ../samples/echo/echo-client.c:22 msgid "I could not initialize Bonobo" msgstr "보노보를 초기화할 수 없습니다" #: ../samples/echo/echo-client.c:33 msgid "Could not create an instance of the sample echo component" msgstr "예제 메아리 컴포넌트의 인스턴스를 만들 수 없습니다" #: ../samples/echo/echo-client.c:45 #, c-format msgid "An exception occurred '%s'" msgstr "예외가 발생했습니다 '%s'" #: ../utils/bonobo-activation-sysconf.c:82 msgid "Could not save configuration file.\n" msgstr "설정 파일을 저장할 수가 없습니다.\n" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "'%s'에 쓸 권한이 있는 지 먼저 확인해 주십시오.\n" #: ../utils/bonobo-activation-sysconf.c:86 msgid "Successfully wrote configuration file.\n" msgstr "성공적으로 설정파일을 저장했습니다.\n" #: ../utils/bonobo-activation-sysconf.c:103 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "설정 파일은 다음과 같습니다:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:145 #, c-format msgid "%s already in configuration file\n" msgstr "%s은(는) OAF 설정 파일에 들어 있습니다.\n" #: ../utils/bonobo-activation-sysconf.c:165 msgid "there is not a properly structured configuration file\n" msgstr "올바른 구조로 된 설정 파일이 없습니다\n" #: ../utils/bonobo-activation-sysconf.c:236 msgid "Bonobo-activation configuration file contains:\n" msgstr "보노보 액티베이션 설정파일은 다음을 포함하고 있습니다:\n" #: ../utils/bonobo-activation-sysconf.c:266 msgid "Directory to remove from configuration file" msgstr "설정 파일에서 지울 디렉토리" #: ../utils/bonobo-activation-sysconf.c:266 #: ../utils/bonobo-activation-sysconf.c:268 msgid "PATH" msgstr "<경로>" #: ../utils/bonobo-activation-sysconf.c:268 msgid "Directory to add to configuration file" msgstr "설정 파일에 더할 디렉토리" #: ../utils/bonobo-activation-sysconf.c:270 msgid "Display directories in configuration file" msgstr "설정 파일에 있는 디렉토리를 보여주기" #: ../utils/bonobo-activation-sysconf.c:272 msgid "Display path to configuration file" msgstr "설정 파일에 대한 경로를 보여주기" #~ msgid "" #~ "Register as the users' activation server without locking [!] for debugging" #~ msgstr "디버깅을 위해 잠금 없이 [!] 사용자의 액티베이션 서버로 등록합니다" #~ msgid "Bonobo Activation" #~ msgstr "보노보 액티베이션" #~ msgid "Race condition activating server '%s'" #~ msgstr "서버 '%s'을(를) 활성화하는 데 경쟁 조건 발생" libbonobo-2.32.1/po/cs.po0000644000076400007640000003700611373604303012066 00000000000000# Czech translation of libbonobo. # Copyright (C) 2002, 2008, 2010 the author(s) of libbonobo. # Copyright (C) 2004, 2005, 2006 Miloslav Trmac . # This file is distributed under the same license as the libbonobo package. # Michal Bukovjan , 2002. # Miloslav Trmac , 2004, 2005, 2006. # Lucas Lommer , 2008. # Petr Kovar , 2008. msgid "" msgstr "" "Project-Id-Version: libbonobo\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2010-04-23 00:08+0200\n" "PO-Revision-Date: 2008-02-16 11:05+0100\n" "Last-Translator: Petr Kovar \n" "Language-Team: Czech \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../activation-server/activation-context-corba.c:530 msgid "Couldn't find which child the server was listed in" msgstr "Nebylo možné zjistit, u kterého potomka byl server zapsán" #: ../activation-server/activation-context-corba.c:822 msgid "Not a valid Activation ID" msgstr "Neplatné ID aktivace" #: ../activation-server/activation-server-main.c:176 msgid "Directory to read .server files from" msgstr "Adresář, ze kterého číst soubory .server" #: ../activation-server/activation-server-main.c:176 msgid "DIRECTORY" msgstr "ADRESÁŘ" #: ../activation-server/activation-server-main.c:179 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "Sloužit jako aktivační kontext (výchozí je pouze jako ObjectDirectory)" #: ../activation-server/activation-server-main.c:183 msgid "File descriptor to write IOR to" msgstr "Deskriptor souboru, do kterého zapsat IOR" #: ../activation-server/activation-server-main.c:183 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:186 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "" "Registrovat jako aktivační server pro uživatele bez uzamčení. Varování: Tato " "volba může mít nebezpečný vedlejší efekt na stabilitu běžícího sezení " "uživatele a měla by být používána pouze pro ladění programu." #: ../activation-server/activation-server-main.c:194 msgid "Query expression to evaluate" msgstr "Výraz k vyhodnocení" #: ../activation-server/activation-server-main.c:194 msgid "EXPRESSION" msgstr "VÝRAZ" #: ../activation-server/activation-server-main.c:547 #: ../utils/bonobo-activation-sysconf.c:305 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "" "Pro zobrazení úplného seznamu dostupných přepínačů na příkazovém řádku " "spusťte '%s --help'.\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "Služba CORBA CosNaming." #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "Pojmenovávací služba" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "Služba upozornění" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "Služba upozornění na aktivaci" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "Zatím není možné aktivovat objekty shlib ve vzdálených procesech" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "Soubor s nastavením Bonobo Activation nebyl úspěšně načten. Ověřte prosím, " "zda je platný v: %s" #: ../activation-server/object-directory-load.c:102 msgid "a NULL iid is not valid" msgstr "IID s hodnotou NULL není platné" #: ../activation-server/object-directory-load.c:106 #, c-format msgid "iid %s has a NULL type" msgstr "IID %s má typ NULL" #: ../activation-server/object-directory-load.c:110 #, c-format msgid "iid %s has a NULL location" msgstr "IID %s má umístění na NULL" #: ../activation-server/object-directory-load.c:119 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "neplatný znak '%c' v IID '%s'" #: ../activation-server/object-directory-load.c:349 #, c-format msgid "Property '%s' has no value" msgstr "Vlastnost '%s' nemá žádnou hodnotu" #: ../activation-server/object-directory-load.c:583 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "Nelze zpracovat neplatný dokument XML %s" #: ../activation-server/object-directory-load.c:629 #, c-format msgid "Trying dir %s" msgstr "Zkouším adresář %s" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "Potomek procesu neposkytl chybové hlášení, došlo k neznámé chybě" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "Nelze číst od potomka procesu: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, c-format msgid "EOF from child process\n" msgstr "EOF od potomka procesu\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:438 msgid "Couldn't spawn a new process" msgstr "Nelze vytvořit nový proces" #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "File descriptor to print IOR on" msgstr "Deskriptor souboru, do kterého vypsat IOR" #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:399 msgid "IID to activate" msgstr "IID k aktivaci" #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Prevent registering of server with OAF" msgstr "Zabránit registraci serveru v OAF" #: ../bonobo-activation/bonobo-activation-init.c:409 msgid "Bonobo Activation options:" msgstr "Možnosti aktivace Bonobo:" #: ../bonobo-activation/bonobo-activation-init.c:410 msgid "Show Bonobo Activation options" msgstr "Zobrazit možnosti aktivace Bonobo" #: ../bonobo-activation/bonobo-activation-init.c:518 msgid "Bonobo activation options" msgstr "Možnosti aktivace Bonobo" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "g_module_open z `%s' selhal s `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "Nepodařilo se nalézt symbol Bonobo_Plugin_info v `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "Generátor `%s' vrátil pro `%s' hodnotu NIL" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Shlib `%s' neobsahovala `%s'" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "Název" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "Jedinečný název aplikace" #: ../bonobo/bonobo-object.c:929 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:929 msgid "Custom CORBA POA" msgstr "Vlastní POA CORBA" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "Pokus o provedení nepodporované akce" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "Chyba vstupu/výstupu" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "Neplatná hodnota parametru" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "Objekt nenalezen" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "Chyba syntaxe v popisu objektu" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "Nelze aktivovat objekt z generátoru" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "Chybí oprávnění k přístupu ke streamu" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "Pokus o provedení nepodporované akce na streamu" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "Chyba vstupu/výstupu na streamu" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "Chyba vstupu/výstupu na úložiště" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "Název již v úložišti existuje" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "Objekt nebyl v úložišti nalezen" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "Chybí oprávnění k provedení operace na streamu" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "Pokus o provedení nepodporované akce na úložišti" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "Objekt není stream" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "Objekt není úložiště" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "Úložiště není prázdné" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "narušený popis uživatelského rozhraní v XML" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "neplatná cesta k XML prvku uživatelského rozhraní" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "požadovaný atribut UI neexistoval" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "Neznámý příkaz nebo slovo" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "Příkaz není citlivý" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "nesprávný typ dat" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "stream nebyl nalezen" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "vlastnost nebyla nalezena" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "vlastnost má neplatný typ" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "vlastnost je pouze pro čtení" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "databáze s nastavením selhala " #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "Rozhraní monikeru nelze nalézt" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "Čas k aktivaci monikeru vypršel" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "Chyba syntaxe uvnitř monikeru" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "Moniker má neznámou předponu" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "Chyba při kontrole chyby; žádná výjimka" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "Obecná chyba aktivace bez popisu" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s'" msgstr "Nelze rozpoznat nebo rozšířit '%s'" #: ../bonobo/bonobo-moniker-util.c:247 msgid "Failed to activate object" msgstr "Nelze aktivovat objekt" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "Výjimka při aktivaci '%s'" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "Nelze aktivovat '%s'" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "HTTP Moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "Moniker zpracovávající ORB IOR" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "Standardní generátor monikeru" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "obecný moniker pro aktivaci OAF" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "obecný moniker pro dotazy na OAF" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "obecný moniker pro generátor 'new'" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "obecný moniker pro položky" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "stream MonikerExtender" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Generátor serveru Bonobo Echo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Server vzorového programu Bonobo Echo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Komponenta Echo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Generátor komponenty Echo" #: ../samples/echo/echo-client.c:24 msgid "I could not initialize Bonobo" msgstr "Nelze inicializovat Bonobo" #: ../samples/echo/echo-client.c:35 msgid "Could not create an instance of the sample echo component" msgstr "Nelze vytvořit instanci vzorové komponenty Echo" #: ../samples/echo/echo-client.c:47 #, c-format msgid "An exception occurred '%s'" msgstr "Vyskytla se výjimka '%s'" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Could not save configuration file.\n" msgstr "Není možné uložit soubor s nastavením.\n" #: ../utils/bonobo-activation-sysconf.c:84 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "Ověřte prosím, zda máte práva pro zápis do '%s'.\n" #: ../utils/bonobo-activation-sysconf.c:87 #, c-format msgid "Successfully wrote configuration file.\n" msgstr "Soubor s nastavením byl úspěšně zapsán.\n" #: ../utils/bonobo-activation-sysconf.c:104 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "soubor s nastavením je:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:146 #, c-format msgid "%s already in configuration file\n" msgstr "%s již v souboru s nastavením existuje\n" #: ../utils/bonobo-activation-sysconf.c:166 #, c-format msgid "there is not a properly structured configuration file\n" msgstr "neobsahuje správně strukturovaný soubor s nastavením\n" #: ../utils/bonobo-activation-sysconf.c:237 #, c-format msgid "Bonobo-activation configuration file contains:\n" msgstr "Soubor s nastavením bonobo-activation obsahuje:\n" #: ../utils/bonobo-activation-sysconf.c:267 msgid "Directory to remove from configuration file" msgstr "Adresář, který má být odstraněn ze souboru s nastavením" #: ../utils/bonobo-activation-sysconf.c:267 #: ../utils/bonobo-activation-sysconf.c:269 msgid "PATH" msgstr "CESTA" #: ../utils/bonobo-activation-sysconf.c:269 msgid "Directory to add to configuration file" msgstr "Adresář, který má být přidán do souboru s nastavením" #: ../utils/bonobo-activation-sysconf.c:271 msgid "Display directories in configuration file" msgstr "Zobrazit adresáře, které jsou v souboru s nastavením" #: ../utils/bonobo-activation-sysconf.c:273 msgid "Display path to configuration file" msgstr "Zobrazit cestu k souboru s nastavením" libbonobo-2.32.1/po/sv.po0000644000076400007640000004411011173072711012103 00000000000000# Swedish messages for libbonobo. # Copyright (C) 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. # Daniel Nylander , 2006. # Christian Rose , 2001, 2002, 2003, 2004, 2005. # # $Id$ # # msgid "" msgstr "" "Project-Id-Version: libbonobo\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2006-12-11 19:07+0100\n" "PO-Revision-Date: 2006-12-12 00:02+0100\n" "Last-Translator: Daniel Nylander \n" "Language-Team: Swedish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../activation-server/activation-context-corba.c:523 msgid "Couldn't find which child the server was listed in" msgstr "Kunde inte hitta vilket barn som servern var angiven i" #: ../activation-server/activation-context-corba.c:815 msgid "Not a valid Activation ID" msgstr "Inte ett giltigt aktiverings-ID" #: ../activation-server/activation-server-main.c:163 msgid "Directory to read .server files from" msgstr "Katalog som .server-filer ska läsas från" #: ../activation-server/activation-server-main.c:163 msgid "DIRECTORY" msgstr "KATALOG" # SUN CHANGED MESSAGE #: ../activation-server/activation-server-main.c:166 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "Fungera som en ActivationContext (standard är endast som ett ObjectDirectory)" # SUN CHANGED MESSAGE #: ../activation-server/activation-server-main.c:170 msgid "File descriptor to write IOR to" msgstr "Filidentifierare som IOR ska skrivas till" #: ../activation-server/activation-server-main.c:170 #: ../bonobo-activation/bonobo-activation-init.c:355 #: ../bonobo-activation/bonobo-activation-init.c:365 msgid "FD" msgstr "FI" #: ../activation-server/activation-server-main.c:173 msgid "Register as the user's activation server without locking. Warning: this option can have dangerous side effects on the stability of the user's running session, and should only be used for debugging purposes" msgstr "Registrera som användarens aktiveringsserver utan låsning. Varning: det här alternativet kan ha farligt sidoeffekter på stabiliteten för användarens körande session, och bör endast användas för felsökningssyften" #: ../activation-server/activation-server-main.c:181 msgid "Query expression to evaluate" msgstr "Frågeuttryck som ska evalueras" #: ../activation-server/activation-server-main.c:181 msgid "EXPRESSION" msgstr "UTTRYCK" #: ../activation-server/activation-server-main.c:430 #: ../utils/bonobo-activation-sysconf.c:304 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "Kör \"%s --help\" för att se en fullständig lista på tillgängliga kommandoradsflaggor.\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "CORBA CosNaming-tjänst." #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "Namntjänst" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "Notifieringstjänst" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "Notifieringstjänst för aktivering" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "Vi hanterar inte aktivering av shlib-objekt i en fjärrprocess än" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "The Bonobo Activation configuration file was not read successfully. Please, check it is valid in: %s" msgstr "Läsning av konfigurationsfilen för Bonobo Activation misslyckades. Kontrollera om den är giltig i: %s" # SUN CHANGED MESSAGE #: ../activation-server/object-directory-load.c:101 msgid "a NULL iid is not valid" msgstr "ett iid som är NULL är inte giltigt" # SUN CHANGED MESSAGE #: ../activation-server/object-directory-load.c:105 #, c-format msgid "iid %s has a NULL type" msgstr "iid %s har typen NULL" # SUN CHANGED MESSAGE #: ../activation-server/object-directory-load.c:109 #, c-format msgid "iid %s has a NULL location" msgstr "iid %s har platsen NULL" #: ../activation-server/object-directory-load.c:118 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "ogiltigt tecken \"%c\" i iid \"%s\"" #: ../activation-server/object-directory-load.c:348 #, c-format msgid "Property '%s' has no value" msgstr "Egenskapen \"%s\" har inget värde" #: ../activation-server/object-directory-load.c:580 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "Kunde inte tolka felaktiga XML-dokumentet %s" #: ../activation-server/object-directory-load.c:627 #, c-format msgid "Trying dir %s" msgstr "Försöker med katalogen %s" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "Barnprocessen gav inget felmeddelande, ett okänt fel inträffade" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "Misslyckades med att läsa från barnprocess: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 msgid "EOF from child process\n" msgstr "Filslut från barnprocess\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:435 msgid "Couldn't spawn a new process" msgstr "Kunde inte starta en ny process" # SUN CHANGED MESSAGE #: ../bonobo-activation/bonobo-activation-init.c:355 #: ../bonobo-activation/bonobo-activation-init.c:365 msgid "File descriptor to print IOR on" msgstr "Filidentifierare som IOR ska skrivas på" #: ../bonobo-activation/bonobo-activation-init.c:357 #: ../bonobo-activation/bonobo-activation-init.c:367 msgid "IID to activate" msgstr "IID att aktivera" #: ../bonobo-activation/bonobo-activation-init.c:359 #: ../bonobo-activation/bonobo-activation-init.c:369 msgid "Prevent registering of server with OAF" msgstr "Förhindra registrering av server med OAF" #: ../bonobo-activation/bonobo-activation-init.c:403 msgid "Bonobo Activation options:" msgstr "Flaggor för Bonobo Activation:" #: ../bonobo-activation/bonobo-activation-init.c:404 msgid "Show Bonobo Activation options" msgstr "Visa flaggor för Bonobo Activation" #: ../bonobo-activation/bonobo-activation-init.c:512 msgid "Bonobo activation options" msgstr "Flaggor för Bonobo Activation" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "g_module_open av \"%s\" misslyckades med \"%s\"" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "Kan inte hitta symbolen Bonobo_Plugin_info i \"%s\"" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "Fabriken \"%s\" returnerade NIL för \"%s\"" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Shlib \"%s\" innehöll inte \"%s\"" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "Namn" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "Unikt namn för program" # Osäker #: ../bonobo/bonobo-object.c:923 msgid "POA" msgstr "POA" # Osäker #: ../bonobo/bonobo-object.c:923 msgid "Custom CORBA POA" msgstr "Anpassad CORBA-POA" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "Ett försök gjordes med en åtgärd som inte stöds" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "IO-fel" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "Ogiltigt argumentvärde" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "Objektet kunde inte hittas" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "Syntaxfel i objektbeskrivning" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "Kan inte aktivera objektet från fabriken" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "Ingen tillåtelse att komma åt flödet" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "Ett försök gjordes med en flödesåtgärd som inte stöds" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "IO-fel på flöde" # SUN CHANGED MESSAGE #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "IO-fel i lagringsutrymme" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "Namnet finns redan i lagringsutrymmet" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "Objektet kunde inte hittas i lagringsutrymmet" # SUN CHANGED MESSAGE #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "Ingen tillåtelse att utföra åtgärd i lagringsutrymmet" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "Ett försök gjordes med en lagringsåtgärd som inte stöds" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "Objektet är inget flöde" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "Objektet är inget lagringsutrymme" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "Lagringsutrymmet är inte tomt" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "felaktig XML-beskrivning av användargränssnitt" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "ogiltig sökväg till XML-element för användargränssnitt" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "det begärda användargränssnittsattributet finns inte" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "Okänt kommando eller verb" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "Kommandot är okänsligt" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "ogiltig datatyp" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "flödet kunde inte hittas" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "egenskapen kunde inte hittas" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "egenskapen har ogiltig typ" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "egenskapen är skrivskyddad" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "konfigurationsdatabasbackenden misslyckades " #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "Moniker-gränssnittet kunde inte hittas" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "Moniker-aktiveringens tidsgräns överskreds" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "Syntaxfel inuti moniker" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "Moniker har ett okänt moniker-prefix" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "Fel vid kontroll av fel; inget undantag" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "Allmänt aktiveringsfel utan beskrivning" #: ../bonobo/bonobo-generic-factory.h:79 #: ../bonobo/bonobo-generic-factory.h:83 msgid "Could not initialize Bonobo" msgstr "Kunde inte initiera Bonobo" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s" msgstr "Misslyckades med att lösa upp eller utöka \"%s" #: ../bonobo/bonobo-moniker-util.c:246 msgid "Failed to activate object" msgstr "Misslyckades med att aktivera objekt" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "Undantag vid aktivering av \"%s\"" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "Misslyckades med att aktivera \"%s\"" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "HTTP-moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "ORB-IOR-hanteringsmoniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "Standardmonikerfabrik" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "allmän Oaf-aktiveringsmoniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "allmän Oaf-frågemoniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "allmän ny fabrikmoniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "allmän objektmoniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "strömmonikerutökare" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Fabrik för Bonobo-ekoserver" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Testprogram för Bonobo-ekoserver" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Ekokomponent" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Ekokomponentfabrik" #: ../samples/echo/echo-client.c:22 msgid "I could not initialize Bonobo" msgstr "Jag kunde inte initiera Bonobo" #: ../samples/echo/echo-client.c:33 msgid "Could not create an instance of the sample echo component" msgstr "Kunde inte skapa en instans av testekokomponenten" #: ../samples/echo/echo-client.c:45 #, c-format msgid "An exception occurred '%s'" msgstr "Ett undantag inträffade \"%s\"" #: ../utils/bonobo-activation-sysconf.c:82 msgid "Could not save configuration file.\n" msgstr "Kunde inte spara konfigurationsfilen.\n" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "Försäkra dig om att du har rättighet att skriva till \"%s\".\n" #: ../utils/bonobo-activation-sysconf.c:86 msgid "Successfully wrote configuration file.\n" msgstr "Skrev konfigurationsfilen utan problem.\n" #: ../utils/bonobo-activation-sysconf.c:103 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "konfigurationsfilen är:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:145 #, c-format msgid "%s already in configuration file\n" msgstr "%s finns redan i konfigurationsfilen\n" #: ../utils/bonobo-activation-sysconf.c:165 msgid "there is not a properly structured configuration file\n" msgstr "det finns ingen korrekt strukturerad konfigurationsfil\n" #: ../utils/bonobo-activation-sysconf.c:236 msgid "Bonobo-activation configuration file contains:\n" msgstr "Konfigurationsfilen för bonobo-activation innehåller:\n" # SUN CHANGED MESSAGE #: ../utils/bonobo-activation-sysconf.c:266 msgid "Directory to remove from configuration file" msgstr "Katalog som ska tas bort från konfigurationsfilen" #: ../utils/bonobo-activation-sysconf.c:266 #: ../utils/bonobo-activation-sysconf.c:268 msgid "PATH" msgstr "SÖKVÄG" # SUN CHANGED MESSAGE #: ../utils/bonobo-activation-sysconf.c:268 msgid "Directory to add to configuration file" msgstr "Katalog som ska läggas till i konfigurationsfilen" #: ../utils/bonobo-activation-sysconf.c:270 msgid "Display directories in configuration file" msgstr "Visa kataloger i konfigurationsfilen" #: ../utils/bonobo-activation-sysconf.c:272 msgid "Display path to configuration file" msgstr "Visa sökväg till konfigurationsfilen" #~ msgid "Bonobo Activation" #~ msgstr "Bonobo Activation" #~ msgid "" #~ "Register as the users' activation server without locking [!] for debugging" #~ msgstr "" #~ "Registrera som användarens aktiveringsserver utan att låsa [!] för " #~ "felsökning" #~ msgid "Race condition activating server '%s'" #~ msgstr "Kapplöpning vid aktivering av servern \"%s\"" #~ msgid "directory path" #~ msgstr "katalogsökväg" #~ msgid "Child received signal %u (%s)" #~ msgstr "Barnet tog emot signalen %u (%s)" #~ msgid "Unknown non-exit error (status is %u)" #~ msgstr "Okänt icke avslutandefel (status är %u)" #~ msgid "bonobo-activation failed to set process group of %s: %s\n" #~ msgstr "" #~ "bonobo-activation misslyckades med att ställa in processgrupp för %s: %s\n" #~ msgid "Failed to execute %s: %d (%s)\n" #~ msgstr "Misslyckades med att köra %s: %d (%s)\n" #~ msgid "Too many alias levels for a locale, may indicate a loop" #~ msgstr "För många aliasnivåer för en lokal, kan betyda en slinga" #~ msgid "No server corresponding to your query" #~ msgstr "Ingen server motsvarar din förfrågan" #~ msgid "Query failed: " #~ msgstr "Fråga misslyckades: " #~ msgid "Activation failed: " #~ msgstr "Aktivering misslyckades: " #~ msgid "Could not parse AID" #~ msgstr "Kunde inte tolka AID" #~ msgid "Could not parse context: " #~ msgstr "Kunde inte tolka sammanhanget: " #~ msgid "Could not activate server: " #~ msgstr "Kunde inte aktivera servern: " #~ msgid "Domain of ObjectDirectory" #~ msgstr "ObjectDirectory-domän" #~ msgid "DOMAIN" #~ msgstr "DOMÄN" #~ msgid "Object directory to use when registering servers" #~ msgstr "Objektkatalog som ska användas då servrar registreras" #~ msgid "OAF options" #~ msgstr "OAF-alternativ" #~ msgid "Exec failed: %d (%s)\n" #~ msgstr "Körning misslyckades: %d (%s)\n" #~ msgid "Failed to resolve, or extend '%s'" #~ msgstr "Misslyckades med att lösa upp eller utöka \"%s\"" #~ msgid "The User canceled the save" #~ msgstr "Användaren avbröt sparandet" #~ msgid "No filename" #~ msgstr "Inget filnamn" #~ msgid "unknown mime type for '%s'" #~ msgstr "okänd mime-typ för \"%s\"" #~ msgid "no handlers for mime type '%s'" #~ msgstr "inga hanterare för mime-typen \"%s\"" #~ msgid "file MonikerExtender" #~ msgstr "filmonikerutökare" #~ msgid "generic file moniker" #~ msgstr "allmän filmoniker" #~ msgid "Can not bonobo_init" #~ msgstr "Kan inte utföra bonobo_init" libbonobo-2.32.1/po/sr@latin.po0000664000076400007640000004254211436275736013256 00000000000000# Serbian translation of libbonobo # Courtesy of Prevod.org team (http://prevod.org/) -- 2003, 2004, 2005, 2006, 2007. # # This file is distributed under the same license as the libbonobo package. # # Maintainer: Veljko M. Stanojević # Reviewed on 2005-07-09 by: Danilo Šegan # Translated on 2006-02-01 by Slobodan D. Sredojević # Miloš Popović , 2010. # msgid "" msgstr "" "Project-Id-Version: libbonobo\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?" "product=bonobo&component=libbonobo\n" "POT-Creation-Date: 2010-06-21 20:31+0000\n" "PO-Revision-Date: 2010-08-21 20:27+0200\n" "Last-Translator: Miloš Popović \n" "Language-Team: Serbian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=4; plural=n==1? 3 : n%10==1 && n%100!=11 ? 0 : n" "%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" #: ../activation-server/activation-context-corba.c:530 msgid "Couldn't find which child the server was listed in" msgstr "Nisam uspeo da otkrijem na koji podproces je server uvršten" #: ../activation-server/activation-context-corba.c:822 msgid "Not a valid Activation ID" msgstr "Nevažeća identifikacija za pokretanje" #: ../activation-server/activation-server-main.c:174 msgid "Directory to read .server files from" msgstr "Direktorijum iz kojeg će se čitati .server datoteke" #: ../activation-server/activation-server-main.c:174 msgid "DIRECTORY" msgstr "DIREKTORIJUM" #: ../activation-server/activation-server-main.c:177 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "Služi kao ActivationContext (podrazumevano je samo ObjectDirectory)" #: ../activation-server/activation-server-main.c:181 msgid "File descriptor to write IOR to" msgstr "Opisnik datoteke za upisivanje IOR-a" # Opisnik datoteke? #: ../activation-server/activation-server-main.c:181 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "FD" msgstr "OD" #: ../activation-server/activation-server-main.c:184 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "" "Prijavi se kao korisnikov server za pokretanja bez zaključavanja. Upozorenje: " "ova opcija se može opasno odraziti na stabilnost korisnikove sesije koja je " "u toku i treba je koristiti samo pri otkrivanju grešaka" #: ../activation-server/activation-server-main.c:192 msgid "Query expression to evaluate" msgstr "Izraz za pretragu koji treba vrednovati" #: ../activation-server/activation-server-main.c:192 msgid "EXPRESSION" msgstr "IZRAZ" #: ../activation-server/activation-server-main.c:541 #: ../utils/bonobo-activation-sysconf.c:305 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "" "Pokrenite „%s --help“ da biste videli celu listu dostupnih opcija komandne " "linije.\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "CORBA CosNaming služba." #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "Služba imenovanja" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "Služba za obaveštenja" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "Služba obaveštavanja za aktivaciju" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "Još nemamo načina za rukovanje shlib objektima u udaljenom procesu" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "Datoteka sa podešavanjima za Bonobo aktivaciju nije uspešno pročitana. " "Proverite da li je ispravna u: %s" #: ../activation-server/object-directory-load.c:102 msgid "a NULL iid is not valid" msgstr "NULL iid je nevažeći" #: ../activation-server/object-directory-load.c:106 #, c-format msgid "iid %s has a NULL type" msgstr "iid %s je NULL vrste" #: ../activation-server/object-directory-load.c:110 #, c-format msgid "iid %s has a NULL location" msgstr "iid %s ima NULL lokaciju" #: ../activation-server/object-directory-load.c:119 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "nevažeći znak „%c“ in iid „%s“" #: ../activation-server/object-directory-load.c:349 #, c-format msgid "Property '%s' has no value" msgstr "Osobina „%s“ nema nikakvu vrednost" #: ../activation-server/object-directory-load.c:583 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "Ne mogu da obradim loše oblikovan XML dokument %s" # bug: s/dir/directory/ #: ../activation-server/object-directory-load.c:629 #, c-format msgid "Trying dir %s" msgstr "Pokušavam direktorijum %s" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "" "Podproces nije dao nikakvu poruku o grešci, dogodila se nepoznata greška" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "Nisam uspeo da čitam iz podprocesa: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, c-format msgid "EOF from child process\n" msgstr "Kraj datoteke iz podprocesa\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:438 msgid "Couldn't spawn a new process" msgstr "Nisam mogao do počnem novi proces" #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "File descriptor to print IOR on" msgstr "Opisnik datoteke na kojem će se ispisati IOR" #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:399 msgid "IID to activate" msgstr "IID koji treba pokrenuti" #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Prevent registering of server with OAF" msgstr "Spreči registrovanje servera na OAF-u" #: ../bonobo-activation/bonobo-activation-init.c:409 msgid "Bonobo Activation options:" msgstr "Opcije za pokretanje bonoboa:" #: ../bonobo-activation/bonobo-activation-init.c:410 msgid "Show Bonobo Activation options" msgstr "Prikaži mogućnosti Bonobo pokretanja" #: ../bonobo-activation/bonobo-activation-init.c:518 msgid "Bonobo activation options" msgstr "Opcije za pokretanje bonoboa" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "g_module_open za „%s“ nije uspeo sa „%s“" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "Ne mogu da nađem simbol Bonobo_Plugin_info u „%s“" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "Tvornica „%s“ je vratila NIL za „%s“" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Shlib „%s“ ne sadrži „%s“" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "Ime" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "Jedinstveno ime programa" #: ../bonobo/bonobo-object.c:929 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:929 msgid "Custom CORBA POA" msgstr "Prilagođen CORBA POA" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "Pokušaj izvršenja radnje koja nije podržana" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "UI greška" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "Nevažeća vrednost argumenta" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "Objekat nije pronađen" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "Sintaksna greška u opisu objekta" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "Ne mogu da aktiviram objekat iz tvornice" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "Nema ovlašćenja za pristup nizu" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "Pokušaj izvršenja nepodržane radnje na nizu" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "UI greška na toku" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "UI greška pri skladištenju" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "Ime već postoji u skladištu" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "Objekat nije pronađen u skladištu" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "Nema ovlašćenja za izvršenje radnje na skladištu" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "Pokušaj izvršenja nepodržane skladišne radnje" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "Objekat nije u toku" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "Objekat nije skladište" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "Skladište nije prazno" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "pogrešno oblikovan XML opis korisničkog sučelja" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "neispravna staza ka XML elementu korisničkog sučelja" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "zatražena osobina korisničkog sučelja ne postoji" # Hm, ovo mi suviše liči na funkcionalne programske jezike i „predikate“, pa umesto „glagola“ stavljam to... #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "Nepoznata naredba ili predikat" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "Naredba je neosetljiva" # „data“ je množina #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "neispravna vrsta podataka" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "tok nije nađen" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "osobina nije nađena" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "osobina je nevažeće vrste" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "osobina je samo za čitanje" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "greška u bazi sa podešavanjima" #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "Nisam našao spregu nadimaka" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "Isteklo je vreme za aktivaciju nadimka" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "Sintaksna greška u nadimku" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "Nadimak ima nepoznat predmetak za nadimke" # bug: lovely, indeed #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "Greška pri proveri greške; bez izuzetka" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "Opšta greška pri aktivaciji bez opisa" #: ../bonobo/bonobo-moniker.c:342 #, c-format #| msgid "Failed to resolve, or extend '%s" msgid "Failed to resolve, or extend '%s'" msgstr "Ne mogu da razrešim ili proširim „%s“" #: ../bonobo/bonobo-moniker-util.c:247 msgid "Failed to activate object" msgstr "Neuspeh aktiviranja objekta" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "Izuzeće pri aktivaciji „%s“" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "Neuspela aktivacija „%s“" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "HTTP nadimak" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "Nadimak za rukovanje sa ORB IOR" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "Standardna tvornica nadimaka" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "opšti nadimak za aktivaciju Oaf-a" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "opšti nadimak za upit Oaf-a" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "opšta tvornica „new“ nadimaka" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "opšti nadimak za stavke" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "MonikerExtender toka" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Bonobo tvornica Echo servera" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Primer Bonobo Echo server programa" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Echo komponenta" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Tvornica Echo komponente" #: ../samples/echo/echo-client.c:24 msgid "I could not initialize Bonobo" msgstr "Ne mogu da pokrenem Bonobo" #: ../samples/echo/echo-client.c:35 msgid "Could not create an instance of the sample echo component" msgstr "Neuspeh stvaranja primerka probne echo komponente" #: ../samples/echo/echo-client.c:47 #, c-format msgid "An exception occurred '%s'" msgstr "Dogodio se izuzetak „%s“" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Could not save configuration file.\n" msgstr "Nisam mogao da sačuvam datoteku sa podešavanjima.\n" #: ../utils/bonobo-activation-sysconf.c:84 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "Proverite da li imate ovlašćenja da pišete u „%s“.\n" #: ../utils/bonobo-activation-sysconf.c:87 #, c-format msgid "Successfully wrote configuration file.\n" msgstr "Uspešno zapisana datoteka sa podešavanjima.\n" #: ../utils/bonobo-activation-sysconf.c:104 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "datoteka sa podešavanjima je:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:146 #, c-format msgid "%s already in configuration file\n" msgstr "%s već postoji u datoteci sa podešavanjima\n" #: ../utils/bonobo-activation-sysconf.c:166 #, c-format msgid "there is not a properly structured configuration file\n" msgstr "nema ispravno struktuirane datoteke sa podešavanjima\n" #: ../utils/bonobo-activation-sysconf.c:237 #, c-format msgid "Bonobo-activation configuration file contains:\n" msgstr "Datoteka sa podešavanjima za bonobo-aktivaciju sadrži:\n" #: ../utils/bonobo-activation-sysconf.c:267 msgid "Directory to remove from configuration file" msgstr "Direktorijum koji treba ukloniti iz datoteke sa podešavanjima" #: ../utils/bonobo-activation-sysconf.c:267 #: ../utils/bonobo-activation-sysconf.c:269 msgid "PATH" msgstr "PUTANJA" #: ../utils/bonobo-activation-sysconf.c:269 msgid "Directory to add to configuration file" msgstr "Direktorijum koji treba dodati u datoteku sa podešavanjima" #: ../utils/bonobo-activation-sysconf.c:271 msgid "Display directories in configuration file" msgstr "Prikaži direktorijume u datoteci sa podešavanjima" #: ../utils/bonobo-activation-sysconf.c:273 msgid "Display path to configuration file" msgstr "Prikaži putanju do datoteke sa podešavanjima" #~ msgid "Could not initialize Bonobo" #~ msgstr "Bonobo nije mogao biti pokrenut" #~ msgid "" #~ "Register as the users' activation server without locking [!] for debugging" #~ msgstr "" #~ "Registrovan kao korisnički server za aktiviranje bez zaključavanja [!] za " #~ "otklanjanje grešaka" #~ msgid "Bonobo Activation" #~ msgstr "Bonobo pokretanje" # „Race“ je pojava kada dva procesa pokušaju istovremeno da koriste jedan resurs, s tim što jedan proces drži ono što je potrebno da bi drugi nastavio — odnosno, nijedan ne može da nastavi #~ msgid "Race condition activating server '%s'" #~ msgstr "Utrkivanje pri aktiviranju servera „%s“" #~ msgid "directory path" #~ msgstr "putanja direktorijuma" #~ msgid "Child received signal %u (%s)" #~ msgstr "Podproces je primio signal %u (%s)" #~ msgid "Unknown non-exit error (status is %u)" #~ msgstr "Nepoznata ne-izlazna greška (status is %u)" #~ msgid "bonobo-activation failed to set process group of %s: %s\n" #~ msgstr "bonobo aktivacija nije uspela da postavi grupu procesa %s: %s\n" #~ msgid "Failed to execute %s: %d (%s)\n" #~ msgstr "Nisam uspeo da izvršim %s: %d (%s)\n" #~ msgid "Too many alias levels for a locale, may indicate a loop" #~ msgstr "Previše nivoa nadimaka za lokalitet — može ukazivati na petlju" libbonobo-2.32.1/po/is.po0000644000076400007640000003644311173072711012100 00000000000000# Icelandic translation of libbonobo # Copyright (C) 2003 Free Software Foundation, Inc. # This file is distributed under the same license as the libbonobo package. # Richard Allen , 2003 # msgid "" msgstr "" "Project-Id-Version: libbonobo 2.4\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2006-10-22 16:55+0200\n" "PO-Revision-Date: 2004-03-13 08:58-0000\n" "Last-Translator: helgi \n" "Language-Team: is \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../activation-server/activation-context-corba.c:523 msgid "Couldn't find which child the server was listed in" msgstr "Gat ekki fundið í hvaða barni þjónninn var listaður í" #: ../activation-server/activation-context-corba.c:815 msgid "Not a valid Activation ID" msgstr "Ekki gilt virkjunarskilríki" #: ../activation-server/activation-server-main.c:162 msgid "Directory to read .server files from" msgstr "Mappa sem lesa á .server skrár úr" #: ../activation-server/activation-server-main.c:162 msgid "DIRECTORY" msgstr "MAPPA" #: ../activation-server/activation-server-main.c:165 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "" "Vinna sem 'ActivationContext' (sjálfgefið er einungis 'ObjectDirectory')" #: ../activation-server/activation-server-main.c:169 msgid "File descriptor to write IOR to" msgstr "Skráarhandfang sem rita á IOR í" #: ../activation-server/activation-server-main.c:169 #: ../bonobo-activation/bonobo-activation-init.c:355 #: ../bonobo-activation/bonobo-activation-init.c:365 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:172 msgid "" "Register as the users' activation server without locking [!] for debugging" msgstr "" #: ../activation-server/activation-server-main.c:177 msgid "Query expression to evaluate" msgstr "Fyrirspurn sem á að þátta" #: ../activation-server/activation-server-main.c:177 msgid "EXPRESSION" msgstr "FYRIRSPURN" #: ../activation-server/activation-server-main.c:426 #: ../utils/bonobo-activation-sysconf.c:304 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "CORBA CosNaming-þjónusta" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "Nafnaþjónusta" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "Við getum ekki ræst shlib einingar í fjartengdum ferlum ennþá" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "Stillingaskrá Bonobo virkjunar var ekki lesin inn rétt. Vinsamlegast gakktu " "úr skugga um að hún sé gild í: %s" #: ../activation-server/object-directory-load.c:101 msgid "a NULL iid is not valid" msgstr "Gildið NÚLL er ekki gilt iid" #: ../activation-server/object-directory-load.c:105 #, c-format msgid "iid %s has a NULL type" msgstr "iid %s hefur enga gerð" #: ../activation-server/object-directory-load.c:109 #, c-format msgid "iid %s has a NULL location" msgstr "iid %s hefur enga staðsetningu" #: ../activation-server/object-directory-load.c:118 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "ógilt tákn '%c' í iid '%s'" #: ../activation-server/object-directory-load.c:348 #, c-format msgid "Property '%s' has no value" msgstr "Eiginleikinn '%s' hefur ekkert gildi" #: ../activation-server/object-directory-load.c:580 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "" #: ../activation-server/object-directory-load.c:627 #, c-format msgid "Trying dir %s" msgstr "Reyni möppu %s" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "Undirferlið gaf ekki villumeldingu, óþekkt villa kom upp" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "Gat ekki lesið frá undirferlinu: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, fuzzy msgid "EOF from child process\n" msgstr "Gat ekki lesið frá undirferlinu: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:435 #, fuzzy msgid "Couldn't spawn a new process" msgstr "Gat ekki búið til nýtt ferli" #: ../bonobo-activation/bonobo-activation-init.c:355 #: ../bonobo-activation/bonobo-activation-init.c:365 msgid "File descriptor to print IOR on" msgstr "Skráarhandfang sem rita á IOR í" #: ../bonobo-activation/bonobo-activation-init.c:357 #: ../bonobo-activation/bonobo-activation-init.c:367 msgid "IID to activate" msgstr "IID sem virkja skal" #: ../bonobo-activation/bonobo-activation-init.c:359 #: ../bonobo-activation/bonobo-activation-init.c:369 msgid "Prevent registering of server with OAF" msgstr "Koma í veg fyrir að þjónninn skrái sig hjá OAF" #: ../bonobo-activation/bonobo-activation-init.c:403 #, fuzzy msgid "Bonobo Activation" msgstr "Ræsirofar Bonobo" #: ../bonobo-activation/bonobo-activation-init.c:404 #, fuzzy msgid "Show Bonobo Activation options" msgstr "Ræsirofar Bonobo" #: ../bonobo-activation/bonobo-activation-init.c:512 msgid "Bonobo activation options" msgstr "Ræsirofar Bonobo" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "g_module_open af `%s' brást með skilaboðunum `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "Gat ekki fundið merkinguna Bonobo_Plugin_info í `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "Verksmiðjan `%s' skilaði núlli fyrir `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Shlib `%s' innihélt ekki `%s'" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "Nafn" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "" #: ../bonobo/bonobo-object.c:923 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:923 msgid "Custom CORBA POA" msgstr "Sérsniðin CORBA POA" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "reynd var aðgerð sem ekki er studd" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "IO Villa" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "Ógilt gildi í viðfangi" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "Hluturinn fannst ekki" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "Villa í lýsingu hlutar" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "Gat ekki virkjað hlutinn út verksmiðjunni" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "Engar aðgangsheimildir í strauminn" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "Aðgerð sem ekki er studd á straumum var reynd" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "IO villa í straumi" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "IO villa í geymslumiðli" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "Heitið er þegar til í geymslu" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "Hluturinn fannst ekki í geysmlunni" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "Engin heimild fyrir aðgerðinni í geymslunni" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "Aðgerð sem ekki er studd ú geymslum var reynd" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "Hluturinn er ekki straumur" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "Hluturinn er ekki geymsla" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "Geymslan er ekki tóm" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "gölluð XML notandaviðmótslýsing" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "ógild slóð að XML notandaviðmótshlut" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "umbeðinn UI eiginleiki er ekki til" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "Óþekkt skipun eða sögn" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "Skipunin er óháð há/lágstöfum" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "ógild gagnagerð" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "straumurinn fannst ekki" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "eiginleikinn fannst ekki" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "eiginleikinn hefur ógilda gerð" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "eiginleikann má aðeins lesa" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "stillingagrunnurinn brást" #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "Moniker viðmótið fannst ekki" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "Ræsing Monkier tímaði út" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "Villa innan Moniker" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "Moniker hefur óþekkt moniker forskeyti" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "Villa við að athuga villu" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "Almenn ræsivilla án skilaboða" #: ../bonobo/bonobo-generic-factory.h:79 ../bonobo/bonobo-generic-factory.h:83 msgid "Could not initialize Bonobo" msgstr "Gat ekki frumstillt Bonobo" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s" msgstr "Gat ekki þáttað eða umbreytt '%s'" #: ../bonobo/bonobo-moniker-util.c:246 msgid "Failed to activate object" msgstr "Gat ekki gangsett hlut" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "Villa við að virkja '%s'" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "Gat ekki gangsett '%s'" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "HTTP Moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "ORB IOR meðhöndlunar-moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "Stöðluð Moniker verksmiðja" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "almennur Oaf virkjunar-moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "almennur Oaf fyrirspurnar-moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "almenn verksmiðja nýrra moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "almennur hluta-moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "strauma MonikerExtender" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Bonobo Echo þjónn" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Bonobo Echo sýnishorn" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Echo íhlutur" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Echo íhlutaverksmiðja" #: ../samples/echo/echo-client.c:22 msgid "I could not initialize Bonobo" msgstr "Gat ekki frumstillt Bonobo" #: ../samples/echo/echo-client.c:33 msgid "Could not create an instance of the sample echo component" msgstr "Gat ekki búið til eintak af echo sýnishorninu" #: ../samples/echo/echo-client.c:45 #, c-format msgid "An exception occurred '%s'" msgstr "Það kom upp villa '%s'" #: ../utils/bonobo-activation-sysconf.c:82 msgid "Could not save configuration file.\n" msgstr "Gat ekki vistað stillingaskránni.\n" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "Vinsamlegast gakktu úr skugga um að þú hafir ritheimildir í '%s'.\n" #: ../utils/bonobo-activation-sysconf.c:86 msgid "Successfully wrote configuration file.\n" msgstr "Vel gékk að rita í stillingaskrána.\n" #: ../utils/bonobo-activation-sysconf.c:103 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "stillingaskráin er:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:145 #, c-format msgid "%s already in configuration file\n" msgstr "%s er þegar í stillingaskránni\n" #: ../utils/bonobo-activation-sysconf.c:165 msgid "there is not a properly structured configuration file\n" msgstr "það er ekki til staðar rétt uppbyggð stillingaskrá\n" #: ../utils/bonobo-activation-sysconf.c:236 msgid "Bonobo-activation configuration file contains:\n" msgstr "Bonobo stillingaskráin inniheldur:\n" #: ../utils/bonobo-activation-sysconf.c:266 msgid "Directory to remove from configuration file" msgstr "Mappa sem fjarlægja á úr stillingaskránni" #: ../utils/bonobo-activation-sysconf.c:266 #: ../utils/bonobo-activation-sysconf.c:268 msgid "PATH" msgstr "" #: ../utils/bonobo-activation-sysconf.c:268 msgid "Directory to add to configuration file" msgstr "Möppur til að bæta við í stillingaskrána" #: ../utils/bonobo-activation-sysconf.c:270 msgid "Display directories in configuration file" msgstr "Sýna möppur sem eru í stillingaskránni" #: ../utils/bonobo-activation-sysconf.c:272 msgid "Display path to configuration file" msgstr "Sýna slóðina að stillingaskránni" #~ msgid "Race condition activating server '%s'" #~ msgstr "Villa (Race condition) við að ræsa þjón '%s'" #~ msgid "Child received signal %u (%s)" #~ msgstr "Undirferlið fékk merkið %u (%s)" #~ msgid "Unknown non-exit error (status is %u)" #~ msgstr "Óþekkt villa (staðan er %u)" #~ msgid "bonobo-activation failed to set process group of %s: %s\n" #~ msgstr "Ræsing bonobo gat ekki búið til ferlahópinn %s: %s\n" #~ msgid "Failed to execute %s: %d (%s)\n" #~ msgstr "Gat ekki keyrt %s: %d (%s)\n" #~ msgid "Too many alias levels for a locale, may indicate a loop" #~ msgstr "Of mörg stig samheita í staðfærslunni. Gæti verið lykkja" #~ msgid "directory path" #~ msgstr "möppuslóð" libbonobo-2.32.1/po/el.po0000644000076400007640000005061511373604303012062 00000000000000# Greek translation of libbonobo. # Copyright (C) 2002,2003 Simos Xenitellis. # # kostas: 28Jan2003, updated translation # # simos: 52 messages, 16Aug2002, initial translation. # simos: 54 messages, 04Nov2002, completed translation. # kostas: 03Sep2003, 103 messages, updated translation. # Simos Xenitellis , 2002,2003. # Kostas Papadimas , 2003. # Kostas Papadimas , 2004, 2006. # Simos Xenitellis , 2005. msgid "" msgstr "" "Project-Id-Version: el\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2010-05-12 23:43+0300\n" "PO-Revision-Date: 2007-03-07 13:11+0800\n" "Last-Translator: Simos Xenitellis \n" "Language-Team: Greek \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" #: ../activation-server/activation-context-corba.c:530 msgid "Couldn't find which child the server was listed in" msgstr "" "Αδυνατή η εύρεση για πια θυγατρική διεργασία ο εξυπηρετητής ήταν " "καταχωρημένος" #: ../activation-server/activation-context-corba.c:822 msgid "Not a valid Activation ID" msgstr "Μή έγκυτη ταυτότητα ενεργοποίησης" #: ../activation-server/activation-server-main.c:176 msgid "Directory to read .server files from" msgstr "Ο κατάλογος από τον οποίο να αναγνωστούν τα αρχεία .server" #: ../activation-server/activation-server-main.c:176 msgid "DIRECTORY" msgstr "ΚΑΤΑΛΟΓΟΣ" #: ../activation-server/activation-server-main.c:179 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "" "Εργασία ως ActivationContext (η προεπιλογή είναι μόνο ως ObjectDirectory)" #: ../activation-server/activation-server-main.c:183 msgid "File descriptor to write IOR to" msgstr "Περιγραφέας αρχείου στο οποίο να εγγραφεί το IOR" #: ../activation-server/activation-server-main.c:183 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "FD" msgstr "Περιγραφέας Αρχείου" #: ../activation-server/activation-server-main.c:186 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "" "Καταχώρηση ως εξυπηρετητής ενεργοποίησης του χρήστη χωρίς κλείδωμα πολλαπλών " "προσβάσεων. Προειδοποίηση: αυτή η επιλογή μπορεί να έχει επικίνδυνες " "παρενέργειες στη σταθερότητα της τρέχουσας συνεδρίας του χρήστη, και η χρήση " "συνίσταται μόνο για λόγους εκσφαλμάτωσης" #: ../activation-server/activation-server-main.c:194 msgid "Query expression to evaluate" msgstr "Έκφραση επερώτησης για αποτίμηση" #: ../activation-server/activation-server-main.c:194 msgid "EXPRESSION" msgstr "ΕΚΦΡΑΣΗ" #: ../activation-server/activation-server-main.c:547 #: ../utils/bonobo-activation-sysconf.c:305 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "" "Εκτελέστε '%s --help' για να δείτε μια πλήρη λίστα των διαθέσιμων επιλογών " "της γραμμής εντολών\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "Υπηρεσία CORBA CosNaming." #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "Υπηρεσία ονοματοδότησης" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "Υπηρεσία ειδοποίησης" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "Υπηρεσία ειδοποίησης για ενεργοποίηση" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "" "Δεν υποστηρίζεται ακόμα η ενεργοποίηση αντικειμένων shlib σε απομακρυσμένη " "διεργασία" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "το αρχείο ρυθμίσεων της Ενεργοποίησης Μπονόμπο δεν αναγνώστηκε επιτυχώς. " "Παρακαλώ ελέγξτε ότι είναι έγκυρο στο: %s" #: ../activation-server/object-directory-load.c:102 msgid "a NULL iid is not valid" msgstr "Ένα iid με τιμή NULL δεν είναι έγκυρο" #: ../activation-server/object-directory-load.c:106 #, c-format msgid "iid %s has a NULL type" msgstr "To iid %s έχει τύπο NULL" #: ../activation-server/object-directory-load.c:110 #, c-format msgid "iid %s has a NULL location" msgstr "Το iid %s έχει τοποθεσία NULL" #: ../activation-server/object-directory-load.c:119 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "μη έγκυρος χαρακτήρας '%c' στο iid '%s'" #: ../activation-server/object-directory-load.c:349 #, c-format msgid "Property '%s' has no value" msgstr "Η ιδιότητα '%s' δεν έχει τιμή" #: ../activation-server/object-directory-load.c:583 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "Αδυναμία ανάλυσης κακοδιατυπωμένου εγγράφου XML %s" #: ../activation-server/object-directory-load.c:629 #, c-format msgid "Trying dir %s" msgstr "Προσπάθεια του καταλόγου %s" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "" "Συνέβει άγνωστο σφάλμα, η θυγατρική διεργασία δεν έδωσε μήνυμα σφάλματος" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "Αποτυχία ανάγνωσης από θυγατρική διεργασία: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, c-format msgid "EOF from child process\n" msgstr "EOF από θυγατρική διεργασία\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:438 msgid "Couldn't spawn a new process" msgstr "Αδύνατη η δημιουργία νέας διεργασίας" #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "File descriptor to print IOR on" msgstr "Περιγραφέας αρχείου για την εκτύπωση του IOR" #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:399 msgid "IID to activate" msgstr "IID για ενεργοποίηση" #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Prevent registering of server with OAF" msgstr "Αποτροπή καταχώρησης του εξυπηρετητή με το OAF" #: ../bonobo-activation/bonobo-activation-init.c:409 msgid "Bonobo Activation options:" msgstr "Επιλογές ενεργοποίησης Μπονόμπο:" #: ../bonobo-activation/bonobo-activation-init.c:410 msgid "Show Bonobo Activation options" msgstr "Εμφάνιση επιλογών ενεργοποίησης Μπονόμπο" #: ../bonobo-activation/bonobo-activation-init.c:518 msgid "Bonobo activation options" msgstr "Επιλογές ενεργοποίησης Μπονόμπο" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "το g_module_open από `%s' απέτυχε με `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "Δε βρέθηκε το σύμβολο Bonobo_Plugin_info στο `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "Το εργοστάσιο `%s' επέστρεψε NIL για `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Η διαμοιραζόμενη βιβλιοθήκη `%s' δεν περιέχει `%s'" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "Όνομα" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "Μοναδικό όνομα εφαρμογής" #: ../bonobo/bonobo-object.c:929 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:929 msgid "Custom CORBA POA" msgstr "Προσαρμοσμένη CORBA POA" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "Έγινε προσπάθεια μη-υποστηριζόμενης λειτουργίας" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "Σφάλμα Εισόδου/Εξόδου (ΕΕ)" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "Μη έγκυρη τιμή ορίσματος" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "Δε βρέθηκε το αντικείμενο" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "Συντακτικό σφάλμα στην περιγραφή του αντικειμένου" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "Αδύνατη η ενεργοποίηση του αντικειμένου από το εργοστάσιο" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "Δεν υπάρχει δικαίωμα προσπέλασης της ροής" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "Έγινε προσπάθεια μη-υποστηριζόμενης λειτουργίας ροής" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "Σφάλμα Εισόδου/Εξόδου (ΕΕ) στη ροή" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "Σφάλμα Εισόδου/Εξόδου (ΕΕ) στην αποθήκη" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "Το όνομα υπάρχει ήδη στην αποθήκη" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "Δε βρέθηκε το αντικείμενο στην αποθήκη" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "Δεν υπάρχει δικαίωμα εκτέλεσης λειτουργίας στην αποθήκη" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "Έγινε προσπάθεια μη-υποστηριζόμενης λειτουργίας αποθήκης" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "Tο αντικείμενο δεν είναι τύπου ροής" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "Το αντικείμενο δεν είναι τύπου αποθήκης" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "Η αποθήκη δεν είναι κενή" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "κακοσχηματισμένη περιγραφή XML διασύνδεσης χρήστη" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "μη έγκυρο μονοπάτι σε στοιχείο διασύνδεσης χρήστη XML" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "το στοιχείο γραφικής διασύνδεσης που ζητήθηκε δεν υπάρχει" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "Άγνωστη εντολή ή ρήμα" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "Η εντολή δεν κάνει διάκριση πεζών/κεφαλαίων" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "εσφαλμένος τύπος δεδομένου" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "δε βρέθηκε η ροή" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "δε βρέθηκε η ιδιότητα" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "η ιδιότητα δεν έχει έγκυρη τιμή" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "η ιδιότητα είναι μόνο για ανάγνωση" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "αποτυχία συστήματος υποστήριξης (backend) βάσης δεδομένων ρυθμίσεων " #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "Η διασύνδεση απλουστευμένου ονόματος δε βρέθηκε" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "Η ενεργοποίηση απλουστευμένου ονόματος ξεπέρασε το καθορισμένο χρόνο" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "Συντακτικό σφάλμα στη διαδικασία απλουστευμένου ονόματος" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "Η διαδικασία απλουστευμένου ονόματος έχει άγνωστο πρόθεμα" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "Σφάλμα ελέγχου λαθών, χωρίς εξαίρεση" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "Γενικό σφάλμα ενεργοποίησης χωρίς περιγραφή" # gconf/gconf-internals.c:2416 #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s'" msgstr "Αποτυχία ανάλυσης (resolve) ή επέκτασης του '%s" # gconf/gconfd.c:1194 #: ../bonobo/bonobo-moniker-util.c:247 msgid "Failed to activate object" msgstr "Αποτυχία ενεργοποίησης αντικειμένου" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "Εξαίρεση κατά την ενεργοποίηση του '%s" # gconf/gconf-internals.c:2416 #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "Αποτυχία ενεργοποίησης του '%s" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "Απλουστ. όνομα HTTP" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "απλουστ. όνομα χειρισμού ORB IOR" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "Γενικό εργοστάσιο απλουστ. ονόματος" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "γενικό απλουστ. όνομα ενεργοποίησης Oaf" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "γενικό απλουστ. όνομα επερώτησης Oaf" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "γενικό απλουστ. όνομα εργοστασίου 'νέο'" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "γενικό απλουστ. όνομα στοιχείου" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "ροή MonikerExtender" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Εργοστάσιο εξυπηρετητή Ηχούς Bonobo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Πρόγραμμα-δείγμα εξυπηρετητή Ηχούς Bonobo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Συστατικό Ηχούς" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Εργοστάσιο συστατικού ηχούς" #: ../samples/echo/echo-client.c:24 msgid "I could not initialize Bonobo" msgstr "Ανεπιτυχής προσπάθεια αρχικοποίησης του Μπονόμπο" #: ../samples/echo/echo-client.c:35 msgid "Could not create an instance of the sample echo component" msgstr "Αποτυχία δημιουργίας οντότητας του συστατικού δείγματος Ηχώ" #: ../samples/echo/echo-client.c:47 #, c-format msgid "An exception occurred '%s'" msgstr "Συνέβει μια εξαίρεση '%s'" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Could not save configuration file.\n" msgstr "Ανεπιτυχής προσπάθεια αποθήκευσης του αρχείου ρυθμίσεων.\n" #: ../utils/bonobo-activation-sysconf.c:84 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "" "Παρακαλώ επιβεβαιώστε ότι έχετε τα δικαιώματα για να γράψετε \n" "στο '%s'.\n" #: ../utils/bonobo-activation-sysconf.c:87 #, c-format msgid "Successfully wrote configuration file.\n" msgstr "Επιτυχία στην εγγραφή του αρχείου ρυθμίσεων.\n" #: ../utils/bonobo-activation-sysconf.c:104 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "το αρχείο ρυθμίσεων είναι:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:146 #, c-format msgid "%s already in configuration file\n" msgstr "Το %s υπάρχει ήδη στο αρχείο ρυθμίσεων\n" #: ../utils/bonobo-activation-sysconf.c:166 #, c-format msgid "there is not a properly structured configuration file\n" msgstr "δεν υπάρχει ένα ορθά δομημένο αρχείο ρυθμίσεων\n" #: ../utils/bonobo-activation-sysconf.c:237 #, c-format msgid "Bonobo-activation configuration file contains:\n" msgstr "Το αρχείο ρυθμίσεων του Bonobo-activation περιέχει:\n" #: ../utils/bonobo-activation-sysconf.c:267 msgid "Directory to remove from configuration file" msgstr "Κατάλογος για αφαίρεση από το αρχείο ρυθμίσεων" #: ../utils/bonobo-activation-sysconf.c:267 #: ../utils/bonobo-activation-sysconf.c:269 msgid "PATH" msgstr "ΔΙΑΔΡΟΜΗ" #: ../utils/bonobo-activation-sysconf.c:269 msgid "Directory to add to configuration file" msgstr "Κατάλογος για πρόσθεση στο αρχείο ρυθμίσεων" #: ../utils/bonobo-activation-sysconf.c:271 msgid "Display directories in configuration file" msgstr "Εμφάνιση καταλόγων στο αρχείο ρυθμίσεων" #: ../utils/bonobo-activation-sysconf.c:273 msgid "Display path to configuration file" msgstr "Εμφάνιση διαδρομής στο αρχείο ρυθμίσεων" #~ msgid "Could not initialize Bonobo" #~ msgstr "Αδύνατη η αρχικοποίηση του Bonobo" #~ msgid "" #~ "Register as the users' activation server without locking [!] for debugging" #~ msgstr "" #~ "Register as the users' activation server without locking [!] for debugging" #~ msgid "Bonobo Activation" #~ msgstr "Ενεργοποίηση Bonobo" #~ msgid "Race condition activating server '%s'" #~ msgstr "Συνθήκη αποκλεισμού στην ενεργοποίηση του εξυπηρετητή '%s'" #~ msgid "directory path" #~ msgstr "μονοπάτι καταλόγου" libbonobo-2.32.1/po/zh_CN.po0000664000076400007640000003667111433015514012470 00000000000000# Simplified Chinese translation of libbonobo # Copyright (C) 2010 Free Software Foundation, Inc. # Wang Jian , 2001 # Funda Wang , 2003 # Wang Xiaozhe , 2003 # Yang Zhang , 2007. # Aron Xu , 2010. # msgid "" msgstr "" "Project-Id-Version: libbonobo master\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2010-06-30 16:55+0800\n" "PO-Revision-Date: 2010-06-30 16:58+0800\n" "Last-Translator: Aron Xu \n" "Language-Team: Chinese (simplified) \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" # SUN CHANGED MESSAGE #: ../activation-server/activation-context-corba.c:530 msgid "Couldn't find which child the server was listed in" msgstr "无法找到列出该服务器的子进程" #: ../activation-server/activation-context-corba.c:822 msgid "Not a valid Activation ID" msgstr "不是有效的激活 ID" # SUN CHANGED MESSAGE #: ../activation-server/activation-server-main.c:174 msgid "Directory to read .server files from" msgstr "从其中读取 .server 文件的目录" #: ../activation-server/activation-server-main.c:174 msgid "DIRECTORY" msgstr "目录" # SUN CHANGED MESSAGE #: ../activation-server/activation-server-main.c:177 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "充当 ActivationContext(默认仅为 ObjectDirectory)" # SUN CHANGED MESSAGE #: ../activation-server/activation-server-main.c:181 msgid "File descriptor to write IOR to" msgstr "要将 IOR 写入其上的文件描述符" #: ../activation-server/activation-server-main.c:181 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:184 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "" "注册成为不锁定的用户 activation 服务器。警告:此选项可能对用户正在运行的会话" "的稳定性有危险的副作用,只应当被用于调试目的。" # SUN CHANGED MESSAGE #: ../activation-server/activation-server-main.c:192 msgid "Query expression to evaluate" msgstr "要计算的查询表达式" #: ../activation-server/activation-server-main.c:192 msgid "EXPRESSION" msgstr "表达式" #: ../activation-server/activation-server-main.c:541 #: ../utils/bonobo-activation-sysconf.c:305 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "运行‘%s --help’以查看可用命令行选项的完整列表。\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "CORBA CosNaming 服务。" # SUN CHANGED MESSAGE #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "名称服务" # SUN CHANGED MESSAGE #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "通告服务" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "待激活的通告服务" # SUN CHANGED MESSAGE #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "我们尚未处理在远程进程中激活 shlib 对象的操作" # SUN CHANGED MESSAGE #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "Bonobo 激活配置文件未能成功读取。请在 %s 中检查它是否有效" # SUN CHANGED MESSAGE #: ../activation-server/object-directory-load.c:102 msgid "a NULL iid is not valid" msgstr "空的 iid 是无效的" # SUN CHANGED MESSAGE #: ../activation-server/object-directory-load.c:106 #, c-format msgid "iid %s has a NULL type" msgstr "iid %s 有一个空类型" # SUN CHANGED MESSAGE #: ../activation-server/object-directory-load.c:110 #, c-format msgid "iid %s has a NULL location" msgstr "iid %s 有一个空位置" # SUN CHANGED MESSAGE #: ../activation-server/object-directory-load.c:119 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "iid“%2$s”中的无效字符“%1$c”" #: ../activation-server/object-directory-load.c:349 #, c-format msgid "Property '%s' has no value" msgstr "属性“%s”没有值" #: ../activation-server/object-directory-load.c:583 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "无法处理非规格的 XML 文档 %s" #: ../activation-server/object-directory-load.c:629 #, c-format msgid "Trying dir %s" msgstr "尝试目录 %s" # SUN CHANGED MESSAGE #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "子进程没有给出错误消息,发生了未知错误" # SUN CHANGED MESSAGE #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "无法从子进程 %s 读取\n" # SUN CHANGED MESSAGE #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, c-format msgid "EOF from child process\n" msgstr "无法从子进程 EOF\n" # SUN CHANGED MESSAGE #: ../bonobo-activation/bonobo-activation-fork-server.c:438 msgid "Couldn't spawn a new process" msgstr "无法创建新进程" # SUN CHANGED MESSAGE #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "File descriptor to print IOR on" msgstr "要将 IOR 打印到其上的文件描述符" #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:399 msgid "IID to activate" msgstr "要激活的 IID" # SUN CHANGED MESSAGE #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Prevent registering of server with OAF" msgstr "防止向 OAF 注册服务器" #: ../bonobo-activation/bonobo-activation-init.c:409 msgid "Bonobo Activation options:" msgstr "Bonobo 激活选项:" #: ../bonobo-activation/bonobo-activation-init.c:410 msgid "Show Bonobo Activation options" msgstr "显示 Bonobo 激活选项" #: ../bonobo-activation/bonobo-activation-init.c:518 msgid "Bonobo activation options" msgstr "Bonobo 激活选项" # SUN CHANGED MESSAGE #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "“%s”的 g_module_open 由于“%s”而失败" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "无法在“%s”中找到符号 Bonobo_Plugin_info" # SUN CHANGED MESSAGE #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "车间“%s”对于“%s”返回空值" # SUN CHANGED MESSAGE #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Shlib“%s”不包含“%s”" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "名称" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "应用程序唯一名称" #: ../bonobo/bonobo-object.c:929 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:929 msgid "Custom CORBA POA" msgstr "自定义 CORBA POA" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "试图执行不支持的动作" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "IO 错误" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "无效的参数值" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "未找到对象" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "对象描述中有语法错误" # SUN CHANGED MESSAGE #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "无法从车间中激活对象" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "不允许访问流" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "试图执行不支持的流动作" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "流 IO 错误" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "存储 IO 错误" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "存储中已经有该名字" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "存储中未找到对象" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "没有权限在存储上操作" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "试图执行不支持的存储动作" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "对象不是流" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "对象不是存储" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "存储不为空" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "格式不正确的用户界面 XML 描述" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "无效的到 XML 用户界面元素的路径" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "请求的 UI 属性不存在" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "未知的命令或动词" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "命令是不敏感的" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "不正确的数据类型" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "未找到流" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "未找到属性" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "属性的类型无效" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "属性是只读的" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "配置数据库后端错误" #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "无法找到 Moniker 接口" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "Moniker 激活超时" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "在 Moniker 中语法错误" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "Moniker 有一个未知的 moniker 前缀" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "检测错误时发生错误;没有异常" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "常规的无描述的激活错误" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s'" msgstr "无法解析或展开“%s”" #: ../bonobo/bonobo-moniker-util.c:247 msgid "Failed to activate object" msgstr "无法激活对象" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "激活“%s”时发生异常" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "无法激活“%s”" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "HTTP Moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "ORB IOR 处理 moniker" # SUN CHANGED MESSAGE #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "标准 Moniker 车间" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "通用 Oaf 激活 moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "通用 Oaf 查询 moniker" # SUN CHANGED MESSAGE #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "通用车间“新”moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "通用项目 moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "流 MonikerExtender" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Bonobo Echo server factory" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Bonobo Echo server 示例程序" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Echo 部件" # SUN CHANGED MESSAGE #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Echo 部件车间" #: ../samples/echo/echo-client.c:24 msgid "I could not initialize Bonobo" msgstr "无法初始化 Bonobo" #: ../samples/echo/echo-client.c:35 msgid "Could not create an instance of the sample echo component" msgstr "无法创建示例 echo 部件的实例" #: ../samples/echo/echo-client.c:47 #, c-format msgid "An exception occurred '%s'" msgstr "出现异常“%s”" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Could not save configuration file.\n" msgstr "无法保存配置文件。\n" # SUN CHANGED MESSAGE #: ../utils/bonobo-activation-sysconf.c:84 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "请确保您有写入到“%s”的权限。\n" # SUN CHANGED MESSAGE #: ../utils/bonobo-activation-sysconf.c:87 #, c-format msgid "Successfully wrote configuration file.\n" msgstr "已成功写入配置文件。\n" # SUN CHANGED MESSAGE #: ../utils/bonobo-activation-sysconf.c:104 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "配置文件为:\n" " %s\n" # SUN CHANGED MESSAGE #: ../utils/bonobo-activation-sysconf.c:146 #, c-format msgid "%s already in configuration file\n" msgstr "%s 已经在配置文件中\n" # SUN CHANGED MESSAGE #: ../utils/bonobo-activation-sysconf.c:166 #, c-format msgid "there is not a properly structured configuration file\n" msgstr "没有结构正确的配置文件\n" #: ../utils/bonobo-activation-sysconf.c:237 #, c-format msgid "Bonobo-activation configuration file contains:\n" msgstr "Bonobo-activation 配置文件包含:\n" #: ../utils/bonobo-activation-sysconf.c:267 msgid "Directory to remove from configuration file" msgstr "要从配置文件中删除的目录" #: ../utils/bonobo-activation-sysconf.c:267 #: ../utils/bonobo-activation-sysconf.c:269 msgid "PATH" msgstr "路径" #: ../utils/bonobo-activation-sysconf.c:269 msgid "Directory to add to configuration file" msgstr "要添加到配置文件中的目录" #: ../utils/bonobo-activation-sysconf.c:271 msgid "Display directories in configuration file" msgstr "显示配置文件中的目录" #: ../utils/bonobo-activation-sysconf.c:273 msgid "Display path to configuration file" msgstr "显示配置文件的路径" #~ msgid "Bonobo Activation" #~ msgstr "Bonobo 激活" #~ msgid "Could not initialize Bonobo" #~ msgstr "无法初始化 Bonobo" libbonobo-2.32.1/po/nn.po0000644000076400007640000003617411173072711012101 00000000000000# translation of nn.po to Norwegian Nynorsk # Norwegian Nynorsk translation of libbonobo. # Copyright (C) 1999-2002, 2003, 2004, 2006 Free Software Foundation, Inc. # # Kjartan Maraas , 2001. # Roy-Magne Mo , 2002. # Åsmund Skjæveland , 2003, 2004, 2006. msgid "" msgstr "" "Project-Id-Version: nn\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-10-15 11:47+0200\n" "PO-Revision-Date: 2007-10-15 11:49+0200\n" "Last-Translator: Åsmund Skjæveland \n" "Language-Team: Norwegian Nynorsk \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.11.2\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #: ../activation-server/activation-context-corba.c:527 msgid "Couldn't find which child the server was listed in" msgstr "Kunne ikkje finna kva barn tenaren var oppført i" #: ../activation-server/activation-context-corba.c:819 msgid "Not a valid Activation ID" msgstr "Ikkje eit gyldig aktiviserings-ID" #: ../activation-server/activation-server-main.c:162 msgid "Directory to read .server files from" msgstr "Katalog å lesa .server filer frå" #: ../activation-server/activation-server-main.c:162 msgid "DIRECTORY" msgstr "KATALOG" #: ../activation-server/activation-server-main.c:165 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "Fungér som ActivationContext (vanleg er kun ObjectDirectory)" #: ../activation-server/activation-server-main.c:169 msgid "File descriptor to write IOR to" msgstr "Fildeskriptor å skriva IOR til" #: ../activation-server/activation-server-main.c:169 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:172 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "Registrer som brukers aktiveringstenar utan låsing. Åtvaring: dette valet kan ha farlege sideeffekter for brukars økt og bør kun brukast for feilsøkingsformål." #: ../activation-server/activation-server-main.c:180 msgid "Query expression to evaluate" msgstr "Spørjingsuttrykk som skal evaluerast" #: ../activation-server/activation-server-main.c:180 msgid "EXPRESSION" msgstr "UTRYKK" #: ../activation-server/activation-server-main.c:430 #: ../utils/bonobo-activation-sysconf.c:305 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "Køyr «%s --help» for å sjå ei full liste over kommandolinjeval.\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "CORBA CosNaming-teneste." #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "Namneteneste" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "Varslingsteneste" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "Varslingsteneste for aktivering" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "Me handsamar ikkje aktivering av shlib-objekt i ein fjernprosess enno" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "Bonobo Activation-konfigurasjonsfila vart ikkje skikkeleg lest. Sjå etter at " "ho er gyldig i: %s" #: ../activation-server/object-directory-load.c:102 msgid "a NULL iid is not valid" msgstr "ein NULL-iid er ikkje gyldig" #: ../activation-server/object-directory-load.c:106 #, c-format msgid "iid %s has a NULL type" msgstr "iid %s har ein NULL type" #: ../activation-server/object-directory-load.c:110 #, c-format msgid "iid %s has a NULL location" msgstr "iid %s har ein NULL plassering" #: ../activation-server/object-directory-load.c:119 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "ugyldig teikn «%c» i iid «%s»" #: ../activation-server/object-directory-load.c:349 #, c-format msgid "Property '%s' has no value" msgstr "Eigenskap «%s» har ingen verdi" #: ../activation-server/object-directory-load.c:583 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "Kunne ikkje tolka dårleg utforma XML-dokument «%s»" #: ../activation-server/object-directory-load.c:629 #, c-format msgid "Trying dir %s" msgstr "Prøver mappa «%s»" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "Barnprosess gav ikkje frå seg ei feilmelding. Ein ukjent feil oppstod" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "Klarte ikkje å lesa frå barnprosess: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, c-format msgid "EOF from child process\n" msgstr "EOF frå barnprosess\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:438 msgid "Couldn't spawn a new process" msgstr "Kunne ikkje starta ny prosess" #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "File descriptor to print IOR on" msgstr "Fildeskriptor å skriva IOR på" #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:399 msgid "IID to activate" msgstr "IID som skal aktiverast" #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Prevent registering of server with OAF" msgstr "Hindra registrering av tenarar i OAF" #: ../bonobo-activation/bonobo-activation-init.c:409 msgid "Bonobo Activation options:" msgstr "Bonobo-aktiviseringsval:" #: ../bonobo-activation/bonobo-activation-init.c:410 msgid "Show Bonobo Activation options" msgstr "Vis Bonobo-aktiviseringsval" #: ../bonobo-activation/bonobo-activation-init.c:518 msgid "Bonobo activation options" msgstr "Bonobo-aktiviseringsval" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "g_module_open i «%s» feila med «%s»" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "Klarar ikkje å finna symbol Bonobo_Plugin_info i «%s»" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "Fabrikken «%s» returnerte NIL for «%s»" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Shlib «%s» inneheldt ikkje «%s»" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "Namn" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "Unikt namn på programmet" #: ../bonobo/bonobo-object.c:926 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:926 msgid "Custom CORBA POA" msgstr "Eigendefinert CORBA POA" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "Ei ustøtta handling vart prøvd" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "IU-feil" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "Ugyldig argumentverdi" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "Fann ikkje objekt" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "Syntaksfeil i objektskildringa" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "Kan ikkje aktivera objekt frå fabrikk" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "Ikkje løyve til å aksessere straum" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "Ei ustøtta straumhandling vart prøvd" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "IU-feil på straum" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "IU-feil på lager" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "Namnet finnast allereide i lageret" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "Objektet ikkje funne i lageret" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "Ikkje løyve til å gjera operasjonar på lager" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "Ei ustøtta handling vart forsøkt" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "Objektet er ikkje ein straum" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "Objektet er ikkje eit lager" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "Lageret er ikkje tomt" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "feil forma brukgrensesnitt XML-skildring" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "ugyldig sti til XML-grensesnittelement" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "UI-attributten som det vart spurt etter eksisterarar ikkje" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "Ukjend kommando eller verb" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "Kommandoen er kjenslelaus" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "ugyldig datatype" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "fann ikkje straum" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "eigenskap ikkje funne" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "eigeskap har ugyldig type" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "eigenskap er skrivebeskytta" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "konfigurasjonsdatabasen feila " #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "Moniker grensesnittet vart ikkje funne" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "Monikeraktiveringa vart kopla ut på tid" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "Syntaksfeil i Moniker" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "Moniker har eit ukjent moniker prefiks" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "Feil under sjekking av feil; ingen unntak" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "Generelle aktiviseringsfeil utan skildring" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s" msgstr "Klarte ikkje å slå opp, eller utvide «%s»" #: ../bonobo/bonobo-moniker-util.c:247 msgid "Failed to activate object" msgstr "Klarte ikkje å aktivera objekt" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "Unntak ved aktivering av «%s»" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "Klarte ikkje å aktivera «%s»" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "HTTP-moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "moniker som helt styr på ORB IOR" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "Standard moniker-fabrikk" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "vanleg Oaf aktiviseringsmoniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "vanleg Oaf spørjingsmoniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "vanleg fabrikk 'ny' moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "vanleg oppørings moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "straum Moniker utvidar" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Bonobo Ekko-tenar fabrikk" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Bonobo ekkotenar eksempelprogram" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Ekkokomponent" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Ekkokomponent fabrikk" #: ../samples/echo/echo-client.c:24 msgid "I could not initialize Bonobo" msgstr "Klarte ikkje å initialisera Bonobo" #: ../samples/echo/echo-client.c:35 msgid "Could not create an instance of the sample echo component" msgstr "Klarte ikkje å oppretta ein instans av eksempel ekkokomponent" #: ../samples/echo/echo-client.c:47 #, c-format msgid "An exception occurred '%s'" msgstr "Eit unntakk skjedde: «%s»" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Could not save configuration file.\n" msgstr "Klarte ikkje å lagra oppsettsfil.\n" #: ../utils/bonobo-activation-sysconf.c:84 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "Sjekk at du har løyve til å skriva til fila «%s».\n" #: ../utils/bonobo-activation-sysconf.c:87 #, c-format msgid "Successfully wrote configuration file.\n" msgstr "Vellukka skriving av oppsettsfil.\n" #: ../utils/bonobo-activation-sysconf.c:104 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "oppsettsfila er:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:146 #, c-format msgid "%s already in configuration file\n" msgstr "%s allereie i oppsettsfil\n" #: ../utils/bonobo-activation-sysconf.c:166 #, c-format msgid "there is not a properly structured configuration file\n" msgstr "det finst ikkje ei strukturert oppsettsfil\n" #: ../utils/bonobo-activation-sysconf.c:237 #, c-format msgid "Bonobo-activation configuration file contains:\n" msgstr "Bonobo-aktivering oppsettfila inneheld:\n" #: ../utils/bonobo-activation-sysconf.c:267 msgid "Directory to remove from configuration file" msgstr "Katalog som skal fjernast frå oppsettsfil" #: ../utils/bonobo-activation-sysconf.c:267 #: ../utils/bonobo-activation-sysconf.c:269 msgid "PATH" msgstr "STI" #: ../utils/bonobo-activation-sysconf.c:269 msgid "Directory to add to configuration file" msgstr "Katalog som skal leggjast til oppsettsfil" #: ../utils/bonobo-activation-sysconf.c:271 msgid "Display directories in configuration file" msgstr "Vis katalogar i oppsettsfil" #: ../utils/bonobo-activation-sysconf.c:273 msgid "Display path to configuration file" msgstr "Vis sti til oppsettsfil" libbonobo-2.32.1/po/pl.po0000664000076400007640000004011311433015514012064 00000000000000# translation of libbonobo.HEAD.pl.po to Polish # Artur Flinta , 2006. # Copyright (C) 2001-2006 Free Software Foundation, Inc. # -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- # Aviary.pl # Jeśli masz jakiekolwiek uwagi odnoszące się do tłumaczenia lub chcesz # pomóc w jego rozwijaniu i pielęgnowaniu, napisz do nas: # gnomepl@aviary.pl # -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- # msgid "" msgstr "" "Project-Id-Version: libbonobo\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?" "product=bonobo&component=libbonobo\n" "POT-Creation-Date: 2010-06-21 20:31+0000\n" "PO-Revision-Date: 2010-08-07 01:01+0200\n" "Last-Translator: Piotr Drąg \n" "Language-Team: Polish \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==1 ? 0 : n%10>=2 && n%10<=4 && (n%" "100<10 || n%100>=20) ? 1 : 2);\n" "X-Poedit-Language: Polish\n" "X-Poedit-Country: Poland\n" #: ../activation-server/activation-context-corba.c:530 msgid "Couldn't find which child the server was listed in" msgstr "Nie można odnaleźć potomka w którym występuje serwer" #: ../activation-server/activation-context-corba.c:822 msgid "Not a valid Activation ID" msgstr "Napis nie jest poprawnym identyfikatorem aktywacji" #: ../activation-server/activation-server-main.c:174 msgid "Directory to read .server files from" msgstr "Katalog, z którego odczytywane powinny być pliki .server" #: ../activation-server/activation-server-main.c:174 msgid "DIRECTORY" msgstr "KATALOG" #: ../activation-server/activation-server-main.c:177 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "" "Udostępnianie jako ActivationContext (domyślnie tylko jako ObjectDirectory)" #: ../activation-server/activation-server-main.c:181 msgid "File descriptor to write IOR to" msgstr "Deskryptor pliku, do którego zapisać IOR" #: ../activation-server/activation-server-main.c:181 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:184 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "" "Rejestracja jako serwer aktywacji użytkownika bez blokowania. Uwaga: opcja " "ta może mieć niebezpieczny efekt uboczny mający wpływ na stabilność " "uruchomionej sesji użytkownika i powinna być używana tylko debugowania" #: ../activation-server/activation-server-main.c:192 msgid "Query expression to evaluate" msgstr "Wyrażenie zapytania do przetworzenia" #: ../activation-server/activation-server-main.c:192 msgid "EXPRESSION" msgstr "WYRAŻENIE" #: ../activation-server/activation-server-main.c:541 #: ../utils/bonobo-activation-sysconf.c:305 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "" "Uruchom \"%s --help\" aby zobaczyć pełną listę opcji dostępnych z wiersza " "poleceń.\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "Usługa CORBA CosNaming." #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "Usługa nazw" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "Usługa powiadamiania" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "Aktywująca usługa powiadamiania" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "" "Aktywowanie obiektów w bibliotekach dzielonych dla zdalnych procesów nie " "jest jeszcze obsługiwane" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "Nie można odczytać pliku konfiguracyjnego Bonobo Activation. Sprawdź, czy " "jest on poprawny (%s)" #: ../activation-server/object-directory-load.c:102 msgid "a NULL iid is not valid" msgstr "Nie jest dopuszczalny iid o wartości NULL" #: ../activation-server/object-directory-load.c:106 #, c-format msgid "iid %s has a NULL type" msgstr "Typem iid %s jest NULL" #: ../activation-server/object-directory-load.c:110 #, c-format msgid "iid %s has a NULL location" msgstr "Położeniem iid %s jest NULL" #: ../activation-server/object-directory-load.c:119 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "niepoprawny znak \"%c\" w iid \"%s\"" #: ../activation-server/object-directory-load.c:349 #, c-format msgid "Property '%s' has no value" msgstr "Właściwość \"%s\" nie ma wartości" #: ../activation-server/object-directory-load.c:583 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "Nie można przeanalizować źle sformułowanego dokumentu XML %s" #: ../activation-server/object-directory-load.c:629 #, c-format msgid "Trying dir %s" msgstr "Próbowanie katalogu %s" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "Proces potomny nie podał komunikatu błędu, wystąpił nieznany błąd" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "Nie można odczytać z procesu potomnego: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, c-format msgid "EOF from child process\n" msgstr "EOF z procesu potomnego\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:438 msgid "Couldn't spawn a new process" msgstr "Nie można utworzyć nowego procesu" #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "File descriptor to print IOR on" msgstr "Deskryptor pliku, do którego wypisać IOR" #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:399 msgid "IID to activate" msgstr "Aktywowany IID" #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Prevent registering of server with OAF" msgstr "Wstrzymuje rejestrację serwera przez OAF-a" #: ../bonobo-activation/bonobo-activation-init.c:409 msgid "Bonobo Activation options:" msgstr "Opcje aktywacji Bonobo:" #: ../bonobo-activation/bonobo-activation-init.c:410 msgid "Show Bonobo Activation options" msgstr "Wyświetlanie opcji Aktywacji Bonobo" #: ../bonobo-activation/bonobo-activation-init.c:518 msgid "Bonobo activation options" msgstr "Opcje aktywacji Bonobo" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "Funkcja g_module_open zwróciła przy pliku \"%s\" błąd \"%s\"" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "Nie można odnaleźć w \"%s\" symbolu Bonobo_Plugin_info" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "Generator \"%s\" zwrócił NIL dla \"%s\"" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Biblioteka dzielona \"%s\" nie zawiera \"%s\"" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "Nazwa" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "Unikalna nazwa aplikacji" #: ../bonobo/bonobo-object.c:929 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:929 msgid "Custom CORBA POA" msgstr "Dowolne CORBA POA" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "Próba wykonania nieobsługiwanej akcji" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "Błąd wejścia/wyjścia" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "Niepoprawna wartość argumentu" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "Nie odnaleziono obiektu" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "Błąd składniowy w opisie obiektu" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "Nie można uaktywnić obiektu z generatora" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "Brak praw dostępu do strumienia" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "Próba wykonania nieobsługiwanej akcji na strumieniu" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "Błąd wejścia/wyjścia w strumieniu" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "Błąd wejścia/wyjścia przy operacji na składnicy" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "Nazwa już istnieje w składnicy" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "Nie odnaleziono obiektu w składnicy" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "Brak uprawnień do wykonania operacji na składnicy" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "Próba wykonania nieobsługiwanej akcji na składnicy" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "Obiektu nie ma w strumieniu" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "Obiektu nie ma w składnicy" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "Składnica nie jest pusta" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "Uszkodzony opis interfejsu użytkownika w XML-u" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "Niepoprawna ścieżka elementu interfejsu użytkownika w XML-u" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "żądany atrybut UI nie istnieje" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "Nieznane polecenie lub czasownik" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "Polecenie jest nieaktywne" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "niepoprawny typ danych" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "nie odnaleziono strumienia" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "nie odnaleziono własności" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "własność ma nieodpowiedni typ" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "własność jest tylko do odczytu" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "moduł obsługujący bazę danych konfiguracji zwrócił błąd " #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "Nie można odnaleźć interfejsu monikerów" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "Upłynął czas na aktywację monikera" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "Błąd składniowy w monikerze" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "Nieznany przedrostek monikera" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "Błąd przy sprawdzaniu błędu; brak wyjątku" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "Ogólny błąd aktywacji bez opisu" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s'" msgstr "Nie można uzyskać lub rozszerzyć \"%s\"" #: ../bonobo/bonobo-moniker-util.c:247 msgid "Failed to activate object" msgstr "Nie można uaktywnić obiektu" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "Przy uaktywnianiu \"%s\" wystąpił wyjątek" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "Nie można uaktywnić \"%s\"" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "Moniker HTTP" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "Moniker obsługujący ORB IOR" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "Generator standardowego monikera" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "ogólny moniker aktywacji Oaf" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "ogólny moniker zapytań Oaf" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "ogólny moniker generatora 'new' (nowych obiektów)" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "ogólny moniker elementu" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "strumień MonikerExtender" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "generator serwera Bonobo Echo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Przykładowy program serwera Bonobo Echo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Komponent echo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Generator komponentów Echo" #: ../samples/echo/echo-client.c:24 msgid "I could not initialize Bonobo" msgstr "Nie można zainicjować Bonobo" #: ../samples/echo/echo-client.c:35 msgid "Could not create an instance of the sample echo component" msgstr "Nie można utworzyć instancji przykładowego komponentu echa" #: ../samples/echo/echo-client.c:47 #, c-format msgid "An exception occurred '%s'" msgstr "Wystąpił wyjątek \"%s\"" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Could not save configuration file.\n" msgstr "Nie można zapisać pliku konfiguracyjnego.\n" #: ../utils/bonobo-activation-sysconf.c:84 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "Upewnij się, że masz uprawnienia do zapisu w \"%s\".\n" #: ../utils/bonobo-activation-sysconf.c:87 #, c-format msgid "Successfully wrote configuration file.\n" msgstr "Plik konfiguracyjny został pomyślnie zapisany.\n" #: ../utils/bonobo-activation-sysconf.c:104 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "Plikiem konfiguracyjnym jest:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:146 #, c-format msgid "%s already in configuration file\n" msgstr "%s jest już w pliku konfiguracyjnym\n" #: ../utils/bonobo-activation-sysconf.c:166 #, c-format msgid "there is not a properly structured configuration file\n" msgstr "brak pliku konfiguracyjnego o poprawnej strukturze\n" #: ../utils/bonobo-activation-sysconf.c:237 #, c-format msgid "Bonobo-activation configuration file contains:\n" msgstr "Plik konfiguracyjny bonobo-activation zawiera:\n" #: ../utils/bonobo-activation-sysconf.c:267 msgid "Directory to remove from configuration file" msgstr "Katalog, który należy usunąć z pliku konfiguracyjnego" #: ../utils/bonobo-activation-sysconf.c:267 #: ../utils/bonobo-activation-sysconf.c:269 msgid "PATH" msgstr "ŚCIEŻKA" #: ../utils/bonobo-activation-sysconf.c:269 msgid "Directory to add to configuration file" msgstr "Katalog, który należy dodać do pliku konfiguracyjnego" #: ../utils/bonobo-activation-sysconf.c:271 msgid "Display directories in configuration file" msgstr "Wyświetla katalogi w pliku konfiguracyjnym" #: ../utils/bonobo-activation-sysconf.c:273 msgid "Display path to configuration file" msgstr "Wyświetla ścieżkę pliku konfiguracyjnego" libbonobo-2.32.1/po/th.po0000664000076400007640000005074411546203545012107 00000000000000# Thai translation of libbonobo. # Copyright (C) 2007-2010 Free Software Foundation, Inc. # This file is distributed under the same license as the libbonobo package. # aka.ape , 2007. # Theppitak Karoonboonyanan , 2007, 2010. # msgid "" msgstr "" "Project-Id-Version: libbonobo\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?" "product=bonobo&component=libbonobo\n" "POT-Creation-Date: 2010-06-21 20:31+0000\n" "PO-Revision-Date: 2010-11-23 22:01+0700\n" "Last-Translator: Theppitak Karoonboonyanan \n" "Language-Team: Thai \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../activation-server/activation-context-corba.c:530 msgid "Couldn't find which child the server was listed in" msgstr "หาโหนดลูกที่เป็นเจ้าของผู้ให้บริการไม่พบ" #: ../activation-server/activation-context-corba.c:822 msgid "Not a valid Activation ID" msgstr "ไม่ใช่ Activation ID ที่ใช้การได้" #: ../activation-server/activation-server-main.c:174 msgid "Directory to read .server files from" msgstr "ไดเรกทอรีแหล่งแฟ้ม .server ที่จะอ่าน" #: ../activation-server/activation-server-main.c:174 msgid "DIRECTORY" msgstr "DIRECTORY" #: ../activation-server/activation-server-main.c:177 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "บริการแบบ ActivationContext (ค่าปริยายเป็นแบบ ObjectDirectory เท่านั้น)" #: ../activation-server/activation-server-main.c:181 msgid "File descriptor to write IOR to" msgstr "File descriptor ที่จะใช้เขียน IOR" #: ../activation-server/activation-server-main.c:181 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:184 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "" "ลงทะเบียนเป็น activation server ของผู้ใช้โดยไม่ล็อค คำเตือน: " "ตัวเลือกนี้สามารถทำให้เกิดผลข้างเคียงที่ทำให้วาระที่ทำงานอยู่ของผู้ใช้ไม่เสถียรได้ " "และควรใช้เพื่อการดีบั๊กโปรแกรมเท่านั้น" #: ../activation-server/activation-server-main.c:192 msgid "Query expression to evaluate" msgstr "ระบุนิพจน์สอบถามที่จะประเมินค่า" #: ../activation-server/activation-server-main.c:192 msgid "EXPRESSION" msgstr "EXPRESSION" #: ../activation-server/activation-server-main.c:541 #: ../utils/bonobo-activation-sysconf.c:305 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "เรียก '%s --help' เพื่อดูรายการทั้งหมดของตัวเลือกบรรทัดคำสั่งที่ใช้ได้\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "บริการ CosNaming ของ CORBA" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "บริการชื่อ" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "บริการแจ้งเหตุ" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "บริการแจ้งเหตุสำหรับการ activate" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "เรายังไม่สามารถ activate ออบเจกต์ที่เป็น shlib ในโพรเซสของเครื่องอื่นได้" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "อ่านแฟ้มค่าตั้งของ Bonobo Activation ไม่สำเร็จ กรุณาตรวจสอบความถูกต้องใน %s" #: ../activation-server/object-directory-load.c:102 msgid "a NULL iid is not valid" msgstr "ค่า iid เป็น NULL ไม่ได้" #: ../activation-server/object-directory-load.c:106 #, c-format msgid "iid %s has a NULL type" msgstr "iid %s มีชนิดเป็น NULL" #: ../activation-server/object-directory-load.c:110 #, c-format msgid "iid %s has a NULL location" msgstr "iid %s มีตำแหน่งที่ตั้งเป็น NULL" #: ../activation-server/object-directory-load.c:119 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "อักขระ '%c' ใน iid '%s' ไม่ถูกต้อง" #: ../activation-server/object-directory-load.c:349 #, c-format msgid "Property '%s' has no value" msgstr "คุณสมบัติ '%s' ไม่มีค่า" #: ../activation-server/object-directory-load.c:583 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "ไม่สามารถแจงเอกสาร XML %s ซึ่งผิดรูปแบบ" #: ../activation-server/object-directory-load.c:629 #, c-format msgid "Trying dir %s" msgstr "กำลังลองหาในไดเรกทอรี %s" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "โพรเซสลูกไม่ได้แจ้งข้อความข้อผิดพลาด เกิดข้อผิดพลาดไม่ทราบสาเหตุ" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "อ่านข้อมูลจากโพรเซสลูกไม่สำเร็จ: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, c-format msgid "EOF from child process\n" msgstr "ได้รับ EOF จากโพรเซสลูก\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:438 msgid "Couldn't spawn a new process" msgstr "ไม่สามารถสร้างโพรเซสใหม่" #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "File descriptor to print IOR on" msgstr "File descriptor ที่จะใช้พิมพ์ IOR" #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:399 msgid "IID to activate" msgstr "IID ที่จะ activate" #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Prevent registering of server with OAF" msgstr "ป้องกันการลงทะเบียนเซิร์ฟเวอร์ด้วย OAF" #: ../bonobo-activation/bonobo-activation-init.c:409 msgid "Bonobo Activation options:" msgstr "ตัวเลือก Bonobo Activation:" #: ../bonobo-activation/bonobo-activation-init.c:410 msgid "Show Bonobo Activation options" msgstr "แสดงตัวเลือกของ Bonobo Activation" #: ../bonobo-activation/bonobo-activation-init.c:518 msgid "Bonobo activation options" msgstr "ตัวเลือกของ Bonobo activation" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "g_module_open แฟ้ม '%s' ไม่สำเร็จ โดยมีข้อความ '%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "หาสัญลักษณ์ Bonobo_Plugin_info ใน `%s' ไม่พบ" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "โรงงาน `%s' คืนค่า NIL สำหรับ `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Shlib `%s' ไม่มี `%s'" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "ชื่อ" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "ชื่อเอกลักษณ์ของโปรแกรม" #: ../bonobo/bonobo-object.c:929 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:929 msgid "Custom CORBA POA" msgstr "CORBA POA กำหนดเอง" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "มีความพยายามดำเนินการสิ่งที่ไม่รองรับ" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "ข้อผิดพลาดเกี่ยวกับการอ่านเขียนข้อมูล" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "ค่าอาร์กิวเมนต์ไม่ถูกต้อง" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "ไม่พบออบเจกต์" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "คำบรรยายออบเจกต์ผิดไวยากรณ์" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "ไม่สามารถ activate ออบเจกต์จากโรงงาน" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "ไม่มีสิทธิ์เข้าใช้สตรีม" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "มีความพยายามดำเนินการสิ่งที่ไม่รองรับกับสตรีม" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "เกิดข้อผิดพลาดเกี่ยวกับการอ่านเขียนข้อมูลบนสตรีม" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "เกิดข้อผิดพลาดเกี่ยวกับการอ่านเขียนข้อมูลบนที่เก็บข้อมูล" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "มีชื่ออยู่แล้วในที่เก็บข้อมูล" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "ไม่พบออบเจกต์ในที่เก็บข้อมูล" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "ไม่มีสิทธิ์สำหรับดำเนินการกับที่เก็บข้อมูล" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "มีความพยายามดำเนินการสิ่งที่ไม่รองรับกับที่เก็บข้อมูล" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "ออบเจกต์ไม่ใช่สตรีม" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "ออบเจกต์ไม่ใช่ที่เก็บข้อมูล" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "พื้นที่เก็บข้อมูลไม่ว่าง" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "คำบรรยาย XML ของส่วนติดต่อผู้ใช้ผิดรูปแบบ" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "พาธขององค์ประกอบของส่วนติดต่อผู้ใช้แบบ XML ไม่ถูกต้อง" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "ไม่มีแอตทริบิวต์ UI ที่ร้องขอ" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "พบคำสั่งหรือคำที่ไม่รู้จัก" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "คำสั่งไม่ตอบสนอง" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "ชนิดของข้อมูลไม่ถูกต้อง" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "ไม่พบสตรีม" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "ไม่พบคุณสมบัติ" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "คุณสมบัติมีชนิดไม่ถูกต้อง" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "คุณสมบัติอ่านได้อย่างเดียว" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "ตั้งค่าแบ็กเอนด์ฐานข้อมูลไม่สำเร็จ" #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "ไม่พบอินเทอร์เฟสของมอนิเกอร์" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "หมดเวลาคอยการ activate มอนิเกอร์" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "ไวยากรณ์ผิดพลาดภายในมอนิเกอร์" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "มอนิเกอร์มีคำนำหน้าชื่อที่ไม่รู้จัก" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "เกิดข้อผิดพลาดขณะตรวจสอบข้อผิดพลาด; ไม่แสดงสิ่งผิดปกติ" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "เกิดข้อผิดพลาดทั่วไปของการ activate โดยไม่มีคำบรรยาย" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s'" msgstr "ไม่สามารถเปิดหาหรือขยาย '%s'" #: ../bonobo/bonobo-moniker-util.c:247 msgid "Failed to activate object" msgstr "ไม่สามารถ activate ออบเจกต์" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "มีสิ่งผิดปกติขณะ activate '%s'" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "ไม่สามารถ activate '%s'" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "มอนิเกอร์ HTTP" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "มอนิเกอร์จัดการ IOR ของ ORB" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "โรงงานมอนิเกอร์มาตรฐาน" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "มอนิเกอร์ทั่วไปสำหรับการ activate Oaf" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "มอนิเกอร์ทั่วไปสำหรับสอบถาม Oaf" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "มอนิเกอร์ 'new' ทั่วไปสำหรับโรงงาน" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "มอนิเกอร์ทั่วไปสำหรับ item" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "มอนิเกอร์ส่วนขยายแบบสตรีม" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "โรงงานผู้ให้บริการ Echo แบบ Bonobo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "โปรแกรมตัวอย่างผู้ให้บริการ Echo แบบ Bonobo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "องค์ประกอบ Echo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "โรงงานองค์ประกอบ Echo" #: ../samples/echo/echo-client.c:24 msgid "I could not initialize Bonobo" msgstr "ไม่สามารถเริ่มต้นระบบ Bonobo" #: ../samples/echo/echo-client.c:35 msgid "Could not create an instance of the sample echo component" msgstr "ไม่สามารถสร้างอินสแตนซ์ขององค์ประกอบ echo ตัวอย่าง" #: ../samples/echo/echo-client.c:47 #, c-format msgid "An exception occurred '%s'" msgstr "เกิดสิ่งผิดปกติ '%s'" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Could not save configuration file.\n" msgstr "บันทึกแฟ้มค่าตั้งไม่สำเร็จ\n" #: ../utils/bonobo-activation-sysconf.c:84 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "กรุณาตรวจสอบให้แน่ใจว่าคุณมีสิทธิ์ในการเขียนแฟ้ม '%s'\n" #: ../utils/bonobo-activation-sysconf.c:87 #, c-format msgid "Successfully wrote configuration file.\n" msgstr "เขียนแฟ้มค่าตั้งสำเร็จ\n" #: ../utils/bonobo-activation-sysconf.c:104 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "แฟ้มค่าตั้งคือ:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:146 #, c-format msgid "%s already in configuration file\n" msgstr "%s มีอยู่แล้วในแฟ้มค่าตั้ง\n" #: ../utils/bonobo-activation-sysconf.c:166 #, c-format msgid "there is not a properly structured configuration file\n" msgstr "ไม่มีแฟ้มค่าตั้งที่จัดโครงสร้างอย่างถูกต้อง\n" #: ../utils/bonobo-activation-sysconf.c:237 #, c-format msgid "Bonobo-activation configuration file contains:\n" msgstr "แฟ้มเก็บค่าตั้งของ Bonobo-activation มีข้อมูล:\n" #: ../utils/bonobo-activation-sysconf.c:267 msgid "Directory to remove from configuration file" msgstr "ไดเรกทอรีที่จะลบออกจากแฟ้มค่าตั้ง" #: ../utils/bonobo-activation-sysconf.c:267 #: ../utils/bonobo-activation-sysconf.c:269 msgid "PATH" msgstr "PATH" #: ../utils/bonobo-activation-sysconf.c:269 msgid "Directory to add to configuration file" msgstr "ไดเรกทอรีที่จะเพิ่มในแฟ้มค่าตั้ง" #: ../utils/bonobo-activation-sysconf.c:271 msgid "Display directories in configuration file" msgstr "แสดงไดเรกทอรีต่างๆ ที่อยู่ในแฟ้มค่าตั้ง" #: ../utils/bonobo-activation-sysconf.c:273 msgid "Display path to configuration file" msgstr "แสดงพาธของแฟ้มค่าตั้ง" libbonobo-2.32.1/po/eo.po0000664000076400007640000003634711433015514012072 00000000000000# Esperanto translation of libbonobo. # Copyright (C) 2003 Free Software Foundation, Inc. # This file is distributed under the same license as the bonobo-activation package. # Charles Voelger , 2003. # Kristjan SCHMIDT , 2010. # msgid "" msgstr "" "Project-Id-Version: libbonobo 2.3.4\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=bonobo&component=libbonobo\n" "POT-Creation-Date: 2010-05-30 19:35+0000\n" "PO-Revision-Date: 2010-06-04 20:21+0100\n" "Last-Translator: Kristjan SCHMIDT \n" "Language-Team: Esperanto \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Launchpad-Export-Date: 2010-06-04 18:16+0000\n" "X-Generator: Launchpad (build Unknown)\n" #: ../activation-server/activation-context-corba.c:530 msgid "Couldn't find which child the server was listed in" msgstr "Ne eblis trovi kion idon la servilo estis listigita en" #: ../activation-server/activation-context-corba.c:822 msgid "Not a valid Activation ID" msgstr "Identigilo de aktivigo ne estas valida." #: ../activation-server/activation-server-main.c:174 msgid "Directory to read .server files from" msgstr "Dosierujo por legado de .server-dosierojn" #: ../activation-server/activation-server-main.c:174 msgid "DIRECTORY" msgstr "DOSIERUJO" #: ../activation-server/activation-server-main.c:177 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "Servi kiel ActivationContext (defaŭlto etas nur ObjectDirectory)" #: ../activation-server/activation-server-main.c:181 msgid "File descriptor to write IOR to" msgstr "Dosiera priskribisto skribi IOR al" #: ../activation-server/activation-server-main.c:181 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:184 msgid "Register as the user's activation server without locking. Warning: this option can have dangerous side effects on the stability of the user's running session, and should only be used for debugging purposes" msgstr "Registri kiel la aktiviga servilo de la uzanto sen ŝlosado. Averto: ĉi tiu opcio povas malutili la stabilecon de la nune rulante seanco, kaj estas sole por sencimigi" #: ../activation-server/activation-server-main.c:192 msgid "Query expression to evaluate" msgstr "Informmenda esprimo komputi" #: ../activation-server/activation-server-main.c:192 msgid "EXPRESSION" msgstr "ESPRIMO" #: ../activation-server/activation-server-main.c:541 #: ../utils/bonobo-activation-sysconf.c:305 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "Ruli '%s --help' por vidigi plenan liston de disponeblajn komandliniaj opciojn.\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "CORBA CosNaming servo." #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "Noma servo" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "Alnotiganta servo" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "Alnotiganta servo por aktivigo" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "Ni ankoraŭ ne traktas aktivigojn de shlib-a objektojn en fora procezo" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "The Bonobo Activation configuration file was not read successfully. Please, check it is valid in: %s" msgstr "La Bonobo-Activation-a agordodosiero legis malsukcese. Bonvolu, kontroli ke ĝi estas valida en : %s" #: ../activation-server/object-directory-load.c:102 msgid "a NULL iid is not valid" msgstr "nula IID ne estas valida" #: ../activation-server/object-directory-load.c:106 #, c-format msgid "iid %s has a NULL type" msgstr "IID '%s' havas nulan tipon" #: ../activation-server/object-directory-load.c:110 #, c-format msgid "iid %s has a NULL location" msgstr "IID '%s' havas nulan lokon" #: ../activation-server/object-directory-load.c:119 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "nevalida signo '%c' en IID '%s'" #: ../activation-server/object-directory-load.c:349 #, c-format msgid "Property '%s' has no value" msgstr "Eco '%s' havas neniu valoron" #: ../activation-server/object-directory-load.c:583 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "Ne povis legpartigi malbone formitan XML-an dokumenton %s" #: ../activation-server/object-directory-load.c:629 #, c-format msgid "Trying dir %s" msgstr "Provante dosierujon %s" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "Procezido ne donis erarmesaĝon, nekonata malsukcesego okazis" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "Malsukcesis dum legi de procezido : %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, c-format msgid "EOF from child process\n" msgstr "Dosierfino (EOF) de ida proceso\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:438 msgid "Couldn't spawn a new process" msgstr "Ne povis branĉiĝi al nova procezo" #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "File descriptor to print IOR on" msgstr "Dosiera priskribo presi IOR el" #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:399 msgid "IID to activate" msgstr "IID aktivigi" #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Prevent registering of server with OAF" msgstr "Preventi registri servilon per OAF" #: ../bonobo-activation/bonobo-activation-init.c:409 msgid "Bonobo Activation options:" msgstr "Bonobo-aj aktivigaj agordoj:" #: ../bonobo-activation/bonobo-activation-init.c:410 msgid "Show Bonobo Activation options" msgstr "Montri Bonobo-ajn Aktivigajn agordojn" #: ../bonobo-activation/bonobo-activation-init.c:518 msgid "Bonobo activation options" msgstr "Bonobo aktiviga agordo" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "g_module_open de '%s' malsukcesis kun '%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "Ne trovas simbolon Bonobo_Plugin_info en '%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "Fabrikejo '%s' revenis NULON por '%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Shlib-o '%s' ne enhavis '%s'" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "Nomo" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "Programa unika nomo" #: ../bonobo/bonobo-object.c:929 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:929 msgid "Custom CORBA POA" msgstr "Propra CORBA POA" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "Nesubtenata ago estis provinta" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "En/El-Eraro" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "Argumenta valoro ne estas valida" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "Ne trovis objekton" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "Sintakseraro en la objekt-priskribo" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "Ne povis aktivigi objekton de fabrikejo" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "Neniu permeso aliri datumfluon" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "Nesubtenata datumflu-ago estis provinta" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "En/El-Eraro ĉe la datumfluo" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "En/El-Eraro ĉe la memorilo" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "Nomo jam ekzistas en memorilo" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "Objekto ne torvita en memorilo" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "Neniu permeso fari memorio-agon" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "Nesubtenata memorilo-ago estis provinta" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "Objekto ne estas fluo" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "Objekto ne estas memorilo" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "Memorilo ne estas malplena" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "uzantointerfaca XML-priskribo estas malbonforma" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "malvalida vojo al XML uzantointerfaca elemento" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "la petita UI-a atributo ne ekzistis" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "Nekonataj komando aŭ verbo" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "Komando estas nesensiva" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "malĝusta datumtipo" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "datumfluo ne trovita" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "ne trovis atributon" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "atributo havas malvalidan tipon" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "atributo estas nurlega" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "servomodulo de agordodatumbazo malsukcesis " #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "Moniker-interfaco ne trovita" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "Moniker-Aktivigo pasis tempolimon" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "Sintakseraro en la moniker-o" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "Moniker-o havas nekonatan moniker-prefikson" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "Eraro dum la eraro-kontrolo; ne escepto" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "Ĝenerala aktivigo-eraro kun ne priskribo" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s'" msgstr "Malsukcesis eltrovi aŭ etendi '%s'" #: ../bonobo/bonobo-moniker-util.c:247 msgid "Failed to activate object" msgstr "Malsukcesis aktivigi objekton" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "Escepto dum aktivigas '%s'" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "Malsukcesis aktivigi '%s'" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "HTTP Moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "moniker-o de ORB-IOR-traktado" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "Normala Moniker-fabrikejo" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "moniker-o de ĝenerala OAF-aktivigo" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "moniker-o de ĝenerala OAF-demando" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "'nova' moniker-o de ĝenerala fabrikejo" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "moniker-o de ĝenerala ero" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "MonikerExtender de datumfluo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Fabrikejo de Bonobo-Echo-servilo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Ekzemplo-programo de Bonobo-Echo-servilo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Echo-a komponanto" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Fabrikejo de Echo-a komponanto" #: ../samples/echo/echo-client.c:24 msgid "I could not initialize Bonobo" msgstr "Mi ne povis prepari Bonobo-on" #: ../samples/echo/echo-client.c:35 msgid "Could not create an instance of the sample echo component" msgstr "Ne povis krei instancon de la ekzempla echo-a komponanto" #: ../samples/echo/echo-client.c:47 #, c-format msgid "An exception occurred '%s'" msgstr "Okazis escepton '%s'" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Could not save configuration file.\n" msgstr "Ne eblis sekurigi agordodosieron.\n" #: ../utils/bonobo-activation-sysconf.c:84 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "Bonvolu, certigu ke vi havas permesojn skribi al '%s'.\n" #: ../utils/bonobo-activation-sysconf.c:87 #, c-format msgid "Successfully wrote configuration file.\n" msgstr "Agordodosiero sukcese skribis.\n" #: ../utils/bonobo-activation-sysconf.c:104 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "agordodosiero estas :\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:146 #, c-format msgid "%s already in configuration file\n" msgstr "%s jam estas en la agordodosiero\n" #: ../utils/bonobo-activation-sysconf.c:166 #, c-format msgid "there is not a properly structured configuration file\n" msgstr "ne estas ĝusta struktura agordodosiero\n" #: ../utils/bonobo-activation-sysconf.c:237 #, c-format msgid "Bonobo-activation configuration file contains:\n" msgstr "Bonobo-activation-a agordodosiero enhavas :\n" #: ../utils/bonobo-activation-sysconf.c:267 msgid "Directory to remove from configuration file" msgstr "Dosierujo forigi el la agordodosiero" #: ../utils/bonobo-activation-sysconf.c:267 #: ../utils/bonobo-activation-sysconf.c:269 msgid "PATH" msgstr "VOJO" #: ../utils/bonobo-activation-sysconf.c:269 msgid "Directory to add to configuration file" msgstr "Dosierujo por aldoni al la agordodosiero" #: ../utils/bonobo-activation-sysconf.c:271 msgid "Display directories in configuration file" msgstr "Montri dosierujojn en agordodosiero" #: ../utils/bonobo-activation-sysconf.c:273 msgid "Display path to configuration file" msgstr "Montri vojon al la agordodosiero" libbonobo-2.32.1/po/nb.po0000664000076400007640000003661311546203545012072 00000000000000# Norwegian translation of libbonobo (bokmål dialect). # Copyright (C) 1999-2004 Free Software Foundation, Inc. # # Kjartan Maraas , 1999-2010. # Torstein Adolf Winterseth , 2010. msgid "" msgstr "" "Project-Id-Version: libbonobo 2.24.4\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug." "cgi?product=bonobo&component=libbonobo\n" "POT-Creation-Date: 2010-06-21 20:31+0000\n" "PO-Revision-Date: 2010-12-30 22:18+0100\n" "Last-Translator: Torstein Adolf Winterseth \n" "Language-Team: Norwegian Bokmål \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8-bit\n" "X-Generator: Lokalize 1.1\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" #: ../activation-server/activation-context-corba.c:530 msgid "Couldn't find which child the server was listed in" msgstr "Kunne ikke finne ut hvilket barn tjeneren var listet i" #: ../activation-server/activation-context-corba.c:822 msgid "Not a valid Activation ID" msgstr "Ikke en gyldig aktiverings-ID" #: ../activation-server/activation-server-main.c:174 msgid "Directory to read .server files from" msgstr "Katalog .server-filer skal lese fra" #: ../activation-server/activation-server-main.c:174 msgid "DIRECTORY" msgstr "KATALOG" #: ../activation-server/activation-server-main.c:177 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "" "Funger som en ActivationContext (standard oppførsel er å fungere kun som en " "ObjectDirectory)" #: ../activation-server/activation-server-main.c:181 msgid "File descriptor to write IOR to" msgstr "Fildeskriptor som IOR skal skrives til" #: ../activation-server/activation-server-main.c:181 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:184 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "" "Registrer som brukes aktiveringstjener uten låsing. Advarsel: dette " "alternativet kan har farlige sideeffekter i forhold til stabilitet i " "brukerens aktive økt og bør kun brukes ved feilsøking" #: ../activation-server/activation-server-main.c:192 msgid "Query expression to evaluate" msgstr "Uttrykk i spørring som skal evalueres" #: ../activation-server/activation-server-main.c:192 msgid "EXPRESSION" msgstr "UTTRYKK" #: ../activation-server/activation-server-main.c:541 #: ../utils/bonobo-activation-sysconf.c:305 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "" "Kjør «%s --help» for å se en full liste med tilgjengelige " "kommandolinjeflagg.\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "CORBA CosNaming-tjeneste." #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "Navnetjeneste" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "Meldingstjeneste" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "Meldingstjeneste for aktivering" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "" "Vi håndterer ikke aktivering av shlib-objekter i en ekstern prosess ennå" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "Bonobo Activation-konfigurasjonsfilen kunne ikke leses. Vennligs sjekk om " "den er gyldig i: %s" #: ../activation-server/object-directory-load.c:102 msgid "a NULL iid is not valid" msgstr "en NULL iid er ikke gyldig" #: ../activation-server/object-directory-load.c:106 #, c-format msgid "iid %s has a NULL type" msgstr "iid %s har en NULL type" #: ../activation-server/object-directory-load.c:110 #, c-format msgid "iid %s has a NULL location" msgstr "iid %s har en NULL plassering" #: ../activation-server/object-directory-load.c:119 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "ugyldig tegn '%c' i iid '%s'" #: ../activation-server/object-directory-load.c:349 #, c-format msgid "Property '%s' has no value" msgstr "Egenskap '%s' har ingen verdi" #: ../activation-server/object-directory-load.c:583 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "Kunne ikke lese ugyldig XML-dokument %s" #: ../activation-server/object-directory-load.c:629 #, c-format msgid "Trying dir %s" msgstr "Prøver katalog %s" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "Underprosess ga ingen feilmelding, ukjent feil oppsto" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "Feil under lesing fra underprosess: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, c-format msgid "EOF from child process\n" msgstr "Slutt på fil fra underprosess\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:438 msgid "Couldn't spawn a new process" msgstr "Kunne ikke starte en ny prosess" #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "File descriptor to print IOR on" msgstr "Fildeskriptor som IOR skal skrives til" #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:399 msgid "IID to activate" msgstr "IID som skal aktiveres" #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Prevent registering of server with OAF" msgstr "Forhindre registrering av tjener hos OAF" #: ../bonobo-activation/bonobo-activation-init.c:409 msgid "Bonobo Activation options:" msgstr "Alternativer for bonobo-activation:" #: ../bonobo-activation/bonobo-activation-init.c:410 msgid "Show Bonobo Activation options" msgstr "Vis alternativer for Bonobo Activation" #: ../bonobo-activation/bonobo-activation-init.c:518 msgid "Bonobo activation options" msgstr "Alternativer for bonobo-activation" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "g_module_open for «%s» feilet med «%s»" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "Kan ikke finne symbolet Bonobo_Plugin_info i «%s»" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "Fabrikk «%s» returnerte NULL for «%s»" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Shlib «%s» inneholdt ikke «%s»" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "Navn" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "Unikt navn for applikasjonen" #: ../bonobo/bonobo-object.c:929 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:929 msgid "Custom CORBA POA" msgstr "Egendefinert CORBA POA" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "En ustøttet handling ble forsøkt utført" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "I/U-feil" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "Ugyldig argumentverdi" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "Objekt ikke funnet" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "Syntaksfeil i objektbeskrivelsen" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "Kan ikke aktivere objekt fra factory" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "Ingen rettigheter til å aksessere stream" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "En ustøttet handling ble forsøkt utført på stream" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "I/U-feil på stream" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "I/U-feil på lagring" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "Navnet eksisterer allerede i lageret" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "Objekt ikke funnet i lageret" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "Ikke rettigheter til å utføre operasjon på lageret" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "En ustøttet handling ble forsøkt utført på lagring" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "Objekt er ikke en stream" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "Objekt er ikke et lager" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "Lageret er tomt" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "feilutformet XML-beskrivelse av brukergrensesnitt" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "ugyldig sti til XML-element for brukergrensesnitt" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "forespurt UI-attributt eksisterte ikke" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "Ukjent kommando eller verb" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "Kommandoen er ufølsom" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "inkorrekt datatype" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "stream ikke funnet" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "egenskap ikke funnet" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "egenskapen har en ugyldig type" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "egenskapen er skrivebeskyttet" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "feil i undersystemet for konfigurasjonsdatabasen" #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "Moniker-grensesnitt kan ikke finnes" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "Tidsavbrudd for moniker-aktivering" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "Syntaksfeil i moniker" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "Moniker har ukjent moniker-prefiks" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "Feil i feilsjekking; ingen unntak" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "Generell feil under aktivering uten beskrivelse" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s'" msgstr "Kunne ikke slå opp eller utvide «%s»" #: ../bonobo/bonobo-moniker-util.c:247 msgid "Failed to activate object" msgstr "Klarte ikke å aktivere objekt" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "Unntak ved aktiverering av «%s»" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "Klarte ikke å aktivere «%s»" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "HTTP-moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "Moniker for ORB IOR-håndtering" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "Standard moniker factory" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "vanlig aktiviseringsmoniker for Oaf" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "vanlig spørringsmoniker for Oaf" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "vanlig factory «new» moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "vanlig oppføringsmoniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "strøm MonikerExtender" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Bonobo factory for ekkotjener" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Eksempelprogram for Bonobo ekkotjener" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Ekko-komponent" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Factory for Ekko-komponent" #: ../samples/echo/echo-client.c:24 msgid "I could not initialize Bonobo" msgstr "Kunne ikke initialisere Bonobo" #: ../samples/echo/echo-client.c:35 msgid "Could not create an instance of the sample echo component" msgstr "Kunne ikke opprette en instans av eksempelkomponenten for ekko" #: ../samples/echo/echo-client.c:47 #, c-format msgid "An exception occurred '%s'" msgstr "Et unntak oppsto «%s»" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Could not save configuration file.\n" msgstr "Kunne ikke lagre konfigurasjonsfil.\n" #: ../utils/bonobo-activation-sysconf.c:84 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "Vennligst forsikre deg om at du har skriverettigheter til «%s».\n" #: ../utils/bonobo-activation-sysconf.c:87 #, c-format msgid "Successfully wrote configuration file.\n" msgstr "Fullført skriving av konfigurasjonsfil.\n" #: ../utils/bonobo-activation-sysconf.c:104 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "konfigurasjonsfil er:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:146 #, c-format msgid "%s already in configuration file\n" msgstr "%s er allerede i konfigurasjonsfilen\n" #: ../utils/bonobo-activation-sysconf.c:166 #, c-format msgid "there is not a properly structured configuration file\n" msgstr "det finnes ingen konfigurasjonsfil med korrekt struktur\n" #: ../utils/bonobo-activation-sysconf.c:237 #, c-format msgid "Bonobo-activation configuration file contains:\n" msgstr "Konfigurasjonsfil for bonobo-activation inneholder:\n" #: ../utils/bonobo-activation-sysconf.c:267 msgid "Directory to remove from configuration file" msgstr "Katalog som skal fjernes fra konfigurasjonsfilen" #: ../utils/bonobo-activation-sysconf.c:267 #: ../utils/bonobo-activation-sysconf.c:269 msgid "PATH" msgstr "STI" #: ../utils/bonobo-activation-sysconf.c:269 msgid "Directory to add to configuration file" msgstr "Katalog som skal legges til i konfigurasjonsfilen" #: ../utils/bonobo-activation-sysconf.c:271 msgid "Display directories in configuration file" msgstr "Vis kataloger i konfigurasjonsfilen" #: ../utils/bonobo-activation-sysconf.c:273 msgid "Display path to configuration file" msgstr "Vis sti til konfigurasjonsfil" libbonobo-2.32.1/po/ChangeLog0000644000076400007640000016303611173072711012676 000000000000002009-03-26 Shankar Prasad * kn.po: Updated Kannada translations. 2009-03-25 Shankar Prasad * kn.po: Added Kannada(kn) translations. * LINGUAS: Added kn to the list. 2009-03-18 Djihed Afifi * ar.po: Updated Arabic translation by Khaled Hosny. 2009-03-13 Ignacio Casal Quinteiro * gl.po: Updated Galician translation 2009-03-11 Ani Peter * ml.po: Updated Malayalam Translations 2009-03-07 Mișu Moldovan * ro.po: Updated Romanian translation. 2009-03-06 Rajesh Ranjan * hi.po: Updated Hindi Translation. ======================= 2.24.1 ====================== 2009-01-24 Raivis DEjus * lv.po: Updated Latvian translation. 2008-11-25 Priit Laes * et.po: Translation updated by Ivar Smolin 2008-10-19 Djihed Afifi * ar.po: Updated Arabic Translation by Khaled Hosny. 2008-09-30 Og Maciel * pt_BR.po: Updated Brazilian Portuguese translation by Vladimir Melo. ====================== 2.24.0 ==================== 2008-09-19 Mugurel Tudor * ro.po: Updated Romanian translation by Mişu Moldovan 2008-09-19 I. Felix * ta.po: Tamil Translation updated 2008-09-18 Djihed Afifi * ar.po: Updated Arabic Translation by Khaled Hosny. 2008-09-15 Krishnababu K * te.po: Updated Telugu Translation. 2008-09-15 Djihed Afifi * ar.po: Updated Arabic Translation by Khaled Hosny. 2008-09-12 Duarte Loreto * pt.po: Fixed Portuguese terminology. 2008-09-09 Robert Sedak * hr.po: Updated Croatian translation. 2008-08-25 Goran Rakic * LINGUAS, sr@latin.po, sr@Latn.po: Conversion from sr@Latn to sr@latin. ====================== 2.23.1 ======================= 2008-08-6 Djihed Afifi * ar.po: Updated Arabic Translation by Khaled Hosny. 2008-07-29 Djihed Afifi * ar.po: Updated Arabic Translation by Khaled Hosny. 2008-07-27 Leonardo Ferreira Fontenelle * pt_BR.po: Fixed translation of "lock" (by Vladimir Melo). 2008-07-25 Leonardo Ferreira Fontenelle * pt_BR.po: Terminology improvement by Vladimir Melo. 2008-07-16 Laurent Dhima * sq.po: Updated Albanian Translation. 2008-06-11 Djihed Afifi * ar.po: Updated Arabic Translation by Khaled Hosny. 2008-05-27 Badral Sanligiin * mn.po: Updated Mongolian Translation. 2008-05-22 Djihed Afifi * ar.po: Updated Arabic Translation by Khaled Hosny. 2008-05-19 Djihed Afifi * ar.po: Updated Arabic Translation by Khaled Hosny. 2008-04-15 Philip Withnall * en_GB.po: Fixed British English translation. 2008-03-18 Laurent Dhima * sq.po: Updated Albanian Translation. ======================== libbonobo 2.22.0 ======================== 2008-03-06 Marcel Telka * sk.po: Updated Slovak translation. 2008-02-26 Gabor Kelemen * hu.po: Translation updated 2008-02-16 Petr Kovar * cs.po: Updated Czech translation by Lucas Lommer. 2008-02-14 Ignacio Casal Quinteiro * gl.po: Updated Galician Translation. 2008-02-14 Pawan Chitrakar * ne.po: Updated Nepali Translation. 2008-02-05 Amitakhya Phukan * LINGUAS: Added as. * as.po: Updated assamese translations. 2008-01-31 Djihed Afifi * ar.po: Updated Arabic Translation by Khaled Hosny. ============================== 2.20.4 ========================= 2007-12-31 Yannig Marchegay * oc.po: Updated Occitan translation. 2008-01-22 Gil Forcada * ca.po: Updated Catalan translation. 2008-01-17 Claude Paroz * fr.po: Updated French translation by Robert-André Mauchin . 2007-12-31 Yannig Marchegay * oc.po: Updated Occitan translation. 2007-12-28 Rahul Bhalerao * mr.po: Added Marathi translations from Sandeep Shedmake. * LINGUAS: Added an entry for Marathi(mr). 2007-12-27 Inaki Larranaga Murgoitio * eu.po: Updated Basque translation. 2007-11-14 Matej Urbančič * sl.po: Updated Slovenian Translation. 2007-10-23 Djihed Afifi * ar.po: Updated Arabic Translation by Khaled Hosny. 2007-10-21 Djihed Afifi * ar.po: Updated Arabic Translation by Khaled Hosny. 2007-10-21 Djihed Afifi * ar.po: Updated Arabic Translation by Khaled Hosny. ============================== 2.20.1 ======================== 2007-10-15 Kjartan Maraas * nn.po: Updated Norwegian nynorsk translation. 2007-10-04 Theppitak Karoonboonyanan * th.po: Added Thai translation by aka.ape . * LINGUAS: Added 'th'. ============================== 2.20.0 ======================== 2007-09-17 Luca Ferretti * it.po: Updated Italian translation by Milo Casagrande. 2007-09-14 Khandakar Mujahidul Islam * bn.po: Updated Bengali Translation. 2007-09-13 Djihed Afifi * ar.po: Updated Arabic Translation by Khaled Hosny. 2007-09-03 Stéphane Raimbault * fr.po: Updated French translation. 2007-08-06 Ilkka Tuohela * fi.po: Updated Finnish translation. 2007-08-04 Ani Peter * ml.po: Updated Malayalam Translation 2007-05-15 Subhransu Behera * or.po: Updated Oriya Translation. 2007-04-15 Peter Bach * da.po: Updated Danish translation. 2007-04-15 Funda Wang * zh_CN.po: Updated Simplified Chinese translation from Yang Zhang. 2007-04-14 Djihed Afifi * ar.po: Updated Arabic Translation by Khaled Hosny. 2007-04-08 Baris Cicek * tr.po: Updated Turkish translation 2007-03-30 Inaki Larranaga Murgoitio * eu.po: Updated Basque translation. 2007-03-25 Ignacio Casal Quinteiro * gl.po: Updated Galician Translation. 2007-03-12 I Felix * ta.po: Updated Tamil Translation. 2007-03-11 Goran Rakić * sr.po, sr@Latn.po: Updated Serbian translation. 2007-03-11 Mugurel Tudor * ro.po: Updated Romanian translation by Mişu Moldovan 2007-03-07 Simos Xenitellis * el.po: Updated Greek translation. 2007-03-06 Laurent Dhima * sq.po: Updated Albanian translation. 2007-03-06 Jovan Naumovski * mk.po: Updated Macedonian translation. 2007-03-05 Runa Bhattacharjee * bn_IN.po: Updated Bengali India Translation. 2007-03-04 Pema Geyleg * dz.po: Updated Dzongkha Translation. 2007-03-04 Chao-Hsiung Liao * zh_HK.po: Updated Traditional Chinese translation(Hong Kong). * zh_TW.po: Updated Traditional Chinese translation(Taiwan). 2007-03-03 Vincent van Adrighem * nl.po: Translation updated by Tino Meinen. 2007-03-03 Leonid Kanter * ru.po: Updated Russian translation 2007-03-03 Gintautas Miliauskas * lt.po: Updated Lithuanian translation. 2007-03-02 Ankit Patel * gu.po: Updated Gujarati Translation. 2007-02-27 Gintautas Miliauskas * lt.po: Updated Lithuanian translation. 2007-02-25 Gabor Kelemen * hu.po: Translation updated. 2007-02-18 Artur Flinta * pl.po: Updated Polish translation by GNOME PL Team. 2007-02-13 Leonardo Ferreira Fontenelle * pt_BR.po: Updated Brazilian Portuguese translation. 2007-02-12 Ilkka Tuohela * fi.po: Updated Finnish translation. ============================= 2.17.91 ===================== 2007-02-8 Djihed Afifi * ar.po: Updated Arabic Translation by Khaled Hosny. 2007-02-06 Vincent van Adrighem * nl.po: Dutch translation updated by Tino Meinen. 2007-02-04 Changwoo Ryu * ko.po: Updated Korean translation. 2007-01-31 Duarte Loreto * pt.po: Updated Portuguese translation. 2007-01-28 Stéphane Raimbault * fr.po: Updated French translation. 2007-01-27 Takeshi AIHANA * ja.po: Updated Japanese translation. ========================== 2.17.90 ========================== 2007-01-22 Gustavo J. A. M. Carneiro * POTFILES.skip: Update list of files to skip for i18n scanning, to make newer intltool happy. 2007-01-21 Thierry Randrianiriana * mg.po: Added Malagasy translation. * LINGUAS: Added Malagasy (mg). 2007-01-18 Maxim Dziumanenko * uk.po: Update Ukrainian translation. 2007-01-17 Matic Zgur * sl.po: Updated Slovenian translation. 2007-01-14 Alexander Shopov * bg.po: Updated Bulgarian translation by Alexander Shopov 2007-01-11 Josep Puigdemont i Casamajó * ca.po: Updated Catalan translation. 2007-01-08 Priit Laes * et.po: Updated Estonian translation by Ivar Smolin. 2007-01-05 Yair Hershkovitz * he.po: Updated Hebrew translation. 2007-01-04 Hendrik Richter * de.po: Updated German translation. 2007-01-04 Clytie Siddall * vi.po: Updated Vietnamese translation. 2006-12-28 David Lodge * en_GB.po: Updated English (British) translation 2006-12-28 Adam Weinberger * en_CA.po: Updated Canadian English translation. 2006-12-27 Djihed Afifi * ar.po: Updated Arabic Translation. 2006-12-24 Djihed Afifi * ar.po: Updated Arabic Translation. 2006-12-18 Djihed Afifi * ar.po: Updated Arabic Translation. 2006-12-12 Daniel Nylander * sv.po: Updated Swedish translation. 2006-12-11 Francisco Javier F. Serrador * es.po: Updated Spanish translation. 2006-12-11 Kjartan Maraas * nb.po: Updated Norwegian bokmål translation. 2006-11-17 Francisco Javier F. Serrador * es.po: Updated Spanish translation. 2006-11-16 Ilkka Tuohela * fi.po: Updated Finnish translation. 2006-11-25 Vladimer Sichinava * ka.po: Updated Georgian translation. 2006-11-12 Djihed Afifi * ar.po: Updated Arabic Translation. 2006-11-12 Ankit Patel * gu.po: Updated Gujarati Translation. 2006-11-11 Daniel Nylander * sv.po: Updated Swedish translation. 2006-11-11 Djihed Afifi * ar.po: Updated Arabic Translation. 2006-11-10 Jovan Naumovski * mk.po: Updated Macedonian translation. 2006-10-26 Priit Laes * et.po: Translation updated by Ivar Smolin. 2006-10-22 Kjartan Maraas * LINGUAS: Add dz. * am.po: Updated all translations (except rw) after fixing * ar.po: a typo in a translated string. Should not break * az.po: string freeze (Bug #360360) * be.po: * bg.po: * bn.po: * bn_IN.po: * bs.po: * ca.po: * cs.po: * cy.po: * da.po: * de.po: * dz.po: * el.po: * en_CA.po: * en_GB.po: * eo.po: * es.po: * et.po: * eu.po: * fa.po: * fi.po: * fr.po: * ga.po: * gl.po: * gu.po: * he.po: * hi.po: * hr.po: * hu.po: * id.po: * is.po: * it.po: * ja.po: * ka.po: * ko.po: * ku.po: * li.po: * lt.po: * lv.po: * mk.po: * ml.po: * mn.po: * ms.po: * nb.po: * ne.po: * nl.po: * nn.po: * or.po: * pa.po: * pl.po: * pt.po: * pt_BR.po: * ro.po: * ru.po: * rw.po: * sk.po: * sl.po: * sq.po: * sr.po: * sr@Latn.po: * sv.po: * ta.po: * tr.po: * uk.po: * vi.po: * wa.po: * xh.po: * yi.po: * zh_CN.po: * zh_HK.po: * zh_TW.po: 2006-10-02 Priit Laes * et.po: Translation updated by Ivar Smolin. 2006-09-17 Priit Laes * et.po: Translation updated by Ivar Smolin. 2006-09-12 Luca Ferretti * it.po: Updated Italian translation. 2006-09-09 David Lodge * en_GB.po: Updated British English translation. 2006-09-08 Vladimer Sichinava * ka.po: Updated Georgian translation. ============================= 2.16.0 ====================== 2006-09-04 Kostas Papadimas * el.po: Updated Greek translation. 2006-09-04 Mugurel Tudor * ro.po: Updated Romanian translation by Mişu Moldovan 2006-09-03 Danilo Šegan * sr.po, sr@Latn.po: Updated by Goran Rakić. 2006-09-02 Åsmund Skjæveland * nn.po: Updated Norwegian Nynorsk translation. 2006-09-01 Runa Bhattacharjee * bn_IN.po: Fixed some typos. 2006-08-27 Gintautas Miliauskas * lt.po: Updated Lithuanian translation. 2006-08-26 Gabor Kelemen * hu.po: Translation updated. 2006-08-25 Raivis Dejus * lv.po: Updated Latvian translation. 2006-08-24 Leonid Kanter * ru.po: Updated Russian translation 2006-08-24 Josep Puigdemont i Casamajó * ca.po: Updated Catalan translation. 2006-08-23 Khandakar Mujahidul Islam * bn.po: Updated Bengali translation 2006-08-20 Ani Peter * ml.po: Updated Malayalam translation 2006-08-18 Duarte Loreto * pt.po: Updated Portuguese translation. 2006-08-16 Daniel Nylander * sv.po: Updated Swedish translation. 2006-08-16 Gabor Kelemen * hu.po: Translation updated. 2006-08-16 Artur Flinta * pl.po: Updated Polish translation by GNOME PL Team. ======================== 2.15.3 =========================== 2006-08-11 Matic Žgur * sl.po: Updated Slovenian translation. 2006-08-11 Hendrik Richter * de.po: Updated German translation. ============================= 2.15.2 ====================== 2006-08-08 Baris Cicek * tr.po: Updated Turkish Translation from Burcu Guzel 2006-08-08 Inaki Larranaga * eu.po: Fixed some typos. 2006-08-06 Chao-Hsiung Liao * zh_HK.po: Updated Traditional Chinese translation(Hong Kong). * zh_TW.po: Updated Traditional Chinese translation(Taiwan). 2006-08-04 Vincent van Adrighem * nl.po: Translation updated by Tino Meinen. 2006-08-01 Lucas Rocha * pt_BR.po: Updated Brazilian Portuguese translation by Leonardo Ferreira Fontenelle 2006-07-31 Maxim Dziumanenko * uk.po: Update Ukrainian translation. 2006-07-23 Takeshi AIHANA * ja.po: Updated Japanese translation. 2006-07-22 Yair Hershkovitz * he.po: Updated Hebrew translation. 2006-07-18 Runa Bhattacharjee * bn_IN.po: Updated Bengali India Translation. 2006-07-16 Benoît Dejean * fr.po: Updated French translation. 2006-07-03 Runa Bhattacharjee * bn_IN.po: Added Bengali India Translation. * LINGUAS: Added Bengali India (bn_IN) to the list of languages. 2006-06-29 Rhys Jones * cy.po: Updated Welsh translation. 2006-06-22 Benoît Dejean * fr.po: Updated French translation. 2006-06-10 Changwoo Ryu * ko.po: Updated Korean translation. 2006-06-06 Ilkka Tuohela * fi.po: Updated Finnish translation. 2006-05-29 Pema Geyleg * dz.po: Updated Dzongkha translation. 2006-05-24 Inaki Larranaga * eu.po: Updated Basque translation. 2006-05-21 Miloslav Trmac * cs.po: Updated Czech translation. 2006-05-21 Alexander Shopov * bg.po: Updated Bulgarian translation by Alexander Shopov 2006-05-06 Francisco Javier F. Serrador * es.po: Updated Spanish translation. 2006-04-30 Kjartan Maraas * nb.po: Updated Norwegian bokmål translation. 2006-04-30 Gora Mohanty * or.po: Added Oriya translation. 2006-04-18 Rajesh Ranjan * hi.po: Updated Hindi Translation. 2006-04-18 Ankit Patel * gu.po: Updated Gujarati Translation. 2006-04-17 Clytie Siddall * vi.po: Updated Vietnamese translation. 2006-04-10 Vladimer Sichinava * ka.po: Updated Georgian translation. 2006-04-07 Ignacio Casal Quinteiro * gl.po: Updated Galician Translation. 2006-03-13 Priit Laes * et.po: Translation updated by Ivar Smolin. 2006-03-13 Mugurel Tudor * ro.po: Updated Romanian translation by Mişu Moldovan 2006-03-06 Rajesh Ranjan * hi.po: Updated Hindi Translation. 2006-03-03 Gabor Kelemen * hu.po: Hungarian translation updated. 2006-03-03 Žygimantas Beručka * lt.po: Updated Lithuanian translation. 2006-02-26 Raphael Higino * pt_BR.po: Updated Brazilian Portuguese translation. 2006-02-25 Luca Ferretti * it.po: Updated Italian translation. 2006-02-25 Hendrik Brandt * de.po: Updated German translation. 2006-02-25 Artur Flinta * pl.po: Updated Polish translation by GNOME PL Team. 2006-02-21 Inaki Larranaga * eu.po: Updated Basque translation. 2006-02-20 Kostas Papadimas * el.po: Updated Greek translation. 2006-02-16 Maxim Dziumanenko * uk.po: Updated Ukrainian translation 2006-02-03 Rhys Jones * cy.po: Updated Welsh translation. 2006-02-02 Leonid Kanter * ru.po: Updated Russian translation 2006-01-31 Slobodan D, Sredojevic * sr.po, sr@Latn.po: Updated Serbian translation 2006-01-27 Duarte Loreto * pt.po: Updated Portuguese translation. 2006-01-28 Changwoo Ryu * ko.po: Updated Korean translation. 2006-01-21 Funda Wang * zh_CN.po: Updated Simplified Chinese translation. 2006-01-10 Abel Cheung * zh_HK.po: New Chinese (Hong Kong) translation * zh_TW.po: Updated Chinese (Taiwan) translation 2006-01-06 Josep Puigdemont i Casamajó * ca.po: Updated Catalan translation. 2005-12-26 Ilkka Tuohela * fi.po: Updated Finnish translation. 2005-12-21 Clytie Siddall * vi.po: Updated Vietnamese translation. 2005-12-11 Vincent van Adrighem * nl.po: Translation updated by Tino Meinen. 2005-12-02 Žygimantas Beručka * lt.po: Updated Lithuanian translation. 2005-11-21 Ales Nyakhaychyk * be.po: Updated Belarusian translation by Vital Khilko 2005-11-21 Alexander Shopov * bg.po: Updated Bulgarian translation by Alexander Shopov 2005-11-17 Laurent Dhima * sq.po: Updated Albanian translation. 2005-11-16 Takeshi AIHANA * ja.po: Updated Japanese translation. 2005-11-15 Kjartan Maraas * nb.po: Updated Norwegian bokmål translation. * no.po: Same. 2005-11-03 Miloslav Trmac * cs.po: Updated Czech translation. 2005-10-28 Erdal Ronahi * ku.po: Added Kurdish translation 2005-10-20 Runa Bhattacharjee * bn.po: Updated Bengali (bn) Translation by Mahay Alam Khan 2005-10-20 Ignacio Casal Quinteiro * gl.po: Updated Galician Translation. 2005-10-17 Martin Willemoes Hansen * da.po: Updated Danish translation. 2005-10-15 Vincent van Adrighem * nl.po: Translation updated. 2005-10-02 Marcel Telka * sk.po: Updated Slovak translation. 2005-10-01 Francisco Javier F. Serrador * es.po: Updated Spanish translation. 2005-10-01 Priit Laes * et.po: Translation updated by Ivar Smolin. 2005-10-01 Christian Rose * sv.po: Updated Swedish translation. 2005-09-30 Vincent van Adrighem * nl.po: Translation updated by Tino Meinen. 2005-09-30 Ankit Patel * gu.po: Updated Gujarati Translation. 2005-09-30 Adam Weinberger * en_CA.po: Updated Canadian English translation. 2005-09-18 Alessio Frusciante * it.po: Updated Italian translation. 2005-09-16 Clytie Siddall * vi.po: Updated Vietnamese translation. 2005-09-05 Baris Cicek * tr.po: Updated Turkish Translation 2005-09-05 Iñaki Larrañaga * eu.po: Updated Basque translation. 2005-09-04 Priit Laes * et.po: Translation updated by Ivar Smolin. 2005-09-03 Ignacio Casal Quinteiro * gl.po: Updated Galician Translation. 2005-09-01 Leonid Kanter * ru.po: Updated Russian translation 2005-08-30 Mohammad DAMT * id.po: Updated Indonesian translation. 2005-08-30 Changwoo Ryu * ko.po: Updated Korean translation. 2005-08-29 Takeshi AIHANA * ja.po: Updated Japanese translation. 2005-08-27 Clytie Siddall * vi.po: Updated Vietnamese translation. 2005-08-27 Christophe Merlet * fr.po: Updated French translation. 2005-08-26 Priit Laes * et.po: Translation updated by Ivar Smolin. 2005-08-25 Jordi Mallach * ca.po: Updated Catalan translation. 2005-08-23 Gabor Kelemen * hu.po: Hungarian translation updated. 2005-08-18 Rhys Jones * cy.po: Updated Welsh translation. 2005-08-16 Priit Laes * et.po: Translation updated by Ivar Smolin. 2005-08-15 Maxim Dziumanenko * uk.po: Updated Ukrainian translation 2005-08-15 Mugurel Tudor * ro.po: Updated Romanian translation by Mişu Moldovan 2005-08-15 Christian Rose * sv.po: Updated Swedish translation. 2005-07-28 Hendrik Brandt * de.po: Updated German translation. 2005-07-28 Yair Hershkovitz * he.po: Updated Hebrew translation. 2005-07-27 Priit Laes * et.po: Translation updated by Ivar Smolin. 2005-07-26 Artur Flinta * pl.po: Updated Polish translation by GNOME PL Team. 2005-07-21 Ankit Patel * gu.po: Updated Gujarati Translation. 2005-07-15 Yair Hershkovitz * he.po: Updated Hebrew translation 2005-07-12 Gabor Kelemen * hu.po: Hungarian translation updated. 2005-07-09 Alexander Shopov * bg.po: Updated Bulgarian translation by Alexander Shopov 2005-07-09 Danilo Šegan * sr.po, sr@Latn.po: Updated Serbian translation. 2005-07-01 Chao-Hsiung Liao * zh_TW.po: Updated Traditional Chinese translation. 2005-06-22 Abel Cheung * zh_TW.po: Fix language team reference. 2005-06-08 Martin Willemoes Hansen * da.po: Updated Danish translation. 2005-05-30 Funda Wang * zh_CN.po: Updated Simplified Chinese translation. 2005-05-29 Pawan Chitrakar * ne.po: Updated Nepali Translation 2005-05-19 Vincent van Adrighem * nl.po: Translation updated by Tino Meinen. 2005-05-04 Priit Laes * et.po: Translation updated by Ivar Smolin. 2005-05-03 Priit Laes * et.po: Translation updated by Ivar Smolin. 2005-04-12 Laurent Dhima * sq.po: Updated Albanian translation. 2005-04-07 Gareth Owen * en_GB.po: Updated British English translation. 2005-03-30 Steve Murphy * rw.po: Added Kinyarwanda translation. 2005-03-17 Adam Weinberger * en_CA.po: Updated Canadian English translation. 2005-02-25 Ankit Patel * gu.po: Updated Gujarati Translation. 2005-02-25 Miloslav Trmac * cs.po: Updated Czech translation. 2005-02-24 Francisco Javier F. Serrador * es.po: Updated Spanish translation. 2005-02-24 Simos Xenitellis * el.po: Updated Greek translation. 2005-02-23 Pauli Virtanen * fi.po: Updated Finnish translation. 2005-02-23 Žygimantas Beručka * lt.po: Updated Lithuanian translation. 2005-02-23 Kjartan Maraas * nb.po: Update * no.po: Update 2005-02-23 Marcel Telka * sk.po: Updated Slovak translation. 2005-02-23 Duarte Loreto * pt.po: Updated Portuguese translation. 2005-02-22 Adam Weinberger * en_CA.po: Updated Canadian English translation. 2005-02-22 Raphael Higino * pt_BR.po: Updated Brazilian Portuguese translation. 2005-02-21 Priit Laes * et.po: Translation updated by Ivar Smolin. 2005-02-20 Jordi Mallach * ca.po: Updated Catalan translation. 2005-02-17 Adi Attar * xh.po: Updated Xhosa translation. 2005-02-15 Dmitry G. Mastrukov * be.po: Updated Belarusian translation from Belarusian team . 2005-02-14 Priit Laes * et.po: Translation added by Ivar Smolin. 2005-02-08 Christian Rose * xh.po: Added Xhosa translation by Adi Attar . 2005-01-08 Alexander Shopov * bg.po: Updated Bulgarian translation by Alexander Shopov 2004-10-01 Abel Cheung * zh_TW.po: Updated traditional Chinese translation from GNOME HK Team 2004-09-13 Jesus Bravo Alvarez * gl.po: Updated Galician translation. 2004-09-05 Baris Cicek * tr.po: Updated Turkish Translation 2004-08-31 Francisco Javier F. Serrador * es.po: Updated Spanish translation. 2004-08-29 Pawan Chitrakar * ne.po: Updated Nepali Translation 2004-08-26 Laszlo Dvornik * hu.po: Updated Hungarian translation. 2004-08-20 Laurent Dhima * sq.po: Updated Albanian translation. 2004-08-18 Pauli Virtanen * fi.po: Updated Finnish translation. 2004-08-18 Laurent Dhima * sq.po: Updated Albanian translation. 2004-08-16 Christian Rose * bs.po: Added Bosnian translation by Kenan Hadžiavdić . 2004-08-13 Tommi Vainikainen * fi.po: Unified some fields in po headers for Finnish team. 2004-08-11 Kjartan Maraas * nb.po: Added correctly named Norwegian bokmål translation. 2004-08-09 Ankit Patel * gu.po: Updated Gujarati translation. 2004-08-09 Amanpreet Singh Alam * pa.po: Updated Panjabi translation. 2004-07-27 Alexander Shopov * bg.po: Updated Bulgarian translation by Rostislav "zbrox" Raykov 2004-07-24 Guntupalli Karunakar * hi.po: Updated Hindi translation. 2004-07-02 Pawan Chitrakar * ne.po: Updated Nepali Translation 2004-06-28 Laurent Dhima * sq.po: Translation updated. 2004-06-26 Pawan Chitrakar * ne.po: Added Nepali Translation by KU. 2004-04-16 Iñaki Larrañaga * eu.po: Added Basque translation. 2004-04-09 Guntupalli Karunakar * gu.po: Added Gujurati translation by Gujarati Team . 2004-04-07 Samúel Jón Gunnarsson * is.po: Updated Icelandic translation by Helgi Þormar Þorbjörnsson 2004-04-06 Pablo Saratxaga * wa.po: Updated Walloon file 2004-03-30 Adam Weinberger * en_CA.po: Added Canadian English translation. 2004-03-25 Gil Osher * he.po: Updated Hebrew translation. 2004-03-22 Åsmund Skjæveland * nn.po: Updated Norwegian Nynorsk translation. 2004-03-22 Guntupalli Karunakar * pa.po: Punjabi translation by Amanpreet Singh Alam . 2004-03-21 Alastair McKinstry * ga.po: Updated Irish translation. 2004-03-21 Åsmund Skjæveland * nn.po: Updated Norwegian Nynorsk translation. 2004-03-18 Mugurel Tudor * ro.po: Updated Romanian translation by Mişu Moldovan 2004-03-18 Nikos Charonitakis * el.po: Updated Greek translation. 2004-03-16 Gareth Owen * en_GB.po: Added British translations 2004-03-16 Gustavo Maciel Dias Vieira * pt_BR.po: Updated Brazilian Portuguese translation done by Estêvão Samuel Procópio . 2004-03-14 Robert Sedak * hr.po: Updated Croatian translation. 2004-03-10 Maxim Dziumanenko * uk.po: Updated Ukrainian translation 2004-03-10 Jordi Mallach * ca.po: Updated Catalan translation. 2004-03-08 Takeshi AIHANA * ja.po: Updated Japanese translation. 2004-03-07 Žygimantas Beručka * lt.po: Updated Lithuanian translation. 2004-03-06 Francisco Javier F. Serrador * es.po: Updated Spanish translation. 2004-03-03 Vincent van Adrighem * nl.po: Translation updated by Huib Kleinhout. 2004-03-01 Funda Wang * zh_CN.po: Updated Simplified Chinese translation. 2004-02-23 Kostas Papadimas * el.po: Updated Greek translation. 2004-02-23 Guntupalli Karunakar * ta.po: Updated Tamil translations by Dinesh Nadarajah 2004-02-20 Laurent Dhima * sq.po: Fixed Albanian translation. 2004-02-18 Andras Timar * hu.po: Updated Hungarian translation. 2004-02-18 Ole Laursen * da.po: Updated Danish translation. 2004-02-17 Sanlig Badral * mn.po: Updated Mongolian translation. 2004-02-12 Alessio Frusciante * it.po: Updated Italian translation. 2004-02-12 Laurent Dhima * sq.po: Updated Albanian translation. 2004-02-12 Danilo Šegan * sr.po, sr@Latn.po: Reviewed Serbian translation. 2004-02-11 Arafat Medini * ar.po: Updated Arabic translation. 2004-02-10 Pauli Virtanen * fi.po: Updated Finnish translation. 2004-02-09 Funda Wang * zh_CN.po: Updated Simplified Chinese translation. 2004-02-07 Robert Sedak * hr.po: Updated Croatian translation. 2004-02-05 Mətin Əmirov * az.po: Translation updated. 2004-02-02 Hasbullah Bin Pit * ms.po: Updated Malay translation. 2004-02-01 Duarte Loreto * pt.po: Updated Portuguese translation. 2004-01-31 Laurent Dhima * sq.po: Updated Albanian translation. 2004-01-31 Kjartan Maraas * no.po: Updated Norwegian translation. 2004-01-28 Marcel Telka * sk.po: Updated Slovak translation. 2004-01-28 Miloslav Trmac * cs.po: Fixed Czech translation. 2004-01-27 Åsmund Skjæveland * nn.po: Updated Norwegian Nynorsk translation. Fixed breakage due to forgotten CVS conflict marker. Sorry. 2004-01-21 Miloslav Trmac * cs.po: Updated Czech translation. 2004-01-21 Dmitry G. Mastrukov * ru.po: Updated Russian translation from Russian team . 2004-01-21 Changwoo Ryu * ko.po: Updated Korean translation. 2004-01-19 Christian Neumair * de.po: Updated German translation. 2004-01-19 Artur Flinta * pl.po: Updated Polish translation by GNOME PL Team. 2004-01-18 Francisco Javier F. Serrador * es.po: Updated Spanish translation. 2004-01-17 Kjartan Maraas * no.po: Updated Norwegian translation. 2004-01-17 Christian Rose * sv.po: Updated Swedish translation. 2004-01-17 Christophe Merlet * fr.po: Updated French translation. 2004-01-17 Danilo Šegan * sr.po, sr@Latn.po: Updated Serbian translation. 2004-01-16 Dafydd Harries * cy.po: Updated Welsh translation by Rhys Jones and myself. 2004-01-16 Laurent Dhima * sq.po: Updated Albanian translation. 2004.01.09 Arafat Medini * ar.po: Updated Arabic translation 2004-01-10 Changwoo Ryu * ko.po: Updated Korean translation. 2004-01-07 Sanlig Badral * mn.po; Updated Mongolian translation. 2004-01-06 Christian Neumair * de.po: Updated German translation. 2004-01-03 Roozbeh Pournader * fa.po: Updated Persian translation. 2004-01-02 Christophe Merlet * fr.po: Updated French translation. 2003-12-31 Žygimantas Beručka * lt.po: Updated Lithuanian translation by Tomas Kuliavas. 2003-12-29 Åsmund Skjæveland * nn.po: Updated Norwegian Nynorsk translation. 2003-12-29 Christian Rose * hr.po: Updated Croatian translation by Robert Sedak . 2003-12-27 Åsmund Skjæveland * nn.po: Updated Norwegian Nynorsk translation. 2003-12-24 Marcel Telka * sk.po: Updated Slovak translation. 2003-12-23 Artur Flinta * pl.po: Updated Polish translation. 2003-12-20 Arafat Medini * ar.po: Updated Arabic translation by removing faulty file. 2003-12-20 Arafat Medini * ar.po: Updated Arabic translation. 2003-12-20 Arafat Medini * ar.po: Updated Arabic translation. 2003-12-15 Vincent van Adrighem * nl.po: Dutch translation updated by Huib Kleinhout. 2003-12-14 Takeshi AIHANa * ja.po: Updated Japanese translation. 2003-12-14 Kjartan Maraas * no.po: Updated Norwegian translation. 2003-12-13 Christian Rose * sv.po: Updated Swedish translation. 2003-12-13 Francisco Javier F. Serrador * es.po: Updated Spanish translation 2003-12-12 Miloslav Trmac * cs.po: Updated Czech translation. 2003-12-11 Danilo Šegan * sr.po, sr@Latn.po: Updated Serbian translation. 2003-12-09 Duarte Loreto * pt.po: Updated Portuguese translation. 2003-12-07 Duarte Loreto * pt.po: Revised Portuguese translation. 2003-11-27 Duarte Loreto * pt.po: Updated Portuguese translation. 2003-11-27 Kjartan Maraas * no.po: Update Norwegian translation. 2003-11-25 Danilo Šegan * sr.po, sr@Latn.po: Updated Serbian translation. 2003-11-25 Miloslav Trmac * cs.po: Updated Czech translation. 2003-11-24 Gustavo J. A. M. Carneiro * POTFILES.in: Added bonobo/bonobo-application.c. 2003-11-13 Jordi Mallach * ca.po: Updated Catalan translation. 2003-10-06 Åsmund Skjæveland * nn.po: Update Norwegian (nynorsk) translation 2003-09-30 Gustavo Maciel Dias Vieira * pt_BR.po: Applied revision by Augusta Marques da Silva . 2003-09-28 Gediminas Paulauskas * lt.po: Added Lithuanian translation by Tomas Kuliavas. 2003-09-03 Kostas Papadimas * el.po: Updated Greek translation 2003-09-02 Mugurel Tudor * ro.po: Updated Romanian translation by Mişu Moldovan 2003-08-30 Dafydd Harries * cy.po: Updated Welsh translation. 2003-08-28 Pablo Gonzalo del Campo * es.po: Revision of Spanish translation by Francisco Javier F. Serrador . 2003-08-22 Sanlig Badral * mn.po: Updated Mongolian translation. 2003-08-18 Richard Allen * is.po: Added Icelandic translation. 2003-08-18 Kjartan Maraas * no.po: Update Norwegian translation. 2003-08-18 Metin Amiroff * az.po: Updated Azerbaijani translation. 2003-08-09 Wang Jian * zh_CN.po: Updated Simplified Chinese translation by Funda Wang . 2003-07-09 Guntupalli Karunakar * hi.po: Updated Hindi translation. 2003-07-25 Alessio Frusciante * it.po: Updated Italian translation. 2003-07-19 Abel Cheung * POTFILES.skip: Remove non-existant file(s). 2003-07-14 Pablo Gonzalo del Campo * es.po: Updated Spanish translation by Francisco Javier F. Serrador . 2003-07-10 Joel Brich * eo.po: Added Esperanto translation from Charles Voelger 2002-07-09 Andras Timar * hu.po: Updated Hungarian translation. 2003-07-01 Laurent Dhima * sq.po: Updated Albanian translation. 2003-06-30 Artur Flinta * pl.po: Updated Polish translation. 2003-06-23 Danilo Šegan * sr.po, sr@Latn.po: Updated Serbian translation by Serbian team (Prevod.org). 2003-06-22 Metin Amiroff * az.po: Updated Azerbaijani translation. 2003-06-19 Michael Meeks * POTFILES.skip: add. 2003-06-18 Ole Laursen * da.po: Updated Danish translation. 2003-06-18 Dmitry G. Mastrukov * ru.po: Updated Russian translation from Russian team . 2003-06-17 Pauli Virtanen * fi.po: Updated Finnish translation. 2003-06-16 Taneem Ahmed * bn.po: Added Bangla translation by Mahmudur Rahman of Ankur group . 2003-06-14 Vincent van Adrighem * nl.po: Dutch translation updated by Huib Kleinhout. 2003-06-12 Guntupalli Karunakar * ml.po: Update Malayalam translation. 2003-06-12 Mohammad DAMT * id.po: Updated Indonesian translation 2003-06-05 Mathieu van Woerkom * li.po: Added Limburgish translation 2003-06-04 Abel Cheung * ta.po: Fix broken encoding. 2003-05-31 Dafydd Harries * cy.po: Updated Welsh translation. 2003-05-27 Abel Cheung * zh_TW.po: Updated traditional Chinese translation. 2003-05-20 Telsa Gwynne * cy.po: Added Welsh translation from Dafydd Harries 2003-05-20 Dmitry G. Mastrukov * be.po: Updated Belarusian translation from Belarusian team . 2003-05-19 Dmitry G. Mastrukov * be.po: Updated Belarusian translation from Belarusian team . 2003-05-18 Evandro Fernandes Giovanini * pt_BR.po: Updated Brazilian Portuguese translation. 2003-05-06 KAMAGASAKO Masatoshi * ja.po: Updated Japanese translation. 2003-05-06 Marcel Telka * sk.po: Updated Slovak translation. 2003-05-05 Duarte Loreto * pt.po: Updated Portuguese translation. 2003-05-05 Christian Neumair * de.po: Updated German translation. 2003-05-05 Christian Rose * sr.po, sr@Latn.po: Added Serbian translation by Veljko M. Stanojević . 2003-05-05 KAMAGASAKO Masatoshi * ja.po: Updated Japanese translation. 2003-05-04 Christophe Merlet * fr.po: Updated French translation. 2003-05-01 Changwoo Ryu * ko.po: Updated Korean translation. 2003-04-29 Miloslav Trmac * cs.po: Updated Czech translation. 2003-04-29 Gil "Dolfin" Osher * he.po: Updated Hebrew translation. 2003-04-29 Abel Cheung * zh_TW.po: Updated traditional Chinese translation. 2003-04-29 Jordi Mallach * ca.po: Updated Catalan translation. 2003-04-29 Christian Rose * sv.po: Updated Swedish translation. 2003-04-21 Michael Meeks * POTFILES.in: add bonobo-object.c 2003-04-15 Abel Cheung * zh_TW.po: Updated traditional Chinese translation. 2003-04-07 Carlos Perell?³ Mar?­n * *.po: Merged the bonobo-activation translations with libbonobo ones. 2003-03-21 Guntupalli Karunakar * ml.po: Added Malayalam translation by FSF-India 2003-03-08 Christian Rose * eo.po: Added Esperanto translation by Charles Voelger . 2003-02-21 Metin Amiroff * az.po: Updated Azerbaijani translation. 2003-02-14 Dmitry G. Mastrukov * be.po: Updated Belarusian translation from Belarusian team . 2003-02-11 Fatih Demir * tr.po: Committed updated Turkish translation by Arman. 2003-02-06 Christian Rose * id.po: Added Indonesian translation by Mohammad Damt . 2003-02-06 Christian Rose * sv.po: Some fixes for problems catched in translation review. 2003-02-05 Abel Cheung * zh_TW.po: Updated traditional Chinese translation. 2003-02-02 Abel Cheung * zh_TW.po: Updated traditional Chinese translation. 2003-02-01 Duarte Loreto * pt.po: Updated Portuguese translation. 2003-01-28 Kostas Papadimas * el.po: Updated Greek translation 2003-01-24 Yuriy Syrota * uk.po: Updated Ukrainian translation 2003-01-22 Marius Andreiana * ro.po: added ( thanks to Mi?Ÿu Moldovan ) 2003-01-22 Christian Rose * mn.po: Added Mongolian translation by Sanlig Badral . 2003-01-21 Evandro Fernandes Giovanini * pt_BR.po: Updated Brazilian Portuguese translation. 2003-01-20 Pablo Saratxaga * vi.po: Updated Vietnamese file 2003-01-18 Abel Cheung * zh_TW.po: Updated traditional Chinese translation from Joe Man 2003-01-16 Daniel Yacob * am.po: Added Amharic translation. 2003-01-15 Pablo Saratxaga * vi.po: Updated Vietnamese file 2003-01-14 Yanko Kaneti * bg.po: Updated Bulgarian translation by Alexander Shopov , 2003-01-13 Vincent van Adrighem * nl.po: Dutch translation updated by Huib Kleinhout. 2003-01-13 Jordi Mallach * ca.po: Updated Catalan translation. 2003-01-12 Marcel Telka * sk.po: Updated Slovak translation. 2003-01-10 Christian Neumair * de.po: Updated German translation. 2003-01-09 Laurent Dhima * sq.po: Updated Albanian translation. 2003-01-09 Dmitry G. Mastrukov * ru.po: updated Russian translation from Russian team . 2003-01-07 German Poo-Caamano * es.po: Updated spanish translation 2003-01-05 Pauli Virtanen * fi.po: Updated Finnish translation. 2003-01-03 Gil "Dolfin" Osher * he.po: Updated Hebrew translation. 2002-01-03 Andras Timar * hu.po: Updated Hungarian translation. 2003-01-02 Christian Rose * sv.po: Updated Swedish translation. 2003-01-02 Christophe Merlet * fr.po: Updated French translation. 2003-01-03 Kjartan Maraas * no.po: Updated Norwegian (bokmal) translation. 2003-01-02 Zbigniew Chyla * pl.po: Updated Polish translation by GNOME PL Team . 2003-01-01 Ole Laursen * da.po: Updated Danish translation. 2003-01-01 Artis Trops * lv.po: Updated Latvian translation. 2003-01-01 Miloslav Trmac * cs.po: Updated Czech translation. 2003-01-01 Hasbullah Bin Pit * ms.po: Updated Malay translation. 2002-12-11 Pauli Virtanen * fi.po: Updated Finnish translation. 2002-11-25 Yanko Kaneti * *.po: Convert all to UTF-8. 2002-11-15 Laurent Dhima * sq.po: Added Albanian translation. 2002-11-11 Fatih Demir * ta.po: Committed updated Tamil translation by Dinesh. 2002-11-09 Dmitry G. Mastrukov * be.po: Updated Belarusian translation * from Belarusian team . 2002-11-09 Dmitry G. Mastrukov * be.po: Updated Belarusian translation * from Belarusian team . 2002-11-05 Simos Xenitellis * el.po: Updated Greek translation. 2002-09-30 Stanislav Brabec * cs.po: Added Czech translation from Michal Bukovjan . 2002-09-19 Fatih Demir * tr.po: Committed updated Turkish translation by Ömer. 2002-09-04 He Qiangqiang * zh_CN.po: Updated Simplified Chinese translation by Sun G11n . 2002-09-02 Peteris Krisjanis * lv.po (added): Latvian translation. 2002-08-24 Roozbeh Pournader * fa.po: Added Persian translation. 2002-08-17 Simos Xenitellis * el.po: Added Greek translation. 2002-08-13 Andras Timar * hu.po: Updated Hungarian translation. 2002-08-03 Christian Rose * sv.po: Merged those Sun changes that are sane. 2002-07-28 Christophe Merlet * fr.po: Updated French translation from contribution of Sun G11n . 2002-07-26 Gustavo Noronha Silva * pt_BR: Added Brazilian translation, by Evandro Fernandes Giovanini 2002-07-12 Jordi Mallach * ca.po: Updated Catalan translation. 2002-06-07 Jesus Bravo Alvarez * gl.po: Updated Galician translation from Manuel A. Fernandez Montecelo 2002-06-04 Zbigniew Chyla * pl.po: Updated Polish translation by GNOME PL Team . 2002-05-28 Hector Garcia Alvarez * es.po: updated spanish translation. 2002-05-19 Vlad Harchev * ru.po: updated russian translation from Dmitry G. Mastrukov . 2002-05-10 Pablo Saratxaga * vi.po: Added Vietnamese file 2002-05-10 Valek Filippov * ru.po: Updated russian translation from Dmitry Mastrukov. 2002-05-05 Duarte Loreto * pt.po: Updated Portuguese translation and converted to UTF-8. 2002-04-20 Christophe Merlet * fr.po: Updated French translation. 2002-04-15 Kjartan Maraas * no.po: Updated Norwegian (bokmål) translation. 2002-04-11 Christophe Merlet * fr.po: Updated French translation from work of Christophe fergeau . 2002-04-02 Valek Filippov * ru.po: Updated russian translation from Dmitry Mastrukov. 2002-03-16 Christian Meyer * de.po: Updated German translation. 2002-03-15 Valek Filippov * ru.po: Updated russian translation. 2002-03-13 Alexander Shopov * bg.po: Updated Bulgarian translation 2002-03-12 Christian Meyer * de.po: Updated German translation. 2002-03-11 Changwoo Ryu * ko.po: Added Korean translation. 2002-03-07 Valek Filippov * ru.po: Updated russian translation. 2002-03-06 Germán Poo-Caamaño * es.po: Updated spanish translation 2002-03-03 Kjartan Maraas * no.po: Updated Norwegian (bokmål) translation. 2002-03-01 Christian Meyer * de.po: Added German translation. 2002-02-25 Stanislav Visnovsky * sk.po: Updated Slovak translation from Marcel Telka . 2002-02-25 Hasbullah Bin Pit * ms.po: Updated Malay Translation. 2002-02-17 Wang Jian * zh_CN.po: Updated Simplified Chinese translation. 2002-02-12 Kjartan Maraas * no.po: Updated Norwegian (bokmål) translation. 2002-02-11 Zbigniew Chyla * pl.po: Added Polish translation by GNOME PL Team . 2002-02-10 Kjartan Maraas * no.po: Updated Norwegian (bokmål) translation. 2002-02-10 Duarte Loreto * pt.po: Updated Portuguese translation. 2002-02-09 Pauli Virtanen * fi.po: Added Finnish translation. 2002-02-08 Vincent van Adrighem * nl.po: Added Dutch translation (by Huib Kleinhout) 2002-01-30 Ole Laursen * da.po: Updated Danish translation and converted it to UTF-8. 2002-01-28 Alexander Shopov * bg.po: Added Bulgarian tranlsation. 2002-01-27 Emese Kovacs * hu.po: Added Hungarian translation. 2002-01-27 Christian Rose * sv.po: Updated and converted to UTF-8. 2002-01-18 Takayuki KUSANO * ja.po: Updated Japanese translation. 2002-01-16 Roy-Magne Mo * nn.po: Updated Norwegian (nynorsk) translation. 2001-12-27 Duarte Loreto * pt.po: Added portuguese translation 2001-12-27 Jesus Bravo Alvarez * gl.po: Added Galician translation. 2001-12-23 Takayuki KUSANO * ja.po: Added Japanese translation (imported from bonobo stable). 2001-12-13 Kjartan Maraas * no.po: Updated Norwegian (bokmål) translation. * POTFILES.in: Updated. 2001-12-11 Yuriy Syrota * uk.po: Added Ukrainian translation. 2001-12-04 Kjartan Maraas * no.po: Updated Norwegian (bokmål) translation. 2001-12-04 Christian Rose * sv.po: Updated Swedish translation. 2001-11-14 Kjartan Maraas * no.po: Updated Norwegian (bokmål) translation. 2001-11-13 Stanislav Visnovsky * sk.po: Updated Slovak translation from Marcel Telka . 2001-11-12 Darin Adler * .cvsignore: po2tbl.sed.in 2001-11-11 Wang Jian * zh_CN.po: Updated Simplified Chinese translation by Wang Jian. 2001-10-26 Fatih Demir * tr.po: Committed updated Turkish translation by Ömer. 2001-10-13 Valek Filippov * ru.po: Added russian translation. 2001-10-03 Abel Cheung * zh_TW.po: Updated traditional Chinese translation from Joe Man 2001-09-29 Fatih Demir * ta.po: Committed updated Tamil translation by Dinesh. 2001-09-28 Pablo Saratxaga * az.po: Updated Azeri file 2001-09-27 Kjartan Maraas * no.po: Updated Norwegian (bokmål) translation. * nn.po: Updated Norwegian (nynorsk) translation. 2001-09-27 Héctor García Álvarez * es.po: Updated Spanish translation. 2001-09-23 Fatih Demir * ta.po: Committed updated Tamil translation by Dinesh. * tr.po: Committed updated Turkish translation by Ömer. 2001-09-23 Héctor García Álvarez * es.po: Updated Spanish translation. 2001-09-22 Wang Jian * zh_CN.po: Added Simplified Chinese translation. (Merged from bonobo/po/zh_CN.po) 2001-09-20 gettextize * Makefile.in.in: Upgrade to gettext-0.10.39. 2001-09-20 Pablo Saratxaga * ca.po: Updated Catalan file 2001-09-19 Kjartan Maraas * no.po: Updated Norwegian (bokmål) translation. 2001-09-05 Pablo Saratxaga * az.po: Updated Azeri file * es.po: Corrected header 2001-09-02 Abel Cheung * zh_TW.po: Converted to UTF8. 2001-08-31 Abel Cheung * zh_TW.Big5.po: Rename to ...... * zh_TW.po: This. 2001-08-19 Stanislav Visnovsky * sk.po: Updated Slovak translation from Marcel Telka . 2001-08-19 Fatih Demir * ta.po: Committed updated Tamil translation. 2001-08-18 Pablo Saratxaga * az.po: Updated Azeri file 2001-08-16 Fatih Demir * tr.po: Added Turkish translation by Ömer. 2001-08-11 Kjartan Maraas * no.po: Updated Norwegian (bokmål) translation. 2001-08-08 Pablo Saratxaga * az.po: Updated Azeri file 2001-08-08 Stanislav Visnovsky * sk.po: Updated Slovak translation from Marcel Telka . 2001-08-07 Darin Adler * Makefile.in.in: Removed. The way we use cvs means that we don't want this checked in since it's made by autogen.sh. 2001-08-06 Darin Adler * .cvsignore: New generated file. 2001-08-05 Héctor García Álvarez * es.po: Updated Spanish translation. 2001-07-31 Abel Cheung * zh_TW.Big5.po: New traditional Chinese translation by Joe Man . * ChangeLog: Remove a bunch of useless gettextize messages. 2001-07-19 Michael Meeks * POTFILES.in: remove bonobo-object-directory.c 2001-07-07 Christopher R. Gabriel * it.po: Added italian translation. 2001-07-06 Christian Rose * sv.po: Added Swedish translation. 2001-06-26 Fatih Demir * ta.po: Added Tamil translation by Dinesh. 2001-06-19 Héctor García Álvarez * es.po: Updated Spanish translation. 2001-06-11 Stanislav Visnovsky * sk.po: Added Slovak translation from Marcel Telka . 2001-06-07 Pablo Saratxaga * no-po-screws-i18ntools.po: removed this empty file; now there are real po fles * az.po: Added Azeri file 2001-05-30 Christophe Merlet * fr.po: Added French translation. 2001-05-21 Kjartan Maraas * nn.po: Added Norwegian (nynorsk) translation. * no.po: Added Norwegian translation. * POTFILES.in: Populated this. libbonobo-2.32.1/po/bs.po0000644000076400007640000003757311173072711012076 00000000000000# translation of libbonobo to Bosnian # This file is distributed under the same license as the libbonobo package. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER, 2004. # Kenan Hadžiavdić , 2004. # msgid "" msgstr "" "Project-Id-Version: libbonobo.HEAD\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2006-10-22 16:55+0200\n" "PO-Revision-Date: 2004-03-04 22:12+0000\n" "Last-Translator: Kenan Hadžiavdić \n" "Language-Team: Bosnian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.0.2\n" #: ../activation-server/activation-context-corba.c:523 msgid "Couldn't find which child the server was listed in" msgstr "Nisam mogao pronaći u koji podređeni proces je uvršten server" #: ../activation-server/activation-context-corba.c:815 msgid "Not a valid Activation ID" msgstr "Nevažeći aktivacijski ID" #: ../activation-server/activation-server-main.c:162 msgid "Directory to read .server files from" msgstr "Direktorij iz kojeg će se čitati .server datoteke" #: ../activation-server/activation-server-main.c:162 msgid "DIRECTORY" msgstr "DIREKTORIJ" #: ../activation-server/activation-server-main.c:165 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "Služi kao ActivationContext (uobičajeno je samo kao ObjectDirectory)" #: ../activation-server/activation-server-main.c:169 msgid "File descriptor to write IOR to" msgstr "Deskriptor datoteke za upisivanje IOR-a" #: ../activation-server/activation-server-main.c:169 #: ../bonobo-activation/bonobo-activation-init.c:355 #: ../bonobo-activation/bonobo-activation-init.c:365 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:172 msgid "" "Register as the users' activation server without locking [!] for debugging" msgstr "" #: ../activation-server/activation-server-main.c:177 msgid "Query expression to evaluate" msgstr "Izraz upita za procjenu" #: ../activation-server/activation-server-main.c:177 msgid "EXPRESSION" msgstr "IZRAZ" #: ../activation-server/activation-server-main.c:426 #: ../utils/bonobo-activation-sysconf.c:304 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "Servis CORBA CosNaming." #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "Servis za imenovanje" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "Servis za obavijesti" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "Servis za obavijesti o aktiviranju" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "" "Još uvijek ne možemo rukovati aktiviranjem shlib objekata u udaljenom procesu" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "Datoteka s podešavanjima Bononobo aktiviranja nije uspješno učitana. Molim, " "provjerite da je važeća u: %s" #: ../activation-server/object-directory-load.c:101 msgid "a NULL iid is not valid" msgstr "iid NULL je nevažeći" #: ../activation-server/object-directory-load.c:105 #, c-format msgid "iid %s has a NULL type" msgstr "iid %s je tipa NULL" #: ../activation-server/object-directory-load.c:109 #, c-format msgid "iid %s has a NULL location" msgstr "iid %s ima NULL lokaciju" #: ../activation-server/object-directory-load.c:118 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "nevažeći znak '%c' u iid '%s'" #: ../activation-server/object-directory-load.c:348 #, c-format msgid "Property '%s' has no value" msgstr "Osobina '%s' nema vrijednost" #: ../activation-server/object-directory-load.c:580 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "Nisam mogao protumačiti neispravno oblikovani XML dokument %s" #: ../activation-server/object-directory-load.c:627 #, c-format msgid "Trying dir %s" msgstr "Pokušavam direktorij %s" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "" "Podređeni proces nije dao nikakvu poruku o grešci, dogodila se nepoznata " "greška" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "Neuspješno čitanje iz podređenog procesa: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, fuzzy msgid "EOF from child process\n" msgstr "Neuspješno čitanje iz podređenog procesa: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:435 #, fuzzy msgid "Couldn't spawn a new process" msgstr "Nisam mogao započeti novi proces" #: ../bonobo-activation/bonobo-activation-init.c:355 #: ../bonobo-activation/bonobo-activation-init.c:365 msgid "File descriptor to print IOR on" msgstr "Deskriptor datoteke na kojem će se ispisati IOR" #: ../bonobo-activation/bonobo-activation-init.c:357 #: ../bonobo-activation/bonobo-activation-init.c:367 msgid "IID to activate" msgstr "IID koji će se aktivirati" #: ../bonobo-activation/bonobo-activation-init.c:359 #: ../bonobo-activation/bonobo-activation-init.c:369 msgid "Prevent registering of server with OAF" msgstr "Spriječi registriranje servera na OAF-u" #: ../bonobo-activation/bonobo-activation-init.c:403 #, fuzzy msgid "Bonobo Activation" msgstr "Opcije za bonobo-activation" #: ../bonobo-activation/bonobo-activation-init.c:404 #, fuzzy msgid "Show Bonobo Activation options" msgstr "Opcije za bonobo-activation" #: ../bonobo-activation/bonobo-activation-init.c:512 msgid "Bonobo activation options" msgstr "Opcije za bonobo-activation" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "g_module_open od `%s' nije uspio sa `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "Ne mogu pronaći simbol Bonobo_Plugin_info u `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "Tvornica `%s' je vratila NIL za `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Shlib `%s' ne sadrži `%s'" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "Ime" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "Jedinstveno ime aplikacije" #: ../bonobo/bonobo-object.c:923 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:923 msgid "Custom CORBA POA" msgstr "Prilagođen CORBA POA" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "Pokušano je izvršenje nepodržane akcije" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "IO greška" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "Nevažeća vrijednost argumenta" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "Objekt nije pronađen" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "Sintaksna greška u opisu objekta" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "Ne mogu aktivirati objekt iz tvornice" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "Nije dozvoljen pristup na stream" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "Pokušano je izvršenje nepodržane stream akcije" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "IO greška na stream-u" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "IO greška na pohranjivanju" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "Ime je već pohranjeno" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "Objekt nije pohranjen u skladištu" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "Nije dozvoljeno izvršenje operacije u skladištu" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "Pokušano je izvršenje nepodržane akcije pohranjivanja" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "Objekt nije stream" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "Objekt nije skladište" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "Skladište nije prazno" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "pogrešno oblikovan XML opis korisničkog interfejsa" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "nevažeća putanja do XML elementa korisničkog interfejsa" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "traženi UI atribut ne postoji" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "Nepoznata naredba ili radnja" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "Naredba je neosjetljiva" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "neispravan tip podataka" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "stream nije pronađen" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "osobina nije pronađena" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "osobina je nevažećeg tipa" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "osobina je samo za čitanje" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "greška u podređenom sistemu baze podataka s podešavanjima" #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "Moniker interfejs nije pronađen" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "Isteklo vrijeme za aktiviranje monikera" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "Sintaksna greška unutar monikera" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "Moniker ima nepoznati moniker prefiks" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "Greška tokom provjere greške; bez izuzetka" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "Neodređena greška bez opisa na aktiviranju" #: ../bonobo/bonobo-generic-factory.h:79 ../bonobo/bonobo-generic-factory.h:83 msgid "Could not initialize Bonobo" msgstr "Nisam mogao inicijalizirati Bonobo" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s" msgstr "Nisam uspio razriješiti ili proširiti '%s" #: ../bonobo/bonobo-moniker-util.c:246 msgid "Failed to activate object" msgstr "Neuspješno aktiviranje objekta" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "Izuzeće tokom aktiviranja '%s'" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "Neuspješno aktiviranje '%s'" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "HTTP moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "moniker za rukovanje sa ORB IOR" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "Standardna Moniker tvornica" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "generički moniker za aktiviranje Oaf" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "generički Oaf moniker za upit" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "generička tvornica «new» monikera" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "generički moniker za stavke" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "stream MonikerExtender" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Bonobo tvornica Echo servera" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Uzorak programa Bonobo Echo servera" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Echo komponenta" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Tvornica Echo komponenti" #: ../samples/echo/echo-client.c:22 msgid "I could not initialize Bonobo" msgstr "Nisam mogao inicijalizirati Bonobo" #: ../samples/echo/echo-client.c:33 msgid "Could not create an instance of the sample echo component" msgstr "Nisam mogao napraviti primjerak uzorka echo komponente" #: ../samples/echo/echo-client.c:45 #, c-format msgid "An exception occurred '%s'" msgstr "Dogodilo se izuzeće '%s'" #: ../utils/bonobo-activation-sysconf.c:82 msgid "Could not save configuration file.\n" msgstr "Nisam mogao snimiti datoteku s podešavanjima.\n" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "Molim provjerite imate li dozvolu pisati u '%s'.\n" #: ../utils/bonobo-activation-sysconf.c:86 msgid "Successfully wrote configuration file.\n" msgstr "Uspješno zapisana datoteka s podešavanjima.\n" #: ../utils/bonobo-activation-sysconf.c:103 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "datoteka s podešavanjima je:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:145 #, c-format msgid "%s already in configuration file\n" msgstr "%s se već nalazi u datoteci s podešavanjima\n" #: ../utils/bonobo-activation-sysconf.c:165 msgid "there is not a properly structured configuration file\n" msgstr "nema pravilno strukturirane datoteke s podešavanjima\n" #: ../utils/bonobo-activation-sysconf.c:236 msgid "Bonobo-activation configuration file contains:\n" msgstr "Datoteka s podešavanjima za bonobo-activation sadrži:\n" #: ../utils/bonobo-activation-sysconf.c:266 msgid "Directory to remove from configuration file" msgstr "Direktorij koji će se ukloniti iz datoteke s podešavanjima" #: ../utils/bonobo-activation-sysconf.c:266 #: ../utils/bonobo-activation-sysconf.c:268 msgid "PATH" msgstr "" #: ../utils/bonobo-activation-sysconf.c:268 msgid "Directory to add to configuration file" msgstr "Direktorij koji će se dodati datoteci s podešavanjima" #: ../utils/bonobo-activation-sysconf.c:270 msgid "Display directories in configuration file" msgstr "Prikaži direktorije u datoteci s podešavanjima" #: ../utils/bonobo-activation-sysconf.c:272 msgid "Display path to configuration file" msgstr "Prikaži putanju do datoteke s podešavanjima" #~ msgid "Race condition activating server '%s'" #~ msgstr "«Race condition» tokom aktiviranja servera '%s'" #~ msgid "Child received signal %u (%s)" #~ msgstr "Podređeni proces je primio signal %u (%s)" #~ msgid "Unknown non-exit error (status is %u)" #~ msgstr "Nepoznata ne-fatalna greška (status je %u)" #~ msgid "bonobo-activation failed to set process group of %s: %s\n" #~ msgstr "bonobo-activation nije uspio postaviti procesnu grupu za %s: %s\n" #~ msgid "Failed to execute %s: %d (%s)\n" #~ msgstr "Neuspješno izvršenje %s: %d (%s)\n" #~ msgid "Too many alias levels for a locale, may indicate a loop" #~ msgstr "Previše alternativnih nivoa za locale, može ukazivati na petlju" #~ msgid "directory path" #~ msgstr "putanja do direktorija" libbonobo-2.32.1/po/or.po0000644000076400007640000005062711173072711012105 00000000000000# translation of libbonobo.HEAD.or.po to Oriya # Oriya translation of libbonobo. # Copyright (C) 2006, 2007, Free Software Foundation, Inc. # This file is distributed under the same license as the libbonobo package. # $Id: or.po,v 1.2 2006/10/22 15:14:09 kmaraas Exp $ # # Gora Mohanty , 2006. # Subhransu Behera , 2007. msgid "" msgstr "" "Project-Id-Version: libbonobo.HEAD.or\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-03-24 03:48+0000\n" "PO-Revision-Date: 2007-05-15 18:14+0530\n" "Last-Translator: Subhransu Behera \n" "Language-Team: Oriya \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.11.4\n" "Plural-Forms: Plural-Forms: nplurals=2; plural=(n!=1);\n\n" #: ../activation-server/activation-context-corba.c:525 msgid "Couldn't find which child the server was listed in" msgstr "ସେବକ କେଉଁ ନିର୍ଭରକରେ ତାଲିକାଭୂତ ହୋଇଥିଲା, ତାହା ମିଳିଲା ନାହିଁ" #: ../activation-server/activation-context-corba.c:817 msgid "Not a valid Activation ID" msgstr "ବୈଧ ସକ୍ରିୟଣ ପରିଚୟ ନୁହେଁ" #: ../activation-server/activation-server-main.c:162 msgid "Directory to read .server files from" msgstr "କେଉଁ ଡିରେକ୍ଟୋରିଠାରୁ .server ଫାଇଲ ପଢ଼ାଯିବ" #: ../activation-server/activation-server-main.c:162 msgid "DIRECTORY" msgstr "ଡିରେକ୍ଟୋରି" #: ../activation-server/activation-server-main.c:165 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "ସକ୍ରିୟଣ ପ୍ରସଙ୍ଗ ଭଳି କାର୍ଯ୍ଯ କରନ୍ତୁ (ପୂର୍ବନିର୍ଦ୍ଧାରିତ ଭାବରେ କେବଳ ବସ୍ତୁ ଡିରେକ୍ଟୋରି)" #: ../activation-server/activation-server-main.c:169 msgid "File descriptor to write IOR to" msgstr "କେଉଁ ଫାଇଲ ନିରୂପକକୁ ଆଇ.ଓ.ଆର. ଲେଖାଯିବ" #: ../activation-server/activation-server-main.c:169 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "FD" msgstr "ଏଫ.ଡି." #: ../activation-server/activation-server-main.c:172 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "" "ଚାଳକର ସକ୍ରିୟଣ ସେବକ ପରି ତାଳକନ ନ କରି ପଞ୍ଜୀକୃତ କରନ୍ତୁ। ଚେତାବନୀ: ଚାଳକର ଚଳନ୍ତି " "ଅଧିବେଶନର ସ୍ଥାୟିତ୍ବ ଉପରେ ଏହି ବିକଳ୍ପର ବିପଦଜନକ ପାର୍ଶ୍ବ ପ୍ରତିକ୍ରିୟା ଥାଇପାରେ, ଏବଂ ଏହାକୁ " "କେବଳ ତୃଟିମୁକ୍ତ ପ୍ରକ୍ରିୟା ପାଇଁ ବ୍ଯବହାର କରାଯିବା ଉଚିତ।" #: ../activation-server/activation-server-main.c:180 msgid "Query expression to evaluate" msgstr "ମୂଲ୍ଯାଙ୍କନ ପାଇଁ ପ୍ରଶ୍ନ ଅଭିବ୍ଯକ୍ତି" #: ../activation-server/activation-server-main.c:180 msgid "EXPRESSION" msgstr "ଅଭିବ୍ଯକ୍ତି" #: ../activation-server/activation-server-main.c:429 #: ../utils/bonobo-activation-sysconf.c:305 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "ଉପଲବ୍ଧ ପାଠ୍ଯ ନିର୍ଦ୍ଦେଶ ବିକଳ୍ପର ସମ୍ପୂର୍ଣ୍ଣ ତାଲିକା ପାଇଁ '%s --help' ଚଳାନ୍ତୁ.\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "କୋର୍ବା କସନାମ ସେବା" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "ନାମ ସେବା" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "ବିଜ୍ଞପ୍ତି ସେବା" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "ସକ୍ରିୟଣ ପାଇଁ ବିଜ୍ଞପ୍ତି ସେବା" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "ଦୂର ସଂସାଧନରେ ଶଲିବ ବସ୍ତୁର ସକ୍ରିୟଣ ବର୍ତ୍ତମାନ ଅସହାୟକ" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "ବନୋବୋ ସକ୍ରିୟଣ ବିନ୍ଯାସ ଫାଇଲଟି ଠିକ ଭାବେ ପଢ଼ିହେଲା ନାହିଁ. ଦୟା କରି ଯାଞ୍ଚ କରନ୍ତୁ କି ଏହା ବୈଧ: %s" #: ../activation-server/object-directory-load.c:102 msgid "a NULL iid is not valid" msgstr "ଶୂନ୍ଯ ଆଇ.ଆଇ.ଡି. ଅବୈଧ" #: ../activation-server/object-directory-load.c:106 #, c-format msgid "iid %s has a NULL type" msgstr "%s ଆଇ.ଆଇ.ଡି. ଖାଲି ପ୍ରକାରର" #: ../activation-server/object-directory-load.c:110 #, c-format msgid "iid %s has a NULL location" msgstr "%s ଆଇ.ଆଇ.ଡି.ର ଅବସ୍ଥାନ ଖାଲି" #: ../activation-server/object-directory-load.c:119 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "'%2$s' ଆଇ.ଆଇ.ଡି.ରେ ଅବୈଧ ଅକ୍ଷର '%1$c' ଅଛି" #: ../activation-server/object-directory-load.c:349 #, c-format msgid "Property '%s' has no value" msgstr "'%s' ଗୁଣଧର୍ମର କୌଣସି ମୂଲ୍ଯ ନାହିଁ" #: ../activation-server/object-directory-load.c:581 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "ଅବୈଧ ଏକ୍ସ.ଏମ.ଏଲ. ଦଲିଲ %s ବିଶ୍ଳେଷିତ କରିହେଲା ନାହିଁ" #: ../activation-server/object-directory-load.c:627 #, c-format msgid "Trying dir %s" msgstr "%s ଡିରେକ୍ଟୋରି ଚେଷ୍ଟା କରାଯାଉଛି" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "ନିର୍ଭରକ ସଂସାଧନ ତ୍ରୁଟି ସନ୍ଦେଶ ଦେଲାନାହିଁ, ଅଜଣା ତ୍ରୁଟି ଘଟିଲା" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "ନିର୍ଭରକ ସଂସାଧନଠାରୁ ପଢ଼ିହେଲା ନାହିଁ: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 msgid "EOF from child process\n" msgstr "ନିର୍ଭରକ ସଂସାଧନଠାରୁ ଆ.ଓ.ଏଫ.\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:434 msgid "Couldn't spawn a new process" msgstr "ନୂଆ ସଂସାଧନ ସୃଷ୍ଟି କରିହେଲା ନାହିଁ" #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "File descriptor to print IOR on" msgstr "କେଉଁ ଫାଇଲ ନିରୂପକକୁ ଆଇ.ଓ.ଆର. ଲେଖାଯିବ" #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:399 msgid "IID to activate" msgstr "ସକ୍ରିୟଣ ପାଇଁ ଆଇ.ଆଇ.ଡି." #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Prevent registering of server with OAF" msgstr "ଓ.ଏ.ଏଫ. ସହିତ ସେବକର ପଞ୍ଜୀକରଣକୁ ପ୍ରତିରୋଧ କରନ୍ତୁ" #: ../bonobo-activation/bonobo-activation-init.c:409 msgid "Bonobo Activation options:" msgstr "ବନୋବୋ ସକ୍ରିୟଣ ବିକଳ୍ପ:" #: ../bonobo-activation/bonobo-activation-init.c:410 msgid "Show Bonobo Activation options" msgstr "ବନୋବୋ ସକ୍ରିୟଣ ପସନ୍ଦ ଦେଖାନ୍ତୁ" #: ../bonobo-activation/bonobo-activation-init.c:518 msgid "Bonobo activation options" msgstr "ବନୋବୋ ସକ୍ରିୟଣ ପସନ୍ଦ" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "`%s'ର g_module_open ଅସଫଳ %s' ସହିତ" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "`%s'ରେ Bonobo_Plugin_info ପ୍ରତୀକ ମିଳିଲା ନାହିଁ" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "`%s' କାରଖାନା `%s' ପାଇଁ ଶୂନ୍ଯ ଫେରାଇଲା" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "`%s' ଶଲିବରେ `%s' ନାହିଁ" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "ନାମ" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "ପ୍ରୟୋଗର ଅନନ୍ଯ ନାମ" #: ../bonobo/bonobo-object.c:926 msgid "POA" msgstr "ପି.ଓ.ଏ." #: ../bonobo/bonobo-object.c:926 msgid "Custom CORBA POA" msgstr "ଇଚ୍ଛାରୂପ କୋର୍ବା ପି.ଓ.ଏ." #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "ଅସହାୟକ କାର୍ଯ୍ଯ ଚେଷ୍ଟା କରାହେଲା" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "ନିବେଶ/ନିର୍ଗମ ତ୍ରୁଟି" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "ଅବୈଧ ସ୍ବତନ୍ତ୍ରଚର ମୂଲ୍ଯ" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "ବସ୍ତୁ ମିଳିଲା ନାହିଁ" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "ବସ୍ତୁ ବର୍ଣ୍ଣନାରେ ବାକ୍ଯ ବିନ୍ଯାସ ତ୍ରୁଟି" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "କାରଖାନାଠାରୁ ବସ୍ତୁ ସକ୍ରିୟ କରିବେଲା ନାହିଁ" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "ଧାରା ପାଇଁ ପ୍ରବେଶାନୁମତି ନାହିଁ" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "ଅସହାୟକ ଧାରା କାର୍ଯ୍ଯ ଚେଷ୍ଟା କରାହେଲା" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "ଧାରାରେ ନିବେଶ/ନିର୍ଗମ ତ୍ରୁଟି" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "ଭଣ୍ଡାରରେ ନିବେଶ/ନିର୍ଗମ ତ୍ରୁଟି" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "ନାମ ଭଣ୍ଡାରରେ ପୂର୍ବରୁ ଅଛି" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "ଭଣ୍ଡାରରେ ବସ୍ତୁ ମିଳିଲା ନାହିଁ" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "ଭଣ୍ଡାରରେ ଚାଳନା ପାଇଁ ଅନୁମତି ନାହିଁ" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "ଅସହାୟକ ଭଣ୍ଡାର କାର୍ଯ୍ଯ ଚେଷ୍ଟା କରାହେଲା" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "ବସ୍ତୁ ଗୋଟିଏ ଧାରା ନୁହେଁ" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "ବସ୍ତୁ ଗୋଟିଏ ଭଣ୍ଡାର ନୁହେଁ" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "ଭଣ୍ଡାର ଖାଲି ନୁହେଁ" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "ଅବୈଧ ବ୍ଯବହାରକାରୀ ଅନ୍ତରାପୃଷ୍ଠର ଏକ୍ସ.ଏମ.ଏଲ. ବର୍ଣ୍ଣନା" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "ଏକ୍ସ.ଏମ.ଏଲ. ବ୍ଯବହାରକାରୀ ଅନ୍ତରାପୃଷ୍ଠ ଉପାଦାନକୁ ଅବୈଧ ପଥ" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "ଅନୁରୋଧ କରାଯାଇଥିବା ୟୁ.ଆଇ. ଗୁଣ ଅବସ୍ଥିତ ନୁହେଁ" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "ଅଜଣା ନିର୍ଦ୍ଦେଶ ବା କ୍ରିୟାପଦ" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "ନିର୍ଦ୍ଦେଶଟି ଅସମ୍ବେଦୀ" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "ଅବୈଧ ତଥ୍ଯ ପ୍ରକାର" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "ଧାରା ମିଳିଲା ନାହିଁ" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "ଗୁଣଧର୍ମ ମିଳିଲା ନାହିଁ" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "ଗୁଣଧର୍ମ ପ୍ରକାର ଅବୈଧ" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "ଗୁଣଧର୍ମ କେବଳ ପଠନୀୟ" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "ବିନ୍ଯାସ ତଥ୍ଯାଧାର ପଛକର୍ତ୍ତା ଅସଫଳ" #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "ନାମ ଅନ୍ତରାପୃଷ୍ଠ ମିଳିଲା ନାହିଁ" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "ନାମ ସକ୍ରିୟଣ ପାଇଁ ସମୟ ସମାପ୍ତ" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "ନାମରେ ବାକ୍ଯ ବିନ୍ଯାସ ତ୍ରୁଟି" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "ନାମରେ ଅଜଣା ନାମ ଉପସର୍ଗ ଅଛି" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "ତ୍ରୁଟି ଯାଞ୍ଚରେ ତ୍ରୁଟି; କୌଣସି ବ୍ଯତିକ୍ରମ ନାହିଁ" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "ବିନା ବର୍ଣ୍ଣନାର ସକ୍ରିୟଣ ତ୍ରୁଟି" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s" msgstr "'%s'କୁ ବିଭେଦନ କରିବା, ବା ତାହାର ଉନ୍ନତି କରିବାରେ ଅସଫଳ" #: ../bonobo/bonobo-moniker-util.c:247 msgid "Failed to activate object" msgstr "ବସ୍ତୁ ସକ୍ରିୟଣ ଅସଫଳ" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "'%s'ର ସକ୍ରିୟଣରେ ବ୍ଯତିକ୍ରମ" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "'%s' ସକ୍ରିୟ କରିହେଲା ନାହିଁ" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "ଏଚ.ଟି.ଟି.ପି. ନାମ" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "ଓ.ଆର.ବି. ଆି.ଓ.ଆର. ଚାଳନା ନାମ" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "ସାଧାରଣ ନାମ କାରଖାନା" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "ସାଧାରଣ ଓ.ଏ.ଏଫ. ସକ୍ରିୟଣ ନାମ" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "ସାଧାରଣ ଓ.ଏ.ଏଫ. ପ୍ରଶ୍ନ ନାମ" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "ସାଧାରଣ କାରଖାନା 'ନୂଆ' ନାମ" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "ସାଧାରଣ ବସ୍ତୁ ନାମ" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "ଧାରା ନାମ ଉନ୍ନତି" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "ବନୋବୋ ପ୍ରତିଧ୍ବନି ସେବକ କାରଖାନା" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "ବନୋବୋ ପ୍ରତିଧ୍ବନି ସେବକ କାରିକାର ନମୁନା" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "ପ୍ରତିଧ୍ବନି ଯନ୍ତ୍ରାଂଶ" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "ପ୍ରତିଧ୍ବନି ଯନ୍ତ୍ରାଂଶ କାରଖାନା" #: ../samples/echo/echo-client.c:24 msgid "I could not initialize Bonobo" msgstr "ବନୋବୋ ପ୍ରାରମ୍ଭ କରିହେଲା ନାହିଁ" #: ../samples/echo/echo-client.c:35 msgid "Could not create an instance of the sample echo component" msgstr "ଏହି ପ୍ରତିଧ୍ବନି ଯନ୍ତ୍ରାଂଶର ନମୁନା ସୃଷ୍ଟି କରିହେଲା ନାହିଁ" #: ../samples/echo/echo-client.c:47 #, c-format msgid "An exception occurred '%s'" msgstr "ଗୋଟିଏ ବ୍ଯତିକ୍ରମ ଘଟିଲା '%s'" #: ../utils/bonobo-activation-sysconf.c:83 msgid "Could not save configuration file.\n" msgstr "ବିନ୍ଯାସ ଫାଇଲ ସଞ୍ଚିତ କରିହେଲା ନାହିଁ.\n" #: ../utils/bonobo-activation-sysconf.c:84 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "ଦୟା କରି ସ୍ଥିର କରନ୍ତୁ କି ଆପଣଙ୍କର '%s'ରେ ଲେଖିବାକୁ ଅନୁମତି ଅଛି.\n" #: ../utils/bonobo-activation-sysconf.c:87 msgid "Successfully wrote configuration file.\n" msgstr "ବିନ୍ଯାସ ଫାଇଲ ଠିକ ଭାବରେ ଲେଖାଯାଇଛି.\n" #: ../utils/bonobo-activation-sysconf.c:104 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "ବିନ୍ଯାସ ଫାଇଲ ହେଲା:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:146 #, c-format msgid "%s already in configuration file\n" msgstr "%s ବିନ୍ଯାସ ଫାଇଲରେ ପୂର୍ବରୁ ଅଛି\n" #: ../utils/bonobo-activation-sysconf.c:166 msgid "there is not a properly structured configuration file\n" msgstr "ଠିକ ଭାବରେ ଗଠିତ ବିନ୍ଯାସ ଫାଇଲ ନାହିଁ\n" #: ../utils/bonobo-activation-sysconf.c:237 msgid "Bonobo-activation configuration file contains:\n" msgstr "ବନୋବୋ-ସକ୍ରିୟଣ ବିନ୍ଯାସ ଫାଇଲରେ ରହିଛି:\n" #: ../utils/bonobo-activation-sysconf.c:267 msgid "Directory to remove from configuration file" msgstr "ବିନ୍ଯାସ ଫାଇଲରୁ କାଢ଼ିବା ପାଇଁ ଡିରେକ୍ଟୋରି" #: ../utils/bonobo-activation-sysconf.c:267 #: ../utils/bonobo-activation-sysconf.c:269 msgid "PATH" msgstr "ପଥ" #: ../utils/bonobo-activation-sysconf.c:269 msgid "Directory to add to configuration file" msgstr "ବିନ୍ଯାସ ଫାଇଲରେ ଯୋଗ କରିବା ପାଇଁ ଡିରେକ୍ଟୋରି" #: ../utils/bonobo-activation-sysconf.c:271 msgid "Display directories in configuration file" msgstr "ବିନ୍ଯାସ ଫାଇଲରେ ଡିରେକ୍ଟୋରି ଦେଖାନ୍ତୁ" #: ../utils/bonobo-activation-sysconf.c:273 msgid "Display path to configuration file" msgstr "ବିନ୍ଯାସ ଫାଇଲକୁ ପଥ ଦେଖାନ୍ତୁ" libbonobo-2.32.1/po/ca.po0000644000076400007640000004220611373604303012042 00000000000000# libbonobo translation to Catalan. # Copyright © 2001-2007 Free Software Foundation, Inc. # Softcatalà , 2001. # Jordi Mallach , 2002, 2003, 2004, 2005, 2006, 2007. # msgid "" msgstr "" "Project-Id-Version: libbonobo 2.11.92\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2010-04-23 00:51+0200\n" "PO-Revision-Date: 2010-04-23 00:51+0200\n" "Last-Translator: Jordi Mallach \n" "Language-Team: Catalan \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../activation-server/activation-context-corba.c:530 msgid "Couldn't find which child the server was listed in" msgstr "No s'ha trobat en quin fill estava llistat el servidor" #: ../activation-server/activation-context-corba.c:822 msgid "Not a valid Activation ID" msgstr "No és un ID d'activació vàlid" #: ../activation-server/activation-server-main.c:176 msgid "Directory to read .server files from" msgstr "Directori d'on llegir fitxers .server" #: ../activation-server/activation-server-main.c:176 msgid "DIRECTORY" msgstr "DIRECTORI" #: ../activation-server/activation-server-main.c:179 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "" "Serveix com a un «ActivationContext» (per defecte és només un ObjectDirectory)" #: ../activation-server/activation-server-main.c:183 msgid "File descriptor to write IOR to" msgstr "Descriptor de fitxer on escriure l'IOR" #: ../activation-server/activation-server-main.c:183 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "FD" msgstr "DF" #: ../activation-server/activation-server-main.c:186 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "" "Registra com a servidor d'activació de l'usuari sense blocatge. Avís: " "aquesta opció pot tenir efectes laterals perillosos per a l'estabilitat de " "la sessió en execució de l'usuari, per tant, només s'hauria d'utilitzar per " "a la depuració" #: ../activation-server/activation-server-main.c:194 msgid "Query expression to evaluate" msgstr "Expressió de consulta a avaluar" #: ../activation-server/activation-server-main.c:194 msgid "EXPRESSION" msgstr "EXPRESSIÓ" #: ../activation-server/activation-server-main.c:547 #: ../utils/bonobo-activation-sysconf.c:305 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "" "Executeu «%s --help» per a veure una llista d'opcions completa de la línia " "d'ordres.\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "Servei «CosNaming» de CORBA." #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "Servei de noms" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "Servei de notificació" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "Servei de notificació per a l'activació" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "Encara no es gestiona l'activació d'objectes «shlib» en un procés remot" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "No s'ha llegit correctament el fitxer de la configuració de l'activació " "Bonobo correctament. Comproveu que és vàlid en: %s" #: ../activation-server/object-directory-load.c:102 msgid "a NULL iid is not valid" msgstr "Un iid nul no és vàlid" #: ../activation-server/object-directory-load.c:106 #, c-format msgid "iid %s has a NULL type" msgstr "L'iid %s té tipus nul" #: ../activation-server/object-directory-load.c:110 #, c-format msgid "iid %s has a NULL location" msgstr "L'iid %s té una ubicació nul·la" #: ../activation-server/object-directory-load.c:119 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "caràcter «%c» no vàlid a l'iid «%s»" #: ../activation-server/object-directory-load.c:349 #, c-format msgid "Property '%s' has no value" msgstr "La propietat «%s» no té valor" #: ../activation-server/object-directory-load.c:583 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "No s'ha pogut analitzar el document XML %s ja que està mal format" #: ../activation-server/object-directory-load.c:629 #, c-format msgid "Trying dir %s" msgstr "S'està provant el directori %s" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "" "El procés fill no ha donat un missatge d'error, s'ha produït un error " "desconegut" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "No s'ha pogut llegir del procés fill: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, c-format msgid "EOF from child process\n" msgstr "Final de fitxer del procés fill\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:438 msgid "Couldn't spawn a new process" msgstr "No s'ha pogut engendrar un procés nou" #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "File descriptor to print IOR on" msgstr "Descriptor de fitxer on escriure l'IOR" #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:399 msgid "IID to activate" msgstr "IDD a activar" #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Prevent registering of server with OAF" msgstr "Previngues el registre de servidors amb OAF" #: ../bonobo-activation/bonobo-activation-init.c:409 msgid "Bonobo Activation options:" msgstr "Opcions d'activació del Bonobo:" #: ../bonobo-activation/bonobo-activation-init.c:410 msgid "Show Bonobo Activation options" msgstr "Mostra les opcions d'activació de Bonobo" #: ../bonobo-activation/bonobo-activation-init.c:518 msgid "Bonobo activation options" msgstr "Opcions d'activació de Bonobo" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "Ha fallat la funció «g_module_open» de «%s» amb «%s»" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "No es pot trobar el símbol «Bonobo_Plugin_info» a «%s»" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "La fàbrica «%s» ha tornat NIL per a «%s»" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "La shlib «%s» no contenia «%s»" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "Nom" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "Nom únic de l'aplicació" #: ../bonobo/bonobo-object.c:929 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:929 msgid "Custom CORBA POA" msgstr "POA de CORBA personalitzat" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "S'ha intentat dur a terme una acció no permesa" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "S'ha produït un error d'entrada/sortida" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "Valor d'argument no vàlid" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "No s'ha trobat l'objecte" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "S'ha trobat un error de sintaxi en la descripció de l'objecte" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "No es pot activar l'objecte de la fàbrica" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "No hi ha permís per accedir al flux" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "S'ha intentat una acció de flux no permesa" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "S'ha produït un error d'entrada/sortida al flux" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "S'ha produït un error d'entrada/sortida en emmagatzemar" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "El nom ja existeix al magatzem" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "No s'ha trobat l'objecte al magatzem" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "No teniu permís per fer l'operació al magatzem" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "S'ha intentat una acció d'emmagatzematge no permesa" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "L'objecte no és un flux" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "L'objecte no és d'emmagatzemament" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "L'emmagatzemament no és buit" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "la descripció XML de la interfície està mal formada" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "camí no vàlid a l'element XML de la interfície d'usuari" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "no existeix l'atribut d'interfície gràfica requerit" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "Ordre o verb desconegut" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "L'ordre no és sensible" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "tipus de dades incorrecte" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "no s'ha trobat el flux" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "no s'ha trobat la propietat" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "la propietat té un tipus no vàlid" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "la propietat és només de lectura" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "ha fallat el rerefons de la base de dades de configuració " #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "No es pot trobar la interfície del sobrenom" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "S'ha excedit el temps d'activació del sobrenom" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "S'ha trobat un error de sintaxi dins del sobrenom" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "El sobrenom té un prefix desconegut" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "S'ha produït un error en comprovar l'error; cap excepció" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "S'ha produït un error general d'activació sense descripció" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s'" msgstr "No s'ha pogut resoldre o estendre «%s»" #: ../bonobo/bonobo-moniker-util.c:247 msgid "Failed to activate object" msgstr "No s'ha pogut activar l'objecte" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "Ha tingut lloc una excepció en activar «%s»" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "No s'ha pogut activar «%s»" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "Sobrenom HTTP" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "Sobrenom del gestor de l'IOR de l'ORB" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "Fàbrica de sobrenoms estàndard" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "sobrenom genèric d'activació OAF" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "sobrenom genèric de consulta OAF" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "sobrenom «nou» genèric de fàbrica" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "sobrenom genèric d'element" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "flux MonikerExtender" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Fàbrica del servidor d'eco del Bonobo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Programa d'exemple de servidor d'eco del Bonobo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Component d'eco" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Fàbrica de component d'eco" #: ../samples/echo/echo-client.c:24 msgid "I could not initialize Bonobo" msgstr "No s'ha pogut inicialitzar el Bonobo" #: ../samples/echo/echo-client.c:35 msgid "Could not create an instance of the sample echo component" msgstr "No s'ha pogut crear una instància de l'exemple del component d'eco" #: ../samples/echo/echo-client.c:47 #, c-format msgid "An exception occurred '%s'" msgstr "Ha tingut lloc una excepció «%s»" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Could not save configuration file.\n" msgstr "No s'ha pogut desar el fitxer de configuració.\n" #: ../utils/bonobo-activation-sysconf.c:84 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "Assegureu-vos que teniu permís per a escriure a «%s».\n" #: ../utils/bonobo-activation-sysconf.c:87 #, c-format msgid "Successfully wrote configuration file.\n" msgstr "S'ha desat el fitxer de configuració correctament.\n" #: ../utils/bonobo-activation-sysconf.c:104 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "el fitxer de configuració és:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:146 #, c-format msgid "%s already in configuration file\n" msgstr "%s ja és al fitxer de configuració\n" #: ../utils/bonobo-activation-sysconf.c:166 #, c-format msgid "there is not a properly structured configuration file\n" msgstr "no hi ha cap fitxer de configuració estructurat correctament\n" #: ../utils/bonobo-activation-sysconf.c:237 #, c-format msgid "Bonobo-activation configuration file contains:\n" msgstr "El fitxer de configuració de «bonobo-activation» conté:\n" #: ../utils/bonobo-activation-sysconf.c:267 msgid "Directory to remove from configuration file" msgstr "Directori a suprimir del fitxer de configuració" #: ../utils/bonobo-activation-sysconf.c:267 #: ../utils/bonobo-activation-sysconf.c:269 msgid "PATH" msgstr "CAMÍ" #: ../utils/bonobo-activation-sysconf.c:269 msgid "Directory to add to configuration file" msgstr "Directori a afegir al fitxer de configuració" #: ../utils/bonobo-activation-sysconf.c:271 msgid "Display directories in configuration file" msgstr "Mostra els directoris al fitxer de configuració" #: ../utils/bonobo-activation-sysconf.c:273 msgid "Display path to configuration file" msgstr "Mostra el camí al fitxer de configuració" #~ msgid "Could not initialize Bonobo" #~ msgstr "No s'ha pogut inicialitzar el Bonobo" #~ msgid "" #~ "Register as the users' activation server without locking [!] for debugging" #~ msgstr "" #~ "Registra com a servidor d'activació de l'usuari sense blocar [!] per a " #~ "depurar" #~ msgid "Bonobo Activation" #~ msgstr "Activació de Bonobo" # Condició de carrera... no sé un altra traducció per a "race condition". jm # (molt després...) en una traducció al castellà he vist "condició de fuga". jm #~ msgid "Race condition activating server '%s'" #~ msgstr "Condició de carrera en activar el servidor «%s»" #~ msgid "directory path" #~ msgstr "camí del directori" #~ msgid "Too many alias levels for a locale, may indicate a loop" #~ msgstr "Massa nivells d'àlies per al locale, pot indicar un bucle" #~ msgid "Child received signal %u (%s)" #~ msgstr "El fill ha rebut el senyal %u (%s)" #~ msgid "Unknown non-exit error (status is %u)" #~ msgstr "S'ha produït un error de no-sortida desconegut (l'estat és %u)" #~ msgid "bonobo-activation failed to set process group of %s: %s\n" #~ msgstr "" #~ "bonobo-activation no ha pogut establir el grup del procés de %s: %s\n" #~ msgid "Failed to execute %s: %d (%s)\n" #~ msgstr "No s'ha pogut executar %s: %d (%s)\n" libbonobo-2.32.1/po/mn.po0000644000076400007640000004411011173072711012065 00000000000000# translation of mn.po to Mongolian # This file is distributed under the same license as the PACKAGE package. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER. # # Sanlig Badral , 2003. # Sanlig Badral , 2003, 2004. # Sanlig Badral , 2004, 2008. msgid "" msgstr "" "Project-Id-Version: mn\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2008-05-27 22:24+0200\n" "PO-Revision-Date: 2008-05-27 22:34+0200\n" "Last-Translator: Badral \n" "Language-Team: Mongolian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.11.4\n" #: ../activation-server/activation-context-corba.c:527 msgid "Couldn't find which child the server was listed in" msgstr "Ямар хүү (процесс)сервер дотор жигсаагдсан мэдээлэл алга" #: ../activation-server/activation-context-corba.c:819 msgid "Not a valid Activation ID" msgstr "Хүчингүй идэвхжүүлэх дугаар (ID)" #: ../activation-server/activation-server-main.c:164 msgid "Directory to read .server files from" msgstr "Сервер файлууд уншигдах ёстой лавлах" #: ../activation-server/activation-server-main.c:164 msgid "DIRECTORY" msgstr "ЛАВЛАХ" #: ../activation-server/activation-server-main.c:167 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "ActivationContext -р гүйцэтгэх (Стандарт нь объект лавлах)" #: ../activation-server/activation-server-main.c:171 msgid "File descriptor to write IOR to" msgstr "IOR бичигдэх файлын тодорхойлогч" #: ../activation-server/activation-server-main.c:171 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:174 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "" "Хэрэглэгчийн идэвхжүүлэлт серверээр түгжээгүй бүртгүүлнэ үү. Сануулга: " "энэ үйлдэл ажиллаж байгаа суултын тогтворжуулалтанд сөргөөр нөлөөлөх " "магадлалтай тул зөвхөн алдааны шинжилгээнд хэрэглэнэ үү" #: ../activation-server/activation-server-main.c:182 msgid "Query expression to evaluate" msgstr "Үнэлэгдэх ёстой илэрхийлэл" #: ../activation-server/activation-server-main.c:182 msgid "EXPRESSION" msgstr "Илэрхийлэл" #: ../activation-server/activation-server-main.c:461 #: ../utils/bonobo-activation-sysconf.c:305 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "" "Тушаалын мөрийн сонголтыг бүрэн эхээр нь харахыг хүсвэл та '%s --help' гэж " "ажиллуулна уу.\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "CORBA-CosNaming-Үйлчилгээ." # CHECK #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "Нэрний үйлчилгээ" # CHECK #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "Сонордуулга үйлчилгээ" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "Идэвхжүүлэлт сонордуулгын үйлчилгээ" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "Бид алсын процесс доторх shlib-Объект идэвхжүүлэхийг авч үзэхгүй" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "Bonobo-Activation тохируулгын файл амжилттай уншигдсангүй. Та түүнийг " "хүчинтэй эсэхийг шалгана уу : %s" #: ../activation-server/object-directory-load.c:102 msgid "a NULL iid is not valid" msgstr "NULL iid хүчингүй байна" #: ../activation-server/object-directory-load.c:106 #, c-format msgid "iid %s has a NULL type" msgstr "IID %s NULL төрөлтэй байна" #: ../activation-server/object-directory-load.c:110 #, c-format msgid "iid %s has a NULL location" msgstr "IID %s NULL байрлалтай байна" #: ../activation-server/object-directory-load.c:119 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "Хүчингүй »%c« тэмдэгт iid »%s« дотор байна" #: ../activation-server/object-directory-load.c:349 #, c-format msgid "Property '%s' has no value" msgstr "»%s« аттрибутад утга алга" #: ../activation-server/object-directory-load.c:583 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "Муу хэлбэржүүлсэн %s XML баримтыг задлан ялгаж чадсангүй" #: ../activation-server/object-directory-load.c:629 #, c-format msgid "Trying dir %s" msgstr "%s лавлахаар оролд" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "Хүү процесс сонордуулга өгсөнгүй. Тодорхойгүй саатал гарлаа." #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "Хүү процесс уншигдсангүй: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, c-format msgid "EOF from child process\n" msgstr "Хүү процессоос EOF хүлээн авлаа\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:438 msgid "Couldn't spawn a new process" msgstr "Шинэ процессийг салаалж чадсангүй" #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "File descriptor to print IOR on" msgstr "IOR бичигдэх файлын тодорхойлогч" #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:399 msgid "IID to activate" msgstr "IID идэвхжүүлэх" #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Prevent registering of server with OAF" msgstr "OAF тай серверүүдийн бүртгэлээс зайлсхийх" #: ../bonobo-activation/bonobo-activation-init.c:409 msgid "Bonobo Activation options:" msgstr "Bonobo идэвхжүүлэлтийн тохируулга:" #: ../bonobo-activation/bonobo-activation-init.c:410 msgid "Show Bonobo Activation options" msgstr "Bonobo идэвхжүүлэлт тохируулга харуулах" #: ../bonobo-activation/bonobo-activation-init.c:518 msgid "Bonobo activation options" msgstr "Bonobo идэвхжүүлэлт сонголт" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "`%s'-н »g_module_open« модулыг нээхэд `%s' -тэй алдаа гарлаа" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "Символ Bonobo_Plugin_info »%s« дотроос олдсонгүй" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "»%s« үйлдвэр »%s« NIL -г буцаав" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "»%s« Shlib »%s« -г агуулаагүй байна" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "Нэр" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "Програмын давтагдашгүй нэр" #: ../bonobo/bonobo-object.c:926 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:926 msgid "Custom CORBA POA" msgstr "Хэвшмэл CORBA POA" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "Дэмжигдээгүй үйлдэл хийхийг оролдов" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "О/Г Алдаа" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "Аргументийн хүчингүй утга " #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "Объект олдсонгүй" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "Объектын тодорхойлолт доторх дүрмийн алдаа" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "Үйлдвэрээс объект идэвхжүүлэх боломжгүй" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "Урсгал(stream) руу хандах эрх алга" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "Дэмжигдээгүй үйлдэл урсгал(stream) дээр хийхийг оролдов" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "О/Г алдаа урсгал дотор" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "О/Г алдаа хадгалагч дээр" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "Нэр дискийн төхөөрөмж дээр хэдийнэ байна" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "Объект дискийн төхөөрөмж дээрээс олдохгүй байна" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "Дискийн төхөөрөмж дээр үйлдэл гүйцэтгэх эрх алга" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "Дэмжигдээгүй үйлдэл дискийн төхөөрөмж дээр хийхийг оролдов" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "Объект нь урсгал биш" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "Объект нь дискийн төхөөрөмж биш" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "Дискийн төхөөрөмж хоосон биш" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "Хүчингүй XML хэрэглэгчийн харьцах хэсгийн тодорхойлолт" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "XML хэрэглэгчийн харьцах хэсгийн (interface) элементийн хүчингүй зам " #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "Шаардсан UI-Аттрибут байхгүй байна" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "Тодорхойгүй тушаал эсвэл үг" # CHECK!! #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "Тушаал sensitive биш" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "Буруу өгөгдлийн төрөл" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "Урсгал олдсонгүй" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "Онцлог олдсонгүй" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "Онцлог хүчингүй төрөлтэй байна" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "Онцлог зөвхөн уншигдахаар байна" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "Өгөгдлийн бааз зохион байгуулагчийн тохируулга нурлаа" #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "Moniker-харьцах хэсэг олдсонгүй" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "Moniker идэвхжүүлэлт хугацаанаас хэтэрлээ" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "Moniker дотоод дүрмийн алдаа" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "Moniker -т тодорхойгүй Moniker угтвар(prefix) байна" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "Алдаа шалгаж байхад алдаа; Онцгой бус" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "Ерөнхий идэвхжүүлэлтийн тодорхойлолтгүй алдаа " #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s" msgstr "»%s« задрах эсвэл өргөтгөгдсөнгүй" #: ../bonobo/bonobo-moniker-util.c:247 msgid "Failed to activate object" msgstr "Objekt konnte nicht aktiviert werden" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "Онцгой алдаа идэвхэжлээ »%s«" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "»%s« идэвхэжсэнгүй" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "HTTP-Moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "ORB IOR-handling-Moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "Стандарт Moniker үйлдвэр" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "Ерөнхий OAF-идэвхжүүлэлт moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "Ерөнхий OAF-хүсэлтийн moniker" # CHECK #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "Ерөнхий »шинэ« үйлдвэр moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "Ерөнхий элемент moniker" # CHECK #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "урсгал MonikerExtender" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Bonobo Echo серверийн үйлдвэр" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Bonobo Echo-сервер жишээ программ" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Echo-бүрэлдхүүн" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Echo-бүрэлдхүүний үйлдвэр" #: ../samples/echo/echo-client.c:24 msgid "I could not initialize Bonobo" msgstr "Bonobo инициалицилагдах боломжгүй" #: ../samples/echo/echo-client.c:35 msgid "Could not create an instance of the sample echo component" msgstr "Жишээ echo бүрэлдхүүний объект (instance) үүссэнгүй" #: ../samples/echo/echo-client.c:47 #, c-format msgid "An exception occurred '%s'" msgstr "Онцгой алдаа гарлаа »%s«" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Could not save configuration file.\n" msgstr "Тохируулгын файл хадгалагдсангүй.\n" #: ../utils/bonobo-activation-sysconf.c:84 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "»%s« рүү бичихээр хандах эрх байгаа эсэхээ нягтална уу.\n" #: ../utils/bonobo-activation-sysconf.c:87 #, c-format msgid "Successfully wrote configuration file.\n" msgstr "Тохируулгын файл амжилттай бичигдлээ.\n" #: ../utils/bonobo-activation-sysconf.c:104 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "Тохируулгын файл нь:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:146 #, c-format msgid "%s already in configuration file\n" msgstr "%s хэдийнэ тохируулгын файлд байна\n" #: ../utils/bonobo-activation-sysconf.c:166 #, c-format msgid "there is not a properly structured configuration file\n" msgstr "Зөв бүтэцтэй тохируулгын файл алга\n" #: ../utils/bonobo-activation-sysconf.c:237 #, c-format msgid "Bonobo-activation configuration file contains:\n" msgstr "Bonobo-Activation тохируулгын файлын агуулга:\n" #: ../utils/bonobo-activation-sysconf.c:267 msgid "Directory to remove from configuration file" msgstr "Тохируулгын файлаас устгах ёстой лавлах" #: ../utils/bonobo-activation-sysconf.c:267 #: ../utils/bonobo-activation-sysconf.c:269 msgid "PATH" msgstr "ЗАМ" #: ../utils/bonobo-activation-sysconf.c:269 msgid "Directory to add to configuration file" msgstr "Тохируулгын файлд нэмэгдэх ёстой лавлах " #: ../utils/bonobo-activation-sysconf.c:271 msgid "Display directories in configuration file" msgstr "Тохируулгын файл доторх лавлахуудыг харуулах" #: ../utils/bonobo-activation-sysconf.c:273 msgid "Display path to configuration file" msgstr "Тохируулгын файлын замыг харуулах" libbonobo-2.32.1/po/fr.po0000664000076400007640000004075611433015514012075 00000000000000# French translation of libbonobo. # Copyright (C) 2001-2006 Free Software Foundation, Inc. # This file is distributed under the same license as the libbonobo package. # # Christophe Merlet (RedFox) , 2001-2005. # Christophe Fergeau 2002. # Sun G11n , 2002. # Gianni Moschini , 2006. # Benoît Dejean , 2006. # Jonathan Ernst , 2006. # Robert-André Mauchin , 2007. # Stéphane Raimbault , 2007 # msgid "" msgstr "" "Project-Id-Version: libbonobo HEAD\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?" "product=bonobo&component=libbonobo\n" "POT-Creation-Date: 2010-06-21 20:31+0000\n" "PO-Revision-Date: 2010-08-06 22:57+0200\n" "Last-Translator: Claude Paroz \n" "Language-Team: GNOME French Team \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../activation-server/activation-context-corba.c:530 msgid "Couldn't find which child the server was listed in" msgstr "" "Impossible de déterminer dans quel processus fils était listé le serveur" #: ../activation-server/activation-context-corba.c:822 msgid "Not a valid Activation ID" msgstr "N'est pas un identifiant d'activation valide" #: ../activation-server/activation-server-main.c:174 msgid "Directory to read .server files from" msgstr "Répertoire dans lequel lire les fichiers .server" #: ../activation-server/activation-server-main.c:174 msgid "DIRECTORY" msgstr "RÉPERTOIRE" #: ../activation-server/activation-server-main.c:177 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "" "Sert comme ActivationContext (par défaut, uniquement comme ObjectDirectory)" #: ../activation-server/activation-server-main.c:181 msgid "File descriptor to write IOR to" msgstr "Descripteur de fichier dans lequel écrire IOR" #: ../activation-server/activation-server-main.c:181 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:184 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "" "S'enregistrer en tant que serveur d'activation de l'utilisateur sans " "verrouillage. Attention : cette option peut avoir des effets secondaires sur " "la stabilité des sessions des utilisateurs et devrait être utilisée " "uniquement pour des besoins de débogage" #: ../activation-server/activation-server-main.c:192 msgid "Query expression to evaluate" msgstr "Expression de requête à évaluer" #: ../activation-server/activation-server-main.c:192 msgid "EXPRESSION" msgstr "EXPRESSION" #: ../activation-server/activation-server-main.c:541 #: ../utils/bonobo-activation-sysconf.c:305 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "" "Exécutez « %s --help » pour voir la liste complète des options en ligne de " "commande.\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "Service CORBA CosNaming." #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "Service de noms" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "Service de notification" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "Service de notification pour l'activation" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "" "L'activation d'objets shlib dans un processus distant n'est pas prise en " "charge pour le moment" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "Impossible de lire le fichier de configuration d'activation de Bonobo. " "Vérifiez qu'il est valide dans : %s" #: ../activation-server/object-directory-load.c:102 msgid "a NULL iid is not valid" msgstr "un iid NULL n'est pas valide" #: ../activation-server/object-directory-load.c:106 #, c-format msgid "iid %s has a NULL type" msgstr "l'iid %s a un type NULL" #: ../activation-server/object-directory-load.c:110 #, c-format msgid "iid %s has a NULL location" msgstr "l'iid %s a un emplacement NULL" #: ../activation-server/object-directory-load.c:119 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "caractère non valide « %c » dans l'iid « %s »" #: ../activation-server/object-directory-load.c:349 #, c-format msgid "Property '%s' has no value" msgstr "La propriété « %s » n'a pas de valeur" #: ../activation-server/object-directory-load.c:583 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "Impossible d'analyser le document XML non conforme %s" #: ../activation-server/object-directory-load.c:629 #, c-format msgid "Trying dir %s" msgstr "Tente le répertoire %s" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "" "Le processus fils n'a pas renvoyé de message d'erreur, une erreur inconnue " "s'est produite" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "La lecture depuis le processus fils a échoué : %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, c-format msgid "EOF from child process\n" msgstr "EOF depuis le processus fils\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:438 msgid "Couldn't spawn a new process" msgstr "Impossible de cloner un nouveau processus" #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "File descriptor to print IOR on" msgstr "Descripteur de fichier où imprimer IOR" #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:399 msgid "IID to activate" msgstr "IID à activer" #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Prevent registering of server with OAF" msgstr "Empêche l'enregistrement du serveur avec OAF" #: ../bonobo-activation/bonobo-activation-init.c:409 msgid "Bonobo Activation options:" msgstr "Options d'activation de Bonobo :" #: ../bonobo-activation/bonobo-activation-init.c:410 msgid "Show Bonobo Activation options" msgstr "Affiche les options d'activation de Bonobo" #: ../bonobo-activation/bonobo-activation-init.c:518 msgid "Bonobo activation options" msgstr "Options d'activation de Bonobo" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "g_module_open de « %s » a échoué avec « %s »" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "Impossible de trouver le symbole Bonobo_Plugin_info dans « %s »" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "Le fabrique « %s » a renvoyé NIL pour « %s »" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Shlib « %s » ne contenait pas « %s »" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "Nom" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "Nom unique de l'application" #: ../bonobo/bonobo-object.c:929 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:929 msgid "Custom CORBA POA" msgstr "POA Corba personnalisé" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "Une action non prise en charge a été tentée" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "Erreur d'E/S" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "Valeur de paramètre non valide" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "Objet non trouvé" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "Erreur de syntaxe dans la description de l'objet" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "Impossible d'activer l'objet depuis la fabrique" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "Aucune permission d'accéder à ce flux" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "Une action de flux non prise en charge a été tentée" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "Erreur d'E/S sur le flux" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "Erreur d'E/S sur le stockage" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "Le nom existe déjà dans le stockage" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "Objet non trouvé dans le stockage" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "Aucune permission d'effectuer cette opération sur le stockage" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "Une action de stockage non prise en charge a été tentée" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "L'objet n'est pas un flux" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "L'objet n'est pas un stockage" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "Le stockage n'est pas vide" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "description XML d'interface utilisateur non conforme" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "chemin non valide vers un élément d'interface utilisateur XML" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "l'attribut d'interface utilisateur demandé n'existe pas" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "Commande ou verbe inconnu" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "La commande est insensible" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "type de donnée incorrect" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "flux introuvable" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "propriété non trouvée" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "la propriété a un type non valide" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "la propriété est en lecture seule" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "le moteur de base de données de configuration a échoué" #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "L'interface moniker est introuvable" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "Délai d'activation du moniker dépassé" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "Erreur de syntaxe dans le moniker" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "Le moniker a un préfixe de moniker inconnu" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "Erreur de vérification d'erreur ; aucune exception" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "Erreur générale d'activation sans description" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s'" msgstr "Impossible de résoudre ou d'étendre « %s »" #: ../bonobo/bonobo-moniker-util.c:247 msgid "Failed to activate object" msgstr "Impossible d'activer l'objet" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "Exception lors de l'activation de « %s »" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "L'activation de « %s » a échoué" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "Moniker HTTP" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "Moniker de gestion des ORB IOR" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "Fabrique du Moniker standard" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "moniker d'activation Oaf générique" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "moniker d'interrogation Oaf générique" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "« nouveau » moniker de fabrique générique" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "moniker d'élément générique" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "MonikerExtender de flux" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Fabrique de serveur Bonobo Echo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Programme d'exemple du serveur Bonobo Echo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Composant Echo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Fabrique de composant Echo" #: ../samples/echo/echo-client.c:24 msgid "I could not initialize Bonobo" msgstr "Impossible d'initialiser Bonobo" #: ../samples/echo/echo-client.c:35 msgid "Could not create an instance of the sample echo component" msgstr "Impossible de créer une instance du composant d'exemple Echo" #: ../samples/echo/echo-client.c:47 #, c-format msgid "An exception occurred '%s'" msgstr "Une exception s'est produite « %s »" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Could not save configuration file.\n" msgstr "Impossible d'enregistrer le fichier de configuration.\n" #: ../utils/bonobo-activation-sysconf.c:84 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "" "Veuillez vous assurez que vous disposez des droits pour écrire sur « %s ».\n" #: ../utils/bonobo-activation-sysconf.c:87 #, c-format msgid "Successfully wrote configuration file.\n" msgstr "Fichier de configuration écrit avec succès.\n" #: ../utils/bonobo-activation-sysconf.c:104 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "fichier de configuration :\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:146 #, c-format msgid "%s already in configuration file\n" msgstr "%s est déjà dans le fichier de configuration.\n" #: ../utils/bonobo-activation-sysconf.c:166 #, c-format msgid "there is not a properly structured configuration file\n" msgstr "il n'y a pas de fichier de configuration correctement structuré\n" #: ../utils/bonobo-activation-sysconf.c:237 #, c-format msgid "Bonobo-activation configuration file contains:\n" msgstr "Le fichier de configuration de l'activation de Bonobo contient :\n" #: ../utils/bonobo-activation-sysconf.c:267 msgid "Directory to remove from configuration file" msgstr "Répertoire à retirer du fichier de configuration" #: ../utils/bonobo-activation-sysconf.c:267 #: ../utils/bonobo-activation-sysconf.c:269 msgid "PATH" msgstr "CHEMIN" #: ../utils/bonobo-activation-sysconf.c:269 msgid "Directory to add to configuration file" msgstr "Répertoire à ajouter au fichier de configuration" #: ../utils/bonobo-activation-sysconf.c:271 msgid "Display directories in configuration file" msgstr "Affiche les répertoires du fichier de configuration" #: ../utils/bonobo-activation-sysconf.c:273 msgid "Display path to configuration file" msgstr "Affiche le chemin du fichier de configuration" #~ msgid "Could not initialize Bonobo" #~ msgstr "Impossible d'initialiser Bonobo" libbonobo-2.32.1/po/gl.po0000664000076400007640000004056311433015514012064 00000000000000# translation of gl.po to Galego # Galician translation of libbonobo. # Copyright (C) 2001-2004 Jesús Bravo Álvarez # Copyright (C) 2001-2002 Manuel A. Fernández Montecelo # # Proxecto Trasno - Adaptación do software libre á lingua galega: Se desexas # colaborar connosco, podes atopar máis información en http://www.trasno.net # # Jesús Bravo Álvarez , 2001-2004. # Manuel A. Fernández Montecelo , 2001-2002. # Ignacio Casal Quinteiro , 2005, 2006. # Ignacio Casal Quinteiro , 2008. # Mancomún - Centro de Referencia e Servizos de Software Libre , 2009. # Fran Diéguez , 2010. # msgid "" msgstr "" "Project-Id-Version: gl\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2010-07-21 13:16+0200\n" "PO-Revision-Date: 2010-07-21 13:17+0200\n" "Last-Translator: Fran Diéguez \n" "Language-Team: Galician \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Language: gl\n" "Plural-Forms: nplurals=2; plural=(n!=1);\n" #: ../activation-server/activation-context-corba.c:530 msgid "Couldn't find which child the server was listed in" msgstr "" "Non foi posíbel determinar en que proceso fillo estaba listado o servidor" #: ../activation-server/activation-context-corba.c:822 msgid "Not a valid Activation ID" msgstr "Non é un ID de activación correcto" #: ../activation-server/activation-server-main.c:174 msgid "Directory to read .server files from" msgstr "Directorio desde o que ler os ficheiros .server" #: ../activation-server/activation-server-main.c:174 msgid "DIRECTORY" msgstr "DIRECTORIO" #: ../activation-server/activation-server-main.c:177 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "" "Servir como un ActivationContext (o valor predefinido é como un " "ObjectDirectory)" #: ../activation-server/activation-server-main.c:181 msgid "File descriptor to write IOR to" msgstr "Descritor de ficheiro para o que escribir o IOR" #: ../activation-server/activation-server-main.c:181 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "FD" msgstr "DF" #: ../activation-server/activation-server-main.c:184 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "" "Rexistrarse como servidor de activación de usuario sen bloqueo. Aviso: esta " "opción pode ter efectos secundarios perigosos para a estabilidade da sesión " "en execución do usuario e só debe usarse co obxectivo de depuración" #: ../activation-server/activation-server-main.c:192 msgid "Query expression to evaluate" msgstr "Expresión de consulta para avaliar" #: ../activation-server/activation-server-main.c:192 msgid "EXPRESSION" msgstr "EXPRESIÓN" #: ../activation-server/activation-server-main.c:541 #: ../utils/bonobo-activation-sysconf.c:305 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "" "Execute '%s --help' para ver unha lista completa de opcións dispoñíbeis na " "liña de ordes.\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "Servizo CORBA CosNaming." #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "Servizo de nomes" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "Servizo de notificación" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "Servizo de notificación para a activación" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "" "Aínda non é posíbel manipular a activación de obxectos shlib nun proceso " "remoto" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "O ficheiro de configuración de activación do Bonobo non se leu " "correctamente. Comprobe que é correcto en: %s" #: ../activation-server/object-directory-load.c:102 msgid "a NULL iid is not valid" msgstr "un iid NULL non é correcto" #: ../activation-server/object-directory-load.c:106 #, c-format msgid "iid %s has a NULL type" msgstr "o iid %s ten un tipo NULL" #: ../activation-server/object-directory-load.c:110 #, c-format msgid "iid %s has a NULL location" msgstr "o iid %s ten unha localización NULL" #: ../activation-server/object-directory-load.c:119 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "carácter '%c' incorrecto no iid '%s'" #: ../activation-server/object-directory-load.c:349 #, c-format msgid "Property '%s' has no value" msgstr "A propiedade '%s' non ten ningún valor" #: ../activation-server/object-directory-load.c:583 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "Non foi posíbel analizar o documento XML incorrectamente formado %s" #: ../activation-server/object-directory-load.c:629 #, c-format msgid "Trying dir %s" msgstr "Probando o directorio %s" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "" "O proceso fillo non deu ningunha mensaxe de erro; produciuse un fallo " "descoñecido" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "Produciuse un fallo ao ler desde o proceso fillo: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, c-format msgid "EOF from child process\n" msgstr "EOF desde o proceso fillo\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:438 msgid "Couldn't spawn a new process" msgstr "Non é posíbel iniciar un proceso novo" #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "File descriptor to print IOR on" msgstr "Descritor de ficheiro onde imprimir o IOR" #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:399 msgid "IID to activate" msgstr "IID para activar" #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Prevent registering of server with OAF" msgstr "Impedir o rexistro do servidor con OAF" #: ../bonobo-activation/bonobo-activation-init.c:409 msgid "Bonobo Activation options:" msgstr "Opcións de activación do Bonobo:" #: ../bonobo-activation/bonobo-activation-init.c:410 msgid "Show Bonobo Activation options" msgstr "Mostrar as opcións de activación do Bonobo" #: ../bonobo-activation/bonobo-activation-init.c:518 msgid "Bonobo activation options" msgstr "Opcións de activación do Bonobo" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "g_module_open de `%s' fallou con `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "Non é posíbel localizar o símbolo Bonobo_Plugin_info en `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "A factoría `%s' devolveu NIL para `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Shlib `%s' non contén `%s'" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "Nome" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "Nome único do aplicativo" #: ../bonobo/bonobo-object.c:929 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:929 msgid "Custom CORBA POA" msgstr "POA CORBA personalizado" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "Tentouse unha acción non soportada" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "Erro de E/S" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "Valor de argumento incorrecto" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "O obxecto non se localizou" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "Erro de sintaxe na descrición do obxecto" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "Non é posíbel activar o obxecto desde a factoría" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "Non hai permisos para acceder ao fluxo" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "Tentouse unha acción de fluxo non soportada" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "Erro de E/S no fluxo" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "Erro de E/S no almacenamento" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "O nome xa existe no almacenamento" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "Non se localizou o obxecto no almacenamento" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "Non hai permisos para efectuar a operación no almacenamento" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "Tentouse unha acción de almacenamento non soportada" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "O obxecto non é un fluxo" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "O obxecto non é un almacenamento" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "O almacenamento non está baleiro" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "descrición XML da interface de usuario formada incorrectamente" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "camiño incorrecto para un elemento XML da interface de usuario" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "o atributo de IU solicitado non existe" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "Orde ou verbo descoñecido" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "A orde non é sensíbel" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "tipo de datos incorrecto" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "fluxo non localizado" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "propiedade non localizada" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "a propiedade ten un tipo incorrecto" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "a propiedade é só de lectura" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "fallou o backend da base de datos da configuración " #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "Non foi posíbel localizar a interface do moniker" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "Excedeuse o tempo de espera de activación do moniker" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "Erro de sintaxe interno no moniker" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "O Moniker ten un prefixo de moniker descoñecido" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "Produciuse un erro ao verificar o erro; non hai excepción" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "Erro xeral de activación sen descrición" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s'" msgstr "Produciuse un fallo ao resolver ou ao estender '%s'" #: ../bonobo/bonobo-moniker-util.c:247 msgid "Failed to activate object" msgstr "Produciuse un fallo ao activar o obxecto" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "Excepción ao activar '%s'" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "Produciuse un fallo ao activar '%s'" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "Moniker HTTP" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "Moniker de manipulación ORB IOR" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "Factoría de moniker estándar" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "moniker xenérico de activación OAF" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "moniker xenérico de consulta OAF" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "moniker 'new' de factoría xenérica" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "moniker de elemento xenérico" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "fluxo MonikerExtender" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Factoría de servidor do Bonobo Echo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Programa de mostra do servidor do Bonobo Echo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Compoñente Echo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Factoría de compoñente Echo" #: ../samples/echo/echo-client.c:24 msgid "I could not initialize Bonobo" msgstr "Non foi posíbel inicializar o Bonobo" #: ../samples/echo/echo-client.c:35 msgid "Could not create an instance of the sample echo component" msgstr "Non foi posíbel crear unha instancia da compoñente Echo de mostra" #: ../samples/echo/echo-client.c:47 #, c-format msgid "An exception occurred '%s'" msgstr "Produciuse unha excepción '%s'" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Could not save configuration file.\n" msgstr "Non foi posíbel gardar o ficheiro de configuración.\n" #: ../utils/bonobo-activation-sysconf.c:84 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "Asegúrese de que ten permisos para escribir en '%s'.\n" #: ../utils/bonobo-activation-sysconf.c:87 #, c-format msgid "Successfully wrote configuration file.\n" msgstr "Ficheiro de configuración escrito con éxito.\n" #: ../utils/bonobo-activation-sysconf.c:104 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "o ficheiro de configuración é:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:146 #, c-format msgid "%s already in configuration file\n" msgstr "%s xa está no ficheiro de configuración\n" #: ../utils/bonobo-activation-sysconf.c:166 #, c-format msgid "there is not a properly structured configuration file\n" msgstr "non hai un ficheiro de configuración estruturado correctamente\n" #: ../utils/bonobo-activation-sysconf.c:237 #, c-format msgid "Bonobo-activation configuration file contains:\n" msgstr "O ficheiro de configuración do Bonobo-activation contén:\n" #: ../utils/bonobo-activation-sysconf.c:267 msgid "Directory to remove from configuration file" msgstr "Directorio para eliminar do ficheiro de configuración" #: ../utils/bonobo-activation-sysconf.c:267 #: ../utils/bonobo-activation-sysconf.c:269 msgid "PATH" msgstr "CAMIÑO" #: ../utils/bonobo-activation-sysconf.c:269 msgid "Directory to add to configuration file" msgstr "Directorio para engadir ao ficheiro de configuración" #: ../utils/bonobo-activation-sysconf.c:271 msgid "Display directories in configuration file" msgstr "Mostrar os directorios no ficheiro de configuración" #: ../utils/bonobo-activation-sysconf.c:273 msgid "Display path to configuration file" msgstr "Mostrar o camiño ao ficheiro de configuración" libbonobo-2.32.1/po/Makefile.in.in0000644000076400007640000001537711432275511013603 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) srcdir=$(srcdir) $(INTLTOOL_UPDATE) --gettext-package $(GETTEXT_PACKAGE) --dist GENPOT = INTLTOOL_EXTRACT=$(INTLTOOL_EXTRACT) 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 .po.pox: $(MAKE) $(GETTEXT_PACKAGE).pot $(MSGMERGE) $< $(GETTEXT_PACKAGE).pot -o $*.pox .po.mo: $(MSGFMT) -o $@ $< .po.gmo: 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: libbonobo-2.32.1/po/ml.po0000644000076400007640000005413411173072711012072 00000000000000# translation of libbonobo.HEAD.ml.po to # This file is distributed under the same license as the PACKAGE package. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER. # # FSF-India , 2003. # Ani Peter , 2006, 2007. msgid "" msgstr "" "Project-Id-Version: libbonobo.HEAD.ml\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2008-11-07 14:28+0100\n" "PO-Revision-Date: 2009-03-11 19:09+0530\n" "Last-Translator: \n" "Language-Team: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.11.4\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" "\n" #: ../activation-server/activation-context-corba.c:530 msgid "Couldn't find which child the server was listed in" msgstr "ചൈള്‍ഡ് ഏത് സര്‍വറില്‍ എന്ന് കാണുവാന്‍ സാധ്യമായില്ല" #: ../activation-server/activation-context-corba.c:822 msgid "Not a valid Activation ID" msgstr "തെറ്റായ ആക്ടിവേഷന്‍ ID ആണ്" #: ../activation-server/activation-server-main.c:166 msgid "Directory to read .server files from" msgstr ".server ഫയലുകള്‍ ലഭ്യമാകുന്ന ഡയറക്ടറികള്‍" #: ../activation-server/activation-server-main.c:166 msgid "DIRECTORY" msgstr "DIRECTORY" #: ../activation-server/activation-server-main.c:169 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "ActivationContext ആയി പ്രവര്‍ത്തിക്കുക (ഡീഫോള്‍ട്ടായി ObjectDirectory മാത്രമാണ്)" #: ../activation-server/activation-server-main.c:173 msgid "File descriptor to write IOR to" msgstr "IOR എഴുതേണ്ട ഫയല്‍ ഡിസ്ക്രിപ്റ്റര്‍" #: ../activation-server/activation-server-main.c:173 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:176 msgid "" "Register as the user's activation server without locking. Warning: this " "option can have dangerous side effects on the stability of the user's " "running session, and should only be used for debugging purposes" msgstr "" "ഉപയോക്താവിന്റെ ആക്ടിവേഷന്‍ സര്‍വറില്‍ ലോക്കിങില്ലാതെ രജിസ്ടറര്‍ ചെയ്യുക. " "മുന്നറിയിപ്പ്: ഉപയോക്താവിന്റെ പ്രവര്‍ത്തനത്തിലുള്ള സെഷനുകള്‍ക്ക് ഇതു് തകരാറുണ്ടാക്കുവാന്‍ " "സാധ്യതയുള്ളതിനാല്‍, ഇതു് ഡീബഗ്ഗിങ് പ്രക്രിയകള്‍ക്കു് മാത്രമേ ഉപയോഗിക്കാന്‍ പാടുള്ളൂ" #: ../activation-server/activation-server-main.c:184 msgid "Query expression to evaluate" msgstr "ഉത്തരം കണ്ടുപിടിക്കുന്നതിനുളള ചോദ്യം" #: ../activation-server/activation-server-main.c:184 msgid "EXPRESSION" msgstr "EXPRESSION" #: ../activation-server/activation-server-main.c:472 #: ../utils/bonobo-activation-sysconf.c:305 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "ലഭ്യമായ കമാന്‍ഡ് ലൈന്‍ ഉപാധികള്‍ മുഴുവന്‍ കാണുന്നതിനായി '%s --help' പ്രവര്‍ത്തിപ്പിക്കുക.\n" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "CORBA CosNaming സേവനം." #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "നെയിം സേവനങ്ങള്‍" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "അറിയിപ്പ് സേവനങ്ങള്‍" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "പ്രവര്‍ത്തനത്തിനുളള അറിയിപ്പ് സേവനങ്ങള്‍" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "വിദൂര കംപ്യൂട്ടറിലുളള പ്രക്രിയകളില്‍ shlib വസ്തുക്കളുടെ പ്രവര്‍ത്തനം കൈകാര്യം ചെയ്യുന്നതല്ല" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "Bonobo പ്രവര്‍ത്തന സജ്ജീകരണ ഫയല്‍ വിജയകരമായി വായിച്ചില്ല. ദയവായി, ഈ ഫയല്‍ഇതില്‍ ശരിയായ " "രീതിയില്‍ ഉണ്ടോ എന്ന് പരിശോധിക്കുക: %s" #: ../activation-server/object-directory-load.c:102 msgid "a NULL iid is not valid" msgstr "NULL iid പാടില്ല" #: ../activation-server/object-directory-load.c:106 #, c-format msgid "iid %s has a NULL type" msgstr "iid %s-ല്‍ NULL ഉണ്ട്" #: ../activation-server/object-directory-load.c:110 #, c-format msgid "iid %s has a NULL location" msgstr "iid %s-ല്‍ NULL സ്ഥാനം ഉണ്ട്" #: ../activation-server/object-directory-load.c:119 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "അസാധുവായ അക്ഷരം '%c' iid '%s'-ല്‍ ഉണ്ട്" #: ../activation-server/object-directory-load.c:349 #, c-format msgid "Property '%s' has no value" msgstr "'%s' സവിശേഷതയ്ക്ക് മൂല്ല്യം ലഭ്യമല്ല" #: ../activation-server/object-directory-load.c:583 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "തെറ്റായി രൂപപ്പെട്ടിരിക്കുന്ന XML രേഖ %s പാഴ്സ് ചെയ്യുവാന്‍ സാധ്യമല്ല" #: ../activation-server/object-directory-load.c:629 #, c-format msgid "Trying dir %s" msgstr "%s ഡയറക്ടറി ശ്യമിക്കുന്നു" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "ചൈള്‍ഡ് പ്രക്രിയ പിശക് സംബന്ധിച്ച് സന്ദേശങ്ങള്‍ നല്‍കിയില്ല. അപരിചിതമായ പിശക് സംഭവിച്ചിരിക്കുന്നു" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "ചൈള്‍ഡ് പ്രക്രിയയില്‍ നിന്നും വായിക്കുന്നതില്‍ പരാജയപ്പെട്ടു: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, c-format msgid "EOF from child process\n" msgstr "ചൈള്‍ഡ് പ്രക്രിയയില്‍ നിന്നുളള EOF\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:438 msgid "Couldn't spawn a new process" msgstr "ഒരു പുതിയ പ്രക്രിയ ഉണ്ടാക്കുവാന്‍ സാധ്യമല്ല" #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "File descriptor to print IOR on" msgstr "IOR പ്രിന്റ് ചെയ്യേണ്ട ഫയല്‍ ഡിസ്ക്രിപ്റ്റര്‍" #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:399 msgid "IID to activate" msgstr "പ്രവര്‍ത്തിപ്പിക്കുവാനുളള IID" #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Prevent registering of server with OAF" msgstr "OAF ആയി സര്‍വര്‍ രജിസ്ടര്‍ ചെയ്യുന്നത് തടയുക" #: ../bonobo-activation/bonobo-activation-init.c:409 msgid "Bonobo Activation options:" msgstr "Bonobo പ്രവര്‍ത്തന ഉപാധികള്‍:" #: ../bonobo-activation/bonobo-activation-init.c:410 msgid "Show Bonobo Activation options" msgstr "Bonobo പ്രവര്‍ത്തനത്തിന്റ് ഉപാധികള്‍ കാണിക്കുക" #: ../bonobo-activation/bonobo-activation-init.c:518 msgid "Bonobo activation options" msgstr "Bonobo പ്രവര്‍ത്തന ഉപാധികള്‍" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "`%s'-ന്റെ g_module_open `%s'-നോടൊപ്പം പരാജയപ്പെട്ടു" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "`%s'-ല്‍ Bonobo_Plugin_info ചിഹ്നം ലഭ്യമല്ല" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "ശാല `%s' `%s'-ന് NIL തിരികെ നല്‍കി" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Shlib `%s'-ല്‍`%s' ലഭ്യമല്ല" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "പേര്" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "പ്രയോഗത്തിന് മാത്രമുളള പേര്" #: ../bonobo/bonobo-object.c:929 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:929 msgid "Custom CORBA POA" msgstr "CORBA POA ഇഷ്ടാനുസരണം സജ്ജമാക്കുക" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "പിന്തുണയ്ക്കപ്പെടാത്ത പ്രവര്‍ത്തിയ്ക്ക് ശ്രമിച്ചു" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "IO പിശക്" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "സാധുതയില്ലാത്ത ആര്‍ഗ്യുമെന്റിന്റെ മൂല്ല്യം" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "ഒബ്ജക്ട് ലഭ്യമല്ല" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "ഒബ്ജക്ട് വിവരണത്തില്‍ സിന്‍ടാക്സ് പിശക്" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "ശാലയില്‍ നിന്നുളള ഒബ്ജക്ട് പ്രവര്‍ത്തിപ്പിക്കുവാന്‍ സാധ്യമല്ല" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "പ്രവാഹത്തിലേക്കുളള പ്രവേശനത്തിന് അനുമതി ലഭ്യമല്ല" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "പിന്തുണയ്ക്കപ്പെടാത്ത പ്രവാഹ പ്രവര്‍ത്തിയ്ക്ക് ശ്രമിച്ചു" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "പ്രവാഹത്തില്‍ IO പിശക്" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "ശേഖരത്തില്‍ IO പിശക്" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "ശേഖരത്തില്‍ പേര് നിലവിലുണ്ട്" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "ശേഖരത്തില്‍ വസ്തു കണ്ടെത്താനായില്ല" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "ശേഖരത്തില്‍ പ്രക്രിയകള്‍ ചെയ്യുവാനുളള അനുവാദമില്ല" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "പിന്തുണയ്ക്കപ്പെടാത്ത ശേഖര പ്രവര്‍ത്തിയ്ക്ക് ശ്രമിച്ചു" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "വസ്തു ഒരു പ്രവാഹമല്ല" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "വസ്തു ഒരു ശേഖരമല്ല" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "ശേഖരം ശൂന്യമല്ല" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "തെറ്റായ സംയോജനഘടകത്തിന്റെ XML വിവരണം" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "XML സംയോജനഘടകത്തിന്റെ എലമെന്റിലേക്കുളള അസാധുവായ വഴി" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "ആവശ്യപ്പെട്ട UI വിശേഷത നിലവിലില്ല" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "അറിയാത്ത നിര്‍ദ്ദേശം" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "നിര്‍ദ്ദേശം ഏത് രീതിയില്‍ എഴുതിയാലും ശരിയാണ്" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "തെറ്റായ ഡേറ്റാ രീതികള്‍" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "പ്രവാഹം ലഭ്യമല്ല" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "സവിശേഷത ലഭ്യമല്ല" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "സവിശേഷത അസാധുവാണ്" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "സവിശേഷത വായിക്കുവാന്‍ മാത്രമേ സാധ്യമുള്ളൂ" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "കോണ്‍ഫിഗ്‍ ഡേറ്റാബെയിസ് ബാക്കെന്‍ഡ് പരാജയപ്പെട്ടു" #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "Moniker സംയോജകഘടകം ലഭ്യമല്ല" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "Moniker പ്രവര്‍ത്തിയുടെ സമയം കഴിഞ്ഞിരിക്കുന്നു" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "moniker-ല്‍ സിന്‍ടാക്സ് പിശക്" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "Moniker-ല്‍ അപരിചിതമായ moniker പ്രിഫിക്സ്" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "പിശക് പരിശോധിക്കുന്നതില്‍ പിശക്; ഒഴിവാക്കല്‍ പാടില്ല" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "വിവരണമില്ലാത്ത സാധാരണ പ്രവര്‍ത്തന പിശക്" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s" msgstr "'%s കണ്ടുപിടിക്കുന്നതിനോ വികസിപ്പിക്കുന്നതിനോ പരാജയപ്പെട്ടു" #: ../bonobo/bonobo-moniker-util.c:247 msgid "Failed to activate object" msgstr "വസ്തു പ്രവര്‍ത്തിപ്പിക്കുന്നതില്‍ പരാജയപ്പെട്ടു" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "Exception activating '%s'" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "'%s' പ്രവര്‍ത്തിപ്പിക്കുന്നതില്‍ പരാജയം" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "HTTP Moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "ORB IOR കൈകാര്യം ചെയ്യുന്ന moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "നിലവാരമുളള Moniker ശാല" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "സാധാരണ Oaf പ്രവര്‍ത്ത moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "സാധാരണ Oaf ക്വറി moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "ജനറിക്ക് ഫാക്ടറി 'പുതിയ' moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "ജനറിക്ക് ഐറ്റം moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "സ്ട്രീം MonikerExtender" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Bonobo Echo സര്‍വര്‍ ശാല" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Bonobo Echo സര്‍വര്‍ ഉദാഹരണ പ്രോഗ്രാം" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Echo ഘടകം" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Echo ഘടകം ശാല" #: ../samples/echo/echo-client.c:24 msgid "I could not initialize Bonobo" msgstr "Bonobo ആരംഭിക്കുവാന്‍ സാധിച്ചില്ല" #: ../samples/echo/echo-client.c:35 msgid "Could not create an instance of the sample echo component" msgstr "സാംപിള്‍ Echo ഘടകത്തിന്റെ ഉദാഹരണം നിര്‍മ്മിക്കുവാന്‍ സാധ്യമായില്ല" #: ../samples/echo/echo-client.c:47 #, c-format msgid "An exception occurred '%s'" msgstr "'%s' സംഭവിച്ചിരിക്കുന്നു" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Could not save configuration file.\n" msgstr "സജ്ജീകരണ ഫയല്‍ സംരക്ഷിക്കുവാന്‍ സാധ്യമായില്ല.\n" #: ../utils/bonobo-activation-sysconf.c:84 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "നിങ്ങള്‍ക്ക് '%s'-ലേക്ക് എഴുതുവാനുളള അനുവാദം ഉണ്ടെന്ന് ദയവായി ഉറപ്പ് വരുത്തുക.\n" #: ../utils/bonobo-activation-sysconf.c:87 #, c-format msgid "Successfully wrote configuration file.\n" msgstr "കോണ്‍ഫിഗറേഷന്‍ ഫയല്‍ വിജയകരമായി എഴുതിയിരിക്കുന്നു.\n" #: ../utils/bonobo-activation-sysconf.c:104 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "സജ്ജീകരണ ഫയല്‍ ഇതാണ്:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:146 #, c-format msgid "%s already in configuration file\n" msgstr "%s നിലവില്‍ കോണ്‍ഫിഗറേഷന്‍ ഫയലിലുണ്ട്\n" #: ../utils/bonobo-activation-sysconf.c:166 #, c-format msgid "there is not a properly structured configuration file\n" msgstr "ശരിയായി ക്രമീകരിച്ചിട്ടുളള കോണ്‍ഫിഗറേഷന്‍ ഫയല്‍ നിലവിലില്ല\n" #: ../utils/bonobo-activation-sysconf.c:237 #, c-format msgid "Bonobo-activation configuration file contains:\n" msgstr "Bonobo-activation കോണ്‍ഫിഗറേഷന്‍ ഫയലില്‍ ഇവ ഉല്‍പ്പെടുന്നു:\n" #: ../utils/bonobo-activation-sysconf.c:267 msgid "Directory to remove from configuration file" msgstr "കോണ്‍ഫിഗറേഷന്‍ ഫയലില്‍ നിന്നും നീക്കം ചെയ്യേണ്ട ഡയറക്ടറി" #: ../utils/bonobo-activation-sysconf.c:267 #: ../utils/bonobo-activation-sysconf.c:269 msgid "PATH" msgstr "PATH" #: ../utils/bonobo-activation-sysconf.c:269 msgid "Directory to add to configuration file" msgstr "കോണ്‍ഫിഗറേഷന്‍ ഫയലിലേക്ക് ചേര്‍ക്കേണ്ട ഡയറക്ടറി" #: ../utils/bonobo-activation-sysconf.c:271 msgid "Display directories in configuration file" msgstr "കോണ്‍ഫിഗറേഷന്‍ ഫയലിലുളള ഡയറക്ടറികള്‍ കാണിക്കുക" #: ../utils/bonobo-activation-sysconf.c:273 msgid "Display path to configuration file" msgstr "കോണ്‍ഫിഗറേഷന്‍ ഫയലിലേക്കുളള വഴഇ കാണിക്കുക" libbonobo-2.32.1/po/br.po0000644000076400007640000003575711261737303012102 00000000000000# Breton translation of gnome-terminal # Copyright (C) 2006 Free Software Foundation, Inc. # This file is distributed under the GNU General Public License Version 2. # Jérémy Ar Floc'h , 2006 # Maryvonne MORVAN , 2006 # msgid "" msgstr "" "Project-Id-Version: libbonobo 2.14\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2009-03-09 09:51+0000\n" "PO-Revision-Date: 2009-08-03 09:07+0100\n" "Last-Translator: Denis\n" "Language-Team: GNOME Breton Team \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Launchpad-Export-Date: 2009-07-28 15:28+0000\n" "X-Generator: Launchpad (build Unknown)\n" #: ../activation-server/activation-context-corba.c:530 msgid "Couldn't find which child the server was listed in" msgstr "N'eus ket tu da c'houzout e peseurt bugale eo renablet ar server" #: ../activation-server/activation-context-corba.c:822 msgid "Not a valid Activation ID" msgstr "N'eo ket un ID da loc'han a ya endro" #: ../activation-server/activation-server-main.c:176 msgid "Directory to read .server files from" msgstr "Renkell ma vez kavet ar restroù .server" #: ../activation-server/activation-server-main.c:176 msgid "DIRECTORY" msgstr "RENKELL" #: ../activation-server/activation-server-main.c:179 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "Bez e talv evel ActivationContext (d'an nebeutan, evel ObjectDirectory nemetan)" #: ../activation-server/activation-server-main.c:183 msgid "File descriptor to write IOR to" msgstr "Restr-diskrivadurer e lec'h ma c'hell skrivan IOR" #: ../activation-server/activation-server-main.c:183 #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:186 msgid "Register as the user's activation server without locking. Warning: this option can have dangerous side effects on the stability of the user's running session, and should only be used for debugging purposes" msgstr "" #: ../activation-server/activation-server-main.c:194 msgid "Query expression to evaluate" msgstr "Doare-kerc'had da brizout" #: ../activation-server/activation-server-main.c:194 msgid "EXPRESSION" msgstr "Doare da lavarout" #: ../activation-server/activation-server-main.c:547 #: ../utils/bonobo-activation-sysconf.c:305 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "CORBA CosNaming service." #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "Anv servij" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "Notifiañ ar servij" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "Servij-notifiañ evit loc'hañ" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "Ne gemeromp ket c'hoaz e karg loc'hañ an traoù shlib en ur argerzh pell" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "The Bonobo Activation configuration file was not read successfully. Please, check it is valid in: %s" msgstr "" #: ../activation-server/object-directory-load.c:102 msgid "a NULL iid is not valid" msgstr "un iid NULL ne da ket en-dro" #: ../activation-server/object-directory-load.c:106 #, c-format msgid "iid %s has a NULL type" msgstr "'iid %s en deus ur perzh NULL" #: ../activation-server/object-directory-load.c:110 #, c-format msgid "iid %s has a NULL location" msgstr "'iid %s a zo en ul lec'h NULL" #: ../activation-server/object-directory-load.c:119 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "perzh fall (ne c'hell ket mont endro) '%c' ebarzh iid '%s'" #: ../activation-server/object-directory-load.c:352 #, c-format msgid "Property '%s' has no value" msgstr "Perzh-diforch'añ '%s' n'he deus ket talvoudegezh" #: ../activation-server/object-directory-load.c:586 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "N'eus ket tu dielfennañ teul %s a zo stummet fall" #: ../activation-server/object-directory-load.c:632 #, c-format msgid "Trying dir %s" msgstr "War esaeañ renkell %s" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "An mab-argerzh n'en deus ket kaset ur gemenadenn-c'hwitadenn, setu ur c'hwitadenn dianav" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "C'hwitet al lenn abaoe an mab-argerzh: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, c-format msgid "EOF from child process\n" msgstr "EOF abaoe mab-argerzh\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:438 msgid "Couldn't spawn a new process" msgstr "N'eus ket tu krouiñ un argerzh nevez" #: ../bonobo-activation/bonobo-activation-init.c:352 #: ../bonobo-activation/bonobo-activation-init.c:397 msgid "File descriptor to print IOR on" msgstr "Restr-diskrivader evit moulañ IOR war" #: ../bonobo-activation/bonobo-activation-init.c:354 #: ../bonobo-activation/bonobo-activation-init.c:399 msgid "IID to activate" msgstr "IID da loc'hañ" #: ../bonobo-activation/bonobo-activation-init.c:356 #: ../bonobo-activation/bonobo-activation-init.c:401 msgid "Prevent registering of server with OAF" msgstr "Mirout ouzh enrolladur ar server gant OAF" #: ../bonobo-activation/bonobo-activation-init.c:409 msgid "Bonobo Activation options:" msgstr "Dibaboù loc'hañ Bonobo :" #: ../bonobo-activation/bonobo-activation-init.c:410 msgid "Show Bonobo Activation options" msgstr "Diskouez dibaboù loc'hañ Bonobo" #: ../bonobo-activation/bonobo-activation-init.c:518 msgid "Bonobo activation options" msgstr "Dibaboù loc'hañ Bonobo" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "g_module_open `%s' c'hwitet gant `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "N'eus ket tu kavout arouez Bonobo_Plugin_info e-barzh `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "Stal `%s' en deus meneget NIL evit `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Ne oa ket Shlib `%s' e-barzh `%s'" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "Anv" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "Arload nemetañ an anv" #: ../bonobo/bonobo-object.c:929 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:929 msgid "Custom CORBA POA" msgstr "Stumm CORBA POA" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "Esaeet e oa un oberadenn disampart" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "C'hwitadenn IO" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "Talvoudegezh an dibab ne glot ket" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "N'eo ket bet kavet an dra" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "C'hwitadenn ereadurezh diskrivadur an dra" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "N'eus ket tu loc'hañ an dra war bouez ar stal" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "Aotre ebet evit tizhañ ar chal (stream e saozneg)" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "Un chal-ober dizereat a oa esaet" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "C'hwitadenn IO war ar chal" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "C'hwitadenn IO war verniañ" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "Emañ an anv dijà er berniad" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "N'eo ket bet kavet an dra er berniad" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "Difennet eo ober ur gwezhiadur war ar berniad" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "Esaeet e oa bet ur berniañ en aner" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "An dra n'eo ket ur chal" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "An dra n'eo ket ur berniad" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "N'eo ket goullo ar berniad" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "stummet fall eo arverer ar c'hetal XML diskrivadur" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "dizereat eo an hent evit elfenn ketal an arverer XML" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "n'eus ket doareen ketal-arverer daoust ar goulenn" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "Dizanavez eo an urzh pe ar verb" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "Ne da ket endro an urzh" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "ar seurt roadenn-se a zo dizereat" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "n'eo ket bet kavet ar chal" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "n'eo ket bet kavet ar perzh" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "n'eo ket dereat ar seurt perzh" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "kekluniañ ar stlennvonn bennañ en deus c'hwitet " #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "N'eus ket tu da gavout ar c'hetal Moniker" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "Re ziwezhat evit loc'hañ Moniker" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "Fazi ereadurezh e-barzh Moniker" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "Ur rakger dianav zo gant ar Moniker" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "Fazi e-pad amprouadur fazioù; nemedenn ebet" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "Fazi bras al loch'añ hep diskrivadur" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s" msgstr "An diarouziñ en deux c'hwitet, pe astenn an '%s" #: ../bonobo/bonobo-moniker-util.c:247 msgid "Failed to activate object" msgstr "Loc'hañ an dra n'eo ket bet graet" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "Nemedenn e-pad loc'hañ '%s' »" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "N'eo ket bet graet loch'an an '%s'" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "Moniker HTTP" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "ORB IOR a ra war dro moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "Stal Standard Moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "loc'han Oaf moniker generik" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "jenerik Oaf a c'houl Moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "stal jenerik ar 'nevez' Moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "moniker elfenn jenerik" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "chal MonikerExtender" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Stal server Bonobo Echo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Rolladur skouer Bonobo Echo server" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Elfenn Echo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Stal elfenn Echo" #: ../samples/echo/echo-client.c:24 msgid "I could not initialize Bonobo" msgstr "Ne c'hellen ket deraouekaat Bonobo" #: ../samples/echo/echo-client.c:35 msgid "Could not create an instance of the sample echo component" msgstr "Ne oa ket du d'ober un degouezh gant elfenn ar skouer echo" #: ../samples/echo/echo-client.c:47 #, c-format msgid "An exception occurred '%s'" msgstr "" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Could not save configuration file.\n" msgstr "Ne oa ket tu gwareziñ kefluniañ ar restr.\n" #: ../utils/bonobo-activation-sysconf.c:84 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "Mar plij, gallout a rit gwelout ma z'och aotreet da skrivañ da '%s'.\n" #: ../utils/bonobo-activation-sysconf.c:87 #, c-format msgid "Successfully wrote configuration file.\n" msgstr "Restr-kefluniañ a zo bet skrivet mat.\n" #: ../utils/bonobo-activation-sysconf.c:104 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "n'eo ar restr-kefluniañ :\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:146 #, c-format msgid "%s already in configuration file\n" msgstr "%s a zo dija e restr-kefluniañ\n" #: ../utils/bonobo-activation-sysconf.c:166 #, c-format msgid "there is not a properly structured configuration file\n" msgstr "n'eo ket frammet mat ar restr-kefluniañ\n" #: ../utils/bonobo-activation-sysconf.c:237 #, c-format msgid "Bonobo-activation configuration file contains:\n" msgstr "" #: ../utils/bonobo-activation-sysconf.c:267 msgid "Directory to remove from configuration file" msgstr "Kavlec'h da zilemel eus restr-kefluniañ" #: ../utils/bonobo-activation-sysconf.c:267 #: ../utils/bonobo-activation-sysconf.c:269 msgid "PATH" msgstr "TREUG" #: ../utils/bonobo-activation-sysconf.c:269 msgid "Directory to add to configuration file" msgstr "Kavlec'h da ouzhpennañ er restr-kefluniañ" #: ../utils/bonobo-activation-sysconf.c:271 msgid "Display directories in configuration file" msgstr "Diskouez kavlec'hioù ar restr-kefluniañ" #: ../utils/bonobo-activation-sysconf.c:273 msgid "Display path to configuration file" msgstr "Diskouez hent etrezek ar restr-kefluniañ" libbonobo-2.32.1/po/rw.po0000644000076400007640000003521311173072711012107 00000000000000# translation of libbonobo to Kinyarwanda. # Copyright (C) 2005 Free Software Foundation, Inc. # This file is distributed under the same license as the libbonobo package. # Steve Murphy , 2005 # Steve performed initial rough translation from compendium built from translations provided by the following translators: # Philibert Ndandali , 2005. # Viateur MUGENZI , 2005. # Noëlla Mupole , 2005. # Carole Karema , 2005. # JEAN BAPTISTE NGENDAHAYO , 2005. # Augustin KIBERWA , 2005. # Donatien NSENGIYUMVA , 2005.. # msgid "" msgstr "" "Project-Id-Version: libbonobo 2.12\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2006-10-22 16:55+0200\n" "PO-Revision-Date: 2005-03-28 19:35-0700\n" "Last-Translator: Steve Murphy \n" "Language-Team: Kinyarwanda \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../activation-server/activation-context-corba.c:523 #, fuzzy msgid "Couldn't find which child the server was listed in" msgstr "Gushaka Seriveri in" #: ../activation-server/activation-context-corba.c:815 #, fuzzy msgid "Not a valid Activation ID" msgstr "a Byemewe" #: ../activation-server/activation-server-main.c:162 #, fuzzy msgid "Directory to read .server files from" msgstr "Kuri Gusoma Seriveri Idosiye Bivuye" # svtools/source\dialogs\filedlg2.src:STR_FILEDLG_DIR.text #: ../activation-server/activation-server-main.c:162 #, fuzzy msgid "DIRECTORY" msgstr "Ububiko" #: ../activation-server/activation-server-main.c:165 #, fuzzy msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "Nka Mburabuzi ni Nka" #: ../activation-server/activation-server-main.c:169 #, fuzzy msgid "File descriptor to write IOR to" msgstr "Idosiye Kuri Kuri" #: ../activation-server/activation-server-main.c:169 #: ../bonobo-activation/bonobo-activation-init.c:355 #: ../bonobo-activation/bonobo-activation-init.c:365 msgid "FD" msgstr "" #: ../activation-server/activation-server-main.c:172 msgid "" "Register as the users' activation server without locking [!] for debugging" msgstr "" #: ../activation-server/activation-server-main.c:177 #, fuzzy msgid "Query expression to evaluate" msgstr "imvugo Kuri Suzuma" # 2170 #: ../activation-server/activation-server-main.c:177 #, fuzzy msgid "EXPRESSION" msgstr "imvugo" #: ../activation-server/activation-server-main.c:426 #: ../utils/bonobo-activation-sysconf.c:304 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 #, fuzzy msgid "CORBA CosNaming service." msgstr "Serivisi" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 #, fuzzy msgid "Name service" msgstr "Serivisi" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 #, fuzzy msgid "Notification service" msgstr "Serivisi" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 #, fuzzy msgid "Notification service for activation" msgstr "Serivisi kugirango" #: ../activation-server/object-directory-activate.c:235 #, fuzzy msgid "We don't handle activating shlib objects in a remote process yet" msgstr "Ibintu in a" #: ../activation-server/object-directory-config-file.c:65 #, fuzzy, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "Iboneza IDOSIYE OYA Gusoma Kugenzura... ni Byemewe in" #: ../activation-server/object-directory-load.c:101 #, fuzzy msgid "a NULL iid is not valid" msgstr "a ni OYA Byemewe" #: ../activation-server/object-directory-load.c:105 #, fuzzy, c-format msgid "iid %s has a NULL type" msgstr "a Ubwoko" #: ../activation-server/object-directory-load.c:109 #, fuzzy, c-format msgid "iid %s has a NULL location" msgstr "a Ahantu" #: ../activation-server/object-directory-load.c:118 #, fuzzy, c-format msgid "invalid character '%c' in iid '%s'" msgstr "Sibyo Inyuguti in" #: ../activation-server/object-directory-load.c:348 #, fuzzy, c-format msgid "Property '%s' has no value" msgstr "Oya Agaciro" #: ../activation-server/object-directory-load.c:580 #, fuzzy, c-format msgid "Could not parse badly formed XML document %s" msgstr "OYA Inyandiko" #: ../activation-server/object-directory-load.c:627 #, c-format msgid "Trying dir %s" msgstr "" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 #, fuzzy msgid "Child process did not give an error message, unknown failure occurred" msgstr "OYA Ikosa Ubutumwa Kitazwi" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, fuzzy, c-format msgid "Failed to read from child process: %s\n" msgstr "Kuri Gusoma Bivuye" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 #, fuzzy msgid "EOF from child process\n" msgstr "Bivuye" #: ../bonobo-activation/bonobo-activation-fork-server.c:435 #, fuzzy msgid "Couldn't spawn a new process" msgstr "a Gishya" #: ../bonobo-activation/bonobo-activation-init.c:355 #: ../bonobo-activation/bonobo-activation-init.c:365 #, fuzzy msgid "File descriptor to print IOR on" msgstr "Idosiye Kuri Gucapa ku" #: ../bonobo-activation/bonobo-activation-init.c:357 #: ../bonobo-activation/bonobo-activation-init.c:367 #, fuzzy msgid "IID to activate" msgstr "Kuri Kureka bigakora" #: ../bonobo-activation/bonobo-activation-init.c:359 #: ../bonobo-activation/bonobo-activation-init.c:369 #, fuzzy msgid "Prevent registering of server with OAF" msgstr "Bya Seriveri Na:" #: ../bonobo-activation/bonobo-activation-init.c:403 #, fuzzy msgid "Bonobo Activation" msgstr "Amahitamo" #: ../bonobo-activation/bonobo-activation-init.c:404 #, fuzzy msgid "Show Bonobo Activation options" msgstr "Amahitamo" #: ../bonobo-activation/bonobo-activation-init.c:512 #, fuzzy msgid "Bonobo activation options" msgstr "Amahitamo" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, fuzzy, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "Bya Byanze Na:" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, fuzzy, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "Gushaka IKIMENYETSO in" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, fuzzy, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "kugirango" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "Izina" #: ../bonobo/bonobo-application.c:352 #, fuzzy msgid "Application unique name" msgstr "Cyo nyine Izina:" #: ../bonobo/bonobo-object.c:923 msgid "POA" msgstr "" #: ../bonobo/bonobo-object.c:923 #, fuzzy msgid "Custom CORBA POA" msgstr "Kugena" #: ../bonobo/bonobo-exception.c:154 #, fuzzy msgid "An unsupported action was attempted" msgstr "Igikorwa" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "" #: ../bonobo/bonobo-exception.c:160 #, fuzzy msgid "Invalid argument value" msgstr "Agaciro" #: ../bonobo/bonobo-exception.c:164 #, fuzzy msgid "Object not found" msgstr "OYA Byabonetse" #: ../bonobo/bonobo-exception.c:167 #, fuzzy msgid "Syntax error in object description" msgstr "Ikosa in Igikoresho Isobanuramiterere" #: ../bonobo/bonobo-exception.c:172 #, fuzzy msgid "Cannot activate object from factory" msgstr "Kureka bigakora Igikoresho Bivuye" #: ../bonobo/bonobo-exception.c:177 #, fuzzy msgid "No permission to access stream" msgstr "Kuri" #: ../bonobo/bonobo-exception.c:180 #, fuzzy msgid "An unsupported stream action was attempted" msgstr "Igikorwa" #: ../bonobo/bonobo-exception.c:183 #, fuzzy msgid "IO Error on stream" msgstr "ku" #: ../bonobo/bonobo-exception.c:187 #, fuzzy msgid "IO Error on storage" msgstr "ku" #: ../bonobo/bonobo-exception.c:190 #, fuzzy msgid "Name already exists in storage" msgstr "in" #: ../bonobo/bonobo-exception.c:193 #, fuzzy msgid "Object not found in storage" msgstr "OYA Byabonetse in" #: ../bonobo/bonobo-exception.c:196 #, fuzzy msgid "No permission to do operation on storage" msgstr "Kuri ku" #: ../bonobo/bonobo-exception.c:198 #, fuzzy msgid "An unsupported storage action was attempted" msgstr "Igikorwa" #: ../bonobo/bonobo-exception.c:200 #, fuzzy msgid "Object is not a stream" msgstr "ni OYA a" #: ../bonobo/bonobo-exception.c:203 #, fuzzy msgid "Object is not a storage" msgstr "ni OYA a" #: ../bonobo/bonobo-exception.c:206 #, fuzzy msgid "Storage is not empty" msgstr "ni OYA ubusa" #: ../bonobo/bonobo-exception.c:210 #, fuzzy msgid "malformed user interface XML description" msgstr "Ukoresha: Isobanuramiterere" #: ../bonobo/bonobo-exception.c:213 #, fuzzy msgid "invalid path to XML user interface element" msgstr "Sibyo Inzira Kuri Ukoresha: Ikigize:" #: ../bonobo/bonobo-exception.c:216 #, fuzzy msgid "the requested UI attribute didn't exist" msgstr "Ikiranga" #: ../bonobo/bonobo-exception.c:219 #, fuzzy msgid "Unknown command or verb" msgstr "Komandi: Cyangwa Ishinga" #: ../bonobo/bonobo-exception.c:222 #, fuzzy msgid "Command is insensitive" msgstr "ni" #: ../bonobo/bonobo-exception.c:226 #, fuzzy msgid "incorrect data type" msgstr "Ibyatanzwe Ubwoko" #: ../bonobo/bonobo-exception.c:229 #, fuzzy msgid "stream not found" msgstr "OYA Byabonetse" #: ../bonobo/bonobo-exception.c:233 #, fuzzy msgid "property not found" msgstr "indangakintu OYA Byabonetse" #: ../bonobo/bonobo-exception.c:236 #, fuzzy msgid "property has invalid type" msgstr "indangakintu Sibyo Ubwoko" #: ../bonobo/bonobo-exception.c:239 #, fuzzy msgid "property is read only" msgstr "indangakintu ni Gusoma" #: ../bonobo/bonobo-exception.c:242 #, fuzzy msgid "config database backend failed " msgstr "Ububikoshingiro Byanze" #: ../bonobo/bonobo-exception.c:246 #, fuzzy msgid "Moniker interface cannot be found" msgstr "Byabonetse" #: ../bonobo/bonobo-exception.c:249 #, fuzzy msgid "Moniker activation timed out" msgstr "Inyuma" #: ../bonobo/bonobo-exception.c:252 #, fuzzy msgid "Syntax error within moniker" msgstr "Ikosa muri" #: ../bonobo/bonobo-exception.c:255 #, fuzzy msgid "Moniker has an unknown moniker prefix" msgstr "Kitazwi Imbanziriza" #: ../bonobo/bonobo-exception.c:279 #, fuzzy msgid "Error checking error; no exception" msgstr "Ikosa Oya Irengayobora(-)" #: ../bonobo/bonobo-exception.c:288 #, fuzzy msgid "General activation error with no description" msgstr "Ikosa Na: Oya Isobanuramiterere" #: ../bonobo/bonobo-generic-factory.h:79 ../bonobo/bonobo-generic-factory.h:83 #, fuzzy msgid "Could not initialize Bonobo" msgstr "OYA gutangiza" #: ../bonobo/bonobo-moniker.c:342 #, fuzzy, c-format msgid "Failed to resolve, or extend '%s" msgstr "Kuri Cyangwa" #: ../bonobo/bonobo-moniker-util.c:246 #, fuzzy msgid "Failed to activate object" msgstr "Kuri Kureka bigakora Igikoresho" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "" #: ../monikers/bonobo-moniker-oaf.c:62 #, fuzzy, c-format msgid "Failed to activate '%s'" msgstr "Kuri Kureka bigakora" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 #, fuzzy msgid "generic Oaf activation moniker" msgstr "Gifitanye isano" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 #, fuzzy msgid "generic Oaf query moniker" msgstr "Gifitanye isano Ikibazo#" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 #, fuzzy msgid "generic factory 'new' moniker" msgstr "Gifitanye isano" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 #, fuzzy msgid "generic item moniker" msgstr "Gifitanye isano Ikintu" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 #, fuzzy msgid "Bonobo Echo server factory" msgstr "Seriveri" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 #, fuzzy msgid "Bonobo Echo server sample program" msgstr "Seriveri Urugero Porogaramu" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "" #: ../samples/echo/echo-client.c:22 #, fuzzy msgid "I could not initialize Bonobo" msgstr "OYA gutangiza" #: ../samples/echo/echo-client.c:33 #, fuzzy msgid "Could not create an instance of the sample echo component" msgstr "OYA Kurema Urugero Bya Urugero" #: ../samples/echo/echo-client.c:45 #, fuzzy, c-format msgid "An exception occurred '%s'" msgstr "Irengayobora(-)" #: ../utils/bonobo-activation-sysconf.c:82 #, fuzzy msgid "Could not save configuration file.\n" msgstr "OYA Kubika Iboneza IDOSIYE" #: ../utils/bonobo-activation-sysconf.c:83 #, fuzzy, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "Ubwoko Uruhushya Kuri Kuri" #: ../utils/bonobo-activation-sysconf.c:86 #, fuzzy msgid "Successfully wrote configuration file.\n" msgstr "Iboneza IDOSIYE" #: ../utils/bonobo-activation-sysconf.c:103 #, fuzzy, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "Iboneza IDOSIYE ni" #: ../utils/bonobo-activation-sysconf.c:145 #, fuzzy, c-format msgid "%s already in configuration file\n" msgstr "%sin Iboneza" #: ../utils/bonobo-activation-sysconf.c:165 #, fuzzy msgid "there is not a properly structured configuration file\n" msgstr "ni OYA a Iboneza" #: ../utils/bonobo-activation-sysconf.c:236 #, fuzzy msgid "Bonobo-activation configuration file contains:\n" msgstr "Iboneza IDOSIYE Kirimo" #: ../utils/bonobo-activation-sysconf.c:266 #, fuzzy msgid "Directory to remove from configuration file" msgstr "Kuri Gukuraho... Bivuye Iboneza IDOSIYE" #: ../utils/bonobo-activation-sysconf.c:266 #: ../utils/bonobo-activation-sysconf.c:268 msgid "PATH" msgstr "" #: ../utils/bonobo-activation-sysconf.c:268 #, fuzzy msgid "Directory to add to configuration file" msgstr "Kuri Kongeramo Kuri Iboneza IDOSIYE" #: ../utils/bonobo-activation-sysconf.c:270 #, fuzzy msgid "Display directories in configuration file" msgstr "ububiko bw'amaderese in Iboneza IDOSIYE" #: ../utils/bonobo-activation-sysconf.c:272 #, fuzzy msgid "Display path to configuration file" msgstr "Inzira Kuri Iboneza IDOSIYE" #, fuzzy #~ msgid "Race condition activating server '%s'" #~ msgstr "Ibisabwa Seriveri" #, fuzzy #~ msgid "Too many alias levels for a locale, may indicate a loop" #~ msgstr "Irihimbano Intera kugirango a Umwanya Gicurasi a" # wizards/source\formwizard\dbwizres.src:RID_DB_FORM_WIZARD_START_+_60.text #, fuzzy #~ msgid "directory path" #~ msgstr "Inzira y'ububiko" libbonobo-2.32.1/po/be.po0000644000076400007640000004627611173072711012060 00000000000000# translation of libbonobo.HEAD.be.po to Belarusian # translation of libbonobo.HEAD.be.po to belarusian # This file is distributed under the same license as the PACKAGE package. # Copyright (C) 2005 THE PACKAGE'S COPYRIGHT HOLDER # Vital Khilko , 2003, 2005. # msgid "" msgstr "" "Project-Id-Version: libbonobo.HEAD.be\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2006-10-22 16:55+0200\n" "PO-Revision-Date: 2005-11-19 19:44+0200\n" "Last-Translator: Vital Khilko \n" "Language-Team: Belarusian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../activation-server/activation-context-corba.c:523 msgid "Couldn't find which child the server was listed in" msgstr "Немагчыма адшукаць чый нашчадак быў пералічаны" #: ../activation-server/activation-context-corba.c:815 msgid "Not a valid Activation ID" msgstr "Недапушчальны ID актывацыі" #: ../activation-server/activation-server-main.c:162 msgid "Directory to read .server files from" msgstr "Каталёг для чытаньня файлаў .server з" #: ../activation-server/activation-server-main.c:162 msgid "DIRECTORY" msgstr "КАТАЛЁГ" #: ../activation-server/activation-server-main.c:165 msgid "Serve as an ActivationContext (default is as an ObjectDirectory only)" msgstr "" "Абслугоўваць як ActivationContext (прадвызначанае толькі як ObjectDirectory)" #: ../activation-server/activation-server-main.c:169 msgid "File descriptor to write IOR to" msgstr "Дэскрыптар файла для запісу IOR у" #: ../activation-server/activation-server-main.c:169 #: ../bonobo-activation/bonobo-activation-init.c:355 #: ../bonobo-activation/bonobo-activation-init.c:365 msgid "FD" msgstr "FD" #: ../activation-server/activation-server-main.c:172 msgid "" "Register as the users' activation server without locking [!] for debugging" msgstr "" #: ../activation-server/activation-server-main.c:177 msgid "Query expression to evaluate" msgstr "Выраз запыту для ацэнкі" #: ../activation-server/activation-server-main.c:177 msgid "EXPRESSION" msgstr "ВЫРАЗ" #: ../activation-server/activation-server-main.c:426 #: ../utils/bonobo-activation-sysconf.c:304 #, c-format msgid "Run '%s --help' to see a full list of available command line options.\n" msgstr "" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:1 msgid "CORBA CosNaming service." msgstr "Паслуга CORBA CosNaming." #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:2 msgid "Name service" msgstr "Паслуга назваў" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:3 msgid "Notification service" msgstr "Паслуга паведамленьняў" #: ../activation-server/Bonobo_CosNaming_NamingContext.server.in.in.h:4 msgid "Notification service for activation" msgstr "Паслуга паведамленьняў для актывацыі" #: ../activation-server/object-directory-activate.c:235 msgid "We don't handle activating shlib objects in a remote process yet" msgstr "" "Мы ўсё яшчэ не падтрымліваем актывацыю аб'ектаў shlib у аддаленых працэсах" #: ../activation-server/object-directory-config-file.c:65 #, c-format msgid "" "The Bonobo Activation configuration file was not read successfully. Please, " "check it is valid in: %s" msgstr "" "Цяжкасьці з чытаньнем канфігурацыйнага файлу Bonobo Activation. Калі ласка, " "праверце наяўнасьць файлу: %s" #: ../activation-server/object-directory-load.c:101 msgid "a NULL iid is not valid" msgstr "NULL iid не зьяўляецца дапушчальным" #: ../activation-server/object-directory-load.c:105 #, c-format msgid "iid %s has a NULL type" msgstr "iid %s мае тып NULL" #: ../activation-server/object-directory-load.c:109 #, c-format msgid "iid %s has a NULL location" msgstr "iid %s мае NULL разьмяшчэньне" #: ../activation-server/object-directory-load.c:118 #, c-format msgid "invalid character '%c' in iid '%s'" msgstr "несапраўдны сымбаль '%c' у iid '%s'" #: ../activation-server/object-directory-load.c:348 #, c-format msgid "Property '%s' has no value" msgstr "Уласьцівасьць '%s' ня мае значэньня" #: ../activation-server/object-directory-load.c:580 #, c-format msgid "Could not parse badly formed XML document %s" msgstr "Немагчыма разабраць кепска сфармаваны XML-дакумэнт %s" #: ../activation-server/object-directory-load.c:627 #, c-format msgid "Trying dir %s" msgstr "Спроба каталёгу %s" #: ../bonobo-activation/bonobo-activation-fork-server.c:107 msgid "Child process did not give an error message, unknown failure occurred" msgstr "" "Працэс-нашчадак не рабіў паведамленьня аб памылцы; адбылася невядомая " "фатальная памылка" #: ../bonobo-activation/bonobo-activation-fork-server.c:237 #, c-format msgid "Failed to read from child process: %s\n" msgstr "Збой чытаньня з працэсу-нашчадка: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:247 msgid "EOF from child process\n" msgstr "EOF з працэсу-нашчадка: %s\n" #: ../bonobo-activation/bonobo-activation-fork-server.c:435 msgid "Couldn't spawn a new process" msgstr "Немагчыма стварыць новы працэс" #: ../bonobo-activation/bonobo-activation-init.c:355 #: ../bonobo-activation/bonobo-activation-init.c:365 msgid "File descriptor to print IOR on" msgstr "Файлавы дэскрыптар для друку IOR на" #: ../bonobo-activation/bonobo-activation-init.c:357 #: ../bonobo-activation/bonobo-activation-init.c:367 msgid "IID to activate" msgstr "IID для актывацыі" #: ../bonobo-activation/bonobo-activation-init.c:359 #: ../bonobo-activation/bonobo-activation-init.c:369 msgid "Prevent registering of server with OAF" msgstr "Перашкаджаючая рэгістрацыя паслужніку з OAF" #: ../bonobo-activation/bonobo-activation-init.c:403 msgid "Bonobo Activation" msgstr "Bonobo Activation" #: ../bonobo-activation/bonobo-activation-init.c:404 msgid "Show Bonobo Activation options" msgstr "Паказвае можнасьці Bonobo Activation" #: ../bonobo-activation/bonobo-activation-init.c:512 msgid "Bonobo activation options" msgstr "Можнасьці bonobo activation" #: ../bonobo-activation/bonobo-activation-shlib.c:107 #, c-format msgid "g_module_open of `%s' failed with `%s'" msgstr "g_module_open у `%s' памыліўся з `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:126 #: ../bonobo-activation/bonobo-activation-shlib.c:163 #, c-format msgid "Can't find symbol Bonobo_Plugin_info in `%s'" msgstr "Немагчыма адшукаць знак Bonobo_Plugin_info ў `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:212 #, c-format msgid "Factory `%s' returned NIL for `%s'" msgstr "Вытворчасьць `%s' вярнула NIL для `%s'" #: ../bonobo-activation/bonobo-activation-shlib.c:229 #, c-format msgid "Shlib `%s' didn't contain `%s'" msgstr "Shlib `%s' не зьмяшчае `%s'" #: ../bonobo/bonobo-application.c:352 msgid "Name" msgstr "Назва" #: ../bonobo/bonobo-application.c:352 msgid "Application unique name" msgstr "Унікальная назва дастасаваньня" #: ../bonobo/bonobo-object.c:923 msgid "POA" msgstr "POA" #: ../bonobo/bonobo-object.c:923 msgid "Custom CORBA POA" msgstr "Сваё CORBA POA" #: ../bonobo/bonobo-exception.c:154 msgid "An unsupported action was attempted" msgstr "Спроба дзеяньня, якое ня падтрымліваецца" #: ../bonobo/bonobo-exception.c:157 msgid "IO Error" msgstr "Памылка У/В (IO Error)" #: ../bonobo/bonobo-exception.c:160 msgid "Invalid argument value" msgstr "Недапушчальнае значэньне аргумэнту" #: ../bonobo/bonobo-exception.c:164 msgid "Object not found" msgstr "Аб'ект адсутнічае" #: ../bonobo/bonobo-exception.c:167 msgid "Syntax error in object description" msgstr "Сынтаксычная памылка ў апісаньні аб'екту" #: ../bonobo/bonobo-exception.c:172 msgid "Cannot activate object from factory" msgstr "Немагчыма актывізаваць аб'ект з вытворчасьці" #: ../bonobo/bonobo-exception.c:177 msgid "No permission to access stream" msgstr "Няма правоў для доступу да плыні" #: ../bonobo/bonobo-exception.c:180 msgid "An unsupported stream action was attempted" msgstr "Спроба дзеяньня плыні , якая не падтрымліваецца" #: ../bonobo/bonobo-exception.c:183 msgid "IO Error on stream" msgstr "Памылка У/В у плыні (IO Error)" #: ../bonobo/bonobo-exception.c:187 msgid "IO Error on storage" msgstr "Памылка У/В (IO Error) у сховішчы" #: ../bonobo/bonobo-exception.c:190 msgid "Name already exists in storage" msgstr "Назва ў сховішчы ўжо існуе" #: ../bonobo/bonobo-exception.c:193 msgid "Object not found in storage" msgstr "Аб'ект у сховішчы ўжо існуе" #: ../bonobo/bonobo-exception.c:196 msgid "No permission to do operation on storage" msgstr "Няма правоў для апэрацыі ў сховішчы" #: ../bonobo/bonobo-exception.c:198 msgid "An unsupported storage action was attempted" msgstr "Спроба дзеяньня сховішча , якое не падтрымліваецца" #: ../bonobo/bonobo-exception.c:200 msgid "Object is not a stream" msgstr "Аб'ект не плыня" #: ../bonobo/bonobo-exception.c:203 msgid "Object is not a storage" msgstr "Аб'ект ня сховішча" #: ../bonobo/bonobo-exception.c:206 msgid "Storage is not empty" msgstr "Сховішча ня пустое" #: ../bonobo/bonobo-exception.c:210 msgid "malformed user interface XML description" msgstr "памылковае XML-апісаньне інтэрфэйсу карыстальніка" #: ../bonobo/bonobo-exception.c:213 msgid "invalid path to XML user interface element" msgstr "памылковы шлях да XML-элемэнту інтэрфэйсу карыстальніка" #: ../bonobo/bonobo-exception.c:216 msgid "the requested UI attribute didn't exist" msgstr "запатрабаваны UI атрыбут ня існуе" #: ../bonobo/bonobo-exception.c:219 msgid "Unknown command or verb" msgstr "Невядомы загад ці дзеяньне" #: ../bonobo/bonobo-exception.c:222 msgid "Command is insensitive" msgstr "Каманда неадчувальная" #: ../bonobo/bonobo-exception.c:226 msgid "incorrect data type" msgstr "некарэктны тып даньняў" #: ../bonobo/bonobo-exception.c:229 msgid "stream not found" msgstr "плыня адсутнічае" #: ../bonobo/bonobo-exception.c:233 msgid "property not found" msgstr "уласьцівасьці адсутнічаюць" #: ../bonobo/bonobo-exception.c:236 msgid "property has invalid type" msgstr "уласьцівасьці маюць памылковы тып" #: ../bonobo/bonobo-exception.c:239 msgid "property is read only" msgstr "уласьцівасьці даступныя толькі на чытаньне" #: ../bonobo/bonobo-exception.c:242 msgid "config database backend failed " msgstr "памылка канфігурацыі базы даньняў " #: ../bonobo/bonobo-exception.c:246 msgid "Moniker interface cannot be found" msgstr "Інтэрфэйс мянушкі (moniker) адсутнічае" #: ../bonobo/bonobo-exception.c:249 msgid "Moniker activation timed out" msgstr "Тайм-аўт актывацыі мянушкі (moniker)" #: ../bonobo/bonobo-exception.c:252 msgid "Syntax error within moniker" msgstr "Сынтаксычная памылка ў мянушцы (moniker)" #: ../bonobo/bonobo-exception.c:255 msgid "Moniker has an unknown moniker prefix" msgstr "Мянушка (moniker) мае невядомы прэфікс" #: ../bonobo/bonobo-exception.c:279 msgid "Error checking error; no exception" msgstr "Памылка праверкі памылкі; няма выключэньняў" #: ../bonobo/bonobo-exception.c:288 msgid "General activation error with no description" msgstr "Агульная памылка зьдзяйсьненьня без апісаньня" #: ../bonobo/bonobo-generic-factory.h:79 ../bonobo/bonobo-generic-factory.h:83 msgid "Could not initialize Bonobo" msgstr "Немагчыма ініцыялізаваць Bonobo" #: ../bonobo/bonobo-moniker.c:342 #, c-format msgid "Failed to resolve, or extend '%s" msgstr "Памылка вырашэньня ці працяг '%s" #: ../bonobo/bonobo-moniker-util.c:246 msgid "Failed to activate object" msgstr "Збой актывацыі аб'екту" #: ../monikers/bonobo-moniker-oaf.c:53 #, c-format msgid "Exception activating '%s'" msgstr "Выключэньне актывацыі '%s" #: ../monikers/bonobo-moniker-oaf.c:62 #, c-format msgid "Failed to activate '%s'" msgstr "Памылка актывацыі '%s" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:1 msgid "HTTP Moniker" msgstr "HTTP Moniker" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:2 msgid "ORB IOR handling moniker" msgstr "Мянушка (moniker) апрацоўкі ORB IOR" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:3 msgid "Standard Moniker factory" msgstr "Стандартная вытворчасьць мянушкі (moniker)" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:4 msgid "generic Oaf activation moniker" msgstr "асноўная актывацыя Oaf мянушкі (moniker)" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:5 msgid "generic Oaf query moniker" msgstr "Асноўны запыт Oaf мянушкі (moniker)" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:6 msgid "generic factory 'new' moniker" msgstr "асноўная вытворчасьць \"новай\" мянушкі (moniker)" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:7 msgid "generic item moniker" msgstr "асноўны запіс мянушкі (moniker)" #: ../monikers/Bonobo_Moniker_std.server.in.in.h:8 msgid "stream MonikerExtender" msgstr "плыня MonikerExtender" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:1 msgid "Bonobo Echo server factory" msgstr "Вытворчасьць паслужніку Bonobo Echo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:2 msgid "Bonobo Echo server sample program" msgstr "Узор праграмы паслужніку Bonobo Echo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:3 msgid "Echo component" msgstr "Кампанэнт Echo" #: ../samples/echo/Bonobo_Sample_Echo.server.in.in.h:4 msgid "Echo component factory" msgstr "Вытворчасьць кампанэнты Echo" #: ../samples/echo/echo-client.c:22 msgid "I could not initialize Bonobo" msgstr "Немагчыма ініцыялізаваць Bonobo" #: ../samples/echo/echo-client.c:33 msgid "Could not create an instance of the sample echo component" msgstr "Немагчыма стварыць прыклад узору кампанэнты рэха" #: ../samples/echo/echo-client.c:45 #, c-format msgid "An exception occurred '%s'" msgstr "Здарылася выключэньне '%s'" #: ../utils/bonobo-activation-sysconf.c:82 msgid "Could not save configuration file.\n" msgstr "Немагчыма захаваць файл канфігурацыі.\n" #: ../utils/bonobo-activation-sysconf.c:83 #, c-format msgid "Please, make sure you have permissions to write to '%s'.\n" msgstr "Калі ласка, удакладніце ці маеце вы правы на запіс у '%s'.\n" #: ../utils/bonobo-activation-sysconf.c:86 msgid "Successfully wrote configuration file.\n" msgstr "Файл канфігурацыі быў з посьпехам запісаны.\n" #: ../utils/bonobo-activation-sysconf.c:103 #, c-format msgid "" "configuration file is:\n" " %s\n" msgstr "" "файл канфігурацыі:\n" " %s\n" #: ../utils/bonobo-activation-sysconf.c:145 #, c-format msgid "%s already in configuration file\n" msgstr "%s ўжо ў файле канфігурацыі\n" #: ../utils/bonobo-activation-sysconf.c:165 msgid "there is not a properly structured configuration file\n" msgstr "няма пэўным чынам пабудаванага канфігурацыйнага файлу\n" #: ../utils/bonobo-activation-sysconf.c:236 msgid "Bonobo-activation configuration file contains:\n" msgstr "Канфігурацыйны файл bonobo-activation зьмяшчае:\n" #: ../utils/bonobo-activation-sysconf.c:266 msgid "Directory to remove from configuration file" msgstr "Каталёг для выдаленьня з канфігурацыйнага файла" #: ../utils/bonobo-activation-sysconf.c:266 #: ../utils/bonobo-activation-sysconf.c:268 msgid "PATH" msgstr "" #: ../utils/bonobo-activation-sysconf.c:268 msgid "Directory to add to configuration file" msgstr "Каталёг для даданьня ў канфігурацыйны файл" #: ../utils/bonobo-activation-sysconf.c:270 msgid "Display directories in configuration file" msgstr "Адлюстраваць каталёгі ў канфігурацыйным файле" #: ../utils/bonobo-activation-sysconf.c:272 msgid "Display path to configuration file" msgstr "Адлюстраваць шлях да канфігурацыйнага файла" #~ msgid "Race condition activating server '%s'" #~ msgstr "Актывацыя паслужніку '%s' ў стане гонкі" #~ msgid "directory path" #~ msgstr "шлях да каталёгу" #~ msgid "Child received signal %u (%s)" #~ msgstr "Нашчадак атрымаў сыгнал %u (%s)" #~ msgid "Unknown non-exit error (status is %u)" #~ msgstr "Невядомая, няісная памылка (стан - гэта %u)" #~ msgid "bonobo-activation failed to set process group of %s: %s\n" #~ msgstr "" #~ "bonobo-activation: невыправімая памылка пры спробе ўсталяваць GID для " #~ "працэсу %s: %s\n" #~ msgid "Failed to execute %s: %d (%s)\n" #~ msgstr "Памылка пры спробе выканаць %s: %d (%s)\n" #~ msgid "Too many alias levels for a locale, may indicate a loop" #~ msgstr "Зашмат узроўняў мянушак для лякалі, магчыма зацыкленьне" #~ msgid "No server corresponding to your query" #~ msgstr "Няма паслужніку, які адпавядаў бы вашаму запыту" #~ msgid "Query failed: " #~ msgstr "Памылка запыту:" #~ msgid "Activation failed: " #~ msgstr "Памылка зьдзяйсьненьня:" #~ msgid "Could not parse AID" #~ msgstr "Немагчыма зразумець AID" #~ msgid "Could not parse context: " #~ msgstr "Немагчыма зразумець кантэкст:" #~ msgid "Could not activate server: " #~ msgstr "Немагчыма задзейнічаць паслужнік:" #~ msgid "Domain of ObjectDirectory" #~ msgstr "Маёнтак ObjectDirectory" #~ msgid "DOMAIN" #~ msgstr "МАЁНТАК" libbonobo-2.32.1/monikers/0000775000076400007640000000000011546334244012414 500000000000000libbonobo-2.32.1/monikers/bonobo-moniker-extender-stream.c0000644000076400007640000000555711173072711020531 00000000000000/* * bonobo-moniker-extender-stream.c: * * Author: * Dietmar Maurer (dietmar@helixcode.com) * * Copyright 2000, Ximian, Inc. */ #include #include #include #include #include #include #include "bonobo-moniker-std.h" static gchar * get_stream_type (Bonobo_Stream stream, CORBA_Environment *ev) { Bonobo_StorageInfo *info; gchar *type; g_return_val_if_fail (stream != CORBA_OBJECT_NIL, NULL); info = Bonobo_Stream_getInfo (stream, Bonobo_FIELD_CONTENT_TYPE, ev); if (BONOBO_EX (ev)) return NULL; type = g_strdup (info->content_type); CORBA_free (info); return type; } Bonobo_Unknown bonobo_stream_extender_resolve (BonoboMonikerExtender *extender, const Bonobo_Moniker m, const Bonobo_ResolveOptions *options, const CORBA_char *display_name, const CORBA_char *requested_interface, CORBA_Environment *ev) { char *mime_type; char *requirements; Bonobo_Unknown object; Bonobo_Unknown stream; Bonobo_Persist persist; #ifdef G_ENABLE_DEBUG g_message ("Stream extender: '%s'", display_name); #endif if (!m) return CORBA_OBJECT_NIL; stream = Bonobo_Moniker_resolve (m, options, "IDL:Bonobo/Stream:1.0", ev); if (!stream) return CORBA_OBJECT_NIL; mime_type = get_stream_type (stream, ev); if (!mime_type) goto unref_stream_exception; requirements = g_strdup_printf ( "bonobo:supported_mime_types.has ('%s') AND repo_ids.has ('%s') AND " "repo_ids.has ('IDL:Bonobo/PersistStream:1.0')", mime_type, requested_interface); object = bonobo_activation_activate (requirements, NULL, 0, NULL, ev); #ifdef G_ENABLE_DEBUG g_message ("Attempt activate object satisfying '%s': %p", requirements, object); #endif g_free (requirements); if (ev->_major != CORBA_NO_EXCEPTION) goto unref_stream_exception; if (object == CORBA_OBJECT_NIL) { #ifdef G_ENABLE_DEBUG g_warning ("Can't find object satisfying requirements"); #endif CORBA_exception_set (ev, CORBA_USER_EXCEPTION, ex_Bonobo_Moniker_InterfaceNotFound, NULL); goto unref_stream_exception; } persist = Bonobo_Unknown_queryInterface ( object, "IDL:Bonobo/PersistStream:1.0", ev); if (ev->_major != CORBA_NO_EXCEPTION) goto unref_object_exception; if (persist != CORBA_OBJECT_NIL) { Bonobo_PersistStream_load ( persist, stream, (const Bonobo_Persist_ContentType) mime_type, ev); bonobo_object_release_unref (persist, ev); bonobo_object_release_unref (stream, ev); return bonobo_moniker_util_qi_return ( object, requested_interface, ev); } g_free (mime_type); unref_object_exception: bonobo_object_release_unref (object, ev); unref_stream_exception: bonobo_object_release_unref (stream, ev); return CORBA_OBJECT_NIL; } libbonobo-2.32.1/monikers/bonobo-moniker-std.c0000644000076400007640000000323211173072711016200 00000000000000#include "config.h" #include #include #include "bonobo-moniker-std.h" static BonoboObject * bonobo_std_moniker_factory (BonoboGenericFactory *this, const char *object_id, void *data) { g_return_val_if_fail (object_id != NULL, NULL); if (!strcmp (object_id, "OAFIID:Bonobo_Moniker_Item")) return BONOBO_OBJECT (bonobo_moniker_simple_new ( "!", bonobo_moniker_item_resolve)); else if (!strcmp (object_id, "OAFIID:Bonobo_Moniker_IOR")) return BONOBO_OBJECT (bonobo_moniker_simple_new ( "IOR:", bonobo_moniker_ior_resolve)); else if (!strcmp (object_id, "OAFIID:Bonobo_Moniker_Oaf")) return BONOBO_OBJECT (bonobo_moniker_simple_new ( "oafiid:", bonobo_moniker_oaf_resolve)); else if (!strcmp (object_id, "OAFIID:Bonobo_Moniker_Cache")) return BONOBO_OBJECT (bonobo_moniker_simple_new ( "cache:", bonobo_moniker_cache_resolve)); else if (!strcmp (object_id, "OAFIID:Bonobo_Moniker_New")) return BONOBO_OBJECT (bonobo_moniker_simple_new ( "new:", bonobo_moniker_new_resolve)); else if (!strcmp (object_id, "OAFIID:Bonobo_Moniker_Query")) return BONOBO_OBJECT (bonobo_moniker_simple_new ( "query:(", bonobo_moniker_query_resolve)); else if (!strcmp (object_id, "OAFIID:Bonobo_MonikerExtender_stream")) return BONOBO_OBJECT (bonobo_moniker_extender_new ( bonobo_stream_extender_resolve, NULL)); #ifdef G_ENABLE_DEBUG else g_warning ("Failing to manufacture a '%s'", object_id); #endif return NULL; } BONOBO_ACTIVATION_SHLIB_FACTORY ("OAFIID:Bonobo_Moniker_std_Factory", "bonobo standard moniker", bonobo_std_moniker_factory, NULL) libbonobo-2.32.1/monikers/bonobo-moniker-cache.c0000644000076400007640000000300311173072711016445 00000000000000/* * bonobo-moniker-cache.c: * * Author: * Dietmar Maurer (dietmar@helixcode.com) * * Copyright 2000 Ximian, Inc. */ #include #include #include #include "bonobo-moniker-std.h" #include "bonobo-stream-cache.h" Bonobo_Unknown bonobo_moniker_cache_resolve (BonoboMoniker *moniker, const Bonobo_ResolveOptions *options, const CORBA_char *requested_interface, CORBA_Environment *ev) { Bonobo_Moniker parent; BonoboStream *stream; Bonobo_Stream in_stream; if (!strcmp (requested_interface, "IDL:Bonobo/Stream:1.0")) { parent = bonobo_moniker_get_parent (moniker, ev); if (BONOBO_EX (ev) || parent == CORBA_OBJECT_NIL) return CORBA_OBJECT_NIL; in_stream = Bonobo_Moniker_resolve (parent, options, "IDL:Bonobo/Stream:1.0", ev); if (BONOBO_EX (ev) || in_stream == CORBA_OBJECT_NIL) { bonobo_object_release_unref (parent, NULL); return CORBA_OBJECT_NIL; } bonobo_object_release_unref (parent, ev); if (BONOBO_EX (ev)) return CORBA_OBJECT_NIL; stream = bonobo_stream_cache_create (in_stream, ev); if (BONOBO_EX (ev) || stream == CORBA_OBJECT_NIL) { bonobo_object_release_unref (in_stream, NULL); return CORBA_OBJECT_NIL; } bonobo_object_release_unref (in_stream, ev); if (BONOBO_EX (ev)) return CORBA_OBJECT_NIL; return CORBA_Object_duplicate (BONOBO_OBJREF (stream), ev); } return CORBA_OBJECT_NIL; /* use the extender */ } libbonobo-2.32.1/monikers/bonobo-moniker-query.h0000644000076400007640000000256611173072711016571 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ #ifndef _BONOBO_MONIKER_QUERY_H_ #define _BONOBO_MONIKER_QUERY_H_ G_BEGIN_DECLS #define BONOBO_TYPE_MONIKER_QUERY (bonobo_moniker_query_get_type ()) #define BONOBO_MONIKER_QUERY_TYPE BONOBO_TYPE_MONIKER_QUERY /* deprecated, you should use BONOBO_TYPE_MONIKER_QUERY */ #define BONOBO_MONIKER_QUERY(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), BONOBO_TYPE_MONIKER_QUERY, BonoboMonikerQuery)) #define BONOBO_MONIKER_QUERY_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), BONOBO_TYPE_MONIKER_QUERY, BonoboMonikerQueryClass)) #define BONOBO_IS_MONIKER_QUERY(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), BONOBO_TYPE_MONIKER_QUERY)) #define BONOBO_IS_MONIKER_QUERY_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), BONOBO_TYPE_MONIKER_QUERY)) typedef struct _BonoboMonikerQuery BonoboMonikerQuery; typedef struct _BonoboMonikerQueryPrivate BonoboMonikerQueryPrivate; struct _BonoboMonikerQuery { BonoboMoniker parent; BonoboMonikerQueryPrivate *priv; }; typedef struct { BonoboMonikerClass parent_class; } BonoboMonikerQueryClass; GType bonobo_moniker_query_get_type (void); BonoboMoniker *bonobo_moniker_query_construct (BonoboMonikerQuery *moniker, Bonobo_Moniker corba_moniker); BonoboMoniker *bonobo_moniker_query_new (void); G_END_DECLS #endif /* _BONOBO_MONIKER_QUERY_H_ */ libbonobo-2.32.1/monikers/Makefile.am0000664000076400007640000000325211433015514014361 00000000000000INCLUDES = \ -I$(top_srcdir) \ $(WARN_CFLAGS) \ $(LIBBONOBO_CFLAGS) \ -DPLUGIN_DIR=\""$(PLUGIN_DIR)"\" \ -DBONOBO_LIBDIR=\""$(libdir)"\" \ -DBONOBO_DATADIR=\""$(datadir)"\" \ -DBONOBO_PIXMAPDIR=\""$(datadir)/pixmaps"\" \ -DBONOBO_BINDIR=\""$(bindir)"\" \ -DBONOBO_LOCALSTATEDIR=\""$(localstatedir)"\" \ -DBONOBO_LOCALEDIR=\""$(datadir)/locale"\" \ $(DISABLE_DEPRECATED_CFLAGS) \ -DG_LOG_DOMAIN=\"Bonobo\" \ -DVERSION=\"$(VERSION)\" Bonobo_Moniker_std.server.in: Bonobo_Moniker_std.server.in.in $(AM_V_GEN) $(SED) -e "s|\@MONIKER_LIBDIR\@|$(monikerdir_in_server_file)|" -e "s|\@SOPREFIX\@|$(SOPREFIX)|" $< > $@ CLEANFILES = Bonobo_Moniker_std.server Bonobo_Moniker_std.server.in serverdir = $(libdir)/bonobo/servers server_DATA = Bonobo_Moniker_std.server @INTLTOOL_SERVER_RULE@ monikerdir = $(libdir)/bonobo/monikers if OS_WIN32 monikerdir_in_server_file = ../monikers else monikerdir_in_server_file = $(monikerdir) endif moniker_LTLIBRARIES = libmoniker_std_2.la libmoniker_std_2_la_SOURCES = \ bonobo-moniker-extender-stream.c \ bonobo-moniker-item.c \ bonobo-moniker-new.c \ bonobo-moniker-ior.c \ bonobo-moniker-oaf.c \ bonobo-moniker-cache.c \ bonobo-stream-cache.h \ bonobo-stream-cache.c \ bonobo-moniker-query.c \ bonobo-moniker-query.h \ bonobo-moniker-std.h \ bonobo-moniker-std.c libmoniker_std_2_la_LDFLAGS = -module -avoid-version -no-undefined libmoniker_std_2_la_LIBADD = $(top_builddir)/bonobo/libbonobo-2.la \ $(top_builddir)/bonobo-activation/libbonobo-activation.la \ $(LIBBONOBO_LIBS) \ $(INTLLIBS) EXTRA_DIST = Bonobo_Moniker_std.server.in.in libbonobo-2.32.1/monikers/bonobo-stream-cache.c0000644000076400007640000002400711173072711016303 00000000000000/* * bonobo-stream-cache.c: * * A simple cache for streams (direct mapped, write back) * * Authors: * Dietmar Maurer (dietmar@ximian.com) * Michael Meeks (michael@ximian.com) * * Copyright 2000, 2001 Ximian, Inc. */ #include #include #include #include #include "bonobo-stream-cache.h" /* configurable values for cache size */ #define SC_PAGE_SIZE_BITS 14 #define SC_CACHE_SIZE_BITS 5 /* some handy macros */ #define SC_PAGE_SIZE (1 << (SC_PAGE_SIZE_BITS - 1)) #define SC_CACHE_SIZE (1 << (SC_CACHE_SIZE_BITS - 1)) #define SC_CACHE_TAG(pos) (pos >> (SC_PAGE_SIZE_BITS - 1)) #define SC_TAG_POS(tag) (tag << (SC_PAGE_SIZE_BITS - 1)) #define SC_CACHE_INDEX(pos) (SC_CACHE_TAG(pos) & (SC_CACHE_SIZE - 1)) #define SC_BLOCK_OFFSET(pos) (pos & (SC_PAGE_SIZE - 1)) typedef struct { char buf [SC_PAGE_SIZE]; long tag; gboolean valid; gboolean dirty; } CacheEntry; struct _BonoboStreamCachePrivate { Bonobo_Stream cs; long pos; long size; CacheEntry cache [SC_CACHE_SIZE]; }; static void bonobo_stream_cache_invalidate (BonoboStreamCache *stream_cache, long pos) { long i, tag = SC_CACHE_TAG (pos); for (i = 0; i < SC_CACHE_SIZE; i++) { if (stream_cache->priv->cache [i].valid && (stream_cache->priv->cache [i].tag >= tag)) stream_cache->priv->cache [i].valid = FALSE; } } static void bonobo_stream_cache_flush (BonoboStreamCache *stream, int index, CORBA_Environment *ev) { long i, end, pos; end = index < 0 ? SC_CACHE_SIZE : index + 1; for (i = index < 0 ? 0 : index; i < end; i++) { if (((index < 0) || (index == i)) && stream->priv->cache [i].valid && stream->priv->cache [i].dirty) { pos = SC_TAG_POS (stream->priv->cache [i].tag); Bonobo_Stream_seek (stream->priv->cs, pos, Bonobo_Stream_SeekSet, ev); if (BONOBO_EX (ev)) continue; bonobo_stream_client_write (stream->priv->cs, stream->priv->cache [i].buf, SC_PAGE_SIZE, ev); if (!BONOBO_EX (ev)) stream->priv->cache [i].dirty = FALSE; } } } static void bonobo_stream_cache_load (BonoboStreamCache *stream, long tag, CORBA_Environment *ev) { Bonobo_Stream_iobuf *iobuf; long pos, index; pos = SC_TAG_POS (tag); index = SC_CACHE_INDEX (pos); bonobo_stream_cache_flush (stream, index, ev); if (BONOBO_EX (ev)) return; Bonobo_Stream_seek (stream->priv->cs, pos, Bonobo_Stream_SeekSet, ev); if (BONOBO_EX (ev)) return; Bonobo_Stream_read (stream->priv->cs, SC_PAGE_SIZE, &iobuf, ev); if (BONOBO_EX (ev)) return; if (iobuf->_length < SC_PAGE_SIZE) /* eof - fill with zero */ memset (stream->priv->cache [index].buf + iobuf->_length, 0, SC_PAGE_SIZE - iobuf->_length); if ((pos + iobuf->_length) > stream->priv->size) stream->priv->size = pos + iobuf->_length; memcpy (stream->priv->cache [index].buf, iobuf->_buffer, iobuf->_length); stream->priv->cache [index].valid = TRUE; stream->priv->cache [index].dirty = FALSE; stream->priv->cache [index].tag = tag; CORBA_free (iobuf); } static long bonobo_stream_cache_read (BonoboStreamCache *stream, long count, char *buffer, CORBA_Environment *ev) { long tag, bytes_read = 0; int index, offset, bc, d; while (bytes_read < count) { index = SC_CACHE_INDEX (stream->priv->pos); offset = SC_BLOCK_OFFSET (stream->priv->pos); tag = SC_CACHE_TAG (stream->priv->pos); if ((stream->priv->pos < stream->priv->size) && stream->priv->cache [index].valid && stream->priv->cache [index].tag == tag) { bc = SC_PAGE_SIZE - offset; if ((bytes_read + bc) > count) bc = count - bytes_read; if ((d = (stream->priv->pos + bc) - stream->priv->size) > 0) bc -= d; if (!bc) return bytes_read; memcpy (buffer + bytes_read, stream->priv->cache [index].buf + offset, bc); bytes_read += bc; stream->priv->pos += bc; } else { bonobo_stream_cache_load (stream, tag, ev); if (BONOBO_EX (ev)) break; if (stream->priv->pos >= stream->priv->size) break; } } return bytes_read; } static void bonobo_stream_cache_destroy (BonoboObject *object) { BonoboStreamCache *stream_cache = BONOBO_STREAM_CACHE (object); if (stream_cache->priv->cs) bonobo_object_release_unref (stream_cache->priv->cs, NULL); g_free (stream_cache->priv); } static Bonobo_StorageInfo* cache_getInfo (PortableServer_Servant servant, const Bonobo_StorageInfoFields mask, CORBA_Environment *ev) { BonoboStreamCache *stream_cache = BONOBO_STREAM_CACHE ( bonobo_object (servant)); return Bonobo_Stream_getInfo (stream_cache->priv->cs, mask, ev); } static void cache_setInfo (PortableServer_Servant servant, const Bonobo_StorageInfo *info, const Bonobo_StorageInfoFields mask, CORBA_Environment *ev) { BonoboStreamCache *stream_cache = BONOBO_STREAM_CACHE ( bonobo_object (servant)); Bonobo_Stream_setInfo (stream_cache->priv->cs, info, mask, ev); } static void cache_write (PortableServer_Servant servant, const Bonobo_Stream_iobuf *buffer, CORBA_Environment *ev) { BonoboStreamCache *stream = BONOBO_STREAM_CACHE ( bonobo_object (servant)); long tag, bytes_written = 0; int index, offset, bc; while (bytes_written < buffer->_length) { index = SC_CACHE_INDEX (stream->priv->pos); offset = SC_BLOCK_OFFSET (stream->priv->pos); tag = SC_CACHE_TAG (stream->priv->pos); if (stream->priv->cache [index].valid && stream->priv->cache [index].tag == tag) { bc = SC_PAGE_SIZE - offset; if (bc > buffer->_length) bc = buffer->_length; memcpy (stream->priv->cache [index].buf + offset, buffer->_buffer + bytes_written, bc); bytes_written += bc; stream->priv->pos += bc; stream->priv->cache [index].dirty = TRUE; } else { bonobo_stream_cache_load (stream, tag, ev); if (BONOBO_EX (ev)) break; } } } static void cache_read (PortableServer_Servant servant, CORBA_long count, Bonobo_Stream_iobuf **buffer, CORBA_Environment *ev) { BonoboStreamCache *stream_cache = BONOBO_STREAM_CACHE ( bonobo_object (servant)); CORBA_octet *data; if (count < 0) { bonobo_exception_set (ev, ex_Bonobo_Stream_IOError); return; } *buffer = Bonobo_Stream_iobuf__alloc (); CORBA_sequence_set_release (*buffer, TRUE); data = CORBA_sequence_CORBA_octet_allocbuf (count); (*buffer)->_buffer = data; (*buffer)->_length = bonobo_stream_cache_read (stream_cache, count, data, ev); } static CORBA_long cache_seek (PortableServer_Servant servant, CORBA_long offset, Bonobo_Stream_SeekType whence, CORBA_Environment *ev) { BonoboStreamCache *stream_cache = BONOBO_STREAM_CACHE ( bonobo_object (servant)); stream_cache->priv->pos = Bonobo_Stream_seek (stream_cache->priv->cs, offset, whence, ev); return stream_cache->priv->pos; } static void cache_truncate (PortableServer_Servant servant, const CORBA_long new_size, CORBA_Environment *ev) { BonoboStreamCache *stream_cache = BONOBO_STREAM_CACHE ( bonobo_object (servant)); bonobo_stream_cache_invalidate (stream_cache, new_size); stream_cache->priv->size = new_size; Bonobo_Stream_truncate (stream_cache->priv->cs, new_size, ev); } static void cache_commit (PortableServer_Servant servant, CORBA_Environment *ev) { BonoboStreamCache *stream_cache = BONOBO_STREAM_CACHE ( bonobo_object (servant)); bonobo_stream_cache_flush (stream_cache, -1, ev); Bonobo_Stream_commit (stream_cache->priv->cs, ev); } static void cache_revert (PortableServer_Servant servant, CORBA_Environment *ev) { BonoboStreamCache *stream_cache = BONOBO_STREAM_CACHE ( bonobo_object (servant)); bonobo_stream_cache_invalidate (stream_cache, 0); Bonobo_Stream_revert (stream_cache->priv->cs, ev); } static void bonobo_stream_cache_init (BonoboStreamCache *stream) { stream->priv = g_new0 (BonoboStreamCachePrivate, 1); } static void bonobo_stream_cache_class_init (BonoboStreamCacheClass *klass) { BonoboObjectClass *object_class = (BonoboObjectClass *) klass; POA_Bonobo_Stream__epv *epv = &klass->epv; epv->getInfo = cache_getInfo; epv->setInfo = cache_setInfo; epv->write = cache_write; epv->read = cache_read; epv->seek = cache_seek; epv->truncate = cache_truncate; epv->commit = cache_commit; epv->revert = cache_revert; object_class->destroy = bonobo_stream_cache_destroy; } GType bonobo_stream_cache_get_type (void) { static GType type = 0; if (!type) { GTypeInfo info = { sizeof (BonoboStreamCacheClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) bonobo_stream_cache_class_init, (GClassFinalizeFunc) NULL, NULL, /* class_data */ sizeof (BonoboStreamCache), 0, (GInstanceInitFunc) bonobo_stream_cache_init }; type = bonobo_type_unique ( BONOBO_TYPE_OBJECT, POA_Bonobo_Stream__init, NULL, G_STRUCT_OFFSET (BonoboStreamCacheClass, epv), &info, "BonoboStreamCache"); } return type; } /** * bonobo_stream_cache_create: * @cs: a reference to the stream we want to cache * @opt_ev: an optional environment * * Returns a new BonoboStream object */ BonoboObject * bonobo_stream_cache_create (Bonobo_Stream cs, CORBA_Environment *opt_ev) { BonoboStreamCache *stream; CORBA_Environment ev, *my_ev; bonobo_return_val_if_fail (cs != NULL, NULL, opt_ev); if (!(stream = g_object_new (bonobo_stream_cache_get_type (), NULL))) { if (opt_ev) bonobo_exception_set (opt_ev, ex_Bonobo_Storage_IOError); return NULL; } if (!opt_ev) { CORBA_exception_init (&ev); my_ev = &ev; } else my_ev = opt_ev; stream->priv->cs = bonobo_object_dup_ref (cs, my_ev); if (BONOBO_EX (my_ev)) { if (!opt_ev) CORBA_exception_free (&ev); bonobo_object_unref (BONOBO_OBJECT (stream)); return NULL; } if (!opt_ev) CORBA_exception_free (&ev); return (BonoboObject *) stream; } libbonobo-2.32.1/monikers/Bonobo_Moniker_std.server.in.in0000644000076400007640000000673711173072711020357 00000000000000 libbonobo-2.32.1/monikers/bonobo-moniker-new.c0000644000076400007640000000276611173072711016212 00000000000000/* * gnome-moniker-new.c: Sample generic factory 'new' * Moniker implementation. * * Author: * Michael Meeks (michael@helixcode.com) * * Copyright 2000, Ximian, Inc. */ #include #include #include "bonobo-moniker-std.h" Bonobo_Unknown bonobo_moniker_new_resolve (BonoboMoniker *moniker, const Bonobo_ResolveOptions *options, const CORBA_char *requested_interface, CORBA_Environment *ev) { Bonobo_Moniker parent; Bonobo_GenericFactory factory; Bonobo_Unknown containee; Bonobo_Unknown retval = CORBA_OBJECT_NIL; parent = bonobo_moniker_get_parent (moniker, ev); if (ev->_major != CORBA_NO_EXCEPTION) return CORBA_OBJECT_NIL; g_assert (parent != CORBA_OBJECT_NIL); factory = Bonobo_Moniker_resolve (parent, options, "IDL:Bonobo/GenericFactory:1.0", ev); if (ev->_major != CORBA_NO_EXCEPTION) goto return_unref_parent; if (factory == CORBA_OBJECT_NIL) { #ifdef G_ENABLE_DEBUG g_warning ("Failed to extract a factory from our parent"); #endif CORBA_exception_set (ev, CORBA_USER_EXCEPTION, ex_Bonobo_Moniker_InterfaceNotFound, NULL); goto return_unref_parent; } containee = Bonobo_GenericFactory_createObject ( factory, requested_interface, ev); bonobo_object_release_unref (factory, ev); return bonobo_moniker_util_qi_return (containee, requested_interface, ev); return_unref_parent: bonobo_object_release_unref (parent, ev); return retval; } libbonobo-2.32.1/monikers/bonobo-moniker-item.c0000644000076400007640000000337611173072711016355 00000000000000/* * gnome-moniker-item.c: Sample item-system based Moniker implementation * * This is the item (container) based Moniker implementation. * * Author: * Michael Meeks (michael@helixcode.com) */ #include #include #include #include "bonobo-moniker-std.h" Bonobo_Unknown bonobo_moniker_item_resolve (BonoboMoniker *moniker, const Bonobo_ResolveOptions *options, const CORBA_char *requested_interface, CORBA_Environment *ev) { Bonobo_Moniker parent; Bonobo_ItemContainer container; Bonobo_Unknown containee; Bonobo_Unknown retval = CORBA_OBJECT_NIL; parent = bonobo_moniker_get_parent (moniker, ev); if (BONOBO_EX (ev)) return CORBA_OBJECT_NIL; if (parent == CORBA_OBJECT_NIL) { #ifdef G_ENABLE_DEBUG g_warning ("Item moniker with no parent !"); #endif CORBA_exception_set (ev, CORBA_USER_EXCEPTION, ex_Bonobo_Moniker_InterfaceNotFound, NULL); return CORBA_OBJECT_NIL; } container = Bonobo_Moniker_resolve (parent, options, "IDL:Bonobo/ItemContainer:1.0", ev); if (BONOBO_EX (ev)) goto return_unref_parent; if (container == CORBA_OBJECT_NIL) { #ifdef G_ENABLE_DEBUG g_warning ("Failed to extract a container from our parent"); #endif CORBA_exception_set (ev, CORBA_USER_EXCEPTION, ex_Bonobo_Moniker_InterfaceNotFound, NULL); goto return_unref_parent; } containee = Bonobo_ItemContainer_getObjectByName ( container, bonobo_moniker_get_name (moniker), TRUE, ev); bonobo_object_release_unref (container, ev); return bonobo_moniker_util_qi_return (containee, requested_interface, ev); return_unref_parent: bonobo_object_release_unref (parent, ev); return retval; } libbonobo-2.32.1/monikers/bonobo-moniker-ior.c0000644000076400007640000000302211173072711016174 00000000000000/* * gnome-moniker-ior.c: Sample ior-system based Moniker implementation * * This is the ior (container) based Moniker implementation. * * Author: * Michael Meeks (michael@helixcode.com) */ #include #include #include #include #include "bonobo-moniker-std.h" Bonobo_Unknown bonobo_moniker_ior_resolve (BonoboMoniker *moniker, const Bonobo_ResolveOptions *options, const CORBA_char *requested_interface, CORBA_Environment *ev) { const char *ior; CORBA_Object object; Bonobo_Unknown retval; gboolean is_unknown, is_correct; ior = bonobo_moniker_get_name (moniker); object = CORBA_ORB_string_to_object (bonobo_orb (), ior, ev); BONOBO_RET_VAL_EX (ev, CORBA_OBJECT_NIL); is_unknown = CORBA_Object_is_a (object, "IDL:Bonobo/Unknown:1.0", ev); BONOBO_RET_VAL_EX (ev, CORBA_OBJECT_NIL); if (!is_unknown) { is_correct = CORBA_Object_is_a (object, requested_interface, ev); BONOBO_RET_VAL_EX (ev, CORBA_OBJECT_NIL); if (is_correct) return object; else { CORBA_exception_set ( ev, CORBA_USER_EXCEPTION, ex_Bonobo_Moniker_InterfaceNotFound, NULL); return CORBA_OBJECT_NIL; } } retval = Bonobo_Unknown_queryInterface ( object, requested_interface, ev); BONOBO_RET_VAL_EX (ev, CORBA_OBJECT_NIL); if (retval == CORBA_OBJECT_NIL) CORBA_exception_set ( ev, CORBA_USER_EXCEPTION, ex_Bonobo_Moniker_InterfaceNotFound, NULL); return retval; } libbonobo-2.32.1/monikers/bonobo-moniker-query.c0000644000076400007640000000254511173072711016561 00000000000000/* * gnome-moniker-query.c: Sample query-activation based Moniker implementation * * This is the Oaf query based Moniker implementation. * * Author: * Michael Meeks (michael@helixcode.com) */ #include #include #include #include #include "bonobo-moniker-std.h" Bonobo_Unknown bonobo_moniker_query_resolve (BonoboMoniker *moniker, const Bonobo_ResolveOptions *options, const CORBA_char *requested_interface, CORBA_Environment *ev) { Bonobo_Moniker parent; Bonobo_Unknown object; char *query; parent = bonobo_moniker_get_parent (moniker, ev); if (ev->_major != CORBA_NO_EXCEPTION) return CORBA_OBJECT_NIL; if (parent != CORBA_OBJECT_NIL) { bonobo_object_release_unref (parent, ev); #ifdef G_ENABLE_DEBUG g_warning ("wierd; queryied moniker with a parent; strange"); #endif CORBA_exception_set (ev, CORBA_USER_EXCEPTION, ex_Bonobo_Moniker_InterfaceNotFound, NULL); return CORBA_OBJECT_NIL; } query = g_strdup_printf ("%s AND repo_ids.has ('%s')", bonobo_moniker_get_name (moniker), requested_interface); object = bonobo_activation_activate (query, NULL, 0, NULL, ev); g_free (query); return bonobo_moniker_util_qi_return (object, requested_interface, ev); } libbonobo-2.32.1/monikers/bonobo-moniker-std.h0000644000076400007640000000374311173072711016214 00000000000000#ifndef _BONOBO_MONIKER_STD_H_ #define _BONOBO_MONIKER_STD_H_ #include #include Bonobo_Unknown bonobo_moniker_item_resolve (BonoboMoniker *moniker, const Bonobo_ResolveOptions *options, const CORBA_char *requested_interface, CORBA_Environment *ev); Bonobo_Unknown bonobo_moniker_ior_resolve (BonoboMoniker *moniker, const Bonobo_ResolveOptions *options, const CORBA_char *requested_interface, CORBA_Environment *ev); Bonobo_Unknown bonobo_moniker_oaf_resolve (BonoboMoniker *moniker, const Bonobo_ResolveOptions *options, const CORBA_char *requested_interface, CORBA_Environment *ev); Bonobo_Unknown bonobo_moniker_cache_resolve (BonoboMoniker *moniker, const Bonobo_ResolveOptions *options, const CORBA_char *requested_interface, CORBA_Environment *ev); Bonobo_Unknown bonobo_moniker_query_resolve (BonoboMoniker *moniker, const Bonobo_ResolveOptions *options, const CORBA_char *requested_interface, CORBA_Environment *ev); Bonobo_Unknown bonobo_moniker_new_resolve (BonoboMoniker *moniker, const Bonobo_ResolveOptions *options, const CORBA_char *requested_interface, CORBA_Environment *ev); /* extender functions */ Bonobo_Unknown bonobo_stream_extender_resolve (BonoboMonikerExtender *extender, const Bonobo_Moniker m, const Bonobo_ResolveOptions *options, const CORBA_char *display_name, const CORBA_char *requested_interface, CORBA_Environment *ev); #endif /* _BONOBO_MONIKER_STD_H_ */ libbonobo-2.32.1/monikers/bonobo-stream-cache.h0000644000076400007640000000232311173072711016305 00000000000000#ifndef _BONOBO_STREAM_CACHE_H_ #define _BONOBO_STREAM_CACHE_H_ #include G_BEGIN_DECLS #define BONOBO_TYPE_STREAM_CACHE (bonobo_stream_cache_get_type ()) #define BONOBO_STREAM_CACHE_TYPE BONOBO_TYPE_STREAM_CACHE /* deprecated, you should use BONOBO_TYPE_STREAM_CACHE */ #define BONOBO_STREAM_CACHE(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), BONOBO_TYPE_STREAM_CACHE, BonoboStreamCache)) #define BONOBO_STREAM_CACHE_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), BONOBO_TYPE_STREAM_CACHE, BonoboStreamCacheClass)) #define BONOBO_IS_STREAM_CACHE(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), BONOBO_TYPE_STREAM_CACHE)) #define BONOBO_IS_STREAM_CACHE_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), BONOBO_TYPE_STREAM_CACHE)) typedef struct _BonoboStreamCachePrivate BonoboStreamCachePrivate; typedef struct { BonoboObject object; BonoboStreamCachePrivate *priv; } BonoboStreamCache; typedef struct { BonoboObjectClass parent_class; POA_Bonobo_Stream__epv epv; } BonoboStreamCacheClass; GType bonobo_stream_cache_get_type (void); BonoboObject *bonobo_stream_cache_create (Bonobo_Stream cs, CORBA_Environment *opt_ev); G_END_DECLS #endif /* _BONOBO_STREAM_CACHE_H_ */ libbonobo-2.32.1/monikers/Makefile.in0000664000076400007640000005444511546333027014413 00000000000000# Makefile.in generated by automake 1.11.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008, 2009 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@ VPATH = @srcdir@ 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 = monikers DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.in 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__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__installdirs = "$(DESTDIR)$(monikerdir)" "$(DESTDIR)$(serverdir)" LTLIBRARIES = $(moniker_LTLIBRARIES) am__DEPENDENCIES_1 = libmoniker_std_2_la_DEPENDENCIES = \ $(top_builddir)/bonobo/libbonobo-2.la \ $(top_builddir)/bonobo-activation/libbonobo-activation.la \ $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) am_libmoniker_std_2_la_OBJECTS = bonobo-moniker-extender-stream.lo \ bonobo-moniker-item.lo bonobo-moniker-new.lo \ bonobo-moniker-ior.lo bonobo-moniker-oaf.lo \ bonobo-moniker-cache.lo bonobo-stream-cache.lo \ bonobo-moniker-query.lo bonobo-moniker-std.lo libmoniker_std_2_la_OBJECTS = $(am_libmoniker_std_2_la_OBJECTS) AM_V_lt = $(am__v_lt_$(V)) am__v_lt_ = $(am__v_lt_$(AM_DEFAULT_VERBOSITY)) am__v_lt_0 = --silent libmoniker_std_2_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ $(AM_CFLAGS) $(CFLAGS) $(libmoniker_std_2_la_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_$(V)) am__v_CC_ = $(am__v_CC_$(AM_DEFAULT_VERBOSITY)) am__v_CC_0 = @echo " CC " $@; AM_V_at = $(am__v_at_$(V)) am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) 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_$(V)) am__v_CCLD_ = $(am__v_CCLD_$(AM_DEFAULT_VERBOSITY)) am__v_CCLD_0 = @echo " CCLD " $@; AM_V_GEN = $(am__v_GEN_$(V)) am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) am__v_GEN_0 = @echo " GEN " $@; SOURCES = $(libmoniker_std_2_la_SOURCES) DIST_SOURCES = $(libmoniker_std_2_la_SOURCES) DATA = $(server_DATA) ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ AR = @AR@ AS = @AS@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ BONOBO_ACTIVATION_LT_VERSION_INFO = @BONOBO_ACTIVATION_LT_VERSION_INFO@ BONOBO_MAJOR_VERSION = @BONOBO_MAJOR_VERSION@ BONOBO_MICRO_VERSION = @BONOBO_MICRO_VERSION@ BONOBO_MINOR_VERSION = @BONOBO_MINOR_VERSION@ BONOBO_SLAY = @BONOBO_SLAY@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DISABLE_DEPRECATED_CFLAGS = @DISABLE_DEPRECATED_CFLAGS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GREP = @GREP@ GTHREAD_CFLAGS = @GTHREAD_CFLAGS@ GTHREAD_LIBS = @GTHREAD_LIBS@ GTKDOC_CHECK = @GTKDOC_CHECK@ GTKDOC_MKPDF = @GTKDOC_MKPDF@ GTKDOC_REBASE = @GTKDOC_REBASE@ HTML_DIR = @HTML_DIR@ IF_BSD_PS = @IF_BSD_PS@ IF_CYGWIN_PS = @IF_CYGWIN_PS@ IF_POSIX_PS = @IF_POSIX_PS@ 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@ LD = @LD@ LDFLAGS = @LDFLAGS@ LEX = @LEX@ LEXLIB = @LEXLIB@ LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ LFLAGS = @LFLAGS@ LIBBONOBO_CFLAGS = @LIBBONOBO_CFLAGS@ LIBBONOBO_LIBS = @LIBBONOBO_LIBS@ LIBBONOBO_LT_VERSION_INFO = @LIBBONOBO_LT_VERSION_INFO@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIPO = @LIPO@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ NM = @NM@ NMEDIT = @NMEDIT@ OBJDUMP = @OBJDUMP@ OBJEXT = @OBJEXT@ ORBIT_IDL = @ORBIT_IDL@ OTOOL = @OTOOL@ OTOOL64 = @OTOOL64@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PERL_PATH = @PERL_PATH@ PKG_CONFIG = @PKG_CONFIG@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ PS_PATH = @PS_PATH@ RANLIB = @RANLIB@ SEARCHPATHSEP = @SEARCHPATHSEP@ SED = @SED@ SERVER_CFLAGS = @SERVER_CFLAGS@ SERVER_LIBS = @SERVER_LIBS@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SOPREFIX = @SOPREFIX@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ WARN_CFLAGS = @WARN_CFLAGS@ XGETTEXT = @XGETTEXT@ YACC = @YACC@ YFLAGS = @YFLAGS@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ 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@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ lt_ECHO = @lt_ECHO@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ 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@ INCLUDES = \ -I$(top_srcdir) \ $(WARN_CFLAGS) \ $(LIBBONOBO_CFLAGS) \ -DPLUGIN_DIR=\""$(PLUGIN_DIR)"\" \ -DBONOBO_LIBDIR=\""$(libdir)"\" \ -DBONOBO_DATADIR=\""$(datadir)"\" \ -DBONOBO_PIXMAPDIR=\""$(datadir)/pixmaps"\" \ -DBONOBO_BINDIR=\""$(bindir)"\" \ -DBONOBO_LOCALSTATEDIR=\""$(localstatedir)"\" \ -DBONOBO_LOCALEDIR=\""$(datadir)/locale"\" \ $(DISABLE_DEPRECATED_CFLAGS) \ -DG_LOG_DOMAIN=\"Bonobo\" \ -DVERSION=\"$(VERSION)\" CLEANFILES = Bonobo_Moniker_std.server Bonobo_Moniker_std.server.in serverdir = $(libdir)/bonobo/servers server_DATA = Bonobo_Moniker_std.server monikerdir = $(libdir)/bonobo/monikers @OS_WIN32_FALSE@monikerdir_in_server_file = $(monikerdir) @OS_WIN32_TRUE@monikerdir_in_server_file = ../monikers moniker_LTLIBRARIES = libmoniker_std_2.la libmoniker_std_2_la_SOURCES = \ bonobo-moniker-extender-stream.c \ bonobo-moniker-item.c \ bonobo-moniker-new.c \ bonobo-moniker-ior.c \ bonobo-moniker-oaf.c \ bonobo-moniker-cache.c \ bonobo-stream-cache.h \ bonobo-stream-cache.c \ bonobo-moniker-query.c \ bonobo-moniker-query.h \ bonobo-moniker-std.h \ bonobo-moniker-std.c libmoniker_std_2_la_LDFLAGS = -module -avoid-version -no-undefined libmoniker_std_2_la_LIBADD = $(top_builddir)/bonobo/libbonobo-2.la \ $(top_builddir)/bonobo-activation/libbonobo-activation.la \ $(LIBBONOBO_LIBS) \ $(INTLLIBS) EXTRA_DIST = Bonobo_Moniker_std.server.in.in 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) --foreign monikers/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --foreign monikers/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): install-monikerLTLIBRARIES: $(moniker_LTLIBRARIES) @$(NORMAL_INSTALL) test -z "$(monikerdir)" || $(MKDIR_P) "$(DESTDIR)$(monikerdir)" @list='$(moniker_LTLIBRARIES)'; test -n "$(monikerdir)" || list=; \ list2=; for p in $$list; do \ if test -f $$p; then \ list2="$$list2 $$p"; \ else :; fi; \ done; \ test -z "$$list2" || { \ echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(monikerdir)'"; \ $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(monikerdir)"; \ } uninstall-monikerLTLIBRARIES: @$(NORMAL_UNINSTALL) @list='$(moniker_LTLIBRARIES)'; test -n "$(monikerdir)" || list=; \ for p in $$list; do \ $(am__strip_dir) \ echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(monikerdir)/$$f'"; \ $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(monikerdir)/$$f"; \ done clean-monikerLTLIBRARIES: -test -z "$(moniker_LTLIBRARIES)" || rm -f $(moniker_LTLIBRARIES) @list='$(moniker_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 libmoniker_std_2.la: $(libmoniker_std_2_la_OBJECTS) $(libmoniker_std_2_la_DEPENDENCIES) $(AM_V_CCLD)$(libmoniker_std_2_la_LINK) -rpath $(monikerdir) $(libmoniker_std_2_la_OBJECTS) $(libmoniker_std_2_la_LIBADD) $(LIBS) mostlyclean-compile: -rm -f *.$(OBJEXT) distclean-compile: -rm -f *.tab.c @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-moniker-cache.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-moniker-extender-stream.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-moniker-ior.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-moniker-item.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-moniker-new.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-moniker-oaf.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-moniker-query.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-moniker-std.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-stream-cache.Plo@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 @am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(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 @am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(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 @am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $< mostlyclean-libtool: -rm -f *.lo clean-libtool: -rm -rf .libs _libs install-serverDATA: $(server_DATA) @$(NORMAL_INSTALL) test -z "$(serverdir)" || $(MKDIR_P) "$(DESTDIR)$(serverdir)" @list='$(server_DATA)'; test -n "$(serverdir)" || list=; \ 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)$(serverdir)'"; \ $(INSTALL_DATA) $$files "$(DESTDIR)$(serverdir)" || exit $$?; \ done uninstall-serverDATA: @$(NORMAL_UNINSTALL) @list='$(server_DATA)'; test -n "$(serverdir)" || list=; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ test -n "$$files" || exit 0; \ echo " ( cd '$(DESTDIR)$(serverdir)' && rm -f" $$files ")"; \ cd "$(DESTDIR)$(serverdir)" && rm -f $$files 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: check-am all-am: Makefile $(LTLIBRARIES) $(DATA) installdirs: for dir in "$(DESTDIR)$(monikerdir)" "$(DESTDIR)$(serverdir)"; 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: $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install 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 clean-monikerLTLIBRARIES \ 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-monikerLTLIBRARIES install-serverDATA 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-monikerLTLIBRARIES uninstall-serverDATA .MAKE: install-am install-strip .PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \ clean-libtool clean-monikerLTLIBRARIES 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-man \ install-monikerLTLIBRARIES install-pdf install-pdf-am \ install-ps install-ps-am install-serverDATA 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-monikerLTLIBRARIES \ uninstall-serverDATA Bonobo_Moniker_std.server.in: Bonobo_Moniker_std.server.in.in $(AM_V_GEN) $(SED) -e "s|\@MONIKER_LIBDIR\@|$(monikerdir_in_server_file)|" -e "s|\@SOPREFIX\@|$(SOPREFIX)|" $< > $@ @INTLTOOL_SERVER_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: libbonobo-2.32.1/monikers/bonobo-moniker-oaf.c0000644000076400007640000000340511173072711016155 00000000000000/* * gnome-moniker-oaf.c: Sample oaf-system based Moniker implementation * * This is the oaf-activation based Moniker implementation. * * Author: * Michael Meeks (michael@helixcode.com) */ #include #include #include #include #include #include "bonobo-moniker-std.h" Bonobo_Unknown bonobo_moniker_oaf_resolve (BonoboMoniker *moniker, const Bonobo_ResolveOptions *options, const CORBA_char *requested_interface, CORBA_Environment *ev) { Bonobo_Moniker parent; Bonobo_Unknown object; parent = bonobo_moniker_get_parent (moniker, ev); if (ev->_major != CORBA_NO_EXCEPTION) return CORBA_OBJECT_NIL; if (parent != CORBA_OBJECT_NIL) { bonobo_object_release_unref (parent, ev); #ifdef G_ENABLE_DEBUG g_warning ("wierd; oafid moniker with a parent; strange"); #endif CORBA_exception_set (ev, CORBA_USER_EXCEPTION, ex_Bonobo_Moniker_InterfaceNotFound, NULL); return CORBA_OBJECT_NIL; } object = bonobo_activation_activate_from_id ( (char *) bonobo_moniker_get_name_full (moniker), 0, NULL, ev); if (BONOBO_EX (ev)) { if (ev->_major == CORBA_USER_EXCEPTION) { if (strcmp (ev->_id, ex_Bonobo_GeneralError)) { CORBA_exception_free (ev); bonobo_exception_general_error_set ( ev, NULL, _("Exception activating '%s'"), bonobo_moniker_get_name_full (moniker)); } } return CORBA_OBJECT_NIL; } else if (object == CORBA_OBJECT_NIL) { bonobo_exception_general_error_set ( ev, NULL, _("Failed to activate '%s'"), bonobo_moniker_get_name_full (moniker)); return CORBA_OBJECT_NIL; } return bonobo_moniker_util_qi_return (object, requested_interface, ev); } libbonobo-2.32.1/idl/0000775000076400007640000000000011546334243011334 500000000000000libbonobo-2.32.1/idl/Bonobo_ActivationContext.idl0000644000076400007640000001175211173072711016711 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ /* * Bonobo_ActivationContext.idl: * * Copyright (C) 1999, 2000 Red Hat, Inc. * Copyright (C) 1999, 2000 Eazel, Inc. * * This library 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 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 * General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this library; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * * Authors: Elliot Lee , * Maciej Stachowiak * */ #ifndef __BONOBO_ACTIVATION_CONTEXT_IDL__ #define __BONOBO_ACTIVATION_CONTEXT_IDL__ #ifndef __Bonobo_ActivationContext_COMPILATION #ifdef __ORBIT_IDL__ %{ #pragma include_defs bonobo-activation/Bonobo_ActivationContext.h %} #pragma inhibit push #endif #endif #include #include /* ObjectDirectory needs a forward declaration of ActivationContext */ module Bonobo { interface ActivationContext; interface ActivationClient; }; #include module Bonobo { interface ActivationClient : Bonobo::Unknown { oneway void resetCache (); long getVersion (); }; typedef sequence ObjectDirectoryList; interface ActivationContext : Bonobo::Unknown { readonly attribute ObjectDirectoryList directories; readonly attribute ServerInfoList servers; oneway void addClient (in ActivationClient client, in string locales); void addDirectory (in ObjectDirectory dir) raises (Bonobo::Activation::AlreadyListed); void removeDirectory (in ObjectDirectory dir) raises (Bonobo::Activation::NotListed); ServerInfoList query (in string requirements, in Bonobo::StringList selection_order) raises (Bonobo::Activation::ParseFailed, Bonobo::Activation::IncompleteContext) context ("username", "hostname"); ActivationResult activateMatching (in string requirements, in Bonobo::StringList selection_order, in Bonobo::ActivationEnvironment environment, in ActivationFlags flags) raises (Bonobo::Activation::ParseFailed, Bonobo::Activation::IncompleteContext, Bonobo::GeneralError) context ("username", "hostname"); ActivationResult activateMatchingFull (in string requirements, in Bonobo::StringList selection_order, in Bonobo::ActivationEnvironment environment, in ActivationFlags flags, in ActivationClient client) raises (Bonobo::Activation::ParseFailed, Bonobo::Activation::IncompleteContext, Bonobo::GeneralError) context ("username", "hostname"); ActivationResult activateFromAid (in ActivationID aid, in ActivationFlags flags) raises (Bonobo::Activation::ParseFailed, Bonobo::Activation::IncompleteContext, Bonobo::GeneralError) context ("username", "hostname"); ActivationResult activateFromAidFull (in ActivationID aid, in ActivationFlags flags, in ActivationClient client) raises (Bonobo::Activation::ParseFailed, Bonobo::Activation::IncompleteContext, Bonobo::GeneralError) context ("username", "hostname"); long getVersion (); }; }; #ifndef __Bonobo_ActivationContext_COMPILATION #ifdef __ORBIT_IDL__ #pragma inhibit pop #endif #endif #endif libbonobo-2.32.1/idl/Bonobo_Listener.idl0000644000076400007640000000364611173072711015033 00000000000000/* * bonobo-listener.idl: Generic listener handling interfaces * * Copyright (C) 2000, Helix Code, Inc. * * Authors: * Alex Graveley (alex@helixcode.com) * Michael Meeks (michael@helixcode.com) */ #ifndef BONOBO_LISTENER_IDL #define BONOBO_LISTENER_IDL #include "Bonobo_Unknown.idl" module Bonobo { interface Listener : Bonobo::Unknown { /** * event: Invokes a named event on this listener object, * thus a single Bonobo / CORBA object can multiplex * many event requests without the overhead of an * object per type of event we want to listen to. * @event_name: the name of the event * @args: A CORBA Any argument. */ oneway void event (in string event_name, in any args); void unImplemented (); void unImplemented2 (); }; interface EventSource : Bonobo::Unknown { exception UnknownListener {}; /** * addListener: Adds a listener to all events being * emitted by this object. * @l: the listener implementation. * * Adds a listener to this event source. */ void addListener (in Listener l); /** * addListenerWithMask: Adds a listener to certain events * emitted by this object. * @l: the listener implementation. * @event_mask: a comma-separated list of event names this listener * is interested in recieving. If this listener is already * receiving events from this EventSource, only the * events listed here will be delivered. * * Adds a listener to this event source with the given mask. */ void addListenerWithMask (in Listener l, in string event_mask); /** * removeListener: Removes a listener * @l: the listener implementation * * Removes the listener from the notification list. */ void removeListener (in Listener l) raises (UnknownListener); void unImplemented (); void unImplemented2 (); }; }; #endif /* BONOBO_LISTENER_IDL */ libbonobo-2.32.1/idl/Bonobo_Exception.idl0000644000076400007640000000056111173072711015175 00000000000000/* * bonobo-exception.idl: * * Copyright (C) 2000 Helix Code, Inc. * * Author: * Dietmar Maurer (dietmar@helixcode.com) */ #ifndef BONOBO_EXCEPTION_IDL #define BONOBO_EXCEPTION_IDL module Bonobo { exception NotSupported {}; exception NotImplemented {}; exception IOError {}; exception BadArg {}; }; #endif /* BONOBO_EXCEPTION_IDL */ libbonobo-2.32.1/idl/Bonobo_Unknown.idl0000644000076400007640000000216211173072711014675 00000000000000/* * bonobo-unknown.idl: The base Bonobo Object * * This is the base interface from which every bonobo interface * is derived it provides the mechanisms for introspecting an * aggregate object. * * Copyright (C) 1999, 2000 Helix Code, Inc. * * Author: * Miguel de Icaza (miguel@helixcode.com) */ #ifndef __BONOBO_UNKNOWN_IDL__ #define __BONOBO_UNKNOWN_IDL__ #ifndef __Bonobo_Unknown_COMPILATION #ifdef __ORBIT_IDL__ %{ #pragma include_defs bonobo-activation/Bonobo_Unknown.h %} #pragma inhibit push #endif #endif module Bonobo { interface Unknown { /** * ref: * * increments the reference count */ void ref (); /** * unref: * * decrements the reference count */ void unref (); /** * queryInterface: * @repoid: A string identifying an interface. * * Returns: A CORBA object exposing the interface * specified by @repoid, or a nil object if the * interface cannot be queried. */ Unknown queryInterface (in string repoid); }; }; #ifndef __Bonobo_Unknown_COMPILATION #ifdef __ORBIT_IDL__ #pragma inhibit pop #endif #endif #endif /* ! __BONOBO_UNKNOWN_IDL__ */ libbonobo-2.32.1/idl/Bonobo_Storage.idl0000644000076400007640000001323111173072711014641 00000000000000/* * bonobo-storage.idl: Handles structured storage * * Copyright (C) 1999, 2000 Helix Code, Inc. * * Author: * Miguel de Icaza (miguel@gnu.org) * Dietmar Maurer (dietmar@maurer-it.com) * * Terms: * * Storage: This interface provides access to a directory * like storage facility. * * Stream: Used to read and write bytes to a storage. The * Streams are equivalent to files. */ #ifndef BONOBO_STORAGE_IDL #define BONOBO_STORAGE_IDL #include "Bonobo_Unknown.idl" module Bonobo { typedef long StorageInfoFields; const StorageInfoFields FIELD_CONTENT_TYPE = 1; const StorageInfoFields FIELD_SIZE = 2; const StorageInfoFields FIELD_TYPE = 4; typedef string ContentType; enum StorageType { STORAGE_TYPE_REGULAR, STORAGE_TYPE_DIRECTORY }; struct StorageInfo { string name; StorageType type; ContentType content_type; long size; }; interface Stream : Unknown { typedef sequence iobuf; exception NoPermission {}; exception NotSupported {}; exception IOError {}; enum SeekType { SeekSet, SeekCur, SeekEnd }; /** * getInfo: * @mask: * * Returns a StorageInfo structure which contains * the name, content_type and size info. */ StorageInfo getInfo (in StorageInfoFields mask) raises (IOError, NoPermission, NotSupported); /** * setInfo: * @info: * @mask: * */ void setInfo (in StorageInfo info, in StorageInfoFields mask) raises (IOError, NoPermission, NotSupported); /** * read: * @count: number of bytes to read. * @buffer: the buffer where the data is returned. */ void read (in long count, out iobuf buffer) raises (NoPermission, IOError); /** * write: * @buffer: a buffer to write. * * writes the buffer to this stream. */ void write (in iobuf buffer) raises (NoPermission, IOError); /** * seek: * @offset: offset * @whence: * * Sets the read/write pointer to @offset (relative to @whence) */ long seek (in long offset, in SeekType whence) raises (IOError, NotSupported); /** * truncate: * @length: new size of the stream * */ void truncate (in long length) raises (IOError, NoPermission, NotSupported); /** * commit: * * Commits any pending changes to the Storage */ void commit () raises (IOError, NoPermission, NotSupported); /** * revert: * * Discards any changes since the last commit. */ void revert () raises (IOError, NoPermission, NotSupported); void unImplemented1 (); void unImplemented2 (); }; interface Storage : Unknown { typedef sequence DirectoryList; typedef long OpenMode; const OpenMode READ = 1; const OpenMode WRITE = 2; const OpenMode CREATE = 4; const OpenMode FAILIFEXIST = 8; const OpenMode COMPRESSED = 16; const OpenMode TRANSACTED = 32; exception IOError {}; exception NameExists {}; exception NotFound {}; exception NoPermission {}; exception NotSupported {}; exception NotStream {}; exception NotStorage {}; exception NotEmpty {}; /** * getInfo: * @path: * @mask: * * Returns a StorageInfo structure which contains * the name, content_type and size info. */ StorageInfo getInfo (in string path, in StorageInfoFields mask) raises (IOError, NoPermission, NotFound, NotSupported); /** * setInfo: * @path: * @info: * @mask: * */ void setInfo (in string path, in StorageInfo info, in StorageInfoFields mask) raises (IOError, NoPermission, NotFound, NotSupported); /** * openStream: * @path: path of the stream to open * @mode: open flags * * Opens a Stream whose name is @path. */ Stream openStream (in string path, in OpenMode mode) raises (IOError, NotFound, NoPermission, NotStream, NameExists); /** * openStorage: * @path: path of the storage to open. * @mode: open mode. * * Returns a storage object for @path. */ Storage openStorage (in string path, in OpenMode mode) raises (IOError, NotFound, NoPermission, NotStorage, NameExists); /** * copyTo: * @target: where to copy this storage to. * * Copies this storages contents to the @target storage */ void copyTo (in Storage target) raises (IOError, NoPermission); /** * listContents: * @path: path that we want to examine. * @mask: * * Returns a list of all the Storage and Streams available * at @path. */ DirectoryList listContents (in string path, in StorageInfoFields mask) raises (IOError, NotStorage, NotFound, NotSupported); /** * erase: * @path: path to the element to erase. * * Destroys the element pointed to by @path. The element * can be a Storage or a Stream. */ void erase (in string path) raises (IOError, NoPermission, NotFound, NotEmpty); /** * rename: * @path_name: element name to rename * @new_path_name: new name we want to use * * Renames a Stream or Storage component inside a Storage. */ void rename (in string path_name, in string new_path_name) raises (IOError, NameExists, NotFound, NoPermission); /** * commit: * * Commits any pending changes to the Storage since it was * opened. This operation is syncronous. */ void commit () raises (IOError, NoPermission, NotSupported); /** * revert: * * Discards any changes since the last commit. */ void revert () raises (IOError, NoPermission, NotSupported); void unImplemented1 (); void unImplemented2 (); }; }; #endif /* BONOBO_STORAGE_IDL */ libbonobo-2.32.1/idl/Bonobo_ObjectDirectory.idl0000644000076400007640000001052011173072711016326 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ /* * Bonobo_ObjectDirectory.idl: * * Copyright (C) 1999, 2000 Red Hat, Inc. * Copyright (C) 1999, 2000 Eazel, Inc. * * This library 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 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 * General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this library; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * * Authors: Elliot Lee , * Maciej Stachowiak * */ #ifndef __BONOBO_OBJECT_DIRECTORY_IDL__ #define __BONOBO_OBJECT_DIRECTORY_IDL__ #ifndef __Bonobo_ObjectDirectory_COMPILATION #ifdef __ORBIT_IDL__ %{ #pragma include_defs bonobo-activation/Bonobo_ObjectDirectory.h %} #pragma inhibit push #endif #endif #include #include /* ActivationContext needs a forward declaration of ObjectDirectory */ module Bonobo { interface ObjectDirectory; }; #include module Bonobo { typedef long long CacheTime; union ServerInfoListCache switch (boolean) { case TRUE: ServerInfoList server_list; }; union ServerStateCache switch (boolean) { case TRUE: sequence active_servers; }; interface ObjectDirectory : Bonobo :: Unknown { exception NotRegistered {}; ServerInfoListCache get_servers (in CacheTime only_if_newer); ServerStateCache get_active_servers (in CacheTime only_if_newer); readonly attribute string username, hostname; Object activate (in ImplementationID iid, in ActivationContext ac, in Bonobo::ActivationEnvironment environment, in ActivationFlags flags, in ActivationClient client) context ("username", "hostname"); RegistrationResult register_new (in ImplementationID iid, in Bonobo::ActivationEnvironment environment, in Object obj, in RegistrationFlags flags, in string description, out Object existing); RegistrationResult register_new_full (in ImplementationID iid, in Bonobo::ActivationEnvironment environment, in Object obj, in RegistrationFlags flags, in string description, out Object existing, in ActivationClient client); void unregister (in ImplementationID iid, in Object obj) raises (NotRegistered); DynamicPathLoadResult dynamic_add_path (in string add_path); DynamicPathLoadResult dynamic_remove_path (in string remove_path); void addClientEnv (in ActivationClient client, in StringList env); }; }; #ifndef __Bonobo_ObjectDirectory_COMPILATION #ifdef __ORBIT_IDL__ #pragma inhibit pop #endif #endif #endif libbonobo-2.32.1/idl/Bonobo_Moniker.idl0000644000076400007640000000557411173072711014654 00000000000000/* * bonobo-moniker.idl: Implements an object naming and resolution interface * * Copyright (C) 2000 Helix Code, Inc. * * Authors: * Michael Meeks (michael@helixcode.com) * Ettore Perazzoli (ettore@helixcode.com) */ #ifndef BONOBO_MONIKER_IDL #define BONOBO_MONIKER_IDL #include #include "Bonobo_Unknown.idl" module Bonobo { typedef long ResolveFlag; const ResolveFlag MONIKER_ALLOW_USER_INTERACTION = 1; struct ResolveOptions { ResolveFlag flags; long timeout; /* in ms */ }; interface Moniker : Bonobo::Unknown { exception InterfaceNotFound {}; exception TimeOut {}; exception InvalidSyntax {}; exception UnknownPrefix {}; /** * getParent: * * get the parent moniker. */ Moniker getParent (); /** * setParent: * @parent: parent moniker * * sets the parent moniker. */ void setParent (in Moniker parent); /** * getName: * * Returns a human readable representation of the Moniker */ string getName () raises (InvalidSyntax); /** * setName: * @name: the display name * * set the name of the moniker. This method parses the whole * name and constructs the moniker chain. */ void setName (in string name) raises (InvalidSyntax, UnknownPrefix); /** * resolve: * @options: resolution options * @inferface: what interface we want from the result * * Resolves a moniker; this returns a reference to the * activated object described by the moniker */ Unknown resolve (in ResolveOptions options, in string requestedInterface) raises (InterfaceNotFound, TimeOut, GeneralError); /** * equal: * @name: the name of another moniker * * Compares the full moniker with this @name, * returns 0 if not equal, else the number of chars swallowed * by the compare. */ long equal (in string name); void unImplemented1 (); void unImplemented2 (); }; interface MonikerExtender : Bonobo::Unknown { /** * resolve: * @m: the moniker we are about to extend * @options: resolve options * @name: the name of 'm' by itself eg. 'file:/tmp/a' * @requested_interface: the interface we want to get back * * The interface for a later extension to a moniker that allows it * to be resolved against new and exotic interfaces. * * Returns: The interface requested, or CORBA_OBJECT_NIL. */ Unknown resolve (in Moniker m, in ResolveOptions options, in string name, in string requestedInterface) raises (Moniker::InterfaceNotFound, Moniker::TimeOut, GeneralError); void unImplemented1 (); void unImplemented2 (); void unImplemented3 (); void unImplemented4 (); }; }; #endif /* BONOBO_MONIKER_IDL */ libbonobo-2.32.1/idl/Makefile.am0000664000076400007640000000307511433015514013305 00000000000000NULL= idldir = $(datadir)/idl/bonobo-2.0 idl_DATA = \ Bonobo.idl \ Bonobo_Canvas.idl \ Bonobo_Context.idl \ Bonobo_Control.idl \ Bonobo_Embeddable.idl \ Bonobo_Gdk.idl \ Bonobo_ItemContainer.idl \ Bonobo_Listener.idl \ Bonobo_Moniker.idl \ Bonobo_Persist.idl \ Bonobo_Print.idl \ Bonobo_Property.idl \ Bonobo_Storage.idl \ Bonobo_UI.idl \ Bonobo_Zoomable.idl \ Bonobo_Exception.idl \ Bonobo_Clipboard.idl \ Bonobo_Application.idl \ $(NULL) activation_idldir=$(datadir)/idl/bonobo-activation-2.0 activation_idl_DATA = \ Bonobo_Unknown.idl \ Bonobo_GenericFactory.idl \ Bonobo_Activation_types.idl \ Bonobo_ObjectDirectory.idl \ Bonobo_ActivationContext.idl EXTRA_DIST = $(idl_DATA) $(activation_idl_DATA) orbittypelib_LTLIBRARIES = Bonobo_module.la orbittypelibdir = $(libdir)/orbit-2.0 IMODULE_SOURCE = \ Bonobo.h \ Bonobo-common.c \ Bonobo-imodule.c idl_flags = \ -I$(top_srcdir)/idl \ -D__Bonobo_COMPILATION \ -D__Bonobo_Unknown_COMPILATION \ -D__Bonobo_GenericFactory_COMPILATION \ -D__Bonobo_Activation_types_COMPILATION INCLUDES = \ -I. \ $(LIBBONOBO_CFLAGS) \ $(WARN_CFLAGS) Bonobo_module_la_SOURCES = \ Bonobo-imodule.c Bonobo_module_la_LIBADD = \ $(LIBBONOBO_LIBS) Bonobo_module_la_LDFLAGS = \ -module -avoid-version -no-undefined $(IMODULE_SOURCE): $(idl_DATA) $(ORBIT_IDL) $(AM_V_GEN) $(ORBIT_IDL) $(idl_flags) --imodule $(top_srcdir)/idl/Bonobo.idl BUILT_SOURCES = $(IMODULE_SOURCE) CLEANFILES = $(BUILT_SOURCES) dist-hook: cd $(distdir); rm -f $(BUILT_SOURCES) libbonobo-2.32.1/idl/Bonobo_UI.idl0000644000076400007640000000613011173072711013552 00000000000000/* * bonobo-ui.idl: Handles some User Interface issues for components * * Copyright (C) 2000 Helix Code, Inc. * * Author: * Michael Meeks (michael@helixcode.com) */ #ifndef BONOBO_UI_IDL #define BONOBO_UI_IDL #include "Bonobo_Unknown.idl" module Bonobo { interface UIContainer; interface UIComponent : Bonobo::Unknown { void setContainer (in UIContainer container); void unsetContainer (); readonly attribute string name; enum EventType { STATE_CHANGED, OTHER }; /* * Returns an XML description of all available verbs. */ string describeVerbs (); /* * Allows a remote user to execute a verb by name. */ oneway void execVerb (in string cname); /* * Allows a remote user to flag an event */ oneway void uiEvent (in string id, in EventType type, in string state); /** * unImplemented: * * placeholders for future expansion. */ void unImplemented (); void unImplemented2 (); void unImplemented3 (); void unImplemented4 (); }; interface UIContainer : Bonobo::Unknown { exception MalformedXML {}; exception InvalidPath {}; exception NonExistentAttr {}; exception Insensitive {}; exception Unknown {}; /* FIXME: broken, should use set/get object instead */ void registerComponent (in string component_name, in Bonobo::UIComponent component); oneway void deregisterComponent (in string component_name); oneway void freeze (); oneway void thaw (); oneway void setAttr (in string path, in string attr, in string value, in string component_name); string getAttr (in string path, in string attr) raises (InvalidPath, NonExistentAttr); void setNode (in string path, in string xml, in string component_name) raises (MalformedXML, InvalidPath); string getNode (in string path, in boolean nodeOnly) raises (InvalidPath); void removeNode (in string path, in string by_component_name) raises (InvalidPath); boolean exists (in string path); void execVerb (in string cname) raises (Insensitive, Unknown); void uiEvent (in string id, in UIComponent::EventType type, in string state) raises (Insensitive, Unknown); /* * Currently the object should be a Bonobo::Control interface * but this may be changed to a string based Moniker approach. * * The control's property bag will have the following * properties set on it in various circumstances: * * bonobo:ui:vertical boolean */ void setObject (in string path, in Bonobo::Unknown control) raises (InvalidPath); Bonobo::Unknown getObject (in string path) raises (InvalidPath); /** * unImplemented: * * placeholders for future expansion. */ void unImplemented (); void unImplemented2 (); void unImplemented3 (); void unImplemented4 (); }; }; #endif /* BONOBO_UI_IDL */ libbonobo-2.32.1/idl/Bonobo_Application.idl0000644000076400007640000000260411173072711015502 00000000000000/* -*- Mode: idl; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ /* * Bonobo_Application.idl: Unique application support (some would call * it--or can be used for--Automation). * */ #ifndef BONOBO_APPLICATION_IDL #define BONOBO_APPLICATION_IDL #include "Bonobo_Unknown.idl" module Bonobo { interface Application : Bonobo::Unknown { typedef sequence ArgList; typedef sequence argv_t; struct MessageDesc { string name; sequence types; TypeCode return_type; string description; }; typedef sequence MessageList; any message (in string msg, in ArgList args); long newInstance (in argv_t argv); MessageList listMessages (); string getName (); void unimplemented1 (); void unimplemented2 (); void unimplemented3 (); void unimplemented4 (); void unimplemented5 (); void unimplemented6 (); void unimplemented7 (); void unimplemented8 (); }; }; #endif /* BONOBO_APPLICATION_IDL */ libbonobo-2.32.1/idl/Bonobo_ItemContainer.idl0000644000076400007640000000234311173072711016000 00000000000000/* * bonobo-item-container.idl: Implements a generic container for objects * * Copyright (C) 2000 Helix Code, Inc. * * Author: * Miguel de Icaza (miguel@helixcode.com) */ #ifndef BONOBO_ITEM_CONTAIER_IDL #define BONOBO_ITEM_CONTAIER_IDL #include "Bonobo_Unknown.idl" module Bonobo { interface ItemContainer : Unknown { typedef sequence ObjectNames; /** * enumObjects: * * Returns: a list of names of contained objects */ ObjectNames enumObjects (); /** * NotFound{}: * * This exception is raised if the specified name could not * be found */ exception NotFound {}; /** * SyntaxError{}: * * This exception is launched if there is a syntax error * during the name parsing */ exception SyntaxError {}; /** * getObjectByName: * @item_name: Item name to bind to * @only_if_exists: if TRUE, only bind if this object currently exists * otherwise, it will try to create the server for it. */ Unknown getObjectByName (in string item_name, in boolean only_if_exists) raises (SyntaxError, NotFound); void unImplemented1 (); void unImplemented2 (); void unImplemented3 (); void unImplemented4 (); }; }; #endif /* BONOBO_ITEM_CONTAIER_IDL */ libbonobo-2.32.1/idl/Bonobo_Activation_types.idl0000644000076400007640000000735211173072711016571 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ /* * Bonobo_Activation_types.idl: Basic object factory interface, based on CORBA * LifeCycle version */ #ifndef __BONOBO_ACTIVATION_TYPES_IDL__ #define __BONOBO_ACTIVATION_TYPES_IDL__ #ifndef __Bonobo_Activation_types_COMPILATION #ifdef __ORBIT_IDL__ %{ #pragma include_defs bonobo-activation/Bonobo_Activation_types.h %} #pragma inhibit push #endif #endif module Bonobo { typedef sequence StringList; exception GeneralError { string description; }; module Activation { exception NotListed {}; exception AlreadyListed {}; exception IncompleteContext {}; exception ParseFailed { string description; }; }; typedef string ImplementationID; typedef string ActivationID; typedef long ActivationFlags; const ActivationFlags ACTIVATION_FLAG_NO_LOCAL = 1<<0; // No shared libraries const ActivationFlags ACTIVATION_FLAG_PRIVATE = 1<<1; // start a new server and don't register it const ActivationFlags ACTIVATION_FLAG_EXISTING_ONLY = 1<<2; // don't start the server if not started typedef long RegistrationFlags; const RegistrationFlags REGISTRATION_FLAG_NO_SERVERINFO = 1<<0; // no .server file const long ACTIVATION_ENV_FLAG_UNSET = 1<<0; struct ActivationEnvValue { string name; string value; long flags; }; typedef sequence ActivationEnvironment; /* ActivationResult */ enum ActivationResultType { ACTIVATION_RESULT_OBJECT, ACTIVATION_RESULT_SHLIB, ACTIVATION_RESULT_NONE }; union ActivationResultData switch (ActivationResultType) { case ACTIVATION_RESULT_OBJECT: Object res_object; case ACTIVATION_RESULT_SHLIB: Bonobo::StringList res_shlib; }; struct ActivationResult { string aid; ActivationResultData res; }; /* ActivationProperty */ enum ActivationPropertyType { ACTIVATION_P_STRING, ACTIVATION_P_NUMBER, ACTIVATION_P_BOOLEAN, ACTIVATION_P_STRINGV }; union ActivationPropertyValue switch (ActivationPropertyType) { case ACTIVATION_P_STRING: string value_string; case ACTIVATION_P_NUMBER: double value_number; case ACTIVATION_P_BOOLEAN: boolean value_boolean; case ACTIVATION_P_STRINGV: Bonobo::StringList value_stringv; }; struct ActivationProperty { string name; ActivationPropertyValue v; }; /* Server */ struct ServerInfo { ImplementationID iid; string server_type; string location_info; string username, hostname, domain; sequence props; }; typedef sequence ServerInfoList; enum RegistrationResult { ACTIVATION_REG_SUCCESS, ACTIVATION_REG_NOT_LISTED, ACTIVATION_REG_ALREADY_ACTIVE, ACTIVATION_REG_ERROR }; enum DynamicPathLoadResult { DYNAMIC_LOAD_SUCCESS, DYNAMIC_LOAD_ERROR, DYNAMIC_LOAD_NOT_LISTED, DYNAMIC_LOAD_ALREADY_LISTED }; }; #ifndef __Bonobo_Activation_types_COMPILATION #ifdef __ORBIT_IDL__ #pragma inhibit pop #endif #endif #endif libbonobo-2.32.1/idl/Bonobo_Gdk.idl0000644000076400007640000000422311173072711013743 00000000000000/* * Canvas-based rendering of views * * Author: * Miguel de Icaza (miguel@kernel.org) * * Copyright (C) 1999, 2001 Ximian, Inc. */ #ifndef BONOBO_GDK_IDL #define BONOBO_GDK_IDL module Bonobo { module Gdk { /* * Idea: would it make more sense to * not provide our own types and just copy * the Gdk values instead of converting back and forth? */ enum EventType { FOCUS, KEY, MOTION, BUTTON, CROSSING }; enum ButtonType { BUTTON_PRESS, BUTTON_2_PRESS, BUTTON_3_PRESS, BUTTON_RELEASE }; enum KeyType { KEY_PRESS, KEY_RELEASE }; enum CrossType { ENTER, LEAVE }; enum CrossMode { NORMAL, GRAB, UNGRAB }; typedef long Time; struct MotionEvent { Gdk::Time time; double x, y, x_root, y_root; double pressure; double xtilt, ytilt; long state; boolean is_hint; }; struct ButtonEvent { ButtonType type; Gdk::Time time; double x, y, x_root, y_root; short button; }; struct KeyEvent { KeyType type; Gdk::Time time; short state; short keyval; short length; string str; }; struct CrossingEvent { CrossType type; Gdk::Time time; double x, y, x_root, y_root; CrossMode mode; boolean focus; short state; }; struct FocusEvent { boolean inside; }; /* * Only the lists of events supported by the Canvas */ union Event switch (EventType) { case Gdk::FOCUS: FocusEvent focus; case Gdk::KEY: KeyEvent key; case Gdk::MOTION: MotionEvent motion; case Gdk::BUTTON: ButtonEvent button; case Gdk::CROSSING: CrossingEvent crossing; }; /* * This is a ':' delimited string * under X11 the first entry ( before a ':' ) contains * window ID as an integer. Other fields are reserved for * future use. * See also bonobo-control.c (window_id_demangle) */ typedef string WindowId; }; module Gtk { struct Requisition { long width; long height; }; enum State { StateNormal, StateActive, StatePrelight, StateSelected, StateInsensitive }; enum Direction { DirectionTabForward, DirectionTabBackward, DirectionUp, DirectionDown, DirectionLeft, DirectionRight }; }; }; #endif libbonobo-2.32.1/idl/Bonobo_Canvas.idl0000644000076400007640000000771711173072711014464 00000000000000/* * Canvas-based rendering of views * * Author: * Miguel de Icaza (miguel@kernel.org) * * Copyright (C) 1999, 2000 Ximian, Inc. */ #ifndef BONOBO_CANVAS_IDL #define BONOBO_CANVAS_IDL #include "Bonobo_Unknown.idl" #include "Bonobo_Gdk.idl" #include "Bonobo_UI.idl" module Bonobo { module Canvas { typedef sequence pixbuf; /* At least 32 bits */ typedef long int32; struct IRect { long x0, y0, x1, y1; }; struct DRect { double x0, y0, x1, y1; }; const short IS_BG = 1; const short IS_BUF = 2; typedef double affine [6]; /* * See gnome-canvas.h:GnomeCanvasBuf for an explanation */ struct Buf { pixbuf rgb_buf; long row_stride; IRect rect; int32 bg_color; short flags; }; struct Point { double x, y; }; typedef sequence Points; struct SVPSegment { boolean up; /* up or down */ DRect bbox; Canvas::Points points; }; typedef sequence SVP; struct ArtUTA { short x0, y0; short width, height; sequence utiles; }; struct State { affine item_aff; double pixels_per_unit; double canvas_scroll_x1; double canvas_scroll_y1; long zoom_xofs, zoom_yofs; long xoffset, yoffset; }; interface Component : Bonobo::Unknown { /** * update: * * Returns the update region. */ ArtUTA update (in Canvas::State state, in affine aff, in SVP clip_path, in long flags, out double x1, out double y1, out double x2, out double y2); void realize (in Gdk::WindowId drawable); void unrealize (); void map (); void unmap (); void draw (in Canvas::State state, in Gdk::WindowId drawable, in short x, in short y, in short width, in short height); /** * render: * @buf: The render control buffer. * * This version of render has buf->flags & IS_BUF == FALSE, * so we avoid sending the buffer out, we just return it. * */ void render (inout Canvas::Buf buf); /** * contains: * @x: x coordinate * @y: y coordinate * * Returns true if the point at @x, @y is contained inside * the item */ boolean contains (in double x, in double y); void bounds (in Canvas::State state, out double x1, out double x2, out double y1, out double y2); boolean event (in Canvas::State state, in Bonobo::Gdk::Event event); /** * setCanvasSize: * * Notifies this item about the size of the Canvas size on the * canvas */ void setCanvasSize (in short x, in short y, in short width, in short height); /** * setBounds: * @bbox: the requested bounding box. * * Sets the bounding box of the item to (x1,y1)-(x2,y2) */ void setBounds (in DRect bbox); void unImplemented1 (); void unImplemented2 (); void unImplemented3 (); void unImplemented4 (); void unImplemented5 (); void unImplemented6 (); void unImplemented7 (); void unImplemented8 (); }; /* * This interface is used on the container side to forward * events to the real containing canvas and the item */ interface ComponentProxy { /** * requestUpdate: * * Requests an update of the client side canvas. */ void requestUpdate (); /** * grabFocus: * @mask: Gdk Event mask to grab. * @cursor: GdkCursorType to display during grab. * @time: time of last event before grab. * * Grabs the mouse focus. */ void grabFocus (in unsigned long mask, in long cursor, in unsigned long time); /** * ungrabFocus: * @time: time of last event before ungrab. * * Ungrabs the mouse focus. */ void ungrabFocus (in unsigned long time); /** * getUIContainer: * * Returns: an associated UI component or NIL. */ UIContainer getUIContainer (); void unImplemented1 (); void unImplemented2 (); void unImplemented3 (); void unImplemented4 (); void unImplemented5 (); void unImplemented6 (); void unImplemented7 (); void unImplemented8 (); }; }; }; #endif /* BONOBO_CANVAS_IDL */ libbonobo-2.32.1/idl/Bonobo_Print.idl0000644000076400007640000000176511173072711014342 00000000000000/* * bonobo-print.idl: Bonobo remote printing support * * Author: * Michael Meeks (michael@helixcode.com) * * Copyright (C) 2000 Helix Code, Inc. */ #ifndef BONOBO_PRINT_IDL #define BONOBO_PRINT_IDL #include "Bonobo_Storage.idl" module Bonobo { struct PrintScissor { double width_first_page, width_per_page; double height_first_page, height_per_page; }; struct PrintDimensions { double width, height; }; interface Print : Bonobo::Unknown { /** * render: * * This returns a gnome-print Meta stream of the object * rendered into an infinite page at the origin with size * determined by the PrintDimensions. The PrintScissor tells * it at what points it will be split across pages so it can * adjust its rendering if required. **/ Stream render (in PrintDimensions pd, in PrintScissor scissor); void unImplemented1 (); void unImplemented2 (); void unImplemented3 (); void unImplemented4 (); }; }; #endif /* BONOBO_PRINT_IDL */ libbonobo-2.32.1/idl/Bonobo_Embeddable.idl0000644000076400007640000000351311173072711015243 00000000000000/* * bonobo-embeddable.idl: handles embeddable components * * An Embeddable is an object that can be used inside * an office productivity application; it is part of a * compound document. Mostly people will want to implement * the Control interface for their application first. * * Copyright (C) 1999, 2000 Helix Code, Inc. * * Authors: * Miguel de Icaza (miguel@helixcode.com) * Nat Friedman (nat@helixcode.com) */ #ifndef BONOBO_EMBEDDABLE_IDL #define BONOBO_EMBEDDABLE_IDL #include "Bonobo_Unknown.idl" #include "Bonobo_Control.idl" #include "Bonobo_Canvas.idl" module Bonobo { interface ControlFactory : Bonobo::Unknown { /** * createControl: * @uic: UIContainer interface to merge UI elements with. * * Returns: a Control which serves as a Component View. * * This method can be used to produce multiple View instances * for a given Component. */ Control createControl (in ControlFrame frame, in UIContainer uic); void unImplemented1 (); void unImplemented2 (); }; interface CanvasComponentFactory : Bonobo::Unknown { /** * createCanvasComponent: * @aa: Whether the item is anti-aliased * @proxy: The Proxy used to notify of requested updates. * * Returns a Bonobo::Canvas::Component interface * * This method can be used to produce multiple Canvas-based * view instances for a given component. */ Canvas::Component createCanvasComponent ( in boolean aa, in Canvas::ComponentProxy proxy); void unImplemented1 (); void unImplemented2 (); }; interface Embeddable : Bonobo::Unknown { /** * properties: * * double ZoomFactor; */ void unImplemented1 (); void unImplemented2 (); void unImplemented3 (); void unImplemented4 (); void unImplemented5 (); void unImplemented6 (); void unImplemented7 (); void unImplemented8 (); }; }; #endif /* BONOBO_EMBEDDABLE_IDL */ libbonobo-2.32.1/idl/Makefile.in0000664000076400007640000005505411546333027013331 00000000000000# Makefile.in generated by automake 1.11.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008, 2009 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@ VPATH = @srcdir@ 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 = idl DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.in 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__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__installdirs = "$(DESTDIR)$(orbittypelibdir)" \ "$(DESTDIR)$(activation_idldir)" "$(DESTDIR)$(idldir)" LTLIBRARIES = $(orbittypelib_LTLIBRARIES) am__DEPENDENCIES_1 = Bonobo_module_la_DEPENDENCIES = $(am__DEPENDENCIES_1) am_Bonobo_module_la_OBJECTS = Bonobo-imodule.lo Bonobo_module_la_OBJECTS = $(am_Bonobo_module_la_OBJECTS) AM_V_lt = $(am__v_lt_$(V)) am__v_lt_ = $(am__v_lt_$(AM_DEFAULT_VERBOSITY)) am__v_lt_0 = --silent Bonobo_module_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ $(AM_CFLAGS) $(CFLAGS) $(Bonobo_module_la_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_$(V)) am__v_CC_ = $(am__v_CC_$(AM_DEFAULT_VERBOSITY)) am__v_CC_0 = @echo " CC " $@; AM_V_at = $(am__v_at_$(V)) am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) 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_$(V)) am__v_CCLD_ = $(am__v_CCLD_$(AM_DEFAULT_VERBOSITY)) am__v_CCLD_0 = @echo " CCLD " $@; AM_V_GEN = $(am__v_GEN_$(V)) am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) am__v_GEN_0 = @echo " GEN " $@; SOURCES = $(Bonobo_module_la_SOURCES) DIST_SOURCES = $(Bonobo_module_la_SOURCES) DATA = $(activation_idl_DATA) $(idl_DATA) ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ AR = @AR@ AS = @AS@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ BONOBO_ACTIVATION_LT_VERSION_INFO = @BONOBO_ACTIVATION_LT_VERSION_INFO@ BONOBO_MAJOR_VERSION = @BONOBO_MAJOR_VERSION@ BONOBO_MICRO_VERSION = @BONOBO_MICRO_VERSION@ BONOBO_MINOR_VERSION = @BONOBO_MINOR_VERSION@ BONOBO_SLAY = @BONOBO_SLAY@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DISABLE_DEPRECATED_CFLAGS = @DISABLE_DEPRECATED_CFLAGS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GREP = @GREP@ GTHREAD_CFLAGS = @GTHREAD_CFLAGS@ GTHREAD_LIBS = @GTHREAD_LIBS@ GTKDOC_CHECK = @GTKDOC_CHECK@ GTKDOC_MKPDF = @GTKDOC_MKPDF@ GTKDOC_REBASE = @GTKDOC_REBASE@ HTML_DIR = @HTML_DIR@ IF_BSD_PS = @IF_BSD_PS@ IF_CYGWIN_PS = @IF_CYGWIN_PS@ IF_POSIX_PS = @IF_POSIX_PS@ 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@ LD = @LD@ LDFLAGS = @LDFLAGS@ LEX = @LEX@ LEXLIB = @LEXLIB@ LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ LFLAGS = @LFLAGS@ LIBBONOBO_CFLAGS = @LIBBONOBO_CFLAGS@ LIBBONOBO_LIBS = @LIBBONOBO_LIBS@ LIBBONOBO_LT_VERSION_INFO = @LIBBONOBO_LT_VERSION_INFO@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIPO = @LIPO@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ NM = @NM@ NMEDIT = @NMEDIT@ OBJDUMP = @OBJDUMP@ OBJEXT = @OBJEXT@ ORBIT_IDL = @ORBIT_IDL@ OTOOL = @OTOOL@ OTOOL64 = @OTOOL64@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PERL_PATH = @PERL_PATH@ PKG_CONFIG = @PKG_CONFIG@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ PS_PATH = @PS_PATH@ RANLIB = @RANLIB@ SEARCHPATHSEP = @SEARCHPATHSEP@ SED = @SED@ SERVER_CFLAGS = @SERVER_CFLAGS@ SERVER_LIBS = @SERVER_LIBS@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SOPREFIX = @SOPREFIX@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ WARN_CFLAGS = @WARN_CFLAGS@ XGETTEXT = @XGETTEXT@ YACC = @YACC@ YFLAGS = @YFLAGS@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ 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@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ lt_ECHO = @lt_ECHO@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ 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@ NULL = idldir = $(datadir)/idl/bonobo-2.0 idl_DATA = \ Bonobo.idl \ Bonobo_Canvas.idl \ Bonobo_Context.idl \ Bonobo_Control.idl \ Bonobo_Embeddable.idl \ Bonobo_Gdk.idl \ Bonobo_ItemContainer.idl \ Bonobo_Listener.idl \ Bonobo_Moniker.idl \ Bonobo_Persist.idl \ Bonobo_Print.idl \ Bonobo_Property.idl \ Bonobo_Storage.idl \ Bonobo_UI.idl \ Bonobo_Zoomable.idl \ Bonobo_Exception.idl \ Bonobo_Clipboard.idl \ Bonobo_Application.idl \ $(NULL) activation_idldir = $(datadir)/idl/bonobo-activation-2.0 activation_idl_DATA = \ Bonobo_Unknown.idl \ Bonobo_GenericFactory.idl \ Bonobo_Activation_types.idl \ Bonobo_ObjectDirectory.idl \ Bonobo_ActivationContext.idl EXTRA_DIST = $(idl_DATA) $(activation_idl_DATA) orbittypelib_LTLIBRARIES = Bonobo_module.la orbittypelibdir = $(libdir)/orbit-2.0 IMODULE_SOURCE = \ Bonobo.h \ Bonobo-common.c \ Bonobo-imodule.c idl_flags = \ -I$(top_srcdir)/idl \ -D__Bonobo_COMPILATION \ -D__Bonobo_Unknown_COMPILATION \ -D__Bonobo_GenericFactory_COMPILATION \ -D__Bonobo_Activation_types_COMPILATION INCLUDES = \ -I. \ $(LIBBONOBO_CFLAGS) \ $(WARN_CFLAGS) Bonobo_module_la_SOURCES = \ Bonobo-imodule.c Bonobo_module_la_LIBADD = \ $(LIBBONOBO_LIBS) Bonobo_module_la_LDFLAGS = \ -module -avoid-version -no-undefined BUILT_SOURCES = $(IMODULE_SOURCE) CLEANFILES = $(BUILT_SOURCES) all: $(BUILT_SOURCES) $(MAKE) $(AM_MAKEFLAGS) 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) --foreign idl/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --foreign idl/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): install-orbittypelibLTLIBRARIES: $(orbittypelib_LTLIBRARIES) @$(NORMAL_INSTALL) test -z "$(orbittypelibdir)" || $(MKDIR_P) "$(DESTDIR)$(orbittypelibdir)" @list='$(orbittypelib_LTLIBRARIES)'; test -n "$(orbittypelibdir)" || list=; \ list2=; for p in $$list; do \ if test -f $$p; then \ list2="$$list2 $$p"; \ else :; fi; \ done; \ test -z "$$list2" || { \ echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(orbittypelibdir)'"; \ $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(orbittypelibdir)"; \ } uninstall-orbittypelibLTLIBRARIES: @$(NORMAL_UNINSTALL) @list='$(orbittypelib_LTLIBRARIES)'; test -n "$(orbittypelibdir)" || list=; \ for p in $$list; do \ $(am__strip_dir) \ echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(orbittypelibdir)/$$f'"; \ $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(orbittypelibdir)/$$f"; \ done clean-orbittypelibLTLIBRARIES: -test -z "$(orbittypelib_LTLIBRARIES)" || rm -f $(orbittypelib_LTLIBRARIES) @list='$(orbittypelib_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 Bonobo_module.la: $(Bonobo_module_la_OBJECTS) $(Bonobo_module_la_DEPENDENCIES) $(AM_V_CCLD)$(Bonobo_module_la_LINK) -rpath $(orbittypelibdir) $(Bonobo_module_la_OBJECTS) $(Bonobo_module_la_LIBADD) $(LIBS) mostlyclean-compile: -rm -f *.$(OBJEXT) distclean-compile: -rm -f *.tab.c @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Bonobo-imodule.Plo@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 @am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(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 @am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(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 @am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $< mostlyclean-libtool: -rm -f *.lo clean-libtool: -rm -rf .libs _libs install-activation_idlDATA: $(activation_idl_DATA) @$(NORMAL_INSTALL) test -z "$(activation_idldir)" || $(MKDIR_P) "$(DESTDIR)$(activation_idldir)" @list='$(activation_idl_DATA)'; test -n "$(activation_idldir)" || list=; \ 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)$(activation_idldir)'"; \ $(INSTALL_DATA) $$files "$(DESTDIR)$(activation_idldir)" || exit $$?; \ done uninstall-activation_idlDATA: @$(NORMAL_UNINSTALL) @list='$(activation_idl_DATA)'; test -n "$(activation_idldir)" || list=; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ test -n "$$files" || exit 0; \ echo " ( cd '$(DESTDIR)$(activation_idldir)' && rm -f" $$files ")"; \ cd "$(DESTDIR)$(activation_idldir)" && rm -f $$files install-idlDATA: $(idl_DATA) @$(NORMAL_INSTALL) test -z "$(idldir)" || $(MKDIR_P) "$(DESTDIR)$(idldir)" @list='$(idl_DATA)'; test -n "$(idldir)" || list=; \ 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)$(idldir)'"; \ $(INSTALL_DATA) $$files "$(DESTDIR)$(idldir)" || exit $$?; \ done uninstall-idlDATA: @$(NORMAL_UNINSTALL) @list='$(idl_DATA)'; test -n "$(idldir)" || list=; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ test -n "$$files" || exit 0; \ echo " ( cd '$(DESTDIR)$(idldir)' && rm -f" $$files ")"; \ cd "$(DESTDIR)$(idldir)" && rm -f $$files 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 $(MAKE) $(AM_MAKEFLAGS) \ top_distdir="$(top_distdir)" distdir="$(distdir)" \ dist-hook check-am: all-am check: $(BUILT_SOURCES) $(MAKE) $(AM_MAKEFLAGS) check-am all-am: Makefile $(LTLIBRARIES) $(DATA) installdirs: for dir in "$(DESTDIR)$(orbittypelibdir)" "$(DESTDIR)$(activation_idldir)" "$(DESTDIR)$(idldir)"; 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: $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install 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-libtool clean-orbittypelibLTLIBRARIES \ 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-activation_idlDATA install-idlDATA \ install-orbittypelibLTLIBRARIES 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-activation_idlDATA uninstall-idlDATA \ uninstall-orbittypelibLTLIBRARIES .MAKE: all check install install-am install-strip .PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \ clean-libtool clean-orbittypelibLTLIBRARIES ctags dist-hook \ distclean distclean-compile distclean-generic \ distclean-libtool distclean-tags distdir dvi dvi-am html \ html-am info info-am install install-activation_idlDATA \ install-am install-data install-data-am install-dvi \ install-dvi-am install-exec install-exec-am install-html \ install-html-am install-idlDATA install-info install-info-am \ install-man install-orbittypelibLTLIBRARIES 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-activation_idlDATA uninstall-am \ uninstall-idlDATA uninstall-orbittypelibLTLIBRARIES $(IMODULE_SOURCE): $(idl_DATA) $(ORBIT_IDL) $(AM_V_GEN) $(ORBIT_IDL) $(idl_flags) --imodule $(top_srcdir)/idl/Bonobo.idl dist-hook: cd $(distdir); rm -f $(BUILT_SOURCES) # 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: libbonobo-2.32.1/idl/Bonobo_Control.idl0000644000076400007640000001174411173072711014664 00000000000000/** * bonobo-control.idl: Control interfaces * * Copyright (C) 1999, 2000 Helix Code, Inc. * * Authors: * Nat Friedman * Miguel de Icaza */ #ifndef BONOBO_CONTROL_IDL #define BONOBO_CONTROL_IDL #include "Bonobo_UI.idl" #include "Bonobo_Gdk.idl" #include "Bonobo_Property.idl" module Bonobo { interface ControlFrame : Bonobo::Unknown { /** * getToplevelId * * Returns: the WindowId of the true toplevel of the * application the control is embedded inside. */ Gdk::WindowId getToplevelId (); /** * getAmbientProperties: * * Returns: A PropertyBag containing the ambient properties * for this container. */ PropertyBag getAmbientProperties (); /** * getUIContainer: * * Returns: The interface to be used for menu/toolbar item merging. */ UIContainer getUIContainer (); /* --- Notifications --- */ /** * activated: * @state: TRUE if the associated Control has been activated, * FALSE if it just became inactive. */ oneway void notifyActivated (in boolean state); /** * queueResize: * * Tell the container that the Control would like to be * resized. The container should follow-up by calling * Control::setSize () * */ oneway void queueResize (); /** * activateURI: * @uri: The uri we would like to get loaded. * @relative: Whether the URI is relative to the current URI * * This is used by the containee when it needs * to ask the container to perform some action * with a given URI. * * The user has requested that the uri be loaded */ oneway void activateURI (in string uri, in boolean relative); /** * getParentAccessible: * * Returns: A CORBA Accessibility reference, related to the * parent of the container widget associated with this control * frame. */ Unknown getParentAccessible (); /** * unImplemented: * * placeholders for future expansion. */ void unImplemented (); void unImplemented2 (); }; interface Control : Bonobo::Unknown { exception NoContents { }; /** * getProperties: * * Returns: A PropertyBag containing this Control's properties. */ PropertyBag getProperties (); /** * getDesiredSize: * * Returns the requested size for the contained widget. */ Gtk::Requisition getDesiredSize (); /** * getAccessible: * * Returns: accessibility related resources */ Bonobo::Unknown getAccessible (); /** * getWindowId: * @cookie: ',' delimited string, format: * 'screen' = [, [ ] ] * * Returns: the windowId of the plug's window */ Gdk::WindowId getWindowId (in string cookie) raises (NoContents); /** * getPopupContainer: * * Returns: A UIContainer for a parent to push popup items into */ UIContainer getPopupContainer (); /** * setFrame: * @frame: A Bonobo_ControlFrame. * * Gives the Control a handle to its ControlFrame. * * Returns: The windowId of the plug */ oneway void setFrame (in ControlFrame frame); /** * setSize: * @width: width given to the control * @height: height given to the control * * Informs the Control of the size assigned by its container application */ oneway void setSize (in short width, in short height); /** * setState: * @state: The new state of the control. * * Set the control's activity state. */ oneway void setState (in Gtk::State state); /** * activate: * * Activates or deactivates this Control. */ oneway void activate (in boolean activate); /** * focus: * * a Control proxy for GtkContainer::focus() * * Returns: whether focus was transfered. */ boolean focus (in Gtk::Direction direction); /** * unImplemented: * * placeholders for future expansion. */ void unImplemented (); void unImplemented2 (); void unImplemented3 (); }; interface PropertyControl : Bonobo::Unknown { readonly attribute long pageCount; enum Action { APPLY, HELP }; /** * NoPage: Raised when the page number specified * does not exist. */ exception NoPage {}; /** * An interface for allowing a customization interface * in addition / instead of a property bag; rather immature. */ /** * getControl: * @pagenumber: The number of the page to get. * * Gets the page number @pagenumber. Multiple pages can be used * in a number of different ways. One way is for each page to be * a new page in a GnomeDruid widget. Another way is for each page * to be a page of a GtkNotebook in a GnomePropertyBox. The most * common case, however, is for one single page. * * Returns: a Bonobo::Control for the page. */ Control getControl (in long pagenumber) raises (NoPage); /** * notifyAction: * @pagenumber: The page number that this action was performed on. * @action: The action that should be performed on the settings. * * Tell the client what it should do with the settings in the * PropertyControl. */ void notifyAction (in long pagenumber, in Action _action) raises (NoPage); void unImplemented (); void unImplemented2 (); }; }; #endif libbonobo-2.32.1/idl/Bonobo_Zoomable.idl0000644000076400007640000000726211173072711015014 00000000000000/* * bonobo-zoomable.idl: Bonobo::Zoomable - a zoomable interface for Controls. * * Copyright (C) 2000 Eazel, Inc. * 2000 SuSE GmbH. * * 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 library; if not, write to the Free * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * * Authors: Maciej Stachowiak * Martin Baulig */ #ifndef BONOBO_ZOOMABLE_IDL #define BONOBO_ZOOMABLE_IDL #include "Bonobo_Unknown.idl" module Bonobo { typedef float ZoomLevel; typedef string ZoomLevelName; typedef sequence ZoomLevelList; typedef sequence ZoomLevelNameList; /* A zoomable has the responsibility to look for this * interface on its Bonobo control frame and call * onLevelChanged whenever it changes the zoom level (on * its own or due to calls from the zoomable interface). */ interface ZoomableFrame : ::Bonobo::Unknown { /** * onLevelChanged: * @zoom_level: The new zoom level. * * Informs the ZoomableFrame that the zoom level has changed. * The Zoomable should call this each time it successfully * completed a zooming operation. */ oneway void onLevelChanged (in float zoom_level); /** * onParametersChanged: * * Informs the ZoomableFrame that some of the zoom parameters * such as min/max zoom level has changed, for instance after * loading a new file into the component. */ oneway void onParametersChanged (); void unImplemented1 (); void unImplemented2 (); void unImplemented3 (); void unImplemented4 (); }; interface Zoomable : Bonobo::Unknown { /* * This is a read-only value and indicates the actual current * zoom level of the component. It is changed by the component * after successfully completing a zooming operation before * calling the `onLevelChanged' method on its ZoomableFrame. */ readonly attribute float level; /* Information about the type of zooming that's supported. */ readonly attribute float minLevel; readonly attribute float maxLevel; readonly attribute boolean hasMinLevel; readonly attribute boolean hasMaxLevel; readonly attribute boolean isContinuous; readonly attribute ZoomLevelList preferredLevels; readonly attribute ZoomLevelNameList preferredLevelNames; /* * High level operations. * These can cause a change in the zoom level. * The zoomable itself must decide what the concepts * "one level in", "one level out", and "to fit" mean. */ oneway void zoomIn (); oneway void zoomOut (); oneway void zoomFit (); oneway void zoomDefault (); /** * setLevel: * @zoom_level: The new zoom level. * * Tells the component to zoom to @zoom_level. * * If the component only supports fixed zoom levels, * then the actual zoom level will be set to the * closest possible value of @zoom_level. */ void setLevel (in float zoom_level); /** * setFrame: * @zoomable_frame: A Bonobo_ZoomableFrame. * * Gives the Zoomable a handle to its ZoomableFrame. */ void setFrame (in ZoomableFrame zoomable_frame); void unImplemented1 (); void unImplemented2 (); void unImplemented3 (); void unImplemented4 (); }; }; #endif /* BONOBO_ZOOMABLE_IDL */ libbonobo-2.32.1/idl/Bonobo.idl0000644000076400007640000000216611173072711013162 00000000000000/* * The Bonobo Document Model * * Author: * Miguel de Icaza (miguel@gnu.org) * */ #ifndef _BONOBO_IDL_INCLUDED_ #define _BONOBO_IDL_INCLUDED_ #ifndef __Bonobo_COMPILATION #ifdef __ORBIT_IDL__ %{ #pragma include_defs bonobo/Bonobo.h %} #pragma inhibit push #endif #endif /* From bonobo-activation */ #include #include /* Basics */ #include #include #include /* Storage stuff. */ #include #include /* Control stuff. */ #include #include #include #include #include #include /* Subdocument stuff. */ #include #include #include /* Printing stuff */ #include /* Clipboard */ #include #include #ifndef __Bonobo_COMPILATION #ifdef __ORBIT_IDL__ #pragma inhibit pop #endif #endif #endif /* _BONOBO_IDL_INCLUDED_ */ libbonobo-2.32.1/idl/Bonobo_Context.idl0000644000076400007640000000556411173072711014673 00000000000000/* * bonobo-context.idl: Exposes global bonobo functionality * * Author: * Michael Meeks (michael@helixcode.com) * * Copyright (C) 1999, 2000 Helix Code, Inc. */ #ifndef BONOBO_CONTEXT_IDL #define BONOBO_CONTEXT_IDL #include "Bonobo_Storage.idl" #include "Bonobo_Moniker.idl" module Bonobo { interface MonikerContext : Unknown { /** * getObject: * @name: * @repoId: * * Create and resolve a moniker */ Unknown getObject (in string name, in string repoId); /** * createFromName: * @name: parsed name of moniker * * creates a moniker from a display name */ Moniker createFromName (in string name); /** * getExtender: * @monikerName: the name of the moniker to extend eg. 'file' * @interface: the interface we want to resolve against * * Finds an extender that can be plugged into the object * namespace later to allow new interfaces to be exported. * Used in implementing new monikers. */ MonikerExtender getExtender (in string monikerPrefix, in string interfaceId); void unImplemented1 (); void unImplemented2 (); void unImplemented3 (); void unImplemented4 (); void unImplemented5 (); void unImplemented6 (); }; /* * RunningContext: a live object tracker. * * This interface is aggregated with an EventSource that * fires: 'bonobo:last_unref' when all objects are released. */ interface RunningContext : Unknown { /** * addObject: * @object: a newly created object * * Adds an object to be tracked. */ void addObject (in Object obj); /** * removeObject: * @object: an object about to be destroyed * * Removes an object from tracking. */ void removeObject (in Object obj); /** * addKey: * @key: a unique key * * Adds a stringified reference to be tracked. */ void addKey (in string key); /** * removeKey: * @key: a unique key * * Removes a stringified reference from tracking */ void removeKey (in string key); void atExitUnref (in Object obj); void unImplemented1 (); void unImplemented2 (); }; #if 0 interface ExceptionContext : Unknown { /** * getText: * @ex: an exception * * translates the exception into a human * readable string translated into the current * locale. */ string getText (in exception ex); }; interface StreamContext : Unknown { exception NotSeekable {}; /** * getTemp: * * creates a temporary stream */ Stream getTemp (); /** * sniffStream: * @stream: a seekable stream * * If the stream is not seekable, we return * an exception without seeking, otherwise * we sniff the stream, to see if it smells * approximately like the suggested mime type. */ boolean sniffStream (in Stream stream, in string mimeType) raises (NotSeekable); }; #endif }; #endif /* BONOBO_CONTEXT_IDL */ libbonobo-2.32.1/idl/Bonobo_Clipboard.idl0000644000076400007640000000402511173072711015135 00000000000000/* * Bonobo::Clipboard: interface for a general clipboard supporting * both embedding (storing the pasted data inside the container) and * linking (storing only a reference to the pasted data inside the * container, with the possibility to refresh it later) * * Bonobo::ClipboardStore: interface for implementing clipboard * persistency externally. Use this if you don't want to implement * funky clipboard data persistency in your application. * * Author: * RDI Gerg * * Copyright (C) 2001 Gerg rdi */ #ifndef BONOBO_CLIPBOARD_IDL #define BONOBO_CLIPBOARD_IDL #include "Bonobo_Unknown.idl" #include "Bonobo_Persist.idl" #include "Bonobo_Moniker.idl" module Bonobo { interface Clipboard : Unknown { /** * setClipboard: * @pasting_moniker: * @linking_moniker: * * Set the curent clipboard state. The clipboard * server will own a new reference on the monikers. * Three events will also be fired by the aggregated * EventSource: * Bonobo/Clipboard:changed (void) * Bonobo/Clipboard:changed:pasting (pasting_moniker) * Bonobo/Clipboard:changed:linking (linking_moniker) */ void setClipboard (in Moniker pasting_moniker, in Moniker linking_moniker); /** * paste: * * Get the current pasteing moniker. The returned * moniker is already ref'd. */ Moniker paste (); /** * link: * * Get the current linking moniker. The returned * moniker is already ref'd. */ Moniker link (); void unImplemented1 (); void unImplemented2 (); void unImplemented3 (); void unImplemented4 (); }; interface ClipboardStore : Unknown { /** * fetchStream: */ void fetchStream (in PersistStream source, in Moniker linking_moniker); /** * fetchStorage: */ void fetchStorage (in PersistStorage source, in Moniker linking_moniker); void unImplemented1 (); void unImplemented2 (); void unImplemented3 (); void unImplemented4 (); }; }; #endif /* !BONOBO_CLIPBOARD_IDL */ libbonobo-2.32.1/idl/Bonobo_Property.idl0000644000076400007640000001111111173072711015054 00000000000000/* * bonobo-property.idl: The Bonobo Property interfaces. * * Authors: * Nat Friedman (nat@nat.org) * Michael Meeks (michael@ximian.com) * Dietmar Maurer (dietmar@ximian.com) * Mike Kestner (mkestner@ameritech.net) * * Copyright 1999, 2000, 2001 Ximian, Inc. * Copyright 2000, Mike Kestner */ /* * Each PropertyBag is aggregated with an EventSource, so that it is * possible to attach event listeners. The event name is composed * of "Bonobo/Property", the type of the event and finally the property * name - everything separated by colons. At the moment there is only one * type defined - "change". So if a property with name "autosave" changes * its value, we emit an event with the name: * "Bonobo/Property:change:autosave" */ #ifndef BONOBO_PROPERTY_IDL #define BONOBO_PROPERTY_IDL #include "Bonobo_Unknown.idl" #include "Bonobo_Listener.idl" module Bonobo { struct Pair { string name; any value; }; typedef sequence PropertySet; typedef sequence KeyList; typedef long PropertyFlags; const PropertyFlags PROPERTY_READABLE = 1; const PropertyFlags PROPERTY_WRITEABLE = 2; const PropertyFlags PROPERTY_NO_LISTENING = 4; const PropertyFlags PROPERTY_NO_AUTONOTIFY = 8; const PropertyFlags PROPERTY_NO_PERSIST = 16; interface PropertyBag : Bonobo::Unknown { exception NotFound {}; exception InvalidType {}; exception _ReadOnly {}; exception BackendFailed {}; /** * getKeys: * * Returns: A list of keys matching @filter. */ KeyList getKeys (in string filter) raises (NotFound, BackendFailed); /** * getType: * * Returns: The type of property @key. */ #ifdef __ORBIT_IDL__ TypeCode getType (in string key) #else CORBA::TypeCode getType (in string key) #endif raises (NotFound, BackendFailed); /** * getValue: * * Returns: The current value for property @key. */ any getValue (in string key) raises (NotFound, BackendFailed); /** * setValue: * * Sets the value for property @key to @value */ void setValue (in string key, in any value) raises (NotFound, InvalidType, ReadOnly, BackendFailed); /** * getValue: * * Returns: A list of properties matching @filter. */ PropertySet getValues (in string filter) raises (NotFound, BackendFailed); /** * setValue: * * Sets the values contained in @set. */ void setValues (in PropertySet set) raises (InvalidType, ReadOnly, BackendFailed); /** * getDefault: * * Returns: The default value for property @key. * * Property editors can use it to implement a "set property value to * default" mechanism. * */ any getDefault (in string key) raises (NotFound, BackendFailed); /** * getDocTitle: * * Returns: A short string describing property @key. */ string getDocTitle (in string key) raises (NotFound, BackendFailed); /** * getDoc: * * Returns: A verbose documentation describing property @key. */ string getDoc (in string key) raises (NotFound, BackendFailed); /** * getFlags: * * Returns: */ PropertyFlags getFlags (in string key) raises (NotFound, BackendFailed); void unImplemented1 (); void unImplemented2 (); void unImplemented3 (); void unImplemented4 (); }; interface ConfigDatabase : PropertyBag { enum DBFlags { _DEFAULT, WRITE, MANDATORY }; /** * isWriteable: * * indicates whether the database is writeable or not */ readonly attribute boolean isWriteable; /** * getDirs: * * Returns: A list of directory names. */ KeyList getDirs (in string dir) raises (NotFound, BackendFailed); /** * hasDir: * * Returns: TRUE if @dir exists. */ boolean hasDir (in string dir) raises (BackendFailed); /** * removeValue: * * Remove a value from the database. */ void removeValue (in string key) raises (BackendFailed); /** * removeDir: * * Removes all values contained in directory. */ void removeDir (in string dir) raises (BackendFailed); /** * addDatabase: * * The added database will be used to lookup default values. */ void addDatabase (in ConfigDatabase db, in string key, in DBFlags flags) raises (BackendFailed); /** * sync: * * Flush all buffers */ void sync () raises (BackendFailed); void unImplemented5 (); void unImplemented6 (); void unImplemented7 (); void unImplemented8 (); }; }; #endif /* BONOBO_PROPERTY_IDL */ libbonobo-2.32.1/idl/Bonobo_Persist.idl0000644000076400007640000001017211173072711014667 00000000000000/* * bonobo-persist.idl: Bonobo::Persist interfaces * * Copyright (C) 1999, 2000 Helix Code, Inc. * * Authors: * Miguel de Icaza (miguel@gnu.org) * Dan Winship (danw@helixcode.com) */ #ifndef BONOBO_PERSIST_IDL #define BONOBO_PERSIST_IDL #include "Bonobo_Unknown.idl" #include "Bonobo_Storage.idl" #include "Bonobo_Exception.idl" module Bonobo { interface Persist : Unknown { enum Status { SAVE_OK, SAVE_CANCEL, SAVE_FAILED }; exception WrongDataType {}; exception FileNotFound {}; typedef string ContentType; typedef sequence ContentTypeList; /** * getContentTypes: * * Gets a list of supported mime types that this * persistor can save its data in. The default / * preferred type being the first element. */ ContentTypeList getContentTypes (); typedef string IID; /** * getIId: * * Get the IID necessary to recreate the object whose * internal state this interface represents */ IID getIId (); /** * isDirty: * * Indicates if a save is necessary. */ boolean isDirty (); void unImplemented1 (); void unImplemented2 (); }; /* * The PersistFile interface is somewhat mis-named it * should be PersistURI. * * This allows applications to load and save documents * via the Gnome VFS. */ interface PersistFile : Persist { exception NoCurrentName { string extension; }; /** * load: * @uri: URI to load from * * Loads the document object from the file * pointed in by @path */ void load (in string uri) raises (IOError, NotSupported, WrongDataType, FileNotFound); /** * save: * @uri: the URI to save to * saves the document object to the file * pointed in by @path */ void save (in string uri) raises (IOError, NotSupported); /** * getCurrentFile: * * Returns the URI of the current file. */ string getCurrentFile () raises (NoCurrentName); void unImplemented3 (); void unImplemented4 (); }; /* * PersistStorage is implemented by BonoboObjects. * * The methods are used by Bonobo and the container * applications to manipulate the storage of a componet */ interface PersistStorage : Persist { /** * load: * @storage: The storage to load the state from * * The bonobo_object should load its state from the * @storage provided */ void load (in Bonobo::Storage storage) raises (IOError, NotSupported, WrongDataType); /** * save: * @storage: The storage in which to save the state * of the bonobo_object * @same_as_loaded: if TRUE, this means the object * is being saved to the same source used to load the object * * BonoboObjects should save their sate in the @storage */ void save (in Bonobo::Storage storage, in boolean same_as_loaded) raises (IOError, NotSupported); }; /* * This interface is used by items which only need to store * information in a Stream ( monikers are the primary * users of this ). * * Unlike PersistStorage, the Stream passed is only valid * during these calls (ie, you should not incref these * and used them after this). */ interface PersistStream : Persist { /** * load: * @stream: Where to load the state from * @type: the MIME content type of the data, or "" * if it is unknown. * * Loads the status of the object from @stream */ void load (in Bonobo::Stream stream, in ContentType type) raises (IOError, NotSupported, WrongDataType); /** * save: * @stream: Where to save the state to. * @type: the MIME content type to save the data in, * or "" if any type is acceptable. * * If no exception was thrown the data in the stream has * the requested content type; if no type was requested * the first entry from getContentTypes is returned. * Hence no return value is needed. * * Saves the state of the object to the @stream */ void save (in Bonobo::Stream stream, in ContentType type) raises (IOError, NotSupported, WrongDataType); void unImplemented3 (); void unImplemented4 (); }; }; #endif /* BONOBO_PERSIST_IDL */ libbonobo-2.32.1/idl/Bonobo_GenericFactory.idl0000644000076400007640000000205511173072711016143 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ /* * Bonobo_GenericFactory.idl: Basic object factory interface, based on CORBA * LifeCycle version */ #ifndef __BONOBO_GENERIC_FACTORY_IDL__ #define __BONOBO_GENERIC_FACTORY_IDL__ #ifndef __Bonobo_GenericFactory_COMPILATION #ifdef __ORBIT_IDL__ %{ #pragma include_defs bonobo-activation/Bonobo_GenericFactory.h %} #pragma inhibit push #endif #endif #include #include module Bonobo { interface GenericFactory : Bonobo::Unknown { exception CannotActivate { }; /** * createObject: * @iid: A string identifying an implementation. * * Returns: A newly created CORBA object of the * specified type, or raises the CannotActivate * exception. * */ Object createObject (in string iid) raises (CannotActivate); }; }; #ifndef __Bonobo_GenericFactory_COMPILATION #ifdef __ORBIT_IDL__ #pragma inhibit pop #endif #endif #endif /* __BONOBO_GENERIC_FACTORY_IDL__ */ libbonobo-2.32.1/intltool-update.in0000664000076400007640000000000011432275511014142 00000000000000libbonobo-2.32.1/README0000644000076400007640000000467011173072711011364 00000000000000 libbonobo is the non-GUI part of the bonobo component infrastructure, it is most useful for creating aggregate interfaces & doing IPC easily. It also contains a rather badly designed & implemented per-system activation system. This needs re-writing & simplifying to be per-display. Take a look at samples/echo/. 2005-02-02 Michael Meeks. This is the distribution of Bonobo, the GNOME component and compound document system for the GNU system. * What is Bonobo Bonobo is a set of language and system independant CORBA interfaces for creating reusable components, controls and creating compound documents. The Bonobo distribution includes a Gtk+ based implementation of the Bonobo interfaces, enabling developers to create reusable components and applications that can be used to form more complex documents. If you want to look into a Java implementation of Bonobo, look in the GNOME CVS for the `monkeybeans' module (Erdi Gergo is the author), you can browse it at: http://cvs.gnome.org/bonsai * Licensing Bonobo libraries are released under the terms of the GNU Lesser General Public License (GNU LGPL). While components and programs included with this release are licensed under the terms of the GNU General Public License (GNU GPL). You can find copies of the licenses in the files COPYING.LIB and COPYING for the libraries and the code respectively. * Bug reports File any bug reports at http://bugzilla.gnome.org/ * What you will need You will need a working GNOME 2.x system with the development tools to compile and install Bonobo. * Mailing lists gnome-components-list@gnome.org To subscribe, send mail to gnome-components-list-request@gnome.org and in the body of the message put the word "subscribe". Archive of the mailing list is available at: http://mail.gnome.org/archives/gnome-components-list * The layout You will find documentation for Bonobo in the "doc" directory. The actual implementation of bonobo is in the "bonobo" directory. The CORBA interfaces are in the "idl" directory. Sample implementations of components and containers are in the "samples" directory. You should use these implementations as your reference when you write Bonobo code. * Bonobos The real Bonobos are endangered species. If you want to help preserve the Bonobos go to this web site: http://www.gsu.edu/~wwwbpf/bpf Miguel de Icaza (miguel@gnu.org) August, 1999. libbonobo-2.32.1/TODO0000644000076400007640000000055711173072711011174 00000000000000API bits: + Need a Bonobo_Disposable interface b-a-s + Need to have the 'scope' attributes; so a component can specify it's capabilities: per display, per lang etc. UI stuff - need a CORBA_Object bonobo_widget_query_interface () method. publicize bonobo_socket_add_id. + Add a 'register_all_these_factories' method - so we can avoid nasty race conditions.libbonobo-2.32.1/AUTHORS0000644000076400007640000000037311173072711011550 00000000000000Miguel de Icaza (miguel@ximian.com) Nat Friedman (nat@ximian.com) Michael Meeks (michael@ximian.com) Dietmar Maurer (dietmar@ximian.com) Alex Graveley (alex@ximian.com) Mike Kestner (mkestner@ameritech.net) Joe Shaw (joe@ximian.com) libbonobo-2.32.1/libbonobo-zip.in0000755000076400007640000000251611173072711013601 00000000000000#!/bin/sh # Build zipfiles for libbonobo on Win32. Separate runtime and # developer ones. Run after make install. ZIP=/tmp/libbonobo-@VERSION@.zip DEVZIP=/tmp/libbonobo-dev-@VERSION@.zip cd @prefix@ rm $ZIP zip $ZIP -@ < bonobo_arg_from/to_gvalue bonobo_arg_type_to/from_gtk -> bonobo_arg_type_to/from_gtype IDL: Bonobo_Property.idl: remove the Property interface and extended the PropertyBag interface instead. included the ConfigDatabase interface. Bonobo_Storage.idl: remove copyTo Bonobo_Persist: Promoted isDirty to the base class and removed it from all the subclasses. New getIId method to get the OAF IID necessary to re-create the component owning the Bonobo::Perist interface Bonobo_PersistStream: remove getMaxSize: use the stream interface for this Bonobo_PersistStorage: remove initNew: use the stream context for this. Bonobo_Listener: remove the 'id' concept on the EventSource - it was badly broken and unneccesary. Bonobo_ClientSite: Bonobo_Embeddable: Bonobo_View: Bonobo_ViewFrame: killed: use the new ControlFactory and CanvasComponentFactory interfaces to create compound document view objects. Bonobo_ControlFactory: new: use to expose control based compound-doc view support. Bonobo_CanvasComponentFactory: new: use to expose canvas based compound-doc view support. Bonobo/ActivationContext: renamed to Bonobo/MonikerContext to avoid clash with oaf and better reflect it's use. Removed: Bonobo_Advise.idl: unused, Bonobo_ProgressiveDataSink: unused & stale Bonobo_DesktopWindow: deprecated Insignificant: libbonobo-2.32.1/doc/0000775000076400007640000000000011546334244011332 500000000000000libbonobo-2.32.1/doc/Makefile.am0000644000076400007640000000017311173072711013277 00000000000000## Process this file with automake to procude Makefile.in SUBDIRS = api activation activation-api EXTRA_DIST = NAMESPACE libbonobo-2.32.1/doc/api/0000775000076400007640000000000011546334245012104 500000000000000libbonobo-2.32.1/doc/api/properties.xml0000664000076400007640000001411511430735223014735 00000000000000 Properties LIBBONOBO Library bonobo-argsimplified CORBA_Any wrappers Properties Bonobo component properties, version 0.1 by Michael Meeks <mmeeks@gnu.org> A brief discussion of how to use the property API to add a simple to use configuration mechanism to your bonobo component. Properties and bags A property is an attribute that is attached to a Bonobo object. It can have any type, although the standard types boolean, long, float, double, string are handled in a convenient fashion. Properties are attached to a PropertyBag object that is attached to your control or component in some way. BonoboArgs A bonobo arg contains the value of a property whilst it is 'in flight' between a property and a requestor. The bonobo arg system is designed to make ORBit's 'any' code easier to use and less error prone - it is however simply a wrapper around a CORBA_any. A number of macros and helper functions are provided in bonobo-arg.h. Particularly, the type macros of BonoboArgType eg. BONOBO_ARG_BOOLEAN, BONOBO_ARG_LONG, BONOBO_ARG_STRING And a number of access procedures for getting and setting standard values from a BonoboArg. Eg. if 'a' is a BonoboArg * we should use: BONOBO_ARG_GET_STRING (a) to get its string value or BONOBO_ARG_SET_STRING (a, "GNU")to set its string value NB. Passing a NULL string to BONOBO_ARG_SET_STRING is equivalent to passing an empty string. The bonobo-arg code also provides functions for mapping GParamSpecs to BonoboArgs and vice-versa. PropertyBag creation To add properties to an object first we must create a property bag hence: BonoboPropertyBag *bonobo_property_bag_new (BonoboPropertyGetFn get_prop, BonoboPropertySetFn set_prop, gpointer user_data); Each property has a get / set / user_data (GSU) triplet that handles that property's behavior. In a typical scenario all object properties in a bag utilise the same GSU triplet, and are identified inside the get / set functions by a unique enumerated constant arg_id. Inside the function this arg_id can then be used with a switch statement to provide efficient (de)multiplexing of property requests. For particularly obtuse persons wanting more flexibility it is possible to specify the GSU triplet per property using the add_full variant. Property Creation Each basic property is created by this function: void bonobo_property_bag_add (BonoboPropertyBag *pb, const char *name, int idx, BonoboArgType type, BonoboArg *default_value, const char *docstring, BonoboPropertyFlags flags); It looks horrendous, but is horribly simple in most cases; the idx is the index that will be passed to a generic get / set function for this property. The type is one of the BonoboArgType macros discussed in section 2 which maps to an ORBit TypeCode [ hence any arbitary type can be added without the property-bag knowing anything about it ( allocation of that type is the users responsibility ) ]. Default_value is either NULL or a value created thusly: BonoboArg *def = bonobo_arg_new (BONOBO_ARG_DOUBLE); BONOBO_ARG_SET_DOUBLE (def, 0.3127); It's reference is stored in the property_bag. The rest of the code is internal and extremely transparent. In order to implement the get / set functions I would copy & paste the sample code in: libbonoboui/samples/controls/bonobo-sample-controls.c. Wrapping GObjects If you have already implemented a GObject that has the set of properties that you wish to export as Bonobo properties then it is trivial to add them to the property bag using a transparent mapping. This means that you do not have to write any more code, simply use: GParamSpec **pspecs; guint n_props; pspecs = g_object_class_list_properties ( G_OBJECT_GET_CLASS (my_object), &n_props); bonobo_property_bag_map_params (pb, my_object, pspecs, n_props); g_free (pspecs) Using properties in your client application There are some fairly typesafe but convenient vararg ways to get remote properties. Example: CORBA_double i; bonobo_widget_get_property (control, "value", TC_CORBA_double, &i, NULL); i+= 0.37; bonobo_widget_set_property (control, "value", TC_CORBA_double, i, NULL); The alternative being the even more type safe version: bonobo_property_bag_client_get_value_gdouble (pb, "value", &i); libbonobo-2.32.1/doc/api/libbonobo-docs.sgml0000664000076400007640000001462111430735223015600 00000000000000 ]> Libbonobo Reference Manual General &libbonobo-bonobo-main; &libbonobo-bonobo-running-context; &libbonobo-bonobo-shutdown; &libbonobo-bonobo-i18n; &libbonobo-bonobo-types; &libbonobo-bonobo-context; &libbonobo-bonobo-exception; &libbonobo-bonobo-application; &libbonobo-bonobo-app-client; Objects, Factories, Reference Counting &libbonobo-bonobo-object; &libbonobo-bonobo-generic-factory; &libbonobo-bonobo-shlib-factory; &libbonobo-refcounting; Property Bags, Events, Listeners &libbonobo-properties; &libbonobo-bonobo-event-source; &libbonobo-bonobo-listener; &libbonobo-bonobo-property-bag; &libbonobo-bonobo-arg; &libbonobo-bonobo-property-bag-client; Monikers &libbonobo-monikers-overview; &libbonobo-bonobo-moniker; &libbonobo-bonobo-moniker-simple; &libbonobo-bonobo-moniker-util; &libbonobo-bonobo-moniker-extender; &libbonobo-bonobo-item-handler; &libbonobo-bonobo-item-container; &libbonobo-bonobo-moniker-context; Storages and Streams &libbonobo-bonobo-storage-memory; &libbonobo-bonobo-stream-memory; &libbonobo-bonobo-storage; &libbonobo-bonobo-stream-client;
The Bonobo::Stream interface
The Bonobo::Storage interface
Persistency
The Bonobo::Persist interface
The Bonobo::PersistFile interface
The Bonobo::PersistStorage interface
The Bonobo::PersistStream interface
&libbonobo-bonobo-persist; &libbonobo-bonobo-persist-file; &libbonobo-bonobo-persist-stream; &libbonobo-bonobo-persist-client;
Miscellaneous &libbonobo-debugging; &libbonobo-faq; &libbonobo-bonobo-config-database; Index
libbonobo-2.32.1/doc/api/figures/0000775000076400007640000000000011546334245013550 500000000000000libbonobo-2.32.1/doc/api/figures/unknown.png0000664000076400007640000004251211430735223015672 00000000000000PNG  IHDRi  džIsBITO pHYs IDATxy\T? l Hjë)V)izM%u²4]қb ! 3۹dz͙a3?眙7g( *!@ֳgǏ{{{Kwk2(1x`^/MNP$XEbbΝ;z}hhhZZ';!DN8144433Shڴ4MONLȝ\@DD&>;D ON)vHJqĉŋ WTT^ o7?~ ag G?MN wlke7fj[/gNLhY6fs%i;AA|HPR bMSLNdY${yꩧufbGSYO~ӑ:f&?+Ԅ \;M,6mfYfPd(9w6-yB`lҹsgGG>}dddЍCСC;wOiTFwn׮݄ *++^jNjSN_ݡCm>/LDR%6JZ~}``ZڴiCo%s}}9s?C1sgKsuuuuu>}zMM ʕ+=<<|||+Wvȑ#v횕EoӦMqq1!$++k׮ǔ?ۊK.=L(K.&JuwYYgFLb .AsĤ <' wmKKK;uTyyytttll,'Nx\z&;%K/_~ݺu&Lܹs??|ʕC% 6lʕÇ[ԩSm۶}SJxǵZܹs_}U';P/fI-@2yNɿ Oݻww]V>|Xb@=/_޾}{F1999((HфNj*}'Of^sKMMҥZ޼ytl2'(1%vXuuu֭ fձ......~D\v!… Eou et\9)pйs熆alȉAw%5^U9_;AQ[2m޼hŊo# wq޽'x"--ڱ:j_Ja$N+B%xaF 9[ w\WP`uC MrHYd)X lC=DR=RY!{IIIO-Zv8(-<PJ˗W_W JSN$Қ1w-_vʔ)Zg͚5LB]sk+(gE,hX,lj fU(VR3HjOJdw!dVE[i)#'MĜsi!w1Ys…eeeyyy.]:z(. }ڊb3J>`DbXl*]Sl*kw1%J`rRAr*byUQ<-^p/\ݻyyy'O\r&HLB~~~b̆f4،#VdIK?-\T Wdw/}٬(Q2}77Pb3-V4_NN};;;K1m NP9dMNAfC U[QlFe N#Ԣ`D ?-\T!_YSsĮ0Y;PfM8eK(XMr\<= #'w2 m ^W[P~mEXpɔHl"V1<2MoK7be>S 1 n%r┙;M,Vl"kcc z- nn>f4I隠%9*&gZeUYSIZU>@b3-xZu\d0ǿ۷n*++cf1\0@S8'v6'OzjfCs ʯ(6ɵpJrHt•Mo bVeMb=1/"K.)'QlYE,+++_y]rFsicOS=3Aư]i5bĈ\+ƀw ={;wJJJ!ȝpݻwٳg׮]]\\.]jpk(xX<ȝb%ZN&ВU?[`+ `*@ VOX;xXA$SRn"!Drrj%@@ VOD?vB ]1a$*5UZ`@SyNk'/(itL Ԫ(]I1)6(o#9s&)))==~RR544Bjumm!`0п-ANÊ!sX6tmBJe01%b_fR<~lرcgΜYXXHcNˣo37$9:uꔗg0F#7 Cl:\NG:uodȝ`S\, NIB9*%*5JWlLD|hi R$I|b9\, NIB9*%*5JWlZ`i 4j5JRVFc;nkd?E LOO ւ 6O_#k)d0-(w5[K wR d@ wrpp [;7ȝ`4 B3@߂f v  r'-Nh&ȝ`; wݢs'@C 2<ȝA0r'y;U*&444--ځc@\wudff!wuhڴ4OEȝ`5H`;>!w!}ACۂ 6鳕QT}ȑ#*g3BiiJrsskLCAl ~wBH޽z3¥K!,j]'/^,_QQQz>333""eUWWwU{nA9`РAiXBHqqq -?0 >3ɝ*J,Xj: `ǎL猌 W0aJrttܺu !}ݐ!CݝBBB>cڷoR !!88XR:uj*g!Ȝo랍x,4]vBƌn4m۶%ܻwŋ6lXNNN}}~Ki׮ӟΚ'OO=!Dӝ:u(9Ϝ92s̢[%KP#B (/衾^>|̉i)Q i !K.e7^zHQԾ}!^^^fggB黵r`BH߾} 5W_}Iw%POB.^HQT޽]\\!ׯ(j\2'&G%^#&1//ݡC\B ?ן{'Okrs:Ι3ёR^^Nt۷oAUI0O<+'uޝ_ٳ'{!C̘1rܹB1؟+**ի / s"orsm=˛m˯.))i߾}2 ѵ$swuxxe C3-֭[Vnx <<2tP gEBfϞ}:eΞ=M6gZˣ(wtڵhd5949E=*N'i4K.uuu nnnk׮e:[. (0o>>3gټaڵ=zh4 ڻw/y޽W薁-;v`/D$w3rɒ%̧ϟ?lذ;w3cbbiҥC )((qDndd$}y(JaJKr'VeeZo_U#3w233%%%:vm7!pV~7n^V, ˖,̡9Kڵk,___B(zzzN:U捤G)P {T(+i NZQՂ[4 ׳gCCm9Jyܹe˖/qtt%\;AYjb0v `00_ hV E=*;*:u5'//`0o󟵛|CZ߾}SSSʶn믛m#Ða͝]ȌN~:};778"!DV?`F}tH2@ZI&͚5<>>^kc0._i 9sf `NN?>%% ʡ܉l|ʕ+!!!D1Qu'r'E=J(QlF`%z~(Qaaj}ƍӦMc̞=wFO.\ݻ7ѣh> IDATu'sx'AEPxTSSsիW;wd܉Jv?eʔnݺk׎dr NT'~'Xŋz333OE}'ȝ`b(#}*Q DaJĉ333#""/JKKo<,<x&;lA,x.??}W_;oAѣGϞ=͝^h/_ 巋NhhhCCWjLBx"H_cSAAA;wf#GVq (,,7nٳg===Eiƍ/^ܾ};QR)2!R~~O<Ѭ#4f̞=;22rҤIMGqqqxxBB(dv-ݻwӟ mlV71 M8u xg/SNxQ8qY,~ٳgeeeQFU#|?~[ֶm۶|rQQQ8zT&%%۷逸jI]ݫW KF,*2rHΝj-ZdX>|yFc|oʕ+۵kׄcGFFU#|f2wk׮uё{ŷ~[ , vKNM!̍ӿR{o埜MNpj~˗_~l2rcǎzxxз/_:99;33۷oo~;wnӦEQAAA999&;v5x0wo߾uV???WWUVQ~\oڴɬi[Ru~i4GyL/V񑘈'Nrv^^^+$tդ$WWWooy}:99uɓb!QuС=z8;; 2dbQ/',**;b!;v裏t:ӿQ,<1{?y#Gw3g6o,֓j5~O>rgMMɓ۵kt`7osLL̃OOO77k2[. Ab[BHrrN۷o_rrN;|O>$((HDDD\tzvFD?#Va%frɜ%V's F+xD,ApX8wyh$(2VY׮]ogee1OSΡIPPPP@QTCC+jСCSSS ,X@'B???nnnE ,ߎ=600̙3L7|{ѷÇӷ޽SE-]^PP0~;ҥ ީS|ζQնm犋c^X`1o;\~=88(Bꫯ?(t:99c=ϟ]pЍG/k֬y$"ԣG+Wз-Z!8{jj*!dȐ!<ȉ'$z .]\z5""bرe㮨)UGp#<´j7odwct䶄Bh4aǎڵ3 kٻwoZZZddd``/ja%°`rJ0Z#"' KKK.]C|̣s͛:믿޻w`QOR322m֫W3h % zѣy晼[Ӈnu떧'g[bG/_~GPlE|^pՕ? 6RRRHrJJ `HL#GHF/\i=ϟ]pOaaaLˊ޸qԩŞgpԩS9dɒKڵ۾}{]]^߶m[\\6C0 ^w2n ^wmKğoH=|#$:xkb Cb[9\;AYu'|`>VtI t,..~'WڵkwުUVgRnݺ7n̛7ލ;}4g777__ϳۇ \؛GEEmGGGu)߿?cǎ  8r~%÷={|JvZhhhZZhQeff@ r'41O{;qŋ+**JgffFDDl\ :~'$: ˗12@kA2%kjj)2 rvvys[]BȺu軟|IPPFt!!!&((h֭rss_|;99EEE 9_ܱcswK߿ɉ/[lժU3fEQTuuullK\\\uu53|ݮ])SpE%$$xzz]l :رct?/X ܪ'kNӭ^$8.&1.1٧.g+d,CLv-}NɝK.ׯEQK.2dHAAAEEɓgΜ,}SVV3fLAAAee%KK{zzܸq#66[HHѣGݻ/xzz TN{IIĒ핕W8p }cǎyyyEEE;vd [BBˆ#JKKKJJ:gf#FFEE%%%q6lX~~;w9[ ޻wk׮I$>ւwΜ9F#G%39uMF#%'f;9-;ׯ_(*(((33PRRΜmBnݢoWVVjv``oܸ!g Lcspp0 & 39۷pݞ=to?/(eΦo_zϏiojWrfxn_^nڵkC[abk痓CΖ;[Yp89..QHɉN?}Nlhh~SSS)Rmڴ!T*vgζ2믣F ?/,}wȑ_|';U׳b3s8)))=XPP!cMf+42I pQHɉN?}N̝7ntҝ)RUUU[n;OgϞw644ܻwOp bw }swǎ/"?fɜwZ.))L+v}n ͽg۶m۰aÔ)SC[}Lk___ ;-M) g;S#wsZf(j[n]bETTTvvv}}}fffLL nnnYYYL%KTVV39~˗/8p@؎;~w555ƍ\ӧ;utڜɓ'3>>>G=z_%֮۫]۳gO>I&O:?~{/**wazKKKsrb ,6lXAAݻwgϞM7r?8za0 CxxxFFDHbK|[jjj.]jupp͛Ŗ?9::>kT={%222ܹsE1U?~<,,CٮZPɓ ]]WWn:ygKw8vs='c]YY+8;;{{{\Rc,Gl(]$Yl\bcJbg3 ȝ`[d(RF*オYYY#FmIm`X;f7{;w$&&FGG[;Nh2 HLLvͮ{={ڵҥKX^f)%\w<ȝkLDSKb4+_̳E~%3ٳ穧"ABBX0 1+]VgĶJ۽;.պ6mF;;(6&ɝ7ق `5C:::vO?U*ժUt:V:ujmm-n4}]'i&LPYYIϙ3?d!=ǵiӆ+=Tmm)SZϚ5kw]///7ux؛TҿO+kjj\]]]]]O^SS^d~ztttڶm;|p^VRmٲsΎ}iV09?%@ux_v29qŋ߿ɓΝcO|zzziiܹsŋgffǧ4P .,++˻tѣGe=ڿ///Vkzz`@l ,(..ξvZ^^{\f q5*>>^{,!!Ap䴴SNGGGƚD:J lb})qX Bb bKjXVl=5s[l(???Ԃa PWWGQԌ3kVҌ*oD('r6q+hJL G㷋-ӂ™ a3|}NK<,Ū3 rؤ`JNG^z]vݻ3?eΟZ:%*tʏ|r s LQ r]Y,IDAT g*r'%}Ͷo߾eee[n}יׯ7rss_ԩS^^`0E5440ҷP6 /11>;pmZ:ݮʉar@cΜ9.!I5J$&<%ag3&&ʕ+uuu oZ||/L7kqqq999&L'M4k֬x9 5a„z(1`x?V;wjqb$$$0p\C:&䫮vtttvv˛>}I#7fnnna+EoI,A:`GMlņ ׬77%Soq&Jܜ:)XQNE f L]tIʝULOOP7nx['Oue3|v~'( gjA vf `N wBKKv`O;̃ `NMwQ<|Zz^"wIENDB`libbonobo-2.32.1/doc/api/figures/stream.dia0000664000076400007640000007414511430735223015446 00000000000000 #A4##Unknown######Stream######getInfo####StorageInfo####mask##StorageInfoFields######setInfo########info##StorageInfo######mask##StorageInfoFields######read########count##long######buffer##iobuf######write########buffer##iobuf######seek####long####offset##long######whence##SeekType######truncate########length##long######commit########revert########Returns a StorageInfo structure which contains the name, content_type and size info.##Used to read and write bytes to a storage. The Streams are equivalent to files.######@count: number of bytes to read. @buffer: the buffer where the data is returned.##Sets the read/write pointer to @offset (relative to @whence)##@buffer: a buffer to write. writes the buffer to this stream.##@length: new size of the stream## Discards any changes since the last commit.## Commits any pending changes to the Storage# libbonobo-2.32.1/doc/api/figures/persist-storage.png0000664000076400007640000005426011430735223017331 00000000000000PNG  IHDRhxsBITO pHYs IDATx{\? Efeiks"5oiYyKyW"vH+ KJ*/xD7T;ò|>gV1 C,MRY;'9X;BQ[;gvy9/X "`RI (&%"`RI (&%Ьnܸz^g㏦k6$G}R> 0)fOӧ0 TUU;ƍvhܹskв`R͊NJKV;sLBHNNN5J'@cR`@:~8!$::]!Z]j4O>r=JhOj!K/5kxR̙3uuuG}{Ϟ=111!~cL "^)yуO^}^)۷.\ 0)Co(yW?ݻݳgOZȑ#ZOgΜ!NJynݺu޼y=zj&L8p }˞/$ʓ?'%M6 h>JxuK.K'%  >|ҥ'B:DP"]J `R͇^)$&&Bf͚u֭ӧO'''6K'%l^z}G))){ !?<-򄐛7oBnݺeN\*7@ao޼YXXرcGѭ.]f͚ .888t驧8qbHH!ã֭[>>>|mmmFFFzzC.]TYYٺuCoժ!$00G֭e˖}'ׯ_'DDD8qBN0)&aǟv57"`RI (&%"3Y9ph͕afҤII&5g`;'h4555jڱplɓkjj!555'Ov8`>\)F/b MÕa2׮]paR6lՄӧL>]UeSBN%6 Ue777B.4LJ&.PX`0)ĻLBb Mäle Kl&%`{D/PX`0)#qI $.(LJ{[I ؒz/PX`@.6!͛WF:xʕ4͠ R \)P[[k>-11Q@YYkSF+%`/_ܱcBkÍ"`RI (&%"`RI (&%"`RI (&%"`RI (&%ST`T X;`kG-|J (ؿ'%%Y; hV$;l|w+%"`RI (&%"`RI (&%"`RI (&%"`RI (&%"`RI (&%"(JvVg@Z(\)'O&$$ܼyځPR&1 c̙3׭[G%^`*{2ջHӱPm۶;!6lx]\\[jձcǞ={Wc=⮯OLL??L_ڵKVʕ+o!dڵ͗-[v̙:G%ϕEEE6lݻ9bIe/}-hBCCׯ_oF+Qo5aCb5۷o۷ 4p;w*C*i'X;f;t0bĈFXʜ9s233ʾ Bɓyu9͌1}-ȑ#ݻw'|te޽ !Ǐ/ !aaaO8SVBvH$LL.K/g8Yo=q^vmEEEAAѣlQ/fa1!ђ۷owsskPxf4o['N?~ ٮz-|v0 OW;+WJl%ajkk !~~~:/^0h//\@ T*GGGѪ0>['}`{왚pvvL;pemm-=zu߾z0 bKe/sRNxzzl)Sh4a|||azn Ä-^xx[n_-җ:.99\]]򗿰 cuP!dҤIt:G}ľkjjӦMDT='O-Z$aM6j_۷A^]]c^kkksrrBCCJѽT_ta?[6cH9ҭ[7ԞC3x'U%vF/^Ii߾VJwڵkz@@6Q*T/E#'(KbCݻ'ڂ#Fps KY:Te/}']ӥK;w:t(00-vښ[JJ dc]0'Lƽ ٺu֭[Hnɓ'۴iCCCC333333J1s;(!d˖-Gutt [4Ν;.S8zpd÷n? w(/_N ٓWh4[n DFFXa*]FEE}½Ƙ޳r?m ֎gжmYDT||}Zfw7h(-&\ߥK ߝ2555iiiZkѣG_p7{ @HH~@rt!77])zhhἷ$K 0wd233322;Nd\\ܻp&%=%{]-kTX[oe4'NhƐFEE-[^ncb!i'X;fIIIwyfMM͝;w>cB{I[t+;իW/Bn4ϑ0)g0̡C V۶m;jԨ={Hl{Ç:::=Z{Ab ì\~':ՐD  b ƫW^nb⮟:u^簾갰0.nt_____ߌ aǏtorFb, /B cƌquuyoI pANa˧;V kB5O[oJ.5*,s֭kڄbF`0DEEOecRM;1;6lXddFqppׯ{LuPSW^}\]]uF2_rѷZӀՒe˖ٳg={ڢ#4CCTSSg  TPPSZZiv ;K ^@B>hT*/k\zG۶mS5k,kGf{Il^-J @J]RyPLJQ'#IZQf[O=ȚS@i0)P=t:t`pOIb{J?-i݊2"J~d]]Ν;_z饒 a)TN1)KYJ`)Sŋӗ;wl߾׏?(5'OvqqYbo}[P1Z_c!?_W ZR+V/NJT(?oׄp[aT\_~Ν;BjjjrrrMJwJ(^:Xghޓ1o7>FYx%2GR]2/݉tZ%yhE0EE: 79ΑTzFzxMHw,8Q2TiO >@ MZD I" /a0ɋ'8:޴8zhzFzxMHw,8Q2M``_@3S=HXXؖ-[jjj臷njLs@&000''glc߿mǎm?]v24񻻻=z_~1Մp[aT\.޾}?twwEBn޼ijQSe$ׄDq-gEDy/`ނ̴2nKV+/L"LBk&&*RRN4i&#A=(1J&?`-`Y*܋l+L%oR4LJ!XntEZ.Aeّ8LYC|6*X@sD//y dZSK(@=z{YtMIXT4(*AF X'O N^zǫ@LU(Fe:shysY82SˋT;J` ¿VZlHt{D (ı_TVVk$a˨bjCќ8l:yI^D,gLV($] gxT  FbC(I`Ig0+&Nf!q>U5rpkͨbjCќ8l:yI^Dg`*BL4t 9Ij #]37Z&%M g@e˖UUUkBBBߣl8gVv]t!77Wtܫ I X[NX3/+%0555iii v\Р!#G222̍VwD;%grqGIzpc+ UJDr`RФDHO CTTmF^n9UaD%y][NXhJ9@{!íP"(5hH GN%ט7J҃\]]]G^Yi|LJr߀;HAKiZ8lٲegϞHm}Фy[*_Y0)$ R-jZTgSI 4jMhuԠ{|}} C8(ÍM Ѡ-c%Ih^^ / KfSI^y[$e<ff%ߋ B⏼e˖BO~ybéSXTT]O8I-[t166رn߾Mںu+!dƌgΜ1yFFF@@@~޽KyGVZժUÇ_tI"fiRФpjSZm4quu&b_lYiiJUXYº:z%]MT* xwwwDzsZ&H还y0)hRxN 4LPPPNN!$00TO?477W^y䑯ꭷb͋V~"WXzs*,,O?}g}V-**j۶mfӄ%qlHYHX.\Q@>M`̀ BW XhR (&%`Kw'äPLJ@0 Oa+%R"#E9}3RSSnjcp E`vշo_|f+43`R`vY;I pO Z|yxx ˭ `R`JKK˓׭[WWWg_ذ};"9rA!,R`RSS:v 4\)555W^ v ?R`\)jZ8#p LJFFFfeeY;Y0)Onjժӧy:uUXX{zzQQQI j΅ &Oe7-­[|}}E _ʕ+>aR`|}B͚5CիW !XAAA&555<<|VoZٳgoܸawwbGGGke' p LKK۷o_Ϟ=Ǐ Xп0"""rrrt֎~J plɓ'n޼i@pF|rh`eR5k֬k޼yK;3 &jkGdcp0pqqy"""pk...SL_?LJ`^ t钛e˖3g 2dڵ &%`c0/i6C=qҥK###npaRjMlXaR6 f&ۿ{ I *Kz#F˳v8`'0)y888̜9O<Ę1c\baR pttLLLp|6loaR6kiժG}tّ#G.[]f,X`}}|ݺu7ol۶kך96̀+%`3ӷo_ ƍ#Y;R UUUG|[+%`WpFT IDAT(_N8q޼y֎P0뉉˖- MNNvPtRv3y4!{3/­-ZjidRlJIUU~/zxx 0`ܹ;w6UU3wbcZoe6d^<­|}}9Ҿ}V%EWJl*\6vyyy6l(++ϏKHHطoCYn߾t3i66)YdI6mlҽ{wFӺuI&[ߦ,XL. hF}QԩSZ-ݖ  8p 44ޣ59s&..NՆ !}ϺuDk`5s -k=//m9 ===7n8gOOOoobG"N:?~a#F 43NNNKJJJee%[mdddrrrYYYrrrTT}7%%-S[[sΠ a"""Zf͚pSsWXa4|}}kV *m=22rժUȮvAt貳5 ]ޱcsoңZkF¥āCa''CB&L0tPZ ---..kΜ9ßjh42 S^^V;88?pttdzj5;eD.rK`ȥ-#=)a AQ&%`[pVR@H:;wa_~y:k׮+//3 :aV{5^?0+Wdg7tF1==gs7țȩ#nH])ASˢ0)ۂ BbM6-11m}||.\0z=-///""BVGFF>|yn޼yIIIt Ü?>!!Aӱ (4`E6ċ_X@CBBz3dNJ;I 1Ul'{'f̘Ѻu묬M6}wM̃VXF-!yc'`[pVᲱ_xxxŹ/^kT*N[z5gӆnҚ9KnذwqqqttlժUǎ{i^-])+%;򵵵G]z5t5ի'L'L0A]t)''gڵyyyfv&%`W0)W‘?~xtttpppAA ,44EVb`ಱo.]B\®ٻwt:]llMط%ӦMstt$ju֣Fڻw/<].&,UBȘ1cvq=a[BoO:;;;;;gggKOIKKotsVUU[mذ!$$Dvuݺu$ jZ(_S<88E8`r׮]jO>W\)--}7!k׮nlٲ3gѕ>(!,**ڰaC޽I աC#FHw_upp۷oQQ믿J0̜9s233ʾ Bɓ[ O>dQQѵk⸍J4'U8C`6LJwkjj9ҽ{wBȗ_~IWݛB0Lqq1!$,,'u҇ ܹ1/lNcx'ʕ+%ի!СC%\||D<Ǵ¼L Z[XXX>}fΜٮ];(F$?ݻ۷gln\QQQYYDtzvJ4?pǎׯ_ݤ%VVVr$=\МpVyզC)60P>xppZK#Lw FǞccc% am۶B4Vtf zV !IIIweOp+y9 w *\c=Foƍ%%%6l ?~bG (í.Cb{yxx/y:u\]]}ҥSB>k C/ٳZѣGO0ť[nUUU7o~׬|}v~ WJHgݺu3gi\^Yf9;;B CttF>z(!DR*SJdYѣGcbbjJeւ |}}r^^^hh{':}MdddHW"0RfϞm۶~M8i|:%-BȊ+FcVV/0k֬ mjժHa"##ʒD+-So=sGyDB2rih%Gꫪ*Z@Wsssog셏+++W^-٥K#U͚5o)++KOOgFN%^o~#GyFU\\>K+V0'ܵke4[uu9s:t^|}˺q>۶mVɺs"Qҁϟ?鄕B}]^rAa"""juddÇE+-So=SXXoF388>ޠc8KKKzayā5_<==_{/\3rs׌7/˕n]]']~7V\Iٻ\;wl0!-]tĉԞ={+WnT_oJKKs]hѢ{SSS[y=;v_MgΜ0ΝKWVTTp7O>|[||ήzK.ȇ<.y7)or…0nW^y.߾}uW^9r}wÆ eee]:ӧOs(((8p ]>rH%~5kΙ3ӓ}$ q- !/^M _G7m4x_|wޅuuuW%{Akkkw^ӱcxSa(S=~:௩ͥ7nܨ`ݻqBZQnܸ8SSSnj#64&%((((++k&5!!!iiiUUU~{LROse'm۶MOOwEr߾}[֙3g?D/(( W^y̙3Fq׮]ߥ67գ:lڴν{:wLڵ?Oxʕ=wԩ[nqĉkHV3##ãW^ fj/Ɗ-\P4E'9##,~ܿk׮[?_fڴiNNN...yvjccc0˽y^zeggӒ?Y] ><++m~{zz޸q.ԈZjU۶mu:]BB¹s'Ntrr"/5D͛ڵk7cƌ111&$$C8w?0agyyy׮]M-|, [,Dy9i}}}9Ҿ}{Mˌyq>_xcsΥI7ds,6ܹ3t}i4O?t閭_G._ ޹sgٲeovmҤI+d R⇙'%t7{RRYY㓔Q\\?~}|||S>)!~tv۽{'O8ر#""A8`R$rKJJ1ܮ]t޻O~'4MXX{2e ÇjuTTԑ#G4 zxxxyy kc+\xڵk#7oK/{׎;K opٿHHY ̙3y55PgϞmӦ Mc4۴is9yt2r4QO?)b=?X;l%N?8p)q !a^\^nZi% !)))555d2lFCw'Zw9 ;utqaF1h ZhtrrѲ}NDD?UV&7C._ae˖ l4F%R Khޅ8}e¥āyqٷIkJfTWWH'&ZL"FC(t!BHQQф ZoEe"GGG^FeZ܀vqSG6jXBS, g.%=d0SZ-+Nm4w7wccc4M?%ƕ+W0I ]a1H:t@ /0@uu޼y¢ݗV88lySB+%0L\\ܓO>ٻwon###ْ-8p)q !ZM-:+LZ}W"0cbR"'pdڴiu_:Z߿?88yԩ4X2-K0[l!lݺwaaa`NJ+V⌦(v;6l@#l.K^v,#)SHYEQ8CwܹI.]TQQO?9I[bcc)رc]t1uςwԭ?}Zg),,dRT-JqqE{FLOO/ZV;Hڴi3tЛ7ofddyDWH4$IR^/1 >ā)dR7ߔ2 s[uuut^TV^=p@rsΥS:wl0!-]tĉԞ={+WnZ;q.Z7n_|A+++iHy;v,5&11q̙dyÇz)⻃5koΞ=_WWw`3Bu_:#Gr/H0&_7xcʕt9==޻*hI{\vM޺uaMd*NaǓ#l0t"# I'2!dk֬3gիWGE?}… ʭ[.Z֦]\\°0aO~QPP0p@|ȑݻKt']yرnݺqeff+tۭ[ 2>2͝;w2.߹s'::ZD.]lܸ֭[G.+$NQq\zRTG7 THz(|S m߾\VVFY/Z$W^!EEEm۶5=dG{yΝ}ILԞLygk0>3Bȋ/ػwºիWbaaaϟ#""qƍlwޥkkkyN:ޯway\'u1g򯑢;IDATMLn 4ׯwMMMnn.7MSZQnܸ8-;Dd?;9B  3TS ŋpj-MoP ^``w޶m[~Ldjh!^NMM3f`C,uł=$`dkkk~+Vt֍a^Ჲ;->օaK_|y.\;vɽͥ˃E;"'jyHvyݺu^Cnmذtʔ)NNN)Sdddׯ=zʌe!gLL8p/0LBB]0*hǃ(NwE:F믿vtt/ZR8C ,**:{lppp~~L0$S=2FJh곖mQ@Xs HS•ܗVj۶NKHHO]|;ӫWlZh4TÇcbb4MHH{0Çb_.Y<==oܸA}}}%~C!8q!~1 k׮`Vh6D͛ڵk7c 6ns~~~&Lܻwou6  `jHyLu jڴiNNN...lPj觟~sww5kwU4xђ]4iPP͛ǃJ C2#ѽ\^^޵kWv$ZņS4?+&OII9z˛iKYp;wQz߿ҥK;|nݺM4ޒV<(&% GC޽ĉ'NxwaDJ`pV+))퉊rww;vUIo+q6J970HYdIVVkkkٕ_+%\H޽c4M^<{lkGv&%am۶!C?8::>:7 e᳘R[;sζ?ݺuRYYɛܗ8q4LJJMM6m]nݺaÞyВh***8п .L4駟hgϞǰ@KoΝ;GٳgSO=ekG6%t޽TTw޵nH`+p,G?S4hۀI 4srrmۖ~k0bbbT*I 4w}_ݻIKK{WS gϞ]v<8&&A5vg@a^Y3g[͛@sBUsqqy"""NJrrŋi2{>(Ԥyyy6l(++ϏKHHطo_'azep[; ,YM6[l޽FiݺI֭[o ,^` CttF>z(}kԩZnKKdddB8{Μ9jsss?>#u։VjYl[PYmڴ)**ڱcJڱcGQQhhUGQ\oEGFsεm۶RQQѶmϛ/QK ^Hw%ݳC11Bf͚gE^zxTbj|͍өSǏ3 3bĈAbFɉpqqIII]`&22299,999**RSSÖݹsgPP0?WZE뉍]fMeeefffxxhF !+V0YYYҕX+xUt^gyfϞ=<ٳ}ݻw'$$nBZl#jwС˗/gfٲe/Zv C+Qh53!dժUɑ- +-So=a{'{M_Jۨv0$uZx3!^>xL5a%BK,NjR2mڴz7Yp!0ӧOZyasy=<
Un=lUb"uG3S'O݊<|eEz!lj5;mQ-8ԗX4mCkK ^YI,qpr_֛[1N3H}54KhVnBTV)aaҥ 1yZ;믿ҕNNNeeet4_4k让wJ%gf7la^^+P:%LͲHfI XԤY[z3Ċ( #.UXOdd$[T02ZddOJ޽;wIHH3g߿8P6!d#]# 2;nSgwxm [15lh0bR4cR0W_}5i$a.]4h ^|eL5!Vzk\Smt3;DLevJ8[@ ## zs 7&%`q  e̷e߉U}&%x{Bp:y䑩SZ; q*Jӭ^ދ B`0cvaRI (&%h ZyeL%KD.|YJsd%O92aRI,Iuty5 SŠf%ѕnHXKck^ﵦNP &Y񙲶<(qn.2fќ !)))555 ;DCzxM7E[g"3r>7~5ub;SX&%r>䧺m\ʼEsҒ줤ѕhHXi޶OcvߌύkMI\f.2[0%OvvvEEŗ_~)lKxTCzxM7E[҈Ϣm5hl:A,NuK4E.e^”)))nnn .ˣ+ѐh=ܦ"rr>7~5ub;SXrC r7Prb+%`\)Õq̧8PP9$4%ԐAD Ak FC94VCT-*D!^] {^M{~;>;<_h ؔ@KZ7mJLgmT2S\Kohx:R۔vEsXT*AfBP\Vu_~+_EXj00`4t3 U处񱻻 J4}zzd2 dY. |x_!b5:yyyvݝx _0! $Z4SwL$T*a~ BN|ċ%$ITi TOM e0NNNlz$|UK*?GZBH\flYezqk"JVmՠ`߿Iؘ]RI1q-3@YXXFąd&Kn߷~M 4\M !R\]]T>|j*?pdY9JRm5NGլڪADt:z%WaɅI1q-3c0"!h4t@ aٱ/VKJcM 4Mb驒K$st.rSSSl_[k:+K`Z֢U+B^Q%[qTRi/!)WwZ2???11a2#d2[z4X6_|RaS WeSBvT%Js$ B,j R}Yj+Y#ײ]ZI>r||*&ߪlJ6&W,L=3+++KKK|JKP 8d2vf?h}t_edd󭮮4bT:<<[J} t_f% NzVk,i^6ɴC 睔@+I 4;)6%)M D@EWh @K ^IENDB`libbonobo-2.32.1/doc/api/figures/running-context.dia0000664000076400007640000005661611430735223017320 00000000000000 #A4##RunningContext######addObject########obj##Object######removeObject########obj##Object######addKey########key##string######removeKey########key##string######atExitUnref########obj##Object######Unknown##########RunningContext: a live object tracker This interface is aggregated with an EventSource that fires 'bonobo:last_unref' when all objects are released##@object: a newly created object Adds an object to be tracked.##@object: an object about to be destroyed Removes an object from tracking.##@key: a unique key Adds a stringified reference to be tracked.##@key: a unique key Removes a stringified reference from tracking##Unrefs (Bonobo::Unknown::unref) obj when the "last-unref" event is fired. Of course, obj must be based on Bonobo::Unknown. It also ignores obj, in case it has already been registered with the running context.# libbonobo-2.32.1/doc/api/figures/persist-stream.png0000664000076400007640000006705711430735223017170 00000000000000PNG  IHDR$sBITO pHYs IDATx{\? r\ #=ys*oIff_Ļcɲ4PH+/( xM E /MHL vYߙ3 |ޟ~a F&Y;0L???k`iN,իeeed8г;8Bo^VVs< @k4C4nnn@3@34C4/@3@474G@@344_@3@4rkrĉ%K>ϗ]z{Ŗ D B GrǏKYj;`; ^e!};0y@sK5_\jR٪0< A5d |ECmJ m aF&H5J>྾۷ob=& ʍoάӜDM]9 ~3f8+Y)~lq2i&РVnӸ3!~3f_fijzŊ!{hҥ_d2tL& YYY^^^| [>..[Z޸q#}׽{wggg*a0D+ZRX_]tL_WTTBz}pppff&]cdnnn7n6mZ1ԣ6mڔݻtd߾}yyyt[G/‰'-X ***''gȑ0+00v0((PaZty;a1魸GfG9 ЯpMw۷+22\tsmqvvgw ٚ^Ʉwww߯UUUU -)\TVWWt:] 0999Gt34JcŽ!o0E{xKΝ;O4)!!Az_SX!\.7T.H vYފ{4J`vā ×Y`~ꫯǎ3r[RYRRBۧT7PXfMvv3g_w? [F*#;t萡;v옙ߋ6ձcGBHϞ=cѢm=ѣ|0egg;wݜ%O:uvPty;ޠa玡ho݊=9j=߲ <Mgw$!D7.ũjAAAHD۝>}J׿Ů͍dJ4h,YRf͚e򴴴-ZꫢM|( ܹs;uT*ccc !OLHH _-[F7n0yyyݻgeei4ɔ)S!~N8pQ222Ʉ1cư-JS nhך2,؏qX>>>wi\h\wx>|8<<\P Cd&|I"Ee-&v:hүa uO?MLLlJ$\GÚa « ;SyfttKnn.0# 8DBK򪨨VKzǏ #uY?$mP׌Ըm^i_oom۶iI&Y&>}\~ݴuZw$[} cu}61pH2ˠ:WWW=3<} zO>BQN:B!/=zByf^>{qB,-b wxEK0$9/o۴&by{{/yyy[NMMJ:wfSW\aog'Qޘq}uŋ툡 bݩ7uoĈ tR36˘E5bkd,.ԛ+͘2ށmXC+x|& !/ya~%jΜ95k?|0!!G@Oݾ}ɭS<0>,!믿nP׌$-|9b(˒t!b8ME5&11peݼysƌ۶mIIwa777V[oyTх{>NIf(hwIzSbq s1cQA9͕fxZ\GÚa ͛GYb !ώ3gCϜ9¾= /ܑ.0L@@!D+ Lw eYN0D y&ɘYv.]#D$>O>7>A] z葡P1AL;ƤX)YT(I\oβJ3fEwYP<cpT8+|Сjqƕtk׮mذscbb>܇Ф<&Lx[aBȩS5#91{JzCJ{vR_zc]֤InݺKOOO KOOO/٘x*7nE1cưgbxOKK(DG]ؐB"lјQ9&&f޼ytVxbzz:0wL7/ cP<~M&tk1 #ڪ?ڵRTT]t;w[n"^w޿nnnm۶9s&{ r!yyyFgfݺu-Í욑8ݑN0$07o17n#lcǎ@\~u(#;IX1h4'[A –-[|MPyeh,c5t#]ȕfJ4+CB,B:M rf_r«XZѣv86Lw֙dCMM*t;0KG47;!(CY,٨pWeKS(z^.>pUzpT8cQg^?{lk,ES;47xՃˡvp20ݱ͛7BΝۮ]sk0ݱN\\!$..'x, aOBݛ q/Gi||W+QC3eKڡ-ޘF|$d2Le˖nkdGP*;wlD+e& Kڡ q?` [~\M|Ç,-Hfek?xHʮOd7|SVXB֭[/^L o U[WWGe2Y\\R$,]חm]goo_~%//u֩H7҇_~SO=5uTz;kCꍟh=e2ٳ6n8m4Zj*aSLqww HkwwGX Kt ÊPz,LBȃ7BHYY=#3"K2hr9!d._"-1$zvײeKSBrr{GeeetQuOOO?PaBȶmz=0))) g͛3f̈vww߶m@``<$lzj֭rPPPFFܭ75?7ZCp'۷///ٙ.x{{ cjޘ # 9xǛGԩS:0g}ֻwo7xc $$$L>$bk\Gڼh,//Gx著x-cH)JV0Fqqqa1f9BPP;luaaBHMM ]޾}{^"##˹Zu%a:r[LHHN(JZD=15ayap}dޘ #ppxDq3zhNo>W=xڵkF ]tk>C 7}&%%UUUmذlyc1cưӅ3b¼2ziiiJeqq1]?iҤ[nt/ӓ gk-T3gΰ+E ۢp$j7~nzK,!!!!a<漇H322%;:)}$\7o^xx8{~ :ٮa {j<o|yyyr<222??-o–-[|MaN>$ڐp0L!_~E8ZMݱcG``\.iyn [>}J׿ŮLMMmѢĉɫt$otg-Zꫯ$ Ca$iii-ZxW%^%,}$\KMMBg-4~d$bkB,3/_/]rŊ-,ZȞ8{_.,~!Ư?ô\gggkcG%vM~wNF!Md3CAb-jGG\l=ЭlhnG;fQYY)e˖Ǐjkk' 쎥uΝ;:t(**v,0<]aKFmZM6ͺi7>­lҜUV-Y^mlpv ` x>eip(֭[WXX`h4LwAe/S]v 2.7Ϗd=e¡(//o߾}-40a0Y7aw%/0%77+//{޾E$ mrJǎyݗΖ%I4oA"46U5 9^ HwƭL8&:B:t`@'q. +yw"]7TXk׮ti mrss)5͖%L$I8ǘUP ',yl4s\Gc#LD v Ș|I S/՛%˫kId(mS>} xu%L$7,a.0[{ȚA8D2%fpT2 cǎ=#//СCb4e+:dfffee K*ʒC۷OoBȫ?;vLK.'O5k֬>s c^'?~WXugϞ1zhBHNP_`xӠڄ;ޚy{O8GKC'lф8&kϷ8#LdJEӄs2 3jh2),1:Kۤh&NhLx0x)韄Rb G Ff2T3wOIl.ǟ9l4spT_9}wLE:ϔc);pWezL9GR8X ;`}_IIp288Lww\ռj*RaĉZ(LwD/I РA0;cdIlF4')ˆtaJI: oȔFH$fϞqiӦUVIw Z9 uCzi6//ot&ނ) Mo߾Q6\x?~,m0 RxS;vHJJtYYY4w 7--,ZyMM /Wtׯ_O>ݠ}`Z 8*|!aw͊D&a&S54Y̘\L:BC]>qĤIDK@a1eʔ~JYl/{nSs΍9rF&ќY?ߦ9yΘ1#00BbuۜKGuɓuNY_fC«t;088-Cxhw8gw {t;׻woRyuk`ߓ'OjjjZ0 LwOVBt:0 LwNwpv;8wT*tDZ333p+9 ر;w:tPTTdXi4\T* ;𹺺Z;0  wݶmիWcccg\^SSkjj ի[no߾ݻ+VZ͚5klإK]3もRr--ٮ]tpժUwNMM%stg޽sٻw/tgʕ-[پ}h6(777**JPDEE Kϟ rss[`w[^[t%x𞕨-+aw}nbgŋdDdSO=EyKxy?~ah1FB t:*n)))za={&''tLmmmVVVNh7j4G* |1???a`:cǎ>|۵kZnU x=HLLLLL3T͈?*117ѫ , :z:%c%cvt:lsXeG)--5_`I< aBHIIɌ3ƌC xyy3욚,Fn2aĀR; IDAT'''v !NVˢ5j…#GdfĈ .6mͅH,5 0UUUr\XLX@MnN]`IqP̟;ܱ;Φо,<G֭!FzU*СCvE +gΜ?CBR,))a7g?Mu떒RUU0L]]!wݺukee#F]'+Q';VРg7;$$$ru5$[onl2aΝKg̟yfllJbJHHhٲ%Mim޽{r-anݺJ:n. @:<Gϟ.\ha7ϝ;Vy1{AY:?aW (l]K,Ytŋ ew0[v/xh4WWW3U'þ}ƾ;Z:|={S;vx> se˖;111+V5j01h88LwaIl^`"|MLuVk9.qz1fΈnO|ٳ}GqFSq1izysiڢ*f>; wUn>l6#!4!PJ29\; ރӝ@:#:7?Fb&00ƍ2wuuu :<1bSBuF41e򢣣r2jǥ G# 2%vј&c9KC zYe`5$SoFtƍꫯ9yQl:ICBnݺշoߺnݺ,:H|FFF_:. [hJvM.lo(ٻ|gDǙMtXm; L6l@yX;Oѹ޸qGuuu鳼)u$F=w̟ܿg9Ɨ%i*Mtbp^)%ʋFGX4{_]:Y!qfӳ73gd棏>v `vfDӧϞ={n߾=h ͞FKܹs׭['/ct?M N=.Q^teGތa?d؅ ̝rfO;r ;Oѹ)++ٵk[yju``s2 $> ZhOH\:ty0K4 _]:Ya0tXm;Ifͺ}Vo'L Qɓ'۷o~׀74s|w͈SQQNq%\]]c F1𕖹9hψ.֧ .UD$%%ѳ;{U*WffŊJr֭ۂtXeoB b򚛢hpvBYlٔooowwe˖ILwk׮I޽P(߿0Lqq%*E `TCdl9h S`\MxbDD k;GPGӢE(:ݩe L^3?ع`pp;?)}/)3@XVcs>}9;;?S:tݻwrʲ2kG`9CO<&L@oi A߼yɓǍ믿j .,XA}w񁁁t dY󣢢:w\XXh6j& *,,tss3~+}kO<~|;f{_fB޽ˮ9uСCU*UϞ=í]&tzٙRTT+VZM8ԩStY|4TR"~b{!'O>vÇK|ˋPS4J Yho?]\\"""8߶m[R3\txи8k` }]seBHΝl\>hРw>~xڴim۶q7_~}AAA]]]3B߯JJJv9p@asD3eL[5g_d ۾}gffJwG4z_k׮%̞=W =zΓƏ>j^h-))qww'9rĴ58LwzŋwNٴi]9p@BH~~>}XQQA n~nržՊ6'Q1&.$,]_ŦgG<0 `PIII[Fh oi???^?30>u-,ɜEQ{9rD.358 quuݻ;Frѣ[[n̙s=nz1ĥ)\o:x3,Fs+VxzzB$PSSNm׮Q2P%G#"s `fiÇ%j,,,?~nϞ=%,*YtP~{:r!DPHl%ZtOYd0 CuJ?zoİ/"\~HnhGܹT*% ltG:~o(LwlBᠠ DR$hZ~tǬ009z7˗/W*ͻ|^w^jj$66lXzzzEEZ{b>>>FGc>22rҥ'Njkk>2o<)z MZm~~>^ IϘrrrƎ-۴i3q'NHl~^zҤI1Hc&))~s6ᕔCa|_5kGa,Fbcc}||v^QQ7~W {R-[ַo_5P(JL&ڵkN9|PPۂ hKblUtrʕ-[پ};! &&FT9sBa=xx Mjh\DGwuuu :<[h\.}^lo\\5hVZ{xOOOooTnWnݺ}wP(Zj5k֬۷ϙ3ޝ @tLx!S5ڬN:2qUUUbb"-%%EIOٸqF9|/0={LNNt!!! y kl(6ў jtBq`+V~zBRRRzviGU(tرc܌ <4a F+h4...N`hLx̘b\aq7UmF6v|o⭑a*\0Lbbb@@喡5xyy9,87Bn=xtV:6aOE]OD.WUU !F]nؼ. Euu50...9993f3)xeƄtf|] ;2Nxx'|hJuQFsZ>""-í!77WRqkS*¶jp?y >sQVi&؄=FwAX?!];ëwvw#ݮpag۷o a=s*k׮ މnUw!5;ցb[RR}A>br<""… $$$xxxlrɒ%̹sj;~zB|||-[ƭܹj'͛7cccU*0B^zpMIIvww_ltlž2b~Bȼyju``s$*͍Cx1FIhM}뭷^u0­J.tGu0+f 12enjo> UXXck=|o߾NV>gϞ]vY;&mٳgwءR֮]kXĺtg(e˖T111+V5j2 ݱ4!\pgϞt˛6mڸq#s m:TSS߾}{#G޹sb5e-mmŋ۶mG5&GgZjt\Ç?rHCںuknnn}}taaaQQQ#jhb}vVuot\ݻwm~]v|^G̴?C,< رcĉgΜyg\\\OLOO_-v9Bȫzv{ڵkgVԧO>});;ڵk/ƍO)uy…eeeP- 0ѣGO'OtԩS ߿yUUUiii۷7)ћ>}իyM{)ںSSLOLǏj1gtdžutg„ 5oڵkNS(g<==iӒZnMCCCsss![n̙;vݛ.߽{AT˖-nca}ѢEtYQrr~]]͛7;w̖O?K/d[8*QMja K,afÆ cWN:.WWW%:0zz.cP8E[7~sC{nnnXX-.sOw-\ӌnݺ-/VZݻwo„ >>>NNNNNN^^^~رtNW'O?qD(,,:t(]xb%Kѕ.]֭Xaa /}˗^j777Ŀ/_ׯL&x"'GXXݻI&ѓ[VJTSZTTT~~'OV\IFpˆ#rIIIvD;V;w{ m !EEEա{VV֠AX;<|?3ojr}???gϞ~ܸq,**ۼystt4}-yQ:ZzMk׮q?WIs%jȑNٕ.]}r^y]ZZʽ;x"]vR9qR)C-[n[lݻ7]AOs ;e:V[)<$)ںB?Λ;vx`===e˖s֊+V^=ac Q=jv,< ׼[...nnnuuutMvvvΝJeϞ=O>0̆ ~~=zo<<<}]///z20/Ç&xw ===KKK鲯hܻwa&Lҵk׬,C=a cbbJ!C~RxI/Su7g4UUU]v| !DRd~`$qlfa7ݬ<֭2wCUUUl[-"4V}?٭[Yf[=km۶;|;HCd [6m͙PT}ݻw/wenn.{|-Zi쎥B_zڱ82 ``rt+))iڴi&qqq`ftM6mܸ 0 ;;۴u&>>}...#Gs-DjP[&ŋD}Q#jhb}||dFX4Ï9b03={ի]]]Е+WM e&s̹}ٳg+**^xBT&agϞ}ӧO5&ۜl7rݻ䘤*h0ٰ6'\s=z(}Ξ9s/駟Ƞż߿O!Ck׮ 4%22իt'y , 욊 ww͛7HtG'7'!?uhbŊ;vtrrj۶8,--UTƍsqq\z| IDAT>|̙3j+b(zѣGCQ5qEСCaa!-bw}o5)Q999m۶ u̙gy%88ɓSm0Lrr2wxMRih((- ^WfӝN:ڵK޽{ ,Z觟~>qD@@-֧OɓN::ua{knϞ=Z6))O>ofaHGjZbLw+KN˖-nca}ѢEtY* + iݺu3gdرwtݻ7D\| vEO frr~]]͛7;w̖O?K/d[8*QMja K,afÆ cWN:.WWW%:|^oڵkN ^hoNfﹹaaa¶00\ӌ^ !ɾ񞞞ݛ0a-r'O\rٲet/_NkSnnnt}QQMO?qD(,,:t(]f}‹tRnݸ _x'?8EYXXؿB˗'.^Ƚſaaaw&M4~xvՔ.\1b].))i׮hJxw6Q9+##_JaC m !EEEա{VV֠AX;;-BFyԩ?2nܸm޼9:: y-[CWjZU0] uʄr…={Jt'u%'7N0Nn޺u.^H#`R8qbiiMEՔ߭[-[DDDݛ6lh RWWjy+߿GK/Su7'?~7/1Iw1ydCCfNsWWW/h4찰0BիW{%ɾE^zj\BH׮]?SFsoӦMyył.] %>E~^-\XX(Xfaa!; ncwAV[ZZ:sLnH+FjPSN+W\t)]s޽ҝ;wVVV;wnڵ픡8 [^xq֭te```ZZZuuuzz5k}qn愐Ǐ<ش}OOOoٲe~$Tߊ,<|mڴQT7n`fÆ ^^^ov~=JKj4L6zh.\V(꥗^:|0~hBBBzOORKo%J'5sLBȡCuJ)MwwwSd_FCwq*??3fԩS>,Φh 0`رý{6l„ ...]v2)c0&&FT2_~+;wT*{yiqnk׮/_68ܜ!29 E5)))yyy6l|ʳ>nݺ(s7TUUh"Bݴ5?u6k֬zK"/`cigɓ'fzW_}Ů>|ӹ_9$K/X3[;*o߾{er`͹gw, gw`gw#7og4~`["##ׯ_s<&/, 'V;o޼O?a>99TKt8p`ڴigϞTKtURR2u✜WWWk`0ݱ4Lw ܻw/ ځ8Lw,  /V:ut>{۶mڵw}gX ;aC ~jkG`7p펥h5k$$$tƍJANNNޙ3g pvpvNt-ZX;鎥a`a2 ܼys֬Y555zRl?a9::z׮]!!!֎ݓd;wxb=>skG`[쎽D`ؚ?c۷o'L:599 pO=Զmv1dk`Cpv {fmQLwG^,ǗKy9h${QZZڱcGN/駞֎pvgw֭ɓ'4vv ͈ݟݑY-bbb\KܹO>nnnO=TzݸN]z566ځ4#v?ݡaFןvP|7ovÇnE ڿGJOIKKOTEUWW[ܹ300PTvu$ -333<<x,NJ'P/_&tܙ>Ζ {ǏMFٶmwѕ< !d:dΝ6'QL4%KpG}Ǐ̔w}4x2モaʵkBfϞMJOO' 08&&ۨpG9QP%K,^apBHxxxiirpvdtG_x{M6ѕ$Ӈ`W\) !YYY 9bNOO0`{JJJت_~0''ҿyjkk !~~~ ϟ?OFB3^tǂIzruuݻ;Dٙymm-=zumΜ9!QL"`a4ٳgWXAo Z&t:PBjDSNm׮Q2LBVmTz#/AhpTԋ;a0ycHlH?>|h|Ǐ^;ֳgOayb0̑#G! Bb+ oë%K zn1Zauu5Btpq pTԋ7a0TW^Es_~eiiGvIot1 C !tQLtt4fX?B,XвeK!k׮ч.]>ۈÕӝ˗+y]|Y߻w/55u 6,==BV$A|||!ȥK8q~?#Bȼy$JHHprr?ZZZ`''EIO޴iVϧ{=_?~ 3%c֘^;[.ifĉ'N/IDݑ(0LRR;vlDDBprr2dȞ={M b߿ZVce({-Zpqq֭=-ڹsgBuVs$˾ ~·Zc&yfHHHHH!ҥK?>h go^VV֦Mb ,7n܅ jjjn߾GYph dhCqss{ !%%% Ns7߬^:??_VGGGϙ3gر {pT^J&40 L_ft n\{H}h(LwBWZեKzZ9((QVVP(N BCCMېUfjT#[| Φ;2>tg};w|rLLLllӧ؈# !wvv>p!$;;{̘1 LΦ;`V^ݺu}u]Pjj֬Y۷o3g-tR___|T* !111J2$$̙3t[Z]vU<==w흚J޽{̙w^ʕ+[l}v mQnnnTTBanܸѦMNնi͛F6jL_D lG,qoCpL*O?t~~>0Ǐ6l-h\\\h776.BHJJ^ggϞ:.###$$-S[[թS'Z~ƍѣ .;vONرÇ====zDvڵ[Ç}}}E0&<^"""+++###x ݘ1c6l0_|E5/Vހ>fxV( øBJJJf̘1fZ ---&&+>>|Ne\&ILL prrbBdE,ۨQ.\8rHaFpiӦ\tx^r\0 SUU%˹x ݙ3gڵkm۞;wF鋡08kM`01&{toܸ0{NRu5!![,77WR1 T*j={LIInR=he73^tO>QT7nd&11QR8pcq{'h46u?I$C($( )YlX@NZijPITmy tO  ɤ!e aX%d.aR% .\8rsq|o줔h{h*璬 @&owcQR!3Jwf`}cֵ]G:vk4s&[㲥_|E(1g޹sgiii}}6>\S}火+۰H$by )DǻÎS~͛7KKKw%RuwӺ ѯ_e˖w0.r}r!1#3mnn6~vz{{!.bE_RhIWPrwx8q;c ۷/ f&vUShb*pMqJGm_o߾]WWnn͖c[dsJE?);*ŲW*ڝ*RQY1c|۶m`0lw4l[Vcm#duRm_:[I%BVABdQj3@U3GҘg) jgf!ĺuo7_6+W_ I*帀˰y;E˃OJxMuu۷rZ\潀rt~$l"C ۝7^~d_f)yο{뭷***BЉ'k׮ k׮Oh0lllBB9sWbhh |D"aVe-OASO|њ|>_mmŋofuum[+m |m۶A’9Sw̔H$,YoX'4Qܶjid5wq[>555Ν訬:yxz .<11qj)e8bcccX,XoذرcSSS~ccÇ/¡C^xᅇJ)#HWWTCGbpرBNӋ/⋿o^zk׮\zuʕR%Kqd[d[H=zXX5SwͭNb=G.j!E66fn___ 0./]VYr׫xv 5;333[~Ąr||[~67R~!G}d"ͯV֠io{UV޽{RX,VWWh"s3gD'|CE K`rn V:zlid<֝x.u5nJWLwygbbȑ#;x͌};߹tw]X}wvœxw' ޻wO_,?~[J`0-,))뛘p jk’)Xcp8ln V:yp<54lud;3͉wvu&׸$foݺe<22ZRRb.OJyŶ6)`$1~v=>>׿9Xl:S>A 2LDW5c5Ԧ;fz'+,1555Ν訬:yοﶀn[:9rUVuww&=sMzdݧG>%ݝ"'yV.|aSs2T,EǓ"qǏ` x"($y wx8q;Oi[f;3IDq I+E-jiiMjt萔_6zʕ+ږПԆJ xaF/@}e*q~ߚਉOw<֖mm@mmWXadHbERПԆ^3g{!D/;Yiݺufq }h1َ}g?>99yر&`]3 B+WLMMTU5Eѧ~^Zjշ-!D{{{ww؅ M/u i !^}Ձ+W竭x'''˗/OѨ7߬6cf\[oUTTB'N!yL yn988v@ vڡ!kԬ/hoo/++khhH$$CCC---~|ʰ~:7@ lٲ[8q׿w۶m[0L.3<11qjyL SVhU3g8bcccX,$9Gbp؜\$tuuivdX3<'H)?4晘Xx1@s!G4K2@ `\_tzhױ\s?P(d\buuu-B|>)@mmWXqM)7<3Ɯ9s&>խgff׫lZQ+ުOLLH)~Za5 !k'58^x.s? 088XRRb& ޻wϬZfuB= 0.91 and DISPLAY set # NOTE: if you edit the dia files, save them UNcompressed! %.png: %.dia $(AM_V_GEN) dia $< -e $@ 2> /dev/null || true EXTRA_DIST = $(diagrams) $(diagrams_png) libbonobo-2.32.1/doc/api/figures/persist.png0000664000076400007640000005145411430735223015671 00000000000000PNG  IHDRksBITO pHYs IDATxyXePv.*.(HZ-jKQkKkBKEVŪXܗVkkm ( DA\ADYdMC $9Mf&CX99$' *::zΝBر#**JQLt@,`vA pQ, &r` a, &r` 0sK.q8ѣGitN,`n߾4hzٴ1J-Z4uԾ}޹sv„ !'''B'Oĭ={ !$HoߎEYer =<

h...`ݺu}WYNMM Bh֭VVVr:a6` #ʵB=?y ޻wzɏ?~w233]]]wOJJB-[#ZNjjj^^^TTgϤRmBWf 1k9*͛7BÇG___Y=Oq͟?!UZZJVָ;ߟ|.3e ={>{ȑ#eee|Xv1=p2_ZZ1j @\x9SSO?gS*iʠA֬Y~iʔ)ׯ_ǗѸuUUUss3y;BK,A_~%33sѢEBӧW^E$?5v1Z~~رctQ8q"B(66D.?{lyyyIIIE@pr6/X!ʥKzhUUKYYY:AާOu,rR/_r CLqF>r̙?D],>rnݺ`9.@駟nݺbjjuDAlذ!sC@ƿXq8SrrrtttUU>M:oΛoY}=|F[aaa]]D"sZܺukF駟ONܸ]X̙3ө3٩}ue#,[!}C|fff ,6k9w;v-[}sssH_3Of٦]rn&a-cP鱭0oglFcrB@f-gÆ ֭5k#G.Z2<<\,W|ջxqHHHϞ='N|4fջV )6#}x`Trp!,Х Š ʧ6l0nܸٳg/\lMéSU6(ecLL̤I*+++**Əl2]شդI****++WX\LXXXuu5ewt|ɓ'WUUUTTS!C rO},5  /^/\2 ]"棏>*))ׯ:t(.;ؘlZf>207Awܬ\3KKKsM]&r2LY3??oWTT899Ք[HJJz bP(PeYo ﻸ0¦} \]])//n]]]{r?N^7"\Xk҅A7QEEER ˡ !򬬬!C\zuܹdʙ8Q2;:0ztk 9,9x͚5k֬RMy,X0o޼BLvΝp\ncckwJRB!ջH$|>¢822e`ͪtR?&&*:::,,LmTVV`K,',Q݄/Yly\GCC +WOBʙk\Q+;vg2Ic EDDY|%\ E0?;V XZZϸ\.'$$xzz:u oܸGd'Nx~~~/^Toٳ>>><{޽ 1S6ҵ2Daeeeee7!OپH$,`@g>stPчK艽{mڴ ?![SFv YÇ/ǝ{ꥱ۷Ftr: d9 8ݵk?B }^i^s w}=|Z/^4iRϞ=SSS)w0:wgxlmmkkku FD{9r ~\]YFd'''zL_vQ%xtԩWVE;b |4H$ӧO{!x)yNKNUZZovjΝ{w; lhpl$>쳖\.WZ].III<!ty???>uAP?yY[[[[[GFFewuٲeBo? ٳĉɿp8yyy@9 sss{E(]'//nTr]+kii3g@ pvv޶mYN9^E=6se#lfnpPV!B/Y-{g֮] E"Qeeʕ+7nD2 !4s̸/^dfffee,G^Çű)DEEEO>ŅSL7N߿?:vڵ;PBA++ \!==vРA sB}ZfMuuuqqqnnnzz:YN9^ƹb6D7X}U֑b3ÇAAAm Ϣw4ylOO|]QQD///'wHJJzJl\\\>|߿Bّ277 X, vjjjr^2Nw Og~!6u*8 4̍%2!1L 0cG裏e #䶶e#vkk+\.511A~ Ծnܸ1ewww|rg1.KmmmU)~zPP@ Y8)~yMMM]]\Qfܝx骱w3^C6D7X6Gc[6YԩS9B?tV 1<憷KJJ(SLWY$/ʵ77人:BР7rt &%%%&&ryx骱c6D7X6G#Hy<^SSޮaHRJ5,@Nhy^Β%K џ| .\`y e2ٝ;w) {T*U(rͳ666 S]] Y/^\ZZZ__ % Ϸ(..l PIg}vСÇg\ aBK,!, OL CD, ;t#߶m[SSSYYق wT1Rff6F...NQ`LgB[l2{lDryBBi@@Sʻ8qח]xQ7nѣYG"DDDXYYYYYEDD0 G*FGG+'&&³gx쳖<))Ã!rUb1zuuAk:Mi!2g@m6N(;!Z[[FGש6K.p8{yy<\.Hf͚EH}5ByDd!eSWyicS|//@/l޼~ڼyK4>A0gϞ],qH$dlHTYYiffrJj_zSlZFY8777==]=lmmmߏJOO6lP(Cg;iii׮] GTWWW\\<"4@<3gΌ{EfffVVlePYYYRRiӦ3fTVV>}tӦM˖-Ӹ 0 pYjt///'yzz튊 ''':MlՕV*EEER =iFc]v-\PׁЊX|yHHd9GEE:ZݻՆ t/Vtx !Xa, &pftLQ@7k9Yf:UYY_'O~Yu;b_ӦMg@wGg+|rPZZZu/HϾ>d9hY($$/dӦM+++u8F'//!O#|>Y{ BSSSwwK|!T__pLMM.]ǎJ~~~C ٲeKCCn) \Pܹsƍ8ȶ,=?n8kkkTXZB(;;!4j(pݺuƍ 7olhhLJJ§R#d2ٕ+Wۆvuo;n46j(Xf>}w%쒉ڨZ_XX`㧊UHsҥ7oV~޽BBPP}Tv|''uuu~46reee;wֺn{WW''""Bc*%o)//ݻ (--uss;uD"ٽ{q唔wyGy]=z̙3}%?x7onjjJII177kwcfڷo_RիA\.b899Ãa?D"3|\uV-,,gï\B9.]3fr ũ#Ĕ儆ݻ)L_ B /_'S}yzz<877e6]v;ST`cc}vʩ 055mYK94h5{MB諯rtt3gNss3YN;y&_s*%~CvDD ?5kpD"155+WT޽_~yyy*]DFF~7x~رaƧO?I;1OO{׮]Gāp& gϞ[ZZpGtc9|pcc#Ao߾999Ok ,b1 $&&~%3O ry9~!S "lʕ9b]O]v>$$$""嶚:uoFT:DEEEO>e|X\\K9|ܾL&kYK94h5{0LNfff^^Ǐ={vZOYxqvvzQw}שG;w.>>ױ­[}I^TJMM 555dBH4x`6){g;Bo߾d^^T*ݴiӆ pavvIvyyؿ#GX[[[>}vzzE *0"_~*g2޽S _(3 .+T>COOO銊 {ԟBb#B,x<)RZ[[өۃTᑔʔb13BoKR ϟII\\\>|߿B9| CS~M2PnrBx*]uԻ "<<< e*%\.uNNNo&Qܿ_*x<n ywXmR~wB$ =zԫW={L<,trrx"NJJ¿Ѝ733# t5F|n߾}t30bĈ˗/~xccŋ0b'OK25d?~MMM999/_}=zhssٳg_{" x~ WڤI$A( ̙3_xqu.?w]vzzz|fqQF1O;cϏ>ĉt3`kkKX0q,1e9}Uj wwzbetYή](Onkeajj*6e[rrr]]BhhhEVV֐!C^:w\cqqq\`إMf/Uf~Ȧ)QYqsscxwY!GehS̙3vvv_|E`` . 455ի]Knff_pIaa#|oMN]FF2dakkK& ?SRowj'`AAA!!!0aBXXـz߳gرc?ʽM;cOWWW^#bժUʅxwSd9F)urr:~xCCCKK˗ɚ6m .((hmm 666tˆ*O}iѵLYYeC.ڵB#NW^=a„(ӧOsNKK˹sȕ$B{{ӧO777HSGѣlUsٲeSL /4Mf/Te*wC79ɓ'WVVrE _ qܦ6ׯ_ݱ菗/_ܺu,mgG!,""blVu|v8rSC1vX@`iiD.c/N7nѣe*O}iѵLYYy!r_{P9iשT*MLLd| ___GMYxYw^,'%%SPhO?#+m5}醦-WAmٲٳ˵"_ oLmRعsgSSӟIcxZZZ"""BCC 5^ PF YX鵽{mڴIׁ x<\.m wJKK+O&]3fNHH:uj;{O&&&o3g*蘓ڤ'AXHNN{WVV0ȏ+Vl۶ !4};v0}$ ܭSOq8{{(Hqȑ#/_(yD@ܿG:"6`-} \xԴãm`l-``-n… }͛KqӧO-w=w\ QQQ}] ۘ9set ;w'.* sssݻk. 'Np? Т;^2~Cǫ!aNNNzotۃ "Q^^NW";;_ۋ-ڼyʍL M؇tu\#//H-}_eoߦ,"ovŊ:ZkHLMM;wAnOz)))v܉{1cܹp8 _ !S .4FFFfeeg333}M&ׯ1!$ ӵ_z-v$] ^XlwtU캵v@,ߘYYY&&& .llllk*%o)//ݻ (--uss;uD"ٽ{q唔wyG#[[gϞ1޻wڵk/^>}:zu;ȭ[haa<6! >xSS atkYN^JWs*%~)yo˗1|&oǓ =z;Cܹs[N}ӯ_? Y b077w0!_&No\u933s!222&M+]v>$$$""^Çű|̙qqq/^$\OHHDfff+W GB& m޸qC$g0P?eʔ說0ģ>(x(lSؘ.tC` Ve/DEEEO>e9 *}1gϞ]Mpe3{mz9lÆ Æ byY[t"˵s:=oݺ2˟~אK>}>zhBJ:lBD}%OJOO뭷4ӟiӦ1iҤ+VBCCwB555X,xxÇx<<<ޮprrR)}UP<]z8skb1yM)eM i*@V [OyOoCHt7!g{WP)ñDIP0.M.+J hmm%oe(ʕ+4x<Ag&555鲊An+6!m߾}xʕ+uo+f9MMMbֶN,{yy;o\rOVƍSLqpppww'o\.511Aq8T6ڤ]׃0(,lTwa.bnr[[[UbB<YަÕi|9G!rMooǏ766.^ Lbɓ'_~%A|2#7ٳ =<<~ǦCqܔ\YQQٳgG96!}G'NJ!!!*#Duq1~jĉn* CRSS񶻻{II{T)ke斜\WWP(zQ<(,lT0?TU9<6t r-GI`I8tssk$6+BMq,H5f9gΜsuu/qavvv``i^ȳvB AH?LWHӧWXaggG}x$ @yF9%!BҢq@c;vnٲ m۶Y[[ܹMlٲ)STUUUVV|wiii9wŦM Z[[(cFy͜M)ӧME9(xd2]4~RǼ-W^=a„(CH'O!y,t=/Hq|yΰa룣9BXDDy2Ybr>|p-}+UDD['|}}y<ŋq\.OHHp){ܸqc=ȇtmrΞ=񼽽?(3 J%YLeYex̻Bfmm3z{{'$$L:?nF` Q'Nw@k!r,X PjF;fw;wrITTw}ES厎ZG?+AWWWk @q=[YYTTTiw,(((##Mܽ{ڵKpĉ.\` {>sPu#.Y@ׯ_7~y著Wddܾ}{РAlj.Zh}kwSvf9޽{@,']W>}8:ǐ!C|#Bׯ_1bBH(ǧ^[[۳gM6y{{s\777ihhpppp8rJ^^^={9r;̬UBupp())b999555666Ǐ'7xի Yݻwnjcnna|yZkklݺU![^M^.]4foo~A"??>AÇ|2~̌n?!駟ܬ4%%wQ.yN>MT*z*.ܺuzlF^{RRRQF+=dȐd9U߿?V(kjjׯz崶޹sgڴiF!TXXH唔d2ooM6_^ťFe#G*9q;'''==ٳg<ضmҥKqy^[ZZRRRnݺj*BD"yr ؿSSӧOWZUXXop8ӧOY^zmr\]K _eenpBr Smbnn>vx>>>--- R?733C/daPPPHHJ͏?%GIDATbx ákmܸ̙3dyFF2dȵk Xd@ P($;;;00ԴW^"bǎvvv111#Gt²21Au痖֞ j7}IMMW.};v% Xpa1 Y_ :Պ+*]%:z~K҅ 666zhUUKYY.&O|ĉ9s|7 hIy!r]@xb׮]~~~C ٷo_}}}ssmFEFEE9t X #’ooo\. g̘1w::f 9,5`-Sۭ-*}ŊN*++o (r0XkZ_r8MY;jםv<<qD|98 !Vrtt Ÿ~~~|>ѢW+%&&&XQsss{E+A'Q?]/ަd9|2$# kjj0G ҥK(+XYY-]LYZZڵkCBB"""p5ksssDEEEO>ŅSL߿LL z|܄lHTYYiffrJ\>s̸/^dfffee 2oee+4.xJlFD9tPN{nܸ! ۿ?9Æ  cDB9tN}0!H)KbmWWׂx bP陟+**𶇇GRRғ'OFD٠iq׮]aaap{a2N6#^(M~8r]TT.J ?ɓ'ZP + u||ƚ!Ht,< ,d2%Tڪ׃ r\.Dڍ7L~ak @e/;Z[[?Ʀ!x8ُH!]/ަd?|BCC;&}}}%p(YNwpB:I`` pB]ӿ'qssb--99NP444^RRyjj35CCCYO|>c}_lB9m6 _Ő!Cʕ+?SXQQQ1TiVVVFEE|R`ptf Ar$ٳ-,,nݪ^_*FGG&&&³gx|p@r{9l0mJ׃,  d2YfffsssXXu5B# :p3>gϞI$+W:(JWX/ߒyyy>>>] f_zJJ>F/P޽ _|)亮^3*pc~!>}J\zuVVVC 9u^Unnn^d#EO6ɉ9;;_zU>f^CM#}JKKB3f[__9믿YZZZZZ[.]b!277]fMKK { pQ x``` 2*_xXWWW>?t[n1M2@'ޒ幹!0##=ӧsE}wʻ'%%ݻwOP¡C"~Ǐ5J;j1(??;^0hllT)F/P\\翇ҘsE1cƔWTT&&&/^d ԗ/_|oA-Z? *///++1bv+s^PP pm544ɇ d9 62L$ <!w^\8j(P^^~sP>}w}r<!C5ʀ 񳙢& ?ݻ9r$B(++ ?B[ !GGGOxYA*A ClѣGA4552rM!:H6lرc H rr:Z@@@tttiiz (fTQ~Vy9~w6,[@ׯoܸ!ΰB?lnnFYXX0_VV6{l777q8%vC7r PyṖz)#G '#ÎC}ӧOwtt$?V ^e̡*??;_T … !SSS(,Gٷz !WWWGL&SliiQnP㡛f9 ;vCA1*m2?T֟cƌA={Mb ǏG|(k26slZg9çyݛa/Ӎ7?b,GI$P7)ܠH$_`xYNw?T(a&C` @_hxU>߻w[n;vKhgϞJt_Z ppp@ݽ{e*o3ߦTZg9 80..UUU26!!!~ǣGg3Fcq}\Dd5| *++8 / ẽb>Tۄ,JOF BBByC5 vލ]R!NE:! 8po})"ŋoȑ#.kQnPŴ{mk+]콈\B,&)w\Wew`ؑgYquYuiA "mۚ?o~U9_Oݫra* [ i՞Sny> ú~~/p $q\ dEGBmIENDB`libbonobo-2.32.1/doc/api/figures/storage.dia0000664000076400007640000011224311430735223015607 00000000000000 #A4##Unknown######Storage######getInfo####StorageInfo####path##string######setInfo########path##string######info##StorageInfo######mask##StorageInfoFields######openStream####Stream####path##string######mode##OpenMode######openStorage####Storage####path##string######mode##OpenMode######copyTo########target##Storage######listContents####DirectoryList####path##string######mask##StorageInfoFields######erase########path##string######rename########path_name##string######new_path_name##string######commit########revert########Returns a StorageInfo structure which contains the name, content_type and size info.##This interface provides access to a directory like storage facility.######Opens a Stream whose name is @path.##Returns a list of all the Storage and Streams available at @path.##Copies this storages contents to the @target storage##Destroys the element pointed to by @path. The element can be a Storage or a Stream.## Discards any changes since the last commit.## Commits any pending changes to the Storage##Renames a Stream or Storage component inside a Storage.##Returns a storage object for @path# libbonobo-2.32.1/doc/api/figures/persist-file.png0000664000076400007640000005416011430735223016603 00000000000000PNG  IHDR(KsBITO pHYs IDATxi\H!N\XUDEֺj޶rW[]UDPTmֶFՊQ*xAT$2s;w:32$09ss&` &R>` &R>` &R>t<=D"3f̃t7(H֭+V]H@#)((@ADCCâERSSgΜi֭[!___C R>t<8b%KBP=|ϵkBKKKX,&NNN"m…uuugϞ HpBwwwXzeLLD"H$7nŽ {{ѣG+RB%ϟG;룣B'N$"??w!*?BR>rرcSSSvB7otj@w`sņHdffFf⠠ < >6l\.GYXXq!}uu5[D:~ϙ_~ӦMM |LQQQcccKK|Ν BFeff[YY!Beee &S0`Bo׎;{Ϟ=>|o߾| "۳g^}Uʕ+fA^QQ3к=zhddbqIIɬYF*++{y w{g_@ t}&|L_ZZz/Nf͚5gF!ai( @9R~DDBhҥ?nhhqF||8ٓl_]]=dȐ۷_rV&M8!oO[mB=~XKڠShZ&!TܼiӦ~bKK˾}.\^ǏMMM裏|}}RynfϞMףGP~~ 믻vUsj@&UOFBmS-`0 )0 )0  4tZgVQ>`u)x' ozz:t|3wm۶͙3'!!б^A%Baccc: zbteɒ%20<<W?Ν755͝;Q>B@[֬YSWWwĉB8|===KJJ@X(c%J}}}X >ķ?s挽=+HL&fǎ .\\ | >޼yy@A[[[#@XA0 >cpo `0187V0$X187J00PX187Jp)d͚5gϞ c~Ϟ=UUU...z |E}{{RfG=ݽo4(= SBR4""!TYYǠ8@Q><Ocpod(LNWdѼC/ wi>YTLO ojgV÷ iG!Ȼȣ| _r/^x_9֧B Qk>EBRUqNՖWUCOi/(4Um"fޘ R>0 HF_/.|UUu-fDkkhjz`V?vgI$OO˗/WZZ:j(D"HF}]9s YS'"!8jsSK+']OUج5`jo~Z)|@ìGNvYCtÜ:0: &R>` &ä|m<H[4 RI@Gږ[=cieÆ bwS\\ܿtJKqq1'p$Z)ˆ RSS=Z__Ἵ===r?J>}%K?~رcǎ40>_GHxynnP(r unݺ9r zVVVK.eFkZvݻWrttI͛r֭[7n}Z&Μ/OUE۴A96P(ĥiJY)UsN\ُ`q!֭[f ۿ?A7zzqi53K1 qTcQv:x,WWϟw _읣s hUx3Bن:GUk13T5#3~Xݩ?S|}}N:ŜիWUA7zzqi53K1 qTSU:Y<A!!!C6ls hG R݇uh ˺0fy:HQQQ۷n߾MMNԯwɓ'M6XTvvv|`@^\ZMdhT}]LQ1{#G91bΎVNU@jۭ#u[u8漐t$fy:HMMMݺu }ݷo٩SNA HNNF%''%%%BooYU RW 2(#L<A%=?L|$@L|$@L)f] )0$lAU@zj|$hsVU@_)v5+**ZtѣGBxw _'%%ŋSLhY?.--ݿ>}$nZ!X,㖖] |.>ӧ~O?}`ڜ333KKKL80Ai[DΗ/_ 2eC@)hmY<""822R*v]qԜ;w.**ѣGWUUVTTaN֬Yl2:/T+J#""BleeeccC[/h 4:}_\θ$m#F ٴiW6xWh ^hnnx!C}? v.ŋJ.;wnȐ! a0͖Qa?m̵bbbb1|6;wu?@CGFEG _~}ܹckk;bĈUVݻ] !/̬gϞׯǗw5f](m !t777Mtŋ;wnF0֎J믿 .hk g͚!4gϞ/=ׯ_|@HԵk9sٳg-͛'K0AO|#/// @$3۳6 ReT G[@kggץK\a߾}m)hllO<==NZZZjp#AaXW^׮]#bʔ)Fr.711v/mD( 1m_|||]]]||?Ͷm9N-Bh֭r<--M$ۧOdd+VDYXX,Yӧ  a0mؼ|/AUVVΚ5kܸqFss3iXXX/^_hɓ'UuB]" r9^K(21ǻ?NԘ"ɖ۬dw|=z$*`` 1(h}gg粲2رc/_nii9rHL8:::uJTر\K(l势6l۰aСCZYY[?)b6\޽wޭP(vշo_fcfKܹȑ#xӇl995qqbvޝkmڴ@Gӆ w-X ""cDkkhQ>g0tԨQD"=ݻ?g.\(Hl___P痛KkH[[[|y ._)H/^QɅng(ڰ?"ўRt?Nk[K U;h;(hGzϞ= }VVVfff:u޽+Ҷ R>aTT𚚚\ l߾/6lB_ j7uׯSĿ ьP!0zco755'Ž;GoB7nmhhym:bʇJz]K3*p+++??sN>/JrySSzss3yyy7ooﰰ%Kt ukp4C;};~7z>}ڵk%%%ڍA#JJJRk_v6A[o:.ϨHgeezL2E&`f{f=sJz;~7:e.%BH$K233Gѹsg CWWWq>Yeх'.Ϩo$sȟZN8zځѤBCCBQQQWU}r  W^y!*?GȳU]f^{5PϞ=5Z 6!l2[[[_-~TLLX, ߿o>Z=UQFTWWK$;N5'K׬YsܹǏ777?}/D}gkaR۷+k׮ O4Z7KD"LCGD h;VxrRD"kLZSa8&u &t¢R<].qT*-ZԆϻ@M`PIψi0e%%%gΜy7r֭[7nhQ>h.Q\\jժ=z'*QÏ|.j?ĉׄ)5k@l|`LvQgt;SYYrpp={ܹs0HT`(߈(_c-?eFΘo@ ;>|8$$:&&fL֎E g{i=++kƍ: Q; ӣ|P)_Skľ}OWp!a0HFOD|P WWהPvvT*]lnf'''܌꿿.,\n={BEEE!!!b'++sf`AAAB9tll].]3GgFȺݘ hCp̺BMMM <?N~iӦtfTն/;߾zj>}ҳfdda)Sa u@f`;=|P(  Aǻgmp _r_~w¬C0 hrf2SGlutfƌ!\:i)c\ rk˗/}}}q|M{zS3˗/8=/_o>|X+ꟍ~ %}8? u\ H$?qڵcǎ~և`~ }m///‹/+>>>ϟK^}UXqq'cee5s̜ 233={6n8jĚ6..NUBB޹suֹH˗/␐ ZGGG@U@fҫW/GG][MAXmvvP(%"226** |D"Yx16M…1pKKKf!|AӨKNo>꒙3g~WRD{[ZZ3f$$$GqvvƷ{ 믿={6޽{q&޽{]vU5+VZ NLL6m^= uS˜sݹs cbb-[Fm@3z0""bɒ%d>}~+R}4y%nlp־opw;h+U]9N? bcckaaѥKiӦݼySOٳ+**e2?ncco۶ӡJzqjz<wYpS*ᎎQQQտKllO?چM(T*w5{lħm76FO;GtGF.^Vn4jsf=fQQxb>}q ur· D]v3gΞ={ϟjda4YZZ_2tKDZ 돞կtG]QV˱ bc-  5N̲{ rD5qğ~ L֫Wk׮1eʔQFr0jBmm؋Qނ`tկtGH F9pPd-OG+G !GTn0`@KKKDDٳgE"QCCAYf7NUo:\?an-1Ч~`; Ov0zZ;}͕T^Vn4k$8C01qTE=hРRڵEBcǎ]|ȑ#e2YRRޘu90۷oݺWhСgΜ@N8mU\Pqϱ bSU 5N̲{ՙrDEDUUcRRm ,`ݒzc!цH UhhÇ 5z;P/j;<@n^bPSfffi˟>}ڻw9s攖*_uԩe<%hY.]4`H4x`|W^yE$+557!YXXΝ YK=Ǣzǎݺuٸqܿ~葽=^SNk׮ٳYnT s+o۶MTȑ#[lҥ پQ,~s7?FR!kTWWϙ3Y,> @saj|fUVݸqܹsnnn٠A233 x򥻻 krrBHHH4hnwA͘1c…qff'|?er|[[[UAR璥kn߾<6sGlsuFqqq`XXYٳgqNFN'mĨS:::᪯!/_[|OpјܛD"JxyYY /NuyVԔOU=|I;^L:z /Ƞ 5Hȑhn#F'6eǎy?4/|B ;|)^܌ϩQ<<|;##8Z)"֚񅅅@ _WZ5`ۻp!>B_~~\.wKJJr'O0GT<+RP(rrrȣ|5#F-ֹcMMM:ݻ'''xbѢEϞ=ݻ7nbkk;dUFa`KFE[¬e{{E 2$-- ߦ$<==rI?NQuyV7nܹ; M3':wl!SbѡCux⠠ |o}}}~ TMYlז:h$&&oٲECYtttMM͛B??gC?PN` -krٳg_q~Ӽ ; i#=qACGB?..>sww߶mo=0EЅԕ+Wޡ-dgg4h̘1nnnR>0Νvrrꫯ  ??*CQ1e˖ݽ{w…diD@%{ǏzBBŒ3K͛{nm!M (xBֿ>mņ X/{-BͫWƅK ~Hߧ ڵ+y {I o߾uVB]gΈ| }9m/dF?~pB//d=}u·ܹs/\p…2=ҥKƎK>T.ǕtΝ~z+++6́9#QJ|fH͛7744TVVjs^z9::Ǔ7n>|e@@`ܔC;99# GGGOUUBs֭sww777wuuUu6..NUHK.1b-d2u!kg|ٸqhq`XJJn%!hիW^#g___uR;"Czkմ%߿ꚜP( 3 'ׯ ~m{օ֡g Aeff27=AW.Q53g1d-x拉{RRB8x'|jF[uF[!f/lGFE&߱[XXXVVVJJV>%K;;;"o111};cii9cƌ<ܘYU633s̘1>kwޝlɺutD"!гpʕaÆ/iQgff37`{ ?}TP466N4ifĺXgĺXbL|ccY_(ƺx'&**KUUU^XX뛞N.^x:ujOoMPK-[KxX[F;`  U)u~ԩ˗شV_:P)w6=Đ0FR:w j~Ϟ=UUU...z˗bXG?xq555ӧO?}{llw ERA7gϞ={,GXdٳgs5YZt &ajTv0zMar<>>>..kSRRҌ3Jv&^!=Їnݺ-_ӧ/_n'bӧOW*sb`4(߄-|nn+2pX֫S]]]PPPii_ )|Ô/ZV6@[ |>vZTUUon| }ҥ˴in޼fתu.ѥΊT5Jm jp4#d2{J믿 .->5?k,CbҲG1bĈhC/R띝>(v:gΜ={̟?7’͛rM.I-h[qϞ="|S,MӹsgqD"Q@@@~~>5kۮ)))nrqqW(...ŪbVP#PXX8a„[[[ב-[DDDt0Nի׵k2e 9Ar7$?11v/m[Ǐ;99k.RJ$8C_riKF JJ9##ݝ qmٲ ͛7O0A9ǺjkkB!BH*Xӧkll׿W^@ݽDJ"6AUVVΚ5kܸqFss3i2nnn.Ǚ',,,/^Xg IDATZZRW_hɓ'UN]" r9^K(R8p $$~ʕAǻ8,WWϟw19~WTTxxx tr%C/U\)+'&&:88X[[sZpD"Qվ8<<ҒXiiQ$D"=zݻw+b9sZ7;;W(2ctt4A666b nsaѣG19~h\WWv3fh%$M +++=HFwϞ=^OpBXXXKKYVXa\0bĈѣGX@})߄p< E޽Gzj777MMMkRуoBr~@Qy 79/_q*C &M>qss+//q??OLLOSRR  m <"Q)// ܼya}KK?裗/_ǀL΁&Olor믿D3g00 χ]6lX|]rrrxx]<"@7!y455}GQQQ3 `)߄]g# H@皚>ZC& R>ЭQF%$$L:бWԩSHHȁt:\[߿РARܼs=zxW?-6L ?f(..3fk!N:5tP+++++д4BwYZZZZecb_~{ DZ6ޱ/^xnݺ9r͛θ\.wvvu֍7,/\@DTT#m,Zk888޽ f?˗/{zzZYY-]/ \Bĕ+W~[V&O_|񅭭޽{YGEj2#A-YD"xzz^| 95fi cqxue---zPb./((@yxxϜ9# ݻ3f ͛BRܿaØq4c ,**ҽ{)SsOɓfffÇ|kfffvI Xrejjj]]]]]W_};w.+%%!4tʊܛKGp[n͚5+((nԻ322 7nܖ-[ؼy ޵kRLMM!B*&&&*J[nǏwrrbm۶x܉_|||]]]||?A7o&eMxĴ4Ho>}Z&Όu1#A+2u1OtAԄ#oߎ6 !t5ouu5Bۛש}78 8%%eС㍄  BCC9innF\lŋroV'Oz#fffR9++ݺuÇz-́BBBW\IzI(P3;sVGgatHB%CYFcw'YYYCDb9uu50`[ϟ}f8&B._tiڵvvv!777$ BNJ8={LnKJJL"ȜlL8qBH$qŚi)mhh(B(**ӧA455QRE)_# g022>|!tQoqqqxx%9Mb…1&*._",^ߕ+ rss H`mmNg 5~3g}.9-f cq_~y)#Gh-V[[~X,hlN`AS꼼8Ÿl`֭X,F) /{!yZҥKro.*Hp|#oܹc~zeƌ/_z\SbիW˝2Gyȑ'O|255UUhF>ƍ??gVUU555"[{aaaÇ3Oߣŏ_~) OfQF=z$@˽4& RD/Bⱞ0aB,..N=Q93~xP{;wcgN4ܼK.ӦMc.A zD"kLA'O H$dȐ!dW'LЩS' O !|||v܉m=梂 T3!0tP>7!ZNNNZc# <"{i巘XL^Y+ V;4l;Uknn޽kXh+'߹s"NhTu8!66o߾,ٶuCuuu&Lꫯjjj 'Os~R*zvv BBB/\`ګ<444%%#G4tDڊ=ڽH2wɿܫjͱ֣cFB9uP֩*++w---7o$GFF8}tPP9 %luǚ[CC-Bw޷onm2~G\iR掺.|Uk=:Hq2`ܣ#'OAdff;ڸW^Ӕ)SF;zèe y;i_Դ?RЌ >4G2wϱ bԚcG 5Nt{ rDu֭DDD={X$jdeeYƍ7fYBmNy466?]X,$řԿ \KK:ﹸWٽ{Bصkr޽%}EB9D>}~TF#*ooA%''Q[:;;!Ǝ|rKKˑ#Gd$U-]tΝuuuPjm@*9VAZsX#Ys:CrttLJJMy[RUo̲ۼ8k/8—KkO~ځgx]?~<99zo9syzٳg.]Wht/w`| n[[۬,PHHڵkǎkԩS!!!<<<:wlph_p7kjj4iݻ |‘߹sc)߄@u)0ep`+[O:1c:zG& 7xcɏ=2t8DR9}$ss.]:"zN7!UUU&LxbΝ8o:")߄ܻw///G)))~~~^u+8vСC }8cߘ9$HFcƌ9x >Ԁ$__tLf@w(*Cc>J>>J>>6AC pw:99Y[[3})ߗ山 w>|>P766p$|p<-X,P%7h(L *?O-j' Ѕl^"v,H/MY$IݝUUV4|1}rh4[S:Kӵ|pd[VړΦ 8jIA`Pg1$NR~ooh!4Drx-bFyFRI̷W*9v6;a3٬ 8X]f4-͉l6[MbhBdYn4Z{{{RUU}>,˵ZZ6D9/M.<K($IHUӋD"[[[tmM00ul|V~EۃJ:;;!<7 ڡlr7MۭiО$]\\,,,$IԴmbsBE jZ#n_^^DQT*zݴ[p,GJ>#8J>#8J>#p'_t p:MIENDB`libbonobo-2.32.1/doc/api/figures/persist-stream.dia0000664000076400007640000005531011430735223017126 00000000000000 #A4##Persist######PersistFile##########PersistStorage##########PersistStream######load########stream##Stream######type##ContentType######save########stream##Stream######type##ContentType##########This interface is used by items which only need to store information in a Stream (monikers are the primary users of this). Unlike PersistStorage, the Stream passed is only valid during these calls (ie, you should not incref these and use them after this).##@stream: Where to load the state from @type: the MIME content type of the data, or "" if it is unknown. Loads the status of the object from @stream##@stream: Where to save the state to. @type: the MIME content type to save the data in, or "" if any type is acceptable. If no exception was thrown the data in the stream has the requested content type; if no type was requested the first entry from getContentTypes is returned. Hence no return value is needed. Saves the state of the object to the @stream# libbonobo-2.32.1/doc/api/figures/persist-storage.dia0000664000076400007640000005373711430735223017312 00000000000000 #A4##Persist######PersistFile##########PersistStorage######load########storage##Storage######save########storage##Storage######same_as_loaded##boolean##########PersistStorage is implemented by BonoboObjects. The methods are used by Bonobo and the container applications to manipulate the storage of a componet##@storage: the storage to load from The bonobo_object should load its state from the @storage provided##@storage: The storage in which to save the state of the bonobo_object @same_as_loaded: if TRUE, this means the object is being saved to the same source used to load the object BonoboObjects should save their sate in the @storage##PersistStream######### libbonobo-2.32.1/doc/api/figures/running-context.png0000664000076400007640000007576111430735223017351 00000000000000PNG  IHDRgxɕsBITO pHYs IDATx{\TkfPA|azB( Eeܬn-5LL5` &&ej%WbhXZ 0yv4gÙ>3kku>{(B`](rrr ?1lذBRQ\BW\(#&`}XS$ݻwOh[B(999'':88m cM@Ë9F5!$ɓ''DM/J;pB8!j5@ Q'DM 5"=`裏VWWXPtttTTۯx `w5/5/5H$Fğ_m{A߻Ri|||YYZ6)7|3~x??;wтP+܂)bs L1 QEڵkAAAft…s禦644>}ܹsB[@P`uYHDUlkksss"QQVV\.W(yyyB O,VǍj*|||}쬨puuPT|>f̘r,|'(ڹsO>>)) ~파۷sTQ|GRRRL2o޼nAt]llW_}Ϗ6iڨKr@TzՋ/T*l'S ӧϜ9SQQL'Q;&;;{Ϟ=Ǐ"FLH.k:99b`X(F!ԫQRTяZ;;;wuu)j5EQ*JPwxDU__/iyZZڄ RSSn!)dãb|N}UnKɦ… EEEvDMyyyC ٻwokkkzzE5>cmmmo6-\|oq V[ZZ / bbb222۷mm2˗777%$$`KΝ;?3Gu BѬ^3gt[,66vǎCM#"lloo̜2e Gu9s,ZHV777\4DSO6 ؿa<`O7z.Rux13pa>///U^Cl  *&>_ċ655ٳVXIxv$NA-~{J[TTԱc̥DlbmAPPB[zo[Hٳ{?755[YYYR Xr# ý7165!!!bvVέHDl[i$*2!z&D٪3{DlLJqg+,, qvv>}zVV" aCGo3?U*Ջ/اOB/WWWS9P0%dnu{ژø'M/Hv٭1F+24QFy+;h1(QTf<:GP>g3IL⒓鉃L!wu!u3?i-ZI>x~&5?mL& 4R[c Rt=k@@@{{{ }}}sss5 Nӈׯ_׫Ȧ B4IP0DžD!Q5xbuvn=ORݍ5)={v޽N7i$=Ez=bLE=IIIg.---b(ڟX+9h9L5יܭ65d̙/_j flOLOh"!DL8J!OΑ'OsfddpWUUK/UVV>S܅chfSף'|oiooY~QKTinr&uc0ckI<8r nDE> 24[iC&e!eh<:GP>WT|RU__%kjj8\GqAlkMɇ7nO<Lj4Ďx&$jژbQBS`v@L8jbRHb )_n &51 )$1fh;` &&`Q 4{(cބVs&v}Cӛ:x ~~~B/} ADC}GhhhEE.?bWWl#ZrqGǏwss?~iҤ7orvf`f7A<<:t/Bjx[TIlډ3!D t{ёP(Riffn]CB`;C̆)Չ%**,,sʕܖ@lL$tcV'jQQQK.l%=t!$d`KpphD'$–  b,N61*!ĒySҲ C71bZ6!шzZpAZM`K@LVgl}gR5w>wDM௝ [LI&dgF>=2%̒hV)1nEݞe@0@05$~&dja䟀$6 J5wS&wd04n#'Yb,&lGfrK?MIˊ E&w?I7Zp*R [Imr to)RĔ&0CLI4ēzpSB= D#="&qV)ï8=X9obZV k 1I7q)S` 1!I|x+1 G$ RAOi=s2!wML$pT'$sĴ;%0.&e~sLb cǪT*,$& $Vgl=(j߾}^^^O\}瓀R<=[Lfˆ&ԃ#w9z?F{DLf;&&[ ܈ɳ0 58uTw}wʔ)J/f,\9h ]95D"X,~7ǎ+J]\\뗝Mt#jj4ٳgD"WW{OuPnnIR~m0DmmmD3gZ7oD!z,5Έp}K!J%= ޽{+B(88!yO>Ν;~iEEł XΝ;'Nܷo_/k͘1#((_~]hڵkBZЁpkj!ֶuVЊ+B|h(8kxiH$bZf~CPu!Bhjj¿^v !j4Xo 3fLEE| Bo!ԻwoB?EQ#FFeffRuT! 5p@(Ik nڴi^^^W< >|8zʕ^z=7oޜCH[Y/~$Z~'иqhС8 6LI&~.mu<;rH"5kjj6mpB///Z{ʐ'|DM ½ϱSxҏل6TBO>P{ $/sED@׫W"F1bĆ MVWWG| !Nؾ};B_GDͣG>}^P(޷nڴiBh٭DM0媶;/~ wcw[@}QЊ+˻joyҥ#5G!>QF]zS}w޾}{XpٳQs޽...III!ooSNݼysO=,DnM3gΌ3mX: l^lNCM2 p{G!̙c9455%&&8P,~͜9ԩSt<%x;w8!ꫯ~޽[^zEGGt?g"""$;;[#*G^Wq)))Q*Gimm}W͛GQTEEEDDkDDJYbرc+++m1>>}̘1Xj/^sgdd5xƍ777np{ ++K.+<6; R\\Lh4JnD+WPRrFaN;n0==_~7n$M+++Ǎsxf{O1BgD=0Hp3yŋyxx,]ѣPjkkk.]J uLIIǓ'ԫW^x~l#}̙h[7#VONNůs` ЂKalp8g%%%|W||<'K.jT*BBZM uUП{%r ]fO!mmmBuuuEi4ggg6; CCCkjjOfRNNΌ3(>>-wpu[8:+27WWWV+Ν;WTT999uuuQISG?ggN6ѣG ]UW3ΎL⒓WOEEEOee\.jδ:n}%V=^QB MtH$'=)*ܹdta,m[-O>x1ʨ ~ݺuFTg2eʔիW?))) ./?T*MKK{'(lpۤn:buhrki0׮]ۼyĉ7l؀111۶m gffgffN2˗777%$$`9s-ZVWZ[^&?^>5 FYz53..꥗^] L8q׮]܊8$n깎X}eddpi "0צp΂ b8<<^ tR ,uUП[ZZ$ N,f…rW^[nխi&25[l޽[&Iҷ~<"庫)ڷoޔ߿ӳN3m&M=T*khmB InzCDL^JKK;pwwם!|'~Ç6Dv܅v(BPCϭzp ϯ 77WPw <8&++kƌB"=[ÇDӧ mm]"HP޽ی&O?ІC=VƢl<i p„ QQQBҳ)6rYqL!iii_--= jvkRXXx)Հ Cƚx9h 3`5 j=dשm}j5M*;Yzg93l f1޼05+ =agd7oz{{755bZcMc8uThhѣ,QTaaa+W#Fpuu rI&O4͛X(vs|rT?~ĜDsp…tӪs{>9!!!gϞF%ČDƍ5 OctD"RK"[;*2ίNIybBG ,++&4 pu;$xғ]!-U= ptn߾ݫWΎ^zݹsbHM6_"ܹbH]o[;*2K䯝(!zwT*Ĝf{6 d2YccOR!TXX(m=}]qqٷo`E)ʪ*# &??_*r뛛hpH0]#9uǚXXUUT*?~:QB}J$NLvNH<7n3ٳh`vzre„ BbfnZ xi0۷o۾};~IHΜ9ZݝC0m6^I6;0'_;>`MMM&q섗a D| <ݴm9 __~eKFFAAA...!!!'Nఁ$klGD;'_;Er#ľӿ>|xܹ&qeؓn6"##6Ĝp410ܴ6 _w)?x|7Ǐ?}жw4يfhvo{G xw:@0!H8~T{q---tnZ%ӓ'N`!::ڈ>ѐwB@$71,**"{^w0]~av0C `DDD,X 욮.z_@5aپ}&<,DM2B:fرc5kTWW }1Y~I$=ZhC&8 >?؈7Qa@d۶mv駟Ū8@MQ!C,X޽{BbU` XXC ˚5k\\\֬Y#!V&`Q jqF6x,DM|/5) `@A~~O>-!`X&l "88@T)ߺukѢEϟih` JqqqLL =󒒒]vY0[JQS-9IJJR*`Ŋ ͛"hB8&0D"$$$3gΌsի`P.E D")((0(pn߾}Ȑ!> E vR4(p9ʕ+1O`v@X(~@OnE N???˅6pL j`hlooOLLy@ꫯfdd$%%Y<p jC?p}ϟ`@~MWN:Fiʔ)_*++e hѢ͛7/Z̙3cMK~H$/"BHRq4bŊ޽{w3oƚ`DGGGGGsY~=w// 6̛7͛fLhrL& =`;, @F$9RD7`a#jrSpU 6M{]v0 j>&7\vtnnG]H -`Q~mhh{dd;w5Gi'BFk׮M>}ʕoBrnnnǏWt+Wzzz7Nw%hISS=<AGIII2eʼyhyYY٭[6nܸl2M=bf<ډ%+"Iڶ6ZH>w߽{ԩSvgΜꫯz4a„'O"<ʦh\jlN PCˀJJJ>//xHDQ\.WET*BA7jꪠ?ݻz\~~~׮]c36b]]EQٙ-tg&ϦvDElvDLJVD@qbFmqD… XTPZZІ8ZV&;wsrr(<!PW/a ;;;3_G6ln9"6M1Mb3MQ"$KDt6M6_"ܹL G>>>r\rh'CK./U DMrV$unNNNL&˂e2] kjjr9G~~~---B/ӧOii)[ʨ?uZ[[nd$ N,%"L;^"C+cǎ=tPyyynnnJJ$O*=bC;NK/uvvr?bQ3 ڵk7o8q 0&&&##}۶m111t)Sp|沲,3g΢EjussUtd2f>5 FYz5a #ID wth'dD/=77w٧OW961`9Dwς@(WWW7j(''O>p_}ڵcƌ14`ktt G*=z/b2nNNN~~~ccw}8@0ݻCUT999s5fMsJebbbDDěoIQTEEEDDkDD"9XVVƭxJ%1j+WRRޞXA =-mbVĴ_bFooz///z,z8^ML GMݿ&j!zGT*elx MNp\}999!DRRRb5{ j6]FM N,ǧ0~8)))""ϗJj4ui9h'B J%_~!t={8fJ، z0=L#Bƍcƌ9% BcM]Ν;o<#r'dffq֢X,4hʕ+?\;wgnnnҲ%$3|yyyVxQF]l˖-mmmBX,~-z "-OaQQB%Qˣf6Sf<{'$>ҿ>|xܹy>5kh׮].A5^\\r%CX_ݻ&ӧE"QDDS)d{@M+PWWG/rl,t-X!chE!5nLs%Ill,ϯ|JR8P,?{ѭ;m4_|ͯ*""!ӧ'M6zO? /=z4^CC!y6}g :Th+ŋ755mڴ)>>^h[AW_KK χ⵵r!k=65KKKB -ЋvW\iooߴiW>% U*Ueeexxn]Rac~~SttJ0a8U3]DQ_u֭^x!gkkk#BxeVVBhȑmmmm DM;!P(K qXz-D2rHWw W_qqax"Lb=5+++!VZ[@o;3]x6W>%~aйsN.c1=?KrHPdd$BE 2.PRR-KJJd2Y^.7[ 5/'O:999;;:uO,6.C jN0W>%=<<BZzzP(XSz{{;BHs̯Eyzz2O?!$B3ւ@@&L|򮮮g}qrrJII߲k(CCCKJJ?V)vqd[捇gϞ婅"`qaMs-~=7q[q[hAW_GGO:NCͱ&URNgrhW+ Wvx \_ϝ;3>aF9rϋ޽{WTTW,lm _ JKKR)B㖰ƣ&EQ!m1c ۯ^jW޾}[REDDprr:ujqqV͝8q"«8|_i7|:x/vttGtnnn4hB(''(UAp6F&Ba{!z=$xndQH$66m̘1}nfu~.Iy2t]v!sĢYf.~Ct?ôirK߾}gϞM?3gR5~xМ9sCOKe3w]x~~~BB¦M{n-qrrD>AIIСCzUmq =-]`U 555˗/1cNӧ/_|ȑ .D-_\hz.={vxxZΟ?_"5J:tcnX|ݻ<wϏ;V, D`A =-a g̚5Kr_si4%KX6 6lX߾}7|ׯ_h 1xm\PP6EEEǎlOKC_mOpp۷ ٰaBHTj"H6ȱ(999fq޻wogΜ.Li1q &8iii---Ǐ/..6{ପrqq3ai AH$111jw̻w+ &8JB ֯_s , DMp(l!p.]TP~&8~~Q뭷BmmmՎX~)Δ_cO?XGҴi֬YcDMp@,8y꫿+G^xaԨQ[l1jtuu-XW^RtѢE|xKyLsi1nu ~{ F)51P9ryZ[[g͚1tvv޾}H$4^dffo׮]+))z;lB(''gƌ}j?^3`{2oFfݻAAAW^y+Wtջܸq#&&-&&ƍXXYY9n8+V¿gϞşϞ=UXcرicƌ)//BVxb?##C.C feerBƊWW׈JEW#"cǎri J cMpd,1H$sww(<#)))uuuSL7o&''GFFp~ >|8YFEE-].SRR|}}㓒055ի/^,--UTzu\t顇Ђ)++uƍ-[ᐤdZγG9R[Ҙ1c.^m #vԩ(---x砾}VVVE;>guro>|{{L&kmmE)˗/[V' ;;;޽{bK$޽{WUU1B]s…}644 4!_XXHLF4^,b"N*jZOOOlb͑#Gb(/uuuyxxea;,iDMp O:Qk58(رcIII%%%xZ:vtt899uuupj}݇jnnollD]]]^ҽS`ݣMuqqh4wyRY\\=3j_Cn7i-xfo 5&xkjjnkj4F'RYUUEQ=ܹssQQR*~:_{ kT(t="b ^:z(< '(ʵk)ޮP(4իiɓ333322O?UܹSSS6k,,%333S/_,!! ̙h"Zܼj*2z<yyy|:ˇm۶r=mK{'E t IDAT @p,}24.\prrruuE<ƚwdRߦRTDaGG󽼼_{NϫCeDZZZ$I~P,\P.k֭u7m$HP[[P(t׻2ﺈX<<<\, V(KR[-cM?״]c.8r޽k9rm>fTΓwww\z+Wof`ͩS=ZoH*5],m ihh/oˬ[>Ï*mTKmqʘ~y6m--[?(J[X!nݺUhC̆%zx^2 C9j(#G+ͣt&7l0z覦&e_@J Èu zbرzRmmdk! L,с yV@57o^xq\\ҥK=JgϞǏ{yy!}%&LpI UUD O^7x#**Jo;"nr`@XGYRRn:b|`g9j 0>򊏏W9r$00.ٻwoa}}\.B1EQǎSB5wBx5~KCBPԟ_#I&I{ 17ׯ?s_ 9VdΝ+**BJɺ%tm񩬬ZPÎ=:l0Y.0?įx Չd3:^z2Vi?1iiiO=XGԩSW^mքWU… 8bZZZpIҴ'|RoF><֭kmmvFAL& t$v x : 7'[iΨpڵ͛7O8qÆ |WBhĉv튏ksM~"D wt}!66 Mn1K3gm"xI9y pnNC,X7H >c'q?"yyy B.sJZbldb/7Ͻ\hZzSw~M,IOOׯƍ)%!RoR,(xbm!$rnN!kVTT(w}ݻ6ٻwԩS+Fa:v%F/^ᑚjP({AQ3..nĉE?~kk~iΝ;BN`` EQfJNNnmmMLL|gqo۶[ҙ zyyѯ455y{{c-K.mmm]t)&xb)))>hEEECC޸xQ(̨lٲ]v 6 !{D؂ܹcĞDE]|yҤICcIbi^l|T9s[l{M<!4qD dV {۷˗Mlļ]0IV ҈Y(jb,Y߿qpg :Th+̉%zd^24sVK.99915@DV mşAe˖^xaѢE-F$)ݻw mٰDKfk~&L7nN:DCBBbqwaT6<ۑHrj#[OӁz?Kw f6XaĖL/0( )N'lՙ{ɶ m^U;wko 8yRPPs ,INNFIΝ;ww-((8u4m#FB>}̙3_}sٲeaaaxw=EKk]ǁ^mMHʧMRSS^zRg[%%%544&''s{CFEE-],ډ!ľcU5[VS@υw>>lDƍm*M6@H%iWR:jY6BDױGO>IqYHv>aܻDiC$Ϋjq0E\!o\ 0l!Wݾ}W^zsŒ(,**6mD"ٹs' SirIu+w8#$|o% n}VYDD $Ϋjq0ޔyF\Q5e fLriv̅)7ɥ5ۧ;=pEQJD!M~~T*777WT|fR%ĺ|&~ǚze]׭bo%ׯ7NC;۱&.YUUEevI;Bƍcƌ3Hdq0۷Fټy3Ivqq5u /` &MQ:d2Y}}tY!kl߾}vhslD̙3/_j7JM~FcEW#BCC飻,qe2(*22رc͛^,av[xAI.`[dȑlU@X,5M??,3&q2O?Ǿĕ>>>r\/F7%X$=l3&{޽={4"?g3$.B0}m̛7OO\hAQbiG皐_ ^doo1cq24]pg'NܵkW||^]&DKsX^2ɥXmhh` y5m>1bVe[,~OOV=̛&I.бby?Z͛7 H$)[O>O>iW\ٿ$,_N:zhݗ 8- b%o.&O7}h#""rrr6ؠI 59;$B']\\~i 6hBH.O>ټyж3q騨(ZX CoO` =-aQ̬^Z٤o1돦6mڴ5k֘k3X ۟ )w} m.((6K1]uݺu/~[ZW -@nNsss ,Mm9O#$1%BHT&&&FDDEUTTDDDFDD;<E8  7短e =ܜ& cbb6>}̙3_}B(%%׷.>>>)).f͚m۶=3{E%%%544&''2X,dk/XjUnnG &Hb6JPKK =r:Brss'OLQTllCܜLc48SDMSRSS%p̯Ilmu鿺 {wccw}}Wcc#wrzd9az 88jېg"~~~---̱Q&ݹs!T]]-ɰ;$$dݺu#Gno߾3g KIҴ'|R,0b\\pjcǎ=tPyyynnnJJޯGPr۷Bi `(J aFGLLLFFF{{mbbbhyll;臚69͂#4`+?߾}j z'!fDpXN/.( tVr4ܜl]48&mGb,JZZ!T]]S\\\PP r`?fhA!S6Fʚ1cTLn"11_Wdd$-˳i5qyҥ%KmٰD6hrܜ0C -mN.Z/ qZ1ZˆLO2gΜŋ[0/0{%--ԩSQQQ_[ZZrrr[YYi{(:wg}p ` =hH$/"BHRYڒ%K(ʰm۶ݺufn=*8¾xyy1m0c2N"ܭmak8a Y(*00֭[fΜ9vX^G j ~~~Z&$bb^'' |-tR1[t2Nk`Yt%"h۶mgϞ---ݺuq6{:JCVLd8333k׮\zuǎV6֒qB{(***ZdI˜3f,jݼysҤI&My&]?sN{[]"6E"Ν;}||J#Gt[l H$6mB555M>#44BWEQLE_~ԩSLbIΤrnnnǏiF0+W7nt=QYFT*իW'ItHGGGbbBJup<3_|ViO`.83 d_b .2pT2D8U:ђ(f4801bb-Q#Čf3ZW ݍëwz>Vs={A ,”J{V^ٳiӦ-\o>JZLm6VZ\\uVᦰ$r,:+ ʋBFc}}ĉWXaq.͛GaÆݸqCM0 yyy7nܸ|K;q2>ss%M{󎍍:˗/ZJO,??Czm 9L¦Jݾb(!otB#+///wvvzyyɲ $::(9TΝKHH??yĎvo0J j|? '-vVΝ;7oR5b%evqq#AゃMMMl~8C8yٳg644 >|ʕ-,,3fLss3rݯ_?NS*F2t5x'_SS3nܸ\b28:Jb;ܯ,ju^^_uL1c#1{?aÆ mmm(?effnذupppGG#88}8AyQe]]Bks?32d,`@z}}!CVb?y+V8q/ԩS!!!DɓBÇ}}},ף{ NKSV\9qvApl84edddVV梓*`0,W^p—_~O?]rtf6jVmiiiiijjZ:㔒-..ӦMhl\nӧO|MY6̛7oٲe:1!vG1Nsh~nݺ27##Cͱc=ˬ/f}VF!gffdjǝmΘ1n/Y5z}DDĿ .U*!!BX^/hѢ _u۠gUST>zϚMeqZgeeG*gj_ߦCgՌvv֬YB8ݻFjll{.[,++,:vxVGSSSVVСCw,OAo֪U7QlJ-S] cz/&& *gjJuq7hY5}kI9zK]?p@```[[ {fT*B駟ҫ&xϠfرk׮A;R %Jb;gMG߳d&MKkjjFٷoW_}uQ+ƺ=B҅p8 }}#GT!Cȕ)0 %%%s̑5(!t!֣GI&w :fW҅pϚ @}MθjrbHw1 (ݫV[[[] ؟ŋϛ7… "#tjkMpbZg:U4mZ[n;wܹsѢEApM4o߾s͉'uw vq 8O555 0  G鴩 X|{]]]QQљ3gΟ?Tk&/j...9US. .4SQpIDAT |  ~~~566fdd'$$>SJJJZf qIIIIII_YYq\eeFSFӷo]vQPUU痚ZUUE ڔ!d} ,,,4iBR^N7nܸ^l"`xePI!^ԡeS%Ѹ|rRjaӧo޼8 `NZ\\Zl:y-[際/ΎT*Ò`k$^SS\g]VPTT4gΜϟϞ=ҥKGv3j~ǃ"D??g_ TTT-2gϞ#F)e]bsӦM9K_1}-|?4J)p[qO0JCkB 5,Փ&%tRBѫW".1.J8c)jژ]('-޽w֭xa4!>>Վ r5owBVVVssΝ;SRR\ p’x&=]@DP{r/HwU__sƌΙAB ۯ?~wiooxСCtI - 0/^Xr3LjZA333lذ!;;!-`Dʕ+}ٿ \ GXw_oMII VM^RArA-x:o?sW ~A<No6vA⹜>}~q޽7i$W{ Gߙ! <Ç?}tddu& ATVV>yĺYV Pٳgϓ'Oĉ5AO!((hÇ'VMAă :}Յ& YDFFZ]8j" Յ& XW8j" & -X5AFVĪ x:ގ xgϞ4mڴ'OTVV555`| )9s̙37n$%& z  VMAaBBBl.((̴KfVۣ0k֬[g:ሉz-; ۷ b k0{k Çngφ rʕ޽{m۶+e2#fw[/w k qm ce&8C46[%@;K˗/^\\|͒3ZZZv_tFj: 0,Xdְjv)ϩ6nT5 -@=vءT*###;fmڴ4{쀀jg#GŕZ3g/^널d??dNGqI 7n\mm--Hœp̘1<hz1}"?ů {v4fgmmZ ͥjj{E^:j(q{ssVV?Cq^h8q+=M\*_|ũSBBB؝OOO/++ qr es„ IIIi1 @ƽ (22R8eT5=Zj------ZVV477?x`oƵk׌F-Z~M? }gqqqTVlْJ&ճXO6ޓ~8pkjj|zzG/^\SS2Aݻm aO>]HDDŋ}2Q\\ܹs焷z^R r ŦFپ}pSӊY"wpESNVkߊ/[XWVWWϘ1#(((000==nNں`>}MjC ٳ#{>׫TZ%B/]qÇǏ3~Rvڀc =/ndѣϗ|CCRT(uuuΗT*B駟$qo)Q`?p:pE ٴiSPP=б~;eݻwGDDo۶Mhf~83CYQQA8ħ*XY[[;nܸkײluI#~3GRPPv?3g=zuk߿Ӿfģ }8tڵkoܸjG C/J ݄=zTݻw`Dn^MA'ߡEAvj" +X5%Ҋw,?څ膣W&Qbǵwpg[m6@@1a >};w\qc'l?F rrEyze,o߾}֭7nl߾]NsP*o:w]ff~jw7Y ]Jnj#<󉉉)˗+ʰ0V7VWW'%%&%%>כ7oӧO```aa!qN1bO߾}wwkllOHH0{d R. v DFFfee%%%YFjr# : pxUUUjj_jjjUUOp!BR z,$裏FA*++Y Qxھ.Ƥ ft|~z2fmJ:ǡϚ7o>P6y8ݸq) fq:,B1viY~-[Νw^>+ pvEP頨*JTվ'-` `ֱo 'VR=C%aPV%<׿tEѷo6kD-hNgeN$F NGFʋ6 J9/V&8:`3227e 7o޲et:]ss_j"+tm}͛y4 ']7E3 w ]dYc0.]P(zUTT728 N'wܹ &X2DY\rpvE~f J9σ|]DUYl,I &(u?Pdx"hھ0nt^Q)k3eʔɓ',4"HW!>>ՎF8hº3?#̖;2 &++`Ν)))6:2ҥQ({8pC\l+ ?%ӿC  `DAVjVbN[DNB[ Z:t[nu qqD~2A0=$& USJ}ǎJ222رcYYY**<P_S:Fv?)>YEAE YٳgΜ9ǥ>~ѢE .8Oͨ 6X5A"} Rh((rIqO+#b]XGTMq7]K; ,0kgX+5m״QQ.*bdc&")g9eʔ]veddX\)B]2IٝQ4Tȥ>Ǯ}k#ǝ]K\z… _~O?tpr!R0à~0T_ ."AaڔҳRh%c~ʊ'pԅ'jdC.K'Kh4uiiF Ћ#>۷﫯:zw7^2 -%1 %%%sq#Vu @}MK?iҤLW;b%]Z<B  " }  `DAV<@\AF& _(lIENDB`libbonobo-2.32.1/doc/api/figures/persist.dia0000664000076400007640000006121611430735223015637 00000000000000 #A4##Unknown######Persist######getContentTypes####ContentTypeList####getIId####IID####isDirty####boolean########Gets a list of supported mime types that this persistor can save its data in. The default / preferred type being the first element.##Get the IID necessary to recreate the object whose internal state this interface represents##Indicates if a save is necessary.##PersistFile##########PersistStorage##########PersistStream######### libbonobo-2.32.1/doc/api/figures/unknown.dia0000664000076400007640000003255211430735223015646 00000000000000 #A4##Unknown######ref########unref########queryInterface####Unknown####repoid##string######This is the base interface from which every bonobo interface is derived. It provides the mechanisms for introspecting an aggregate object.##increments the reference count##decrements the reference count##Returns a CORBA object exposing the interface specified by repoid, or a nil object if the interface cannot be queried.# libbonobo-2.32.1/doc/api/figures/stream.png0000664000076400007640000011036011430735223015463 00000000000000PNG  IHDRRsBITO pHYs IDATxi\G0%r(j<&h4јDBK'FFFCׯAއ WV^[[CZ>Ғ]#33Brʕ+666ܻO2%%%eʔ)6l:ujrr?-Ba^bȺ 5k?@Djj,[fh%sHf^^^G;t.O7v p|W^3gΌ5J*n޼ e8E.QWW1f lMMMd6Z|jdfFP}˖-AAA---AAAk֬EȜ1c6꼼!C.^899͢h޾evV2w`ihhHR>@/xh߼yW^ziӦ'RdxV4tȺ:)oo#G %%%x*٘mfr<&&䨑ݣbݻ عsX,>vk!Ԧ1cf&Xr?0,-C] u_fd~y e}́^*ѣ~["H$ɓ'?y򄺋;x𡿿1YTFFD"Yn@D333B[hQnjnnnaaW⮑9}ؽH$= CCLBMcLK$77 X^^nmm%fQoo2;d2_]]]MLL5CBs 2 ׯ_7o^aa! .gΜyf' &&&Νb K177'Nh;.Vº깍.t́́P1XAMHc*k_h^N?{{{š2UnQUƿ' -CT@wN!?5;9o޼˗/_|Y ^***@`і[X ʪΝ;OFۻ2@ /---Ξ=yfKKK++SN!%K++^umyJdJ^^B@) 2PV mM{ZjsxjxEW15wEr+-_ӬkexxHlmm KfO1זG23f{OY0;utKģ=^Rv́˭u([ <++ښv OYᨗ|<ٜjJzzSMM#^5 ZMksıD---q"urji|Vc.]Ģk[[[+Ç 5jo1vX00F4% %s kT3s ѣ' =<<Ο?SY;#s)ur8g>\[>22lǎ/^twK#r$KJ@mE /w[wa`P8e0@ws tG0@ws tG¶D@΄#8@0tGṕbkH 8=Hpb@Y>;0@ws tG0@ws tG0@w΂_<v3g@ & q)L XXX'@s v=3ۛO wEyyy!:x9ill3440`5s Ph777I$j:9?H$ڴi---B̿;k bѣGp„ ,--/zB@5774޽{رcB<+]@GiSʴ2i'OD}ĖcccPuu;wovAAASSӏ?211!OjjjyyQBvvviiiA}ʕ+W֮Y!}v z)ANE={ \nkk_xVħCO(NU \Z5ڱc51//!ԫW/ B666555|~ B...aÆg=** $˗={1rHН;w133C߿ xVijC@gi#lmm˵23P?~9sf=𳹹ojj277:uG&M舟msw}g}ٳM6ݻ71|||S ٳg}ڲ~a9ӧBuBfff)))=rww={6Y,́;m)B@l۶ o;uZP֮k׺D"Hy 2ŋ!qVaa!~Ӟ={"V\g֯S$?d͛SƌS?NmHt> GG!!!ayyvv׵k'48 tH߅|)@ws @At?0i ́`@!v)))54'O.//}Ywxxxmmmxx-f^^^G;t.&PeVMQ.uVL2eʔ 6L:599ߟub`vF:UPQGlW*xԺ#BCC  E?^A^ޠ@Aխ]_~BK.%---WSSlKK 53gF%J7oL:<<)++ښV/P.ȅB!-fɆd~\GMn0&ZJ4j:P(1{fe˖ wwWWנ5kְNY N +d *0yx9L0.s0TZ]]MDuuT*E1 :9A bUUUA :4229'KJJ𶵵u||B8|0NٶL&366Vmll/cbbh͝;Ç%3|^G.կ_?PqyH!33K(z{{ߺuV/__IFs fմ~&[J Z&e2>5ҮfTTT$?NDIIaffb1 fFeǴvSA@` q]u}jllCg(6Oap*/y^ڶjo+8kC4V۷}9X8a$BĄ;\.}6BN N@[`ԱaeH=ڻ+t|T7mv-NE]/;{͛---N:]8K3hsIs_ڊ"-//O gff"f:033\ܞ/mujleuxe} + BCCYp!Bh…φ677k;|uj pB(-ͱ,933F[牏Dx;!!֖pR'(g]%Y;g֬Y?AӧO:t.<<ۛOX;ۛ,NJO,eCF[=o:Ķm۴j :p7Dz̬S/%Y9yyyC imm]xqrr2~ GZhQ)[>**GPpN<[=s s & lmsdquZ궲;P8Ks,ϚsXr?ONCR">M:^ ٸ833e:o9̖  U8ޘm9%gfV+:D9wCDyyuTT.H222OdddI$u1{QVPRg@}`#{tnmї_o_>o޼BGۭ=ut/PaYs}4@ 0119wo , @w;9#. tsI,@y tGpt\a;sȑzK۱ރ;OZZZ t/P. } P;9z,>>^Q^9ŋ|ҢX@}#J/_X@c'Nlll~{&oԝ/ m^rp-S٠}^t<ڧAÇ|!C: V@5  ́577LS0@o[WWwߕ;88gϞ 8˗k׮UR&+xt\֌?^!djjxbPiijxX,o?b@y t:Ǐ/ZH,_zuر*,PT0@GPϿ''Od ^߅}WWv k*--fdd$ˮ] v_|9RCCCb1L^]aaaffftA<剉rٳgϟ6mژ1c>>B۸pjEΝ;ͭN8A:]vYXX6mJ'OI$77 rssG)<<>>ﯯkkkur\~sCcGZ"o'$$g:TWWMСC#""DFF677Sf5lffHMM>}:m/fdZ Y~ IDATY8Ғ₋"C4 =rBںP% P>}P 3@dJtt4BH*VVV/^D;L!͜FPP?К5kϟ)Qqq1A!'''5.8D Aݼy!TZZ|3f B/ uuuB|xp >5BP&.vXmm-" !Կ(Fu1j-0**j999$P8t˗;vƍ!DB>&Sv~ܾ}Q-$ݿ!j*WW_UPw^ȑ#qOSB9z]9Q^^nmmRZ;BzǎԒ{ Y֭[-,,BBBp H"[pW׏Kɢj„ d eƃȔ3f Ν;G !TPPZl=Ba}}BG9s&<.X!tQ4.8z򥧧ʕ+=zP(.\0g RSS{~ h>gΜبRSSg̘Ď;]VZZ܌/E@]x`dd~:y&#f͚U^^^__F^Հb;|ccL&#GGu1FJLL JMMU_?@ATVV\^,3!˗/k;@̯txmllB믿fAڷo_Ϟ=A/177Gx񂚭b񳱱}1447n܆  i,b AC|V#nA7;nBOu= Эt{$s \.7o^eejjjڼy3Cz`N>=~ruڵ+((Ht9ƩK3[W_ʬ Wb5әv啝i.Ǐ"Ж6jhh/ `dddgg7wpnm] GYxg:D7O׮]4hرxO?455U}t9֍.˭E@ Ȁ,\pڵf***Rk]Zm~Gq;b;3Yu{vZHF5YIWw={\z!tՒr6Dm-. 3^곴$,nf}؊zUUՊ+hk^M>.ǍmtZ@Ձ#6׍GMY"5ۙ;lk+[&]3AN2%%%eʔ)6l:ujrr?8;|eSggi1p,n%(s r_>؊: %W$IWJjzT\71VJ'"r'|\#&<4jfue˖ wwWWנ5kq.3g. O-,-9ڽdSӺx^#;UuctֵY\D[^&K W\ܞ!*l蕵c+#F*++㓿3*Эw.^؟9rHuʕ+Ν@_xŋǏv횭B=ztEEEfff߾}Yza HOOG5|ΝӧOvPMRRdnnZQQԨ+..=zP($W,pExRMjuJU%/)**rpp(d'NXcs{24lګzYYB˗jzS(R1c$&&cccobܻ/X`ժUmVտ7Ѐɓ'qӦMbxʔ)?&ƨi>}J-ή]QUVVZXXpdOΑ!..?nWX#s tZu< ?ZoTXXovZxWTTogw;;O9f̘/;>uڶmۦM駟zkiʇٳsnÆ ȰqƐ Ϟ=suu@ǵi;+**h UX{1b beeF+3n8###l 9'ҡC/]D>433;z={ضmuGÆ 322HMM%E!QSYYYy+VH$>믋D}őܸqcȐ!"hȑ%%%8qڴi.\ "##wއfGC|el~eeks>}8::rs4L&e!s{K&A;99;wNP{|! w-cccq[;cvvv رc8}ҥ{eV?~6+IKK300HJJA?~|8.**ٳ'ҥK]__OV}X͊h"""ƎKăZ[[>|HҒ|haaqر ())177_f^D?l̘1=/n2FB0]J^)ճgϮTIiEm u;11qڴi8OUU/BҥK8D"155 D+Y& 2RPP0qD}|777jθٳg튊 .?`"77h ƌ{ѣ۷}||̙cmmm````` J]N:accyfKKKlkkbj}gϞ}ܹs {/((6mnlة|pcmOWΜ9o:o3qơED7#s Ν;7~xuELKE~9~nnnNOOeee K\HVVs| nݺE~=|LǞ?Nܹs'O---Ƙ4999Weѐo1͚5kر?nmm=z(~ :ue2yOsLp۷Q 22{ͧ6 SgNtƍ#G6LB*,,́w'fvyG#=ړKB`^w.((0` -555V222‹۷ɓ'6lǙb1Ml„ xu믿N^4y~ o>v钧w}W__?pz޽i,--p(_%bĉ/_&֭[?-?ͭ;pAp!ӦM;QkD;NDEEv8mdllLVW^ϟ~all "&&I瓴9݂Aׯ_Wi;v(::Z*:::[_q)ȫXbB$őoЖdlllHRZ\]]bСC?ʕ+Í7R+ׯwE4fffS|iXXT*]vѣqC988Dŋ Gd [[˗zJY)k>Q8yѣGlʆIf###SSS'.\577Jhᨫ8pݻwwý j[+^۷oߺu:8~Ebqcc#VƎ;߯+22Ν;aaaD?iƒ%K rJmW7#sͥb࿴}HMʦLUUUjuڵkfrdKJJ 噙vvvS_H@`tOmU g28mMԭyԩ*++yH/vNߩ0"'N{wmQ(&&&cntuq ,|׫<ߖn9ejjz5O***yh́4[[[OZ[[[ZZtt=Z(-ZDKmyޮ8η]UV]6 STT/)**rpp(d'ŃOlmm~:7x#))|x%"M6 2DP<;ݻw>|Zz'/o;8i6oܫW/##S>y|u1RF1o̪ Sqq1Xꄩa Q;?sW߀BBBkVk&ݫUR:csss|A۷ӧ|r3ŋOEI駟zk֬!b:Qm۶mڴlgΞ=;}Ǔ1l0 7n 3L090"]mD4hŊuaLqƐ!CD"ȑ#7@] !t!r *++̎=hnng mFѣ8szzaÌ<<vaooHGGD2s#FN[iä,['߿䔖ի?!4a jjj$ 3*.uD4Hx΁,,,;W"bٲe[l* HCCCׯ_O۽rÇ={gOZt7|Ɋ<==e2E[bE)swqƌo̮c-ɓSkk%ޞ?>ŋ1Rcc@}]kkÇiߡPO%%%k֬133=ݛO&e!͙3ԩSԊ-ZtAgd2YY;Ãk>_"&EmЩS"""lll6oliitRhh(#HLMMqάAJf^ZPP0qD}|777jθٳg튊 Ǐ{xx0[KBYEܝqaiϞ=ŋs1fױYPP0m4~ϙ3@*iӦ*___|1Ftl ƌ{ѣ۷}||52:;;ںZ~&܇Td~0) )??Jz̙3vmm-yA4s87n@hTJJJÇO<6;;͏Uz̙3+**:__.ڿ_SN~L&?S ˗8=++!7||ߟ<|LǞ?Nܹs'O---xɡq+HSXPVVF0LjHجYƎ֣Gtl1Ftl۷o6d2???eGlǭL&[pa||ۿ 8Q77n9aRRaa!mD@||<0s8'OΛ759ƍ?~@^{mҥR-bŊ~7Tٳg߿_.'%%8\./**ڸqcAANiss3YEM)(( Iq3?9Μ9wލ7t֙ fEܝ;^ҥK lŊˈX,((U  .lٲի׹s^zv?)8utl 9k2lʔ) ˬvaцIYH CLL ɓC Q6X ѣG@$@aɋX㧥:t?//'+.E"y5A+V022B]| GGG;O?YZZؐ?JV$%%C~+Wȇ.֯_?hڻ;8idkk|W^):eeRC¬RڵkGӣRuc1~[oՙN133ÿH㫃5?ŋ bmѣG|IK~͚5FFFU/\`kkknn,JѬQWW7pwm:LH7r wLdd;w´رcGUU5Y[oo>C+ä]K,4hʕ+񭪫B:rӠjݺuwԑ%''߻wo{wBS`xuk儆bI >[[ׯoذ] Ѕ\r|OV.pHp_:ub„ [l} ۷i۪0xV $}?8OzӧO޽{wԨQiii*mP5LGНH?޽ŋD={\rw}gyMLL333~Cޤ%' IDATG%뗞W^-Sll,)5A+od2___H{j  !!Ύ4ZUii\.v"m~ h Lj'?~q6\nddD{СpoooqW:u{СqqqWfh[ZZ]\\hMPw}kkkéw&%bʔ))))SLٰaԩSie!bƠy:,))qwwoɓ' 8p… Qi2$8}4L S:&O5А\SYby0$UVEFFv0D~09#"022y&Bt3f A B:oii|BrNL^Ԥ,pggg|vZà+ iՑlfZ93&i>qx;++uuu ƌC]\SJ .|hРHڊcǎĐGm===꨷E-\O> f-Z k EnݺE!oݻMLLRݻf6yu+0p_E"Q_:M1@1"k֬Yx1D"qss "22lǎÇXnjnnnaaB{V}aNAdffzyy Boo[nQDϟQRRbhhZ5@1YuKK/))Y. 23ƴ^{mΝ}100ptt999ƍ322&"==]o߾qqqd W\H$K,0aBll,A)))^^^FeeѣG3fСC81==}ذaFFFA[YY]$JUD]/ !DɓDfZbeeu~ڴi˖-ӧ98k۶myQeXb<X౦&X .y򥧧ʕ+=zP(.\0g 4< 𶧧}iІ X3@͟?ɓ'dbqqӹs GAĖ-[rssRRRq;99z tҽ{2C?~x jjj$ g'm9ʕ+Wۋb??(M4< ={m6{{{" >˗ʞ3:y򤯯oKK 5qٲe[l B$Qmmmۋ-:x ގ!/d̐۷b jXQQQϞ=eɒ%۷o%.]o8/ >22rܹ_Y̙Cਝk0-^8((HY3#xX ɡTVG a&!vJ;mWIAd3ӁTp=ސJ,--mhhdsvD@zRTT=iҤVK:MvAAieK.<ԴxΜ9Rz*vmm-Ǐ24/q &NY]tO>%͞=oWTT!taÆD"eeee 4Y.??"Y+JLL6mNXf8dGF:88tee SNKd!Hɱ11fU<""#@[Loc?-_OOOݷo_]]ݓ'O6lؐ/HnݺU[[?9{uy\ ݻ7 Ғzj'O駟kȐ!w!_yzz~wk? Ҟ={B!_YEb_Eqaa!5v֊\\\N>]SSj*###-!,Eʂ6mwii\]]޽ӕ9|pLd!c``]%Č;vH=AVVoiig;>pႭyppT*D^r,pƍț^Rk)))Q֮w_?)) '&%%C={ѣfffX˗uf###SSS򷁬V-J׭[G^{zV ) ~Ν...d2R)x`&2BɱD0Sl{烯8p 9y @:#lW9<3ر<&m~vr<""bxS56eOKDDիR.۾}g}|ͬ,-^f,N[+fws*YpcSjW P|դc{I&'6gggƢ][x{}݄rz @V;3uW_}>}tCCCȁ: 77o^BB˗_~k;"t ~߅U}v2F !k. kk*]X(&tiEQCb)66?/---Ξ=yfKKK++SNgUj۶m^޽CBBZmZZZX@:cDT 3gF%J7oLMtstfx&ʚOKE 8<<ߟljZ|ښGSaɬ`s8F$::Z,޽ ;wcǎls XLwС*T2Fu/f9"<Y[[+ÇyV,kyyyq7l>-]YQ̀ryLL "eT(=%>{L)Ny ̒ڢܞ>}:j(CCCꪥfTU"##;"@:cDT :Bzǎ{1dC͠# s7teE1޺uEHH9W_SLQ횬̘1|rfeeߟu111ڙ|,X`ժUm&jJU3: )MVVV!D2{˗13ej,~ B++6s֭1cJ inn޹s'={u떓S?>f̘5b˗/ 'N6mZCC+O$555!CTUUc׮]...箇@ uByyy jkkk@uE?7'''矴 ̪*ss_NNN{ULVQQbaaqiXRRB,V^^gf!!!Y _RalB_}׍wY[[?}#vOF*@h0xwrX㧥Yf@͟?ɓ'ǏOM4i5ܹs #FK.ݻw/3NZBpr<661~ƌ山81::)--mx/@+xѢE2 3c?dȐ 6H$___ KKK+++[I&7o6 ojLd CXZgϞϜ9xܹ* ӇOH8g{{5kܿ]2o;MMMkkkׯ__QQqGӦM78p 59tRhh(B"Ǐ{xxYfAAĉ۷"L6zhQiiNN#S|rJAb&!V͞=oWTTS%#Ǎ?|ÇeXX؀Ə RO;SMLL;X^^.Y)?a΁hӔ2BAK҂]&[n :5Lヷ7|HN>|l35xaEk; hZ>$PZZ[]^Zŭ׶**K+P-(*(J T "%av:wf,>993N&<'.JLL:uR0ԩSK,Q<04@yVX8`rEnŒO__?...***++kG0DGG(߅K\\\=*J6mDܵdiiYSS6ρҞ={VTTW_}xysssnnnSSܹC>wa˚FҒM6)%d###2*(D /BDI?d'Nx9aQQQxqUUڦMsB~?ɚ5ktuu1 x"^_p?N\`AJJ+$nffF<$b݆vvvIIID} `mm}ر&&&A12Oe2e(==ޞzyyݺuK)K$@^@D֟w5E0꫰0kkkM{̕P( Sw }U<<<֮]@^9*61cƥK0 c3f1Mʁr  nܸqѤVPQ?/O @AP>M}ax}c4+ Gee%ȕ+WR Yʾ鲢LJf{jbpMa``l2@ѿOrޕxÇ'Mp0 DvȐ!ɓ''OaXeeƍ $?x>_^^.k,l;jڶm۶m۪aU B/ojj:w\`` B:11)22rر BO> VVViiixa@@!N41;;fݻW*&''x8tR}dƎ m>|`?_z:o#ǐ۷#;F!!!+V[ZZtDΔ*a=D{G*. cnn~>q(eðӧOӧ0>|BXRR;w9r/]555?&^2O`,Tp{xxc@5?~L&cLKK{º:wwwYcu{ 7nXSSsĉy 0@$ߟ:0vt…?ґOsO??>@]ZZZN߻wuϞ=;w sssO/WVVZ[[>--dQ @4'ϯ3fdffD/jjj"xBVH$裏RSSwرyf===z< ωaN/ӯ`,TpI)JKK)pq2&&&߾}pݞ:}}ǏZ 0HDB8!|JGS.x⪪*9wi\ aǽ{?:fP$?+?SN-YDXdQ @C4T*MOOwvv]\\=*J6mTRR"P$M>b-^˗/^[ӡxш#KJJ6?ZZZߏq)K0&yjkk_'0mmm>8{!!@ݞ:}}='#770&q~E|RFnݺ .455UUUYfΜ9rV^1i$r_vvv555{ٱc^RQQQUUؘ7|rONN622!7zc@Yȴ C $**Ғ5"Ǘ'NЂ RRR^䄗3iff&e%==ޞzyyݺu(711o zDYFWWð/ʚ7uuu QˊqIII&&&VVVAAAܙ'O&w)?@ʁ0JԘ222߿Yf]v ?uڵ gϞ% MH|^=r 4oܸA'Hbcc---bcUVVZZZK>ںZ8h%K\v.44t޼yꎨׯ߸q㒒D"5j͒!B[[[hh(R5kVMM xb萫궶RڄC @AQ&qnvڴieĉOYBZnݨQ/_6P"5<#Q=#ǦЮ]\.-y.\HMO*h^ i…Gbmmoϟ??00 YVVVgggmmmqq/r JWWW9 Po0aBzz^PPpለJyu-^H }D"S!M6m%]|Օ:99˪dEEEC Q2~PSb1BWWwРA~~~URҹs<=Vf1ӫ{Fu9+秥%&&=zraW hﻹi~ݫd1=Gj iȑwQz(hɒ% /^$ unܸ1qDuG:͓'O^PP{-9km̙3'kMT4iҙ3gҵ PS@b^|Y,Ç1 0`={tttJb"655k~FFF+̙3xYYYcƌr)))rz0Ç&MxT7oެ={69~GGGEvJVHzLNN:t(_~)kD"byxxߟSC=z4srrRH8>_^^._4㓤CCCR)Qqq8GGGʧBhDjðݻwZۤp8ZYY?!࠯aŋ |ƍ666rzNLLljj;v,^~0SSS'MD,!!!0mmmE"Qeea}]Y#BYXXX>55U__(ozH JJJjjj>|xWCB544ə ԅaOWTTzjOOOcc㸸8ɓ͗.]_"C^@(677;#/GDDHҔ3336ɕBa{{jiiivvv!WWר(DwjeeU\\>}7O_̘1###חK4.?6/WWWp777r!;" :޽{>51BH*YMO`D7yuF3{찰0СC.J(9;+w`z77Cə̶6r+KɁvڵqFrɩS;::ȅ7o޺u+, x2*++}3tRRF$cQBozH| ܍B"YT.΁|>_f-mbbeJge0$WnkkuxxM~60H$XXXoݺ588xذaׯtAρFf)%D!;"p8.M|eeիgϞ-g]5oz<͇N߈`n߾mmm`eer]2QrvWu$ 90*}<ռyΜ9C^q۶m_~%wy?ŋ/oߎ$0?ӴiBeeeu?~{{{WޭA<x&٪UW I//_3ieespܹDByndmm]QQ/WTTgѺB諯Zz~P+zqKKˣGk=<}a̙37mysssv9RPMOx7l>}#қ1c=,c9EY%gQd1bw}"kǏ;yKh-r9r$2%)"7--R377r%ܹs'Ncǎ^UUD %܃\\\'B3s o߾M>"HDэ?N\𔘘?%K!avԩ%K%;99lGG/,..xĊ~)~ n|>Ν(u(GFzNzCCC###r?@zzzAAA-[eee{E,0CV~l9z@f]]]sssYE`"U֯_ϸAq#D)+zI߈{O?a؅ dR|eOWٿ?xFrj%\.\2z۷oSRt߾}l6SNBFڻwD"?/rssssӻտǏoqظ1x"$Yx<~۴khhOtuu{qCiᱱϟ߻'N(gPW@}oA9.(fۋ/v'O455㏋-Remmm*{OON*Yŋcc㪪*J} 0رc433ѣGs8ggtPXX>'55UNﹹ!`M6ĵh!ɲ~z]]]|LJJ211 "gPBb!s\///CH$...r5 û2{OUV -ZHAi"m(G%B0///,,L݁PܹСCVZvZu3x_G3 ͏P{eddܿfͺv@ HweGm޼YQennn)))K.҄lCC@qpmgYb3gB(0@,XرcE}40:p@vvӹ\F3 Э[oɢ!9mFFFEGG%֭5j{-:5W{͛&Nxر#G;" &S >A.6m˗{7>'4X,ƗxŋA!茌JKKMMMɅ&L ={6Ǐ/))QmՁ@W2eJ``͛7@V9ވ#"ua@ `X/_,͛0>_^^ލa L P---IIIaSJIYYѣGB JJJjjj>|[뗞 N8QTTreN4crr)S(Q߿>==L@G*AoA 0@pu9 9110[[[w׮] 0~߾}7n3ga~~~W~'MTTT4hР+V*'#=uM<Ǐ2DكhȁEEFF[_S?pBNNKBBB嚚?ðu]777YDS>d<ϧSGGGziiioV "p=z, P`sss< VN`Μ9vvv6m*,, RbTPkjj|>ωL111qԩ?swzzzb&<==eM=xrR~~ȑ#)=vtt>uԒ%Kz4r6b``l2@4ĉsE{+-,,L*ܹ/tppHHHhiiINN޿MJJJ\`GV9G(߅S°&''(y _o0۷o۶ @ Reĕ<233{S=RRPP0zh윞s\//[n!XSSϞ=C?{LVM7'''5kbvEp)))$KAAҦ<H4)@v؁ھ}{uuoaa/:u+W0 ׯߤIϟ?p^TpPFZcڵj }WV-=D@% :~8~r/pÏTp_`nn~u< Rbձ,?'*>?\ i/~'|}}-,,+ex[[۶mTl!P8(lT*x{=???u=pwUe=9*4H__~~~344Tz ?~|{{СCBĉ t uK'Ol޼9;;R~ׯGjL0 sss6lի &LH*22rʕuĨ+y zэ7NZ]]]XX8rHXL Ϝ9a؟9vXr6[#ݹs@݁4a„;w‚Ç M|rP7^GFFFFF mmmpʕiӦFFF .\rokvBH΅G 'L4{lrǏ_RR߃:Zg_QM!k8p󓒒ZZZT,'O믿dU`w2dH~[nnn!ϟ=qo-&cwDEE߸qC Ѓokkr]X-`?Q~Ԥdy٬Y;&"9~mҥK:11)22rرc޼y!jgg냱&c)SP ؿ?====&#\ ?~/MzyccSNǏ B[[[p׮]~!v+WD" 1 ;y򤃃edlð|Sn޼ؐ!Cz24H(/zRݵk˕ՔC6mruuUw2555SLwޒ%K\7rII{GyЅ vڅ/vrr*..nmmݳgyƚmb2rOoHKK{뭷@AYZZZBCCG;h ??~M)-kBrqlxxxii))mO 1 (k֬9zhJJ+O;?~tq@@XM GI)ӣW>u@AA'OXPP{-uAjjjlllk'***00PYibII =_qqq9zT*-++۴i~scaa޽{@j2aXyy9"YZZP |||z>@vPťGDδ̛7\x5OOOb]ÇǍpoݺ޽4&&!࠯aקDCwbի]zU,پ};'Tc\7776v]349ã'p8Y-5Ο?g###ssg~FFF&&&N3 MF2Rbll\UUEp?JR5k֬Wdl!f]]] .^H.X %%\M"ta9zșC޻w!x5TK:ydssKTbffGH$QQQhR1NJzӧOqӿ3fddd100 qQQQ1cWWp777z#EV$< ÄBa{{:::r8|ڵkq5꟡T* hڈx-Y1H9MNdCo㥦J3ˌ4aKK͛lO Dn7!#9 R9Ӿ~z"}}} ݬ,{{{}}uϽOa ceeeX,ɡܹhG__8,!''G lWW\z`8C>%>}FDD$$$߬ 9oGѓFo@y{{޽{̙nbxcǎ+/Fg͛7' B(,,]!@@9M!n:e5X]]^t ðիW8p'h&O~G麺=o~7n\}}ittٳ{&@F?g_fffvvvJi366J)m wa߅2/_9sfff&a ,8|03FIkx-477ǟ;wN aR5tgXRR2x/_~g]-pppa ˖-׏PJT.x*ظ~*m۶۷'((H)MCqcIDATA@_sڵ+W6@P\\fCBBl٢f@ H$7n<|0Bh̘17oVJǧ>>>Jihkkr۶m۰axhllp8jN;T@{ ׯvGg111JoW&  ZMeiPssntttlܸq= 46@Z*dս!AYYْ%K233Ǩ,8Ћ -[& }}}Gƍwme5aعs333; ocJL:;;8陓}veĈawޅ ϙ3`j4@:ssseAIGeieeȑ$SSSe5 K; @i/uڠѣGZZZ~wӧOWb˖-?~СC&h28lP~.\x}&@8HȁPAgNHH011a$7oތa# @J$DSSڵk'MX^^@@)%%% })曇r{Vb] @ A/^XtܹsϜ9N/]gg3/ u YO:ujuuuaaȑ#b1^x }YFY :||󍾾-edddddȩv'fffz{{ aÆ)7r Z r Ԍ{WUU:thϞ= Uf{\\\Ξ=X@C5]biǙ3P{V Y+T~ðe˖o;Bᎎ\.A(R/_^hm no˗/r\''QJJJ~CC;(P}'oB3g$ɕ+W233PK, nhhxŋ2YYY <;??ѢE4ZɁ"##cbbFprHp0 cXƃ :wܖ-[MMMO>oŽ;̈Bkkd={ج,ggN BEEEu7lؠ?lذ =z퍟}6A rrr f``qFƚ Qy^^'&)rhg:7c5zb8//*..NNY,ֺu\.j]x֭[C QY6P$T6F/wuu oll wss[J_v횹"%300 ͌Quttّ[NII133C͝;ٳ7oΜ92䨨(D:ydssKtuu%"J)9"H(sv!bDu}z}1V@PTTzjOOOcc㸸8E:0L(3_ʡE/ю#"C wfKRD"axkDeE~2!!d˖-~mllGWRZ+**5jTggFFeȔ.` y)5utt(53&HȑPUdh˚:r}QrCbuuvv:thذagСxyNN@ `ٮH9Ч~G`wI'$$W|~||<}ȟCvv6BחAo0;;AOO/((H~eoo_BZ$9Udhg:7c5zNNNl6WSr +2X9ڵ ?UTTT>%K=Tֈ;whcۃQXXد_]vWjxF:X,}}DJY,CLL6QT6Xc_վo@YWwoJm]] >ȁP3ؽ@-3{B7o~>fvgϞ-_իEEE:::,8&pႻիW Ӧƛx~gM2E(w@#. 5_cccv @mZ[[Ǎum/ hwp8[nUwDz5v̙3ƌ߅l6{ҥwޅ @= hB__ju#0Y/0@킃cccl@Y<@ ,[L  @ׯ_4,9AeM ( @-i@) hH=9@+A!ȁ @O@b 7nؾ};㯦NZ]]]XX8rHXڸ ޕ+#####CNP v` h5؁]u9^G4/Х>vY460@_9bx<ވ#сEA >' z !vkJ$ݻw;"<yĉ}ǎfff" <==l6=+kkduq\ rrr f``qF252z;{122YYYΝ!uQU} ~"ZGy{{s\''۷oˉRN%Nz'BiG֊r!}iD=//_%44xРAΝ۲eӧ~@iSd WhmmerP܌:tёfgg% BQQQ$<<5 J;R4%% !4wܳg"n޼9sL򊔨*Ҿ@ 8rD"£:ydssKO)%Nzގ+!%0 ;wDD"777B($$l== !|~||~=Bח(+~J.(q'|zzzڑ#$/ksrrvuu͕Q䌗[Yr @2?ث233,YRZZJ2HZ[[#""ܹK]x7X,}}K[hȁ@ߤp<#ȁ:#ȁ:k u[VTH;IENDB`libbonobo-2.32.1/doc/api/figures/storage.png0000664000076400007640000014737611430735223015655 00000000000000PNG  IHDR\/sBITO pHYs IDATxy@G $#r*DJj_kZUQmEU^xTZ xA5(VECD<*$Hcn !nfg&. htMGu(@ۧAR@ BВ )H  H  H @p8@ݙpᘙ'@Z=H 'BLJ[B^^^jBڮ677WWW[nMH , @;I!mS__j``@O&o޼p8<oŊ}\.~" ߽{s8>{neG===OOh B:tp8b!T__p^ڴiS!4BڎuEP&=x!UTTuѣG+**N8Q\\'[VVVNrqqr9.\[[Cn߾}_ާOPؿwcǎ|;v찳322ZjBh׮]˗M6 JKKB{yE>} LCh$J!u'Nƍgll_ŋ999uuu#G,,,:thzz=~÷n݊Zh:GyQV /\pPWVVV[[yfЊ+l +>ldÃZC@@ٳB7o,..& 7x8ח,@ RqFPcc㲲x{{3FɆ H h;ͬusx<޴iVΝWŴgÆ ƍ{ѣ:2"$ Y`۶m磿ϧVVV&&&O>ݸq#BhGɆ H hÇ#"""={&JVXqݭ[v )lW%r8ÇwÇ'NJ>gPTTTUUUyy ?N 9r/^211IKK+,,tss8q"Y-$@AR@:th…...}Ͽ|ܹsqfV BFFF;v”9<**KNN677wwwsΩSb!;)d'OI [Ͳettm!4Z@] hIR )I!@I!@q5/V ܼׯ_;;;/Zhʕ+o߾Xh9xutt4uvBxˋtDH !Wwb!hW )/ ~'~~~QQQ A{I!eBЮ@R eB AI!@_&`+,˄,B2!@{'oBN@R]SLb!h' )Ю)^&`h\&`hY&`y 4_vvv~m322׬YrI!v*22rڵ=J #$4B۷zuVufnnhi\MhF=X"LMM?ÖMH $AR$ OOOt255@h`V{СC3335m6p@MGڝ}ԩ/^:t(VR@{zzzN4 P7H h5sa P7H h;. y!I!VB B$Z PH &&he /@ )@^Mh¨(֗ty>(77ɩeCMB?G]]O?R"i:XZ7X)WZLjjjzzz@+BI!@8C`gcc)Z啯X>} &O~z kMf͚o>@xǎ?~i(i))o+..ׯ:jV֒ X)N]]]PP/@ڲs|>gϞw;$///>߹s={0'Kr8fUU¤T*]lapppuu5y֭[\.\uttQƍ366>|/!uuu-i1oܸhƌ555Bd֬Y_~D"vuu%S@ \\\޽K?722ر͛E6֦ÜM1P'{%hm!/TK.]z͛7ƍ9s&>,**ݻw7ollUA%N֯_֭r==KYYYFŋ/^tm…|TTԽ{?~JOO{naaaYYYdd$3Њ+JKK򊊊"""|}}MLLRSSqᔔ@Crʊ씔rFQڴx"^>V2$5*.._|9B:uJD+@{'A|oWWWs\Z1''[>y  ԩӽ{mllb$UWW[YYm\Zyb۹1} s111h5E6֦nukmK.!  h ) N PyMH YInGtttĿWaUa\.WWWWWWWGG}nܸ1`###1yn]]-y*A_uuu^zejjZYYK33ׯ_SBUۨ7j@XV~ bpM!h֭[|rY#铐PQQ{KR d2YL0!$$X&}K[[Ǐ7B;A C:tСC#F033N=]am:DI!h /Ԕd2Tڄ؜9sf͚UPPP__k|>/$?7o^qq7oUzaaaSLa-pŠ \,((1cƾ}?c !'i oިamxh)ojׄE^$A*رc\.~SP:Jׯԩ޽ɓ' ,!!Ņ:;;ܹ|6,,\ UqFӧbb̙3MLLLLLfΜIJ;wdb 7m`FQtfS)_6D埸mR*I!*_#pM!! {? tV)>U{]TTK<oW\8qbFFF>}Z64@c`/ ,PP`РA2,;;Ţ4V Abbb"oTRRo߾ =Ot0#&..?ɽk#@+p8ZRI W֘%<<?w2@ў Bfh GLk̑ic@{If]緁?,4SM"ƍ366>|/ejjj>s##;n޼O][ںuEIe˖GWWWbuuu-=Y!H$f255555/% ceeKNkk늊 1ϥ7o:88DGG+*))ˋwyϞ=M%m0<ͯ>D^ag_d^~PB^r Tۮb7www?zhĠG5o&£ {+-i/^tm…2+W(**NIIa?ʪG_֭[YYYzzzK.eݻO߈YbEiii~~~^^^QQQDD ~G3%%o߾VVVt6>>~ȑ?chh8>쳨wޥ߼yi1a7+W|uQQݻwc îN@hF1wºs y54&8xX,n߄֛Z{d媍AsrQbVVVx;77Qr,ߩS{ϟm\Z崓.//o?|ΎǏkkk ={IشiP(l0N*''[>y1P޾o瓕++vC*;TB_㍜???Pw5ڷ'UrOhh(֭333BW~B=888$&&R[XXܾ}ȑ# P(xoߦƍnnnFFFK.5HjǙM=euhx={r\^ږ^x\x;j HsA=mvʟ9222ءCcddD~WHsggg{ckkKnr\]]ݎ;c;T^^Nqqq~M6ܯ_Ǐd˗/3FӧOٳgqR:uҥKzrrr:sLcF;w䆒Qɫ_aiC И&$W 1___޽{8p@"\pݝmPlll}}=޾}H$JJJJ$ؤRiJJ3ugnn9sz)9l;::*::LJf//]vUWWz̦I:Dٺu6#F1o9r˗;y10d &CQg(Xqpp{L&{-[C+򎎎Ϟ=cGBj[n޼ٻw+W|̆X#|왫MՅ :v؜ J2QWsV ZU`P .N|4FԊvAR8#_JԒqqq~~~ԦuttVܹciiIkG(p\.f]]]~5ڱdUׯ666'NV\9={r8BP|}}o߾ #fׯ{xx}ruup8ᆆnnn 98tss322Zt)իW[YYqRcSYf_h-RkcmxͫW~~~8h&Z!o.{}Drwwwځ˜T*MIIn"$''x<}Ekkkŕh&K #f+Ǐ>zhjLLLuuutt2=b2oooBZTFFF&ꫯ,ySFVV*##!Էo_M'IIT*rXAAhGGG'5j+'qj?E"A\.ZjM(.`prss{%fΜye*-=jpphEgnnA ѣ>>>bXqdOi-R7cۊ@R͛!xB6O* /--%RcccqZ<߿UUUBBeU9֭[{vbݺuc#&ԥK>ɓ:`<<<Ayxx"4iҵk~-[;̙s1}}}%Ǔ"ضI/^tE1@ 5!T`X3yyy9ifHSSS33(y*;PS 233\[XHq  /^XZZ=z<|ѢEKpuu500Xx1sBk֬!Rϊ'u: c_)ܳgYjmGvv6BWӁ`OMY۷w^٩FW\:uGZm?iҤn…-h𛯂vq)))4hh'fs,ο1_6lخ]V'00~Yx={4h8d-(NI2a+5mڴwޅ|W666cǎtD@S@R@s͝;ݻwѮh" Xt@&077t5+FBhQeeeΚ5k֬Y* d׮]#FԩZGGGG&ͫV Ps߿P6 IDATӱO4hݻw޽*6c}˗\bgg鈀`300HHHx?~'TTTh:"E )h' $֭:::-J266NJJypIL&t /R ϟ=yyrrr@@m4 "FFFRݻwEcO4Ybŷ~ABPhhA!]Q>h!xcmNLL BH VBЦ̚5k׮]B )mٳ9/\nݜ9sgƮ)@}fϞꫯBPqq5kjkk7oެpJ!hs̙3|>˖-k׮t8@cLLL8H$t H AyÏ9uVM4 _ *L;O?tgÆ h<BiB#Gh$-I!h9/$-I!hS֬Y#Y#F8|XX#Z80 )h!9ӷo_5)MZȳgt X)mʕ+r-Lc}7{IMMt,@J!hX)@RÇ_~=dȐ\M=;)))9]]'N 6ŋEEE@Ip8AY-jù7&Om4Eڐ33333yյp7www?z(ي23 jpfݺuӳ2eÇD3'wĉy5*u044LLLӧN}}оh]RUTTf͚`ԩK,믿Ο?n H$ }-j)$==ʕ+Q=8ݻw5CCmݺ&::x? 744tss? Kz׮]e֭[gfffii?#V^meeHBktppHLL())}#GKd%'44?f~z@`ccsĉ@`aaqaj/^p8/^,--/:% }}}y<۷dV[cV\1߰a3gz:v?ɛbZl`,--?%S*|} څhq~-BhŊ:.B111A… E"QRRAFFF-TLݙ;gΜ={ #GB8Hf ̚ɨy<޾x񢵵5#F1o9r˗)oo說hf7EZ[cV\1޽Kɓ  D"===yS[}Q@@ݻ7B͛tBhРAuI}~~>utt!HDDuu5nppTJ'"..<""Jtt#~>Ν;:͌Y3-*Z+W.YM*,Ydp\PкɌ<rcjjjӻy&BtΜ9cǎ%56}isO&-ZݻwT6oL >OZ9|ذadbڵkH$ڱcR[]]MKmPOmE__?99Y$%$$)SI$cǎ 痔0kfY^TvO>7l؀߿///r(J!̨؀9NNNA|dU)f&o"_!ԥKeiI| Bhڴi%~~~k׮i:B>i]R(H̙cbbbjjR[[#-Zd``=83K/YZZYJddYTT-8z;ҥ˩S 0[aYɤӧ<Afffroݺ&3*46+7ϟ9s&!sɛVν'O!djjzŕ cccW_}%4?]v]FB*] jb^UUՄ B[lQw$SpMI!ycB̮]WYYxbM##Ǐ{yyEEE:u*44i:裏N<6mԩܹs5IZZdв璁&077߱cǎ;X_s8ݻGړb#G<| 5 $1ch:v'N P!y5F{8!ERѣ/_.4 Fݻw 67ݻwA\~]Ӂh#4[@ˊhڣGd ~=zH94#Gv9l09@sJ! 4hPff{%yappi޽{7bĈwj:޶·n7n=>ԩ:h,~^z5dȐCLnn.BKsajhǛ wEQm4&&&*N>=w~Aӱ.\_ر!ԱcǏ?ZB+x1cb*Dfff .pFt9 |}}7@MB͛7-Xٙ<!tigggcP]]ڵk;u p`.]4f+++`*uT_\@v5jΜD"Q+СC|||kriiit!ԩSm۶eddQ ={!ԥKΐPHHHIIIUUBW&G+i|Ȃ ^|Y___RR~zA2l̘1{H$HЌ3={V]]fh=^a$Ք)S6olkkP"#8իe2JT X !)ZΝ;;w.sXXX8p,e=GE}ׯ_#:vHӧB敕 6gPXXBhƍA9s!4p@UHDo1hGlmmSRRlmmU=ޑ#G6oެjժI&UWW*&J3f t,o~~͛7w5c J_PuVТE=|>!PQQBRtǎ_r8|]Bh?A!yfPzz:4Y@ARڗ]0/D-^811ɓWIg&%%KRMzq޽{ϙ3g7n@QIBooorOvv6BחI; ̛7x ~ӦM~!ݻڵ+Yݻٺ{Feee!R)ma&''GՃ@sARÇ/kD.]_|l8GJ)BH"{mۆW⤐ڱc˭ٷoBd2|MB $=Ry^{۷OGG+޽;tp0MZ]6%%L*lً/B9s >?I!:EuuuYYY#GWp̘1[<|0000%%!gΜ yAttq604V|Tj~={V__?55Ut@e˖뻺fee?~|رd;v0`_GEE}ww9u^,Dr}uyҤI666 .ӧBw۶mǏ߸qɈ#oh_~˖-fff&L(**¿@pt *o^TSN>|)S;>|8hРך|޼y{_WiDjjj~_zzzZZn[`SQQ⢫[XXw~BЮop֬Y'Oӧ/'UX3o޼IJJO<!h )흚˜={… *Ud```ooh"??;w hu೏'>>)00/^ 7m&GG+W|'N=zm4d ^:`͆@tҥKj:TV A{ÑjҤI﫪ECCøk"޾}jF*7. ))INRڋ@U~i1`X]tIHH?~|RRm`Ӓ lӦMgcƌy]`Z8Ty򥥥Z`p8;w:rȐ!C233֔%-uB/94ڵk|~3+i6]__zA5Ńz䉧7|Ϡщ;vwǎ[uZhs=X_Žy?.͎[or|iH$֭999MF3$~˗/ծ.\rBFz:PL*VWW7|괴45@|{\)$&::?˗///H yȑl??_zU}AR>>ʛ>|xrrsWPP&sH1)$㍜???>~5#S P|Yn?Zzy8HO=ֺP(xoߦάƍnnnFFFK.5zGmY9B(<<-332۷oٓ2cf26l`kk{̙=zx;aaadi 6A ϲXZZ:zhuM?zAkjjT8^T=e>F޻wݻ$Ʌ  ?mPlll}}=޾}H$JJJ"(66V" JSRR;iP[άk׮]111fWS]]Mìg֭1\{ݽ{ ɓ'2. i26e vHC鯿;v?&QWW eڰ=^a^I!A .N|p9IT*%º:UTJ-gnnAm:::QGGlD;:D8f.KkY.Yʙ{X+r4PqGH< ===|۔9s;VshG y9jBƦA_}B裏>J gϞ4Xx3f̠`IIOT9ݜ7o^ll iEuڵ뤐 XܣGW^ѻwXjKJJ𶥥errX,޹s'2+m B}}}j"(!!uC?HcrMAdyJ!w$=BZ%Bj̬#$''\ >Ӏ}}}OOHifA#oL +**hu?~loo1bșԑ~)))?iT*>>7o^mmm ݹsãQZ7 HHH:tjT .L< ֮Xё1|łQ @ޓB ~ bx;66d͚5$KK5kP455533<j3.}-Z:_bhh/cEfdd1+ >>>x}3+i3gd;BZAڤ0>>䧟~RP.]DmԔիW+sͳgϔ)9sVZ|jT2&W_{nΝ'_jY hIa;QSSe˖޽{7|cccׯ_w5$$P,Q Uߴ"ձdXTTdjjjddt)WXVVBhƍWYB\$$$8;;[XXl۶zzz>>>B^OOOMLL Yϝ;Gd8UVQ߽{7.|ڵ>}u%==LKK~KKpSSSkkx{ .9jԨ+VZJ^CAܸqW^<_~x:|;wѱol7Y' :ecSo/7 ̉c ya*?h )lBͬXB%Q)2$$֖ѣW5q!SSS-I%$ FEEd2֯ǎ52I$ KKK܆ BDqqɓ'b;>\811+T@PVVF3##nذA$%&&dܺugϞ=zdccsiX]_~M %''G 6tY]]ݻwWWW999rԤ9::Yikk;}7o$''綳ѣGb'fϞ-Ό дiӞTy{sy{{#Sz갰0uǦړ͜9sǎQՁ\c>|0_ǎɵJ!WW﫰f,X—+H SSSE"Qff͟baÆ>}ZQRV<Z&h֓'O>cPӞgT&&&\L6k,1+H +++twn1VVVO>tԪ'UVI!PF!"**jɒ%#*$⋸8C~V2ӧiiik@>@8իU" =n:}}}}GGGs-MH$ w~E|I_YZZRl4gm3HR@ܹPYYꂃ;uo>aqqq\2ϖرc_|A۩-ԡ r PG7Y7jۘ]S7j3\Z`=SQQ!ӧOTzAeWR[_U3šwwYf;ŋMGlשV HMM%y98Њ+z%?dvvΝ;oNOմn"[(7Nf֩O1M]]]DDȑ#'pԨQA^ RŇo< 667&u)٨:$姘&,,ƍFںu+N}R o?tƍѣG M<uѣ͛7j (oٰaCii;B{/_lrmO>4hBTaoL#G| kƔy A7nիׯpܻw xB111d >wJݻwۛnܸڤݻw׮]ӧ^.]δ4///ZJqCJJJ,--MMMqޅ pIy5jԊ+|}}VZ`ؙZgeeeΝ;7 ۶mQRsN5Lo߾%)J k:yc*?3LzzzÇ;wIt?QF.222:usv>M ,4 hvxRRR׮] f͚oR:A|Y > N PU^(ɢU\|!ᑗʕL =*O81{l N<)wCe6$fddp 6DD= ?njzGlllN>-ߵkW/ܴi>Ξ={길8''' V\4GGG0k7mmmO͛dCCCr2ZgFFBhڴiOB觟~Ʉ3-**Ǐ4}yoԐ a2L dv?֐2ZC|}}BK9m43g\d+_gW~ =x`„ &&&~Agk Ɠs^գGOM &N_|I^]TTԥKf/ !{i$/|ڛ>n8]UUEʄ?R$4:¢SٳU8qv]jnmȑ#\" lقbׯ;w0?o+ˣ]ys.'O6lޖJ7a>u5$ MMMٳg 8p"L{n/ d f9u*]n>|_vCרÕby|~pppyy99tu2Ss^]lYAAٳzZ%{Sߎqqq5556mZloggKf999ݺuk!#GTUUedd|-wpW\IDavCmv2yZgAAPn:99}~W\4hPdjO1m._jmm=g|c9u缚Noϑ ~+Ŀ?}Sz9s{2=O}aa2$rzzzFFFx$ 655 777ǿ2ajOOl!C"/)$Ԑ>{, @OOOt%ɓ'\ kR*8p 44TUEDD?{g GB!@ HPQA=PҟVV * WUK[9U *z Grg݄yc̾5ݼ;4vڵn:x_v^u]j-ԽxyySRoJtO~4cƌ7o溸dggw ##[nqѣGב_}U@@Ν;qS^ֲW\)/k=7o{yy9r䯿III+#u]j#Yf^~6Gc V4i}0 q db1`۷os86;~[n;@ &"=۷mqqqm9BB>466޾}3,;99yxx}7_~eGָrpf @ $:=(Ȑv깟#4779rѢE/_e ӧO_xQKKڵkVVV<?vCXXIu:]ﺲ2..T^*ԩS]"SP d2QQQw6YE!N[ʒ_FRCCݻb/^CX"*wJJJl6ŜLLLev͚5ݯO466x<5cƌϟ;699kd9rä5qRjvOY&?0 %%E. O?L[?mڴ7nCR=GEE??HMMlYO}}ĉo߾ ww5jԤIҺ[ZS9.B?HLL OLLLRRfO˗u={,33۷?ϗ=YfMppjGZӎOJew`٦_ Z~\4dffZXXzzz Ѫ߽{z%)E /^=`Sӳ핔srr/M6lss,E Glii ޹s'%j pڧN­ўKJ'vZeeebцqqq sssUUU??6U7RTTR4^$ԂœT 2:*gsX_pxj#yVM--.^{yy9|]A,;Ӈ b,--oݺx%սtYPP0~xeoo۷o#"" 544~ss3sxx8<]MM0`V ׯ_TVVXiӦ^fϟ?ZHII#no꧅'TUj puuݶmӧώ;$:tȑ#N mՌ311>t萞Ivf=@BB5^bɓ]r +++L&L`^~ƍgΜYUU~ollEp!zmDII>hРP{{{=uuu ptt~:ѥO>QQQ$"(!!A৒%MJjjj477'%%=ZWW*z $11q„ DTJRMUUUZ`bbr9X|ŕ+W{W3?? Phaa,ۤ"h^QQQZZZMM͂ 0  ]˗{6 ;؟GboogϞK><33S.⫫q5DO=6*))D"@]]0j ̉`0 .5JKKg)FZtWҹt)ZxjllSTT JJJuuuҋTxAFS(++744X,|m! WZ5k,e۴w.nqIH|D":aVVV#& 0UUp҃[iiiٽ{7ϯ KP {C۷{zzĆrʀ(abttL,++ׯ]]]}̘1w ܼy3h>w`mAZkjj"##Ǎx𡞞^KKǏ`6kkk@@ɁV^M@O O$˗pXRA˄8q6w$٤jڴinf{˗/7R{VVV8++ Tܑ\__omm]UUn``pΝ}644E@ !yL'\b@} :4''ٳg˗/H$ )'QQQP "H2L\R:TDHF2VPz(Zx6 Ix!>}ŋagsYc͕+WMFvQSSSx qǽsEGG^; . q 'OTUUhjI/'hp)b݋aXLL̟)2Dd6.n1yܐ55˫ݦhQWWߴ,,,jjjg VU鸢_'%&&fԩ   GTVVbcV\\ GaL&sѢExJnnP rss7n\iiiKKKDD[\\liiaXNNL!NmnnfT?^IOZUj*pNJ1cFjj@ طoޓZZZ555|)dIEJ3==pmߣ5o<ޑ =SUUuL8D.⣣,Y"RK у ) { sttn!=[[[<{L,_ti…1> 2^>Bpܹ(/_,ZH^?~ocY^[[[>}z/0 [tiMMMff&{18p}qq1`ԩSccc׮]/***/^xb,&I"@<Zήuuu2dHFF`ʔ)׮]L4 ?#IEOUZЪTSWWW]ݽm4119{luuڵkY,>NC7B\'}~7H/(**‰}*?NMj͛w9sE|\\.Gr!zmx},;RPa]Af= IDAT>>>L&sȐ!ΝkvkQkkkej}wMMMfffL&׾|… Y,mRR̙=deeesss|,fee%|Iـ`;McWu޽CڧI޽kM8JE̶[bOw AnƏ-1ѝ_~߾}vZg/,,;vlQQQ;?uttrssaMX<==bOܼybΝ;GG&%%}J!SF!B^NA=yu֬YO>C-zqܹcoo/Qz7|boongg݊:O1Q:x455ܹÇ߿.vԬ[.220'OՈX,677 m}}@ ^z}@ۇzxx|7r1 ۷ɓ'/]r㏁677ܸRQ"S__ߑDׯӧW̙3bĈ˗ϙ3ʍ@  AP:u_bŊB@–/_NJĵΨf׻)z=uTA|%KgMKK---\"wDGcc?cX3fx9رcKX^^ޑ#G>LJMjv눴 MUUu)))rP^^`0~'xd2e9UӦMqF;$؋'ءCϏݻwwwk}ؔΙ3gڴiTXX(_rdݺuϞ=|+\ooo]֬YoPnMKfϞmjj렠ECff <kV<ݻc/:DWнWz :MMMᚚ)))ݼyS^[ZZa>tPKK̲hHOO6lŲu˗\.OCCCWWҥK0gAAY,=M۷pjCCC ?}~ naXxx߾}?0@AAf8^~7gbb}!===I:)))vvvmauttB%Zm6>ߧO;vH*9tPee#G½ChmҺMդ'-v]eeŚ6mիlHHHf+VIܸq & ;ׯ_qƙ3gVUUikk߿_.qmg^tAu[PUU-zE\xh\^^.),A'O._,O8amm UTTpĈⰰ#FE"Q||<bffuV>xVK0x΀†cccP(pvvBRbb ikD huYUU*&&&Ν/^\r$B\\PPaɓ'=z#!PTTdddVSS` ÄBV&yoxf#GٳgҥÇ̔j\$m$3/:DgAAgÉ]q!@!Ε+Wttt0 /$%(9۷{zzĆrʀ(abttL,++ׯ]]]}̘1w ܼysGGG|JKK&<7ڴi$kkk@@5xիWֈZ/꤭˗/UUUƵ7ysĉjw$ٔ:YIO)uƍ<|POOfff@BX|9\$2_YYYegg㬬,QqGzx}}uUU;w Ɔ1Y{ElM)D||WQQQ۶m 1 u|ȬYו3ðѣG38荶?石gφpV{57a)))\c=<''FCC`;;;&)IIIǏ'y̋5dɒ^ijj?ŋ;hJWW766vdY+**UQbbbNa@ cXggg *++b1~1 +..ƿtI3+LE*++\R@[:&mܸq---݊ ]Ԕhubf)(( F6RjD%I:i.pNJ1cFjj@ طoT׵B\W\\ "|6m .ܓ'jHje---QQQ̓ᙙ3UUUׯ_̄L">::zɒ%.v!} Ö.]ZSS?~ {_\\ >|xzz:45uصkNjDŋ/^/dFSK'ل]WWwϞ=0ٳk׮eXt_QQA&q$F~$uwuuߨݽRlR]צj*M6 2$##0eʔk׮&MhD"/'jHjeT>???Hh;I67oޕ+W"̙#qqqHY{ElИAAg1(9.lnn>~80LIIr4tR5 KPlffd2/_vvv^p!ŲMJJ9 lnn*Ԭ:::/_y&j*8fzjahK'ل:tH[[[KKkÆ GNLL/_244 "E'=!!w˖-_VVVjDgZ/II[wTn``2iҤGIIu]Iԉ'&uu7o\W?\tIWWWCCOKKK(ɭLmllf͛ ᆆx{E%7~ !UV)**FGG˦X,/TTT8@$u vjn+{d/"77{ȗv^^^^,AAῠ3^:HMM -iGP8u˗/WUg*n߾ߕ/N+ڮ|:Io>F >Ԏ?U fkOHH{d{ٕ|zme|>wm6 ön݊:ݻwEUc̙3nj3p@|w֭!C|?~nQ衠'ϑ͛7Kpz{DaXl٬YvqȑLJHD8vv.߂y<Ś1ctz1mڴ7ntWB.,׷&%677wف?{_~p݄ )׬Y*G )֭[ٳ̷oߺd?|,a222LYBBno߾AAA&&&FFF0=>>Ԕ円8 'L $D˙3g=jhh7ORNzV'mdrp7ыe{^RPP055_%bOJ)Nv%\.LH6 vvvʖgϞm.sX<00v#G e殬رceee'OO,8qQWWw9sK?~411IMM-/[ѣ6!!!T񉉉&LRRR D***R*BL (,,lhhHII166mbsBP^^ndd#F! Z'mݺMiDFmfR<@ z2hGi5(466^zUSSSʒSASbqqqEa–g`7߼{NRfY+Vڵtq}}2`힞0Oܹs' "" 8/**n`mmM8p`NNN𸬬 1MK``͛i?jii |>߼kӦM+WDXTɅcƌs^I[6Zv4i3}EEEFb2VVV;VV<חd㠠 rO>aخ]tttӉD##xx:I @ |>޽{K$K9s_|y=CCógR]GiaaѧO͛7C RJG`0-zƍ~W^x"W~פׯ_ꫯ7o[ӧDP_b1((~-644Dڄ9--- mmmKJJLsrr, .r ZZZMWWW&%%w|@46ݧOڂpܷx?x H҉IUI۰ao}G|3)8466n.\5j?PcccB*t6URRD"JJJ$RJdx}L9Trss\.U'uTyx~KqСC?G>}t}}}\\ӧOtKdffxǏZZZ8Avv6,i@!M޿ xMMM ÇSJ8|/ήuuuCcbbrkײX,ؓ|bڂ $]6>>^$UTT,^xŒtJUI|\\ܸq㤸@pИ%(AWQQQuuux6&Kxrb1$c@@𮢢(h2ӉJp=*K*6($A98/~q}}KDkTDTyxVKo^q @ i'7|s1XqY¼Ç+++$''d333&蘖|… Y,mRRnaرg& ( qwwOHHݲe LԬ:::իY,a׮]:tH[[[KKkÆ GNLLĹ|w}7d=deeesss| 7oބ]jUMMiD)F˓FAA~gǏ'M X~=|oVWW@kA!4rb۷op8;wN'*}ҠA0֧HVsYYY)))YZZoTkTD TyfffpܡW,kȑ/O@:::޾}6(lZv[퀴b׮]s⽼ºL PP/Eaoa߾}rKZYY'P }c)%(:u˗I ^^^_}UCCCE"۷[QD;A!ѻ!O:Iڬw>~2a?~Æ >|#>W3o޼iӦ߿_>"mB  :2rH}HHƍMLL[QDAA!w:mPSSc3gvNO>w^b߼y#_&xAKK _ѫ#vA :СC>|;b?¨.b刉 "`XYYYYYuM`l6iذa3g3fL7E 3   o޼wK.WΝC<s>I¨wW݅B!iknFGoVZm&7<]__;ޫoMrB9ӫ I[?C ƏgϞUUU]zuǎ3g$پ}… 8&EjYh۷o9Sߛ;699ܼcCCC ~¨6;#G>|5c:ClJ3ٍ-hgDQillx,kƌϟ??`k7W^eiam6qdDf~sдinܸ! Zpg&US}L^^^.I㮝@AarƍAxnXψQd nǒ\а{X,==ŋ?|P. 3fܹs„ ݻɓ .lذaرjjjn6.nom"??ޞf͚R׬Y:UaMl~>u={,33$H IDAT۷p5+Hwy7 ~~~ҳeff~ &m]՛Cvvt<ݻm* }ɓx{{Èȷ333GA#KBAadɒM6UWW_vڵk-wP__?q۷o={6//oԨQ&MJKKniK\\\^^/=x`%%%RǏ?[F޴}KKKAd2G Ƈ\.egg_|DGG1|p++T ޽{qq###"&a&LPQQm=*ð[nUUU͚5Kzi E(l޼_NNNL&,!!攤S 0 555$dlw7((DQQȨՌ755r_Vu_fsUQQ>} $y!(}=J[ܙ3g=jhh7ْZR]*I'_v`0*++ %0,33sѭ6$I77nبz{{߽{ m ø\.u,dff5 0$I%p̞=[MMM__6q}OׇD"Gh=Enڴfgee9ikA+CR?ܾ}ܹs[ZZh閩M*=aIzMJMM% nȲ`;v젞8abɹsbŋW\ ]\\V\L$'NX[[E"Q||yGGG[}}}Ҩ(CCCf$mݺ$ITmghjjzU [ 1bĭ['5$IԛCQQQZZZMM څBTWWlR鲄1#Fy&<D,Kx栭yر겲2ooo#>sK.>~hbb K5UZЎ&"sssRR ðÇDABCCI.}ѪU yYH̃aXTTTSS122>JOLLTVV.O>QQQb֬Y՟3gHjI4hSR-A 8;;<+Zt&kRiii 9s&Ábmm-)5.\̙38zjb 9qDuu5k7oLfcc;ooz*:: &O͕+WcX%]RATo N|qZ/_TUU[2 6i^^^6mTwmR7nÇzzz---?633#!yZ/_jhh|OܶlBJ/..nnn.,,>|܇71aOx ^5ZH1B 77{bڵ8T^\ZΝ;aaa˖-lrҥr.߾}KM/**DiiiꫯD"Qrr2ŋ/';vϞ=b8''ĉ0… !!!02.))177yTǎDeee[lvd<]xڝuRJ8*++k7n| ƥKjbAߦ())RMSSSaÆ*kkkZImI a!$U_ L>`,ZÇ4AT__߫WիWϞ=[$[K%2h;3F$QZRR3ID9vC9i,wr666̟?NkFDrrrrrr"""^gN7#iۇlܸ$<<ή&>yTTTFX@sݻw^rE}F~%--ׯw 'i>};vر?֭[ݭ@ Z@ C:tU 6v=|BM# oG;te˖W'WwȑÇһ&";vlrr21\pmJ#՜6mڍ7}:Tiۓuuw D7f͚`>7]I~~>i$v.(@.ГBD& n)= 'L 0 {]߾}LLL0 prrb2fff YYYL&sԨQTݺuj֬Y--- (,]CCFFF'$$DR]B͛9\Ve0G`888ܹSߨդI6U3>>Ԕ円r_x!E!LiӂpԝWG :"aݭGmˍbbbbqXX؈#YYYyxx<PXXАbll;wN,_xqʕlCBB:'L,UTT$U066VQQ1""… <Ox}}}OOϪDUUUI^&MZ^|'B3fKr A; z=L&s߾}>>>K``_=o< Ö/_~z Ê|~TT;vlmm-{X>ydI61 u틋c9$ð9sxxxHљ@<](~jjjRE&MZ^͐۷aǏ$0`>FnO:#wB:zj`` fðWWWbXS^^pB.t̙H0Ғdʔ)8''g*=}tx, p`jjjԂeF6kS5\]]aw{g%%%?^+g ŋ+_7+++b1{ Ê-,,7%""8cwƌ`߾}0&al6-KvttT)@ccc%ŗ7. jڤMլlSSSzz:1(^dOlmm;&ʶlRRRaXII )y ƥKݖH$%''Ha7oUKJJ𝝥j啕gϞڿƍiuB^xD@zL,4GR5imR]צjx 6TUUY[[ gѴ (.vN8p&MdnnÔb<^ٳŅ㥧[XX'p &L|{p[n߿@҉Hdgg;;;766r\//( Z//C2 |;Z"R TMZT׵_v ŲURR0L$mٲ#@`ֶ5:hDO@[[8ٳ˖-knnFqJJ DEEݻwO^7"8Q)00P.z?ûw$$dƍ&&&vvvݭ@PPAqa455€K,133#fؽ{wRRRwb^~䌖>6@ dMHH G3gμrJ@@5\3۷L&o߾˗Aall#?:ujҥ<,KQQظ0#%d2;]:@ "z17oAKK+55ktuuuO>͟?֬Y /}||?Ν;TR ވ5L6ƍ>ѩ'Dի{ZZZ0 [~y,,,/6lΘ1cƌu{k֬ VUU)kj3U?BFP׮]!g񤐴Tt\R,t+z`CȫWbbb~u͞={Ȑ!~~~<߿uVii)@__i<˖-+((HHHضmے%KtZݻw} 211QTT422酅&LPQQ0Ǎ8NHHaNNNL&,!!ðׯ_s窨L>GUUubv֭*+uKKKKJ@P(ټy3ӻ|2T  Ƈ\._ ࠦsNIuOhrttd2F KjS]ojjrCCC'ERGIRNCIqjNjz. )  h p___OAecc{&ͶUF[mv~g$˲$Ķ  a2-***j+G=z8q"&&iLL 麛>}:)P(ᅨ;[m;I-'{xx<O,//722aaa#F9E"Q|| !%% N<#&),;$$?11q„ DT***FDD]pJǻ,{zzVUU%&&J*|Bm)ɹsbŋW\)I?m|'BnSv:D]] ?رc6QwRWWWlI@tVզsZ ?~#FضmfQP (ţF9sfNNǏ_zf``*}G R9s|ܹ;yId |>)]re@@<0L,++ׯ񔖖MMM@ddq>kiiy$kkk@@իWJ@d힞𸡡/$yfb/_ԴZP];ĉ7RӶ)Dzxx/0kӦM/MZhs:_~/_LLLo***455臘666.M^ rSNQF1L++t vڥ/|}}+++{eddVssGMH61 p8\.Ӵp$}DMg0wӻx񢿿3g$'ʠZXXܾ}b }E>}HvI'R#BF"x`}}+W >>O^n2[m IDAT\b Ś1c)zee .]Ncggwҥ_~ܹÆ ʅ%%% sWzj`` fsN2f߅t:Nq޽{ʕ|JqF=|Ç~X\\[q̘1ܹs\zsdo׍^^^}]GGݻUUUK.?7f._L0s %BIR~W^e'og'O\h`j&၆oN=sϟ޵k)͘)mmm .[0 {{?~Ç dd"eǴSүE_L(777,,%11PRhD"EQ!!!}}}%%%Pm >Ogln ?vМ 9ȍDvvv]]]E7ҥKAܼy3&&^MTӿ'_$ľg: uvvn޼9--XcdzgϾpgà/믿~x'OJҪO>dĉ) .//(g)(((*""~!iӦwvvnkkLN@pɊ+>|x{A0UX,eG~~9&N/W&%%e̙<4c#;;oqaSpB̙3eʔ}q_s jܹslBfffj4NjTXB HKKjtcll#G"""C1Ť_KI-}?;I[^+ y s N(=G{^zg?D"ߺu+?D")..jyyy=7ПX Ri__ &/Y$&&&999++˘c1Ew}ٰ*88N.3{۷eݺus-..(j„ oߦ(J&ݺuސ~!_~͛uĉ-zƍYSYfܸqA?)zG_@:',*j$""G/1Д8qeʔ)6l=… 7! .裏/T*8q5+WMѰA3f$%%1444DDD0ezd;vPOC燸2 @$)*M&eB1Ť_Sbfk>$o_^* y0& ? \.J^MˍDntt4?֭[7P~?'ᩧ, -PFF +JLL|}v~ӟԘ7~Л GGG7E(++{ǘsA1;}Gݻ3f̈mnnk;Z'vtд/^| sgaΝ;T*ZmeeIKsg48CaՇ~I/NKKc0fd899W=9::?9rjjj2wf0O yLr9::**  <"8Ca-Ƴ}4Kjj*} @ _܉A[[cKaa k9ge+0|JTPs͝;yΜ9胢eddܽ{wٲeΝ2dvƟʹ/}\\%ƢpgZIV*ӷnz1gy;wxʕ}SN o~dE]Te:uJPO+ɡ-6[>k8onG/ʶvڝ;w۳g͚E?Y(s~s3`֞? ^vڋ/#<gϞ-H|||Ο?&J-[&H,Ykooꫯkx{{$9qDf$߿/Hd+++w /M&m=0))I&:t 0z%C[v$'MtDgggWW׬,}i?˙j:88X$1tSptƍ^^^ҢVLMC}묠 j~+..9ߋŋ^^^6m#HCϟP08`Z/b{{# goݺʕ+A\~}ҥ[lwަMz~EEE555'NNohh(..gϏ]f ݞb ~z;o@7>,%%EQYXX<6 v:lqq̙3'N4ܟICpntgϞSJhJ% _{ʏ̨ vvvOBP*Jyrfffoo`d)FRb2scm >^1>^j9[{_wvvedd̟?&Mkhh΄_fv{oӦMg̘Q]]߅j___s0v c8NczA${C[6w~DRtww1Z(F# )?2_MML&%8<_֖o!0$3wͿ( K߆hvQG}ol8uo~ߺ߲e EQGYt)/K}LUVT*ve˖}ǜ%^|111O 13fΜI^}}}Ƽ%k>b͛T8Euƍyyyԏ?9q<ёkxO#Ӣt:?3f0эLuŏK4<7ILss^{366ɓ]*$Ry<!-} t~xg;@(j֭NNN۶m3<.KR\^QQaxO999>>>"t#;ʀHP(8#{zzgNpp9翫V mcc|ë1_ܹS|3f8tPggg^^ޣ>zry時""" 3񝝝#ZNӦMkmm4M߰|} k׮]N N;sL݌) \2{l;;;__sэΝš_|EQ&L}6EQ2֭[E9;;ߺuK_͛ٿDz@]f͸q`׎/rQQ;1Fʕ A'rFz^\g9 mKl ,v~qɂ T*"*%K-^iywV^Ϳ!((=7\rʕ+-0S.d4l'O> t:]ss0E!XwޥK^|===˗/dz@F=N{S'''[ _yO>s"e=(QZZ*H222 륗^O]\\O~ak0ERT*&OMppիWwܹo|2>{w/CJMMULK\\\HHo~3f`1{UA$$$+eee3gĆb޼yΝ4^re)))g}ԩS#U"qWxxxYYYiiwNNNMMMymذ^`7>Ӝ%OކQ(mmm&}=#I;w?>))vԩtW_}`DtU \]];݌ )3 $d2$Oo^VVv=NEHL&T[[aº/!!a̙Ç:nC766חto ȵk޻wﭷފ&ۻ {oǎz ƬϏδf:+V谵~?\h/F^BB¡C?8qvttd꫟'og}V*KA~b{oKAďEy222rO?`L jjjg:Ll#1+fbŊ?OO>|'k{-Z0}s^_v?9zO{=T*upp ǧ;))^&S0&(qㆷ7?gφ?cBsrppχ^vww+J . "s3>>%%%(9vrrt//=cBdaa!8{lZj7o̹m!c,]FDD D2M}&M趜 OF 4JҾ>cz;QRT*N%K/^̴;W ԿXt:kcc3\r߾}ƚ+낢Y_ZpaDD_=h[^v-,,$IV;nzW!n88… /۷g͚c8 ^~m@_е)0R<`m۶T_h:6y䖖 >|s>#y…7nܘ={ӧ̙3<̀lJJJJJJ tINN&XBwܼo߾>̷i…|SO=UTThZ600iΝ4(X~ť<ӅǏ7~Í7~AAA.]b`PX4S:.!!!))IAp\|yΜ9E]x'b`p `kkgϞnuxTV $i V mϞ=ƍ3W02 ݧ$I$mmm====:b9 ΩS X,ɡ302m4PmmmWW[!Xͫ)R*111#РEEE%$$~pһx񢗗æM;ES"Xv$ɍ7{yyUVVQ |*?+++y5gXi]tg?ٿɓ's>0ҍ>>>tV[TTlΞ=S\\lggG>sĉc:88dffvvv &Ǝ̨ vvvfv;#4gBP*J2003^@@@ZZFQTt};EQT``޽{R4RT(#0c>*=ǯ99 B`rwh!B]xe˺ߐAlV(FnݺӧOӍ"ѿ/XftMJ>aaa...jjjd2;>󺧧G^ 4gH$jDD"@Ƨg8?=[[[idh42ApA0)bt|*Q|~0ڵkA,_а_W̙3TE!EQfͺsEQ SxQ%HZm^^g?5?&Z"[:;;?cgggQ,8МVMMMe(~3ӟ%8oXA0Bc"QaP OJ!I0ϰ T׿կ~5芰 ׯ.X)B8KQTCCCDDD"a6޺uӶmی)c!vN#?N7ӷq93*++D"Bw02=q镗{zzӧ :00^w,pRT.WTT {[؟ B.K 64S ((s€<|pڴiA޽{AJ>֭;%%%77ҥK7ʨ 賕&VU.TT" VlVL88#0oɟ~C?3g4In`]1E3q^^+յgϞO Fco^ ĉ/rWW׺u}]sVE!9v˻7nܸ{n~F3X?ٲe˟!jii1IJ``8RR֮];İn[hѡCƍ7h`հR`}HzEHD\\ܽ{Z-*BMƨ'OǏz3; ptt<}9sL0;;MA$''"_ GFFVVV$JzCBBt:I?婧ZfbUܕBZii͝|gQQQmmmC_/ܷo}c길8>}.11Ν;֭o@X)09[[[˗}p׮]o+Kdr܄1(0=$XOHH' `XD!օO0m۶  ׻Z*==]*8q"22H$̌UV<8X)01+V{fٲe7n Ir„ yyyQҖ,Yr1$)>X)01}˄2={~ {faP١(̝X3TUU$i.:n~wws`E!EQJ[,aNغ9> NR(b'''g,_JJ8e\:XwQgϞ̏?Xќ>},TTTTBBƒ ̝q ?~xsԃyzzAAAvvvAAAj $'MtDgggWW׬,ce_l߾͍+8u|IIINNN2СC徾^Er+Hܸq}g㺺0z}… ATVVzyy988lڴ#ŋLONj:88X$1m53'؍$8kKKZ2eJvv1$'wߘ5իW=+CYQZZjH$+ RޮT*)""%%EѯϜ93qDce988dffvvv fΞ=\TTFQҥK9BQTYY?ސ JhJB(*444##G0B`bhT*ݻ#?>?}S·Ǩ vvv6fP 233{{{wߘ5пɸ<8b]N>"HRhD"EQAt:]kcޥ sqqILLdT*mll IR0Z}}}HHH___tttII {s 8iD$ikkɞ1F΄1Ə_Ա>nSF&3(A̯7fg y}#f_]7Pս7n܈g̘q ???m̻A7oү/_~…>l׮]>7nLOOoooˣ~ڃ'}zQQʕ+͕X+3׷w^///;;<==n D 0q^n||T*eZd;v`uVGGG'''"d~zT*+**(jhhH$RtÆ Muyy=}{@֘]_p?| cD"ooǏ3(;Yo`p~?>GGEE555p$X_K.Yc|2oRxH#IرcpF'IR. /++3wO>=gs'`Rc###+++͝܁)--?}YTTT[[[dd$ aF?[[[˗c@0&$@0VD"ԅ(1u!>( `lA] E!9 PXE!Q P؅'ܼm6^`{ldSX)cŊ޵Ylkgg7F0/ B<<<-2JJJF$KB@Q( B$i,gH`@̾Xlb E!($IH$~~~;wtt;EQMz }ꆻ M`Q_j4V 삃?裃-D juppH$b|跦NO5..N,QYYi&3'?NRRL&;tPyyo__AEzf[~VmOŋl8uuuaaab… 3rɏϞy(8640 :((.((HVӛ$'';;;O4ѣήYYYƼo\Ћ0QZZj#-tc``޽{t:ٳg=<<233{{{)R(*J(Jh8)))Z͍K9r!'+HKKh4*6444##@voK9Cp<(8Fn_ 98) RޮT*ٙѯϜ93qDc7|F1`2- Nn sqqILL(J$i4Rtww!$Iz]Hj)h4 tLCBBKJJ؛sokL|[[[N"ѿ堷җ?)8Cp<(q o_ 91BɄU0ơ(1(Vsݲe V]]-H(bD")..jyyy "--Mզ Fcü=rHDDg+mOjZJaff&Nҗ?]BE▖}c`C}ɐITf31 kBPY!g̘Ĭ1? d;v(:00^(j֭NNN)***rT*ݰa`48붶6LNVm_^^iooOIQTCCCDDD"6?]<RT__v2 @$)*}շ_(1.<P\h&n`R]zIENDB`libbonobo-2.32.1/doc/api/figures/Makefile.in0000664000076400007640000002713411546333027015541 00000000000000# Makefile.in generated by automake 1.11.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008, 2009 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@ VPATH = @srcdir@ 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 = doc/api/figures DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.in 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_$(V)) am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) am__v_GEN_0 = @echo " GEN " $@; AM_V_at = $(am__v_at_$(V)) am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) am__v_at_0 = @ SOURCES = DIST_SOURCES = DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ AR = @AR@ AS = @AS@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ BONOBO_ACTIVATION_LT_VERSION_INFO = @BONOBO_ACTIVATION_LT_VERSION_INFO@ BONOBO_MAJOR_VERSION = @BONOBO_MAJOR_VERSION@ BONOBO_MICRO_VERSION = @BONOBO_MICRO_VERSION@ BONOBO_MINOR_VERSION = @BONOBO_MINOR_VERSION@ BONOBO_SLAY = @BONOBO_SLAY@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DISABLE_DEPRECATED_CFLAGS = @DISABLE_DEPRECATED_CFLAGS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GREP = @GREP@ GTHREAD_CFLAGS = @GTHREAD_CFLAGS@ GTHREAD_LIBS = @GTHREAD_LIBS@ GTKDOC_CHECK = @GTKDOC_CHECK@ GTKDOC_MKPDF = @GTKDOC_MKPDF@ GTKDOC_REBASE = @GTKDOC_REBASE@ HTML_DIR = @HTML_DIR@ IF_BSD_PS = @IF_BSD_PS@ IF_CYGWIN_PS = @IF_CYGWIN_PS@ IF_POSIX_PS = @IF_POSIX_PS@ 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@ LD = @LD@ LDFLAGS = @LDFLAGS@ LEX = @LEX@ LEXLIB = @LEXLIB@ LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ LFLAGS = @LFLAGS@ LIBBONOBO_CFLAGS = @LIBBONOBO_CFLAGS@ LIBBONOBO_LIBS = @LIBBONOBO_LIBS@ LIBBONOBO_LT_VERSION_INFO = @LIBBONOBO_LT_VERSION_INFO@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIPO = @LIPO@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ NM = @NM@ NMEDIT = @NMEDIT@ OBJDUMP = @OBJDUMP@ OBJEXT = @OBJEXT@ ORBIT_IDL = @ORBIT_IDL@ OTOOL = @OTOOL@ OTOOL64 = @OTOOL64@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PERL_PATH = @PERL_PATH@ PKG_CONFIG = @PKG_CONFIG@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ PS_PATH = @PS_PATH@ RANLIB = @RANLIB@ SEARCHPATHSEP = @SEARCHPATHSEP@ SED = @SED@ SERVER_CFLAGS = @SERVER_CFLAGS@ SERVER_LIBS = @SERVER_LIBS@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SOPREFIX = @SOPREFIX@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ WARN_CFLAGS = @WARN_CFLAGS@ XGETTEXT = @XGETTEXT@ YACC = @YACC@ YFLAGS = @YFLAGS@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ 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@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ lt_ECHO = @lt_ECHO@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ 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@ diagrams = persist.dia persist-file.dia persist-storage.dia \ persist-stream.dia storage.dia stream.dia unknown.dia \ running-context.dia diagrams_png = $(diagrams:.dia=.png) EXTRA_DIST = $(diagrams) $(diagrams_png) 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) --foreign doc/api/figures/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --foreign doc/api/figures/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 all-local 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: $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install 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 all-local 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 all-local: $(diagrams_png) # NOTE: make sure you have dia >= 0.91 and DISPLAY set # NOTE: if you edit the dia files, save them UNcompressed! %.png: %.dia $(AM_V_GEN) dia $< -e $@ 2> /dev/null || true # 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: libbonobo-2.32.1/doc/api/figures/persist-file.dia0000664000076400007640000005752111430735223016560 00000000000000 #A4##Persist######PersistFile######load########uri##string######save########uri##string######getCurrentFile####string########The PersistFile interface is somewhat mis-named; it should be PersistURI. This allows applications to load and save documents via the Gnome VFS.##@uri: URI to load from Loads the document object from the file pointed in by @path##@uri: the URI to save to Saves the document object to the file pointed in by @path##Returns the URI of the current file.##PersistStorage##########PersistStream######### libbonobo-2.32.1/doc/api/Makefile.am0000664000076400007640000000362011430735223014052 00000000000000## Process this file with automake to produce Makefile.in AUTOMAKE_OPTIONS = 1.6 SUBDIRS = figures # The name of the module DOC_MODULE=libbonobo # The top-level SGML file. DOC_MAIN_SGML_FILE=$(DOC_MODULE)-docs.sgml # The directory containing the source code. Relative to $(srcdir). # gtk-doc will search all .c & .h files beneath here for inline comments # documenting functions and macros. DOC_SOURCE_DIR=../../bonobo # Extra options to supply to gtkdoc-scan. SCAN_OPTIONS=--deprecated-guards="BONOBO_DISABLE_DEPRECATED" # Extra options to supply to gtkdoc-mkdb. MKDB_OPTIONS=--sgml-mode --output-format=xml # Extra options to supply to gtkdoc-fixref. FIXXREF_OPTIONS= # Used for dependencies. HFILE_GLOB= CFILE_GLOB= # Header files to ignore when scanning. IGNORE_HFILES= Bonobo.h bonobo-marshal.h bonobo-macros.h bonobo-x-object.h\ bonobo-stream.h # Images to copy into HTML directory. HTML_IMAGES = figures/persist.png figures/persist-file.png\ figures/persist-storage.png figures/persist-stream.png\ figures/stream.png figures/storage.png figures/unknown.png\ figures/running-context.png # Extra SGML files that are included by $(DOC_MAIN_SGML_FILE). content_files = faq.xml debugging.xml properties.xml refcounting.xml\ monikers-overview.xml # Other files to distribute. extra_files = # CFLAGS and LDFLAGS for compiling scan program. Only needed # if $(DOC_MODULE).types is non-empty. GTKDOC_CFLAGS = \ @CFLAGS@ \ -DGNOMELOCALEDIR=\""$(datadir)/locale"\" \ $(LIBBONOBO_CFLAGS) \ -I$(top_srcdir) \ -I$(top_builddir) GTKDOC_LIBS = $(top_builddir)/bonobo/libbonobo-2.la $(LIBBONOBO_LIBS) # If you need to override some of the declarations, place them in the # $(DOC_MODULE)-overrides.txt file and uncomment the second line here. DOC_OVERRIDES = #DOC_OVERRIDES = $(DOC_MODULE)-overrides.txt # include common portion ... include $(top_srcdir)/gtk-doc.make libbonobo-2.32.1/doc/api/libbonobo-sections.txt0000664000076400007640000004456211546334245016372 00000000000000

bonobo-event-source bonobo_event_source_new bonobo_event_source_notify_listeners bonobo_event_source_notify_listeners_full bonobo_event_source_client_remove_listener bonobo_event_source_client_add_listener bonobo_event_source_has_listener bonobo_event_source_client_add_listener_closure bonobo_event_source_client_add_listener_full bonobo_event_source_ignore_listeners BONOBO_EVENT_SOURCE BONOBO_IS_EVENT_SOURCE BONOBO_TYPE_EVENT_SOURCE BONOBO_EVENT_SOURCE_TYPE bonobo_event_source_get_type BONOBO_EVENT_SOURCE_CLASS BONOBO_IS_EVENT_SOURCE_CLASS BonoboEventSourcePrivate BonoboEventSource BonoboEventSourceClass
bonobo-generic-factory BonoboFactoryCallback bonobo_generic_factory_new bonobo_generic_factory_new_closure bonobo_generic_factory_construct bonobo_generic_factory_construct_noreg bonobo_generic_factory_main bonobo_generic_factory_main_timeout BONOBO_FACTORY_INIT BONOBO_OAF_FACTORY BONOBO_OAF_FACTORY_MULTI BONOBO_ACTIVATION_FACTORY BONOBO_ACTIVATION_FACTORY_TIMEOUT BONOBO_GENERIC_FACTORY BONOBO_IS_GENERIC_FACTORY BONOBO_TYPE_GENERIC_FACTORY bonobo_generic_factory_get_type BONOBO_GENERIC_FACTORY_CLASS BONOBO_IS_GENERIC_FACTORY_CLASS BonoboGenericFactoryPrivate BonoboGenericFactory
bonobo-item-container BonoboItemContainer BonoboItemContainerClass bonobo_item_container_new bonobo_item_container_add bonobo_item_container_remove_by_name BONOBO_ITEM_CONTAINER BONOBO_IS_ITEM_CONTAINER BONOBO_TYPE_ITEM_CONTAINER BONOBO_ITEM_CONTAINER_TYPE bonobo_item_container_get_type BONOBO_ITEM_CONTAINER_CLASS BONOBO_IS_ITEM_CONTAINER_CLASS BonoboItemContainerPrivate
bonobo-item-handler BonoboItemHandler BonoboItemHandlerClass bonobo_item_handler_new bonobo_item_handler_new_closure bonobo_item_handler_construct BonoboItemOption bonobo_item_option_parse bonobo_item_options_free BONOBO_ITEM_HANDLER_TYPE BONOBO_ITEM_HANDLER BONOBO_IS_ITEM_HANDLER BONOBO_TYPE_ITEM_HANDLER bonobo_item_handler_get_type BONOBO_ITEM_HANDLER_CLASS BONOBO_IS_ITEM_HANDLER_CLASS BonoboItemHandlerPrivate
bonobo-listener BonoboListener BonoboListenerClass BonoboListenerCallbackFn bonobo_listener_new bonobo_listener_new_closure bonobo_event_make_name bonobo_event_type bonobo_event_subtype bonobo_event_kind bonobo_event_idl_path BONOBO_LISTENER BONOBO_IS_LISTENER BONOBO_TYPE_LISTENER BONOBO_LISTENER_TYPE bonobo_listener_get_type BONOBO_LISTENER_CLASS BONOBO_IS_LISTENER_CLASS BonoboListenerPrivate
bonobo-moniker-extender BonoboMonikerExtender BonoboMonikerExtenderClass BonoboMonikerExtenderFn bonobo_moniker_extender_new bonobo_moniker_find_extender bonobo_moniker_use_extender BONOBO_MONIKER_EXTENDER BONOBO_IS_MONIKER_EXTENDER BONOBO_TYPE_MONIKER_EXTENDER BONOBO_MONIKER_EXTENDER_TYPE bonobo_moniker_extender_get_type BONOBO_MONIKER_EXTENDER_CLASS BONOBO_IS_MONIKER_EXTENDER_CLASS
bonobo-moniker-simple BonoboMonikerSimple BonoboMonikerSimpleClass BonoboMonikerSimpleResolveFn bonobo_moniker_simple_construct bonobo_moniker_simple_new bonobo_moniker_simple_new_closure BONOBO_TYPE_RESOLVE_FLAG BONOBO_RESOLVE_FLAG_TYPE BONOBO_MONIKER_SIMPLE BONOBO_IS_MONIKER_SIMPLE BONOBO_TYPE_MONIKER_SIMPLE BONOBO_MONIKER_SIMPLE_TYPE bonobo_resolve_flag_get_type bonobo_moniker_simple_get_type BONOBO_MONIKER_SIMPLE_CLASS BONOBO_IS_MONIKER_SIMPLE_CLASS BonoboMonikerSimplePrivate
bonobo-moniker BonoboMoniker BonoboMonikerClass bonobo_moniker_construct bonobo_moniker_get_parent bonobo_moniker_set_parent bonobo_moniker_get_name bonobo_moniker_get_name_full bonobo_moniker_get_name_escaped bonobo_moniker_set_name bonobo_moniker_get_prefix bonobo_moniker_set_case_sensitive bonobo_moniker_get_case_sensitive BONOBO_MONIKER BONOBO_IS_MONIKER BONOBO_TYPE_MONIKER BONOBO_MONIKER_TYPE bonobo_moniker_get_type BONOBO_MONIKER_CLASS BONOBO_IS_MONIKER_CLASS BonoboMonikerPrivate
bonobo-object BONOBO_OBJECT_TYPE BONOBO_OBJREF BonoboObjectPOAFn BonoboObject BonoboObjectClass bonobo_object_add_interface bonobo_object_query_local_interface bonobo_object_query_interface bonobo_object_query_remote bonobo_object_corba_objref bonobo_object_dup_ref bonobo_object_release_unref bonobo_object_ref bonobo_object_idle_unref bonobo_object_unref bonobo_object_set_immortal bonobo_object_trace_refs bonobo_object_dump_interfaces bonobo_object_check_env BONOBO_OBJECT_CHECK bonobo_unknown_ping bonobo_object_list_unref_all bonobo_object_slist_unref_all bonobo_object bonobo_object_fast bonobo_object_from_servant bonobo_object_get_servant bonobo_object_get_poa bonobo_type_unique bonobo_type_setup BONOBO_TYPE_FUNC_FULL BONOBO_TYPE_FUNC BONOBO_OBJECT BONOBO_IS_OBJECT BONOBO_TYPE_OBJECT bonobo_object_get_type BONOBO_OBJECT_CLASS BONOBO_IS_OBJECT_CLASS BONOBO_OBJECT_GET_CLASS BONOBO_FOREIGN_OBJECT_GET_CLASS bonobo_foreign_object_new BONOBO_IS_FOREIGN_OBJECT BonoboForeignObject BonoboForeignObjectClass BONOBO_FOREIGN_OBJECT BONOBO_TYPE_FOREIGN_OBJECT bonobo_foreign_object_get_type BONOBO_IS_FOREIGN_OBJECT_CLASS BONOBO_FOREIGN_OBJECT_CLASS BonoboObjectPrivate BonoboObjectHeader BONOBO_OBJECT_HEADER_SIZE BONOBO_OBJECT_SIGNATURE BONOBO_SERVANT_SIGNATURE
bonobo-persist-file BonoboPersistFile BonoboPersistFileIOFn BonoboPersistFileClass bonobo_persist_file_new bonobo_persist_file_construct BONOBO_PERSIST_FILE BONOBO_IS_PERSIST_FILE BONOBO_TYPE_PERSIST_FILE BONOBO_PERSIST_FILE_TYPE bonobo_persist_file_get_type BONOBO_PERSIST_FILE_CLASS BONOBO_IS_PERSIST_FILE_CLASS BonoboPersistFilePrivate
bonobo-persist-stream BonoboPersistStream BonoboPersistStreamClass BonoboPersistStreamIOFn BonoboPersistStreamTypesFn bonobo_persist_stream_new bonobo_persist_stream_construct BONOBO_PERSIST_STREAM BONOBO_IS_PERSIST_STREAM BONOBO_TYPE_PERSIST_STREAM BONOBO_PERSIST_STREAM_TYPE bonobo_persist_stream_get_type BONOBO_PERSIST_STREAM_CLASS BONOBO_IS_PERSIST_STREAM_CLASS BonoboPersistStreamPrivate
bonobo-persist BonoboPersist BonoboPersistClass bonobo_persist_generate_content_types bonobo_persist_construct bonobo_persist_set_dirty BONOBO_PERSIST BONOBO_IS_PERSIST BONOBO_TYPE_PERSIST BONOBO_PERSIST_TYPE bonobo_persist_get_type BONOBO_PERSIST_CLASS BONOBO_IS_PERSIST_CLASS BonoboPersistPrivate
bonobo-property-bag BonoboPropertyBagClass BonoboPropertyBag BONOBO_PROPERTY_READABLE BONOBO_PROPERTY_WRITEABLE BONOBO_PROPERTY_WRITABLE BONOBO_PROPERTY_NO_LISTENING BONOBO_PROPERTY_NO_AUTONOTIFY BonoboProperty BonoboPropertyGetFn BonoboPropertySetFn bonobo_property_bag_new bonobo_property_bag_new_closure bonobo_property_bag_new_full bonobo_property_bag_construct bonobo_property_bag_add bonobo_property_bag_add_full bonobo_property_bag_remove bonobo_property_bag_map_params bonobo_property_bag_get_prop_list BONOBO_PROPERTY_BAG BONOBO_IS_PROPERTY_BAG BONOBO_TYPE_PROPERTY_BAG BONOBO_PROPERTY_BAG_TYPE bonobo_property_bag_get_type BONOBO_PROPERTY_BAG_CLASS BONOBO_IS_PROPERTY_BAG_CLASS BonoboPropertyBagPrivate BonoboPropertyPrivate
bonobo-shlib-factory BonoboShlibFactory BonoboShlibFactoryClass bonobo_shlib_factory_construct bonobo_shlib_factory_new bonobo_shlib_factory_new_closure bonobo_shlib_factory_std BONOBO_OAF_SHLIB_FACTORY BONOBO_OAF_SHLIB_FACTORY_MULTI BONOBO_ACTIVATION_SHLIB_FACTORY BONOBO_SHLIB_FACTORY BONOBO_IS_SHLIB_FACTORY BONOBO_TYPE_SHLIB_FACTORY BONOBO_SHLIB_FACTORY_TYPE bonobo_shlib_factory_get_type BONOBO_SHLIB_FACTORY_CLASS BONOBO_IS_SHLIB_FACTORY_CLASS BonoboShlibFactoryPrivate
bonobo-storage-memory bonobo_storage_mem_create BONOBO_STORAGE_MEM BONOBO_STORAGE_MEM_TYPE BONOBO_IS_STORAGE_MEM BONOBO_TYPE_STORAGE_MEM bonobo_storage_mem_get_type BONOBO_STORAGE_MEM_CLASS BONOBO_IS_STORAGE_MEM_CLASS BonoboStorageMem BonoboStorageMemClass BonoboStorageMemPriv
bonobo-stream-memory BonoboStreamMem BonoboStreamMemClass bonobo_stream_mem_construct bonobo_stream_mem_create bonobo_stream_mem_get_buffer bonobo_stream_mem_get_size BONOBO_STREAM_MEM BONOBO_IS_STREAM_MEM BONOBO_TYPE_STREAM_MEM BONOBO_STREAM_MEM_TYPE bonobo_stream_mem_get_type BONOBO_STREAM_MEM_CLASS BONOBO_IS_STREAM_MEM_CLASS BonoboStreamMemPrivate
bonobo-arg BonoboArg BonoboArgType BONOBO_ARG_NULL BONOBO_ARG_BOOLEAN BONOBO_ARG_SHORT BONOBO_ARG_INT BONOBO_ARG_LONG BONOBO_ARG_LONGLONG BONOBO_ARG_FLOAT BONOBO_ARG_DOUBLE BONOBO_ARG_CHAR BONOBO_ARG_STRING BONOBO_ARG_GET_GENERAL BONOBO_ARG_SET_GENERAL BONOBO_ARG_GET_BOOLEAN BONOBO_ARG_SET_BOOLEAN BONOBO_ARG_GET_SHORT BONOBO_ARG_SET_SHORT BONOBO_ARG_GET_INT BONOBO_ARG_SET_INT BONOBO_ARG_GET_LONG BONOBO_ARG_SET_LONG BONOBO_ARG_GET_LONGLONG BONOBO_ARG_SET_LONGLONG BONOBO_ARG_GET_FLOAT BONOBO_ARG_SET_FLOAT BONOBO_ARG_GET_DOUBLE BONOBO_ARG_SET_DOUBLE BONOBO_ARG_GET_CHAR BONOBO_ARG_SET_CHAR BONOBO_ARG_GET_STRING BONOBO_ARG_SET_STRING bonobo_arg_new bonobo_arg_new_from bonobo_arg_release bonobo_arg_copy bonobo_arg_from_gvalue bonobo_arg_type_from_gtype bonobo_arg_to_gvalue bonobo_arg_type_to_gtype bonobo_arg_is_equal bonobo_arg_type_is_equal
bonobo-config-database bonobo_config_get_string bonobo_config_get_string_with_default bonobo_config_get_short bonobo_config_get_short_with_default bonobo_config_get_ushort bonobo_config_get_ushort_with_default bonobo_config_get_long bonobo_config_get_long_with_default bonobo_config_get_ulong bonobo_config_get_ulong_with_default bonobo_config_get_float bonobo_config_get_float_with_default bonobo_config_get_double bonobo_config_get_double_with_default bonobo_config_get_boolean bonobo_config_get_boolean_with_default bonobo_config_get_char bonobo_config_get_char_with_default bonobo_config_get_value bonobo_config_set_string bonobo_config_set_short bonobo_config_set_ushort bonobo_config_set_long bonobo_config_set_ulong bonobo_config_set_float bonobo_config_set_double bonobo_config_set_boolean bonobo_config_set_char bonobo_config_set_value
bonobo-context bonobo_context_get bonobo_context_add bonobo_context_running_get bonobo_running_context_auto_exit_unref
bonobo-exception bonobo_exception_set bonobo_return_if_fail bonobo_return_val_if_fail BONOBO_EX BONOBO_USER_EX BONOBO_EX_REPOID BONOBO_RET_EX BONOBO_RET_VAL_EX BonoboExceptionFn bonobo_exception_get_text bonobo_exception_repoid_to_text bonobo_exception_add_handler_str bonobo_exception_add_handler_fn bonobo_exception_general_error_set bonobo_exception_general_error_get
bonobo-i18n _ N_ textdomain gettext dgettext dcgettext bindtextdomain bind_textdomain_codeset
bonobo-main BonoboThreadHint bonobo_is_initialized bonobo_init bonobo_init_full bonobo_debug_init bonobo_debug_print bonobo_debug_shutdown bonobo_main bonobo_main_quit bonobo_main_level bonobo_activate bonobo_setup_x_error_handler bonobo_orb bonobo_poa bonobo_poa_manager bonobo_poa_get_threaded BonoboDebugFlags
bonobo-moniker-context BonoboMonikerContext BonoboMonikerContextClass bonobo_moniker_context_new BonoboMonikerContextPrivate
bonobo-moniker-util bonobo_get_object bonobo_moniker_client_new_from_name bonobo_moniker_client_get_name bonobo_moniker_client_resolve_default bonobo_moniker_client_equal BonoboMonikerAsyncFn bonobo_get_object_async bonobo_moniker_client_new_from_name_async bonobo_moniker_resolve_async bonobo_moniker_resolve_async_default bonobo_moniker_util_get_parent_name bonobo_moniker_util_qi_return bonobo_moniker_util_parse_name bonobo_moniker_util_seek_std_separator bonobo_moniker_util_escape bonobo_moniker_util_unescape bonobo_url_register bonobo_url_unregister bonobo_url_lookup
bonobo-persist-client bonobo_object_save_to_stream bonobo_object_from_stream
bonobo-property-bag-client bonobo_pbclient_get_string bonobo_pbclient_get_default_string bonobo_pbclient_get_string_with_default bonobo_pbclient_get_short bonobo_pbclient_get_default_short bonobo_pbclient_get_short_with_default bonobo_pbclient_get_ushort bonobo_pbclient_get_default_ushort bonobo_pbclient_get_ushort_with_default bonobo_pbclient_get_long bonobo_pbclient_get_default_long bonobo_pbclient_get_long_with_default bonobo_pbclient_get_ulong bonobo_pbclient_get_default_ulong bonobo_pbclient_get_ulong_with_default bonobo_pbclient_get_float bonobo_pbclient_get_default_float bonobo_pbclient_get_float_with_default bonobo_pbclient_get_double bonobo_pbclient_get_default_double bonobo_pbclient_get_double_with_default bonobo_pbclient_get_boolean bonobo_pbclient_get_default_boolean bonobo_pbclient_get_boolean_with_default bonobo_pbclient_get_char bonobo_pbclient_get_default_char bonobo_pbclient_get_char_with_default bonobo_pbclient_get_value bonobo_pbclient_get_default_value bonobo_pbclient_set_string bonobo_pbclient_set_short bonobo_pbclient_set_ushort bonobo_pbclient_set_long bonobo_pbclient_set_ulong bonobo_pbclient_set_float bonobo_pbclient_set_double bonobo_pbclient_set_boolean bonobo_pbclient_set_char bonobo_pbclient_set_value bonobo_pbclient_set_value_async bonobo_pbclient_get_doc_title bonobo_pbclient_get_doc bonobo_pbclient_get_keys bonobo_pbclient_free_keys bonobo_pbclient_get_flags bonobo_pbclient_set bonobo_pbclient_get bonobo_pbclient_setv bonobo_pbclient_getv bonobo_property_bag_client_setv bonobo_property_bag_client_getv bonobo_property_bag_client_get_property_type bonobo_property_bag_client_get_value_gboolean bonobo_property_bag_client_get_value_gint bonobo_property_bag_client_get_value_glong bonobo_property_bag_client_get_value_gfloat bonobo_property_bag_client_get_value_gdouble bonobo_property_bag_client_get_value_string bonobo_property_bag_client_get_value_any bonobo_property_bag_client_get_default_gboolean bonobo_property_bag_client_get_default_gint bonobo_property_bag_client_get_default_glong bonobo_property_bag_client_get_default_gfloat bonobo_property_bag_client_get_default_gdouble bonobo_property_bag_client_get_default_string bonobo_property_bag_client_get_default_any bonobo_property_bag_client_set_value_gboolean bonobo_property_bag_client_set_value_gint bonobo_property_bag_client_set_value_glong bonobo_property_bag_client_set_value_gfloat bonobo_property_bag_client_set_value_gdouble bonobo_property_bag_client_set_value_string bonobo_property_bag_client_set_value_any bonobo_property_bag_client_get_docstring bonobo_property_bag_client_get_flags bonobo_pbclient_get_type
bonobo-running-context BonoboRunningContext BonoboRunningContextClass bonobo_running_context_new bonobo_running_context_add_object bonobo_running_context_remove_object bonobo_running_context_ignore_object bonobo_running_context_trace_objects bonobo_running_context_at_exit_unref bonobo_running_context_get_type BonoboRunningContextPrivate
bonobo-shutdown bonobo_context_init bonobo_context_shutdown bonobo_object_init bonobo_object_shutdown bonobo_exception_shutdown bonobo_property_bag_shutdown bonobo_running_context_shutdown
bonobo-storage bonobo_storage_copy_to BonoboStream BONOBO_STREAM BONOBO_STREAM_CLASS BonoboStorage BONOBO_STORAGE BONOBO_STORAGE_CLASS
bonobo-stream-client bonobo_stream_client_write bonobo_stream_client_read bonobo_stream_client_write_string bonobo_stream_client_printf bonobo_stream_client_read_string bonobo_stream_client_get_length
bonobo-stream
bonobo-types bonobo_corba_object_type_register_static BONOBO_TYPE_UNKNOWN BONOBO_TYPE_CORBA_ANY BONOBO_TYPE_CORBA_OBJECT BONOBO_TYPE_CORBA_TYPECODE BONOBO_TYPE_CORBA_EXCEPTION BONOBO_TYPE_STATIC_CORBA_EXCEPTION BONOBO_TYPE_STATIC_UNKNOWN BONOBO_TYPE_STATIC_CORBA_ANY BONOBO_TYPE_STATIC_CORBA_OBJECT BONOBO_TYPE_STATIC_CORBA_TYPECODE BONOBO_VALUE_HOLDS_UNKNOWN BONOBO_VALUE_HOLDS_CORBA_ANY BONOBO_VALUE_HOLDS_CORBA_OBJECT BONOBO_VALUE_HOLDS_CORBA_TYPECODE BONOBO_VALUE_HOLDS_CORBA_EXCEPTION bonobo_value_get_unknown bonobo_value_get_corba_any bonobo_value_get_corba_object bonobo_value_get_corba_typecode bonobo_value_get_corba_exception bonobo_value_set_unknown bonobo_value_set_corba_any bonobo_value_set_corba_object bonobo_value_set_corba_typecode bonobo_value_set_corba_environment bonobo_closure_invoke_va_list bonobo_closure_invoke bonobo_closure_store bonobo_unknown_get_type bonobo_corba_any_get_type bonobo_corba_object_get_type bonobo_corba_typecode_get_type bonobo_corba_exception_get_type
bonobo-application BonoboAppHookFunc bonobo_application_new bonobo_application_register_message bonobo_application_register_message_v bonobo_application_register_message_va bonobo_application_new_instance bonobo_application_create_serverinfo bonobo_application_register_unique bonobo_application_add_hook bonobo_application_remove_hook bonobo_application_get_type BONOBO_APPLICATION BONOBO_IS_APPLICATION BONOBO_TYPE_APPLICATION BONOBO_APPLICATION_CLASS BONOBO_IS_APPLICATION_CLASS BONOBO_APPLICATION_GET_CLASS BonoboApplicationClass BonoboApplication
bonobo-app-client BonoboAppClientMsgDesc bonobo_app_client_new bonobo_app_client_new_instance bonobo_app_client_msg_send_valist bonobo_app_client_msg_send_argv bonobo_app_client_msg_send BonoboAppClient BonoboAppClientClass bonobo_app_client_get_type BONOBO_IS_APP_CLIENT BONOBO_TYPE_APP_CLIENT BONOBO_IS_APP_CLIENT_CLASS BONOBO_APP_CLIENT_GET_CLASS BONOBO_APP_CLIENT_CLASS BONOBO_APP_CLIENT
libbonobo-2.32.1/doc/api/monikers-overview.xml0000664000076400007640000012675311430735223016250 00000000000000 Monikers in the Bonobo Component System LIBBONOBO Library Monikers in the Bonobo Component System. Miguel de Icaza (miguel@ximian.com) Monikers in the Bonobo Component System Introduction We recently reimplemented and fully revamped the the Moniker support in Bonobo. This work has opened a wide range of possibilities: from unifying the object naming space, to provide better integration in the system. Note: on this document I have ommited exception environments handling for the sake of explaining the technology. Monikers - a user perspective Monikers are used to name objects, they effectively implement an object naming space. You can obtain monikers either because you created the moniker manually, or from a stringified representation of a moniker. Here is a list of stringified monikers, and an interpretation of it: file:quake-scores.gnumeric This would be a moniker that represents the file quake-scores.gnumeric oafid:GNOME:Gnumeric:WorkbookFactory:1.0 This moniker represents the Gnumeric Workbook factory object. oafid:GNOME:Gnumeric:WorkbookFactory:1.0:new: This moniker represents a Gnumeric Workbook instance. Notice that we are using the exact same OAFID as the example before, but there is a "new:" suffix at the end. file:/tmp/a.gz This represents the file in /tmp/a.gz. file:/tmp/a.gz#gunzip This represents the decompressed stream of data from a.gz. file:/tmp/a.gz#gunzip:streamcache This provides a cache on top of the decompressed stream of data for a.gz (the streamcache moniker is an in-proc component). http://www.gnome.org This one represents the GNOME web site. evolution:Mail/Inbox This represents the Evolution Mail/Inbox folder. file:quake-scores.gnumeric!January This represents the January Sheet in the quake-scores.gnumeric workbook. file:quake-scores.gnumeric!January!Winner This represents the cell whose name is "Winner" in the January sheet in the quake-scores.gnumeric workbook. file:quake-scores.gnumeric!January!Winner!Style!Font This represents the Font interface of the Style attached to the Winner cell. file:quake-scores.gnumeric!Jannuary!Winner!Style!BackgroundColor This represents the background color for the cell. http://www.gnome.org/index.html!title This represents the title element in the HTML web page at www.gnome.org. file:toyota.xml!cars/car/model/ The "cars/car/model" is an XPath expression that for locating a specific node in the toyota.xml file. config:*/Session/Calendar This represents a PropertyBag for the GNOME Calendar using the Local configuration system and using the settings stored in the Session domain. oafid:Helix:Evolution:Wombat:1.0 This represents the Evolution model server that stores all the per-user information. queue:oafid:Helix:Evolution:Wombat This represents an interface that queues CORBA requests to the Evoution Wombat: Any calls issued will be queued: if the Wombat is busy or not accepting connection, all the CORBA method invocations will be queued without stopping the execution of the client code. http://www.gnome.org/index.html.gz#gunzip#html:title This will reutrn the title element of the compressed HTML file at http://www.gnome.org/index.html.gz ftp://ftp.gnome.org/gnome-core-1.0.tar.gz#utar/gnome-core-1.0/ChangeLog A reference to the ChangeLog file contained in the compressed gnome-core-1.0.tar.gz tar file at ftp://ftp.gnome.org. desktop:Backgound The background object for the user's desktop. trashcan: The system trashcan. file:logo.png This represents the logo.png file. oafid:OAFIID:eog_viewer_factory:file:logo.png This specifies a specific image viewer to be used to display the file "logo.png", in this case the "EOG" program. file:logo.png!Zoom=2.0 This represents the logo.png file in EOG at zoom level 2.0. file:logo.png!Zoom=2.0,dither=max,notransparency The image logo.png is configured to be zoomed at 2.0 factor, to do maximum dithering and not use any transparency. Now, what you saw above are some examples of stringified representations of monikers. This means that they are not really monikers, it is the way a Moniker is represented in string form. Monikers typically are created either by using a Bonobo API call that transforms the stringified representation into an object (which exports the IDL:Bonobo/Moniker:1.0 interface), like this: moniker = bonobo_moniker_client_new_from_name (moniker_string); Now, a moniker is only interesting because it can yield other objects when resolved. During the resolution process, you specify which interface you are intersted on the moniker to return. This is achieved by invoking the ::resolve method on the moniker and passing the repoid of the interface you desire, like this: Bonobo::Unknown control; control = moniker->resolve ("Bonobo/Control") This would request the moniker to return an object that implements the IDL:Bonobo/Control:1.0 interface. This means that the object could be embedded as a regular Bonobo control in applications. Maybe you do not want to get a control, but rather to resolve the moniker against a different interface, for instance a Bonobo::PropertyBag interface: properties = moniker->resolve ("Bonobo/PropertyBag"); The resolution process might yield completely different objects. The parsing and resolution process is all encapsulated into a single API call for your convenience: the bonobo_get_object function: Bonobo::Unknown bonobo_object_get (char *moniker_string, char *interface); Now, as I said, the resolution process might yield very different objects depending on the interface being requested, for example: x = bonobo_object_get ("http://www.gnome.org", "Bonobo/Control") y = bonobo_object_get ("http://www.gnome.org", "Bonobo/Stream") The "x" object might launch Mozilla which would in turn load www.gnome.org, and the returned object can be used as a Bonobo Control, and used in your application as a widget. The "y" object on the other hand does not need all the power of Mozilla, we are only requesting the very simple Stream interface, so we might be able to implement this with a lightweight HTTP implementation: maybe a wget-based bonobo server, or a libghttp server. Note that even if the stringified versions of the monikers were the same (ie, "http://www.gnome.org") the resulting objects might differ wildely depending on the interface being requested. The Moniker parsing system During parsing the Moniker stringified, Bonobo will use the colon-terminated prefix as the toplevel moniker to be invoked for the resolution process. For the prefix "file:" the file moniker will be used; For the prefix "oafid", the oafid moniker will be used; For the "queue:" prefix, the queue moniker will be used. Once the moniker that handles a specific prefix has been activated, the moniker will be requested to parse the remaining of the string specification and return a valid moniker. Each moniker typically will consume a number of bytes up to the point where its domain stops, will figure out what is the next moniker afterwards. Then it will activate the next moniker and pass the remaining of the moniker stringified version until the parsing is finished. Each moniker is free to define its own mechanism for parsing, its special characters that are used to indicate the end of a moniker space, and the beginning of a new one (like the "#" and the "!" characters in some of the examples above). This flexibility is possible because each moniker gets to define its rules (and this is important, as we want to integrate with standards like http and file). Monikers as an object naming scheme As you can see, monikers are used to implement a naming system that can be used to reference and manipulate objects. As you might have noticed, the ::resolve method on the Moniker interface returns a Bonobo::Unknown interface. And by definition, the bonobo_get_object also returns a Bonobo::Unknown. This means that the resulting object from the moniker resolution will always support ref, unref and query_interface methods. The Moniker object naming scheme is: Extensible A new entry point into the object naming space can be created and installed into the system. Hierarchical Monikers. Creating Monikers Monikers are created typically by API calls into the Bonobo runtime or by your own classes that implement monikers. Object Name Space Comparing the Moniker name space with the Unix Name Space Lets start simple. A moniker is a reference to an object[1]. To actually use the object, you have to "resolve" the moniker. The term used in the literature is "binding the object". The result of resolving the moniker is a Bonobo::Unknown object. Think of a moniker as a pathname. And think of the binding process as the "open" system call on Unix. Example: Unix Files Monikers Object naming: path name moniker string representation Binding function: open(2) bonobo_get_object Return value: kernel file descriptor Bonobo::Unknown CORBA reference Binder: Kernel VFS+each FS bonobo_get_object + Bonobo::Moniker Persisting: none Moniker::QI(Persist) In the case of the file system, the kernel does the "resolution" of each path element by parsing one element of the file system, and the Virtual File System switch uses the current file system + mount points to resolve the ultimate file name. File Linking Monikers were originally implemented as part of the Microsoft OLE2 compound document system. They can be used effectively by applications during drag and drop and cut and paste operations to pass objects that must be linked by other applications. The source application would create a moniker for a given object that would fully identify it, and pass it through a drag and drop operation or a cut and paste operation to the recipient application. The recipient application then can resolve the moniker against the interface required (in the Bonobo case, Bonobo/Embeddable, or Bonobo/Control would be a common choice). Applications do not need to store the entire contents of linked information, they can just store a stringified representation of the moniker, and resolve it again at load time. Instance initialization Monikers can be used to initialize objects, as a way of passing arguments to your object. This is coupled with the Bonobo/ItemContainer interface and the Item Moniker. The Item Moniker is covered later. Resolution of a moniker against an interface A moniker can be resolved against different interfaces. The resulting object might be different depending on the interface that is being resolved. To illustrate this, here is an example, lets say we have the "http://www.helixcode.com" string representation of a moniker. The string representation of the moniker can be resolved against the "Bonobo/Control" interface: bonobo_get_object ("http://www.helixcode.com", "Bonobo/Control"); This could return an embeddable Mozilla component that is suitable to be embedded into your application as a widget (because we are requesting the moniker to return a Bonobo/Control interface). If the interface is resolved against the "Bonobo/Stream" interface,maybe Mozilla is not required, and the process could use a smaller process that just provides Bonobo/Streams, say a corbaified wget. The logic for this lives on the http: moniker handler. Core monikers Bonobo ships with a number of moniker handlers: the file moniker, the item moniker, the oafid moniker and the new moniker. The file moniker The file moniker is used to reference files. For instance: file:sales.gnumeric The file moniker will scan its argument until it reaches the special characters `#' or `!' which indicate the end of the filename. The file moniker will use the mime type associated with the file to find a component that will handle the file. Once the object handler has been invoked, the Moniker will try to feed the file to the component first through quering the PersistFile interface, and if this is not supported, through the PersistStream interface. The item moniker The item moniker is typically triggered by the "!" string in the middle. The item moniker can be used to implement custom object naming, or argument handling. The item moniker parses the text following '!' until the next '!' character, this is called the argument of the item moniker. During the resolution process, the item moniker will request from its parent the Bonobo/ItemContainer interface and will invoke the getObject on this interface with the argument. For example, in a Gnumeric spreadsheet this allows programmers to reference sub-objects by name. For instance, Workbooks can locate Sheet objects; Sheets can locate range names, cell names, or cell references. This moniker would reference the sheet named `Sales' in the workbook contained in the sales.gnumeric spreadsheet: sheet = bonobo_get_object ("sales.gnumeric!Sales", "Gnumeric/Sheet"); This other would reference the cell that has been named `Total' inside the Sheet "Sales": cell = bonobo_get_object ("sales.gnumeric!Sales!Total", "Gnumeric/Cell") The way this works from the container perspective, is that the container will implement the getObject (string) method, and would respond to the getObject request. Item monikers can also be used to perform instance initialization. The component that wants to support instance initialization needs to support the Bonobo/ItemContainer interface and implement a getObject method that would return the object properly initialized. For example, lets consider an image viewer component that can be configured, like this: image = bonobo_get_object ("file.jpg!convert_to_gray=on", "Bonobo/Control") The above example would activate the EOG component because of the file.jpg match, and then invoke EOG's ItemContainer implementation with the argument "convert_to_gray=on". getObject should return an object (which would be itself) but it would modify the instance data to set the "convert_to_gray" flag to on. Like this: Bonobo_Unknown eog_item_container_get_object (BonoboObject *o, char *name) { if (command_is (name, "convert_to_gray", &v)) image_set_convert_to_gray (o, v); ... bonobo_object_ref (o); return bonobo_objet_corba_objref (o); } The oafiid moniker The oafid: moniker handles activation using the Object Activation Framework. This allows application programmers to activate objects by their OAF ID, like this: gnumeric = bonobo_object_get ("oafiid:GNOME_Gnumeric_Workbook", iface) The "new:" moniker The new moniker requests from its parent the "Bonobo/GenericFactory" interface and invokes the method create_instance in the interface. Typically this moniker would be invoked like this: bonobo_get_object ("oafid:RandomFactory:new:", iface); In the example above "RandomFactory" is the OAFID for the factory for a certain object. During the resolution process, the "new:" moniker would request its parent to resolve against the IDL:GNOME/ObjectFactory:1.0 interface (which is the traditional factory interface in GNOME for creating new object instances) and then invoke the new_instance method on it. Historically GNORBA (the old GNOME object activation system) and OAF (the new object activation system) implemented a special "hack" to do this same processing. Basically, the description files for the object activation system was overloaded, there were three types of activation mechanism defined: activate object implementation from an executable. activate object implementation from a shared library. activate object implementation by launching another object, and querying the launched object for the ObjectFactory interface. The "new:" moniker basically obviates the need for the last step in the activation system. With OAF, using the OAF approach proves to be more useful, as it is possible to query OAF for components that have certain attributes, and the attributes for a factory object are not as interesting as the attributes for the instances themselves. Despite this, the "new:" moniker can be used for performing the operation of instance initialization in more complex scenarios that go beyond the scope of activation provided by OAF. Adding moniker handlers to the system Ideal monikers: There are two moniker handlers that would be interesting to implement: the Configuration Moniker and the VFS moniker. They both help the system overall, because the added simplicity of having a standard way of activating services in the system and given that the API to these services is CORBA-based, any programming language with CORBA/Bonobo support can make use of them without the need of a special language binding. I am convinced that this helps make the system more self consistant internally. The Configuration Moniker The configuration moniker is invoked by using the "config:" prefix. The string afterwards is the configuration locator. The moniker should support being querried against the "Bonobo/Property" or "Bonobo/PropertyBag" depending on whether we are requesting a set of attributes, or a single attribute. For example, retrieving the configuration information for a specific configuration property in Gnumeric would work like this: Bonobo_Property auto_save; CORBA_Any value; auto_save = bonobo_get_object ( "config:gnumeric/auto-save", "/Bonobo/Property"); value = bonobo_property_get_value (auto_save, &ev); if (value-> tc-> kind == CORBA_tk_bool) printf ("Value: %s\n", (CORBA_bool) value->_value ? "true" : "false"); else printf ("Property is not boolean\n"); In the above example, we first use the bonobo_get_object routine to locate the configuration object through its moniker. The return value from the bonobo_get_object is of type Bonobo_Property which is the standard Bonobo way of manipulating properties. This has two main advantages: By accessing the configuration engine through the moniker interface we have eliminated the need to define a C-specific API for the configuration management. The configuration could have been reached through any other programming language that supports CORBA. The GNOME project has always tried to define APIs that could be easily wrapped and accessed from various languages (particularly, we have done this with the toolkit and recently with the CORBA bindings). But even if we have taken special care of doing this, and there are continous efforts to wrap the latest and greatest APIs, widgets, and tools, the bindings typically lag a few weeks to monthsw behind the actual C API. By moving towards CORBA, we only need to support CORBA in the various programming languages and we get access to any new APIs defined by it. Any tools on the system that can manipulate a Bonobo::Property or ::PropertyBag (a GUI in a visual designer, or a configuration engine that persists/hidrates objects, or a browsing tool) can talk directly to the configuration engine all of a sudden, as we are using the same interface method across every language on the system. The Bonobo::Property interface is pretty comprehensive, and should address most needs, the methods are: string get_name (); TypeCode get_type (); any get_value (); void set_value (); any get_default (); string get_doc_string (); long get_flags (); Now, this interface as you can see does not specify an implementation for the actual backend. Given that this is just an interface, we do not care what the moniker will connect us to, we only care with the fact that we will be able to use the Property and PropertyBag interfaces. Configuration transactions Handling of transactional changes to the configuration system can be achieved by the use of the setValues interface in the PropertyBag. The implementation of the PropertyBag can either accept the values set, or it can do consistency checking of the values being set (for instance, to avoid the configuration to contradict itself, or store invalid values). If the values being set are invalid, an exception is thrown. It would be also possible to hook up an arbitrary consistency checking component in the middle, by inserting the consistency checking in the middle of the stream, like this: bonobo_get_object ("config:gnumeric/auto-save:gnumeric-consistency-check:", "Bonobo/Property"); Notice the `gnumeric-consistency-check:' moniker handler. This could just be a shared library consistency checking component if it needs to be. Listening to changes. One of the requirements for a modern desktop is to be react globally when changes are made to global settings. For example, in the GNOME desktop when a theme is changed, a special protocol inside Gtk+ is used to notify all the applications that they should reload their theme configuration. There are many other examples where applications need to keep track of the current setting. For example, when a preference is changed, we want the preference to take place right away, without us having to restart our running applications. This is easily achieved by registering a Listener with the Bonobo/EventSource in the PropertyBag. What about GConf? GConf is a configuration management infrastructure that provides the following features: A schema system for specifying the various configuration options, as well as their documentation and initial values (default values). A way for the system administrator to override values in a system-wide fashion (this encompasses a network-wise setup if desired). A change notification system: applications might be notified of changes to various values they might want to keep track of. There are two drawbacks to GConf currently: Although gconf provides pretty much everything that is required, but it is a C-based API that needs to be wrapped for every language that wants to support GConf. GConf is limited in the kind of information that can be stored on its database. A BonoboProperty stores a CORBA_Any which can contain any of the simple CORBA types (strings, integers, floating points, booleans), structures, arrays and unions. The actual engine and backend for GConf could become the configuration moniker handler, only the API would be replaced as well as the actual storage system to support the more complete CORBA_Any, and the ad-hoc CORBA interface can be replaced with a more powerful system. Configuration management: Open Issues Specifying the location for configuration. The syntax for accessing the configuration has not been defined, but we can cook this up pretty easily. Forcing the configuration data to be loaded from a specific location. Although the arguments to the moniker could be used to encode a specific location, for example: config:~/file.config!auto-save It seems more natural to use the file moniker to provide this information, for example: file:~/file.config!config:auto-save The config moniker can test for the presence of a parent, and if the parent exists, then it would request one of the Persist interfaces from it to load the actual configuration file, and provide access to it. Transactional setting of values. It might make sense to "batch" a number of changes done under a prefix to avoid listeners to a range of keys to reset themselves multiple times. Consider the case in which a command line tool makes various changes to the background properties, say the changes are done in this order: background = bonobo_get_object ("config:desktop/background", "PropertyBag"); bonobo_property_bag_set_values (background, bonobo_property_list_new ( "gradient", "string", "true", "color1", "string" "red", "color2", "string" "blue", &ev); If the real configuration program for handling the background is running at that point, it will have registered to be notified of changes to all those values. The changes might be very expensive. For example the code migh react to every change and recompute the whole background image on each change. An optimization would be to tag the beginning of the transaction and the end of it in the client code to allow listeners to get batched notification of changes: background = bonobo_get_object ("config:desktop/background", iface); bonobo_property_bag_batch_push (background); bonobo_property_set (background, "gradient", "true"); bonobo_property_set (background, "color1", "red"); bonobo_property_set (background, "color2", "blue"); bonobo_property_bag_batch_pop (background); This would allow the listener code to batch all the expensive requests into a single pass. Configuration handlers Consider the example above, we would like to be able to change properties on the system and have those properties to take effect independently of whether a listener is registered or not. A property handler might register with the configuration moniker to be launched when a property changes. This could be done in a file installed in a special location. The GNOME VFS becomes deprecated. The GNOME VFS provides an asyncronouse file-system interface abstraction that can be used to access local files, remote files, files in compressed files and more. The problem with the GNOME VFS is that it is very limited: it can only expose a file system like interface to its clients (very much like the Unix interface after which it was modeled). As covered before in the `Object Naming Space', Monikers define an object naming space, and monikers can be defined for any type of resource that the GNOME VFS supports (a transitional path might include a set of monikers implemented on top of the actual GNOME VFS). A file dialog could request a moniker to be resolved against a "Graphical File Listing" interface, which might result in a miniature Nautilus window to be embedded in the dialog box. It would be possible to entirely reuse the existing GNOME VFS code by providing monikers for the various access methods that would handle the special cases "Stream", "Storage" and "FileListing". Other interfaces will be plugged into the moniker handler to support the richer content. For instance, consider the "trashcan:" moniker. The trashcan moniker could be resolved against various interfaces. A file manager would resolve it against a DirectoryListing interface to display the contents of it; It could resolve it against a "Control" interface to get a trahscan custom view (to configure the values in the trashcan); a PropertyBag interface could be used to programmatically configure the various settings in it. Other monikers There is another family of moniker handlers that are worth stuyding. The filtering moniker handlers and the caching moniker handlers. The <literal>streamcache:</literal> moniker The idea of the streamcache: moniker is to be basically a shared library moniker handler that provides a cache for the IDL:Bonobo/Stream:1.0 interface. This moniker is very simple, during resolution it requests the IDL:Bonobo/Stream:1.0 interface from its parent and it can only expose the IDL:Bonobo/Stream:1.0 interface to clients. The plus is this: it is a shared library component, which will run in the address space of the application that will use the Stream, and it provides a cache to the parent Stream (so we can use small granular method invocations, and the stream cache can do the traditional buffering). Think of this difference as the one between an application using write()/read and the application using fwrite/fread/getc/putc: although many applications can implement their own buffering, most of the time just using the libc-provided ones (fwrite/fread/getc/putc) will do it. This is exactly what the streamcache: moniker will do: By appending this to a stringified representation of a moniker, you can get a Stream cache for free. The #gunzip, #utar filtering monikers The #utar moniker is a moniker that would implement tar file decoding (the same concept can be used for other archive formats). This moniker uses an auxiliary tar component handler. The moniker connects the tar component handler to the parent object's Stream interface and returns the resulting object. The result of the #utar moniker can be either a Bonobo/Stream (for a file reference) or Bonobo/Storage (for a directory reference). Like this: file:/home/miguel/mail-backup.tar#utar:2000/may/1001 ftp://ftp.helixcode.com/pub/sources/gnome-libs-1.2.tar.gz#gunzip#utar:/README The beauty of this system is that if two applications use the same moniker, they would be sharing the same data without having to uncompress two times the same tar file. This is all achieved transparently. This would happen in quite a few instances, for example, if you are exploring a compressed tar file in a file manager and you drag the file to another Moniker-aware application, say Gnumeric, Gnumeric would be using the same file that was openened by the file manager instead of having two uncompressed sets of files in your system. The above scenario is particularly useful if you have little space, or if the process of untaring a file would take a long time. The propertycache: moniker Accessing individual properties over and over might take quite some time due to the CORBA round trips. The propertycache: moniker would be also a shared library handler that would basically activate the property moniker, and would set up property listeners (which would be notified of changes in the property data base). So if your application does a lot of queries to a property, you might just want to append this to improve performance and not care about doing clustered reads, the cache would do this for you. This is not implemented, as it requires the property moniker to be written. The accidental invention Monikers were invented originally in OLE2 to implement Object Linking. The OLE2 programmers accidentally invented an object naming system. This object naming system is not only very powerful, but it is extensible and it helps make the system more consistent. Monikers and the GNOME VFS Some people ask: monikers look as if they are just re-implementing the GNOME-VFS, why is that? For a storage backend you can always use something like bonobo_storage_new ("gnome-vfs") and get away with life. The main difference between the gnome-vfs, and monikers is that monikers are used to implement an object-based name space, while the gnome-vfs is a fine abstraction for naming files and directories. The moniker space goes well beyond this. When Ettore, Nat and I designed the GNOME VFS in Paris Ettore had a grander vision than Nat and I had. Nat and I wanted exactly what the GNOME VFS is: an asyncronous, pluggable virtual file system implementation. Ettore wanted something more general, something that would implement an object name space. And some of the design decisions in the core of the gnome-vfs reflect some of this thinking, but the API and the infrastructure was limited to handling files. Various months later, we finally understood completely the moniker system, and we realized that monikers were an object naming space, and that if done correctly monikers would be able to implement Ettore's initial vision for having an object-based naming space. Open Issues We will need to research the implementation requirements for asyncronous parsing and resolution of Monikers. Currently, both the Object Activation Framework and Bonobo support asyncronous activation. Implementing this for Monikers should not be hard, but might require a few changes in the Moniker interface. Conclusion Monikers are very powerful mechanisms that can unify the name space of objects in the system and can be used to provide a uniform access method for a wide variety of tasks: Component initialization Addressing objects Addressing sub-objects in a compound document. Implementing Object Linking. Implementing nested objects, and nested handlers for file systems. Acknowledgements The Bonobo moniker implementation was done by Michael Meeks. The design for the Bonobo moniker system was done by Ettore Perazzoli, Michael Meeks and myself. libbonobo-2.32.1/doc/api/libbonobo-overrides.txt0000664000076400007640000000000111430735223016512 00000000000000 libbonobo-2.32.1/doc/api/Makefile.in0000664000076400007640000006724111546333027014100 00000000000000# Makefile.in generated by automake 1.11.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008, 2009 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@ # -*- mode: makefile -*- #################################### # Everything below here is generic # #################################### VPATH = @srcdir@ 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@ DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \ $(top_srcdir)/gtk-doc.make subdir = doc/api ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.in 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_$(V)) am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) am__v_GEN_0 = @echo " GEN " $@; AM_V_at = $(am__v_at_$(V)) am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) 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 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@ ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ AR = @AR@ AS = @AS@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ BONOBO_ACTIVATION_LT_VERSION_INFO = @BONOBO_ACTIVATION_LT_VERSION_INFO@ BONOBO_MAJOR_VERSION = @BONOBO_MAJOR_VERSION@ BONOBO_MICRO_VERSION = @BONOBO_MICRO_VERSION@ BONOBO_MINOR_VERSION = @BONOBO_MINOR_VERSION@ BONOBO_SLAY = @BONOBO_SLAY@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DISABLE_DEPRECATED_CFLAGS = @DISABLE_DEPRECATED_CFLAGS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GREP = @GREP@ GTHREAD_CFLAGS = @GTHREAD_CFLAGS@ GTHREAD_LIBS = @GTHREAD_LIBS@ GTKDOC_CHECK = @GTKDOC_CHECK@ GTKDOC_MKPDF = @GTKDOC_MKPDF@ GTKDOC_REBASE = @GTKDOC_REBASE@ HTML_DIR = @HTML_DIR@ IF_BSD_PS = @IF_BSD_PS@ IF_CYGWIN_PS = @IF_CYGWIN_PS@ IF_POSIX_PS = @IF_POSIX_PS@ 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@ LD = @LD@ LDFLAGS = @LDFLAGS@ LEX = @LEX@ LEXLIB = @LEXLIB@ LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ LFLAGS = @LFLAGS@ LIBBONOBO_CFLAGS = @LIBBONOBO_CFLAGS@ LIBBONOBO_LIBS = @LIBBONOBO_LIBS@ LIBBONOBO_LT_VERSION_INFO = @LIBBONOBO_LT_VERSION_INFO@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIPO = @LIPO@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ NM = @NM@ NMEDIT = @NMEDIT@ OBJDUMP = @OBJDUMP@ OBJEXT = @OBJEXT@ ORBIT_IDL = @ORBIT_IDL@ OTOOL = @OTOOL@ OTOOL64 = @OTOOL64@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PERL_PATH = @PERL_PATH@ PKG_CONFIG = @PKG_CONFIG@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ PS_PATH = @PS_PATH@ RANLIB = @RANLIB@ SEARCHPATHSEP = @SEARCHPATHSEP@ SED = @SED@ SERVER_CFLAGS = @SERVER_CFLAGS@ SERVER_LIBS = @SERVER_LIBS@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SOPREFIX = @SOPREFIX@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ WARN_CFLAGS = @WARN_CFLAGS@ XGETTEXT = @XGETTEXT@ YACC = @YACC@ YFLAGS = @YFLAGS@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ 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@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ lt_ECHO = @lt_ECHO@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ 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@ AUTOMAKE_OPTIONS = 1.6 SUBDIRS = figures # The name of the module DOC_MODULE = libbonobo # The top-level SGML file. DOC_MAIN_SGML_FILE = $(DOC_MODULE)-docs.sgml # The directory containing the source code. Relative to $(srcdir). # gtk-doc will search all .c & .h files beneath here for inline comments # documenting functions and macros. DOC_SOURCE_DIR = ../../bonobo # Extra options to supply to gtkdoc-scan. SCAN_OPTIONS = --deprecated-guards="BONOBO_DISABLE_DEPRECATED" # Extra options to supply to gtkdoc-mkdb. MKDB_OPTIONS = --sgml-mode --output-format=xml # Extra options to supply to gtkdoc-fixref. FIXXREF_OPTIONS = # Used for dependencies. HFILE_GLOB = CFILE_GLOB = # Header files to ignore when scanning. IGNORE_HFILES = Bonobo.h bonobo-marshal.h bonobo-macros.h bonobo-x-object.h\ bonobo-stream.h # Images to copy into HTML directory. HTML_IMAGES = figures/persist.png figures/persist-file.png\ figures/persist-storage.png figures/persist-stream.png\ figures/stream.png figures/storage.png figures/unknown.png\ figures/running-context.png # Extra SGML files that are included by $(DOC_MAIN_SGML_FILE). content_files = faq.xml debugging.xml properties.xml refcounting.xml\ monikers-overview.xml # Other files to distribute. extra_files = # CFLAGS and LDFLAGS for compiling scan program. Only needed # if $(DOC_MODULE).types is non-empty. GTKDOC_CFLAGS = \ @CFLAGS@ \ -DGNOMELOCALEDIR=\""$(datadir)/locale"\" \ $(LIBBONOBO_CFLAGS) \ -I$(top_srcdir) \ -I$(top_builddir) GTKDOC_LIBS = $(top_builddir)/bonobo/libbonobo-2.la $(LIBBONOBO_LIBS) # If you need to override some of the declarations, place them in the # $(DOC_MODULE)-overrides.txt file and uncomment the second line here. DOC_OVERRIDES = @GTK_DOC_USE_LIBTOOL_FALSE@GTKDOC_CC = $(CC) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) @GTK_DOC_USE_LIBTOOL_TRUE@GTKDOC_CC = $(LIBTOOL) --tag=CC --mode=compile $(CC) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) @GTK_DOC_USE_LIBTOOL_FALSE@GTKDOC_LD = $(CC) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) @GTK_DOC_USE_LIBTOOL_TRUE@GTKDOC_LD = $(LIBTOOL) --tag=CC --mode=link $(CC) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) @GTK_DOC_USE_LIBTOOL_FALSE@GTKDOC_RUN = @GTK_DOC_USE_LIBTOOL_TRUE@GTKDOC_RUN = $(LIBTOOL) --mode=execute # We set GPATH here; this gives us semantics for GNU make # which are more like other make's VPATH, when it comes to # whether a source that is a target of one rule is then # searched for in VPATH/GPATH. # GPATH = $(srcdir) TARGET_DIR = $(HTML_DIR)/$(DOC_MODULE) EXTRA_DIST = \ $(content_files) \ $(HTML_IMAGES) \ $(DOC_MAIN_SGML_FILE) \ $(DOC_MODULE)-sections.txt \ $(DOC_MODULE)-overrides.txt DOC_STAMPS = scan-build.stamp tmpl-build.stamp sgml-build.stamp html-build.stamp \ pdf-build.stamp \ $(srcdir)/tmpl.stamp $(srcdir)/sgml.stamp $(srcdir)/html.stamp \ $(srcdir)/pdf.stamp SCANOBJ_FILES = \ $(DOC_MODULE).args \ $(DOC_MODULE).hierarchy \ $(DOC_MODULE).interfaces \ $(DOC_MODULE).prerequisites \ $(DOC_MODULE).signals REPORT_FILES = \ $(DOC_MODULE)-undocumented.txt \ $(DOC_MODULE)-undeclared.txt \ $(DOC_MODULE)-unused.txt CLEANFILES = $(SCANOBJ_FILES) $(REPORT_FILES) $(DOC_STAMPS) @ENABLE_GTK_DOC_TRUE@@GTK_DOC_BUILD_HTML_FALSE@HTML_BUILD_STAMP = @ENABLE_GTK_DOC_TRUE@@GTK_DOC_BUILD_HTML_TRUE@HTML_BUILD_STAMP = html-build.stamp @ENABLE_GTK_DOC_TRUE@@GTK_DOC_BUILD_PDF_FALSE@PDF_BUILD_STAMP = @ENABLE_GTK_DOC_TRUE@@GTK_DOC_BUILD_PDF_TRUE@PDF_BUILD_STAMP = pdf-build.stamp all: all-recursive .SUFFIXES: $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/gtk-doc.make $(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) --foreign doc/api/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --foreign doc/api/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 \ test -d "$(distdir)/$$subdir" \ || $(MKDIR_P) "$(distdir)/$$subdir" \ || exit 1; \ fi; \ done @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ 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 check-am: all-am check: check-recursive all-am: Makefile all-local 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: $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install 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 clean-local mostlyclean-am distclean: distclean-recursive -rm -f Makefile distclean-am: clean-am distclean-generic distclean-local \ distclean-tags dvi: dvi-recursive dvi-am: html: html-recursive html-am: info: info-recursive info-am: install-data-am: install-data-local 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 \ maintainer-clean-local mostlyclean: mostlyclean-recursive mostlyclean-am: mostlyclean-generic mostlyclean-libtool pdf: pdf-recursive pdf-am: ps: ps-recursive ps-am: uninstall-am: uninstall-local .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 all-local check check-am clean clean-generic \ clean-libtool clean-local ctags ctags-recursive dist-hook \ distclean distclean-generic distclean-libtool distclean-local \ distclean-tags distdir dvi dvi-am html html-am info info-am \ install install-am install-data install-data-am \ install-data-local 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 maintainer-clean-local mostlyclean \ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ tags tags-recursive uninstall uninstall-am uninstall-local @ENABLE_GTK_DOC_TRUE@all-local: $(HTML_BUILD_STAMP) $(PDF_BUILD_STAMP) @ENABLE_GTK_DOC_FALSE@all-local: docs: $(HTML_BUILD_STAMP) $(PDF_BUILD_STAMP) $(REPORT_FILES): sgml-build.stamp #### scan #### scan-build.stamp: $(HFILE_GLOB) $(CFILE_GLOB) @echo 'gtk-doc: Scanning header files' @-chmod -R u+w $(srcdir) @_source_dir='' ; for i in $(DOC_SOURCE_DIR) ; do \ _source_dir="$${_source_dir} --source-dir=$$i" ; \ done ; \ cd $(srcdir) && \ gtkdoc-scan --module=$(DOC_MODULE) --ignore-headers="$(IGNORE_HFILES)" $${_source_dir} $(SCAN_OPTIONS) $(EXTRA_HFILES) @if grep -l '^..*$$' $(srcdir)/$(DOC_MODULE).types > /dev/null 2>&1 ; then \ CC="$(GTKDOC_CC)" LD="$(GTKDOC_LD)" RUN="$(GTKDOC_RUN)" CFLAGS="$(GTKDOC_CFLAGS) $(CFLAGS)" LDFLAGS="$(GTKDOC_LIBS) $(LDFLAGS)" gtkdoc-scangobj $(SCANGOBJ_OPTIONS) --module=$(DOC_MODULE) --output-dir=$(srcdir) ; \ else \ cd $(srcdir) ; \ for i in $(SCANOBJ_FILES) ; do \ test -f $$i || touch $$i ; \ done \ fi @touch scan-build.stamp $(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt: scan-build.stamp @true #### templates #### tmpl-build.stamp: $(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt @echo 'gtk-doc: Rebuilding template files' @-chmod -R u+w $(srcdir) @cd $(srcdir) && gtkdoc-mktmpl --module=$(DOC_MODULE) $(MKTMPL_OPTIONS) @touch tmpl-build.stamp tmpl.stamp: tmpl-build.stamp @true $(srcdir)/tmpl/*.sgml: @true #### xml #### sgml-build.stamp: tmpl.stamp $(DOC_MODULE)-sections.txt $(srcdir)/tmpl/*.sgml $(expand_content_files) @echo 'gtk-doc: Building XML' @-chmod -R u+w $(srcdir) @_source_dir='' ; for i in $(DOC_SOURCE_DIR) ; do \ _source_dir="$${_source_dir} --source-dir=$$i" ; \ done ; \ cd $(srcdir) && \ gtkdoc-mkdb --module=$(DOC_MODULE) --output-format=xml --expand-content-files="$(expand_content_files)" --main-sgml-file=$(DOC_MAIN_SGML_FILE) $${_source_dir} $(MKDB_OPTIONS) @touch sgml-build.stamp sgml.stamp: sgml-build.stamp @true #### html #### html-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files) @echo 'gtk-doc: Building HTML' @-chmod -R u+w $(srcdir) @rm -rf $(srcdir)/html @mkdir $(srcdir)/html @mkhtml_options=""; \ gtkdoc-mkhtml 2>&1 --help | grep >/dev/null "\-\-path"; \ if test "$(?)" = "0"; then \ mkhtml_options=--path="$(srcdir)"; \ fi; \ cd $(srcdir)/html && gtkdoc-mkhtml $$mkhtml_options $(MKHTML_OPTIONS) $(DOC_MODULE) ../$(DOC_MAIN_SGML_FILE) @test "x$(HTML_IMAGES)" = "x" || ( cd $(srcdir) && cp $(HTML_IMAGES) html ) @echo 'gtk-doc: Fixing cross-references' @cd $(srcdir) && gtkdoc-fixxref --module=$(DOC_MODULE) --module-dir=html --html-dir=$(HTML_DIR) $(FIXXREF_OPTIONS) @touch html-build.stamp #### pdf #### pdf-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files) @echo 'gtk-doc: Building PDF' @-chmod -R u+w $(srcdir) @rm -rf $(srcdir)/$(DOC_MODULE).pdf @mkpdf_imgdirs=""; \ if test "x$(HTML_IMAGES)" != "x"; then \ for img in $(HTML_IMAGES); do \ part=`dirname $$img`; \ echo $$mkpdf_imgdirs | grep >/dev/null "\-\-imgdir=$$part "; \ if test $$? != 0; then \ mkpdf_imgdirs="$$mkpdf_imgdirs --imgdir=$$part"; \ fi; \ done; \ fi; \ cd $(srcdir) && gtkdoc-mkpdf --path="$(abs_srcdir)" $$mkpdf_imgdirs $(DOC_MODULE) $(DOC_MAIN_SGML_FILE) $(MKPDF_OPTIONS) @touch pdf-build.stamp ############## clean-local: rm -f *~ *.bak rm -rf .libs distclean-local: cd $(srcdir) && \ rm -rf xml $(REPORT_FILES) $(DOC_MODULE).pdf \ $(DOC_MODULE)-decl-list.txt $(DOC_MODULE)-decl.txt maintainer-clean-local: clean cd $(srcdir) && rm -rf xml html install-data-local: @installfiles=`echo $(srcdir)/html/*`; \ if test "$$installfiles" = '$(srcdir)/html/*'; \ then echo '-- Nothing to install' ; \ else \ if test -n "$(DOC_MODULE_VERSION)"; then \ installdir="$(DESTDIR)$(TARGET_DIR)-$(DOC_MODULE_VERSION)"; \ else \ installdir="$(DESTDIR)$(TARGET_DIR)"; \ fi; \ $(mkinstalldirs) $${installdir} ; \ for i in $$installfiles; do \ echo '-- Installing '$$i ; \ $(INSTALL_DATA) $$i $${installdir}; \ done; \ if test -n "$(DOC_MODULE_VERSION)"; then \ mv -f $${installdir}/$(DOC_MODULE).devhelp2 \ $${installdir}/$(DOC_MODULE)-$(DOC_MODULE_VERSION).devhelp2; \ mv -f $${installdir}/$(DOC_MODULE).devhelp \ $${installdir}/$(DOC_MODULE)-$(DOC_MODULE_VERSION).devhelp; \ fi; \ $(GTKDOC_REBASE) --relative --dest-dir=$(DESTDIR) --html-dir=$${installdir}; \ fi uninstall-local: @if test -n "$(DOC_MODULE_VERSION)"; then \ installdir="$(DESTDIR)$(TARGET_DIR)-$(DOC_MODULE_VERSION)"; \ else \ installdir="$(DESTDIR)$(TARGET_DIR)"; \ fi; \ rm -rf $${installdir} # # Require gtk-doc when making dist # @ENABLE_GTK_DOC_TRUE@dist-check-gtkdoc: @ENABLE_GTK_DOC_FALSE@dist-check-gtkdoc: @ENABLE_GTK_DOC_FALSE@ @echo "*** gtk-doc must be installed and enabled in order to make dist" @ENABLE_GTK_DOC_FALSE@ @false dist-hook: dist-check-gtkdoc dist-hook-local mkdir $(distdir)/tmpl mkdir $(distdir)/html -cp $(srcdir)/tmpl/*.sgml $(distdir)/tmpl cp $(srcdir)/html/* $(distdir)/html -cp $(srcdir)/$(DOC_MODULE).pdf $(distdir)/ -cp $(srcdir)/$(DOC_MODULE).types $(distdir)/ -cp $(srcdir)/$(DOC_MODULE)-sections.txt $(distdir)/ cd $(distdir) && rm -f $(DISTCLEANFILES) $(GTKDOC_REBASE) --online --relative --html-dir=$(distdir)/html .PHONY : dist-hook-local docs #DOC_OVERRIDES = $(DOC_MODULE)-overrides.txt # include common portion ... # 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: libbonobo-2.32.1/doc/api/libbonobo.types0000664000076400007640000000065311546334245015063 00000000000000#include bonobo_generic_factory_get_type bonobo_storage_mem_get_type bonobo_event_source_get_type bonobo_persist_stream_get_type bonobo_moniker_extender_get_type bonobo_object_get_type bonobo_item_container_get_type bonobo_stream_mem_get_type bonobo_persist_get_type bonobo_item_handler_get_type bonobo_listener_get_type bonobo_persist_file_get_type bonobo_shlib_factory_get_type bonobo_moniker_simple_get_type libbonobo-2.32.1/doc/api/debugging.xml0000664000076400007640000001326211430735223014476 00000000000000 Debugging LIBBONOBO Library Debugging Bonobo component debugging advice, version 0.1 by Michael Meeks <mmeeks@gnu.org> Since it is not transparently obvious how to debug Bonobo components the following suggestions may be of use. Read the FAQ This will cover particularly common errors and their solutions obviating the need for further debugging. Versions It is vital to ensure that the correct versions of both the component and the container are being run. The safest way to make sure this is the case is to explicitly specify the path eg. ./bonobo-my-component & ./my-test-container Correct install It is rather important to make sure that bonobo has compiled and installed correctly. If you are using CVS ensure that your bonobo has installed without errors and that you have run ldconfig. Stale processes It is a good idea to check there are no stale component processes running in the background, check with ps ax | grep 'bonobo-my-component' or just: bonobo-slay Debugging So: debugging. The best way to do this is to have two X-terms, in one run the component: gdb ./bonobo-my-component $ r And in the second run the container: gdb ./my-test-container $ r Putting breakpoints in shared libraries such as bonobo is not possible until they have been linked in. Hence break in main, and then start populating your breakpoints. Ok, so it seems some people also get horribly confused by libtool libraries that are in fact here to help; libtool creates a shell script in place of the binary to allow non-installed libraries to be linked correctly. That aside you need to do: $ libtool gdb ./my-program-name. NB. don't go fiddling in .libs, you will get burned. NNB. it seems that emacs' debug mode doesn't like this; you have to write a small 'libtool gdb' wrapper script eg. 'libtool gdb $@' CORBA method tracing There is beautiful built in ORBit2 method tracing facility that will show you all CORBA invocations, their objects, arguments, microsecond timestamps etc. To use it you need to configure ORBit2 with the --enable-debug switch and then either define the environment variable ORBIT2_DEBUG or use the ORBDebugFlags command line option or orbitrc flag. See the ORBit2 FAQ for more info. Order of execution It is of course important to ensure that the component has registered before executing the container. A good guide is to wait until your hard disk has stopped thrashing madly before running the container. Nothing will activate! export BONOBO_ACTIVATION_DEBUG_OUTPUT=1 bonobo-slay And try again - it's possible that a debug message is being suppressed by bonobo-activation-server that this will show you. Nothing seems to happen, the code just locks Check that you are doing either a bonobo_main() or a bonobo_activate() followed by gtk_main(). Failure to do this will cause strange lockups, caused because the POA is still queueing incoming requests waiting to be activated. NB. this must be done in both container and component. Getting more information If you are doing serious development consider compiling gtk+, glib and bonobo with debugging symbols: export CFLAGS='-g' ; ./configure If you suspect the name server of causing problems use type: export BONOBO_ACTIVATION_DEBUG_EXERUN=1 to get debug to the console, simply adding a breakpoint in g_log will help get at the innards of the bonobo-activation process. Debugging bonobo-activation This is often best done by running: gdb ./bonobo-activation r --ac-activate And then cutting and pasting the IOR it spews out into /tmp/orbit-$USER/reg:...-local. The last resort And finally when the handfuls of hair are coming out thick and fast, consider reading the source, it only looks scary, it won't bite. Talk to the experts. Try reading the mailing list archive . Alternatively if you wish to buy in the programming expertise to meet an agressive deadline see: . libbonobo-2.32.1/doc/api/faq.xml0000664000076400007640000006677111430735223013327 00000000000000 Common Questions 3 Common Questions Common Questions Find answers to common questions in the libbonobo manual Questions and Answers Miguel de Icaza (miguel@helixcode.com) This is a work in progress. Please mail me before making any changes to this document. What is Bonobo? Bonobo is a component architecture for creating reusable and distributed software components. These software components interact with each other through well defined interfaces which are specified in the CORBA Interface Definition Language. We distinguish between `Bonobo' the name of the component architecture, and `bonobo' which is the C-based easy to use implemenatation of the Bonobo component architecture. The bonobo distribution consists of the following pieces: The Bonobo interface definition files: these establish the standard interfaces used by Bonobo-based applications. The core Bonobo runtime: Bonobo contains a rich API for dealing Bonobo Objects (activation for example). The GObject-Based (and hence C-based) Bonobo framework for creating new Bonobo::Unknown derived interfaces. These are used to simplify the development of CORBA-servers using the C language binding. Each derivative of a BonoboObject implements an interface derived from IDL:Bonobo/Unknown:1.0. A set of ready-to-use BonoboObjects derivatives that can be used in a variety of situations. These are considered developer "sugar", although not required, they greatly simplify the development of Bonobo-based applications. A set of "sugar" functions for manipulating client-side objects. What is CORBA? What is a component? A component is a ( preferably small ), re-usable piece of software, with well defined interfaces and interactions. In this context these interfaces are described in IDL and the interactions via. CORBA. Is it possible to use Bonobo components in my favorite language? You will need your favorite language to support CORBA. There are various CORBA implementations with a different degree of completness that you can use: Owen Taylor has written Perl bindings for CORBA using ORBit. James Henstridge has written Python binding for CORBA. Dan Barlow has written Common Lisp bindings for CORBA. C++ has piles of language bindings. You need your CORBA implementation to at least let you invoke methods on other CORBA objects as well as allowing you to implement CORBA objects. Bonobo uses in various places callback mechanisms and these require the later functionality. For instance, there is an old Emacs Lisp implementation that did not allow you to create CORBA object servers. Are there other implementations of Bonobo? There is a work in progress to implement Bonobo in other languages, although most languages will want to reuse parts of the core runtime to avoid duplicating a large piece of code that is better kept centralized and reused. FIXME: include a detailed list of the things that are conveniently not wrapped. Is it possible to implement Bonobo components in language X? Yes. First of all, it is important that your language has CORBA bindings, or that a suitable CORBA implementation is available for you. You want if possible to get a CORBA 2.2 implementation, but this is not required. It does not matter what language you are using, you can implement Bonobo Components by implementing the interface that your component wants to support. Depending on your language, you will want to wrap some bits from Bonobo (for instance, the core runtime) or you will want to provide an alternate implementation or no implementation at all. What is ORBit? ORBit is a CORBA implementation with a C mapping of the CORBA 2.2 specification mostly written by Elliot Lee and Dick Porter. You can find more about ORBit here ORBit is designed to be a small CORBA implementation that can be embedded in most applications on the desktop. It also happens to be one of the fastest CORBA implementations in existance. It supports a number of CORBA features: C Language mapping. A full POA implementation. The Dynamic Invocation Interface. The Dynamic Skeleton Interface. CORBA Any values. Typecodes. And it comes with a number of libraries that implement a few of the CORBA services (Cos) I am interested in CORBA, where can I learn more? CORBA is a standard published by the Object Management Group, you can download various of their specifications from their web site See, for example, the C Language Mapping. FIXME: include pointers to more relevant documents. What can I do with `bonobo'? What is an OAFID? The OAFID is a unique identifier for a specific object implementation and it is used to resolve uniquely. This ID is used to activate CORBA servers implementations. For example, this OAFID represents the Gnumeric workbook factory object: OAFIID:GNOME_Gnumeric_WorkbookFactory What is a Factory? A factory is an object that makes other objects. eg. a Gnumeric factory might make Workbook objects. Where does the OAFID come from? What is a Control? A Control is a 'componentized' version of a Widget. ie. A Control is a (single view) Graphical component. In the Gtk+ implementation a Control contains a GtkWidget, it also has associated 'properties', providing an easy way to customize basic features of the control without creating an idl interface. A control is often used inside a BonoboWidget, which acts as a container of Controls. The BonoboWidget is a normal GtkWidget that can be inserted into a GtkContainer. What is a PropertyBag, What is a Property? See . What are the activation methods in Bonobo? The prefered method of activating objects is through the bonobo_get_object function. This one does moniker based activation. Like this: For example this activates gnumeric and returns a GNOME::Gnumeric::Worbook CORBA object reference: bonobo_get_object ("OAFIID:GNOME_Gnumeric_Workbook", "GNOME/Gnumeric/Workbook"); The following launches an image handler: bonobo_get_object ("file:image.jpeg", "Bonobo/Control") Does Bonobo support in-proc components? Yes, this depends on how you setup your component, however currently there are very few in-proc gnome components, due to various debugging problems. What is that long string of identifiers. Can you show me a simple Bonobo component? How can I write user interfaces with Glade? I want to pack a widget using Bonobo. Can I write GUI-less Bonobo components? Yes, you can. Bonobo is in no way tied to the X11 environment, although it fully supports it. The C implementation of Bonobo uses GObjects as its base class, and hence you need to link against the glib-object libraries . How can I write a configure script that detects Bonobo? PKG_CHECK_MODULES(BONOBO, libbonobo-2.0) See pkg-config(1) for more details. How do I compile and link a sample Bonobo application? If your source file is in the file component.c, you can compile it by using the following command line: cc `pkg-config --cflags libbonobo-2.0` -c component.c To link, you use the command line: cc `pkg-config --libs libbonobo-2.0` component.o You would replace libbonobo-2.0 for libbonoboui-2.0 if you are using the GUI/Gtk+ features of Bonobo and include libgnomeprint-2.0 if you are using any of the printing facilities for components. Where can I find examples of Bonobo use? There are various sample programs in the Bonobo distribution and they are mostly intended to either excercise a part of Bonobo or to show how a specific feature in Bonobo is implemented. You can find the sample programs in bonobo/samples; A few simple components are in bonobo/components; There are various other test programs shipped with Bonobo as well (like gshell) For more advanced uses of Bonobo, you might want to look into Gnumeric, Nautilus or Evolution. I noticed the lack of an IDispatch-like interface in Bonobo, how do you cope with this problem? CORBA provides a better solution to IDispatch at the CORBA level which obviates the need to have something like that. CORBA supports a mechanism on the client side called the Dynamic Invocation Interface (DII) which allows programmers to build their own CORBA request to a server. On the server side CORBA supports the Dynamic Skeleton (or Server? FIXME) Interface which allows applications to decode arbitrary incoming CORBA requests. Scripting languages would typically implement some sort of support for DII and DSI. This enables scripting languages to talk to an arbitrary CORBA server or to implement any kind of CORBA interface. Some CORBA bindings for scripting languages (like Owen Taylor's ORBit support for Perl) use the ORBs internals, as they are sometime easier to use than DII/DSI. Can I write components in any language? You can write components in any language that has a CORBA binding or a CORBA implementation. The only requirement is that your components implement one or more of the Bonobo interfaces. The runtime for your language might want to reuse some of the C implementation features (like object activation, moniker activation and a few other utility functions). Is Bonobo tied to the Gtk toolkit? No, it is not. The `bonobo' implementation is tied to Gtk+, but another binding for another language and another toolkit should be simple to write. Is Bonobo tied to the ORBit implementation? We do not believe that Bonobo is tied to ORBit in any aspect, and there is even an implementation of Bonobo written in Java by Cactus (Gergo Erdi) called Monkeybeans that uses the Java ORB. What is a Moniker? Monikers are used to name objects, they effectively implement an object naming space. The naming space is extremely abstract. Read doc/Monikers for a more in-depth explanation. Why are you so excited about Monikers? Please read the bonobo/doc/Monikers document while I prepare the full answer. How can I write my own moniker? Show me some examples. What is the POA? Should I use the Bonobo "base classes"? The memory management issues seem complex. What are the differences? What does OAF do? What is a name server? Why would I want to use a Name Server? I have my own needs for a name server, can I use it instead of yours? Where are component properties stored? What are the component properties? What kind of authentication system does Bonobo use for its objects? Every CORBA object created by ORBit currently has a long and unique id created from a random sequence. To contact this object it is necessary to have the full object reference in order to dispatch a request to it (typically the object reference is obtained from the name server, or you can get it in a stringified version as an IOR). In the past, we used a cookie system that was attached to the object profile list (in a fully CORBA standard way) and this was used to authenticate the client and the server. I notice that a port is open in my computer for every application that creates CORBA object; is that insecure? That port is created by ORBit to accept CORBA requests. Before any request is processed by the ORB, the connection is authenticated (either by the use of the cookie mechanism, or because the IOR encodes a valid object reference). There are no known holes or exploits known on the incoming request handler in ORBit and if you know of anyone, we would love to fix that problem. Are communications between components in Bonobo encrypted? We depend on the ORBit layer to do any kind of encryption of the data. The current version of ORBit does not use SSL or any other secure transports, although patches for it are available. FIXME: where are these patches available from? The current version of ORBit (ORBit2) uses OpenSSL to provide encryption services. If communications are not encrypted, why do you support them? We guarantee that communications on the destkop are going to be secure, as nobody on the network will be able to sniff on your connections. When you go over the network, then traffic is not encrypted and it might be subject to sniffing. What is the problem with the standard C++ CORBA binding? What naming scheme should I use for my CORBA interfaces? If you are a GNOME/ project you need to register your GNOME/MyProject/ namespace, see bonobo/doc/NAMESPACE to see how these are allocated. Otherwise, you should use a Java like namespacing scheme based on the DNS. module Com { module MyCompany { module MyProduct { interface MyInterface { }; }; }; }; How should I create unique OAFIIDs for components? There are two ways to do this. Firstly, those projects with a defined namespace that implement new interfaces. To create an OAFIID simply take your namespace, and with delimiting '_' create an IID within your own defined space eg. OAFIID:GNOME_Evolution_Calendar_iTip_Factory OAFIID:Com_MyCompany_MyProduct_Control A suffix of the main function of the instance eg. _Control, _Factory, _Embeddable etc. is encouraged for clarity. The second method for generating OAFIIDs is appropriate for small components that implement no new interfaces, and hence need no special namespace co-ordination. Namespace the initial portion as a category grouping eg. OAFIID:GNOME_Panel_Applet_yetanotherclock: and add a UUID generated from the uuidgen application at the end to garentee uniqueness. What should I call my oaf / UI / IDL file ? The name of your oaf file should be based on your portion of the namespace, eg. GNOME_Evolution_Calendar.oaf Com_MyCompany_MyProduct.oaf This ensures that there will be no conflicts installing oaf files into a common directory. How should I name my CORBA methods ? CORBA methods should be named using mixed caps, following a convention similar to that of Java convention. ie. method names should be verbs or verb phrases in mixed case with the first leter lowercase and the first letter of any further words capitalized. interface MyInterface { long getLength (); void setLength (in long l); /* the ByName qualifier is a useful disambiguator */ long getValueByName (in string name); /* Factory methods should be named createWhatever */ Bonobo::Unknown createObject (); /* Methods that test boolean conditions */ boolean isDirty (); boolean hasLongLegs (); /* Mutator methods */ string toString (); double toDouble (); /* Signals */ oneway void notifyRename (); /* Calculate a number of types */ long countObjects (in Type t); }; With acroyms we fully capitalize eg. getURI, with abbreviations and contractions we capitalize the first letter eg. setDoc setId. cf. How should I name attributes and structure members? Again, use a Java-like convention eg. struct MyStructure { string theName; long heightInInches; }; Why when I do a gtk_widget_show_all does my Control not show up? The gtk_widget_show_all should not propagate over the plug / socket boundary, you need to ensure that you do a gtk_widget_show on your control. You can of course do shows / hides on the BonoboWidget ( the server side ) to show or hide the control. This also means that as a component author, you are protected from people messing with your internal show / hide logic. Aren't Monikers just a re-implementation of the GNOME VFS? Why not use the GNOME VFS? For a storage backend you can always use something like bonobo_storage_new ("gnome-vfs") and get away with life. The main difference between the gnome-vfs, and monikers is that monikers are used to implement an object-based name space, while the gnome-vfs is a fine abstraction for naming files and directories. The moniker space goes well beyond this. When Ettore, Nat and I designed the GNOME VFS in Paris Ettore had a grander vision than Nat and I had. Nat and I wanted exactly what the GNOME VFS is: an asyncronous, pluggable virtual file system implementation. Ettore wanted something more general, something that would implement an object name space. And some of the design decisions in the core of the gnome-vfs reflect some of this thinking, but the API and the infrastructure was limited to handling files. Various months later, we finally understood completely the moniker system, and we realized that monikers were an object naming space, and that if done correctly monikers would be able to implement Ettore's initial vision for having an object-based naming space. When I run my program loads of daemons start and don't stop, why? When you activate a Bonobo server the oaf daemon starts, this parses all your oafinfo files and then can respond to activation requests and queries. The first access latency in this case is relatively high, the second access is extremely quick, consequently it is advantageous to leave the oafd process running on a GNOME system. Eventualy many of the GNOME desktop services will be using oaf regularly, making unloading it wasteful. Most people are happy to have many daemons running on their machine - kswapd for example, or perhaps umpteen idle copies of mingetty - these are left running for performance reasons, and have a negligable impact on system performance. Finally, patches are welcome to add a _user configurable_ timeout and die option for those that begrudge the couple of Mb ( including all dependant shlibs ) to oafd. The command oaf-slay can be used to kill all oaf servers at any time and one can profitably look for memory savings elsewhere. libbonobo-2.32.1/doc/api/html/0000775000076400007640000000000011546334245013050 500000000000000libbonobo-2.32.1/doc/api/html/unknown.png0000664000076400007640000004251211546334245015201 00000000000000PNG  IHDRi  džIsBITO pHYs IDATxy\T? l Hjë)V)izM%u²4]қb ! 3۹dz͙a3?眙7g( *!@ֳgǏ{{{Kwk2(1x`^/MNP$XEbbΝ;z}hhhZZ';!DN8144433Shڴ4MONLȝ\@DD&>;D ON)vHJqĉŋ WTT^ o7?~ ag G?MN wlke7fj[/gNLhY6fs%i;AA|HPR bMSLNdY${yꩧufbGSYO~ӑ:f&?+Ԅ \;M,6mfYfPd(9w6-yB`lҹsgGG>}dddЍCСC;wOiTFwn׮݄ *++^jNjSN_ݡCm>/LDR%6JZ~}``ZڴiCo%s}}9s?C1sgKsuuuuu>}zMM ʕ+=<<|||+Wvȑ#v횕EoӦMqq1!$++k׮ǔ?ۊK.=L(K.&JuwYYgFLb .AsĤ <' wmKKK;uTyyytttll,'Nx\z&;%K/_~ݺu&Lܹs??|ʕC% 6lʕÇ[ԩSm۶}SJxǵZܹs_}U';P/fI-@2yNɿ Oݻww]V>|Xb@=/_޾}{F1999((HфNj*}'Of^sKMMҥZ޼ytl2'(1%vXuuu֭ fձ......~D\v!… Eou et\9)pйs熆alȉAw%5^U9_;AQ[2m޼hŊo# wq޽'x"--ڱ:j_Ja$N+B%xaF 9[ w\WP`uC MrHYd)X lC=DR=RY!{IIIO-Zv8(-<PJ˗W_W JSN$Қ1w-_vʔ)Zg͚5LB]sk+(gE,hX,lj fU(VR3HjOJdw!dVE[i)#'MĜsi!w1Ys…eeeyyy.]:z(. }ڊb3J>`DbXl*]Sl*kw1%J`rRAr*byUQ<-^p/\ݻyyy'O\r&HLB~~~b̆f4،#VdIK?-\T Wdw/}٬(Q2}77Pb3-V4_NN};;;K1m NP9dMNAfC U[QlFe N#Ԣ`D ?-\T!_YSsĮ0Y;PfM8eK(XMr\<= #'w2 m ^W[P~mEXpɔHl"V1<2MoK7be>S 1 n%r┙;M,Vl"kcc z- nn>f4I隠%9*&gZeUYSIZU>@b3-xZu\d0ǿ۷n*++cf1\0@S8'v6'OzjfCs ʯ(6ɵpJrHt•Mo bVeMb=1/"K.)'QlYE,+++_y]rFsicOS=3Aư]i5bĈ\+ƀw ={;wJJJ!ȝpݻwٳg׮]]\\.]jpk(xX<ȝb%ZN&ВU?[`+ `*@ VOX;xXA$SRn"!Drrj%@@ VOD?vB ]1a$*5UZ`@SyNk'/(itL Ԫ(]I1)6(o#9s&)))==~RR544Bjumm!`0п-ANÊ!sX6tmBJe01%b_fR<~lرcgΜYXXHcNˣo37$9:uꔗg0F#7 Cl:\NG:uodȝ`S\, NIB9*%*5JWlLD|hi R$I|b9\, NIB9*%*5JWlZ`i 4j5JRVFc;nkd?E LOO ւ 6O_#k)d0-(w5[K wR d@ wrpp [;7ȝ`4 B3@߂f v  r'-Nh&ȝ`; wݢs'@C 2<ȝA0r'y;U*&444--ځc@\wudff!wuhڴ4OEȝ`5H`;>!w!}ACۂ 6鳕QT}ȑ#*g3BiiJrsskLCAl ~wBH޽z3¥K!,j]'/^,_QQQz>333""eUWWwU{nA9`РAiXBHqqq -?0 >3ɝ*J,Xj: `ǎL猌 W0aJrttܺu !}ݐ!CݝBBB>cڷoR !!88XR:uj*g!Ȝo랍x,4]vBƌn4m۶%ܻwŋ6lXNNN}}~Ki׮ӟΚ'OO=!Dӝ:u(9Ϝ92s̢[%KP#B (/衾^>|̉i)Q i !K.e7^zHQԾ}!^^^fggB黵r`BH߾} 5W_}Iw%POB.^HQT޽]\\!ׯ(j\2'&G%^#&1//ݡC\B ?ן{'Okrs:Ι3ёR^^Nt۷oAUI0O<+'uޝ_ٳ'{!C̘1rܹB1؟+**ի / s"orsm=˛m˯.))i߾}2 ѵ$swuxxe C3-֭[Vnx <<2tP gEBfϞ}:eΞ=M6gZˣ(wtڵhd5949E=*N'i4K.uuu nnnk׮e:[. (0o>>3gټaڵ=zh4 ڻw/y޽W薁-;v`/D$w3rɒ%̧ϟ?lذ;w3cbbiҥC )((qDndd$}y(JaJKr'VeeZo_U#3w233%%%:vm7!pV~7n^V, ˖,̡9Kڵk,___B(zzzN:U捤G)P {T(+i NZQՂ[4 ׳gCCm9Jyܹe˖/qtt%\;AYjb0v `00_ hV E=*;*:u5'//`0o󟵛|CZ߾}SSSʶn믛m#Ða͝]ȌN~:};778"!DV?`F}tH2@ZI&͚5<>>^kc0._i 9sf `NN?>%% ʡ܉l|ʕ+!!!D1Qu'r'E=J(QlF`%z~(Qaaj}ƍӦMc̞=wFO.\ݻ7ѣh> IDATu'sx'AEPxTSSsիW;wd܉Jv?eʔnݺk׎dr NT'~'Xŋz333OE}'ȝ`b(#}*Q DaJĉ333#""/JKKo<,<x&;lA,x.??}W_;oAѣGϞ=͝^h/_ 巋NhhhCCWjLBx"H_cSAAA;wf#GVq (,,7nٳg===Eiƍ/^ܾ};QR)2!R~~O<Ѭ#4f̞=;22rҤIMGqqqxxBB(dv-ݻwӟ mlV71 M8u xg/SNxQ8qY,~ٳgeeeQFU#|?~[ֶm۶|rQQQ8zT&%%۷逸jI]ݫW KF,*2rHΝj-ZdX>|yFc|oʕ+۵kׄcGFFU#|f2wk׮uё{ŷ~[ , vKNM!̍ӿR{o埜MNpj~˗_~l2rcǎzxxз/_:99;33۷oo~;wnӦEQAAA999&;v5x0wo߾uV???WWUVQ~\oڴɬi[Ru~i4GyL/V񑘈'Nrv^^^+$tդ$WWWooy}:99uɓb!QuС=z8;; 2dbQ/',**;b!;v裏t:ӿQ,<1{?y#Gw3g6o,֓j5~O>rgMMɓ۵kt`7osLL̃OOO77k2[. Ab[BHrrN۷o_rrN;|O>$((HDDD\tzvFD?#Va%frɜ%V's F+xD,ApX8wyh$(2VY׮]ogee1OSΡIPPPP@QTCC+jСCSSS ,X@'B???nnnE ,ߎ=600̙3L7|{ѷÇӷ޽SE-]^PP0~;ҥ ީS|ζQնm犋c^X`1o;\~=88(Bꫯ?(t:99c=ϟ]pЍG/k֬y$"ԣG+Wз-Z!8{jj*!dȐ!<ȉ'$z .]\z5""bرe㮨)UGp#<´j7odwct䶄Bh4aǎڵ3 kٻwoZZZddd``/ja%°`rJ0Z#"' KKK.]C|̣s͛:믿޻w`QOR322m֫W3h % zѣy晼[Ӈnu떧'g[bG/_~GPlE|^pՕ? 6RRRHrJJ `HL#GHF/\i=ϟ]pOaaaLˊ޸qԩŞgpԩS9dɒKڵ۾}{]]^߶m[\\6C0 ^w2n ^wmKğoH=|#$:xkb Cb[9\;AYu'|`>VtI t,..~'WڵkwުUVgRnݺ7n̛7ލ;}4g777__ϳۇ \؛GEEmGGGu)߿?cǎ  8r~%÷={|JvZhhhZZhQeff@ r'41O{;qŋ+**JgffFDDl\ :~'$: ˗12@kA2%kjj)2 rvvys[]BȺu軟|IPPFt!!!&((h֭rss_|;99EEE 9_ܱcswK߿ɉ/[lժU3fEQTuuullK\\\uu53|ݮ])SpE%$$xzz]l :رct?/X ܪ'kNӭ^$8.&1.1٧.g+d,CLv-}NɝK.ׯEQK.2dHAAAEEɓgΜ,}SVV3fLAAAee%KK{zzܸq#66[HHѣGݻ/xzz TN{IIĒ핕W8p }cǎyyyEEE;vd [BBˆ#JKKKJJ:gf#FFEE%%%q6lX~~;w9[ ޻wk׮I$>ւwΜ9F#G%39uMF#%'f;9-;ׯ_(*(((33PRRΜmBnݢoWVVjv``oܸ!g Lcspp0 & 39۷pݞ=to?/(eΦo_zϏiojWrfxn_^nڵkC[abk痓CΖ;[Yp89..QHɉN?}Nlhh~SSS)Rmڴ!T*vgζ2믣F ?/,}wȑ_|';U׳b3s8)))=XPP!cMf+42I pQHɉN?}N̝7ntҝ)RUUU[n;OgϞw644ܻwOp bw }swǎ/"?fɜwZ.))L+v}n ͽg۶m۰aÔ)SC[}Lk___ ;-M) g;S#wsZf(j[n]bETTTvvv}}}fffLL nnnYYYL%KTVV39~˗/8p@؎;~w555ƍ\ӧ;utڜɓ'3>>>G=z_%֮۫]۳gO>I&O:?~{/**wazKKKsrb ,6lXAAݻwgϞM7r?8za0 CxxxFFDHbK|[jjj.]jupp͛Ŗ?9::>kT={%222ܹsE1U?~<,,CٮZPɓ ]]WWn:ygKw8vs='c]YY+8;;{{{\Rc,Gl(]$Yl\bcJbg3 ȝ`[d(RF*オYYY#FmIm`X;f7{;w$&&FGG[;Nh2 HLLvͮ{={ڵҥKX^f)%\w<ȝkLDSKb4+_̳E~%3ٳ穧"ABBX0 1+]VgĶJ۽;.պ6mF;;(6&ɝ7ق `5C:::vO?U*ժUt:V:ujmm-n4}]'i&LPYYIϙ3?d!=ǵiӆ+=Tmm)SZϚ5kw]///7ux؛TҿO+kjj\]]]]]O^SS^d~ztttڶm;|p^VRmٲsΎ}iV09?%@ux_v29qŋ߿ɓΝcO|zzziiܹsŋgffǧ4P .,++˻tѣGe=ڿ///Vkzz`@l ,(..ξvZ^^{\f q5*>>^{,!!Ap䴴SNGGGƚD:J lb})qX Bb bKjXVl=5s[l(???Ԃa PWWGQԌ3kVҌ*oD('r6q+hJL G㷋-ӂ™ a3|}NK<,Ū3 rؤ`JNG^z]vݻ3?eΟZ:%*tʏ|r s LQ r]Y,IDAT g*r'%}Ͷo߾eee[n}יׯ7rss_ԩS^^`0E5440ҷP6 /11>;pmZ:ݮʉar@cΜ9.!I5J$&<%ag3&&ʕ+uuu oZ||/L7kqqq999&L'M4k֬x9 5a„z(1`x?V;wjqb$$$0p\C:&䫮vtttvv˛>}I#7fnnna+EoI,A:`GMlņ ׬77%Soq&Jܜ:)XQNE f L]tIʝULOOP7nx['Oue3|v~'( gjA vf `N wBKKv`O;̃ `NMwQ<|Zz^"wIENDB`libbonobo-2.32.1/doc/api/html/libbonobo-bonobo-moniker-simple.html0000664000076400007640000005652211546334245022042 00000000000000 BonoboMonikerSimple

BonoboMonikerSimple

BonoboMonikerSimple — A super easy to use moniker implementation wrapper

Synopsis

                    BonoboMonikerSimple;
                    BonoboMonikerSimpleClass;
Bonobo_Unknown      (*BonoboMonikerSimpleResolveFn)     (BonoboMoniker *moniker,
                                                         const Bonobo_ResolveOptions *options,
                                                         const CORBA_char *requested_interface,
                                                         CORBA_Environment *ev);
BonoboMoniker *     bonobo_moniker_simple_construct     (BonoboMonikerSimple *moniker,
                                                         const char *name,
                                                         GClosure *resolve_closure);
BonoboMoniker *     bonobo_moniker_simple_new           (const char *name,
                                                         BonoboMonikerSimpleResolveFn resolve_fn);
BonoboMoniker *     bonobo_moniker_simple_new_closure   (const char *name,
                                                         GClosure *resolve_closure);

Object Hierarchy

  GObject
   +----BonoboObject
         +----BonoboMoniker
               +----BonoboMonikerSimple

Description

BonoboMonikerSimple makes writing monikers really extremely easy. To implement a moniker you only have to write 1 function. To register create the moniker object you have to use only 1 call. It can't get much simpler. If you want to use monikers instead of implementing them, you probably want to see bonobo-moniker-util instead.

Few people need to implement monikers, but if they do, this is how they should do it:

Example 15. A cut down file: moniker implementation

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
Bonobo_Unknown
bonobo_moniker_file_resolve (BonoboMoniker               *moniker,
                 const Bonobo_ResolveOptions *options,
                 const CORBA_char            *requested_interface,
                 CORBA_Environment           *ev)
{
    const char    *fname = bonobo_moniker_get_name (moniker);
    Bonobo_Unknown retval;
    g_warning ("Fname '%s'", fname);
    if (!strcmp (requested_interface, "IDL:Bonobo/Stream:1.0")) {
        BonoboStream *stream;
        stream = bonobo_stream_open ("fs", fname,
                         Bonobo_Storage_READ, 0664);
        if (!stream) {
            g_warning ("Failed to open stream '%s'", fname);
            CORBA_exception_set (ev, CORBA_USER_EXCEPTION,
                         ex_Bonobo_Moniker_InterfaceNotFound, NULL);
            return CORBA_OBJECT_NIL;
        }
        return CORBA_Object_duplicate (BONOBO_OBJREF (stream), ev);
    }
    return CORBA_OBJECT_NIL;
}


After implementing the resolve function, you need to create the new moniker in your standard factory:

Example 16. Creating a new simple moniker

1
2
3
4
5
6
7
8
9
10
11
12
static BonoboObject *
bonobo_std_moniker_factory (BonoboGenericFactory *this,
                const char           *object_id,
                void                 *data)
{
    g_return_val_if_fail (object_id != NULL, NULL);
    if (!strcmp (object_id, "OAFIID:Bonobo_Moniker_File"))
        return BONOBO_OBJECT (bonobo_moniker_simple_new (
            "file:", bonobo_moniker_file_resolve));
    else
        return NULL;
}


Details

BonoboMonikerSimple

typedef struct _BonoboMonikerSimple BonoboMonikerSimple;

A simplified BonoboMoniker.


BonoboMonikerSimpleClass

typedef struct {
	BonoboMonikerClass parent_class;
} BonoboMonikerSimpleClass;

BonoboMonikerSimple's class.


BonoboMonikerSimpleResolveFn ()

Bonobo_Unknown      (*BonoboMonikerSimpleResolveFn)     (BonoboMoniker *moniker,
                                                         const Bonobo_ResolveOptions *options,
                                                         const CORBA_char *requested_interface,
                                                         CORBA_Environment *ev);

Type of callback function that implements a simple moniker resolution.

moniker :

the moniker

options :

resolve options

requested_interface :

the requested interface (repoid string)

ev :

CORBA environment, in case an exception needs to be raised

Returns :

a Bonobo_Unknown as the result of the resolution

bonobo_moniker_simple_construct ()

BonoboMoniker *     bonobo_moniker_simple_construct     (BonoboMonikerSimple *moniker,
                                                         const char *name,
                                                         GClosure *resolve_closure);

Constructs a simple moniker

moniker :

the moniker to construct

name :

the name of the moniker eg. 'file:'

resolve_closure :

the closure used to resolve the moniker

Returns :

the constructed moniker or NULL on failure.

bonobo_moniker_simple_new ()

BonoboMoniker *     bonobo_moniker_simple_new           (const char *name,
                                                         BonoboMonikerSimpleResolveFn resolve_fn);

Create a new instance of a simplified moniker.

name :

the display name for the moniker

resolve_fn :

a resolve function for the moniker

Returns :

the moniker object

bonobo_moniker_simple_new_closure ()

BonoboMoniker *     bonobo_moniker_simple_new_closure   (const char *name,
                                                         GClosure *resolve_closure);

Create a new instance of a simplified moniker.

Instead of the Bonobo_ResolveOptions struct, the closure takes its contents as two arguments: BONOBO_TYPE_RESOLVE_FLAG and G_TYPE_LONG.

name :

the display name for the moniker

resolve_closure :

a closure for the resolve process.

Returns :

the moniker object

See Also

BonoboMoniker, BonoboMonikerSimple, bonobo-moniker-util, BonoboMonikerExtender

libbonobo-2.32.1/doc/api/html/general.html0000664000076400007640000000605311546334245015277 00000000000000 General

General

bonobo-main — Bonobo initialization.
BonoboRunningContext — a live object tracker
bonobo-shutdown
bonobo-i18n
bonobo-types
bonobo-context — Extensible runtime service interface
bonobo-exception — maps CORBA exceptions to user readable text, + helper macros
bonobo-application — a framework for unique application instance and automation
bonobo-app-client — client interface to remote BonoboApplication objects
libbonobo-2.32.1/doc/api/html/persist-storage.png0000664000076400007640000005426011546334245016640 00000000000000PNG  IHDRhxsBITO pHYs IDATx{\? Efeiks"5oiYyKyW"vH+ KJ*/xD7T;ò|>gV1 C,MRY;'9X;BQ[;gvy9/X "`RI (&%"`RI (&%Ьnܸz^g㏦k6$G}R> 0)fOӧ0 TUU;ƍvhܹskв`R͊NJKV;sLBHNNN5J'@cR`@:~8!$::]!Z]j4O>r=JhOj!K/5kxR̙3uuuG}{Ϟ=111!~cL "^)yуO^}^)۷.\ 0)Co(yW?ݻݳgOZȑ#ZOgΜ!NJynݺu޼y=zj&L8p }˞/$ʓ?'%M6 h>JxuK.K'%  >|ҥ'B:DP"]J `R͇^)$&&Bf͚u֭ӧO'''6K'%l^z}G))){ !?<-򄐛7oBnݺeN\*7@ao޼YXXرcGѭ.]f͚ .888t驧8qbHH!ã֭[>>>|mmmFFFzzC.]TYYٺuCoժ!$00G֭e˖}'ׯ_'DDD8qBN0)&aǟv57"`RI (&%"3Y9ph͕afҤII&5g`;'h4555jڱplɓkjj!555'Ov8`>\)F/b MÕa2׮]paR6lՄӧL>]UeSBN%6 Ue777B.4LJ&.PX`0)ĻLBb Mäle Kl&%`{D/PX`0)#qI $.(LJ{[I ؒz/PX`@.6!͛WF:xʕ4͠ R \)P[[k>-11Q@YYkSF+%`/_ܱcBkÍ"`RI (&%"`RI (&%"`RI (&%"`RI (&%ST`T X;`kG-|J (ؿ'%%Y; hV$;l|w+%"`RI (&%"`RI (&%"`RI (&%"`RI (&%"`RI (&%"(JvVg@Z(\)'O&$$ܼyځPR&1 c̙3׭[G%^`*{2ջHӱPm۶;!6lx]\\[jձcǞ={Wc=⮯OLL??L_ڵKVʕ+o!dڵ͗-[v̙:G%ϕEEE6lݻ9bIe/}-hBCCׯ_oF+Qo5aCb5۷o۷ 4p;w*C*i'X;f;t0bĈFXʜ9s233ʾ Bɓyu9͌1}-ȑ#ݻw'|te޽ !Ǐ/ !aaaO8SVBvH$LL.K/g8Yo=q^vmEEEAAѣlQ/fa1!ђ۷owsskPxf4o['N?~ ٮz-|v0 OW;+WJl%ajkk !~~~:/^0h//\@ T*GGGѪ0>['}`{왚pvvL;pemm-=zu߾z0 bKe/sRNxzzl)Sh4a|||azn Ä-^xx[n_-җ:.99\]]򗿰 cuP!dҤIt:G}ľkjjӦMDT='O-Z$aM6j_۷A^]]c^kkksrrBCCJѽT_ta?[6cH9ҭ[7ԞC3x'U%vF/^Ii߾VJwڵkz@@6Q*T/E#'(KbCݻ'ڂ#Fps KY:Te/}']ӥK;w:t(00-vښ[JJ dc]0'Lƽ ٺu֭[Hnɓ'۴iCCCC333333J1s;(!d˖-Gutt [4Ν;.S8zpd÷n? w(/_N ٓWh4[n DFFXa*]FEE}½Ƙ޳r?m ֎gжmYDT||}Zfw7h(-&\ߥK ߝ2555iiiZkѣG_p7{ @HH~@rt!77])zhhἷ$K 0wd233322;Nd\\ܻp&%=%{]-kTX[oe4'NhƐFEE-[^ncb!i'X;fIIIwyfMM͝;w>cB{I[t+;իW/Bn4ϑ0)g0̡C V۶m;jԨ={Hl{Ç:::=Z{Ab ì\~':ՐD  b ƫW^nb⮟:u^簾갰0.nt_____ߌ aǏtorFb, /B cƌquuyoI pANa˧;V kB5O[oJ.5*,s֭kڄbF`0DEEOecRM;1;6lXddFqppׯ{LuPSW^}\]]uF2_rѷZӀՒe˖ٳg={ڢ#4CCTSSg  TPPSZZiv ;K ^@B>hT*/k\zG۶mS5k,kGf{Il^-J @J]RyPLJQ'#IZQf[O=ȚS@i0)P=t:t`pOIb{J?-i݊2"J~d]]Ν;_z饒 a)TN1)KYJ`)Sŋӗ;wl߾׏?(5'OvqqYbo}[P1Z_c!?_W ZR+V/NJT(?oׄp[aT\_~Ν;BjjjrrrMJwJ(^:Xghޓ1o7>FYx%2GR]2/݉tZ%yhE0EE: 79ΑTzFzxMHw,8Q2TiO >@ MZD I" /a0ɋ'8:޴8zhzFzxMHw,8Q2M``_@3S=HXXؖ-[jjj臷njLs@&000''glc߿mǎm?]v24񻻻=z_~1Մp[aT\.޾}?twwEBn޼ijQSe$ׄDq-gEDy/`ނ̴2nKV+/L"LBk&&*RRN4i&#A=(1J&?`-`Y*܋l+L%oR4LJ!XntEZ.Aeّ8LYC|6*X@sD//y dZSK(@=z{YtMIXT4(*AF X'O N^zǫ@LU(Fe:shysY82SˋT;J` ¿VZlHt{D (ı_TVVk$a˨bjCќ8l:yI^D,gLV($] gxT  FbC(I`Ig0+&Nf!q>U5rpkͨbjCќ8l:yI^Dg`*BL4t 9Ij #]37Z&%M g@e˖UUUkBBBߣl8gVv]t!77Wtܫ I X[NX3/+%0555iii v\Р!#G222̍VwD;%grqGIzpc+ UJDr`RФDHO CTTmF^n9UaD%y][NXhJ9@{!íP"(5hH GN%ט7J҃\]]]G^Yi|LJr߀;HAKiZ8lٲegϞHm}Фy[*_Y0)$ R-jZTgSI 4jMhuԠ{|}} C8(ÍM Ѡ-c%Ih^^ / KfSI^y[$e<ff%ߋ B⏼e˖BO~ybéSXTT]O8I-[t166رn߾Mںu+!dƌgΜ1yFFF@@@~޽KyGVZժUÇ_tI"fiRФpjSZm4quu&b_lYiiJUXYº:z%]MT* xwwwDzsZ&H还y0)hRxN 4LPPPNN!$00TO?477W^y䑯ꭷb͋V~"WXzs*,,O?}g}V-**j۶mfӄ%qlHYHX.\Q@>M`̀ BW XhR (&%`Kw'äPLJ@0 Oa+%R"#E9}3RSSnjcp E`vշo_|f+43`R`vY;I pO Z|yxx ˭ `R`JKK˓׭[WWWg_ذ};"9rA!,R`RSS:v 4\)555W^ v ?R`\)jZ8#p LJFFFfeeY;Y0)Onjժӧy:uUXX{zzQQQI j΅ &Oe7-­[|}}E _ʕ+>aR`|}B͚5CիW !XAAA&555<<|VoZٳgoܸawwbGGGke' p LKK۷o_Ϟ=Ǐ Xп0"""rrrt֎~J plɓ'n޼i@pF|rh`eR5k֬k޼yK;3 &jkGdcp0pqqy"""pk...SL_?LJ`^ t钛e˖3g 2dڵ &%`c0/i6C=qҥK###npaRjMlXaR6 f&ۿ{ I *Kz#F˳v8`'0)y888̜9O<Ę1c\baR pttLLLp|6loaR6kiժG}tّ#G.[]f,X`}}|ݺu7ol۶kך96̀+%`3ӷo_ ƍ#Y;R UUUG|[+%`WpFT IDAT(_N8q޼y֎P0뉉˖- MNNvPtRv3y4!{3/­-ZjidRlJIUU~/zxx 0`ܹ;w6UU3wbcZoe6d^<­|}}9Ҿ}V%EWJl*\6vyyy6l(++ϏKHHطoCYn߾t3i66)YdI6mlҽ{wFӺuI&[ߦ,XL. hF}QԩSZ-ݖ  8p 44ޣ59s&..NՆ !}ϺuDk`5s -k=//m9 ===7n8gOOOoobG"N:?~a#F 43NNNKJJJee%[mdddrrrYYYrrrTT}7%%-S[[sΠ a"""Zf͚pSsWXa4|}}kV *m=22rժUȮvAt貳5 ]ޱcsoңZkF¥āCa''CB&L0tPZ ---..kΜ9ßjh42 S^^V;88?pttdzj5;eD.rK`ȥ-#=)a AQ&%`[pVR@H:;wa_~y:k׮+//3 :aV{5^?0+Wdg7tF1==gs7țȩ#nH])ASˢ0)ۂ BbM6-11m}||.\0z=-///""BVGFF>|yn޼yIIIt Ü?>!!Aӱ (4`E6ċ_X@CBBz3dNJ;I 1Ul'{'f̘Ѻu묬M6}wM̃VXF-!yc'`[pVᲱ_xxxŹ/^kT*N[z5gӆnҚ9KnذwqqqttlժUǎ{i^-])+%;򵵵G]z5t5ի'L'L0A]t)''gڵyyyfv&%`W0)W‘?~xtttpppAA ,44EVb`ಱo.]B\®ٻwt:]llMط%ӦMstt$ju֣Fڻw/<].&,UBȘ1cvq=a[BoO:;;;;;gggKOIKKotsVUU[mذ!$$Dvuݺu$ jZ(_S<88E8`r׮]jO>W\)--}7!k׮nlٲ3gѕ>(!,**ڰaC޽I աC#FHw_upp۷oQQ믿J0̜9s233ʾ Bɓ[ O>dQQѵk⸍J4'U8C`6LJwkjj9ҽ{wBȗ_~IWݛB0Lqq1!$,,'u҇ ܹ1/lNcx'ʕ+%ի!СC%\||D<Ǵ¼L Z[XXX>}fΜٮ];(F$?ݻ۷gln\QQQYYDtzvJ4?pǎׯ_ݤ%VVVr$=\МpVyզC)60P>xppZK#Lw FǞccc% am۶B4Vtf zV !IIIweOp+y9 w *\c=Foƍ%%%6l ?~bG (í.Cb{yxx/y:u\]]}ҥSB>k C/ٳZѣGO0ť[nUUU7o~׬|}v~ WJHgݺu3gi\^Yf9;;B CttF>z(!DR*SJdYѣGcbbjJeւ |}}r^^^hh{':}MdddHW"0RfϞm۶~M8i|:%-BȊ+FcVV/0k֬ mjժHa"##ʒD+-So=sGyDB2rih%Gꫪ*Z@Wsssog셏+++W^-٥K#U͚5o)++KOOgFN%^o~#GyFU\\>K+V0'ܵke4[uu9s:t^|}˺q>۶mVɺs"Qҁϟ?鄕B}]^rAa"""juddÇE+-So=SXXoF388>ޠc8KKKzayā5_<==_{/\3rs׌7/˕n]]']~7V\Iٻ\;wl0!-]tĉԞ={+WnT_oJKKs]hѢ{SSS[y=;v_MgΜ0ΝKWVTTp7O>|[||ήzK.ȇ<.y7)or…0nW^y.߾}uW^9r}wÆ eee]:ӧOs(((8p ]>rH%~5kΙ3ӓ}$ q- !/^M _G7m4x_|wޅuuuW%{Akkkw^ӱcxSa(S=~:௩ͥ7nܨ`ݻqBZQnܸ8SSSnj#64&%((((++k&5!!!iiiUUU~{LROse'm۶MOOwEr߾}[֙3g?D/(( W^y̙3Fq׮]ߥ67գ:lڴν{:wLڵ?Oxʕ=wԩ[nqĉkHV3##ãW^ fj/Ɗ-\P4E'9##,~ܿk׮[?_fڴiNNN...yvjccc0˽y^zeggӒ?Y] ><++m~{zz޸q.ԈZjU۶mu:]BB¹s'Ntrr"/5D͛ڵk7cƌ111&$$C8w?0agyyy׮]M-|, [,Dy9i}}}9Ҿ}{Mˌyq>_xcsΥI7ds,6ܹ3t}i4O?t閭_G._ ޹sgٲeovmҤI+d R⇙'%t7{RRYY㓔Q\\?~}|||S>)!~tv۽{'O8ر#""A8`R$rKJJ1ܮ]t޻O~'4MXX{2e ÇjuTTԑ#G4 zxxxyy kc+\xڵk#7oK/{׎;K opٿHHY ̙3y55PgϞmӦ Mc4۴is9yt2r4QO?)b=?X;l%N?8p)q !a^\^nZi% !)))555d2lFCw'Zw9 ;utqaF1h ZhtrrѲ}NDD?UV&7C._ae˖ l4F%R Khޅ8}e¥āyqٷIkJfTWWH'&ZL"FC(t!BHQQф ZoEe"GGG^FeZ܀vqSG6jXBS, g.%=d0SZ-+Nm4w7wccc4M?%ƕ+W0I ]a1H:t@ /0@uu޼y¢ݗV88lySB+%0L\\ܓO>ٻwon###ْ-8p)q !ZM-:+LZ}W"0cbR"'pdڴiu_:Z߿?88yԩ4X2-K0[l!lݺwaaa`NJ+V⌦(v;6l@#l.K^v,#)SHYEQ8CwܹI.]TQQO?9I[bcc)رc]t1uςwԭ?}Zg),,dRT-JqqE{FLOO/ZV;Hڴi3tЛ7ofddyDWH4$IR^/1 >ā)dR7ߔ2 s[uuut^TV^=p@rsΥS:wl0!-]tĉԞ={+WnZ;q.Z7n_|A+++iHy;v,5&11q̙dyÇz)⻃5koΞ=_WWw`3Bu_:#Gr/H0&_7xcʕt9==޻*hI{\vM޺uaMd*NaǓ#l0t"# I'2!dk֬3gիWGE?}… ʭ[.Z֦]\\°0aO~QPP0p@|ȑݻKt']yرnݺqeff+tۭ[ 2>2͝;w2.߹s'::ZD.]lܸ֭[G.+$NQq\zRTG7 THz(|S m߾\VVFY/Z$W^!EEEm۶5=dG{yΝ}ILԞLygk0>3Bȋ/ػwºիWbaaaϟ#""qƍlwޥkkkyN:ޯway\'u1g򯑢;IDATMLn 4ׯwMMMnn.7MSZQnܸ8-;Dd?;9B  3TS ŋpj-MoP ^``w޶m[~Ldjh!^NMM3f`C,uł=$`dkkk~+Vt֍a^Ჲ;->օaK_|y.\;vɽͥ˃E;"'jyHvyݺu^Cnmذtʔ)NNN)Sdddׯ=zʌe!gLL8p/0LBB]0*hǃ(NwE:F믿vtt/ZR8C ,**:{lppp~~L0$S=2FJh곖mQ@Xs HS•ܗVj۶NKHHO]|;ӫWlZh4TÇcbb4MHH{0Çb_.Y<==oܸA}}}%~C!8q!~1 k׮`Vh6D͛ڵk7c 6ns~~~&Lܻwou6  `jHyLu jڴiNNN...lPj觟~sww5kwU4xђ]4iPP͛ǃJ C2#ѽ\^^޵kWv$ZņS4?+&OII9z˛iKYp;wQz߿ҥK;|nݺM4ޒV<(&% GC޽ĉ'NxwaDJ`pV+))퉊rww;vUIo+q6J970HYdIVVkkkٕ_+%\H޽c4M^<{lkGv&%am۶!C?8::>:7 e᳘R[;sζ?ݺuRYYɛܗ8q4LJJMM6m]nݺaÞyВh***8п .L4駟hgϞǰ@KoΝ;GٳgSO=ekG6%t޽TTw޵nH`+p,G?S4hۀI 4srrmۖ~k0bbbT*I 4w}_ݻIKK{WS gϞ]v<8&&A5vg@a^Y3g[͛@sBUsqqy"""NJrrŋi2{>(Ԥyyy6l(++ϏKHHطo_'azep[; ,YM6[l޽FiݺI֭[o ,^` CttF>z(}kԩZnKKdddB8{Μ9jsss?>#u։VjYl[PYmڴ)**ڱcJڱcGQQhhUGQ\oEGFsεm۶RQQѶmϛ/QK ^Hw%ݳC11Bf͚gE^zxTbj|͍өSǏ3 3bĈAbFɉpqqIII]`&22299,999**RSSÖݹsgPP0?WZE뉍]fMeeefffxxhF !+V0YYYҕX+xUt^gyfϞ=<ٳ}ݻw'$$nBZl#jwС˗/gfٲe/Zv C+Qh53!dժUɑ- +-So=a{'{M_Jۨv0$uZx3!^>xL5a%BK,NjR2mڴz7Yp!0ӧOZyasy=<
Un=lUb"uG3S'O݊<|eEz!lj5;mQ-8ԗX4mCkK ^YI,qpr_֛[1N3H}54KhVnBTV)aaҥ 1yZ;믿ҕNNNeeet4_4k让wJ%gf7la^^+P:%LͲHfI XԤY[z3Ċ( #.UXOdd$[T02ZddOJ޽;wIHH3g߿8P6!d#]# 2;nSgwxm [15lh0bR4cR0W_}5i$a.]4h ^|eL5!Vzk\Smt3;DLevJ8[@ ## zs 7&%`q  e̷e߉U}&%x{Bp:y䑩SZ; q*Jӭ^ދ B`0cvaRI (&%h ZyeL%KD.|YJsd%O92aRI,Iuty5 SŠf%ѕnHXKck^ﵦNP &Y񙲶<(qn.2fќ !)))555 ;DCzxM7E[g"3r>7~5ub;SX&%r>䧺m\ʼEsҒ줤ѕhHXi޶OcvߌύkMI\f.2[0%OvvvEEŗ_~)lKxTCzxM7E[҈Ϣm5hl:A,NuK4E.e^”)))nnn .ˣ+ѐh=ܦ"rr>7~5ub;SXrC r7Prb+%`\)Õq̧8PP9$4%ԐAD Ak FC94VCT-*D!^] {^M{~;>;<_h ؔ@KZ7mJLgmT2S\Kohx:R۔vEsXT*AfBP\Vu_~+_EXj00`4t3 U处񱻻 J4}zzd2 dY. |x_!b5:yyyvݝx _0! $Z4SwL$T*a~ BN|ċ%$ITi TOM e0NNNlz$|UK*?GZBH\flYezqk"JVmՠ`߿Iؘ]RI1q-3@YXXFąd&Kn߷~M 4\M !R\]]T>|j*?pdY9JRm5NGլڪADt:z%WaɅI1q-3c0"!h4t@ aٱ/VKJcM 4Mb驒K$st.rSSSl_[k:+K`Z֢U+B^Q%[qTRi/!)WwZ2???11a2#d2[z4X6_|RaS WeSBvT%Js$ B,j R}Yj+Y#ײ]ZI>r||*&ߪlJ6&W,L=3+++KKK|JKP 8d2vf?h}t_edd󭮮4bT:<<[J} t_f% NzVk,i^6ɴC 睔@+I 4;)6%)M D@EWh @K ^IENDB`libbonobo-2.32.1/doc/api/html/libbonobo-bonobo-object.html0000664000076400007640000017763611546334245020367 00000000000000 BonoboObject

BonoboObject

BonoboObject — Base object for wrapping Bonobo::Unknown derived objects. Implements Figure 2, “The Bonobo::Unknown interface”.

Synopsis

#define             BONOBO_OBJECT_TYPE
#define             BONOBO_OBJREF                       (o)
void                (*BonoboObjectPOAFn)                (PortableServer_Servant servant,
                                                         CORBA_Environment *ev);
                    BonoboObject;
                    BonoboObjectClass;
void                bonobo_object_add_interface         (BonoboObject *object,
                                                         BonoboObject *newobj);
BonoboObject *      bonobo_object_query_local_interface (BonoboObject *object,
                                                         const char *repo_id);
Bonobo_Unknown      bonobo_object_query_interface       (BonoboObject *object,
                                                         const char *repo_id,
                                                         CORBA_Environment *opt_ev);
Bonobo_Unknown      bonobo_object_query_remote          (Bonobo_Unknown unknown,
                                                         const char *repo_id,
                                                         CORBA_Environment *opt_ev);
Bonobo_Unknown      bonobo_object_corba_objref          (BonoboObject *object);
Bonobo_Unknown      bonobo_object_dup_ref               (Bonobo_Unknown object,
                                                         CORBA_Environment *opt_ev);
Bonobo_Unknown      bonobo_object_release_unref         (Bonobo_Unknown object,
                                                         CORBA_Environment *opt_ev);
gpointer            bonobo_object_ref                   (gpointer obj);
void                bonobo_object_idle_unref            (gpointer obj);
gpointer            bonobo_object_unref                 (gpointer obj);
void                bonobo_object_set_immortal          (BonoboObject *object,
                                                         gboolean immortal);
gpointer            bonobo_object_trace_refs            (gpointer obj,
                                                         const char *fn,
                                                         int line,
                                                         gboolean ref);
void                bonobo_object_dump_interfaces       (BonoboObject *object);
void                bonobo_object_check_env             (BonoboObject *object,
                                                         CORBA_Object corba_object,
                                                         CORBA_Environment *ev);
#define             BONOBO_OBJECT_CHECK                 (o,
                                                         c,
                                                         e)
gboolean            bonobo_unknown_ping                 (Bonobo_Unknown object,
                                                         CORBA_Environment *opt_ev);
void                bonobo_object_list_unref_all        (GList **list);
void                bonobo_object_slist_unref_all       (GSList **list);
BonoboObject *      bonobo_object                       (gpointer p);
#define             bonobo_object_fast                  (o)
#define             bonobo_object_from_servant          (s)
#define             bonobo_object_get_servant           (o)
PortableServer_POA  bonobo_object_get_poa               (BonoboObject *object);
GType               bonobo_type_unique                  (GType parent_type,
                                                         BonoboObjectPOAFn init_fn,
                                                         BonoboObjectPOAFn fini_fn,
                                                         int epv_struct_offset,
                                                         const GTypeInfo *info,
                                                         const gchar *type_name);
gboolean            bonobo_type_setup                   (GType type,
                                                         BonoboObjectPOAFn init_fn,
                                                         BonoboObjectPOAFn fini_fn,
                                                         int epv_struct_offset);
#define             BONOBO_TYPE_FUNC_FULL               (class_name,
                                                         corba_name,
                                                         parent,
                                                         prefix)
#define             BONOBO_TYPE_FUNC                    (class_name,
                                                         parent,
                                                         prefix)

Object Hierarchy

  GObject
   +----BonoboObject
         +----BonoboGenericFactory
         +----BonoboPersist
         +----BonoboMonikerExtender
         +----BonoboItemContainer
         +----BonoboStreamMem
         +----BonoboItemHandler
         +----BonoboListener
         +----BonoboMoniker

Properties

  "poa"                      gpointer              : Read / Write / Construct Only

Signals

  "destroy"                                        : Run Last
  "system-exception"                               : Run Last

Description

BonoboObject provides an easy to use way of writing CORBA servers. It drastically simplifies the issues of epv and vepv construction by automating these, and automatically instantiates a CORBA_Object on g_object_new. This removes clutter from construction time. For libbonobo-2.0, it strongly deprecates BonoboXObject.

Figure 2. The Bonobo::Unknown interface

The Bonobo::Unknown interface

The Bonobo::Unknown interface (wrapped by BonoboObject) is the foundation for the component system: it provides life cycle management for objects as well as service discovery.

The Bonobo interfaces are all based on the Bonobo::Unknown interface. This interface is very simple and provides two basic services: object lifetime management and object functionality-discovery. This interface only contains three methods, here it is:

  module Bonobo {
      interface Unknown {
          void void ref ();
          void void unref ();
          Object query_interface (in string repoid);
      };
  };
  

The ref() and unref() methods are used to control the lifetime of an object. The query_interface method is used to discover optional functionality provided by the object implementation.

The lifetime management is based on reference counting: when a component is initially launched, it starts life with a reference count of one. This reference is held by the component invoker. Each time a reference is kept to this object (say, you store a copy of the object in an array), the reference count is incremented. Every time a reference goes out of scope, the reference count needs to be decremented. When the reference count reaches zero, the component knows that there are no outstanding references to it, and it is safe to shutdown. At this point, the component shuts down.

It is possible to ask an object which implements the Bonobo::Unknown interface if it supports other CORBA interfaces. For example, it would be possible to ask an object whether it supports the "IDL:Bonobo/EmbeddablePrint:1.0" interface to find out if it is possible to print its contents. If the return value from invoking the query_interface method on the interface is CORBA_OBJECT_NIL, then we know that the requested interface is not supported. Otherwise, we can invoke IDL:Bonobo/EmbeddablePrint:1.0 methods on the returned CORBA Object.

Clients of the query_interface method use it to discover dynamically if a component supports a given interface. Sometimes the client code would require a specific interface to exist, but many times it is possible to operate in a "downgraded" mode. You should design your code to be able to cope with the lack of interfaces in objects. This will allow your program to deal with more components, and this also allows components to work in more situations.

For example, a help browser can load an HTML renderer component and ask this component which sort of features are supported by it:

stop_animations (BrowserHTML html)
{
  BrowserControl control
  control = html->query_interface ("IDL:Browser/Control:1.0");
  if (control)
          control->stop_animations ();
}
  

The return value of the query_interface invocation contains a reference to a CORBA object that is derived from the Bonobo::Unknown interface or CORBA_OBJECT_NIL if the interface is not supported by the object. And this interface would have been already ref()ed before it was returned. It is up to the caller to call unref() when they are done using the interface.

BonoboObject implements the Bonobo::Unknown interface and exports the implementations of the methods in this class to simplify creating new objects that inherit from Bonobo::Unknown. This base object provides default implementations for the ref, unref and query_interface methods.

Other implementations reuse this implementation by listing on their VEPV tables the bonobo_object_epv entry point vector.

The Bonobo::Unknown interface is inspired by the Microsoft COM IUnknown interface but it has been translated into the CORBA world.

Details

BONOBO_OBJECT_TYPE

#define BONOBO_OBJECT_TYPE        BONOBO_TYPE_OBJECT /* deprecated, you should use BONOBO_TYPE_OBJECT */

Returns the GtkType for the BonoboObject object.


BONOBO_OBJREF()

#define BONOBO_OBJREF(o)          (bonobo_object_corba_objref(BONOBO_OBJECT(o)))

This macro returns the CORBA object reference inside a BonoboObject.

o :

a BonoboObject

BonoboObjectPOAFn ()

void                (*BonoboObjectPOAFn)                (PortableServer_Servant servant,
                                                         CORBA_Environment *ev);

Signature of POA initialization and finalization functions

servant :

the object's servant

ev :

CORBA environment

BonoboObject

typedef struct _BonoboObject BonoboObject;

Implements Bonobo::Unknown.


BonoboObjectClass

typedef struct {
	GObjectClass parent_class;

	/* signals. */
	void         (*destroy)          (BonoboObject *object);
	void         (*system_exception) (BonoboObject *object,
					  CORBA_Object  cobject,
					  CORBA_Environment *ev);

	BonoboObjectPOAFn          poa_init_fn;
	BonoboObjectPOAFn          poa_fini_fn;

	POA_Bonobo_Unknown__vepv       *vepv;

	/* The offset of this class' additional epv */
	int                             epv_struct_offset;

	PortableServer_ServantBase__epv base_epv;
	POA_Bonobo_Unknown__epv         epv;

	gpointer                        dummy[4];
} BonoboObjectClass;

BonoboObject's class.


bonobo_object_add_interface ()

void                bonobo_object_add_interface         (BonoboObject *object,
                                                         BonoboObject *newobj);

Adds the interfaces supported by newobj to the list of interfaces for object. This function adds the interfaces supported by newobj to the list of interfaces support by object. It should never be used when the object has been exposed to the world. This is a firm part of the contract.

object :

The BonoboObject to which an interface is going to be added.

newobj :

The BonoboObject containing the new interface to be added.

bonobo_object_query_local_interface ()

BonoboObject *      bonobo_object_query_local_interface (BonoboObject *object,
                                                         const char *repo_id);

object :

A BonoboObject which is the aggregate of multiple objects.

repo_id :

The id of the interface being queried.

Returns :

A BonoboObject for the requested interface.

bonobo_object_query_interface ()

Bonobo_Unknown      bonobo_object_query_interface       (BonoboObject *object,
                                                         const char *repo_id,
                                                         CORBA_Environment *opt_ev);

object :

A BonoboObject to be queried for a given interface.

repo_id :

The name of the interface to be queried.

opt_ev :

optional exception environment

Returns :

The CORBA interface named repo_id for object.

bonobo_object_query_remote ()

Bonobo_Unknown      bonobo_object_query_remote          (Bonobo_Unknown unknown,
                                                         const char *repo_id,
                                                         CORBA_Environment *opt_ev);

A helper wrapper for query interface

unknown :

an unknown object ref ( or NIL )

repo_id :

the interface to query for

opt_ev :

an optional exception environment

Returns :

the interface or CORBA_OBJECT_NIL

bonobo_object_corba_objref ()

Bonobo_Unknown      bonobo_object_corba_objref          (BonoboObject *object);

object :

A BonoboObject whose CORBA object is requested.

Returns :

The CORBA interface object for which object is a wrapper.

bonobo_object_dup_ref ()

Bonobo_Unknown      bonobo_object_dup_ref               (Bonobo_Unknown object,
                                                         CORBA_Environment *opt_ev);

This function returns a duplicated CORBA Object reference; it also bumps the ref count on the object. This is ideal to use in any method returning a Bonobo_Object in a CORBA impl. If object is CORBA_OBJECT_NIL it is returned unaffected.

object :

a Bonobo_Unknown corba object

opt_ev :

an optional exception environment

Returns :

duplicated & ref'd corba object reference.

bonobo_object_release_unref ()

Bonobo_Unknown      bonobo_object_release_unref         (Bonobo_Unknown object,
                                                         CORBA_Environment *opt_ev);

This function releases a CORBA Object reference; it also decrements the ref count on the bonobo object. This is the converse of bonobo_object_dup_ref. We tolerate object == CORBA_OBJECT_NIL silently.

object :

a Bonobo_Unknown corba object

opt_ev :

an optional exception environment

Returns :

CORBA_OBJECT_NIL.

bonobo_object_ref ()

gpointer            bonobo_object_ref                   (gpointer obj);

Increments the reference count for the aggregate BonoboObject.

obj :

A BonoboObject you want to ref-count

Returns :

object

bonobo_object_idle_unref ()

void                bonobo_object_idle_unref            (gpointer obj);

obj :


bonobo_object_unref ()

gpointer            bonobo_object_unref                 (gpointer obj);

Decrements the reference count for the aggregate BonoboObject.

obj :

A BonoboObject you want to unref.

Returns :

NULL.

bonobo_object_set_immortal ()

void                bonobo_object_set_immortal          (BonoboObject *object,
                                                         gboolean immortal);

object :

immortal :


bonobo_object_trace_refs ()

gpointer            bonobo_object_trace_refs            (gpointer obj,
                                                         const char *fn,
                                                         int line,
                                                         gboolean ref);

obj :

fn :

line :

ref :

Returns :


bonobo_object_dump_interfaces ()

void                bonobo_object_dump_interfaces       (BonoboObject *object);

object :


bonobo_object_check_env ()

void                bonobo_object_check_env             (BonoboObject *object,
                                                         CORBA_Object corba_object,
                                                         CORBA_Environment *ev);

This routine verifies the ev environment for any fatal system exceptions. If a system exception occurs, the object raises a "system_exception" signal. The idea is that GObjects which are used to wrap a CORBA interface can use this function to notify the user if a fatal exception has occurred, causing the object to become defunct.

object :

The object on which we operate

corba_object :

ev :

CORBA Environment to check

BONOBO_OBJECT_CHECK()

#define             BONOBO_OBJECT_CHECK(o,c,e)

Checks if the exception in e needs to be signaled. If so, then the proper exception signal is generated on the BonoboObject object o for the CORBA reference c.

o :

c :

e :


bonobo_unknown_ping ()

gboolean            bonobo_unknown_ping                 (Bonobo_Unknown object,
                                                         CORBA_Environment *opt_ev);

Pings the object object using the ref/unref methods from Bonobo::Unknown. You can use this one to see if a remote object has gone away.

object :

a CORBA object reference of type Bonobo::Unknown

opt_ev :

optional exception environment

Returns :

TRUE if the Bonobo::Unknown object is alive.

bonobo_object_list_unref_all ()

void                bonobo_object_list_unref_all        (GList **list);

This routine unrefs all valid objects in the list and then removes them from list if they have not already been so removed.

list :

A list of BonoboObjects *s

bonobo_object_slist_unref_all ()

void                bonobo_object_slist_unref_all       (GSList **list);

list :


bonobo_object ()

BonoboObject *      bonobo_object                       (gpointer p);

This function can be passed a BonoboObject * or a PortableServer_Servant, and it will return a BonoboObject *.

p :

a pointer to something

Returns :

a BonoboObject or NULL on error.

bonobo_object_fast()

#define             bonobo_object_fast(o)

o :


bonobo_object_from_servant()

#define       bonobo_object_from_servant(s) ((BonoboObject *)(((guchar *) (s)) - BONOBO_OBJECT_HEADER_SIZE))

s :

Returns :


bonobo_object_get_servant()

#define       bonobo_object_get_servant(o)  ((PortableServer_Servant)((guchar *)(o) + BONOBO_OBJECT_HEADER_SIZE))

o :

Returns :


bonobo_object_get_poa ()

PortableServer_POA  bonobo_object_get_poa               (BonoboObject *object);

Gets the POA associated with this part of the BonoboObject aggregate it is possible to have different POAs per interface.

object :

the object associated with an interface

Returns :

the poa, never NIL.

bonobo_type_unique ()

GType               bonobo_type_unique                  (GType parent_type,
                                                         BonoboObjectPOAFn init_fn,
                                                         BonoboObjectPOAFn fini_fn,
                                                         int epv_struct_offset,
                                                         const GTypeInfo *info,
                                                         const gchar *type_name);

This function is the main entry point for deriving bonobo server interfaces.

parent_type :

the parent GType

init_fn :

a POA initialization function

fini_fn :

a POA finialization function or NULL

epv_struct_offset :

the offset into the struct that the epv commences at, or 0 if we are inheriting a plain GObject from a BonoboObject, adding no new CORBA interfaces

info :

the standard GTypeInfo.

type_name :

the name of the type being registered.

Returns :

the constructed GType.

bonobo_type_setup ()

gboolean            bonobo_type_setup                   (GType type,
                                                         BonoboObjectPOAFn init_fn,
                                                         BonoboObjectPOAFn fini_fn,
                                                         int epv_struct_offset);

This function initializes a type derived from BonoboObject, such that when you instantiate a new object of this type with g_type_new the CORBA object will be correctly created and embedded.

type :

The type to initialize

init_fn :

the POA_init function for the CORBA interface or NULL

fini_fn :

NULL or a custom POA free fn.

epv_struct_offset :

the offset in the class structure where the epv is or 0

Returns :

TRUE on success, FALSE on error.

BONOBO_TYPE_FUNC_FULL()

#define             BONOBO_TYPE_FUNC_FULL(class_name, corba_name, parent, prefix)

Macro that includes all the boilerplate code need to register a new BonoboObject-derived class. The programmer has to define two functions only: prefix_init and prefix_class_init. As a result of the macro expansion, a function named @prefix_get_type() is defined.

class_name :

Name of the GObject class, LikeThis

corba_name :

Name of the CORBA interface, with IDL-to-C mapping, Like_This

parent :

GType of the parent class, LIKE_TYPE_THIS

prefix :

prefix of the implementation functions

BONOBO_TYPE_FUNC()

#define             BONOBO_TYPE_FUNC(class_name, parent, prefix)

Like BONOBO_TYPE_FUNC, but doesn't set POA ini and fini functions.

class_name :

parent :

prefix :

Property Details

The "poa" property

  "poa"                      gpointer              : Read / Write / Construct Only

Pass this property during construction to specify a custom POA for a BonoboObject. Example:

1
2
3
4
5
6
7
BonoboObject * my_bonobo_object_new (void)
{
    BonoboObject *object;
    object = g_object_new (MY_TYPE_BONOBO_OBJECT, "poa",
                   bonobo_poa_get_threaded (BONOBO_POA_ALL_AT_IDLE), NULL);
    return object;
}

Signal Details

The "destroy" signal

void                user_function                      (BonoboObject *bonoboobject,
                                                        gpointer      user_data)         : Run Last

Signal emitted when the last reference of a BonoboObject has been lost and the object is being destroyed / finalized / deactivated.

bonoboobject :

the object which received the signal.

user_data :

user data set when the signal handler was connected.

The "system-exception" signal

void                user_function                      (BonoboObject         *bonoboobject,
                                                        CorbaObject          *arg1,
                                                        BonoboCorbaException *arg2,
                                                        gpointer              user_data)         : Run Last

Signal emitted from bonobo_object_check_env if a system exception is identified.

bonoboobject :

the BonoboObject which received the signal.

arg1 :

the CORBA_Object contained in bonoboobject.

arg2 :

the exception that has just occurred.

user_data :

user data set when the signal handler was connected.

See Also

GObject

libbonobo-2.32.1/doc/api/html/index.html0000664000076400007640000002116211546334245014767 00000000000000 Libbonobo Reference Manual

General
bonobo-main — Bonobo initialization.
BonoboRunningContext — a live object tracker
bonobo-shutdown
bonobo-i18n
bonobo-types
bonobo-context — Extensible runtime service interface
bonobo-exception — maps CORBA exceptions to user readable text, + helper macros
bonobo-application — a framework for unique application instance and automation
bonobo-app-client — client interface to remote BonoboApplication objects
Objects, Factories, Reference Counting
BonoboObject — Base object for wrapping Bonobo::Unknown derived objects. Implements Figure 2, “The Bonobo::Unknown interface”.
BonoboGenericFactory — The basic, generic Bonobo object factory implementation
bonobo-shlib-factory
Reference Counting
Property Bags, Events, Listeners
Properties
bonobo-event-source — An Event Source where clients can connect to listen to events.
bonobo-listener — An Event Listener (an implementation of Bonobo::Listener)
BonoboPropertyBag — Implements a generic property storage interface
bonobo-arg — simplified CORBA_Any wrappers
bonobo-property-bag-client — simplified property bag client wrapper code
Monikers
Monikers in the Bonobo Component System
BonoboMoniker — The base implementation of our abstract object naming space
BonoboMonikerSimple — A super easy to use moniker implementation wrapper
bonobo-moniker-util — Object activation and construction through monikers.
BonoboMonikerExtender — A way to extend arbitary monikers
BonoboItemHandler — Simple Moniker Arguments
BonoboItemContainer — this implements a simple container interface for compound document containers
bonobo-moniker-context
Storages and Streams
bonobo-storage-memory
BonoboStreamMem — In-memory implementation of Bonobo::Stream interface.
bonobo-storage — Abstract implementation of the Bonobo::Storage interface
bonobo-stream-client — Simplified client wrapper functions for the Stream interface
Persistency
BonoboPersist — Interface for anything that can save / load itself.
BonoboPersistFile — Interface for anything that can save / load itself from a file.
BonoboPersistStream — Interface for anything that can save / load itself from a Bonobo stream.
bonobo-persist-client
Miscellaneous
Debugging
Common Questions — Find answers to common questions in the libbonobo manual
bonobo-config-database
Index
libbonobo-2.32.1/doc/api/html/libbonobo-bonobo-i18n.html0000664000076400007640000000457111546334245017663 00000000000000 bonobo-i18n

bonobo-i18n

bonobo-i18n

Synopsis


Description

Details

libbonobo-2.32.1/doc/api/html/persist-stream.png0000664000076400007640000006705711546334245016477 00000000000000PNG  IHDR$sBITO pHYs IDATx{\? r\ #=ys*oIff_Ļcɲ4PH+/( xM E /MHL vYߙ3 |ޟ~a F&Y;0L???k`iN,իeeed8г;8Bo^VVs< @k4C4nnn@3@34C4/@3@474G@@344_@3@4rkrĉ%K>ϗ]z{Ŗ D B GrǏKYj;`; ^e!};0y@sK5_\jR٪0< A5d |ECmJ m aF&H5J>྾۷ob=& ʍoάӜDM]9 ~3f8+Y)~lq2i&РVnӸ3!~3f_fijzŊ!{hҥ_d2tL& YYY^^^| [>..[Z޸q#}׽{wggg*a0D+ZRX_]tL_WTTBz}pppff&]cdnnn7n6mZ1ԣ6mڔݻtd߾}yyyt[G/‰'-X ***''gȑ0+00v0((PaZty;a1魸GfG9 ЯpMw۷+22\tsmqvvgw ٚ^Ʉwww߯UUUU -)\TVWWt:] 0999Gt34JcŽ!o0E{xKΝ;O4)!!Az_SX!\.7T.H vYފ{4J`vā ×Y`~ꫯǎ3r[RYRRBۧT7PXfMvv3g_w? [F*#;t萡;v옙ߋ6ձcGBHϞ=cѢm=ѣ|0egg;wݜ%O:uvPty;ޠa玡ho݊=9j=߲ <Mgw$!D7.ũjAAAHD۝>}J׿Ů͍dJ4h,YRf͚e򴴴-ZꫢM|( ܹs;uT*ccc !OLHH _-[F7n0yyyݻgeei4ɔ)S!~N8pQ222Ʉ1cư-JS nhך2,؏qX>>>wi\h\wx>|8<<\P Cd&|I"Ee-&v:hүa uO?MLLlJ$\GÚa « ;SyfttKnn.0# 8DBK򪨨VKzǏ #uY?$mP׌Ըm^i_oom۶iI&Y&>}\~ݴuZw$[} cu}61pH2ˠ:WWW=3<} zO>BQN:B!/=zByf^>{qB,-b wxEK0$9/o۴&by{{/yyy[NMMJ:wfSW\aog'Qޘq}uŋ툡 bݩ7uoĈ tR36˘E5bkd,.ԛ+͘2ށmXC+x|& !/ya~%jΜ95k?|0!!G@Oݾ}ɭS<0>,!믿nP׌$-|9b(˒t!b8ME5&11peݼysƌ۶mIIwa777V[oyTх{>NIf(hwIzSbq s1cQA9͕fxZ\GÚa ͛GYb !ώ3gCϜ9¾= /ܑ.0L@@!D+ Lw eYN0D y&ɘYv.]#D$>O>7>A] z葡P1AL;ƤX)YT(I\oβJ3fEwYP<cpT8+|Сjqƕtk׮mذscbb>܇Ф<&Lx[aBȩS5#91{JzCJ{vR_zc]֤InݺKOOO KOOO/٘x*7nE1cưgbxOKK(DG]ؐB"lјQ9&&f޼ytVxbzz:0wL7/ cP<~M&tk1 #ڪ?ڵRTT]t;w[n"^w޿nnnm۶9s&{ r!yyyFgfݺu-Í욑8ݑN0$07o17n#lcǎ@\~u(#;IX1h4'[A –-[|MPyeh,c5t#]ȕfJ4+CB,B:M rf_r«XZѣv86Lw֙dCMM*t;0KG47;!(CY,٨pWeKS(z^.>pUzpT8cQg^?{lk,ES;47xՃˡvp20ݱ͛7BΝۮ]sk0ݱN\\!$..'x, aOBݛ q/Gi||W+QC3eKڡ-ޘF|$d2Le˖nkdGP*;wlD+e& Kڡ q?` [~\M|Ç,-Hfek?xHʮOd7|SVXB֭[/^L o U[WWGe2Y\\R$,]חm]goo_~%//u֩H7҇_~SO=5uTz;kCꍟh=e2ٳ6n8m4Zj*aSLqww HkwwGX Kt ÊPz,LBȃ7BHYY=#3"K2hr9!d._"-1$zvײeKSBrr{GeeetQuOOO?PaBȶmz=0))) g͛3f̈vww߶m@``<$lzj֭rPPPFFܭ75?7ZCp'۷///ٙ.x{{ cjޘ # 9xǛGԩS:0g}ֻwo7xc $$$L>$bk\Gڼh,//Gx著x-cH)JV0Fqqqa1f9BPP;luaaBHMM ]޾}{^"##˹Zu%a:r[LHHN(JZD=15ayap}dޘ #ppxDq3zhNo>W=xڵkF ]tk>C 7}&%%UUUmذlyc1cưӅ3b¼2ziiiJeqq1]?iҤ[nt/ӓ gk-T3gΰ+E ۢp$j7~nzK,!!!!a<漇H322%;:)}$\7o^xx8{~ :ٮa {j<o|yyyr<222??-o–-[|MaN>$ڐp0L!_~E8ZMݱcG``\.iyn [>}J׿ŮLMMmѢĉɫt$otg-Zꫯ$ Ca$iii-ZxW%^%,}$\KMMBg-4~d$bkB,3/_/]rŊ-,ZȞ8{_.,~!Ư?ô\gggkcG%vM~wNF!Md3CAb-jGG\l=ЭlhnG;fQYY)e˖Ǐjkk' 쎥uΝ;:t(**v,0<]aKFmZM6ͺi7>­lҜUV-Y^mlpv ` x>eip(֭[WXX`h4LwAe/S]v 2.7Ϗd=e¡(//o߾}-40a0Y7aw%/0%77+//{޾E$ mrJǎyݗΖ%I4oA"46U5 9^ HwƭL8&:B:t`@'q. +yw"]7TXk׮ti mrss)5͖%L$I8ǘUP ',yl4s\Gc#LD v Ș|I S/՛%˫kId(mS>} xu%L$7,a.0[{ȚA8D2%fpT2 cǎ=#//СCb4e+:dfffee K*ʒC۷OoBȫ?;vLK.'O5k֬>s c^'?~WXugϞ1zhBHNP_`xӠڄ;ޚy{O8GKC'lф8&kϷ8#LdJEӄs2 3jh2),1:Kۤh&NhLx0x)韄Rb G Ff2T3wOIl.ǟ9l4spT_9}wLE:ϔc);pWezL9GR8X ;`}_IIp288Lww\ռj*RaĉZ(LwD/I РA0;cdIlF4')ˆtaJI: oȔFH$fϞqiӦUVIw Z9 uCzi6//ot&ނ) Mo߾Q6\x?~,m0 RxS;vHJJtYYY4w 7--,ZyMM /Wtׯ_O>ݠ}`Z 8*|!aw͊D&a&S54Y̘\L:BC]>qĤIDK@a1eʔ~JYl/{nSs΍9rF&ќY?ߦ9yΘ1#00BbuۜKGuɓuNY_fC«t;088-Cxhw8gw {t;׻woRyuk`ߓ'OjjjZ0 LwOVBt:0 LwNwpv;8wT*tDZ333p+9 ر;w:tPTTdXi4\T* ;𹺺Z;0  wݶmիWcccg\^SSkjj ի[no߾ݻ+VZ͚5klإK]3もRr--ٮ]tpժUwNMM%stg޽sٻw/tgʕ-[پ}h6(777**JPDEE Kϟ rss[`w[^[t%x𞕨-+aw}nbgŋdDdSO=EyKxy?~ah1FB t:*n)))za={&''tLmmmVVVNh7j4G* |1???a`:cǎ>|۵kZnU x=HLLLLL3T͈?*117ѫ , :z:%c%cvt:lsXeG)--5_`I< aBHIIɌ3ƌC xyy3욚,Fn2aĀR; IDAT'''v !NVˢ5j…#GdfĈ .6mͅH,5 0UUUr\XLX@MnN]`IqP̟;ܱ;Φо,<G֭!FzU*СCvE +gΜ?CBR,))a7g?Mu떒RUU0L]]!wݺukee#F]'+Q';VРg7;$$$ru5$[onl2aΝKg̟yfllJbJHHhٲ%Mim޽{r-anݺJ:n. @:<Gϟ.\ha7ϝ;Vy1{AY:?aW (l]K,Ytŋ ew0[v/xh4WWW3U'þ}ƾ;Z:|={S;vx> se˖;111+V5j01h88LwaIl^`"|MLuVk9.qz1fΈnO|ٳ}GqFSq1izysiڢ*f>; wUn>l6#!4!PJ29\; ރӝ@:#:7?Fb&00ƍ2wuuu :<1bSBuF41e򢣣r2jǥ G# 2%vј&c9KC zYe`5$SoFtƍꫯ9yQl:ICBnݺշoߺnݺ,:H|FFF_:. [hJvM.lo(ٻ|gDǙMtXm; L6l@yX;Oѹ޸qGuuu鳼)u$F=w̟ܿg9Ɨ%i*Mtbp^)%ʋFGX4{_]:Y!qfӳ73gd棏>v `vfDӧϞ={n߾=h ͞FKܹs׭['/ct?M N=.Q^teGތa?d؅ ̝rfO;r ;Oѹ)++ٵk[yju``s2 $> ZhOH\:ty0K4 _]:Ya0tXm;Ifͺ}Vo'L Qɓ'۷o~׀74s|w͈SQQNq%\]]c F1𕖹9hψ.֧ .UD$%%ѳ;{U*WffŊJr֭ۂtXeoB b򚛢hpvBYlٔooowwe˖ILwk׮I޽P(߿0Lqq%*E `TCdl9h S`\MxbDD k;GPGӢE(:ݩe L^3?ع`pp;?)}/)3@XVcs>}9;;?S:tݻwrʲ2kG`9CO<&L@oi A߼yɓǍ믿j .,XA}w񁁁t dY󣢢:w\XXh6j& *,,tss3~+}kO<~|;f{_fB޽ˮ9uСCU*UϞ=í]&tzٙRTT+VZM8ԩStY|4TR"~b{!'O>vÇK|ˋPS4J Yho?]\\"""8߶m[R3\txи8k` }]seBHΝl\>hРw>~xڴim۶q7_~}AAA]]]3B߯JJJv9p@asD3eL[5g_d ۾}gffJwG4z_k׮%̞=W =zΓƏ>j^h-))qww'9rĴ58LwzŋwNٴi]9p@BH~~>}XQQA n~nržՊ6'Q1&.$,]_ŦgG<0 `PIII[Fh oi???^?30>u-,ɜEQ{9rD.358 quuݻ;Frѣ[[n̙s=nz1ĥ)\o:x3,Fs+VxzzB$PSSNm׮Q2P%G#"s `fiÇ%j,,,?~nϞ=%,*YtP~{:r!DPHl%ZtOYd0 CuJ?zoİ/"\~HnhGܹT*% ltG:~o(LwlBᠠ DR$hZ~tǬ009z7˗/W*ͻ|^w^jj$66lXzzzEEZ{b>>>FGc>22rҥ'Njkk>2o<)z MZm~~>^ IϘrrrƎ-۴i3q'NHl~^zҤI1Hc&))~s6ᕔCa|_5kGa,Fbcc}||v^QQ7~W {R-[ַo_5P(JL&ڵkN9|PPۂ hKblUtrʕ-[پ};! &&FT9sBa=xx Mjh\DGwuuu :<[h\.}^lo\\5hVZ{xOOOooTnWnݺ}wP(Zj5k֬۷ϙ3ޝ @tLx!S5ڬN:2qUUUbb"-%%EIOٸqF9|/0={LNNt!!! y kl(6ў jtBq`+V~zBRRRzviGU(tرc܌ <4a F+h4...N`hLx̘b\aq7UmF6v|o⭑a*\0Lbbb@@喡5xyy9,87Bn=xtV:6aOE]OD.WUU !F]nؼ. Euu50...9993f3)xeƄtf|] ;2Nxx'|hJuQFsZ>""-í!77WRqkS*¶jp?y >sQVi&؄=FwAX?!];ëwvw#ݮpag۷o a=s*k׮ މnUw!5;ցb[RR}A>br<""… $$$xxxlrɒ%̹sj;~zB|||-[ƭܹj'͛7cccU*0B^zpMIIvww_ltlž2b~Bȼyju``s$*͍Cx1FIhM}뭷^u0­J.tGu0+f 12enjo> UXXck=|o߾NV>gϞ]vY;&mٳgwءR֮]kXĺtg(e˖T111+V5j2 ݱ4!\pgϞt˛6mڸq#s m:TSS߾}{#G޹sb5e-mmŋ۶mG5&GgZjt\Ç?rHCںuknnn}}taaaQQQ#jhb}vVuot\ݻwm~]v|^G̴?C,< رcĉgΜyg\\\OLOO_-v9Bȫzv{ڵkgVԧO>});;ڵk/ƍO)uy…eeeP- 0ѣGO'OtԩS ߿yUUUiii۷7)ћ>}իyM{)ںSSLOLǏj1gtdžutg„ 5oڵkNS(g<==iӒZnMCCCsss![n̙;vݛ.߽{AT˖-nca}ѢEtYQrr~]]͛7;w̖O?K/d[8*QMja K,afÆ cWN:.WWW%:0zz.cP8E[7~sC{nnnXX-.sOw-\ӌnݺ-/VZݻwo„ >>>NNNNNN^^^~رtNW'O?qD(,,:t(]xb%Kѕ.]֭Xaa /}˗^j777Ŀ/_ׯL&x"'GXXݻI&ѓ[VJTSZTTT~~'OV\IFpˆ#rIIIvD;V;w{ m !EEEա{VV֠AX;<|?3ojr}???gϞ~ܸq,**ۼystt4}-yQ:ZzMk׮q?WIs%jȑNٕ.]}r^y]ZZʽ;x"]vR9qR)C-[n[lݻ7]AOs ;e:V[)<$)ںB?Λ;vx`===e˖s֊+V^=ac Q=jv,< ׼[...nnnuuutMvvvΝJeϞ=O>0̆ ~~=zo<<<}]///z20/Ç&xw ===KKK鲯hܻwa&Lҵk׬,C=a cbbJ!C~RxI/Su7g4UUU]v| !DRd~`$qlfa7ݬ<֭2wCUUUl[-"4V}?٭[Yf[=km۶;|;HCd [6m͙PT}ݻw/wenn.{|-Zi쎥B_zڱ82 ``rt+))iڴi&qqq`ftM6mܸ 0 ;;۴u&>>}...#Gs-DjP[&ŋD}Q#jhb}||dFX4Ï9b03={ի]]]Е+WM e&s̹}ٳg+**^xBT&agϞ}ӧO5&ۜl7rݻ䘤*h0ٰ6'\s=z(}Ξ9s/駟Ƞż߿O!Ck׮ 4%22իt'y , 욊 ww͛7HtG'7'!?uhbŊ;vtrrj۶8,--UTƍsqq\z| IDAT>|̙3j+b(zѣGCQ5qEСCaa!-bw}o5)Q999m۶ u̙gy%88ɓSm0Lrr2wxMRih((- ^WfӝN:ڵK޽{ ,Z觟~>qD@@-֧OɓN::ua{knϞ=Z6))O>ofaHGjZbLw+KN˖-nca}ѢEtY* + iݺu3gdرwtݻ7D\| vEO frr~]]͛7;w̖O?K/d[8*QMja K,afÆ cWN:.WWW%:|^oڵkN ^hoNfﹹaaa¶00\ӌ^ !ɾ񞞞ݛ0a-r'O\rٲet/_NkSnnnt}QQMO?qD(,,:t(]f}‹tRnݸ _x'?8EYXXؿB˗'.^Ƚſaaaw&M4~xvՔ.\1b].))i׮hJxw6Q9+##_JaC m !EEEա{VV֠AX;;-BFyԩ?2nܸm޼9:: y-[CWjZU0] uʄr…={Jt'u%'7N0Nn޺u.^H#`R8qbiiMEՔ߭[-[DDDݛ6lh RWWjy+߿GK/Su7'?~7/1Iw1ydCCfNsWWW/h4찰0BիW{%ɾE^zj\BH׮]?SFsoӦMyył.] %>E~^-\XX(Xfaa!; ncwAV[ZZ:sLnH+FjPSN+W\t)]s޽ҝ;wVVV;wnڵ픡8 [^xq֭te```ZZZuuuzz5k}qn愐Ǐ<ش}OOOoٲe~$Tߊ,<|mڴQT7n`fÆ ^^^ov~=JKj4L6zh.\V(꥗^:|0~hBBBzOORKo%J'5sLBȡCuJ)MwwwSd_FCwq*??3fԩS>,Φh 0`رý{6l„ ...]v2)c0&&FT2_~+;wT*{yiqnk׮/_68ܜ!29 E5)))yyy6l|ʳ>nݺ(s7TUUh"Bݴ5?u6k֬zK"/`cigɓ'fzW_}Ů>|ӹ_9$K/X3[;*o߾{er`͹gw, gw`gw#7og4~`["##ׯ_s<&/, 'V;o޼O?a>99TKt8p`ڴigϞTKtURR2u✜WWWk`0ݱ4Lw ܻw/ ځ8Lw,  /V:ut>{۶mڵw}gX ;aC ~jkG`7p펥h5k$$$tƍJANNNޙ3g pvpvNt-ZX;鎥a`a2 ܼys֬Y555zRl?a9::z׮]!!!֎ݓd;wxb=>skG`[쎽D`ؚ?c۷o'L:599 pO=Զmv1dk`Cpv {fmQLwG^,ǗKy9h${QZZڱcGN/駞֎pvgw֭ɓ'4vv ͈ݟݑY-bbb\KܹO>nnnO=TzݸN]z566ځ4#v?ݡaFןvP|7ovÇnE ڿGJOIKKOTEUWW[ܹ300PTvu$ -333<<x,NJ'P/_&tܙ>Ζ {ǏMFٶmwѕ< !d:dΝ6'QL4%KpG}Ǐ̔w}4x2モaʵkBfϞMJOO' 08&&ۨpG9QP%K,^apBHxxxiirpvdtG_x{M6ѕ$Ӈ`W\) !YYY 9bNOO0`{JJJت_~0''ҿyjkk !~~~ ϟ?OFB3^tǂIzruuݻ;Dٙymm-=zumΜ9!QL"`a4ٳgWXAo Z&t:PBjDSNm׮Q2LBVmTz#/AhpTԋ;a0ycHlH?>|h|Ǐ^;ֳgOayb0̑#G! Bb+ oë%K zn1Zauu5Btpq pTԋ7a0TW^Es_~eiiGvIot1 C !tQLtt4fX?B,XвeK!k׮ч.]>ۈÕӝ˗+y]|Y߻w/55u 6,==BV$A|||!ȥK8q~?#Bȼy$JHHprr?ZZZ`''EIO޴iVϧ{=_?~ 3%c֘^;[.ifĉ'N/IDݑ(0LRR;vlDDBprr2dȞ={M b߿ZVce({-Zpqq֭=-ڹsgBuVs$˾ ~·Zc&yfHHHHH!ҥK?>h go^VV֦Mb ,7n܅ jjjn߾GYph dhCqss{ !%%% Ns7߬^:??_VGGGϙ3gر {pT^J&40 L_ft n\{H}h(LwBWZեKzZ9((QVVP(N BCCMېUfjT#[| Φ;2>tg};w|rLLLllӧ؈# !wvv>p!$;;{̘1 LΦ;`V^ݺu}u]Pjj֬Y۷o3g-tR___|T* !111J2$$̙3t[Z]vU<==w흚J޽{̙w^ʕ+[l}v mQnnnTTBanܸѦMNնi͛F6jL_D lG,qoCpL*O?t~~>0Ǐ6l-h\\\h776.BHJJ^ggϞ:.###$$-S[[թS'Z~ƍѣ .;vONرÇ====zDvڵ[Ç}}}E0&<^"""+++###x ݘ1c6l0_|E5/Vހ>fxV( øBJJJf̘1fZ ---&&+>>|Ne\&ILL prrbBdE,ۨQ.\8rHaFpiӦ\tx^r\0 SUU%˹x ݙ3gڵkm۞;wF鋡08kM`01&{toܸ0{NRu5!![,77WR1 T*j={LIInR=he73^tO>QT7nd&11QR8pcq{'h46u?I$C($( )YlX@NZijPITmy tO  ɤ!e aX%d.aR% .\8rsq|o줔h{h*璬 @&owcQR!3Jwf`}cֵ]G:vk4s&[㲥_|E(1g޹sgiii}}6>\S}火+۰H$by )DǻÎS~͛7KKKw%RuwӺ ѯ_e˖w0.r}r!1#3mnn6~vz{{!.bE_RhIWPrwx8q;c ۷/ f&vUShb*pMqJGm_o߾]WWnn͖c[dsJE?);*ŲW*ڝ*RQY1c|۶m`0lw4l[Vcm#duRm_:[I%BVABdQj3@U3GҘg) jgf!ĺuo7_6+W_ I*帀˰y;E˃OJxMuu۷rZ\潀rt~$l"C ۝7^~d_f)yο{뭷***BЉ'k׮ k׮Oh0lllBB9sWbhh |D"aVe-OASO|њ|>_mmŋofuum[+m |m۶A’9Sw̔H$,YoX'4Qܶjid5wq[>555Ν訬:yxz .<11qj)e8bcccX,XoذرcSSS~ccÇ/¡C^xᅇJ)#HWWTCGbpرBNӋ/⋿o^zk׮\zuʕR%Kqd[d[H=zXX5SwͭNb=G.j!E66fn___ 0./]VYr׫xv 5;333[~Ąr||[~67R~!G}d"ͯV֠io{UV޽{RX,VWWh"s3gD'|CE K`rn V:zlid<֝x.u5nJWLwygbbȑ#;x͌};߹tw]X}wvœxw' ޻wO_,?~[J`0-,))뛘p jk’)Xcp8ln V:yp<54lud;3͉wvu&׸$foݺe<22ZRRb.OJyŶ6)`$1~v=>>׿9Xl:S>A 2LDW5c5Ԧ;fz'+,1555Ν訬:yοﶀn[:9rUVuww&=sMzdݧG>%ݝ"'yV.|aSs2T,EǓ"qǏ` x"($y wx8q;Oi[f;3IDq I+E-jiiMjt萔_6zʕ+ږПԆJ xaF/@}e*q~ߚਉOw<֖mm@mmWXadHbERПԆ^3g{!D/;Yiݺufq }h1َ}g?>99yر&`]3 B+WLMMTU5Eѧ~^Zjշ-!D{{{ww؅ M/u i !^}Ձ+W竭x'''˗/OѨ7߬6cf\[oUTTB'N!yL yn988v@ vڡ!kԬ/hoo/++khhH$$CCC---~|ʰ~:7@ lٲ[8q׿w۶m[0L.3<11qjyL SVhU3g8bcccX,$9Gbp؜\$tuuivdX3<'H)?4晘Xx1@s!G4K2@ `\_tzhױ\s?P(d\buuu-B|>)@mmWXqM)7<3Ɯ9s&>խgff׫lZQ+ުOLLH)~Za5 !k'58^x.s? 088XRRb& ޻wϬZfuB libbonobo-2.32.1/doc/api/html/property-bags.html0000664000076400007640000000521311546334245016455 00000000000000 Property Bags, Events, Listeners

Property Bags, Events, Listeners

Properties
bonobo-event-source — An Event Source where clients can connect to listen to events.
bonobo-listener — An Event Listener (an implementation of Bonobo::Listener)
BonoboPropertyBag — Implements a generic property storage interface
bonobo-arg — simplified CORBA_Any wrappers
bonobo-property-bag-client — simplified property bag client wrapper code
libbonobo-2.32.1/doc/api/html/libbonobo-bonobo-property-bag-client.html0000664000076400007640000040224411546334245022772 00000000000000 bonobo-property-bag-client

bonobo-property-bag-client

bonobo-property-bag-client — simplified property bag client wrapper code

Synopsis

gchar *             bonobo_pbclient_get_string          (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         CORBA_Environment *opt_ev);
gchar *             bonobo_pbclient_get_default_string  (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         CORBA_Environment *opt_ev);
gchar *             bonobo_pbclient_get_string_with_default
                                                        (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         gchar *defval,
                                                         gboolean *def);
gint16              bonobo_pbclient_get_short           (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         CORBA_Environment *opt_ev);
gint16              bonobo_pbclient_get_default_short   (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         CORBA_Environment *opt_ev);
gint16              bonobo_pbclient_get_short_with_default
                                                        (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         gint16 defval,
                                                         gboolean *def);
guint16             bonobo_pbclient_get_ushort          (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         CORBA_Environment *opt_ev);
guint16             bonobo_pbclient_get_default_ushort  (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         CORBA_Environment *opt_ev);
guint16             bonobo_pbclient_get_ushort_with_default
                                                        (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         guint16 defval,
                                                         gboolean *def);
gint32              bonobo_pbclient_get_long            (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         CORBA_Environment *opt_ev);
gint32              bonobo_pbclient_get_default_long    (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         CORBA_Environment *opt_ev);
gint32              bonobo_pbclient_get_long_with_default
                                                        (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         gint32 defval,
                                                         gboolean *def);
guint32             bonobo_pbclient_get_ulong           (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         CORBA_Environment *opt_ev);
guint32             bonobo_pbclient_get_default_ulong   (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         CORBA_Environment *opt_ev);
guint32             bonobo_pbclient_get_ulong_with_default
                                                        (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         guint32 defval,
                                                         gboolean *def);
gfloat              bonobo_pbclient_get_float           (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         CORBA_Environment *opt_ev);
gfloat              bonobo_pbclient_get_default_float   (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         CORBA_Environment *opt_ev);
gfloat              bonobo_pbclient_get_float_with_default
                                                        (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         gfloat defval,
                                                         gboolean *def);
gdouble             bonobo_pbclient_get_double          (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         CORBA_Environment *opt_ev);
gdouble             bonobo_pbclient_get_default_double  (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         CORBA_Environment *opt_ev);
gdouble             bonobo_pbclient_get_double_with_default
                                                        (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         gdouble defval,
                                                         gboolean *def);
gboolean            bonobo_pbclient_get_boolean         (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         CORBA_Environment *opt_ev);
gboolean            bonobo_pbclient_get_default_boolean (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         CORBA_Environment *opt_ev);
gboolean            bonobo_pbclient_get_boolean_with_default
                                                        (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         gboolean defval,
                                                         gboolean *def);
gchar               bonobo_pbclient_get_char            (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         CORBA_Environment *opt_ev);
gchar               bonobo_pbclient_get_default_char    (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         CORBA_Environment *opt_ev);
gchar               bonobo_pbclient_get_char_with_default
                                                        (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         gchar defval,
                                                         gboolean *def);
CORBA_any *         bonobo_pbclient_get_value           (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         CORBA_TypeCode opt_tc,
                                                         CORBA_Environment *opt_ev);
CORBA_any *         bonobo_pbclient_get_default_value   (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         CORBA_TypeCode opt_tc,
                                                         CORBA_Environment *opt_ev);
void                bonobo_pbclient_set_string          (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         const char *value,
                                                         CORBA_Environment *opt_ev);
void                bonobo_pbclient_set_short           (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         gint16 value,
                                                         CORBA_Environment *opt_ev);
void                bonobo_pbclient_set_ushort          (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         guint16 value,
                                                         CORBA_Environment *opt_ev);
void                bonobo_pbclient_set_long            (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         gint32 value,
                                                         CORBA_Environment *opt_ev);
void                bonobo_pbclient_set_ulong           (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         guint32 value,
                                                         CORBA_Environment *opt_ev);
void                bonobo_pbclient_set_float           (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         gfloat value,
                                                         CORBA_Environment *opt_ev);
void                bonobo_pbclient_set_double          (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         gdouble value,
                                                         CORBA_Environment *opt_ev);
void                bonobo_pbclient_set_boolean         (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         gboolean value,
                                                         CORBA_Environment *opt_ev);
void                bonobo_pbclient_set_char            (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         gchar value,
                                                         CORBA_Environment *opt_ev);
void                bonobo_pbclient_set_value           (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         CORBA_any *value,
                                                         CORBA_Environment *opt_ev);
void                bonobo_pbclient_set_value_async     (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         CORBA_any *value,
                                                         CORBA_Environment *opt_ev);
char *              bonobo_pbclient_get_doc_title       (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         CORBA_Environment *opt_ev);
char *              bonobo_pbclient_get_doc             (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         CORBA_Environment *opt_ev);
GList *             bonobo_pbclient_get_keys            (Bonobo_PropertyBag bag,
                                                         CORBA_Environment *opt_ev);
void                bonobo_pbclient_free_keys           (GList *key_list);
Bonobo_PropertyFlags  bonobo_pbclient_get_flags         (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         CORBA_Environment *opt_ev);
void                bonobo_pbclient_set                 (Bonobo_PropertyBag bag,
                                                         CORBA_Environment *opt_ev,
                                                         const char *first_prop,
                                                         ...);
void                bonobo_pbclient_get                 (Bonobo_PropertyBag bag,
                                                         CORBA_Environment *opt_ev,
                                                         const char *first_prop,
                                                         ...);
char *              bonobo_pbclient_setv                (Bonobo_PropertyBag bag,
                                                         CORBA_Environment *ev,
                                                         const char *first_arg,
                                                         va_list var_args);
char *              bonobo_pbclient_getv                (Bonobo_PropertyBag bag,
                                                         CORBA_Environment *ev,
                                                         const char *first_arg,
                                                         va_list var_args);
#define             bonobo_property_bag_client_setv
#define             bonobo_property_bag_client_getv
#define             bonobo_property_bag_client_get_property_type
#define             bonobo_property_bag_client_get_value_gboolean
#define             bonobo_property_bag_client_get_value_gint
#define             bonobo_property_bag_client_get_value_glong
#define             bonobo_property_bag_client_get_value_gfloat
#define             bonobo_property_bag_client_get_value_gdouble
#define             bonobo_property_bag_client_get_value_string
#define             bonobo_property_bag_client_get_value_any(pb,
                                                         name,
                                                         ev)
#define             bonobo_property_bag_client_get_default_gboolean
#define             bonobo_property_bag_client_get_default_gint
#define             bonobo_property_bag_client_get_default_glong
#define             bonobo_property_bag_client_get_default_gfloat
#define             bonobo_property_bag_client_get_default_gdouble
#define             bonobo_property_bag_client_get_default_string
#define             bonobo_property_bag_client_get_default_any(pb,
                                                         name,
                                                         ev)
#define             bonobo_property_bag_client_set_value_gboolean
#define             bonobo_property_bag_client_set_value_gint
#define             bonobo_property_bag_client_set_value_glong
#define             bonobo_property_bag_client_set_value_gfloat
#define             bonobo_property_bag_client_set_value_gdouble
#define             bonobo_property_bag_client_set_value_string
#define             bonobo_property_bag_client_set_value_any
#define             bonobo_property_bag_client_get_docstring
#define             bonobo_property_bag_client_get_flags

Description

This code is designed to make the property bag interface slightly easier to use, by allowing optional CORBA environments, sensible return values on exceptions, and accessors for specific types of CORBA_Any. eg. bonobo_property_bag_client_get_value_glong.

With the property bag interface, as in all current remote Bonobo method invocations, translation issues are very dodgy. Assuming that the server process was activated in the correct locale, all should be well, however there is no guarantee that ( in a rapidly changing locale environment ) the string will be correctly translated. It is difficult to know how to solve this problem.

Details

bonobo_pbclient_get_string ()

gchar *             bonobo_pbclient_get_string          (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         CORBA_Environment *opt_ev);

Get a string from the PropertyBag

bag :

a reference to the PropertyBag

key :

key of the value to get

opt_ev :

an optional CORBA_Environment to return failure codes

Returns :

the value contained in the database, or zero on error.

bonobo_pbclient_get_default_string ()

gchar *             bonobo_pbclient_get_default_string  (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         CORBA_Environment *opt_ev);

bag :

key :

opt_ev :

Returns :


bonobo_pbclient_get_string_with_default ()

gchar *             bonobo_pbclient_get_string_with_default
                                                        (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         gchar *defval,
                                                         gboolean *def);

bag :

key :

defval :

def :

Returns :


bonobo_pbclient_get_short ()

gint16              bonobo_pbclient_get_short           (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         CORBA_Environment *opt_ev);

Get a 16 bit integer from the PropertyBag

bag :

a reference to the PropertyBag

key :

key of the value to get

opt_ev :

an optional CORBA_Environment to return failure codes

Returns :

the value contained in the database.

bonobo_pbclient_get_default_short ()

gint16              bonobo_pbclient_get_default_short   (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         CORBA_Environment *opt_ev);

bag :

key :

opt_ev :

Returns :


bonobo_pbclient_get_short_with_default ()

gint16              bonobo_pbclient_get_short_with_default
                                                        (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         gint16 defval,
                                                         gboolean *def);

bag :

key :

defval :

def :

Returns :


bonobo_pbclient_get_ushort ()

guint16             bonobo_pbclient_get_ushort          (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         CORBA_Environment *opt_ev);

Get a 16 bit unsigned integer from the PropertyBag

bag :

a reference to the PropertyBag

key :

key of the value to get

opt_ev :

an optional CORBA_Environment to return failure codes

Returns :

the value contained in the database.

bonobo_pbclient_get_default_ushort ()

guint16             bonobo_pbclient_get_default_ushort  (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         CORBA_Environment *opt_ev);

bag :

key :

opt_ev :

Returns :


bonobo_pbclient_get_ushort_with_default ()

guint16             bonobo_pbclient_get_ushort_with_default
                                                        (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         guint16 defval,
                                                         gboolean *def);

bag :

key :

defval :

def :

Returns :


bonobo_pbclient_get_long ()

gint32              bonobo_pbclient_get_long            (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         CORBA_Environment *opt_ev);

Get a 32 bit integer from the PropertyBag

bag :

a reference to the PropertyBag

key :

key of the value to get

opt_ev :

an optional CORBA_Environment to return failure codes

Returns :

the value contained in the database.

bonobo_pbclient_get_default_long ()

gint32              bonobo_pbclient_get_default_long    (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         CORBA_Environment *opt_ev);

bag :

key :

opt_ev :

Returns :


bonobo_pbclient_get_long_with_default ()

gint32              bonobo_pbclient_get_long_with_default
                                                        (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         gint32 defval,
                                                         gboolean *def);

bag :

key :

defval :

def :

Returns :


bonobo_pbclient_get_ulong ()

guint32             bonobo_pbclient_get_ulong           (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         CORBA_Environment *opt_ev);

Get a 32 bit unsigned integer from the PropertyBag

bag :

a reference to the PropertyBag

key :

key of the value to get

opt_ev :

an optional CORBA_Environment to return failure codes

Returns :

the value contained in the database.

bonobo_pbclient_get_default_ulong ()

guint32             bonobo_pbclient_get_default_ulong   (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         CORBA_Environment *opt_ev);

bag :

key :

opt_ev :

Returns :


bonobo_pbclient_get_ulong_with_default ()

guint32             bonobo_pbclient_get_ulong_with_default
                                                        (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         guint32 defval,
                                                         gboolean *def);

bag :

key :

defval :

def :

Returns :


bonobo_pbclient_get_float ()

gfloat              bonobo_pbclient_get_float           (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         CORBA_Environment *opt_ev);

Get a single precision floating point value from the PropertyBag

bag :

a reference to the PropertyBag

key :

key of the value to get

opt_ev :

an optional CORBA_Environment to return failure codes

Returns :

the value contained in the database.

bonobo_pbclient_get_default_float ()

gfloat              bonobo_pbclient_get_default_float   (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         CORBA_Environment *opt_ev);

bag :

key :

opt_ev :

Returns :


bonobo_pbclient_get_float_with_default ()

gfloat              bonobo_pbclient_get_float_with_default
                                                        (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         gfloat defval,
                                                         gboolean *def);

bag :

key :

defval :

def :

Returns :


bonobo_pbclient_get_double ()

gdouble             bonobo_pbclient_get_double          (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         CORBA_Environment *opt_ev);

Get a double precision floating point value from the PropertyBag

bag :

a reference to the PropertyBag

key :

key of the value to get

opt_ev :

an optional CORBA_Environment to return failure codes

Returns :

the value contained in the database.

bonobo_pbclient_get_default_double ()

gdouble             bonobo_pbclient_get_default_double  (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         CORBA_Environment *opt_ev);

bag :

key :

opt_ev :

Returns :


bonobo_pbclient_get_double_with_default ()

gdouble             bonobo_pbclient_get_double_with_default
                                                        (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         gdouble defval,
                                                         gboolean *def);

bag :

key :

defval :

def :

Returns :


bonobo_pbclient_get_boolean ()

gboolean            bonobo_pbclient_get_boolean         (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         CORBA_Environment *opt_ev);

Get a boolean value from the PropertyBag

bag :

a reference to the PropertyBag

key :

key of the value to get

opt_ev :

an optional CORBA_Environment to return failure codes

Returns :

the value contained in the database.

bonobo_pbclient_get_default_boolean ()

gboolean            bonobo_pbclient_get_default_boolean (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         CORBA_Environment *opt_ev);

bag :

key :

opt_ev :

Returns :


bonobo_pbclient_get_boolean_with_default ()

gboolean            bonobo_pbclient_get_boolean_with_default
                                                        (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         gboolean defval,
                                                         gboolean *def);

bag :

key :

defval :

def :

Returns :


bonobo_pbclient_get_char ()

gchar               bonobo_pbclient_get_char            (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         CORBA_Environment *opt_ev);

Get a 8 bit character value from the PropertyBag

bag :

a reference to the PropertyBag

key :

key of the value to get

opt_ev :

an optional CORBA_Environment to return failure codes

Returns :

the value contained in the database.

bonobo_pbclient_get_default_char ()

gchar               bonobo_pbclient_get_default_char    (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         CORBA_Environment *opt_ev);

bag :

key :

opt_ev :

Returns :


bonobo_pbclient_get_char_with_default ()

gchar               bonobo_pbclient_get_char_with_default
                                                        (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         gchar defval,
                                                         gboolean *def);

bag :

key :

defval :

def :

Returns :


bonobo_pbclient_get_value ()

CORBA_any *         bonobo_pbclient_get_value           (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         CORBA_TypeCode opt_tc,
                                                         CORBA_Environment *opt_ev);

Get a value from the PropertyBag

bag :

a reference to the PropertyBag object

key :

key of the value to get

opt_tc :

the type of the value, optional

opt_ev :

an optional CORBA_Environment to return failure codes

Returns :

the value contained in the PropertyBag, or zero on error.

bonobo_pbclient_get_default_value ()

CORBA_any *         bonobo_pbclient_get_default_value   (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         CORBA_TypeCode opt_tc,
                                                         CORBA_Environment *opt_ev);

Get the default value from the PropertyBag

bag :

a reference to the PropertyBag object

key :

key of the value to get

opt_tc :

the type of the value, optional

opt_ev :

an optional CORBA_Environment to return failure codes

Returns :

the default value contained in the PropertyBag, or zero on error.

bonobo_pbclient_set_string ()

void                bonobo_pbclient_set_string          (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         const char *value,
                                                         CORBA_Environment *opt_ev);

Set a string value in the PropertyBag.

bag :

a reference to the PropertyBag

key :

key of the value to set

value :

the new value

opt_ev :

an optional CORBA_Environment to return failure codes

bonobo_pbclient_set_short ()

void                bonobo_pbclient_set_short           (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         gint16 value,
                                                         CORBA_Environment *opt_ev);

Set a 16 bit integer value in the PropertyBag.

bag :

a reference to the PropertyBag

key :

key of the value to set

value :

the new value

opt_ev :

an optional CORBA_Environment to return failure codes

bonobo_pbclient_set_ushort ()

void                bonobo_pbclient_set_ushort          (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         guint16 value,
                                                         CORBA_Environment *opt_ev);

Set a 16 bit unsigned integer value in the PropertyBag.

bag :

a reference to the PropertyBag

key :

key of the value to set

value :

the new value

opt_ev :

an optional CORBA_Environment to return failure codes

bonobo_pbclient_set_long ()

void                bonobo_pbclient_set_long            (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         gint32 value,
                                                         CORBA_Environment *opt_ev);

Set a 32 bit integer value in the PropertyBag.

bag :

a reference to the PropertyBag

key :

key of the value to set

value :

the new value

opt_ev :

an optional CORBA_Environment to return failure codes

bonobo_pbclient_set_ulong ()

void                bonobo_pbclient_set_ulong           (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         guint32 value,
                                                         CORBA_Environment *opt_ev);

Set a 32 bit unsigned integer value in the PropertyBag.

bag :

a reference to the PropertyBag

key :

key of the value to set

value :

the new value

opt_ev :

an optional CORBA_Environment to return failure codes

bonobo_pbclient_set_float ()

void                bonobo_pbclient_set_float           (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         gfloat value,
                                                         CORBA_Environment *opt_ev);

Set a single precision floating point value in the PropertyBag.

bag :

a reference to the PropertyBag

key :

key of the value to set

value :

the new value

opt_ev :

an optional CORBA_Environment to return failure codes

bonobo_pbclient_set_double ()

void                bonobo_pbclient_set_double          (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         gdouble value,
                                                         CORBA_Environment *opt_ev);

Set a double precision floating point value in the PropertyBag.

bag :

a reference to the PropertyBag

key :

key of the value to set

value :

the new value

opt_ev :

an optional CORBA_Environment to return failure codes

bonobo_pbclient_set_boolean ()

void                bonobo_pbclient_set_boolean         (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         gboolean value,
                                                         CORBA_Environment *opt_ev);

Set a boolean value in the PropertyBag.

bag :

a reference to the PropertyBag

key :

key of the value to set

value :

the new value

opt_ev :

an optional CORBA_Environment to return failure codes

bonobo_pbclient_set_char ()

void                bonobo_pbclient_set_char            (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         gchar value,
                                                         CORBA_Environment *opt_ev);

Set a 8 bit characte value in the PropertyBag.

bag :

a reference to the PropertyBag

key :

key of the value to set

value :

the new value

opt_ev :

an optional CORBA_Environment to return failure codes

bonobo_pbclient_set_value ()

void                bonobo_pbclient_set_value           (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         CORBA_any *value,
                                                         CORBA_Environment *opt_ev);

Set a value in the PropertyBag.

bag :

a reference to the PropertyBag

key :

key of the value to set

value :

the new value

opt_ev :

an optional CORBA_Environment to return failure codes

bonobo_pbclient_set_value_async ()

void                bonobo_pbclient_set_value_async     (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         CORBA_any *value,
                                                         CORBA_Environment *opt_ev);

Set a value on the PropertyBag asynchronously, discarding any possible roundtrip exceptions.

bag :

a reference to the PropertyBag

key :

key of the value to set

value :

the new value

opt_ev :

an optional CORBA_Environment to return failure codes

bonobo_pbclient_get_doc_title ()

char *              bonobo_pbclient_get_doc_title       (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         CORBA_Environment *opt_ev);

bag :

key :

opt_ev :

Returns :


bonobo_pbclient_get_doc ()

char *              bonobo_pbclient_get_doc             (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         CORBA_Environment *opt_ev);

bag :

key :

opt_ev :

Returns :


bonobo_pbclient_get_keys ()

GList *             bonobo_pbclient_get_keys            (Bonobo_PropertyBag bag,
                                                         CORBA_Environment *opt_ev);

bag :

opt_ev :

Returns :


bonobo_pbclient_free_keys ()

void                bonobo_pbclient_free_keys           (GList *key_list);

key_list :


bonobo_pbclient_get_flags ()

Bonobo_PropertyFlags  bonobo_pbclient_get_flags         (Bonobo_PropertyBag bag,
                                                         const char *key,
                                                         CORBA_Environment *opt_ev);

bag :

key :

opt_ev :

Returns :


bonobo_pbclient_set ()

void                bonobo_pbclient_set                 (Bonobo_PropertyBag bag,
                                                         CORBA_Environment *opt_ev,
                                                         const char *first_prop,
                                                         ...);

bag :

opt_ev :

first_prop :

... :


bonobo_pbclient_get ()

void                bonobo_pbclient_get                 (Bonobo_PropertyBag bag,
                                                         CORBA_Environment *opt_ev,
                                                         const char *first_prop,
                                                         ...);

bag :

opt_ev :

first_prop :

... :


bonobo_pbclient_setv ()

char *              bonobo_pbclient_setv                (Bonobo_PropertyBag bag,
                                                         CORBA_Environment *ev,
                                                         const char *first_arg,
                                                         va_list var_args);

This function provides the grunt implementation for other var-arg functions like bonobo_widget_set_property

bag :

the property bag

ev :

optional CORBA exception environment or NULL

first_arg :

first argument name

var_args :

list of subsequent name / type / value triplets

Returns :

an error string on error or NULL on success.

bonobo_pbclient_getv ()

char *              bonobo_pbclient_getv                (Bonobo_PropertyBag bag,
                                                         CORBA_Environment *ev,
                                                         const char *first_arg,
                                                         va_list var_args);

This function provides the grunt implementation for other var-arg functions like bonobo_widget_get_property.

bag :

the property bag

ev :

optional CORBA exception environment or NULL

first_arg :

first argument name

var_args :

list of subsequent name / type / value triplets

Returns :

an error string on error or NULL on success.

bonobo_property_bag_client_setv

#define             bonobo_property_bag_client_setv

Returns :


bonobo_property_bag_client_getv

#define             bonobo_property_bag_client_getv

Returns :


bonobo_property_bag_client_get_property_type

#define             bonobo_property_bag_client_get_property_type

Returns :


bonobo_property_bag_client_get_value_gboolean

#define             bonobo_property_bag_client_get_value_gboolean

Returns :


bonobo_property_bag_client_get_value_gint

#define             bonobo_property_bag_client_get_value_gint

Returns :


bonobo_property_bag_client_get_value_glong

#define             bonobo_property_bag_client_get_value_glong

Returns :


bonobo_property_bag_client_get_value_gfloat

#define             bonobo_property_bag_client_get_value_gfloat

Returns :


bonobo_property_bag_client_get_value_gdouble

#define             bonobo_property_bag_client_get_value_gdouble

Returns :


bonobo_property_bag_client_get_value_string

#define             bonobo_property_bag_client_get_value_string

Returns :


bonobo_property_bag_client_get_value_any()

#define             bonobo_property_bag_client_get_value_any(pb, name, ev)

pb :

name :

ev :

Returns :


bonobo_property_bag_client_get_default_gboolean

#define             bonobo_property_bag_client_get_default_gboolean

Returns :


bonobo_property_bag_client_get_default_gint

#define             bonobo_property_bag_client_get_default_gint

Returns :


bonobo_property_bag_client_get_default_glong

#define             bonobo_property_bag_client_get_default_glong

Returns :


bonobo_property_bag_client_get_default_gfloat

#define             bonobo_property_bag_client_get_default_gfloat

Returns :


bonobo_property_bag_client_get_default_gdouble

#define             bonobo_property_bag_client_get_default_gdouble

Returns :


bonobo_property_bag_client_get_default_string

#define             bonobo_property_bag_client_get_default_string

Returns :


bonobo_property_bag_client_get_default_any()

#define             bonobo_property_bag_client_get_default_any(pb, name, ev)

pb :

name :

ev :

Returns :


bonobo_property_bag_client_set_value_gboolean

#define             bonobo_property_bag_client_set_value_gboolean


bonobo_property_bag_client_set_value_gint

#define             bonobo_property_bag_client_set_value_gint


bonobo_property_bag_client_set_value_glong

#define             bonobo_property_bag_client_set_value_glong


bonobo_property_bag_client_set_value_gfloat

#define             bonobo_property_bag_client_set_value_gfloat


bonobo_property_bag_client_set_value_gdouble

#define             bonobo_property_bag_client_set_value_gdouble


bonobo_property_bag_client_set_value_string

#define             bonobo_property_bag_client_set_value_string


bonobo_property_bag_client_set_value_any

#define             bonobo_property_bag_client_set_value_any


bonobo_property_bag_client_get_docstring

#define             bonobo_property_bag_client_get_docstring

Returns :


bonobo_property_bag_client_get_flags

#define             bonobo_property_bag_client_get_flags

Returns :

See Also

BonoboPropertyBag, BonoboProperty, BonoboPropertyControl

libbonobo-2.32.1/doc/api/html/persist.png0000664000076400007640000005145411546334245015200 00000000000000PNG  IHDRksBITO pHYs IDATxyXePv.*.(HZ-jKQkKkBKEVŪXܗVkkm ( DA\ADYdMC $9Mf&CX99$' *::zΝBر#**JQLt@,`vA pQ, &r` a, &r` 0sK.q8ѣGitN,`n߾4hzٴ1J-Z4uԾ}޹sv„ !'''B'Oĭ={ !$HoߎEYer =<

h...`ݺu}WYNMM Bh֭VVVr:a6` #ʵB=?y ޻wzɏ?~w233]]]wOJJB-[#ZNjjj^^^TTgϤRmBWf 1k9*͛7BÇG___Y=Oq͟?!UZZJVָ;ߟ|.3e ={>{ȑ#eee|Xv1=p2_ZZ1j @\x9SSO?gS*iʠA֬Y~iʔ)ׯ_ǗѸuUUUss3y;BK,A_~%33sѢEBӧW^E$?5v1Z~~رctQ8q"B(66D.?{lyyyIIIE@pr6/X!ʥKzhUUKYYY:AާOu,rR/_r CLqF>r̙?D],>rnݺ`9.@駟nݺbjjuDAlذ!sC@ƿXq8SrrrtttUU>M:oΛoY}=|F[aaa]]D"sZܺukF駟ONܸ]X̙3ө3٩}ue#,[!}C|fff ,6k9w;v-[}sssH_3Of٦]rn&a-cP鱭0oglFcrB@f-gÆ ֭5k#G.Z2<<\,W|ջxqHHHϞ='N|4fջV )6#}x`Trp!,Х Š ʧ6l0nܸٳg/\lMéSU6(ecLL̤I*+++**Əl2]شդI****++WX\LXXXuu5ewt|ɓ'WUUUTTS!C rO},5  /^/\2 ]"棏>*))ׯ:t(.;ؘlZf>207Awܬ\3KKKsM]&r2LY3??oWTT899Ք[HJJz bP(PeYo ﻸ0¦} \]])//n]]]{r?N^7"\Xk҅A7QEEER ˡ !򬬬!C\zuܹdʙ8Q2;:0ztk 9,9x͚5k֬RMy,X0o޼BLvΝp\ncckwJRB!ջH$|>¢822e`ͪtR?&&*:::,,LmTVV`K,',Q݄/Yly\GCC +WOBʙk\Q+;vg2Ic EDDY|%\ E0?;V XZZϸ\.'$$xzz:u oܸGd'Nx~~~/^Toٳ>>><{޽ 1S6ҵ2Daeeeee7!OپH$,`@g>stPчK艽{mڴ ?![SFv YÇ/ǝ{ꥱ۷Ftr: d9 8ݵk?B }^i^s w}=|Z/^4iRϞ=SSS)w0:wgxlmmkkku FD{9r ~\]YFd'''zL_vQ%xtԩWVE;b |4H$ӧO{!x)yNKNUZZovjΝ{w; lhpl$>쳖\.WZ].III<!ty???>uAP?yY[[[[[GFFewuٲeBo? ٳĉɿp8yyy@9 sss{E(]'//nTr]+kii3g@ pvv޶mYN9^E=6se#lfnpPV!B/Y-{g֮] E"Qeeʕ+7nD2 !4s̸/^dfffee,G^Çű)DEEEO>ŅSL7N߿?:vڵ;PBA++ \!==vРA sB}ZfMuuuqqqnnnzz:YN9^ƹb6D7X}U֑b3ÇAAAm Ϣw4ylOO|]QQD///'wHJJzJl\\\>|߿Bّ277 X, vjjjr^2Nw Og~!6u*8 4̍%2!1L 0cG裏e #䶶e#vkk+\.511A~ Ծnܸ1ewww|rg1.KmmmU)~zPP@ Y8)~yMMM]]\Qfܝx骱w3^C6D7X6Gc[6YԩS9B?tV 1<憷KJJ(SLWY$/ʵ77人:BР7rt &%%%&&ryx骱c6D7X6G#Hy<^SSޮaHRJ5,@Nhy^Β%K џ| .\`y e2ٝ;w) {T*U(rͳ666 S]] Y/^\ZZZ__ % Ϸ(..l PIg}vСÇg\ aBK,!, OL CD, ;t#߶m[SSSYYق wT1Rff6F...NQ`LgB[l2{lDryBBi@@Sʻ8qח]xQ7nѣYG"DDDXYYYYYEDD0 G*FGG+'&&³gx쳖<))Ã!rUb1zuuAk:Mi!2g@m6N(;!Z[[FGש6K.p8{yy<\.Hf͚EH}5ByDd!eSWyicS|//@/l޼~ڼyK4>A0gϞ],qH$dlHTYYiffrJj_zSlZFY8777==]=lmmmߏJOO6lP(Cg;iii׮] GTWWW\\<"4@<3gΌ{EfffVVlePYYYRRiӦ3fTVV>}tӦM˖-Ӹ 0 pYjt///'yzz튊 ''':MlՕV*EEER =iFc]v-\PׁЊX|yHHd9GEE:ZݻՆ t/Vtx !Xa, &pftLQ@7k9Yf:UYY_'O~Yu;b_ӦMg@wGg+|rPZZZu/HϾ>d9hY($$/dӦM+++u8F'//!O#|>Y{ BSSSwwK|!T__pLMM.]ǎJ~~~C ٲeKCCn) \Pܹsƍ8ȶ,=?n8kkkTXZB(;;!4j(pݺuƍ 7olhhLJJ§R#d2ٕ+Wۆvuo;n46j(Xf>}w%쒉ڨZ_XX`㧊UHsҥ7oV~޽BBPP}Tv|''uuu~46reee;wֺn{WW''""Bc*%o)//ݻ (--uss;uD"ٽ{q唔wyGy]=z̙3}%?x7onjjJII177kwcfڷo_RիA\.b899Ãa?D"3|\uV-,,gï\B9.]3fr ũ#Ĕ儆ݻ)L_ B /_'S}yzz<877e6]v;ST`cc}vʩ 055mYK94h5{MB諯rtt3gNss3YN;y&_s*%~CvDD ?5kpD"155+WT޽_~yyy*]DFF~7x~رaƧO?I;1OO{׮]Gāp& gϞ[ZZpGtc9|pcc#Ao߾999Ok ,b1 $&&~%3O ry9~!S "lʕ9b]O]v>$$$""嶚:uoFT:DEEEO>e|X\\K9|ܾL&kYK94h5{0LNfff^^Ǐ={vZOYxqvvzQw}שG;w.>>ױ­[}I^TJMM 555dBH4x`6){g;Bo߾d^^T*ݴiӆ pavvIvyyؿ#GX[[[>}vzzE *0"_~*g2޽S _(3 .+T>COOO銊 {ԟBb#B,x<)RZ[[өۃTᑔʔb13BoKR ϟII\\\>|߿B9| CS~M2PnrBx*]uԻ "<<< e*%\.uNNNo&Qܿ_*x<n ywXmR~wB$ =zԫW={L<,trrx"NJJ¿Ѝ733# t5F|n߾}t30bĈ˗/~xccŋ0b'OK25d?~MMM999/_}=zhssٳg_{" x~ WڤI$A( ̙3_xqu.?w]vzzz|fqQF1O;cϏ>ĉt3`kkKX0q,1e9}Uj wwzbetYή](Onkeajj*6e[rrr]]BhhhEVV֐!C^:w\cqqq\`إMf/Uf~Ȧ)QYqsscxwY!GehS̙3vvv_|E`` . 455ի]Knff_pIaa#|oMN]FF2dakkK& ?SRowj'`AAA!!!0aBXXـz߳gرc?ʽM;cOWWW^#bժUʅxwSd9F)urr:~xCCCKK˗ɚ6m .((hmm 666tˆ*O}iѵLYYeC.ڵB#NW^=a„(ӧOsNKK˹sȕ$B{{ӧO777HSGѣlUsٲeSL /4Mf/Te*wC79ɓ'WVVrE _ qܦ6ׯ_ݱ菗/_ܺu,mgG!,""blVu|v8rSC1vX@`iiD.c/N7nѣe*O}iѵLYYy!r_{P9iשT*MLLd| ___GMYxYw^,'%%SPhO?#+m5}醦-WAmٲٳ˵"_ oLmRعsgSSӟIcxZZZ"""BCC 5^ PF YX鵽{mڴIׁ x<\.m wJKK+O&]3fNHH:uj;{O&&&o3g*蘓ڤ'AXHNN{WVV0ȏ+Vl۶ !4};v0}$ ܭSOq8{{(Hqȑ#/_(yD@ܿG:"6`-} \xԴãm`l-``-n… }͛KqӧO-w=w\ QQQ}] ۘ9set ;w'.* sssݻk. 'Np? Т;^2~Cǫ!aNNNzotۃ "Q^^NW";;_ۋ-ڼyʍL M؇tu\#//H-}_eoߦ,"ovŊ:ZkHLMM;wAnOz)))v܉{1cܹp8 _ !S .4FFFfeeg333}M&ׯ1!$ ӵ_z-v$] ^XlwtU캵v@,ߘYYY&&& .llllk*%o)//ݻ (--uss;uD"ٽ{q唔wyG#[[gϞ1޻wڵk/^>}:zu;ȭ[haa<6! >xSS atkYN^JWs*%~)yo˗1|&oǓ =z;Cܹs[N}ӯ_? Y b077w0!_&No\u933s!222&M+]v>$$$""^Çű|̙qqq/^$\OHHDfff+W GB& m޸qC$g0P?eʔ說0ģ>(x(lSؘ.tC` Ve/DEEEO>e9 *}1gϞ]Mpe3{mz9lÆ Æ byY[t"˵s:=oݺ2˟~אK>}>zhBJ:lBD}%OJOO뭷4ӟiӦ1iҤ+VBCCwB555X,xxÇx<<<ޮprrR)}UP<]z8skb1yM)eM i*@V [OyOoCHt7!g{WP)ñDIP0.M.+J hmm%oe(ʕ+4x<Ag&555鲊An+6!m߾}xʕ+uo+f9MMMbֶN,{yy;o\rOVƍSLqpppww'o\.511Aq8T6ڤ]׃0(,lTwa.bnr[[[UbB<YަÕi|9G!rMooǏ766.^ Lbɓ'_~%A|2#7ٳ =<<~ǦCqܔ\YQQٳgG96!}G'NJ!!!*#Duq1~jĉn* CRSS񶻻{II{T)ke斜\WWP(zQ<(,lT0?TU9<6t r-GI`I8tssk$6+BMq,H5f9gΜsuu/qavvv``i^ȳvB AH?LWHӧWXaggG}x$ @yF9%!BҢq@c;vnٲ m۶Y[[ܹMlٲ)STUUUVV|wiii9wŦM Z[[(cFy͜M)ӧME9(xd2]4~RǼ-W^=a„(CH'O!y,t=/Hq|yΰa룣9BXDDy2Ybr>|p-}+UDD['|}}y<ŋq\.OHHp){ܸqc=ȇtmrΞ=񼽽?(3 J%YLeYex̻Bfmm3z{{'$$L:?nF` Q'Nw@k!r,X PjF;fw;wrITTw}ES厎ZG?+AWWWk @q=[YYTTTiw,(((##Mܽ{ڵKpĉ.\` {>sPu#.Y@ׯ_7~y著Wddܾ}{РAlj.Zh}kwSvf9޽{@,']W>}8:ǐ!C|#Bׯ_1bBH(ǧ^[[۳gM6y{{s\777ihhpppp8rJ^^^={9r;̬UBupp())b999555666Ǐ'7xի Yݻwnjcnna|yZkklݺU![^M^.]4foo~A"??>AÇ|2~̌n?!駟ܬ4%%wQ.yN>MT*z*.ܺuzlF^{RRRQF+=dȐd9U߿?V(kjjׯz崶޹sgڴiF!TXXH唔d2ooM6_^ťFe#G*9q;'''==ٳg<ضmҥKqy^[ZZRRRnݺj*BD"yr ؿSSӧOWZUXXop8ӧOY^zmr\]K _eenpBr Smbnn>vx>>>--- R?733C/daPPPHHJ͏?%GIDATbx ákmܸ̙3dyFF2dȵk Xd@ P($;;;00ԴW^"bǎvvv111#Gt²21Au痖֞ j7}IMMW.};v% Xpa1 Y_ :Պ+*]%:z~K҅ 666zhUUKYY.&O|ĉ9s|7 hIy!r]@xb׮]~~~C ٷo_}}}ssmFEFEE9t X #’ooo\. g̘1w::f 9,5`-Sۭ-*}ŊN*++o (r0XkZ_r8MY;jםv<<qD|98 !Vrtt Ÿ~~~|>ѢW+%&&&XQsss{E+A'Q?]/ަd9|2$# kjj0G ҥK(+XYY-]LYZZڵkCBB"""p5ksssDEEEO>ŅSL߿LL z|܄lHTYYiffrJ\>s̸/^dfffee 2oee+4.xJlFD9tPN{nܸ! ۿ?9Æ  cDB9tN}0!H)KbmWWׂx bP陟+**𶇇GRRғ'OFD٠iq׮]aaap{a2N6#^(M~8r]TT.J ?ɓ'ZP + u||ƚ!Ht,< ,d2%Tڪ׃ r\.Dڍ7L~ak @e/;Z[[?Ʀ!x8ُH!]/ަd?|BCC;&}}}%p(YNwpB:I`` pB]ӿ'qssb--99NP444^RRyjj35CCCYO|>c}_lB9m6 _Ő!Cʕ+?SXQQQ1TiVVVFEE|R`ptf Ar$ٳ-,,nݪ^_*FGG&&&³gx|p@r{9l0mJ׃,  d2YfffsssXXu5B# :p3>gϞI$+W:(JWX/ߒyyy>>>] f_zJJ>F/P޽ _|)亮^3*pc~!>}J\zuVVVC 9u^Unnn^d#EO6ɉ9;;_zU>f^CM#}JKKB3f[__9믿YZZZZZ[.]b!277]fMKK { pQ x``` 2*_xXWWW>?t[n1M2@'ޒ幹!0##=ӧsE}wʻ'%%ݻwOP¡C"~Ǐ5J;j1(??;^0hllT)F/P\\翇ҘsE1cƔWTT&&&/^d ԗ/_|oA-Z? *///++1bv+s^PP pm544ɇ d9 62L$ <!w^\8j(P^^~sP>}w}r<!C5ʀ 񳙢& ?ݻ9r$B(++ ?B[ !GGGOxYA*A ClѣGA4552rM!:H6lرc H rr:Z@@@tttiiz (fTQ~Vy9~w6,[@ׯoܸ!ΰB?lnnFYXX0_VV6{l777q8%vC7r PyṖz)#G '#ÎC}ӧOwtt$?V ^e̡*??;_T … !SSS(,Gٷz !WWWGL&SliiQnP㡛f9 ;vCA1*m2?T֟cƌA={Mb ǏG|(k26slZg9çyݛa/Ӎ7?b,GI$P7)ܠH$_`xYNw?T(a&C` @_hxU>߻w[n;vKhgϞJt_Z ppp@ݽ{e*o3ߦTZg9 80..UUU26!!!~ǣGg3Fcq}\Dd5| *++8 / ẽb>Tۄ,JOF BBByC5 vލ]R!NE:! 8po})"ŋoȑ#.kQnPŴ{mk+]콈\B,&)w\Wew`ؑgYquYuiA "mۚ?o~U9_Oݫra* [ i՞Sny> ú~~/p $q\ dEGBmIENDB`libbonobo-2.32.1/doc/api/html/libbonobo-bonobo-types.html0000664000076400007640000011570411546334245020251 00000000000000 bonobo-types

bonobo-types

bonobo-types

Synopsis

GType               bonobo_corba_object_type_register_static
                                                        (const gchar *name,
                                                         const CORBA_TypeCode tc,
                                                         gboolean is_bonobo_unknown);
#define             BONOBO_TYPE_UNKNOWN
#define             BONOBO_TYPE_CORBA_ANY
#define             BONOBO_TYPE_CORBA_OBJECT
#define             BONOBO_TYPE_CORBA_TYPECODE
#define             BONOBO_TYPE_CORBA_EXCEPTION
#define             BONOBO_TYPE_STATIC_CORBA_EXCEPTION
#define             BONOBO_TYPE_STATIC_UNKNOWN
#define             BONOBO_TYPE_STATIC_CORBA_ANY
#define             BONOBO_TYPE_STATIC_CORBA_OBJECT
#define             BONOBO_TYPE_STATIC_CORBA_TYPECODE
#define             BONOBO_VALUE_HOLDS_UNKNOWN          (value)
#define             BONOBO_VALUE_HOLDS_CORBA_ANY        (value)
#define             BONOBO_VALUE_HOLDS_CORBA_OBJECT     (value)
#define             BONOBO_VALUE_HOLDS_CORBA_TYPECODE   (value)
#define             BONOBO_VALUE_HOLDS_CORBA_EXCEPTION  (value)
Bonobo_Unknown      bonobo_value_get_unknown            (const GValue *value);
BonoboArg *         bonobo_value_get_corba_any          (const GValue *value);
CORBA_Object        bonobo_value_get_corba_object       (const GValue *value);
CORBA_TypeCode      bonobo_value_get_corba_typecode     (const GValue *value);
const CORBA_Environment * bonobo_value_get_corba_exception
                                                        (const GValue *value);
void                bonobo_value_set_unknown            (GValue *value,
                                                         const Bonobo_Unknown unknown);
void                bonobo_value_set_corba_any          (GValue *value,
                                                         const CORBA_any *any);
void                bonobo_value_set_corba_object       (GValue *value,
                                                         const CORBA_Object object);
void                bonobo_value_set_corba_typecode     (GValue *value,
                                                         const CORBA_TypeCode tc);
void                bonobo_value_set_corba_environment  (GValue *value,
                                                         const CORBA_Environment *ev);
void                bonobo_closure_invoke_va_list       (GClosure *closure,
                                                         GValue *return_value,
                                                         va_list var_args);
void                bonobo_closure_invoke               (GClosure *closure,
                                                         GType return_type,
                                                         ...);
GClosure *          bonobo_closure_store                (GClosure *closure,
                                                         GClosureMarshal default_marshal);

Description

Details

bonobo_corba_object_type_register_static ()

GType               bonobo_corba_object_type_register_static
                                                        (const gchar *name,
                                                         const CORBA_TypeCode tc,
                                                         gboolean is_bonobo_unknown);

name :

tc :

is_bonobo_unknown :

Returns :


BONOBO_TYPE_UNKNOWN

#define BONOBO_TYPE_UNKNOWN                         (bonobo_unknown_get_type ())

A GType for Bonobo_Unknown object references.


BONOBO_TYPE_CORBA_ANY

#define BONOBO_TYPE_CORBA_ANY                       (bonobo_corba_any_get_type ())

A GType for CORBA_any.


BONOBO_TYPE_CORBA_OBJECT

#define BONOBO_TYPE_CORBA_OBJECT                    (bonobo_corba_object_get_type ())

A GType for CORBA_Object object references.


BONOBO_TYPE_CORBA_TYPECODE

#define BONOBO_TYPE_CORBA_TYPECODE                  (bonobo_corba_typecode_get_type ())

A GType for CORBA_TypeCode.


BONOBO_TYPE_CORBA_EXCEPTION

#define BONOBO_TYPE_CORBA_EXCEPTION                 (bonobo_corba_exception_get_type ())

A GType for CORBA_Environment.


BONOBO_TYPE_STATIC_CORBA_EXCEPTION

#define BONOBO_TYPE_STATIC_CORBA_EXCEPTION          (bonobo_corba_exception_get_type () | G_SIGNAL_TYPE_STATIC_SCOPE)

A GType for CORBA_Environment with static scope (see G_SIGNAL_TYPE_STATIC_SCOPE).


BONOBO_TYPE_STATIC_UNKNOWN

#define BONOBO_TYPE_STATIC_UNKNOWN                  (bonobo_unknown_get_type () | G_SIGNAL_TYPE_STATIC_SCOPE)

A GType for Bonobo_Unknown object references with static scope (see G_SIGNAL_TYPE_STATIC_SCOPE).


BONOBO_TYPE_STATIC_CORBA_ANY

#define BONOBO_TYPE_STATIC_CORBA_ANY                (bonobo_corba_any_get_type () | G_SIGNAL_TYPE_STATIC_SCOPE)

A GType for CORBA_any with static scope (see G_SIGNAL_TYPE_STATIC_SCOPE).


BONOBO_TYPE_STATIC_CORBA_OBJECT

#define BONOBO_TYPE_STATIC_CORBA_OBJECT             (bonobo_corba_object_get_type () | G_SIGNAL_TYPE_STATIC_SCOPE)

A GType for CORBA_Object object references with static scope (see G_SIGNAL_TYPE_STATIC_SCOPE).


BONOBO_TYPE_STATIC_CORBA_TYPECODE

#define BONOBO_TYPE_STATIC_CORBA_TYPECODE           (bonobo_corba_typecode_get_type () | G_SIGNAL_TYPE_STATIC_SCOPE)

A GType for CORBA_TypeCode object references with static scope (see G_SIGNAL_TYPE_STATIC_SCOPE).


BONOBO_VALUE_HOLDS_UNKNOWN()

#define BONOBO_VALUE_HOLDS_UNKNOWN(value)           (G_TYPE_CHECK_VALUE_TYPE ((value), BONOBO_TYPE_UNKNOWN))

Returns true if the GValue contains a Bonobo_Unknown.

value :


BONOBO_VALUE_HOLDS_CORBA_ANY()

#define BONOBO_VALUE_HOLDS_CORBA_ANY(value)         (G_TYPE_CHECK_VALUE_TYPE ((value), BONOBO_TYPE_CORBA_ANY))

Returns true if the GValue contains a CORBA_any.

value :


BONOBO_VALUE_HOLDS_CORBA_OBJECT()

#define BONOBO_VALUE_HOLDS_CORBA_OBJECT(value)      (G_TYPE_CHECK_VALUE_TYPE ((value), BONOBO_TYPE_CORBA_OBJECT))

Returns true if the GValue contains a CORBA_Object.

value :


BONOBO_VALUE_HOLDS_CORBA_TYPECODE()

#define BONOBO_VALUE_HOLDS_CORBA_TYPECODE(value)    (G_TYPE_CHECK_VALUE_TYPE ((value), BONOBO_TYPE_CORBA_TYPECODE))

Returns true if the GValue contains a CORBA_TypeCode.

value :


BONOBO_VALUE_HOLDS_CORBA_EXCEPTION()

#define BONOBO_VALUE_HOLDS_CORBA_EXCEPTION(value)   (G_TYPE_CHECK_VALUE_TYPE ((value), BONOBO_TYPE_CORBA_EXCEPTION))

Returns true if the GValue contains a CORBA_Environment.

value :


bonobo_value_get_unknown ()

Bonobo_Unknown      bonobo_value_get_unknown            (const GValue *value);

Get the Bonobo_Unknown value from a GValue.

value :

Returns :


bonobo_value_get_corba_any ()

BonoboArg *         bonobo_value_get_corba_any          (const GValue *value);

Get the CORBA_any value from a GValue.

value :

Returns :


bonobo_value_get_corba_object ()

CORBA_Object        bonobo_value_get_corba_object       (const GValue *value);

Get the CORBA_Object value from a GValue.

value :

Returns :


bonobo_value_get_corba_typecode ()

CORBA_TypeCode      bonobo_value_get_corba_typecode     (const GValue *value);

Get the CORBA_TypeCode value from a GValue.

value :

Returns :


bonobo_value_get_corba_exception ()

const CORBA_Environment * bonobo_value_get_corba_exception
                                                        (const GValue *value);

Get the CORBA_Environment value from a GValue.

value :

Returns :


bonobo_value_set_unknown ()

void                bonobo_value_set_unknown            (GValue *value,
                                                         const Bonobo_Unknown unknown);

Put a Bonobo_Unknow value in a GValue.

value :

unknown :


bonobo_value_set_corba_any ()

void                bonobo_value_set_corba_any          (GValue *value,
                                                         const CORBA_any *any);

Put a CORBA_any value in a GValue.

value :

any :


bonobo_value_set_corba_object ()

void                bonobo_value_set_corba_object       (GValue *value,
                                                         const CORBA_Object object);

Put a CORBA_Object value in a GValue.

value :

object :


bonobo_value_set_corba_typecode ()

void                bonobo_value_set_corba_typecode     (GValue *value,
                                                         const CORBA_TypeCode tc);

Put a CORBA_TypeCode value in a GValue.

value :

tc :


bonobo_value_set_corba_environment ()

void                bonobo_value_set_corba_environment  (GValue *value,
                                                         const CORBA_Environment *ev);

Put a CORBA_Environment value in a GValue.

value :

ev :


bonobo_closure_invoke_va_list ()

void                bonobo_closure_invoke_va_list       (GClosure *closure,
                                                         GValue *return_value,
                                                         va_list var_args);

closure :

return_value :

var_args :


bonobo_closure_invoke ()

void                bonobo_closure_invoke               (GClosure *closure,
                                                         GType return_type,
                                                         ...);

Invokes the closure with the arguments.

Examples:

1
bonobo_closure_invoke (closure, G_TYPE_NONE, G_TYPE_INT, first_arg, 0);

1
2
glong retval;
bonobo_closure_invoke (closure, G_TYPE_LONG, & retval, 0);

closure :

a standard GClosure

return_type :

the type of the first va_arg argument in a set of type / arg pairs.

... :

list of type / arg pairs

bonobo_closure_store ()

GClosure *          bonobo_closure_store                (GClosure *closure,
                                                         GClosureMarshal default_marshal);

Does the necessary refcounting magic and returns a directly storable closure

closure :

a standard GClosure

default_marshal :

the default marshaller to use

Returns :

closure.
libbonobo-2.32.1/doc/api/html/persist-file.png0000664000076400007640000005416011546334245016112 00000000000000PNG  IHDR(KsBITO pHYs IDATxi\H!N\XUDEֺj޶rW[]UDPTmֶFՊQ*xAT$2s;w:32$09ss&` &R>` &R>` &R>t<=D"3f̃t7(H֭+V]H@#)((@ADCCâERSSgΜi֭[!___C R>t<8b%KBP=|ϵkBKKKX,&NNN"m…uuugϞ HpBwwwXzeLLD"H$7nŽ {{ѣG+RB%ϟG;룣B'N$"??w!*?BR>rرcSSSvB7otj@w`sņHdffFf⠠ < >6l\.GYXXq!}uu5[D:~ϙ_~ӦMM |LQQQcccKK|Ν BFeff[YY!Beee &S0`Bo׎;{Ϟ=>|o߾| "۳g^}Uʕ+fA^QQ3к=zhddbqIIɬYF*++{y w{g_@ t}&|L_ZZz/Nf͚5gF!ai( @9R~DDBhҥ?nhhqF||8ٓl_]]=dȐ۷_rV&M8!oO[mB=~XKڠShZ&!TܼiӦ~bKK˾}.\^ǏMMM裏|}}RynfϞMףGP~~ 믻vUsj@&UOFBmS-`0 )0 )0  4tZgVQ>`u)x' ozz:t|3wm۶͙3'!!б^A%Baccc: zbteɒ%20<<W?Ν755͝;Q>B@[֬YSWWwĉB8|===KJJ@X(c%J}}}X >ķ?s挽=+HL&fǎ .\\ | >޼yy@A[[[#@XA0 >cpo `0187V0$X187J00PX187Jp)d͚5gϞ c~Ϟ=UUU...z |E}{{RfG=ݽo4(= SBR4""!TYYǠ8@Q><Ocpod(LNWdѼC/ wi>YTLO ojgV÷ iG!Ȼȣ| _r/^x_9֧B Qk>EBRUqNՖWUCOi/(4Um"fޘ R>0 HF_/.|UUu-fDkkhjz`V?vgI$OO˗/WZZ:j(D"HF}]9s YS'"!8jsSK+']OUج5`jo~Z)|@ìGNvYCtÜ:0: &R>` &ä|m<H[4 RI@Gږ[=cieÆ bwS\\ܿtJKqq1'p$Z)ˆ RSS=Z__Ἵ===r?J>}%K?~رcǎ40>_GHxynnP(r unݺ9r zVVVK.eFkZvݻWrttI͛r֭[7n}Z&Μ/OUE۴A96P(ĥiJY)UsN\ُ`q!֭[f ۿ?A7zzqi53K1 qTcQv:x,WWϟw _읣s hUx3Bن:GUk13T5#3~Xݩ?S|}}N:ŜիWUA7zzqi53K1 qTSU:Y<A!!!C6ls hG R݇uh ˺0fy:HQQQ۷n߾MMNԯwɓ'M6XTvvv|`@^\ZMdhT}]LQ1{#G91bΎVNU@jۭ#u[u8漐t$fy:HMMMݺu }ݷo٩SNA HNNF%''%%%BooYU RW 2(#L<A%=?L|$@L|$@L)f] )0$lAU@zj|$hsVU@_)v5+**ZtѣGBxw _'%%ŋSLhY?.--ݿ>}$nZ!X,㖖] |.>ӧ~O?}`ڜ333KKKL80Ai[DΗ/_ 2eC@)hmY<""822R*v]qԜ;w.**ѣGWUUVTTaN֬Yl2:/T+J#""BleeeccC[/h 4:}_\θ$m#F ٴiW6xWh ^hnnx!C}? v.ŋJ.;wnȐ! a0͖Qa?m̵bbbb1|6;wu?@CGFEG _~}ܹckk;bĈUVݻ] !/̬gϞׯǗw5f](m !t777Mtŋ;wnF0֎J믿 .hk g͚!4gϞ/=ׯ_|@HԵk9sٳg-͛'K0AO|#/// @$3۳6 ReT G[@kggץK\a߾}m)hllO<==NZZZjp#AaXW^׮]#bʔ)Fr.711v/mD( 1m_|||]]]||?Ͷm9N-Bh֭r<--M$ۧOdd+VDYXX,Yӧ  a0mؼ|/AUVVΚ5kܸqFss3iXXX/^_hɓ'UuB]" r9^K(21ǻ?NԘ"ɖ۬dw|=z$*`` 1(h}gg粲2رc/_nii9rHL8:::uJTر\K(l势6l۰aСCZYY[?)b6\޽wޭP(vշo_fcfKܹȑ#xӇl995qqbvޝkmڴ@Gӆ w-X ""cDkkhQ>g0tԨQD"=ݻ?g.\(Hl___P痛KkH[[[|y ._)H/^QɅng(ڰ?"ўRt?Nk[K U;h;(hGzϞ= }VVVfff:u޽+Ҷ R>aTT𚚚\ l߾/6lB_ j7uׯSĿ ьP!0zco755'Ž;GoB7nmhhym:bʇJz]K3*p+++??sN>/JrySSzss3yyy7ooﰰ%Kt ukp4C;};~7z>}ڵk%%%ڍA#JJJRk_v6A[o:.ϨHgeezL2E&`f{f=sJz;~7:e.%BH$K233Gѹsg CWWWq>Yeх'.Ϩo$sȟZN8zځѤBCCBQQQWU}r  W^y!*?GȳU]f^{5PϞ=5Z 6!l2[[[_-~TLLX, ߿o>Z=UQFTWWK$;N5'K׬YsܹǏ777?}/D}gkaR۷+k׮ O4Z7KD"LCGD h;VxrRD"kLZSa8&u &t¢R<].qT*-ZԆϻ@M`PIψi0e%%%gΜy7r֭[7nhQ>h.Q\\jժ=z'*QÏ|.j?ĉׄ)5k@l|`LvQgt;SYYrpp={ܹs0HT`(߈(_c-?eFΘo@ ;>|8$$:&&fL֎E g{i=++kƍ: Q; ӣ|P)_Skľ}OWp!a0HFOD|P WWהPvvT*]lnf'''܌꿿.,\n={BEEE!!!b'++sf`AAAB9tll].]3GgFȺݘ hCp̺BMMM <?N~iӦtfTն/;߾zj>}ҳfdda)Sa u@f`;=|P(  Aǻgmp _r_~w¬C0 hrf2SGlutfƌ!\:i)c\ rk˗/}}}q|M{zS3˗/8=/_o>|X+ꟍ~ %}8? u\ H$?qڵcǎ~և`~ }m///‹/+>>>ϟK^}UXqq'cee5s̜ 233={6n8jĚ6..NUBB޹suֹH˗/␐ ZGGG@U@fҫW/GG][MAXmvvP(%"226** |D"Yx16M…1pKKKf!|AӨKNo>꒙3g~WRD{[ZZ3f$$$GqvvƷ{ 믿={6޽{q&޽{]vU5+VZ NLL6m^= uS˜sݹs cbb-[Fm@3z0""bɒ%d>}~+R}4y%nlp־opw;h+U]9N? bcckaaѥKiӦݼySOٳ+**e2?ncco۶ӡJzqjz<wYpS*ᎎQQQտKllO?چM(T*w5{lħm76FO;GtGF.^Vn4jsf=fQQxb>}q ur· D]v3gΞ={ϟjda4YZZ_2tKDZ 돞կtG]QV˱ bc-  5N̲{ rD5qğ~ L֫Wk׮1eʔQFr0jBmm؋Qނ`tկtGH F9pPd-OG+G !GTn0`@KKKDDٳgE"QCCAYf7NUo:\?an-1Ч~`; Ov0zZ;}͕T^Vn4k$8C01qTE=hРRڵEBcǎ]|ȑ#e2YRRޘu90۷oݺWhСgΜ@N8mU\Pqϱ bSU 5N̲{ՙrDEDUUcRRm ,`ݒzc!цH UhhÇ 5z;P/j;<@n^bPSfffi˟>}ڻw9s攖*_uԩe<%hY.]4`H4x`|W^yE$+557!YXXΝ YK=Ǣzǎݺuٸqܿ~葽=^SNk׮ٳYnT s+o۶MTȑ#[lҥ پQ,~s7?FR!kTWWϙ3Y,> @saj|fUVݸqܹsnnn٠A233 x򥻻 krrBHHH4hnwA͘1c…qff'|?er|[[[UAR璥kn߾<6sGlsuFqqq`XXYٳgqNFN'mĨS:::᪯!/_[|OpјܛD"JxyYY /NuyVԔOU=|I;^L:z /Ƞ 5Hȑhn#F'6eǎy?4/|B ;|)^܌ϩQ<<|;##8Z)"֚񅅅@ _WZ5`ۻp!>B_~~\.wKJJr'O0GT<+RP(rrrȣ|5#F-ֹcMMM:ݻ'''xbѢEϞ=ݻ7nbkk;dUFa`KFE[¬e{{E 2$-- ߦ$<==rI?NQuyV7nܹ; M3':wl!SbѡCux⠠ |o}}}~ TMYlז:h$&&oٲECYtttMM͛B??gC?PN` -krٳg_q~Ӽ ; i#=qACGB?..>sww߶mo=0EЅԕ+Wޡ-dgg4h̘1nnnR>0Νvrrꫯ  ??*CQ1e˖ݽ{w…diD@%{ǏzBBŒ3K͛{nm!M (xBֿ>mņ X/{-BͫWƅK ~Hߧ ڵ+y {I o߾uVB]gΈ| }9m/dF?~pB//d=}u·ܹs/\p…2=ҥKƎK>T.ǕtΝ~z+++6́9#QJ|fH͛7744TVVjs^z9::Ǔ7n>|e@@`ܔC;99# GGGOUUBs֭sww777wuuUu6..NUHK.1b-d2u!kg|ٸqhq`XJJn%!hիW^#g___uR;"Czkմ%߿ꚜP( 3 'ׯ ~m{օ֡g Aeff27=AW.Q53g1d-x拉{RRB8x'|jF[uF[!f/lGFE&߱[XXXVVVJJV>%K;;;"o111};cii9cƌ<ܘYU633s̘1>kwޝlɺutD"!гpʕaÆ/iQgff37`{ ?}TP466N4ifĺXgĺXbL|ccY_(ƺx'&**KUUU^XX뛞N.^x:ujOoMPK-[KxX[F;`  U)u~ԩ˗شV_:P)w6=Đ0FR:w j~Ϟ=UUU...z˗bXG?xq555ӧO?}{llw ERA7gϞ={,GXdٳgs5YZt &ajTv0zMar<>>>..kSRRҌ3Jv&^!=Їnݺ-_ӧ/_n'bӧOW*sb`4(߄-|nn+2pX֫S]]]PPPii_ )|Ô/ZV6@[ |>vZTUUon| }ҥ˴in޼fתu.ѥΊT5Jm jp4#d2{J믿 .->5?k,CbҲG1bĈhC/R띝>(v:gΜ={̟?7’͛rM.I-h[qϞ="|S,MӹsgqD"Q@@@~~>5kۮ)))nrqqW(...ŪbVP#PXX8a„[[[ב-[DDDt0Nի׵k2e 9Ar7$?11v/m[Ǐ;99k.RJ$8C_riKF JJ9##ݝ qmٲ ͛7O0A9ǺjkkB!BH*Xӧkll׿W^@ݽDJ"6AUVVΚ5kܸqFss3i2nnn.Ǚ',,,/^Xg IDATZZRW_hɓ'UN]" r9^K(R8p $$~ʕAǻ8,WWϟw19~WTTxxx tr%C/U\)+'&&:88X[[sZpD"Qվ8<<ҒXiiQ$D"=zݻw+b9sZ7;;W(2ctt4A666b nsaѣG19~h\WWv3fh%$M +++=HFwϞ=^OpBXXXKKYVXa\0bĈѣGX@})߄p< E޽Gzj777MMMkRуoBr~@Qy 79/_q*C &M>qss+//q??OLLOSRR  m <"Q)// ܼya}KK?裗/_ǀL΁&Olor믿D3g00 χ]6lX|]rrrxx]<"@7!y455}GQQQ3 `)߄]g# H@皚>ZC& R>ЭQF%$$L:бWԩSHHȁt:\[߿РARܼs=zxW?-6L ?f(..3fk!N:5tP+++++д4BwYZZZZecb_~{ DZ6ޱ/^xnݺ9r͛θ\.wvvu֍7,/\@DTT#m,Zk888޽ f?˗/{zzZYY-]/ \Bĕ+W~[V&O_|񅭭޽{YGEj2#A-YD"xzz^| 95fi cqxue---zPb./((@yxxϜ9# ݻ3f ͛BRܿaØq4c ,**ҽ{)SsOɓfffÇ|kfffvI Xrejjj]]]]]W_};w.+%%!4tʊܛKGp[n͚5+((nԻ322 7nܖ-[ؼy ޵kRLMM!B*&&&*J[nǏwrrbm۶x܉_|||]]]||?A7o&eMxĴ4Ho>}Z&Όu1#A+2u1OtAԄ#oߎ6 !t5ouu5Bۛש}78 8%%eС㍄  BCC9innF\lŋroV'Oz#fffR9++ݺuÇz-́BBBW\IzI(P3;sVGgatHB%CYFcw'YYYCDb9uu50`[ϟ}f8&B._tiڵvvv!777$ BNJ8={LnKJJL"ȜlL8qBH$qŚi)mhh(B(**ӧA455QRE)_# g022>|!tQoqqqxx%9Mb…1&*._",^ߕ+ rss H`mmNg 5~3g}.9-f cq_~y)#Gh-V[[~X,hlN`AS꼼8Ÿl`֭X,F) /{!yZҥKro.*Hp|#oܹc~zeƌ/_z\SbիW˝2Gyȑ'O|255UUhF>ƍ??gVUU555"[{aaaÇ3Oߣŏ_~) OfQF=z$@˽4& RD/Bⱞ0aB,..N=Q93~xP{;wcgN4ܼK.ӦMc.A zD"kLA'O H$dȐ!dW'LЩS' O !|||v܉m=梂 T3!0tP>7!ZNNNZc# <"{i巘XL^Y+ V;4l;Uknn޽kXh+'߹s"NhTu8!66o߾,ٶuCuuu&Lꫯjjj 'Os~R*zvv BBB/\`ګ<444%%#G4tDڊ=ڽH2wɿܫjͱ֣cFB9uP֩*++w---7o$GFF8}tPP9 %luǚ[CC-Bw޷onm2~G\iR掺.|Uk=:Hq2`ܣ#'OAdff;ڸW^Ӕ)SF;zèe y;i_Դ?RЌ >4G2wϱ bԚcG 5Nt{ rDu֭DDD={X$jdeeYƍ7fYBmNy466?]X,$řԿ \KK:ﹸWٽ{Bصkr޽%}EB9D>}~TF#*ooA%''Q[:;;!Ǝ|rKKˑ#Gd$U-]tΝuuuPjm@*9VAZsX#Ys:CrttLJJMy[RUo̲ۼ8k/8—KkO~ځgx]?~<99zo9syzٳg.]Wht/w`| n[[۬,PHHڵkǎkԩS!!!<<<:wlph_p7kjj4iݻ |‘߹sc)߄@u)0ep`+[O:1c:zG& 7xcɏ=2t8DR9}$ss.]:"zN7!UUU&LxbΝ8o:")߄ܻw///G)))~~~^u+8vСC }8cߘ9$HFcƌ9x >Ԁ$__tLf@w(*Cc>J>>J>>6AC pw:99Y[[3})ߗ山 w>|>P766p$|p<-X,P%7h(L *?O-j' Ѕl^"v,H/MY$IݝUUV4|1}rh4[S:Kӵ|pd[VړΦ 8jIA`Pg1$NR~ooh!4Drx-bFyFRI̷W*9v6;a3٬ 8X]f4-͉l6[MbhBdYn4Z{{{RUU}>,˵ZZ6D9/M.<K($IHUӋD"[[[tmM00ul|V~EۃJ:;;!<7 ڡlr7MۭiО$]\\,,,$IԴmbsBE jZ#n_^^DQT*zݴ[p,GJ>#8J>#8J>#p'_t p:MIENDB`libbonobo-2.32.1/doc/api/html/libbonobo-bonobo-listener.html0000664000076400007640000007041411546334245020730 00000000000000 bonobo-listener

bonobo-listener

bonobo-listener — An Event Listener (an implementation of Bonobo::Listener)

Synopsis

                    BonoboListener;
                    BonoboListenerClass;
void                (*BonoboListenerCallbackFn)         (BonoboListener *listener,
                                                         const char *event_name,
                                                         const CORBA_any *any,
                                                         CORBA_Environment *ev,
                                                         gpointer user_data);
BonoboListener *    bonobo_listener_new                 (BonoboListenerCallbackFn event_cb,
                                                         gpointer user_data);
BonoboListener *    bonobo_listener_new_closure         (GClosure *event_closure);
char *              bonobo_event_make_name              (const char *idl_path,
                                                         const char *kind,
                                                         const char *subtype);
char *              bonobo_event_type                   (const char *event_name);
char *              bonobo_event_subtype                (const char *event_name);
char *              bonobo_event_kind                   (const char *event_name);
char *              bonobo_event_idl_path               (const char *event_name);

Object Hierarchy

  GObject
   +----BonoboObject
         +----BonoboListener

Signals

  "event-notify"                                   : Run Last

Description

The BonoboListener object is a CORBA server used to receive events emitted by a remote Bonobo::EventSource server. The combination EventSource/Listener is used to notify one or more client applications of events that happen in a component. Think of the EventSource/Listener as a notification/callback system that allows multiple clients to be informed of events.

Once created, the BonoboListener object needs to be attached to a remote IDL:Bonobo/EventSource:1.0 server. This is done by passing the CORBA Object reference of the BonoboListener to the addListener method in the IDL:Bonobo/EventSource:1.0.

The BonoboListener object allows the user to specify a callback function to be invoked when an event is emitted by the IDL:Bonobo/EventSource:1.0 server. The BonoboListener object also emits the "event_notify" Gtk+ signal, which allows you to connect multiple code segments to the same event notification.

Here is a sample client application that registers interest in being notified of events from the fictional "Keyboard" event source:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
BonoboListener *keyboard_listener;
my_listener_function (BonoboListener *l, char *event_name,
                      CORBA_any value, CORBA_Environment *ev,
                      gpointer user_data)
{
    printf ("Received event named: %s\n", event_name);
}
connect_to_keyboard_source (Bonobo_EventSource *keyboard)
{
        Bonobo_Unknown reference;
        /*
         * First, create the listener Bonobo server.
         */
    keyboard_listener = bonobo_listener_new (my_listener_function, NULL);
        /*
         * Now, register our listener with the EventSource
         */
        reference = bonobo_object_corba_objref (keyboard_listener);
        Bonobo_EventSource_addListener (keyboard, reference);
}

The CORBA::any value passed to the listener function is defined by the contract between the EventSource's event you are using and you. To manipulate the value, you can use the CORBA DynamicAny interface to introspect the value and extract the information you need.

Details

BonoboListener

typedef struct _BonoboListener BonoboListener;

Implementents Bonobo::Listener.


BonoboListenerClass

typedef struct {
	BonoboObjectClass     parent_class;

	POA_Bonobo_Listener__epv epv;

	/* Signals */
	void (* event_notify) (BonoboListener    *listener, 
			       char              *event_name,
			       BonoboArg         *event_data, 
			       CORBA_Environment *ev);
} BonoboListenerClass;

BonoboListener's class


BonoboListenerCallbackFn ()

void                (*BonoboListenerCallbackFn)         (BonoboListener *listener,
                                                         const char *event_name,
                                                         const CORBA_any *any,
                                                         CORBA_Environment *ev,
                                                         gpointer user_data);

The signature for the callback function invoked when an event is delivered to the BonoboListener object.

listener :

a pointer to the BonoboListener.

event_name :

the event name that was emitted.

any :

The value (A CORBA Any) that was passed by the EventSource.

ev :

Environment for returning CORBA errors.

user_data :

the data pointer specified when you called bonobo_listener_new

bonobo_listener_new ()

BonoboListener *    bonobo_listener_new                 (BonoboListenerCallbackFn event_cb,
                                                         gpointer user_data);

Creates a generic event listener. The listener calls the event_callback function and emits an "event_notify" signal when notified of an event. The signal callback should be of the form:

1
2
3
4
5
void some_callback (BonoboListener *listener,
                    char *event_name, 
            CORBA_any *any,
            CORBA_Environment *ev,
            gpointer user_data);

You will typically pass the CORBA_Object reference in the return value to an EventSource (by invoking EventSource::addListener).

event_cb :

function to be invoked when an event is emitted by the EventSource.

user_data :

data passed to the functioned pointed by event_call.

Returns :

A BonoboListener object.

bonobo_listener_new_closure ()

BonoboListener *    bonobo_listener_new_closure         (GClosure *event_closure);

Creates a generic event listener. The listener invokes the event_closure closure and emits an "event_notify" signal when notified of an event. The signal callback should be of the form:

1
2
3
4
5
void some_callback (BonoboListener *listener,
                    char *event_name, 
            CORBA_any *any,
            CORBA_Environment *ev,
            gpointer user_data);

You will typically pass the CORBA_Object reference in the return value to an EventSource (by invoking EventSource::addListener).

event_closure :

closure to be invoked when an event is emitted by the EventSource.

Returns :

A BonoboListener object.

bonobo_event_make_name ()

char *              bonobo_event_make_name              (const char *idl_path,
                                                         const char *kind,
                                                         const char *subtype);

Creates an event name. Event names consist of three parts. The idl_path is mainly to create a unique namespace, and should identify the interface which triggered the event, for example "Bonobo/Property". The kind denotes what happened, for example "change". Finally you can use the optional subtype to make events more specific. All three parts of the name are joined together separated by colons. "Bonobo/Property:change" or "Bonobo/Property:change:autosave" are examples of valid event names.

idl_path :

the IDL part of the event name.

kind :

the kind of the event

subtype :

an optional subtype

Returns :

A valid event_name, or NULL on error.

bonobo_event_type ()

char *              bonobo_event_type                   (const char *event_name);

event_name :

the event name

Returns :

The event subtype, or NULL on error.

bonobo_event_subtype ()

char *              bonobo_event_subtype                (const char *event_name);

event_name :

Returns :


bonobo_event_kind ()

char *              bonobo_event_kind                   (const char *event_name);

event_name :

the event name

Returns :

The event kind, or NULL on error.

bonobo_event_idl_path ()

char *              bonobo_event_idl_path               (const char *event_name);

event_name :

the event name

Returns :

The event idl path, or NULL on error.

Signal Details

The "event-notify" signal

void                user_function                      (BonoboListener       *bonobolistener,
                                                        gchar                *arg1,
                                                        BonoboCorbaAny       *arg2,
                                                        BonoboCorbaException *arg3,
                                                        gpointer              user_data)           : Run Last

bonobolistener :

the object which received the signal.

arg1 :

arg2 :

arg3 :

user_data :

user data set when the signal handler was connected.

See Also

BonoboEventSource BonoboArg

libbonobo-2.32.1/doc/api/html/factories.html0000664000076400007640000000474311546334245015645 00000000000000 Objects, Factories, Reference Counting

Objects, Factories, Reference Counting

BonoboObject — Base object for wrapping Bonobo::Unknown derived objects. Implements Figure 2, “The Bonobo::Unknown interface”.
BonoboGenericFactory — The basic, generic Bonobo object factory implementation
bonobo-shlib-factory
Reference Counting
libbonobo-2.32.1/doc/api/html/libbonobo-bonobo-config-database.html0000664000076400007640000021756711546334245022126 00000000000000 bonobo-config-database

bonobo-config-database

bonobo-config-database

Synopsis

gchar *             bonobo_config_get_string            (Bonobo_ConfigDatabase db,
                                                         const char *key,
                                                         CORBA_Environment *opt_ev);
gchar *             bonobo_config_get_string_with_default
                                                        (Bonobo_ConfigDatabase db,
                                                         const char *key,
                                                         gchar *defval,
                                                         gboolean *def);
gint16              bonobo_config_get_short             (Bonobo_ConfigDatabase db,
                                                         const char *key,
                                                         CORBA_Environment *opt_ev);
gint16              bonobo_config_get_short_with_default
                                                        (Bonobo_ConfigDatabase db,
                                                         const char *key,
                                                         gint16 defval,
                                                         gboolean *def);
guint16             bonobo_config_get_ushort            (Bonobo_ConfigDatabase db,
                                                         const char *key,
                                                         CORBA_Environment *opt_ev);
guint16             bonobo_config_get_ushort_with_default
                                                        (Bonobo_ConfigDatabase db,
                                                         const char *key,
                                                         guint16 defval,
                                                         gboolean *def);
gint32              bonobo_config_get_long              (Bonobo_ConfigDatabase db,
                                                         const char *key,
                                                         CORBA_Environment *opt_ev);
gint32              bonobo_config_get_long_with_default (Bonobo_ConfigDatabase db,
                                                         const char *key,
                                                         gint32 defval,
                                                         gboolean *def);
guint32             bonobo_config_get_ulong             (Bonobo_ConfigDatabase db,
                                                         const char *key,
                                                         CORBA_Environment *opt_ev);
guint32             bonobo_config_get_ulong_with_default
                                                        (Bonobo_ConfigDatabase db,
                                                         const char *key,
                                                         guint32 defval,
                                                         gboolean *def);
gfloat              bonobo_config_get_float             (Bonobo_ConfigDatabase db,
                                                         const char *key,
                                                         CORBA_Environment *opt_ev);
gfloat              bonobo_config_get_float_with_default
                                                        (Bonobo_ConfigDatabase db,
                                                         const char *key,
                                                         gfloat defval,
                                                         gboolean *def);
gdouble             bonobo_config_get_double            (Bonobo_ConfigDatabase db,
                                                         const char *key,
                                                         CORBA_Environment *opt_ev);
gdouble             bonobo_config_get_double_with_default
                                                        (Bonobo_ConfigDatabase db,
                                                         const char *key,
                                                         gdouble defval,
                                                         gboolean *def);
gboolean            bonobo_config_get_boolean           (Bonobo_ConfigDatabase db,
                                                         const char *key,
                                                         CORBA_Environment *opt_ev);
gboolean            bonobo_config_get_boolean_with_default
                                                        (Bonobo_ConfigDatabase db,
                                                         const char *key,
                                                         gboolean defval,
                                                         gboolean *def);
gchar               bonobo_config_get_char              (Bonobo_ConfigDatabase db,
                                                         const char *key,
                                                         CORBA_Environment *opt_ev);
gchar               bonobo_config_get_char_with_default (Bonobo_ConfigDatabase db,
                                                         const char *key,
                                                         gchar defval,
                                                         gboolean *def);
CORBA_any *         bonobo_config_get_value             (Bonobo_ConfigDatabase db,
                                                         const char *key,
                                                         CORBA_TypeCode opt_tc,
                                                         CORBA_Environment *opt_ev);
void                bonobo_config_set_string            (Bonobo_ConfigDatabase db,
                                                         const char *key,
                                                         const char *value,
                                                         CORBA_Environment *opt_ev);
void                bonobo_config_set_short             (Bonobo_ConfigDatabase db,
                                                         const char *key,
                                                         gint16 value,
                                                         CORBA_Environment *opt_ev);
void                bonobo_config_set_ushort            (Bonobo_ConfigDatabase db,
                                                         const char *key,
                                                         guint16 value,
                                                         CORBA_Environment *opt_ev);
void                bonobo_config_set_long              (Bonobo_ConfigDatabase db,
                                                         const char *key,
                                                         gint32 value,
                                                         CORBA_Environment *opt_ev);
void                bonobo_config_set_ulong             (Bonobo_ConfigDatabase db,
                                                         const char *key,
                                                         guint32 value,
                                                         CORBA_Environment *opt_ev);
void                bonobo_config_set_float             (Bonobo_ConfigDatabase db,
                                                         const char *key,
                                                         gfloat value,
                                                         CORBA_Environment *opt_ev);
void                bonobo_config_set_double            (Bonobo_ConfigDatabase db,
                                                         const char *key,
                                                         gdouble value,
                                                         CORBA_Environment *opt_ev);
void                bonobo_config_set_boolean           (Bonobo_ConfigDatabase db,
                                                         const char *key,
                                                         gboolean value,
                                                         CORBA_Environment *opt_ev);
void                bonobo_config_set_char              (Bonobo_ConfigDatabase db,
                                                         const char *key,
                                                         gchar value,
                                                         CORBA_Environment *opt_ev);
void                bonobo_config_set_value             (Bonobo_ConfigDatabase db,
                                                         const char *key,
                                                         CORBA_any *value,
                                                         CORBA_Environment *opt_ev);

Description

Details

bonobo_config_get_string ()

gchar *             bonobo_config_get_string            (Bonobo_ConfigDatabase db,
                                                         const char *key,
                                                         CORBA_Environment *opt_ev);

Get a string from the configuration database

db :

a reference to the database object

key :

key of the value to get

opt_ev :

an optional CORBA_Environment to return failure codes

Returns :

the value contained in the database, or zero on error.

bonobo_config_get_string_with_default ()

gchar *             bonobo_config_get_string_with_default
                                                        (Bonobo_ConfigDatabase db,
                                                         const char *key,
                                                         gchar *defval,
                                                         gboolean *def);

db :

key :

defval :

def :

Returns :


bonobo_config_get_short ()

gint16              bonobo_config_get_short             (Bonobo_ConfigDatabase db,
                                                         const char *key,
                                                         CORBA_Environment *opt_ev);

Get a 16 bit integer from the configuration database

db :

a reference to the database object

key :

key of the value to get

opt_ev :

an optional CORBA_Environment to return failure codes

Returns :

the value contained in the database.

bonobo_config_get_short_with_default ()

gint16              bonobo_config_get_short_with_default
                                                        (Bonobo_ConfigDatabase db,
                                                         const char *key,
                                                         gint16 defval,
                                                         gboolean *def);

db :

key :

defval :

def :

Returns :


bonobo_config_get_ushort ()

guint16             bonobo_config_get_ushort            (Bonobo_ConfigDatabase db,
                                                         const char *key,
                                                         CORBA_Environment *opt_ev);

Get a 16 bit unsigned integer from the configuration database

db :

a reference to the database object

key :

key of the value to get

opt_ev :

an optional CORBA_Environment to return failure codes

Returns :

the value contained in the database.

bonobo_config_get_ushort_with_default ()

guint16             bonobo_config_get_ushort_with_default
                                                        (Bonobo_ConfigDatabase db,
                                                         const char *key,
                                                         guint16 defval,
                                                         gboolean *def);

db :

key :

defval :

def :

Returns :


bonobo_config_get_long ()

gint32              bonobo_config_get_long              (Bonobo_ConfigDatabase db,
                                                         const char *key,
                                                         CORBA_Environment *opt_ev);

Get a 32 bit integer from the configuration database

db :

a reference to the database object

key :

key of the value to get

opt_ev :

an optional CORBA_Environment to return failure codes

Returns :

the value contained in the database.

bonobo_config_get_long_with_default ()

gint32              bonobo_config_get_long_with_default (Bonobo_ConfigDatabase db,
                                                         const char *key,
                                                         gint32 defval,
                                                         gboolean *def);

db :

key :

defval :

def :

Returns :


bonobo_config_get_ulong ()

guint32             bonobo_config_get_ulong             (Bonobo_ConfigDatabase db,
                                                         const char *key,
                                                         CORBA_Environment *opt_ev);

Get a 32 bit unsigned integer from the configuration database

db :

a reference to the database object

key :

key of the value to get

opt_ev :

an optional CORBA_Environment to return failure codes

Returns :

the value contained in the database.

bonobo_config_get_ulong_with_default ()

guint32             bonobo_config_get_ulong_with_default
                                                        (Bonobo_ConfigDatabase db,
                                                         const char *key,
                                                         guint32 defval,
                                                         gboolean *def);

db :

key :

defval :

def :

Returns :


bonobo_config_get_float ()

gfloat              bonobo_config_get_float             (Bonobo_ConfigDatabase db,
                                                         const char *key,
                                                         CORBA_Environment *opt_ev);

Get a single precision floating point value from the configuration database

db :

a reference to the database object

key :

key of the value to get

opt_ev :

an optional CORBA_Environment to return failure codes

Returns :

the value contained in the database.

bonobo_config_get_float_with_default ()

gfloat              bonobo_config_get_float_with_default
                                                        (Bonobo_ConfigDatabase db,
                                                         const char *key,
                                                         gfloat defval,
                                                         gboolean *def);

db :

key :

defval :

def :

Returns :


bonobo_config_get_double ()

gdouble             bonobo_config_get_double            (Bonobo_ConfigDatabase db,
                                                         const char *key,
                                                         CORBA_Environment *opt_ev);

Get a double precision floating point value from the configuration database

db :

a reference to the database object

key :

key of the value to get

opt_ev :

an optional CORBA_Environment to return failure codes

Returns :

the value contained in the database.

bonobo_config_get_double_with_default ()

gdouble             bonobo_config_get_double_with_default
                                                        (Bonobo_ConfigDatabase db,
                                                         const char *key,
                                                         gdouble defval,
                                                         gboolean *def);

db :

key :

defval :

def :

Returns :


bonobo_config_get_boolean ()

gboolean            bonobo_config_get_boolean           (Bonobo_ConfigDatabase db,
                                                         const char *key,
                                                         CORBA_Environment *opt_ev);

Get a boolean value from the configuration database

db :

a reference to the database object

key :

key of the value to get

opt_ev :

an optional CORBA_Environment to return failure codes

Returns :

the value contained in the database.

bonobo_config_get_boolean_with_default ()

gboolean            bonobo_config_get_boolean_with_default
                                                        (Bonobo_ConfigDatabase db,
                                                         const char *key,
                                                         gboolean defval,
                                                         gboolean *def);

db :

key :

defval :

def :

Returns :


bonobo_config_get_char ()

gchar               bonobo_config_get_char              (Bonobo_ConfigDatabase db,
                                                         const char *key,
                                                         CORBA_Environment *opt_ev);

Get a 8 bit character value from the configuration database

db :

a reference to the database object

key :

key of the value to get

opt_ev :

an optional CORBA_Environment to return failure codes

Returns :

the value contained in the database.

bonobo_config_get_char_with_default ()

gchar               bonobo_config_get_char_with_default (Bonobo_ConfigDatabase db,
                                                         const char *key,
                                                         gchar defval,
                                                         gboolean *def);

db :

key :

defval :

def :

Returns :


bonobo_config_get_value ()

CORBA_any *         bonobo_config_get_value             (Bonobo_ConfigDatabase db,
                                                         const char *key,
                                                         CORBA_TypeCode opt_tc,
                                                         CORBA_Environment *opt_ev);

Get a value from the configuration database

db :

a reference to the database object

key :

key of the value to get

opt_tc :

the type of the value, optional

opt_ev :

an optional CORBA_Environment to return failure codes

Returns :

the value contained in the database, or zero on error.

bonobo_config_set_string ()

void                bonobo_config_set_string            (Bonobo_ConfigDatabase db,
                                                         const char *key,
                                                         const char *value,
                                                         CORBA_Environment *opt_ev);

Set a string value in the configuration database.

db :

a reference to the database object

key :

key of the value to set

value :

the new value

opt_ev :

an optional CORBA_Environment to return failure codes

bonobo_config_set_short ()

void                bonobo_config_set_short             (Bonobo_ConfigDatabase db,
                                                         const char *key,
                                                         gint16 value,
                                                         CORBA_Environment *opt_ev);

Set a 16 bit integer value in the configuration database.

db :

a reference to the database object

key :

key of the value to set

value :

the new value

opt_ev :

an optional CORBA_Environment to return failure codes

bonobo_config_set_ushort ()

void                bonobo_config_set_ushort            (Bonobo_ConfigDatabase db,
                                                         const char *key,
                                                         guint16 value,
                                                         CORBA_Environment *opt_ev);

Set a 16 bit unsigned integer value in the configuration database.

db :

a reference to the database object

key :

key of the value to set

value :

the new value

opt_ev :

an optional CORBA_Environment to return failure codes

bonobo_config_set_long ()

void                bonobo_config_set_long              (Bonobo_ConfigDatabase db,
                                                         const char *key,
                                                         gint32 value,
                                                         CORBA_Environment *opt_ev);

Set a 32 bit integer value in the configuration database.

db :

a reference to the database object

key :

key of the value to set

value :

the new value

opt_ev :

an optional CORBA_Environment to return failure codes

bonobo_config_set_ulong ()

void                bonobo_config_set_ulong             (Bonobo_ConfigDatabase db,
                                                         const char *key,
                                                         guint32 value,
                                                         CORBA_Environment *opt_ev);

Set a 32 bit unsigned integer value in the configuration database.

db :

a reference to the database object

key :

key of the value to set

value :

the new value

opt_ev :

an optional CORBA_Environment to return failure codes

bonobo_config_set_float ()

void                bonobo_config_set_float             (Bonobo_ConfigDatabase db,
                                                         const char *key,
                                                         gfloat value,
                                                         CORBA_Environment *opt_ev);

Set a single precision floating point value in the configuration database.

db :

a reference to the database object

key :

key of the value to set

value :

the new value

opt_ev :

an optional CORBA_Environment to return failure codes

bonobo_config_set_double ()

void                bonobo_config_set_double            (Bonobo_ConfigDatabase db,
                                                         const char *key,
                                                         gdouble value,
                                                         CORBA_Environment *opt_ev);

Set a double precision floating point value in the configuration database.

db :

a reference to the database object

key :

key of the value to set

value :

the new value

opt_ev :

an optional CORBA_Environment to return failure codes

bonobo_config_set_boolean ()

void                bonobo_config_set_boolean           (Bonobo_ConfigDatabase db,
                                                         const char *key,
                                                         gboolean value,
                                                         CORBA_Environment *opt_ev);

Set a boolean value in the configuration database.

db :

a reference to the database object

key :

key of the value to set

value :

the new value

opt_ev :

an optional CORBA_Environment to return failure codes

bonobo_config_set_char ()

void                bonobo_config_set_char              (Bonobo_ConfigDatabase db,
                                                         const char *key,
                                                         gchar value,
                                                         CORBA_Environment *opt_ev);

Set a 8 bit characte value in the configuration database.

db :

a reference to the database object

key :

key of the value to set

value :

the new value

opt_ev :

an optional CORBA_Environment to return failure codes

bonobo_config_set_value ()

void                bonobo_config_set_value             (Bonobo_ConfigDatabase db,
                                                         const char *key,
                                                         CORBA_any *value,
                                                         CORBA_Environment *opt_ev);

Set a value in the configuration database.

db :

a reference to the database object

key :

key of the value to set

value :

the new value

opt_ev :

an optional CORBA_Environment to return failure codes
libbonobo-2.32.1/doc/api/html/libbonobo-faq.html0000664000076400007640000010600111546334245016366 00000000000000 Common Questions

Common Questions

Common Questions — Find answers to common questions in the libbonobo manual

Questions and Answers

Miguel de Icaza (miguel@helixcode.com)

This is a work in progress. Please mail me before making any changes to this document.

1.

What is Bonobo?

Bonobo is a component architecture for creating reusable and distributed software components. These software components interact with each other through well defined interfaces which are specified in the CORBA Interface Definition Language.

We distinguish between `Bonobo' the name of the component architecture, and `bonobo' which is the C-based easy to use implemenatation of the Bonobo component architecture.

The bonobo distribution consists of the following pieces:

  • The Bonobo interface definition files: these establish the standard interfaces used by Bonobo-based applications.

  • The core Bonobo runtime: Bonobo contains a rich API for dealing Bonobo Objects (activation for example).

  • The GObject-Based (and hence C-based) Bonobo framework for creating new Bonobo::Unknown derived interfaces. These are used to simplify the development of CORBA-servers using the C language binding.

    Each derivative of a BonoboObject implements an interface derived from IDL:Bonobo/Unknown:1.0.

  • A set of ready-to-use BonoboObjects derivatives that can be used in a variety of situations. These are considered developer "sugar", although not required, they greatly simplify the development of Bonobo-based applications.

  • A set of "sugar" functions for manipulating client-side objects.

2.

What is CORBA?

3.

What is a component?

A component is a ( preferably small ), re-usable piece of software, with well defined interfaces and interactions. In this context these interfaces are described in IDL and the interactions via. CORBA.

4.

Is it possible to use Bonobo components in my favorite language?

You will need your favorite language to support CORBA.

There are various CORBA implementations with a different degree of completness that you can use:

  • Owen Taylor has written Perl bindings for CORBA using ORBit.

  • James Henstridge has written Python binding for CORBA.

  • Dan Barlow has written Common Lisp bindings for CORBA.

  • C++ has piles of language bindings.

You need your CORBA implementation to at least let you invoke methods on other CORBA objects as well as allowing you to implement CORBA objects. Bonobo uses in various places callback mechanisms and these require the later functionality. For instance, there is an old Emacs Lisp implementation that did not allow you to create CORBA object servers.

5.

Are there other implementations of Bonobo?

There is a work in progress to implement Bonobo in other languages, although most languages will want to reuse parts of the core runtime to avoid duplicating a large piece of code that is better kept centralized and reused.

FIXME: include a detailed list of the things that are conveniently not wrapped.

6.

Is it possible to implement Bonobo components in language X?

Yes.

First of all, it is important that your language has CORBA bindings, or that a suitable CORBA implementation is available for you. You want if possible to get a CORBA 2.2 implementation, but this is not required.

It does not matter what language you are using, you can implement Bonobo Components by implementing the interface that your component wants to support.

Depending on your language, you will want to wrap some bits from Bonobo (for instance, the core runtime) or you will want to provide an alternate implementation or no implementation at all.

7.

What is ORBit?

ORBit is a CORBA implementation with a C mapping of the CORBA 2.2 specification mostly written by Elliot Lee and Dick Porter.

You can find more about ORBit here

ORBit is designed to be a small CORBA implementation that can be embedded in most applications on the desktop. It also happens to be one of the fastest CORBA implementations in existance. It supports a number of CORBA features:

  • C Language mapping.

  • A full POA implementation.

  • The Dynamic Invocation Interface.

  • The Dynamic Skeleton Interface.

  • CORBA Any values.

  • Typecodes.

And it comes with a number of libraries that implement a few of the CORBA services (Cos)

8.

I am interested in CORBA, where can I learn more?

CORBA is a standard published by the Object Management Group, you can download various of their specifications from their web site

See, for example, the C Language Mapping.

FIXME: include pointers to more relevant documents.

9.

What can I do with `bonobo'?

10.

What is an OAFID?

The OAFID is a unique identifier for a specific object implementation and it is used to resolve uniquely. This ID is used to activate CORBA servers implementations.

For example, this OAFID represents the Gnumeric workbook factory object:

OAFIID:GNOME_Gnumeric_WorkbookFactory

11.

What is a Factory?

A factory is an object that makes other objects. eg. a Gnumeric factory might make Workbook objects.

12.

Where does the OAFID come from?

13.

What is a Control?

A Control is a 'componentized' version of a Widget. ie. A Control is a (single view) Graphical component.

In the Gtk+ implementation a Control contains a GtkWidget, it also has associated 'properties', providing an easy way to customize basic features of the control without creating an idl interface.

A control is often used inside a BonoboWidget, which acts as a container of Controls. The BonoboWidget is a normal GtkWidget that can be inserted into a GtkContainer.

14.

What is a PropertyBag, What is a Property?

See Properties.

15.

What are the activation methods in Bonobo?

The prefered method of activating objects is through the bonobo_get_object function. This one does moniker based activation. Like this:

For example this activates gnumeric and returns a GNOME::Gnumeric::Worbook CORBA object reference:

bonobo_get_object ("OAFIID:GNOME_Gnumeric_Workbook", "GNOME/Gnumeric/Workbook");
		    

The following launches an image handler:

bonobo_get_object ("file:image.jpeg", "Bonobo/Control")
		    

16.

Does Bonobo support in-proc components?

Yes, this depends on how you setup your component, however currently there are very few in-proc gnome components, due to various debugging problems.

17.

What is that long string of identifiers.

18.

Can you show me a simple Bonobo component?

19.

How can I write user interfaces with Glade?

20.

I want to pack a widget using Bonobo.

21.

Can I write GUI-less Bonobo components?

Yes, you can. Bonobo is in no way tied to the X11 environment, although it fully supports it.

The C implementation of Bonobo uses GObjects as its base class, and hence you need to link against the glib-object libraries .

22.

How can I write a configure script that detects Bonobo?

PKG_CHECK_MODULES(BONOBO, libbonobo-2.0)
		    

See pkg-config(1) for more details.

23.

How do I compile and link a sample Bonobo application?

If your source file is in the file component.c, you can compile it by using the following command line:

cc `pkg-config --cflags libbonobo-2.0` -c component.c

To link, you use the command line:

cc `pkg-config --libs libbonobo-2.0` component.o

You would replace libbonobo-2.0 for libbonoboui-2.0 if you are using the GUI/Gtk+ features of Bonobo and include libgnomeprint-2.0 if you are using any of the printing facilities for components.

24.

Where can I find examples of Bonobo use?

There are various sample programs in the Bonobo distribution and they are mostly intended to either excercise a part of Bonobo or to show how a specific feature in Bonobo is implemented.

You can find the sample programs in bonobo/samples; A few simple components are in bonobo/components; There are various other test programs shipped with Bonobo as well (like gshell)

For more advanced uses of Bonobo, you might want to look into Gnumeric, Nautilus or Evolution.

25.

I noticed the lack of an IDispatch-like interface in Bonobo, how do you cope with this problem?

CORBA provides a better solution to IDispatch at the CORBA level which obviates the need to have something like that.

CORBA supports a mechanism on the client side called the Dynamic Invocation Interface (DII) which allows programmers to build their own CORBA request to a server.

On the server side CORBA supports the Dynamic Skeleton (or Server? FIXME) Interface which allows applications to decode arbitrary incoming CORBA requests.

Scripting languages would typically implement some sort of support for DII and DSI. This enables scripting languages to talk to an arbitrary CORBA server or to implement any kind of CORBA interface.

Some CORBA bindings for scripting languages (like Owen Taylor's ORBit support for Perl) use the ORBs internals, as they are sometime easier to use than DII/DSI.

26.

Can I write components in any language?

You can write components in any language that has a CORBA binding or a CORBA implementation. The only requirement is that your components implement one or more of the Bonobo interfaces.

The runtime for your language might want to reuse some of the C implementation features (like object activation, moniker activation and a few other utility functions).

27.

Is Bonobo tied to the Gtk toolkit?

No, it is not. The `bonobo' implementation is tied to Gtk+, but another binding for another language and another toolkit should be simple to write.

28.

Is Bonobo tied to the ORBit implementation?

We do not believe that Bonobo is tied to ORBit in any aspect, and there is even an implementation of Bonobo written in Java by Cactus (Gergo Erdi) called Monkeybeans that uses the Java ORB.

29.

What is a Moniker?

Monikers are used to name objects, they effectively implement an object naming space. The naming space is extremely abstract. Read doc/Monikers for a more in-depth explanation.

30.

Why are you so excited about Monikers?

Please read the bonobo/doc/Monikers document while I prepare the full answer.

31.

How can I write my own moniker?

32.

Show me some examples.

33.

What is the POA?

34.

Should I use the Bonobo "base classes"?

35.

The memory management issues seem complex. What are the differences?

36.

What does OAF do?

37.

What is a name server?

38.

Why would I want to use a Name Server?

39.

I have my own needs for a name server, can I use it instead of yours?

40.

Where are component properties stored?

41.

What are the component properties?

42.

What kind of authentication system does Bonobo use for its objects?

Every CORBA object created by ORBit currently has a long and unique id created from a random sequence. To contact this object it is necessary to have the full object reference in order to dispatch a request to it (typically the object reference is obtained from the name server, or you can get it in a stringified version as an IOR).

In the past, we used a cookie system that was attached to the object profile list (in a fully CORBA standard way) and this was used to authenticate the client and the server.

43.

I notice that a port is open in my computer for every application that creates CORBA object; is that insecure?

That port is created by ORBit to accept CORBA requests. Before any request is processed by the ORB, the connection is authenticated (either by the use of the cookie mechanism, or because the IOR encodes a valid object reference).

There are no known holes or exploits known on the incoming request handler in ORBit and if you know of anyone, we would love to fix that problem.

44.

Are communications between components in Bonobo encrypted?

We depend on the ORBit layer to do any kind of encryption of the data. The current version of ORBit does not use SSL or any other secure transports, although patches for it are available.

FIXME: where are these patches available from?

The current version of ORBit (ORBit2) uses OpenSSL to provide encryption services.

45.

If communications are not encrypted, why do you support them?

We guarantee that communications on the destkop are going to be secure, as nobody on the network will be able to sniff on your connections. When you go over the network, then traffic is not encrypted and it might be subject to sniffing.

46.

What is the problem with the standard C++ CORBA binding?

47.

What naming scheme should I use for my CORBA interfaces?

If you are a GNOME/ project you need to register your GNOME/MyProject/ namespace, see bonobo/doc/NAMESPACE to see how these are allocated.

Otherwise, you should use a Java like namespacing scheme based on the DNS.

	module Com {
		module MyCompany {
			module MyProduct {
				interface MyInterface {
				};
			};
		};
	};
		    

48.

How should I create unique OAFIIDs for components?

There are two ways to do this. Firstly, those projects with a defined namespace that implement new interfaces. To create an OAFIID simply take your namespace, and with delimiting '_' create an IID within your own defined space eg.

OAFIID:GNOME_Evolution_Calendar_iTip_Factory

OAFIID:Com_MyCompany_MyProduct_Control

A suffix of the main function of the instance eg. _Control, _Factory, _Embeddable etc. is encouraged for clarity.

The second method for generating OAFIIDs is appropriate for small components that implement no new interfaces, and hence need no special namespace co-ordination. Namespace the initial portion as a category grouping eg.

OAFIID:GNOME_Panel_Applet_yetanotherclock:

and add a UUID generated from the uuidgen application at the end to garentee uniqueness.

49.

What should I call my oaf / UI / IDL file ?

The name of your oaf file should be based on your portion of the namespace, eg.

GNOME_Evolution_Calendar.oaf

Com_MyCompany_MyProduct.oaf

This ensures that there will be no conflicts installing oaf files into a common directory.

50.

How should I name my CORBA methods ?

CORBA methods should be named using mixed caps, following a convention similar to that of Java convention. ie. method names should be verbs or verb phrases in mixed case with the first leter lowercase and the first letter of any further words capitalized.

interface MyInterface {

	long  getLength ();
	void  setLength (in long l);

	/* the ByName qualifier is a useful disambiguator */
	long  getValueByName (in string name);

	/* Factory methods should be named createWhatever */
	Bonobo::Unknown createObject ();

	/* Methods that test boolean conditions */
	boolean isDirty ();
	boolean hasLongLegs ();

	/* Mutator methods */	
	string toString ();
	double toDouble ();

	/* Signals */
	oneway void notifyRename ();

	/* Calculate a number of types */
	long countObjects (in Type t);
};
		    

With acroyms we fully capitalize eg. getURI, with abbreviations and contractions we capitalize the first letter eg. setDoc setId. cf. http://java.sun.com/docs/books/jls/html/6.doc.html#11186

51.

How should I name attributes and structure members?

Again, use a Java-like convention eg.

struct MyStructure {
	string theName;
	long   heightInInches;
};
		    

52.

Why when I do a gtk_widget_show_all does my Control not show up?

The gtk_widget_show_all should not propagate over the plug / socket boundary, you need to ensure that you do a gtk_widget_show on your control. You can of course do shows / hides on the BonoboWidget ( the server side ) to show or hide the control.

This also means that as a component author, you are protected from people messing with your internal show / hide logic.

53.

Aren't Monikers just a re-implementation of the GNOME VFS? Why not use the GNOME VFS?

For a storage backend you can always use something like bonobo_storage_new ("gnome-vfs") and get away with life.

The main difference between the gnome-vfs, and monikers is that monikers are used to implement an object-based name space, while the gnome-vfs is a fine abstraction for naming files and directories. The moniker space goes well beyond this.

When Ettore, Nat and I designed the GNOME VFS in Paris Ettore had a grander vision than Nat and I had. Nat and I wanted exactly what the GNOME VFS is: an asyncronous, pluggable virtual file system implementation. Ettore wanted something more general, something that would implement an object name space. And some of the design decisions in the core of the gnome-vfs reflect some of this thinking, but the API and the infrastructure was limited to handling files.

Various months later, we finally understood completely the moniker system, and we realized that monikers were an object naming space, and that if done correctly monikers would be able to implement Ettore's initial vision for having an object-based naming space.

54.

When I run my program loads of daemons start and don't stop, why?

When you activate a Bonobo server the oaf daemon starts, this parses all your oafinfo files and then can respond to activation requests and queries.

The first access latency in this case is relatively high, the second access is extremely quick, consequently it is advantageous to leave the oafd process running on a GNOME system. Eventualy many of the GNOME desktop services will be using oaf regularly, making unloading it wasteful.

Most people are happy to have many daemons running on their machine - kswapd for example, or perhaps umpteen idle copies of mingetty - these are left running for performance reasons, and have a negligable impact on system performance.

Finally, patches are welcome to add a _user configurable_ timeout and die option for those that begrudge the couple of Mb ( including all dependant shlibs ) to oafd. The command oaf-slay can be used to kill all oaf servers at any time and one can profitably look for memory savings elsewhere.

libbonobo-2.32.1/doc/api/html/libbonobo-bonobo-moniker-extender.html0000664000076400007640000006503311546334245022364 00000000000000 BonoboMonikerExtender

BonoboMonikerExtender

BonoboMonikerExtender — A way to extend arbitary monikers

Synopsis

                    BonoboMonikerExtender;
                    BonoboMonikerExtenderClass;
Bonobo_Unknown      (*BonoboMonikerExtenderFn)          (BonoboMonikerExtender *extender,
                                                         const Bonobo_Moniker parent,
                                                         const Bonobo_ResolveOptions *options,
                                                         const CORBA_char *display_name,
                                                         const CORBA_char *requested_interface,
                                                         CORBA_Environment *ev);
BonoboMonikerExtender * bonobo_moniker_extender_new     (BonoboMonikerExtenderFn resolve,
                                                         gpointer data);
Bonobo_MonikerExtender  bonobo_moniker_find_extender    (const gchar *name,
                                                         const gchar *interface,
                                                         CORBA_Environment *opt_ev);
Bonobo_Unknown      bonobo_moniker_use_extender         (const gchar *extender_oafiid,
                                                         BonoboMoniker *moniker,
                                                         const Bonobo_ResolveOptions *options,
                                                         const CORBA_char *requested_interface,
                                                         CORBA_Environment *opt_ev);

Object Hierarchy

  GObject
   +----BonoboObject
         +----BonoboMonikerExtender

Description

A moniker extender is used to extend the functionality of a moniker. There are two standard moniker extenders that cannot be system wide, since they use the oaf database to expand the scope of a moniker to arbitrarily many interfaces. These are invoked explicitely by monikers implementing the stream interface in the following way:

Example 18. Explicit Stream extender usage example

1
2
3
4
5
6
7
8
9
10
11
12
13
Bonobo_Unknown
example_moniker_resolve (BonoboMoniker               *moniker,
             const Bonobo_ResolveOptions *options,
             const CORBA_char            *requested_interface,
             CORBA_Environment           *ev)
{
    if (!strcmp (requested_interface, "IDL:Bonobo/Stream:1.0"))
        return handle_stream (moniker, options, ev);
    else
        return bonobo_moniker_use_extender (
            "OAFIID:Bonobo_MonikerExtender_stream",
            moniker, options, requested_interface, ev);
}


The moniker extender essentialy resolves 'moniker' against stream and by some means ( not known when the moniker was written ) converts this to a new exotic interface - via. the PersistStream interface.

All standard moniker extenders are registered by adding a fragment like this:

Example 19. Oaf information for an extender

1
2
3
<oaf_attribute name="bonobo:moniker_extender" type="stringv">
    <item value="file:"/>
</oaf_attribute>


to the .oaf file. This registers the extender with the system, such that when a moniker resolve fails an extender can be found for any of the monikers with prefix specified in the "bonobo:moniker_extender" stringv.

Implementing your own extender is extremely simple, much like BonoboMonikerSimple.

Example 20. Oaf information for an extender

1
2
3
4
5
6
7
8
9
10
11
Bonobo_Unknown
example_extender_resolve (BonoboMonikerExtender *extender,
              const Bonobo_Moniker   m,
              const Bonobo_ResolveOptions *options,
              const CORBA_char      *display_name,
              const CORBA_char      *requested_interface,
              CORBA_Environment     *ev)
{
    ... resolve 'm' against an interface we know it supports ...
    ... then use that interface to provide requested_interface ...
}


It is registered again in much the same way in your factory:

Example 21. Creating a new simple moniker

1
2
3
4
5
6
7
8
9
10
11
12
static BonoboObject *
bonobo_std_moniker_factory (BonoboGenericFactory *this,
                const char           *object_id,
                void                 *data)
{
    g_return_val_if_fail (object_id != NULL, NULL);
    if (!strcmp (object_id, "OAFIID:Bonobo_MonikerExtender_file"))
        return BONOBO_OBJECT (bonobo_moniker_extender_new (
            example_extender_resolve, NULL));
    else
        return NULL;
}


Details

BonoboMonikerExtender

typedef struct _BonoboMonikerExtender BonoboMonikerExtender;

Implements a moniker extender: Bonobo::MonikerExtender.


BonoboMonikerExtenderClass

typedef struct {
	BonoboObjectClass      parent_class;

	POA_Bonobo_MonikerExtender__epv epv;
	
	BonoboMonikerExtenderFn resolve;
} BonoboMonikerExtenderClass;

BonoboMonikerExtender's class.


BonoboMonikerExtenderFn ()

Bonobo_Unknown      (*BonoboMonikerExtenderFn)          (BonoboMonikerExtender *extender,
                                                         const Bonobo_Moniker parent,
                                                         const Bonobo_ResolveOptions *options,
                                                         const CORBA_char *display_name,
                                                         const CORBA_char *requested_interface,
                                                         CORBA_Environment *ev);

Moniker resolution callback function.

extender :

extender (self)

parent :

parent moniker

options :

resolve options

display_name :

? FIXME

requested_interface :

? FIXME

ev :

Returns :

the resolution resulting object

bonobo_moniker_extender_new ()

BonoboMonikerExtender * bonobo_moniker_extender_new     (BonoboMonikerExtenderFn resolve,
                                                         gpointer data);

This creates a new moniker extender.

resolve :

the resolve function that will be used to do the extension

data :

user data to be passed back to the resolve function.

Returns :

the extender object

bonobo_moniker_find_extender ()

Bonobo_MonikerExtender  bonobo_moniker_find_extender    (const gchar *name,
                                                         const gchar *interface,
                                                         CORBA_Environment *opt_ev);

This routine tries to locate an extender for our moniker by examining a registry of extenders that map new interfaces to certain moniker names.

name :

the name of the moniker we want to extend eg. 'file:'

interface :

the interface we want to resolve to

opt_ev :

an optional corba exception environment.

Returns :

an appropriate extender or CORBA_OBJECT_NIL.

bonobo_moniker_use_extender ()

Bonobo_Unknown      bonobo_moniker_use_extender         (const gchar *extender_oafiid,
                                                         BonoboMoniker *moniker,
                                                         const Bonobo_ResolveOptions *options,
                                                         const CORBA_char *requested_interface,
                                                         CORBA_Environment *opt_ev);

Locates a known extender via. OAFIID; eg. OAFIID:Bonobo_Moniker_Extender_file

extender_oafiid :

The IID of the extender to use

moniker :

the moniker to extend

options :

resolve options

requested_interface :

the requested interface

opt_ev :

optional corba environment

Returns :

the resolved result or CORBA_OBJECT_NIL.
libbonobo-2.32.1/doc/api/html/libbonobo-bonobo-context.html0000664000076400007640000003573011546334245020571 00000000000000 bonobo-context

bonobo-context

bonobo-context — Extensible runtime service interface

Synopsis

Bonobo_Unknown      bonobo_context_get                  (const CORBA_char *context_name,
                                                         CORBA_Environment *opt_ev);
void                bonobo_context_add                  (const CORBA_char *context_name,
                                                         Bonobo_Unknown context);
BonoboObject *      bonobo_context_running_get          (void);
void                bonobo_running_context_auto_exit_unref
                                                        (BonoboObject *object);

Description

The bonobo-context code is designed to provide a way to expose CORBA contexts through a single C interface. This is so that language bindings can get away with wrapping a single function, and yet have access to the whole Bonobo service framework. Two examples of this are the MonikerContext and the RunningContext ( see Bonobo_Context.idl ).

Example 1. Getting and using the moniker context

1
2
3
4
5
6
7
8
Bonobo_MonikerContext context;
Bonobo_Unknown        object;
context = bonobo_context_get ("Activation", NULL);
if (context == CORBA_OBJECT_NIL)
    g_error (_("Internal error, no activation context"));
object = Bonobo_MonikerContext_getObject (
    "file:/demo/a.jpeg", "Bonobo/Control", ev);
...


The list of contexts is open and may be expanded in the future, currently there are the following:

  • Activation - Bonobo/MonikerContext

  • Running - Bonobo/RunningContext

The running context is particularly useful for ensuring that server processes exit cleanly when all their objects and derived objects are dead. To do this we can simply do the following:

Example 2. How to get a factory to quit when it is idle

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
static void
last_unref_exit_cb (gpointer      context,
            BonoboObject *factory)
{
        bonobo_object_unref (factory);
    gtk_main_quit ();
}
...
int main (int argc, char **argv)
{
    ...
    bonobo_running_context_ignore_object (BONOBO_OBJREF (object));
    gtk_signal_connect (GTK_OBJECT (bonobo_context_running_get ()),
                "last_unref", last_unref_exit_cb, factory);
    ...
    bonobo_main ();
}


Since this is a commonly used thing there is a helper to make this easier:

Example 3. How to get a factory to quit when it is idle


Details

bonobo_context_get ()

Bonobo_Unknown      bonobo_context_get                  (const CORBA_char *context_name,
                                                         CORBA_Environment *opt_ev);

The most useful context is named 'Activation' and returns the IDL:Bonobo/ActivationContext:1.0 interface.

context_name :

the name of the context

opt_ev :

optional Environment, or NULL

Returns :

a new reference to a global Bonobo context or CORBA_OBJECT_NIL

bonobo_context_add ()

void                bonobo_context_add                  (const CORBA_char *context_name,
                                                         Bonobo_Unknown context);

This function adds a new context to the context system

context_name :

the name to refer to the context by

context :

The Bonobo_Unknown; a ref. is taken on this.

bonobo_context_running_get ()

BonoboObject *      bonobo_context_running_get          (void);

Returns :


bonobo_running_context_auto_exit_unref ()

void                bonobo_running_context_auto_exit_unref
                                                        (BonoboObject *object);

object :

libbonobo-2.32.1/doc/api/html/libbonobo-bonobo-app-client.html0000664000076400007640000004602011546334245021133 00000000000000 bonobo-app-client

bonobo-app-client

bonobo-app-client — client interface to remote BonoboApplication objects

Synopsis

                    BonoboAppClientMsgDesc;
BonoboAppClient *   bonobo_app_client_new               (Bonobo_Application app_server);
gint                bonobo_app_client_new_instance      (BonoboAppClient *app_client,
                                                         int argc,
                                                         char *argv[],
                                                         CORBA_Environment *opt_env);
GValue *            bonobo_app_client_msg_send_valist   (BonoboAppClient *app_client,
                                                         const char *message,
                                                         CORBA_Environment *opt_env,
                                                         GType first_arg_type,
                                                         va_list var_args);
GValue *            bonobo_app_client_msg_send_argv     (BonoboAppClient *app_client,
                                                         const char *message,
                                                         const GValue *argv[],
                                                         CORBA_Environment *opt_env);
GValue *            bonobo_app_client_msg_send          (BonoboAppClient *app_client,
                                                         const char *message,
                                                         CORBA_Environment *opt_env,
                                                         GType first_arg_type,
                                                         ...);

Description

Details

BonoboAppClientMsgDesc

typedef struct {
	gchar *name;
	GType  return_type;
	GType *types;		/* G_TYPE_NONE-terminated array */
	gchar *description;
} BonoboAppClientMsgDesc;


bonobo_app_client_new ()

BonoboAppClient *   bonobo_app_client_new               (Bonobo_Application app_server);

app_server: object reference to a Bonobo::Application; this function takes ownership of this reference (use bonobo_object_dup_ref() if you want to keep your own reference.)

Create an application client object connected to the remote (or local) Bonobo::Application object.

Warning

Applications should not use this function. See bonobo_application_register_unique().

app_server :

Returns :

a BonoboAppClient object.

bonobo_app_client_new_instance ()

gint                bonobo_app_client_new_instance      (BonoboAppClient *app_client,
                                                         int argc,
                                                         char *argv[],
                                                         CORBA_Environment *opt_env);

Ask the application server to emit a "new-instance" signal containing the specified string vector.

app_client :

a BonoboAppClient

argc :

length of argv

argv :

array of command-line arguments

opt_env :

a CORBA_Environment, or NULL.

Returns :

the message return value

bonobo_app_client_msg_send_valist ()

GValue *            bonobo_app_client_msg_send_valist   (BonoboAppClient *app_client,
                                                         const char *message,
                                                         CORBA_Environment *opt_env,
                                                         GType first_arg_type,
                                                         va_list var_args);

See bonobo_app_client_msg_send().

app_client :

client

message :

message name

opt_env :

optional corba environment

first_arg_type :

first message parameter

var_args :

remaining parameters

Returns :

return value

bonobo_app_client_msg_send_argv ()

GValue *            bonobo_app_client_msg_send_argv     (BonoboAppClient *app_client,
                                                         const char *message,
                                                         const GValue *argv[],
                                                         CORBA_Environment *opt_env);

Like bonobo_app_client_msg_send(), except that it receives a single argument vector instead of a variable number of arguments.

app_client :

client

message :

message name

argv :

NULL-terminated vector of pointers to GValue, the arguments to pass with the message.

opt_env :

Returns :

the message return value

bonobo_app_client_msg_send ()

GValue *            bonobo_app_client_msg_send          (BonoboAppClient *app_client,
                                                         const char *message,
                                                         CORBA_Environment *opt_env,
                                                         GType first_arg_type,
                                                         ...);

Send a message to the application server. Takes a variable length argument list of GType, value pairs, terminated with G_TYPE_NONE. Values are direct C values, not GValues! Example:

1
2
3
4
5
GValue *retval;
retval = bonobo_app_client_msg_send (app_client, "openURL",
                                     G_TYPE_STRING, "http://www.gnome.org",
                                     G_TYPE_BOOLEAN, TRUE,
                                     G_TYPE_NONE);

app_client :

the client interface associated with the application to which we wish to send a message

message :

message name

opt_env :

first_arg_type :

... :

arguments

Returns :

a GValue containing the value returned from the aplication server.
libbonobo-2.32.1/doc/api/html/monikers-overview.html0000664000076400007640000012673211546334245017364 00000000000000 Monikers in the Bonobo Component System

Monikers in the Bonobo Component System.

Miguel de Icaza (miguel@ximian.com)

Monikers in the Bonobo Component System

Introduction

We recently reimplemented and fully revamped the the Moniker support in Bonobo. This work has opened a wide range of possibilities: from unifying the object naming space, to provide better integration in the system.

Note: on this document I have ommited exception environments handling for the sake of explaining the technology.


Monikers - a user perspective

Monikers are used to name objects, they effectively implement an object naming space. You can obtain monikers either because you created the moniker manually, or from a stringified representation of a moniker.

Here is a list of stringified monikers, and an interpretation of it:

file:quake-scores.gnumeric

This would be a moniker that represents the file quake-scores.gnumeric

oafid:GNOME:Gnumeric:WorkbookFactory:1.0

This moniker represents the Gnumeric Workbook factory object.

oafid:GNOME:Gnumeric:WorkbookFactory:1.0:new:

This moniker represents a Gnumeric Workbook instance. Notice that we are using the exact same OAFID as the example before, but there is a "new:" suffix at the end.

file:/tmp/a.gz

This represents the file in /tmp/a.gz.

file:/tmp/a.gz#gunzip

This represents the decompressed stream of data from a.gz.

file:/tmp/a.gz#gunzip:streamcache

This provides a cache on top of the decompressed stream of data for a.gz (the streamcache moniker is an in-proc component).

http://www.gnome.org

This one represents the GNOME web site.

evolution:Mail/Inbox

This represents the Evolution Mail/Inbox folder.

file:quake-scores.gnumeric!January

This represents the January Sheet in the quake-scores.gnumeric workbook.

file:quake-scores.gnumeric!January!Winner

This represents the cell whose name is "Winner" in the January sheet in the quake-scores.gnumeric workbook.

file:quake-scores.gnumeric!January!Winner!Style!Font

This represents the Font interface of the Style attached to the Winner cell.

file:quake-scores.gnumeric!Jannuary!Winner!Style!BackgroundColor

This represents the background color for the cell.

http://www.gnome.org/index.html!title

This represents the title element in the HTML web page at www.gnome.org.

file:toyota.xml!cars/car/model/

The "cars/car/model" is an XPath expression that for locating a specific node in the toyota.xml file.

config:*/Session/Calendar

This represents a PropertyBag for the GNOME Calendar using the Local configuration system and using the settings stored in the Session domain.

oafid:Helix:Evolution:Wombat:1.0

This represents the Evolution model server that stores all the per-user information.

queue:oafid:Helix:Evolution:Wombat

This represents an interface that queues CORBA requests to the Evoution Wombat: Any calls issued will be queued: if the Wombat is busy or not accepting connection, all the CORBA method invocations will be queued without stopping the execution of the client code.

http://www.gnome.org/index.html.gz#gunzip#html:title

This will reutrn the title element of the compressed HTML file at http://www.gnome.org/index.html.gz

ftp://ftp.gnome.org/gnome-core-1.0.tar.gz#utar/gnome-core-1.0/ChangeLog

A reference to the ChangeLog file contained in the compressed gnome-core-1.0.tar.gz tar file at ftp://ftp.gnome.org.

desktop:Backgound

The background object for the user's desktop.

trashcan:

The system trashcan.

file:logo.png

This represents the logo.png file.

oafid:OAFIID:eog_viewer_factory:file:logo.png

This specifies a specific image viewer to be used to display the file "logo.png", in this case the "EOG" program.

file:logo.png!Zoom=2.0

This represents the logo.png file in EOG at zoom level 2.0.

file:logo.png!Zoom=2.0,dither=max,notransparency

The image logo.png is configured to be zoomed at 2.0 factor, to do maximum dithering and not use any transparency.

Now, what you saw above are some examples of stringified representations of monikers. This means that they are not really monikers, it is the way a Moniker is represented in string form.

Monikers typically are created either by using a Bonobo API call that transforms the stringified representation into an object (which exports the IDL:Bonobo/Moniker:1.0 interface), like this:

	moniker = bonobo_moniker_client_new_from_name (moniker_string);
	    

Now, a moniker is only interesting because it can yield other objects when resolved. During the resolution process, you specify which interface you are intersted on the moniker to return. This is achieved by invoking the ::resolve method on the moniker and passing the repoid of the interface you desire, like this:

	Bonobo::Unknown control;

	control = moniker->resolve ("Bonobo/Control")
	    

This would request the moniker to return an object that implements the IDL:Bonobo/Control:1.0 interface. This means that the object could be embedded as a regular Bonobo control in applications.

Maybe you do not want to get a control, but rather to resolve the moniker against a different interface, for instance a Bonobo::PropertyBag interface:

	properties = moniker->resolve ("Bonobo/PropertyBag");
	    

The resolution process might yield completely different objects.

The parsing and resolution process is all encapsulated into a single API call for your convenience: the bonobo_get_object function:

	Bonobo::Unknown bonobo_object_get (char *moniker_string, char *interface);
	    

Now, as I said, the resolution process might yield very different objects depending on the interface being requested, for example:

	x = bonobo_object_get ("http://www.gnome.org", "Bonobo/Control")
	y = bonobo_object_get ("http://www.gnome.org", "Bonobo/Stream")
	    

The "x" object might launch Mozilla which would in turn load www.gnome.org, and the returned object can be used as a Bonobo Control, and used in your application as a widget.

The "y" object on the other hand does not need all the power of Mozilla, we are only requesting the very simple Stream interface, so we might be able to implement this with a lightweight HTTP implementation: maybe a wget-based bonobo server, or a libghttp server.

Note that even if the stringified versions of the monikers were the same (ie, "http://www.gnome.org") the resulting objects might differ wildely depending on the interface being requested.


The Moniker parsing system

During parsing the Moniker stringified, Bonobo will use the colon-terminated prefix as the toplevel moniker to be invoked for the resolution process.

For the prefix "file:" the file moniker will be used; For the prefix "oafid", the oafid moniker will be used; For the "queue:" prefix, the queue moniker will be used.

Once the moniker that handles a specific prefix has been activated, the moniker will be requested to parse the remaining of the string specification and return a valid moniker.

Each moniker typically will consume a number of bytes up to the point where its domain stops, will figure out what is the next moniker afterwards. Then it will activate the next moniker and pass the remaining of the moniker stringified version until the parsing is finished.

Each moniker is free to define its own mechanism for parsing, its special characters that are used to indicate the end of a moniker space, and the beginning of a new one (like the "#" and the "!" characters in some of the examples above). This flexibility is possible because each moniker gets to define its rules (and this is important, as we want to integrate with standards like http and file).


Monikers as an object naming scheme

As you can see, monikers are used to implement a naming system that can be used to reference and manipulate objects. As you might have noticed, the ::resolve method on the Moniker interface returns a Bonobo::Unknown interface. And by definition, the bonobo_get_object also returns a Bonobo::Unknown.

This means that the resulting object from the moniker resolution will always support ref, unref and query_interface methods.

The Moniker object naming scheme is:

Extensible

A new entry point into the object naming space can be created and installed into the system.

Hierarchical

Monikers.


Creating Monikers

Monikers are created typically by API calls into the Bonobo runtime or by your own classes that implement monikers.


Object Name Space

Comparing the Moniker name space with the Unix Name Space

Lets start simple. A moniker is a reference to an object[1]. To actually use the object, you have to "resolve" the moniker. The term used in the literature is "binding the object".

The result of resolving the moniker is a Bonobo::Unknown object.

Think of a moniker as a pathname. And think of the binding process as the "open" system call on Unix.

Example:

  Unix Files Monikers
Object naming: path name moniker string representation
Binding function: open(2) bonobo_get_object
Return value: kernel file descriptor Bonobo::Unknown CORBA reference
Binder: Kernel VFS+each FS bonobo_get_object + Bonobo::Moniker
Persisting: none Moniker::QI(Persist)

In the case of the file system, the kernel does the "resolution" of each path element by parsing one element of the file system, and the Virtual File System switch uses the current file system + mount points to resolve the ultimate file name.


File Linking

Monikers were originally implemented as part of the Microsoft OLE2 compound document system. They can be used effectively by applications during drag and drop and cut and paste operations to pass objects that must be linked by other applications.

The source application would create a moniker for a given object that would fully identify it, and pass it through a drag and drop operation or a cut and paste operation to the recipient application.

The recipient application then can resolve the moniker against the interface required (in the Bonobo case, Bonobo/Embeddable, or Bonobo/Control would be a common choice).

Applications do not need to store the entire contents of linked information, they can just store a stringified representation of the moniker, and resolve it again at load time.


Instance initialization

Monikers can be used to initialize objects, as a way of passing arguments to your object. This is coupled with the Bonobo/ItemContainer interface and the Item Moniker.

The Item Moniker is covered later.


Resolution of a moniker against an interface

A moniker can be resolved against different interfaces. The resulting object might be different depending on the interface that is being resolved. To illustrate this, here is an example, lets say we have the "http://www.helixcode.com" string representation of a moniker.

The string representation of the moniker can be resolved against the "Bonobo/Control" interface:

	bonobo_get_object ("http://www.helixcode.com", "Bonobo/Control");
	    

This could return an embeddable Mozilla component that is suitable to be embedded into your application as a widget (because we are requesting the moniker to return a Bonobo/Control interface). If the interface is resolved against the "Bonobo/Stream" interface,maybe Mozilla is not required, and the process could use a smaller process that just provides Bonobo/Streams, say a corbaified wget.

The logic for this lives on the http: moniker handler.


Core monikers

Bonobo ships with a number of moniker handlers: the file moniker, the item moniker, the oafid moniker and the new moniker.

The file moniker

The file moniker is used to reference files. For instance:

file:sales.gnumeric

The file moniker will scan its argument until it reaches the special characters `#' or `!' which indicate the end of the filename.

The file moniker will use the mime type associated with the file to find a component that will handle the file. Once the object handler has been invoked, the Moniker will try to feed the file to the component first through quering the PersistFile interface, and if this is not supported, through the PersistStream interface.

The item moniker

The item moniker is typically triggered by the "!" string in the middle. The item moniker can be used to implement custom object naming, or argument handling.

The item moniker parses the text following '!' until the next '!' character, this is called the argument of the item moniker. During the resolution process, the item moniker will request from its parent the Bonobo/ItemContainer interface and will invoke the getObject on this interface with the argument.

For example, in a Gnumeric spreadsheet this allows programmers to reference sub-objects by name. For instance, Workbooks can locate Sheet objects; Sheets can locate range names, cell names, or cell references.

This moniker would reference the sheet named `Sales' in the workbook contained in the sales.gnumeric spreadsheet:

	sheet = bonobo_get_object ("sales.gnumeric!Sales", "Gnumeric/Sheet");
		

This other would reference the cell that has been named `Total' inside the Sheet "Sales":

	cell = bonobo_get_object ("sales.gnumeric!Sales!Total", "Gnumeric/Cell")
		

The way this works from the container perspective, is that the container will implement the getObject (string) method, and would respond to the getObject request.

Item monikers can also be used to perform instance initialization. The component that wants to support instance initialization needs to support the Bonobo/ItemContainer interface and implement a getObject method that would return the object properly initialized.

For example, lets consider an image viewer component that can be configured, like this:

	image = bonobo_get_object ("file.jpg!convert_to_gray=on", "Bonobo/Control")
		

The above example would activate the EOG component because of the file.jpg match, and then invoke EOG's ItemContainer implementation with the argument "convert_to_gray=on". getObject should return an object (which would be itself) but it would modify the instance data to set the "convert_to_gray" flag to on. Like this:

Bonobo_Unknown
eog_item_container_get_object (BonoboObject *o, char *name)
{
	if (command_is (name, "convert_to_gray", &v))
		image_set_convert_to_gray (o, v);
	...
	bonobo_object_ref (o);
	return bonobo_objet_corba_objref (o);
}
		

The oafiid moniker

The oafid: moniker handles activation using the Object Activation Framework. This allows application programmers to activate objects by their OAF ID, like this:

	gnumeric = bonobo_object_get ("oafiid:GNOME_Gnumeric_Workbook", iface)
		

The "new:" moniker

The new moniker requests from its parent the "Bonobo/GenericFactory" interface and invokes the method create_instance in the interface.

Typically this moniker would be invoked like this:

		bonobo_get_object ("oafid:RandomFactory:new:", iface);
		

In the example above "RandomFactory" is the OAFID for the factory for a certain object. During the resolution process, the "new:" moniker would request its parent to resolve against the IDL:GNOME/ObjectFactory:1.0 interface (which is the traditional factory interface in GNOME for creating new object instances) and then invoke the new_instance method on it.

Historically GNORBA (the old GNOME object activation system) and OAF (the new object activation system) implemented a special "hack" to do this same processing. Basically, the description files for the object activation system was overloaded, there were three types of activation mechanism defined:

  • activate object implementation from an executable.

  • activate object implementation from a shared library.

  • activate object implementation by launching another object, and querying the launched object for the ObjectFactory interface.

The "new:" moniker basically obviates the need for the last step in the activation system. With OAF, using the OAF approach proves to be more useful, as it is possible to query OAF for components that have certain attributes, and the attributes for a factory object are not as interesting as the attributes for the instances themselves. Despite this, the "new:" moniker can be used for performing the operation of instance initialization in more complex scenarios that go beyond the scope of activation provided by OAF.


Adding moniker handlers to the system

Ideal monikers: There are two moniker handlers that would be interesting to implement: the Configuration Moniker and the VFS moniker.

They both help the system overall, because the added simplicity of having a standard way of activating services in the system and given that the API to these services is CORBA-based, any programming language with CORBA/Bonobo support can make use of them without the need of a special language binding.

I am convinced that this helps make the system more self consistant internally.

The Configuration Moniker

The configuration moniker is invoked by using the "config:" prefix. The string afterwards is the configuration locator. The moniker should support being querried against the "Bonobo/Property" or "Bonobo/PropertyBag" depending on whether we are requesting a set of attributes, or a single attribute.

For example, retrieving the configuration information for a specific configuration property in Gnumeric would work like this:

	Bonobo_Property auto_save;
	CORBA_Any value;
	
	auto_save = bonobo_get_object (
		"config:gnumeric/auto-save", "/Bonobo/Property");
	value = bonobo_property_get_value (auto_save, &ev);
	if (value-> tc-> kind == CORBA_tk_bool)
	    printf ("Value: %s\n", (CORBA_bool) value->_value ? "true" : "false");
	else
	    printf ("Property is not boolean\n");
		

In the above example, we first use the bonobo_get_object routine to locate the configuration object through its moniker. The return value from the bonobo_get_object is of type Bonobo_Property which is the standard Bonobo way of manipulating properties.

This has two main advantages:

  • By accessing the configuration engine through the moniker interface we have eliminated the need to define a C-specific API for the configuration management. The configuration could have been reached through any other programming language that supports CORBA.

    The GNOME project has always tried to define APIs that could be easily wrapped and accessed from various languages (particularly, we have done this with the toolkit and recently with the CORBA bindings).

    But even if we have taken special care of doing this, and there are continous efforts to wrap the latest and greatest APIs, widgets, and tools, the bindings typically lag a few weeks to monthsw behind the actual C API.

    By moving towards CORBA, we only need to support CORBA in the various programming languages and we get access to any new APIs defined by it.

  • Any tools on the system that can manipulate a Bonobo::Property or ::PropertyBag (a GUI in a visual designer, or a configuration engine that persists/hidrates objects, or a browsing tool) can talk directly to the configuration engine all of a sudden, as we are using the same interface method across every language on the system.

The Bonobo::Property interface is pretty comprehensive, and should address most needs, the methods are:

	string   get_name ();
	TypeCode get_type ();
	any      get_value ();
	void     set_value ();
	any      get_default ();
	string   get_doc_string ();
	long     get_flags ();
		

Now, this interface as you can see does not specify an implementation for the actual backend. Given that this is just an interface, we do not care what the moniker will connect us to, we only care with the fact that we will be able to use the Property and PropertyBag interfaces.

Configuration transactions

Handling of transactional changes to the configuration system can be achieved by the use of the setValues interface in the PropertyBag. The implementation of the PropertyBag can either accept the values set, or it can do consistency checking of the values being set (for instance, to avoid the configuration to contradict itself, or store invalid values). If the values being set are invalid, an exception is thrown.

It would be also possible to hook up an arbitrary consistency checking component in the middle, by inserting the consistency checking in the middle of the stream, like this:

	bonobo_get_object ("config:gnumeric/auto-save:gnumeric-consistency-check:", "Bonobo/Property");
		

Notice the `gnumeric-consistency-check:' moniker handler. This could just be a shared library consistency checking component if it needs to be.

Listening to changes.

One of the requirements for a modern desktop is to be react globally when changes are made to global settings. For example, in the GNOME desktop when a theme is changed, a special protocol inside Gtk+ is used to notify all the applications that they should reload their theme configuration.

There are many other examples where applications need to keep track of the current setting. For example, when a preference is changed, we want the preference to take place right away, without us having to restart our running applications.

This is easily achieved by registering a Listener with the Bonobo/EventSource in the PropertyBag.

What about GConf?

GConf is a configuration management infrastructure that provides the following features:

  • A schema system for specifying the various configuration options, as well as their documentation and initial values (default values).

  • A way for the system administrator to override values in a system-wide fashion (this encompasses a network-wise setup if desired).

  • A change notification system: applications might be notified of changes to various values they might want to keep track of.

There are two drawbacks to GConf currently:

  • Although gconf provides pretty much everything that is required, but it is a C-based API that needs to be wrapped for every language that wants to support GConf.

  • GConf is limited in the kind of information that can be stored on its database. A BonoboProperty stores a CORBA_Any which can contain any of the simple CORBA types (strings, integers, floating points, booleans), structures, arrays and unions.

The actual engine and backend for GConf could become the configuration moniker handler, only the API would be replaced as well as the actual storage system to support the more complete CORBA_Any, and the ad-hoc CORBA interface can be replaced with a more powerful system.

Configuration management: Open Issues

Specifying the location for configuration. The syntax for accessing the configuration has not been defined, but we can cook this up pretty easily.

Forcing the configuration data to be loaded from a specific location. Although the arguments to the moniker could be used to encode a specific location, for example:

	config:~/file.config!auto-save
		

It seems more natural to use the file moniker to provide this information, for example:

	file:~/file.config!config:auto-save
		

The config moniker can test for the presence of a parent, and if the parent exists, then it would request one of the Persist interfaces from it to load the actual configuration file, and provide access to it.

Transactional setting of values. It might make sense to "batch" a number of changes done under a prefix to avoid listeners to a range of keys to reset themselves multiple times. Consider the case in which a command line tool makes various changes to the background properties, say the changes are done in this order:

	background = bonobo_get_object ("config:desktop/background", "PropertyBag");
	bonobo_property_bag_set_values (background, 
		bonobo_property_list_new (
			"gradient", "string", "true",
			"color1",   "string"  "red",
			"color2",   "string"  "blue",
			&ev);
		

If the real configuration program for handling the background is running at that point, it will have registered to be notified of changes to all those values. The changes might be very expensive. For example the code migh react to every change and recompute the whole background image on each change.

An optimization would be to tag the beginning of the transaction and the end of it in the client code to allow listeners to get batched notification of changes:

	background = bonobo_get_object ("config:desktop/background", iface);
	bonobo_property_bag_batch_push (background);
	bonobo_property_set (background, "gradient", "true");
	bonobo_property_set (background, "color1", "red");
	bonobo_property_set (background, "color2", "blue");
	bonobo_property_bag_batch_pop (background);
		

This would allow the listener code to batch all the expensive requests into a single pass.

Configuration handlers. Consider the example above, we would like to be able to change properties on the system and have those properties to take effect independently of whether a listener is registered or not.

A property handler might register with the configuration moniker to be launched when a property changes. This could be done in a file installed in a special location.

The GNOME VFS becomes deprecated.

The GNOME VFS provides an asyncronouse file-system interface abstraction that can be used to access local files, remote files, files in compressed files and more.

The problem with the GNOME VFS is that it is very limited: it can only expose a file system like interface to its clients (very much like the Unix interface after which it was modeled).

As covered before in the `Object Naming Space', Monikers define an object naming space, and monikers can be defined for any type of resource that the GNOME VFS supports (a transitional path might include a set of monikers implemented on top of the actual GNOME VFS).

A file dialog could request a moniker to be resolved against a "Graphical File Listing" interface, which might result in a miniature Nautilus window to be embedded in the dialog box.

It would be possible to entirely reuse the existing GNOME VFS code by providing monikers for the various access methods that would handle the special cases "Stream", "Storage" and "FileListing". Other interfaces will be plugged into the moniker handler to support the richer content.

For instance, consider the "trashcan:" moniker. The trashcan moniker could be resolved against various interfaces. A file manager would resolve it against a DirectoryListing interface to display the contents of it; It could resolve it against a "Control" interface to get a trahscan custom view (to configure the values in the trashcan); a PropertyBag interface could be used to programmatically configure the various settings in it.


Other monikers

There is another family of moniker handlers that are worth stuyding. The filtering moniker handlers and the caching moniker handlers.

The streamcache: moniker

The idea of the streamcache: moniker is to be basically a shared library moniker handler that provides a cache for the IDL:Bonobo/Stream:1.0 interface.

This moniker is very simple, during resolution it requests the IDL:Bonobo/Stream:1.0 interface from its parent and it can only expose the IDL:Bonobo/Stream:1.0 interface to clients.

The plus is this: it is a shared library component, which will run in the address space of the application that will use the Stream, and it provides a cache to the parent Stream (so we can use small granular method invocations, and the stream cache can do the traditional buffering).

Think of this difference as the one between an application using write()/read and the application using fwrite/fread/getc/putc: although many applications can implement their own buffering, most of the time just using the libc-provided ones (fwrite/fread/getc/putc) will do it. This is exactly what the streamcache: moniker will do: By appending this to a stringified representation of a moniker, you can get a Stream cache for free.

The #gunzip, #utar filtering monikers

The #utar moniker is a moniker that would implement tar file decoding (the same concept can be used for other archive formats). This moniker uses an auxiliary tar component handler. The moniker connects the tar component handler to the parent object's Stream interface and returns the resulting object. The result of the #utar moniker can be either a Bonobo/Stream (for a file reference) or Bonobo/Storage (for a directory reference).

Like this:

	file:/home/miguel/mail-backup.tar#utar:2000/may/1001
	ftp://ftp.helixcode.com/pub/sources/gnome-libs-1.2.tar.gz#gunzip#utar:/README
		

The beauty of this system is that if two applications use the same moniker, they would be sharing the same data without having to uncompress two times the same tar file.

This is all achieved transparently. This would happen in quite a few instances, for example, if you are exploring a compressed tar file in a file manager and you drag the file to another Moniker-aware application, say Gnumeric, Gnumeric would be using the same file that was openened by the file manager instead of having two uncompressed sets of files in your system.

The above scenario is particularly useful if you have little space, or if the process of untaring a file would take a long time.

The propertycache: moniker

Accessing individual properties over and over might take quite some time due to the CORBA round trips. The propertycache: moniker would be also a shared library handler that would basically activate the property moniker, and would set up property listeners (which would be notified of changes in the property data base).

So if your application does a lot of queries to a property, you might just want to append this to improve performance and not care about doing clustered reads, the cache would do this for you.

This is not implemented, as it requires the property moniker to be written.


The accidental invention

Monikers were invented originally in OLE2 to implement Object Linking. The OLE2 programmers accidentally invented an object naming system.

This object naming system is not only very powerful, but it is extensible and it helps make the system more consistent.


Monikers and the GNOME VFS

Some people ask: monikers look as if they are just re-implementing the GNOME-VFS, why is that?

For a storage backend you can always use something like bonobo_storage_new ("gnome-vfs") and get away with life.

The main difference between the gnome-vfs, and monikers is that monikers are used to implement an object-based name space, while the gnome-vfs is a fine abstraction for naming files and directories. The moniker space goes well beyond this.

When Ettore, Nat and I designed the GNOME VFS in Paris Ettore had a grander vision than Nat and I had. Nat and I wanted exactly what the GNOME VFS is: an asyncronous, pluggable virtual file system implementation. Ettore wanted something more general, something that would implement an object name space. And some of the design decisions in the core of the gnome-vfs reflect some of this thinking, but the API and the infrastructure was limited to handling files.

Various months later, we finally understood completely the moniker system, and we realized that monikers were an object naming space, and that if done correctly monikers would be able to implement Ettore's initial vision for having an object-based naming space.


Open Issues

We will need to research the implementation requirements for asyncronous parsing and resolution of Monikers.

Currently, both the Object Activation Framework and Bonobo support asyncronous activation. Implementing this for Monikers should not be hard, but might require a few changes in the Moniker interface.


Conclusion

Monikers are very powerful mechanisms that can unify the name space of objects in the system and can be used to provide a uniform access method for a wide variety of tasks:

  • Component initialization

  • Addressing objects

  • Addressing sub-objects in a compound document.

  • Implementing Object Linking.

  • Implementing nested objects, and nested handlers for file systems.


Acknowledgements

The Bonobo moniker implementation was done by Michael Meeks.

The design for the Bonobo moniker system was done by Ettore Perazzoli, Michael Meeks and myself.

libbonobo-2.32.1/doc/api/html/libbonobo-bonobo-main.html0000664000076400007640000005135111546334245020026 00000000000000 bonobo-main

bonobo-main

bonobo-main — Bonobo initialization.

Synopsis

gboolean            bonobo_is_initialized               (void);
gboolean            bonobo_init                         (int *argc,
                                                         char **argv);
gboolean            bonobo_init_full                    (int *argc,
                                                         char **argv,
                                                         CORBA_ORB opt_orb,
                                                         PortableServer_POA opt_poa,
                                                         PortableServer_POAManager opt_manager);
void                bonobo_debug_init                   (void);
void                bonobo_debug_print                  (const char *name,
                                                         char *fmt,
                                                         ...);
int                 bonobo_debug_shutdown               (void);
void                bonobo_main                         (void);
void                bonobo_main_quit                    (void);
guint               bonobo_main_level                   (void);
gboolean            bonobo_activate                     (void);
void                bonobo_setup_x_error_handler        (void);
CORBA_ORB           bonobo_orb                          (void);
PortableServer_POA  bonobo_poa                          (void);
PortableServer_POAManager  bonobo_poa_manager           (void);
PortableServer_POA  bonobo_poa_get_threaded             (ORBitThreadHint hint,
                                                         ...);

Description

Initialization functions for Bonobo applications.

Details

bonobo_is_initialized ()

gboolean            bonobo_is_initialized               (void);

This allows you to protect against double initialization in your code.

Returns :

whether the ORB is initialized

bonobo_init ()

gboolean            bonobo_init                         (int *argc,
                                                         char **argv);

Initializes the bonobo component model.

argc :

a pointer to the number of arguments or NULL

argv :

the array of arguments or NULL

Returns :

TRUE on success, or FALSE on failure.

bonobo_init_full ()

gboolean            bonobo_init_full                    (int *argc,
                                                         char **argv,
                                                         CORBA_ORB opt_orb,
                                                         PortableServer_POA opt_poa,
                                                         PortableServer_POAManager opt_manager);

Initializes the bonobo document model. It requires at least the value for orb. If poa is CORBA_OBJECT_NIL, then the RootPOA will be used, in this case manager should be CORBA_OBJECT_NIL.

argc :

a pointer to the number of arguments

argv :

the array of arguments

opt_orb :

the ORB in which we run

opt_poa :

optional, a POA

opt_manager :

optional, a POA Manager

Returns :

TRUE on success, or FALSE on failure.

bonobo_debug_init ()

void                bonobo_debug_init                   (void);


bonobo_debug_print ()

void                bonobo_debug_print                  (const char *name,
                                                         char *fmt,
                                                         ...);

name :

fmt :

... :


bonobo_debug_shutdown ()

int                 bonobo_debug_shutdown               (void);

This shuts down the ORB and any other bonobo related resources.

Returns :

whether the shutdown was clean, a good value to return from 'main'.

bonobo_main ()

void                bonobo_main                         (void);

Activates the Bonobo POA Manager and enters the main event loop.


bonobo_main_quit ()

void                bonobo_main_quit                    (void);

Quits the main event loop.


bonobo_main_level ()

guint               bonobo_main_level                   (void);

Determines the number of times the bonobo main loop has been entered (minus the number of exits from the main loop).

Returns :

The number of main loops currently running (0 if no main loops are running).

bonobo_activate ()

gboolean            bonobo_activate                     (void);

Activates the Bonobo POA manager registered by bonobo_init. This should be called at the end of application initialization. You do not need to call this function if you use bonobo_main().

Returns :

TRUE on success, or FALSE on failure.

bonobo_setup_x_error_handler ()

void                bonobo_setup_x_error_handler        (void);


bonobo_orb ()

CORBA_ORB           bonobo_orb                          (void);

Returns :

The ORB used for this Bonobo application. The ORB is created in bonobo_init().

bonobo_poa ()

PortableServer_POA  bonobo_poa                          (void);

Returns :

The POA used for this Bonobo application. The POA is created when bonobo_init() is called.

bonobo_poa_manager ()

PortableServer_POAManager  bonobo_poa_manager           (void);

Returns :

The POA Manager used for this Bonobo application. The POA Manager is created when bonobo_init() is called, but it is not activated until bonobo_main() is called.

bonobo_poa_get_threaded ()

PortableServer_POA  bonobo_poa_get_threaded             (ORBitThreadHint hint,
                                                         ...);

Get a predefined POA for a given threading policy/hint. The returned POA can be passed as the "poa" constructor property of a BonoboOject.

hint :

the desired thread hint

... :

Returns :

the requested POA.
libbonobo-2.32.1/doc/api/html/persist.html0000664000076400007640000000677011546334245015361 00000000000000 Persistency

Persistency

BonoboPersist — Interface for anything that can save / load itself.
BonoboPersistFile — Interface for anything that can save / load itself from a file.
BonoboPersistStream — Interface for anything that can save / load itself from a Bonobo stream.
bonobo-persist-client

Figure 5. The Bonobo::Persist interface

The Bonobo::Persist interface

Figure 6. The Bonobo::PersistFile interface

The Bonobo::PersistFile interface

Figure 7. The Bonobo::PersistStorage interface

The Bonobo::PersistStorage interface

Figure 8. The Bonobo::PersistStream interface

The Bonobo::PersistStream interface

libbonobo-2.32.1/doc/api/html/running-context.png0000664000076400007640000007576111546334245016660 00000000000000PNG  IHDRgxɕsBITO pHYs IDATx{\TkfPA|azB( Eeܬn-5LL5` &&ej%WbhXZ 0yv4gÙ>3kku>{(B`](rrr ?1lذBRQ\BW\(#&`}XS$ݻwOh[B(999'':88m cM@Ë9F5!$ɓ''DM/J;pB8!j5@ Q'DM 5"=`裏VWWXPtttTTۯx `w5/5/5H$Fğ_m{A߻Ri|||YYZ6)7|3~x??;wтP+܂)bs L1 QEڵkAAAft…s禦644>}ܹsB[@P`uYHDUlkksss"QQVV\.W(yyyB O,VǍj*|||}쬨puuPT|>f̘r,|'(ڹsO>>)) ~파۷sTQ|GRRRL2o޼nAt]llW_}Ϗ6iڨKr@TzՋ/T*l'S ӧϜ9SQQL'Q;&;;{Ϟ=Ǐ"FLH.k:99b`X(F!ԫQRTяZ;;;wuu)j5EQ*JPwxDU__/iyZZڄ RSSn!)dãb|N}UnKɦ… EEEvDMyyyC ٻwokkkzzE5>cmmmo6-\|oq V[ZZ / bbb222۷mm2˗777%$$`KΝ;?3Gu BѬ^3gt[,66vǎCM#"lloo̜2e Gu9s,ZHV777\4DSO6 ؿa<`O7z.Rux13pa>///U^Cl  *&>_ċ655ٳVXIxv$NA-~{J[TTԱc̥DlbmAPPB[zo[Hٳ{?755[YYYR Xr# ý7165!!!bvVέHDl[i$*2!z&D٪3{DlLJqg+,, qvv>}zVV" aCGo3?U*Ջ/اOB/WWWS9P0%dnu{ژø'M/Hv٭1F+24QFy+;h1(QTf<:GP>g3IL⒓鉃L!wu!u3?i-ZI>x~&5?mL& 4R[c Rt=k@@@{{{ }}}sss5 Nӈׯ_׫Ȧ B4IP0DžD!Q5xbuvn=ORݍ5)={v޽N7i$=Ez=bLE=IIIg.---b(ڟX+9h9L5יܭ65d̙/_j flOLOh"!DL8J!OΑ'OsfddpWUUK/UVV>S܅chfSף'|oiooY~QKTinr&uc0ckI<8r nDE> 24[iC&e!eh<:GP>WT|RU__%kjj8\GqAlkMɇ7nO<Lj4Ďx&$jژbQBS`v@L8jbRHb )_n &51 )$1fh;` &&`Q 4{(cބVs&v}Cӛ:x ~~~B/} ADC}GhhhEE.?bWWl#ZrqGǏwss?~iҤ7orvf`f7A<<:t/Bjx[TIlډ3!D t{ёP(Riffn]CB`;C̆)Չ%**,,sʕܖ@lL$tcV'jQQQK.l%=t!$d`KpphD'$–  b,N61*!ĒySҲ C71bZ6!шzZpAZM`K@LVgl}gR5w>wDM௝ [LI&dgF>=2%̒hV)1nEݞe@0@05$~&dja䟀$6 J5wS&wd04n#'Yb,&lGfrK?MIˊ E&w?I7Zp*R [Imr to)RĔ&0CLI4ēzpSB= D#="&qV)ï8=X9obZV k 1I7q)S` 1!I|x+1 G$ RAOi=s2!wML$pT'$sĴ;%0.&e~sLb cǪT*,$& $Vgl=(j߾}^^^O\}瓀R<=[Lfˆ&ԃ#w9z?F{DLf;&&[ ܈ɳ0 58uTw}wʔ)J/f,\9h ]95D"X,~7ǎ+J]\\뗝Mt#jj4ٳgD"WW{OuPnnIR~m0DmmmD3gZ7oD!z,5Έp}K!J%= ޽{+B(88!yO>Ν;~iEEł XΝ;'Nܷo_/k͘1#((_~]hڵkBZЁpkj!ֶuVЊ+B|h(8kxiH$bZf~CPu!Bhjj¿^v !j4Xo 3fLEE| Bo!ԻwoB?EQ#FFeffRuT! 5p@(Ik nڴi^^^W< >|8zʕ^z=7oޜCH[Y/~$Z~'иqhС8 6LI&~.mu<;rH"5kjj6mpB///Z{ʐ'|DM ½ϱSxҏل6TBO>P{ $/sED@׫W"F1bĆ MVWWG| !Nؾ};B_GDͣG>}^P(޷nڴiBh٭DM0媶;/~ wcw[@}QЊ+˻joyҥ#5G!>QF]zS}w޾}{XpٳQs޽...III!ooSNݼysO=,DnM3gΌ3mX: l^lNCM2 p{G!̙c9455%&&8P,~͜9ԩSt<%x;w8!ꫯ~޽[^zEGGt?g"""$;;[#*G^Wq)))Q*Gimm}W͛GQTEEEDDkDDJYbرc+++m1>>}̘1Xj/^sgdd5xƍ777np{ ++K.+<6; R\\Lh4JnD+WPRrFaN;n0==_~7n$M+++Ǎsxf{O1BgD=0Hp3yŋyxx,]ѣPjkkk.]J uLIIǓ'ԫW^x~l#}̙h[7#VONNůs` ЂKalp8g%%%|W||<'K.jT*BBZM uUП{%r ]fO!mmmBuuuEi4ggg6; CCCkjjOfRNNΌ3(>>-wpu[8:+27WWWV+Ν;WTT999uuuQISG?ggN6ѣG ]UW3ΎL⒓WOEEEOee\.jδ:n}%V=^QB MtH$'=)*ܹdta,m[-O>x1ʨ ~ݺuFTg2eʔիW?))) ./?T*MKK{'(lpۤn:buhrki0׮]ۼyĉ7l؀111۶m gffgffN2˗777%$$`9s-ZVWZ[^&?^>5 FYz53..꥗^] L8q׮]܊8$n깎X}eddpi "0צp΂ b8<<^ tR ,uUП[ZZ$ N,f…rW^[nխi&25[l޽[&Iҷ~<"庫)ڷoޔ߿ӳN3m&M=T*khmB InzCDL^JKK;pwwם!|'~Ç6Dv܅v(BPCϭzp ϯ 77WPw <8&++kƌB"=[ÇDӧ mm]"HP޽ی&O?ІC=VƢl<i p„ QQQBҳ)6rYqL!iii_--= jvkRXXx)Հ Cƚx9h 3`5 j=dשm}j5M*;Yzg93l f1޼05+ =agd7oz{{755bZcMc8uThhѣ,QTaaa+W#Fpuu rI&O4͛X(vs|rT?~ĜDsp…tӪs{>9!!!gϞF%ČDƍ5 OctD"RK"[;*2ίNIybBG ,++&4 pu;$xғ]!-U= ptn߾ݫWΎ^zݹsbHM6_"ܹbH]o[;*2K䯝(!zwT*Ĝf{6 d2YccOR!TXX(m=}]qqٷo`E)ʪ*# &??_*r뛛hpH0]#9uǚXXUUT*?~:QB}J$NLvNH<7n3ٳh`vzre„ BbfnZ xi0۷o۾};~IHΜ9ZݝC0m6^I6;0'_;>`MMM&q섗a D| <ݴm9 __~eKFFAAA...!!!'Nఁ$klGD;'_;Er#ľӿ>|xܹ&qeؓn6"##6Ĝp410ܴ6 _w)?x|7Ǐ?}жw4يfhvo{G xw:@0!H8~T{q---tnZ%ӓ'N`!::ڈ>ѐwB@$71,**"{^w0]~av0C `DDD,X 욮.z_@5aپ}&<,DM2B:fرc5kTWW }1Y~I$=ZhC&8 >?؈7Qa@d۶mv駟Ū8@MQ!C,X޽{BbU` XXC ˚5k\\\֬Y#!V&`Q jqF6x,DM|/5) `@A~~O>-!`X&l "88@T)ߺukѢEϟih` JqqqLL =󒒒]vY0[JQS-9IJJR*`Ŋ ͛"hB8&0D"$$$3gΌsի`P.E D")((0(pn߾}Ȑ!> E vR4(p9ʕ+1O`v@X(~@OnE N???˅6pL j`hlooOLLy@ꫯfdd$%%Y<p jC?p}ϟ`@~MWN:Fiʔ)_*++e hѢ͛7/Z̙3cMK~H$/"BHRq4bŊ޽{w3oƚ`DGGGGGsY~=w// 6̛7͛fLhrL& =`;, @F$9RD7`a#jrSpU 6M{]v0 j>&7\vtnnG]H -`Q~mhh{dd;w5Gi'BFk׮M>}ʕoBrnnnǏWt+Wzzz7Nw%hISS=<AGIII2eʼyhyYY٭[6nܸl2M=bf<ډ%+"Iڶ6ZH>w߽{ԩSvgΜꫯz4a„'O"<ʦh\jlN PCˀJJJ>//xHDQ\.WET*BA7jꪠ?ݻz\~~~׮]c36b]]EQٙ-tg&ϦvDElvDLJVD@qbFmqD… XTPZZІ8ZV&;wsrr(<!PW/a ;;;3_G6ln9"6M1Mb3MQ"$KDt6M6_"ܹL G>>>r\rh'CK./U DMrV$unNNNL&˂e2] kjjr9G~~~---B/ӧOii)[ʨ?uZ[[nd$ N,%"L;^"C+cǎ=tPyyynnnJJ$O*=bC;NK/uvvr?bQ3 ڵk7o8q 0&&&##}۶m111t)Sp|沲,3g΢EjussUtd2f>5 FYz5a #ID wth'dD/=77w٧OW961`9Dwς@(WWW7j(''O>p_}ڵcƌ14`ktt G*=z/b2nNNN~~~ccw}8@0ݻCUT999s5fMsJebbbDDěoIQTEEEDDkDD"9XVVƭxJ%1j+WRRޞXA =-mbVĴ_bFooz///z,z8^ML GMݿ&j!zGT*elx MNp\}999!DRRRb5{ j6]FM N,ǧ0~8)))""ϗJj4ui9h'B J%_~!t={8fJ، z0=L#Bƍcƌ9% BcM]Ν;o<#r'dffq֢X,4hʕ+?\;wgnnnҲ%$3|yyyVxQF]l˖-mmmBX,~-z "-OaQQB%Qˣf6Sf<{'$>ҿ>|xܹy>5kh׮].A5^\\r%CX_ݻ&ӧE"QDDS)d{@M+PWWG/rl,t-X!chE!5nLs%Ill,ϯ|JR8P,?{ѭ;m4_|ͯ*""!ӧ'M6zO? /=z4^CC!y6}g :Th+ŋ755mڴ)>>^h[AW_KK χ⵵r!k=65KKKB -ЋvW\iooߴiW>% U*Ueeexxn]Rac~~SttJ0a8U3]DQ_u֭^x!gkkk#BxeVVBhȑmmmm DM;!P(K qXz-D2rHWw W_qqax"Lb=5+++!VZ[@o;3]x6W>%~aйsN.c1=?KrHPdd$BE 2.PRR-KJJd2Y^.7[ 5/'O:999;;:uO,6.C jN0W>%=<<BZzzP(XSz{{;BHs̯Eyzz2O?!$B3ւ@@&L|򮮮g}qrrJII߲k(CCCKJJ?V)vqd[捇gϞ婅"`qaMs-~=7q[q[hAW_GGO:NCͱ&URNgrhW+ Wvx \_ϝ;3>aF9rϋ޽{WTTW,lm _ JKKR)B㖰ƣ&EQ!m1c ۯ^jW޾}[REDDprr:ujqqV͝8q"«8|_i7|:x/vttGtnnn4hB(''(UAp6F&Ba{!z=$xndQH$66m̘1}nfu~.Iy2t]v!sĢYf.~Ct?ôirK߾}gϞM?3gR5~xМ9sCOKe3w]x~~~BB¦M{n-qrrD>AIIСCzUmq =-]`U 555˗/1cNӧ/_|ȑ .D-_\hz.={vxxZΟ?_"5J:tcnX|ݻ<wϏ;V, D`A =-a g̚5Kr_si4%KX6 6lX߾}7|ׯ_h 1xm\PP6EEEǎlOKC_mOpp۷ ٰaBHTj"H6ȱ(999fq޻wogΜ.Li1q &8iii---Ǐ/..6{ପrqq3ai AH$111jw̻w+ &8JB ֯_s , DMp(l!p.]TP~&8~~Q뭷BmmmՎX~)Δ_cO?XGҴi֬YcDMp@,8y꫿+G^xaԨQ[l1jtuu-XW^RtѢE|xKyLsi1nu ~{ F)51P9ryZ[[g͚1tvv޾}H$4^dffo׮]+))z;lB(''gƌ}j?^3`{2oFfݻAAAW^y+Wtջܸq#&&-&&ƍXXYY9n8+V¿gϞşϞ=UXcرicƌ)//BVxb?##C.C feerBƊWW׈JEW#"cǎri J cMpd,1H$sww(<#)))uuuSL7o&''GFFp~ >|8YFEE-].SRR|}}㓒055ի/^,--UTzu\t顇Ђ)++uƍ-[ᐤdZγG9R[Ҙ1c.^m #vԩ(---x砾}VVVE;>guro>|{{L&kmmE)˗/[V' ;;;޽{bK$޽{WUU1B]s…}644 4!_XXHLF4^,b"N*jZOOOlb͑#Gb(/uuuyxxea;,iDMp O:Qk58(رcIII%%%xZ:vtt899uuupj}݇jnnollD]]]^ҽS`ݣMuqqh4wyRY\\=3j_Cn7i-xfo 5&xkjjnkj4F'RYUUEQ=ܹssQQR*~:_{ kT(t="b ^:z(< '(ʵk)ޮP(4իiɓ333322O?UܹSSS6k,,%333S/_,!! ̙h"Zܼj*2z<yyy|:ˇm۶r=mK{'E t IDAT @p,}24.\prrruuE<ƚwdRߦRTDaGG󽼼_{NϫCeDZZZ$I~P,\P.k֭u7m$HP[[P(t׻2ﺈX<<<\, V(KR[-cM?״]c.8r޽k9rm>fTΓwww\z+Wof`ͩS=ZoH*5],m ihh/oˬ[>Ï*mTKmqʘ~y6m--[?(J[X!nݺUhC̆%zx^2 C9j(#G+ͣt&7l0z覦&e_@J Èu zbرzRmmdk! L,с yV@57o^xq\\ҥK=JgϞǏ{yy!}%&LpI UUD O^7x#**Jo;"nr`@XGYRRn:b|`g9j 0>򊏏W9r$00.ٻwoa}}\.B1EQǎSB5wBx5~KCBPԟ_#I&I{ 17ׯ?s_ 9VdΝ+**BJɺ%tm񩬬ZPÎ=:l0Y.0?įx Չd3:^z2Vi?1iiiO=XGԩSW^mքWU… 8bZZZpIҴ'|RoF><֭kmmvFAL& t$v x : 7'[iΨpڵ͛7O8qÆ |WBhĉv튏ksM~"D wt}!66 Mn1K3gm"xI9y pnNC,X7H >c'q?"yyy B.sJZbldb/7Ͻ\hZzSw~M,IOOׯƍ)%!RoR,(xbm!$rnN!kVTT(w}ݻ6ٻwԩS+Fa:v%F/^ᑚjP({AQ3..nĉE?~kk~iΝ;BN`` EQfJNNnmmMLL|gqo۶[ҙ zyyѯ455y{{c-K.mmm]t)&xb)))>hEEECC޸xQ(̨lٲ]v 6 !{D؂ܹcĞDE]|yҤICcIbi^l|T9s[l{M<!4qD dV {۷˗Mlļ]0IV ҈Y(jb,Y߿qpg :Th+̉%zd^24sVK.99915@DV mşAe˖^xaѢE-F$)ݻw mٰDKfk~&L7nN:DCBBbqwaT6<ۑHrj#[OӁz?Kw f6XaĖL/0( )N'lՙ{ɶ m^U;wko 8yRPPs ,INNFIΝ;ww-((8u4m#FB>}̙3_}sٲeaaaxw=EKk]ǁ^mMHʧMRSS^zRg[%%%544&''s{CFEE-],ډ!ľcU5[VS@υw>>lDƍm*M6@H%iWR:jY6BDױGO>IqYHv>aܻDiC$Ϋjq0E\!o\ 0l!Wݾ}W^zsŒ(,**6mD"ٹs' SirIu+w8#$|o% n}VYDD $Ϋjq0ޔyF\Q5e fLriv̅)7ɥ5ۧ;=pEQJD!M~~T*777WT|fR%ĺ|&~ǚze]׭bo%ׯ7NC;۱&.YUUEevI;Bƍcƌ3Hdq0۷Fټy3Ivqq5u /` &MQ:d2Y}}tY!kl߾}vhslD̙3/_j7JM~FcEW#BCC飻,qe2(*22رc͛^,av[xAI.`[dȑlU@X,5M??,3&q2O?Ǿĕ>>>r\/F7%X$=l3&{޽={4"?g3$.B0}m̛7OO\hAQbiG皐_ ^doo1cq24]pg'NܵkW||^]&DKsX^2ɥXmhh` y5m>1bVe[,~OOV=̛&I.бby?Z͛7 H$)[O>O>iW\ٿ$,_N:zhݗ 8- b%o.&O7}h#""rrr6ؠI 59;$B']\\~i 6hBH.O>ټyж3q騨(ZX CoO` =-aQ̬^Z٤o1돦6mڴ5k֘k3X ۟ )w} m.((6K1]uݺu/~[ZW -@nNsss ,Mm9O#$1%BHT&&&FDDEUTTDDDFDD;<E8  7短e =ܜ& cbb6>}̙3_}B(%%׷.>>>)).f͚m۶=3{E%%%544&''2X,dk/XjUnnG &Hb6JPKK =r:Brss'OLQTllCܜLc48SDMSRSS%p̯Ilmu鿺 {wccw}}Wcc#wrzd9az 88jېg"~~~---̱Q&ݹs!T]]-ɰ;$$dݺu#Gno߾3g KIҴ'|R,0b\\pjcǎ=tPyyynnnJJޯGPr۷Bi `(J aFGLLLFFF{{mbbbhyll;臚69͂#4`+?߾}j z'!fDpXN/.( tVr4ܜl]48&mGb,JZZ!T]]S\\\PP r`?fhA!S6Fʚ1cTLn"11_Wdd$-˳i5qyҥ%KmٰD6hrܜ0C -mN.Z/ qZ1ZˆLO2gΜŋ[0/0{%--ԩSQQQ_[ZZrrr[YYi{(:wg}p ` =hH$/"BHRYڒ%K(ʰm۶ݺufn=*8¾xyy1m0c2N"ܭmak8a Y(*00֭[fΜ9vX^G j ~~~Z&$bb^'' |-tR1[t2Nk`Yt%"h۶mgϞ---ݺuq6{:JCVLd8333k׮\zuǎV6֒qB{(***ZdI˜3f,jݼysҤI&My&]?sN{[]"6E"Ν;}||J#Gt[l H$6mB555M>#44BWEQLE_~ԩSLbIΤrnnnǏiF0+W7nt=QYFT*իW'ItHGGGbbBJup<3_|ViO`.83 d_b .2pT2D8U:ђ(f4801bb-Q#Čf3ZW ݍëwz>Vs={A ,”J{V^ٳiӦ-\o>JZLm6VZ\\uVᦰ$r,:+ ʋBFc}}ĉWXaq.͛GaÆݸqCM0 yyy7nܸ|K;q2>ss%M{󎍍:˗/ZJO,??Czm 9L¦Jݾb(!otB#+///wvvzyyɲ $::(9TΝKHH??yĎvo0J j|? '-vVΝ;7oR5b%evqq#AゃMMMl~8C8yٳg644 >|ʕ-,,3fLss3rݯ_?NS*F2t5x'_SS3nܸ\b28:Jb;ܯ,ju^^_uL1c#1{?aÆ mmm(?effnذupppGG#88}8AyQe]]Bks?32d,`@z}}!CVb?y+V8q/ԩS!!!DɓBÇ}}},ף{ NKSV\9qvApl84edddVV梓*`0,W^p—_~O?]rtf6jVmiiiiijjZ:㔒-..ӦMhl\nӧO|MY6̛7oٲe:1!vG1Nsh~nݺ27##Cͱc=ˬ/f}VF!gffdjǝmΘ1n/Y5z}DDĿ .U*!!BX^/hѢ _u۠gUST>zϚMeqZgeeG*gj_ߦCgՌvv֬YB8ݻFjll{.[,++,:vxVGSSSVVСCw,OAo֪U7QlJ-S] cz/&& *gjJuq7hY5}kI9zK]?p@```[[ {fT*B駟ҫ&xϠfرk׮A;R %Jb;gMG߳d&MKkjjFٷoW_}uQ+ƺ=B҅p8 }}#GT!Cȕ)0 %%%s̑5(!t!֣GI&w :fW҅pϚ @}MθjrbHw1 (ݫV[[[] ؟ŋϛ7… "#tjkMpbZg:U4mZ[n;wܹsѢEApM4o߾s͉'uw vq 8O555 0  G鴩 X|{]]]QQљ3gΟ?Tk&/j...9US. .4SQpIDAT |  ~~~566fdd'$$>SJJJZf qIIIIII_YYq\eeFSFӷo]vQPUU痚ZUUE ڔ!d} ,,,4iBR^N7nܸ^l"`xePI!^ԡeS%Ѹ|rRjaӧo޼8 `NZ\\Zl:y-[際/ΎT*Ò`k$^SS\g]VPTT4gΜϟϞ=ҥKGv3j~ǃ"D??g_ TTT-2gϞ#F)e]bsӦM9K_1}-|?4J)p[qO0JCkB 5,Փ&%tRBѫW".1.J8c)jژ]('-޽w֭xa4!>>Վ r5owBVVVssΝ;SRR\ p’x&=]@DP{r/HwU__sƌΙAB ۯ?~wiooxСCtI - 0/^Xr3LjZA333lذ!;;!-`Dʕ+}ٿ \ GXw_oMII VM^RArA-x:o?sW ~A<No6vA⹜>}~q޽7i$W{ Gߙ! <Ç?}tddu& ATVV>yĺYV Pٳgϓ'Oĉ5AO!((hÇ'VMAă :}Յ& YDFFZ]8j" Յ& XW8j" & -X5AFVĪ x:ގ xgϞ4mڴ'OTVV555`| )9s̙37n$%& z  VMAaBBBl.((̴KfVۣ0k֬[g:ሉz-; ۷ b k0{k Çngφ rʕ޽{m۶+e2#fw[/w k qm ce&8C46[%@;K˗/^\\|͒3ZZZv_tFj: 0,Xdְjv)ϩ6nT5 -@=vءT*###;fmڴ4{쀀jg#GŕZ3g/^널d??dNGqI 7n\mm--Hœp̘1<hz1}"?ů {v4fgmmZ ͥjj{E^:j(q{ssVV?Cq^h8q+=M\*_|ũSBBB؝OOO/++ qr es„ IIIi1 @ƽ (22R8eT5=Zj------ZVV477?x`oƵk׌F-Z~M? }gqqqTVlْJ&ճXO6ޓ~8pkjj|zzG/^\SS2Aݻm aO>]HDDŋ}2Q\\ܹs焷z^R r ŦFپ}pSӊY"wpESNVkߊ/[XWVWWϘ1#(((000==nNں`>}MjC ٳ#{>׫TZ%B/]qÇǏ3~Rvڀc =/ndѣϗ|CCRT(uuuΗT*B駟$qo)Q`?p:pE ٴiSPP=б~;eݻwGDDo۶Mhf~83CYQQA8ħ*XY[[;nܸkײluI#~3GRPPv?3g=zuk߿Ӿfģ }8tڵkoܸjG C/J ݄=zTݻw`Dn^MA'ߡEAvj" +X5%Ҋw,?څ膣W&Qbǵwpg[m6@@1a >};w\qc'l?F rrEyze,o߾}֭7nl߾]NsP*o:w]ff~jw7Y ]Jnj#<󉉉)˗+ʰ0V7VWW'%%&%%>כ7oӧO```aa!qN1bO߾}wwkllOHH0{d R. v DFFfee%%%YFjr# : pxUUUjj_jjjUUOp!BR z,$裏FA*++Y Qxھ.Ƥ ft|~z2fmJ:ǡϚ7o>P6y8ݸq) fq:,B1viY~-[Νw^>+ pvEP頨*JTվ'-` `ֱo 'VR=C%aPV%<׿tEѷo6kD-hNgeN$F NGFʋ6 J9/V&8:`3227e 7o޲et:]ss_j"+tm}͛y4 ']7E3 w ]dYc0.]P(zUTT728 N'wܹ &X2DY\rpvE~f J9σ|]DUYl,I &(u?Pdx"hھ0nt^Q)k3eʔɓ',4"HW!>>ՎF8hº3?#̖;2 &++`Ν)))6:2ҥQ({8pC\l+ ?%ӿC  `DAVjVbN[DNB[ Z:t[nu qqD~2A0=$& USJ}ǎJ222رcYYY**<P_S:Fv?)>YEAE YٳgΜ9ǥ>~ѢE .8Oͨ 6X5A"} Rh((rIqO+#b]XGTMq7]K; ,0kgX+5m״QQ.*bdc&")g9eʔ]veddX\)B]2IٝQ4Tȥ>Ǯ}k#ǝ]K\z… _~O?tpr!R0à~0T_ ."AaڔҳRh%c~ʊ'pԅ'jdC.K'Kh4uiiF Ћ#>۷﫯:zw7^2 -%1 %%%sq#Vu @}MK?iҤLW;b%]Z<B  " }  `DAV<@\AF& _(lIENDB`libbonobo-2.32.1/doc/api/html/libbonobo-bonobo-stream-client.html0000664000076400007640000004776311546334245021665 00000000000000 bonobo-stream-client

bonobo-stream-client

bonobo-stream-client — Simplified client wrapper functions for the Stream interface

Synopsis

void                bonobo_stream_client_write          (const Bonobo_Stream stream,
                                                         const void *buffer,
                                                         const size_t size,
                                                         CORBA_Environment *ev);
guint8 *            bonobo_stream_client_read           (const Bonobo_Stream stream,
                                                         const size_t size,
                                                         CORBA_long *length_read,
                                                         CORBA_Environment *ev);
void                bonobo_stream_client_write_string   (const Bonobo_Stream stream,
                                                         const char *str,
                                                         const gboolean terminate,
                                                         CORBA_Environment *ev);
void                bonobo_stream_client_printf         (const Bonobo_Stream stream,
                                                         const gboolean terminate,
                                                         CORBA_Environment *ev,
                                                         const char *fmt,
                                                         ...);
CORBA_long          bonobo_stream_client_read_string    (const Bonobo_Stream stream,
                                                         char **str,
                                                         CORBA_Environment *ev);
CORBA_long          bonobo_stream_client_get_length     (const Bonobo_Stream stream,
                                                         CORBA_Environment *ev);

Description

These interfaces are designed to make the stream interface slightly easier to use from client code. This is done 2 ways, first by make the exception environments optiional, and secondly by providing slightly nicer semantics.

Example 24. Writing some simple data to a stream

1
bonobo_stream_client_printf (stream, TRUE, ev, "Hello World: %d", 5);


It is well worth using the bonobo_stream_client_write function for any potentialy large writes, since this blocks the data into sensible chunks. This is important, otherwise a single transfer is attempted that will cause hassles in the CORBA stubs. [ NB. ORBit tries to alloca a huge chunk of memory and SEGVs ].

Details

bonobo_stream_client_write ()

void                bonobo_stream_client_write          (const Bonobo_Stream stream,
                                                         const void *buffer,
                                                         const size_t size,
                                                         CORBA_Environment *ev);

This is a helper routine to write size bytes from buffer to the stream. It will continue to write bytes until a fatal error occurs. It works around serious problems in ORBit's handling of sequences, and makes for nicer, saner protocol usage for transfering huge chunks of data.

stream :

A CORBA Object reference to a Bonobo_Stream

buffer :

the buffer to write

size :

number of bytes to write

ev :

a CORBA environment to return status information.

bonobo_stream_client_read ()

guint8 *            bonobo_stream_client_read           (const Bonobo_Stream stream,
                                                         const size_t size,
                                                         CORBA_long *length_read,
                                                         CORBA_Environment *ev);

This is a helper routine to read size bytes from the stream into a freshly g_ allocated buffer which is returned. Whilst this routine may seem pointless; it reads the stream in small chunks avoiding possibly massive alloca's inside ORBit's stub/skel code.

stream :

A CORBA Object reference to a Bonobo_Stream

size :

number of bytes to read or -1 for whole stream.

length_read :

if non NULL will be set to the length read

ev :

a CORBA environment to return status information.

Returns :

NULL on any sort of failure & 0 size read.

bonobo_stream_client_write_string ()

void                bonobo_stream_client_write_string   (const Bonobo_Stream stream,
                                                         const char *str,
                                                         const gboolean terminate,
                                                         CORBA_Environment *ev);

This is a helper routine to write the string in str to stream. If terminate is TRUE, a NULL character will be written out at the end of the string. This function will not return until the entire string has been written out, unless an exception is raised. See also bonobo_stream_client_write(). Continues writing until finished or a fatal exception occurs.

stream :

A CORBA object reference to a Bonobo_Stream.

str :

A string.

terminate :

Whether or not to write the \0 at the end of the string.

ev :

A pointer to a CORBA_Environment

bonobo_stream_client_printf ()

void                bonobo_stream_client_printf         (const Bonobo_Stream stream,
                                                         const gboolean terminate,
                                                         CORBA_Environment *ev,
                                                         const char *fmt,
                                                         ...);

Processes fmt and the arguments which follow it to produce a string. Writes this string out to stream. This function will not return until the entire string is written out, unless an exception is raised. See also bonobo_stream_client_write_string() and bonobo_stream_client_write().

stream :

A CORBA object reference to a Bonobo_Stream.

terminate :

Whether or not to null-terminate the string when it is written out to the stream.

ev :

A CORBA_Environment pointer.

fmt :

The printf format string.

... :

format arguments

bonobo_stream_client_read_string ()

CORBA_long          bonobo_stream_client_read_string    (const Bonobo_Stream stream,
                                                         char **str,
                                                         CORBA_Environment *ev);

Reads a NULL-terminated string from stream and stores it in a newly-allocated string in str.

stream :

The Bonobo_Stream from which the string will be read.

str :

The string pointer in which the string will be stored.

ev :

A pointer to a CORBA_Environment.

Returns :

The number of bytes read, or -1 if an error occurs. If an exception occurs, ev will contain the exception.

bonobo_stream_client_get_length ()

CORBA_long          bonobo_stream_client_get_length     (const Bonobo_Stream stream,
                                                         CORBA_Environment *ev);

Does the grunt work to get the length of a stream, returns -1 if the length is not available. Returns -1 on exception.

stream :

The stream.

ev :

Exception environment

Returns :

Length or -1

See Also

BonoboStream

libbonobo-2.32.1/doc/api/html/stream.png0000664000076400007640000011036011546334245014772 00000000000000PNG  IHDRRsBITO pHYs IDATxi\G0%r(j<&h4јDBK'FFFCׯAއ WV^[[CZ>Ғ]#33Brʕ+666ܻO2%%%eʔ)6l:ujrr?-Ba^bȺ 5k?@Djj,[fh%sHf^^^G;t.O7v p|W^3gΌ5J*n޼ e8E.QWW1f lMMMd6Z|jdfFP}˖-AAA---AAAk֬EȜ1c6꼼!C.^899͢h޾evV2w`ihhHR>@/xh߼yW^ziӦ'RdxV4tȺ:)oo#G %%%x*٘mfr<&&䨑ݣbݻ عsX,>vk!Ԧ1cf&Xr?0,-C] u_fd~y e}́^*ѣ~["H$ɓ'?y򄺋;x𡿿1YTFFD"Yn@D333B[hQnjnnnaaW⮑9}ؽH$= CCLBMcLK$77 X^^nmm%fQoo2;d2_]]]MLL5CBs 2 ׯ_7o^aa! .gΜyf' &&&Νb K177'Nh;.Vº깍.t́́P1XAMHc*k_h^N?{{{š2UnQUƿ' -CT@wN!?5;9o޼˗/_|Y ^***@`і[X ʪΝ;OFۻ2@ /---Ξ=yfKKK++SN!%K++^umyJdJ^^B@) 2PV mM{ZjsxjxEW15wEr+-_ӬkexxHlmm KfO1זG23f{OY0;utKģ=^Rv́˭u([ <++ښv OYᨗ|<ٜjJzzSMM#^5 ZMksıD---q"urji|Vc.]Ģk[[[+Ç 5jo1vX00F4% %s kT3s ѣ' =<<Ο?SY;#s)ur8g>\[>22lǎ/^twK#r$KJ@mE /w[wa`P8e0@ws tG0@ws tG¶D@΄#8@0tGṕbkH 8=Hpb@Y>;0@ws tG0@ws tG0@w΂_<v3g@ & q)L XXX'@s v=3ۛO wEyyy!:x9ill3440`5s Ph777I$j:9?H$ڴi---B̿;k bѣGp„ ,--/zB@5774޽{رcB<+]@GiSʴ2i'OD}ĖcccPuu;wovAAASSӏ?211!OjjjyyQBvvviiiA}ʕ+W֮Y!}v z)ANE={ \nkk_xVħCO(NU \Z5ڱc51//!ԫW/ B666555|~ B...aÆg=** $˗={1rHН;w133C߿ xVijC@gi#lmm˵23P?~9sf=𳹹ojj277:uG&M舟msw}g}ٳM6ݻ71|||S ٳg}ڲ~a9ӧBuBfff)))=rww={6Y,́;m)B@l۶ o;uZP֮k׺D"Hy 2ŋ!qVaa!~Ӟ={"V\g֯S$?d͛SƌS?NmHt> GG!!!ayyvv׵k'48 tH߅|)@ws @At?0i ́`@!v)))54'O.//}Ywxxxmmmxx-f^^^G;t.&PeVMQ.uVL2eʔ 6L:599ߟub`vF:UPQGlW*xԺ#BCC  E?^A^ޠ@Aխ]_~BK.%---WSSlKK 53gF%J7oL:<<)++ښV/P.ȅB!-fɆd~\GMn0&ZJ4j:P(1{fe˖ wwWWנ5kְNY N +d *0yx9L0.s0TZ]]MDuuT*E1 :9A bUUUA :4229'KJJ𶵵u||B8|0NٶL&366Vmll/cbbh͝;Ç%3|^G.կ_?PqyH!33K(z{{ߺuV/__IFs fմ~&[J Z&e2>5ҮfTTT$?NDIIaffb1 fFeǴvSA@` q]u}jllCg(6Oap*/y^ڶjo+8kC4V۷}9X8a$BĄ;\.}6BN N@[`ԱaeH=ڻ+t|T7mv-NE]/;{͛---N:]8K3hsIs_ڊ"-//O gff"f:033\ܞ/mujleuxe} + BCCYp!Bh…φ677k;|uj pB(-ͱ,933F[牏Dx;!!֖pR'(g]%Y;g֬Y?AӧO:t.<<ۛOX;ۛ,NJO,eCF[=o:Ķm۴j :p7Dz̬S/%Y9yyyC imm]xqrr2~ GZhQ)[>**GPpN<[=s s & lmsdquZ궲;P8Ks,ϚsXr?ONCR">M:^ ٸ833e:o9̖  U8ޘm9%gfV+:D9wCDyyuTT.H222OdddI$u1{QVPRg@}`#{tnmї_o_>o޼BGۭ=ut/PaYs}4@ 0119wo , @w;9#. tsI,@y tGpt\a;sȑzK۱ރ;OZZZ t/P. } P;9z,>>^Q^9ŋ|ҢX@}#J/_X@c'Nlll~{&oԝ/ m^rp-S٠}^t<ڧAÇ|!C: V@5  ́577LS0@o[WWwߕ;88gϞ 8˗k׮UR&+xt\֌?^!djjxbPiijxX,o?b@y t:Ǐ/ZH,_zuر*,PT0@GPϿ''Od ^߅}WWv k*--fdd$ˮ] v_|9RCCCb1L^]aaaffftA<剉rٳgϟ6mژ1c>>B۸pjEΝ;ͭN8A:]vYXX6mJ'OI$77 rssG)<<>>ﯯkkkur\~sCcGZ"o'$$g:TWWMСC#""DFF677Sf5lffHMM>}:m/fdZ Y~ IDATY8Ғ₋"C4 =rBںP% P>}P 3@dJtt4BH*VVV/^D;L!͜FPP?К5kϟ)Qqq1A!'''5.8D Aݼy!TZZ|3f B/ uuuB|xp >5BP&.vXmm-" !Կ(Fu1j-0**j999$P8t˗;vƍ!DB>&Sv~ܾ}Q-$ݿ!j*WW_UPw^ȑ#qOSB9z]9Q^^nmmRZ;BzǎԒ{ Y֭[-,,BBBp H"[pW׏Kɢj„ d eƃȔ3f Ν;G !TPPZl=Ba}}BG9s&<.X!tQ4.8z򥧧ʕ+=zP(.\0g RSS{~ h>gΜبRSSg̘Ď;]VZZ܌/E@]x`dd~:y&#f͚U^^^__F^Հb;|ccL&#GGu1FJLL JMMU_?@ATVV\^,3!˗/k;@̯txmllB믿fAڷo_Ϟ=A/177Gx񂚭b񳱱}1447n܆  i,b AC|V#nA7;nBOu= Эt{$s \.7o^eejjjڼy3Cz`N>=~ruڵ+((Ht9ƩK3[W_ʬ Wb5әv啝i.Ǐ"Ж6jhh/ `dddgg7wpnm] GYxg:D7O׮]4hرxO?455U}t9֍.˭E@ Ȁ,\pڵf***Rk]Zm~Gq;b;3Yu{vZHF5YIWw={\z!tՒr6Dm-. 3^곴$,nf}؊zUUՊ+hk^M>.ǍmtZ@Ձ#6׍GMY"5ۙ;lk+[&]3AN2%%%eʔ)6l:ujrr?8;|eSggi1p,n%(s r_>؊: %W$IWJjzT\71VJ'"r'|\#&<4jfue˖ wwWWנ5kq.3g. O-,-9ڽdSӺx^#;UuctֵY\D[^&K W\ܞ!*l蕵c+#F*++㓿3*Эw.^؟9rHuʕ+Ν@_xŋǏv횭B=ztEEEfff߾}Yza HOOG5|ΝӧOvPMRRdnnZQQԨ+..=zP($W,pExRMjuJU%/)**rpp(d'NXcs{24lګzYYB˗jzS(R1c$&&cccobܻ/X`ժUmVտ7Ѐɓ'qӦMbxʔ)?&ƨi>}J-ή]QUVVZXXpdOΑ!..?nWX#s tZu< ?ZoTXXovZxWTTogw;;O9f̘/;>uڶmۦM駟zkiʇٳsnÆ ȰqƐ Ϟ=suu@ǵi;+**h UX{1b beeF+3n8###l 9'ҡC/]D>433;z={ضmuGÆ 322HMM%E!QSYYYy+VH$>믋D}őܸqcȐ!"hȑ%%%8qڴi.\ "##wއfGC|el~eeks>}8::rs4L&e!s{K&A;99;wNP{|! w-cccq[;cvvv رc8}ҥ{eV?~6+IKK300HJJA?~|8.**ٳ'ҥK]__OV}X͊h"""ƎKăZ[[>|HҒ|haaqر ())177_f^D?l̘1=/n2FB0]J^)ճgϮTIiEm u;11qڴi8OUU/BҥK8D"155 D+Y& 2RPP0qD}|777jθٳg튊 .?`"77h ƌ{ѣ۷}||̙cmmm````` J]N:accyfKKKlkkbj}gϞ}ܹs {/((6mnlة|pcmOWΜ9o:o3qơED7#s Ν;7~xuELKE~9~nnnNOOeee K\HVVs| nݺE~=|LǞ?Nܹs'O---Ƙ4999Weѐo1͚5kر?nmm=z(~ :ue2yOsLp۷Q 22{ͧ6 SgNtƍ#G6LB*,,́w'fvyG#=ړKB`^w.((0` -555V222‹۷ɓ'6lǙb1Ml„ xu믿N^4y~ o>v钧w}W__?pz޽i,--p(_%bĉ/_&֭[?-?ͭ;pAp!ӦM;QkD;NDEEv8mdllLVW^ϟ~all "&&I瓴9݂Aׯ_Wi;v(::Z*:::[_q)ȫXbB$őoЖdlllHRZ\]]bСC?ʕ+Í7R+ׯwE4fffS|iXXT*]vѣqC988Dŋ Gd [[˗zJY)k>Q8yѣGlʆIf###SSS'.\577Jhᨫ8pݻwwý j[+^۷oߺu:8~Ebqcc#VƎ;߯+22Ν;aaaD?iƒ%K rJmW7#sͥb࿴}HMʦLUUUjuڵkfrdKJJ 噙vvvS_H@`tOmU g28mMԭyԩ*++yH/vNߩ0"'N{wmQ(&&&cntuq ,|׫<ߖn9ejjz5O***yh́4[[[OZ[[[ZZtt=Z(-ZDKmyޮ8η]UV]6 STT/)**rpp(d'ŃOlmm~:7x#))|x%"M6 2DP<;ݻw>|Zz'/o;8i6oܫW/##S>y|u1RF1o̪ Sqq1Xꄩa Q;?sW߀BBBkVk&ݫUR:csss|A۷ӧ|r3ŋOEI駟zk֬!b:Qm۶mڴlgΞ=;}Ǔ1l0 7n 3L090"]mD4hŊuaLqƐ!CD"ȑ#7@] !t!r *++̎=hnng mFѣ8szzaÌ<<vaooHGGD2s#FN[iä,['߿䔖ի?!4a jjj$ 3*.uD4Hx΁,,,;W"bٲe[l* HCCCׯ_O۽rÇ={gOZt7|Ɋ<==e2E[bE)swqƌo̮c-ɓSkk%ޞ?>ŋ1Rcc@}]kkÇiߡPO%%%k֬133=ݛO&e!͙3ԩSԊ-ZtAgd2YY;Ãk>_"&EmЩS"""lll6oliitRhh(#HLMMqάAJf^ZPP0qD}|777jθٳg튊 Ǐ{xx0[KBYEܝqaiϞ=ŋs1fױYPP0m4~ϙ3@*iӦ*___|1Ftl ƌ{ѣ۷}||52:;;ںZ~&܇Td~0) )??Jz̙3vmm-yA4s87n@hTJJJÇO<6;;͏Uz̙3+**:__.ڿ_SN~L&?S ˗8=++!7||ߟ<|LǞ?Nܹs'O---xɡq+HSXPVVF0LjHجYƎ֣Gtl1Ftl۷o6d2???eGlǭL&[pa||ۿ 8Q77n9aRRaa!mD@||<0s8'OΛ759ƍ?~@^{mҥR-bŊ~7Tٳg߿_.'%%8\./**ڸqcAANiss3YEM)(( Iq3?9Μ9wލ7t֙ fEܝ;^ҥK lŊˈX,((U  .lٲի׹s^zv?)8utl 9k2lʔ) ˬvaцIYH CLL ɓC Q6X ѣG@$@aɋX㧥:t?//'+.E"y5A+V022B]| GGG;O?YZZؐ?JV$%%C~+Wȇ.֯_?hڻ;8idkk|W^):eeRC¬RڵkGӣRuc1~[oՙN133ÿH㫃5?ŋ bmѣG|IK~͚5FFFU/\`kkknn,JѬQWW7pwm:LH7r wLdd;w´رcGUU5Y[oo>C+ä]K,4hʕ+񭪫B:rӠjݺuwԑ%''߻wo{wBS`xuk儆bI >[[ׯoذ] Ѕ\r|OV.pHp_:ub„ [l} ۷i۪0xV $}?8OzӧO޽{wԨQiii*mP5LGНH?޽ŋD={\rw}gyMLL333~Cޤ%' IDATG%뗞W^-Sll,)5A+od2___H{j  !!Ύ4ZUii\.v"m~ h Lj'?~q6\nddD{СpoooqW:u{СqqqWfh[ZZ]\\hMPw}kkkéw&%bʔ))))SLٰaԩSie!bƠy:,))qwwoɓ' 8p… Qi2$8}4L S:&O5А\SYby0$UVEFFv0D~09#"022y&Bt3f A B:oii|BrNL^Ԥ,pggg|vZà+ iՑlfZ93&i>qx;++uuu ƌC]\SJ .|hРHڊcǎĐGm===꨷E-\O> f-Z k EnݺE!oݻMLLRݻf6yu+0p_E"Q_:M1@1"k֬Yx1D"qss "22lǎÇXnjnnnaaB{V}aNAdffzyy Boo[nQDϟQRRbhhZ5@1YuKK/))Y. 23ƴ^{mΝ}100ptt999ƍ322&"==]o߾qqqd W\H$K,0aBll,A)))^^^FeeѣG3fСC81==}ذaFFFA[YY]$JUD]/ !DɓDfZbeeu~ڴi˖-ӧ98k۶myQeXb<X౦&X .y򥧧ʕ+=zP(.\0g 4< 𶧧}iІ X3@͟?ɓ'dbqqӹs GAĖ-[rssRRRq;99z tҽ{2C?~x jjj$ g'm9ʕ+Wۋb??(M4< ={m6{{{" >˗ʞ3:y򤯯oKK 5qٲe[l B$Qmmmۋ-:x ގ!/d̐۷b jXQQQϞ=eɒ%۷o%.]o8/ >22rܹ_Y̙Cਝk0-^8((HY3#xX ɡTVG a&!vJ;mWIAd3ӁTp=ސJ,--mhhdsvD@zRTT=iҤVK:MvAAieK.<ԴxΜ9Rz*vmm-Ǐ24/q &NY]tO>%͞=oWTT!taÆD"eeee 4Y.??"Y+JLL6mNXf8dGF:88tee SNKd!Hɱ11fU<""#@[Loc?-_OOOݷo_]]ݓ'O6lؐ/HnݺU[[?9{uy\ ݻ7 Ғzj'O駟kȐ!w!_yzz~wk? Ҟ={B!_YEb_Eqaa!5v֊\\\N>]SSj*###-!,Eʂ6mwii\]]޽ӕ9|pLd!c``]%Č;vH=AVVoiig;>pႭyppT*D^r,pƍț^Rk)))Q֮w_?)) '&%%C={ѣfffX˗uf###SSS򷁬V-J׭[G^{zV ) ~Ν...d2R)x`&2BɱD0Sl{烯8p 9y @:#lW9<3ر<&m~vr<""bxS56eOKDDիR.۾}g}|ͬ,-^f,N[+fws*YpcSjW P|դc{I&'6gggƢ][x{}݄rz @V;3uW_}>}tCCCȁ: 77o^BB˗_~k;"t ~߅U}v2F !k. kk*]X(&tiEQCb)66?/---Ξ=yfKKK++SNgUj۶m^޽CBBZmZZZX@:cDT 3gF%J7oLMtstfx&ʚOKE 8<<ߟljZ|ښGSaɬ`s8F$::Z,޽ ;wcǎls XLwС*T2Fu/f9"<Y[[+ÇyV,kyyyq7l>-]YQ̀ryLL "eT(=%>{L)Ny ̒ڢܞ>}:j(CCCꪥfTU"##;"@:cDT :Bzǎ{1dC͠# s7teE1޺uEHH9W_SLQ횬̘1|rfeeߟu111ڙ|,X`ժUm&jJU3: )MVVV!D2{˗13ej,~ B++6s֭1cJ inn޹s'={u떓S?>f̘5b˗/ 'N6mZCC+O$555!CTUUc׮]...箇@ uByyy jkkk@uE?7'''矴 ̪*ss_NNN{ULVQQbaaqiXRRB,V^^gf!!!Y _RalB_}׍wY[[?}#vOF*@h0xwrX㧥Yf@͟?ɓ'ǏOM4i5ܹs #FK.ݻw/3NZBpr<661~ƌ山81::)--mx/@+xѢE2 3c?dȐ 6H$___ KKK+++[I&7o6 ojLd CXZgϞϜ9xܹ* ӇOH8g{{5kܿ]2o;MMMkkkׯ__QQqGӦM78p 59tRhh(B"Ǐ{xxYfAAĉ۷"L6zhQiiNN#S|rJAb&!V͞=oWTTS%#Ǎ?|ÇeXX؀Ə RO;SMLL;X^^.Y)?a΁hӔ2BAK҂]&[n :5Lヷ7|HN>|l35xaEk; hZ>$PZZ[]^Zŭ׶**K+P-(*(J T "%av:wf,>993N&<'.JLL:uR0ԩSK,Q<04@yVX8`rEnŒO__?...***++kG0DGG(߅K\\\=*J6mDܵdiiYSS6ρҞ={VTTW_}xysssnnnSSܹC>wa˚FҒM6)%d###2*(D /BDI?d'Nx9aQQQxqUUڦMsB~?ɚ5ktuu1 x"^_p?N\`AJJ+$nffF<$b݆vvvIIID} `mm}ر&&&A12Oe2e(==ޞzyyݺuK)K$@^@D֟w5E0꫰0kkkM{̕P( Sw }U<<<֮]@^9*61cƥK0 c3f1Mʁr  nܸqѤVPQ?/O @AP>M}ax}c4+ Gee%ȕ+WR Yʾ鲢LJf{jbpMa``l2@ѿOrޕxÇ'Mp0 DvȐ!ɓ''OaXeeƍ $?x>_^^.k,l;jڶm۶m۪aU B/ojj:w\`` B:11)22rر BO> VVViiixa@@!N41;;fݻW*&''x8tR}dƎ m>|`?_z:o#ǐ۷#;F!!!+V[ZZtDΔ*a=D{G*. cnn~>q(eðӧOӧ0>|BXRR;w9r/]555?&^2O`,Tp{xxc@5?~L&cLKK{º:wwwYcu{ 7nXSSsĉy 0@$ߟ:0vt…?ґOsO??>@]ZZZN߻wuϞ=;w sssO/WVVZ[[>--dQ @4'ϯ3fdffD/jjj"xBVH$裏RSSwرyf===z< ωaN/ӯ`,TpI)JKK)pq2&&&߾}pݞ:}}ǏZ 0HDB8!|JGS.x⪪*9wi\ aǽ{?:fP$?+?SN-YDXdQ @C4T*MOOwvv]\\=*J6mTRR"P$M>b-^˗/^[ӡxш#KJJ6?ZZZߏq)K0&yjkk_'0mmm>8{!!@ݞ:}}='#770&q~E|RFnݺ .455UUUYfΜ9rV^1i$r_vvv555{ٱc^RQQQUUؘ7|rONN622!7zc@Yȴ C $**Ғ5"Ǘ'NЂ RRR^䄗3iff&e%==ޞzyyݺu(711o zDYFWWð/ʚ7uuu QˊqIII&&&VVVAAAܙ'O&w)?@ʁ0JԘ222߿Yf]v ?uڵ gϞ% MH|^=r 4oܸA'Hbcc---bcUVVZZZK>ںZ8h%K\v.44t޼yꎨׯ߸q㒒D"5j͒!B[[[hh(R5kVMM xb萫궶RڄC @AQ&qnvڴieĉOYBZnݨQ/_6P"5<#Q=#ǦЮ]\.-y.\HMO*h^ i…Gbmmoϟ??00 YVVVgggmmmqq/r JWWW9 Po0aBzz^PPpለJyu-^H }D"S!M6m%]|Օ:99˪dEEEC Q2~PSb1BWWwРA~~~URҹs<=Vf1ӫ{Fu9+秥%&&=zraW hﻹi~ݫd1=Gj iȑwQz(hɒ% /^$ unܸ1qDuG:͓'O^PP{-9km̙3'kMT4iҙ3gҵ PS@b^|Y,Ç1 0`={tttJb"655k~FFF+̙3xYYYcƌr)))rz0Ç&MxT7oެ={69~GGGEvJVHzLNN:t(_~)kD"byxxߟSC=z4srrRH8>_^^._4㓤CCCR)Qqq8GGGʧBhDjðݻwZۤp8ZYY?!࠯aŋ |ƍ666rzNLLljj;v,^~0SSS'MD,!!!0mmmE"Qeea}]Y#BYXXX>55U__(ozH JJJjjj>|xWCB544ə ԅaOWTTzjOOOcc㸸8ɓ͗.]_"C^@(677;#/GDDHҔ3336ɕBa{{jiiivvv!WWר(DwjeeU\\>}7O_̘1###חK4.?6/WWWp777r!;" :޽{>51BH*YMO`D7yuF3{찰0СC.J(9;+w`z77Cə̶6r+KɁvڵqFrɩS;::ȅ7o޺u+, x2*++}3tRRF$cQBozH| ܍B"YT.΁|>_f-mbbeJge0$WnkkuxxM~60H$XXXoݺ588xذaׯtAρFf)%D!;"p8.M|eeիgϞ-g]5oz<͇N߈`n߾mmm`eer]2QrvWu$ 90*}<ռyΜ9C^q۶m_~%wy?ŋ/oߎ$0?ӴiBeeeu?~{{{WޭA<x&٪UW I//_3ieespܹDByndmm]QQ/WTTgѺB諯Zz~P+zqKKˣGk=<}a̙37mysssv9RPMOx7l>}#қ1c=,c9EY%gQd1bw}"kǏ;yKh-r9r$2%)"7--R377r%ܹs'Ncǎ^UUD %܃\\\'B3s o߾M>"HDэ?N\𔘘?%K!avԩ%K%;99lGG/,..xĊ~)~ n|>Ν(u(GFzNzCCC###r?@zzzAAA-[eee{E,0CV~l9z@f]]]sssYE`"U֯_ϸAq#D)+zI߈{O?a؅ dR|eOWٿ?xFrj%\.\2z۷oSRt߾}l6SNBFڻwD"?/rssssӻտǏoqظ1x"$Yx<~۴khhOtuu{qCiᱱϟ߻'N(gPW@}oA9.(fۋ/v'O455㏋-Remmm*{OON*Yŋcc㪪*J} 0رc433ѣGs8ggtPXX>'55UNﹹ!`M6ĵh!ɲ~z]]]|LJJ211 "gPBb!s\///CH$...r5 û2{OUV -ZHAi"m(G%B0///,,L݁PܹСCVZvZu3x_G3 ͏P{eddܿfͺv@ HweGm޼YQennn)))K.҄lCC@qpmgYb3gB(0@,XرcE}40:p@vvӹ\F3 Э[oɢ!9mFFFEGG%֭5j{-:5W{͛&Nxر#G;" &S >A.6m˗{7>'4X,ƗxŋA!茌JKKMMMɅ&L ={6Ǐ/))QmՁ@W2eJ``͛7@V9ވ#"ua@ `X/_,͛0>_^^ލa L P---IIIaSJIYYѣGB JJJjjj>|[뗞 N8QTTreN4crr)S(Q߿>==L@G*AoA 0@pu9 9110[[[w׮] 0~߾}7n3ga~~~W~'MTTT4hР+V*'#=uM<Ǐ2DكhȁEEFF[_S?pBNNKBBB嚚?ðu]777YDS>d<ϧSGGGziiioV "p=z, P`sss< VN`Μ9vvv6m*,, RbTPkjj|>ωL111qԩ?swzzzb&<==eM=xrR~~ȑ#)=vtt>uԒ%Kz4r6b``l2@4ĉsE{+-,,L*ܹ/tppHHHhiiINN޿MJJJ\`GV9G(߅S°&''(y _o0۷o۶ @ Reĕ<233{S=RRPP0zh윞s\//[n!XSSϞ=C?{LVM7'''5kbvEp)))$KAAҦ<H4)@v؁ھ}{uuoaa/:u+W0 ׯߤIϟ?p^TpPFZcڵj }WV-=D@% :~8~r/pÏTp_`nn~u< Rbձ,?'*>?\ i/~'|}}-,,+ex[[۶mTl!P8(lT*x{=???u=pwUe=9*4H__~~~344Tz ?~|{{СCBĉ t uK'Ol޼9;;R~ׯGjL0 sss6lի &LH*22rʕuĨ+y zэ7NZ]]]XX8rHXL Ϝ9a؟9vXr6[#ݹs@݁4a„;w‚Ç M|rP7^GFFFFF mmmpʕiӦFFF .\rokvBH΅G 'L4{lrǏ_RR߃:Zg_QM!k8p󓒒ZZZT,'O믿dU`w2dH~[nnn!ϟ=qo-&cwDEE߸qC Ѓokkr]X-`?Q~Ԥdy٬Y;&"9~mҥK:11)22rرc޼y!jgg냱&c)SP ؿ?====&#\ ?~/MzyccSNǏ B[[[p׮]~!v+WD" 1 ;y򤃃edlð|Sn޼ؐ!Cz24H(/zRݵk˕ՔC6mruuUw2555SLwޒ%K\7rII{GyЅ vڅ/vrr*..nmmݳgyƚmb2rOoHKK{뭷@AYZZZBCCG;h ??~M)-kBrqlxxxii))mO 1 (k֬9zhJJ+O;?~tq@@XM GI)ӣW>u@AA'OXPP{-uAjjjlllk'***00PYibII =_qqq9zT*-++۴i~scaa޽{@j2aXyy9"YZZP |||z>@vPťGDδ̛7\x5OOOb]ÇǍpoݺ޽4&&!࠯aקDCwbի]zU,پ};'Tc\7776v]349ã'p8Y-5Ο?g###ssg~FFF&&&N3 MF2Rbll\UUEp?JR5k֬Wdl!f]]] .^H.X %%\M"ta9zșC޻w!x5TK:ydssKTbffGH$QQQhR1NJzӧOqӿ3fddd100 qQQQ1cWWp777z#EV$< ÄBa{{:::r8|ڵkq5꟡T* hڈx-Y1H9MNdCo㥦J3ˌ4aKK͛lO Dn7!#9 R9Ӿ~z"}}} ݬ,{{{}}uϽOa ceeeX,ɡܹhG__8,!''G lWW\z`8C>%>}FDD$$$߬ 9oGѓFo@y{{޽{̙nbxcǎ+/Fg͛7' B(,,]!@@9M!n:e5X]]^t ðիW8p'h&O~G麺=o~7n\}}ittٳ{&@F?g_fffvvvJi366J)m wa߅2/_9sfff&a ,8|03FIkx-477ǟ;wN aR5tgXRR2x/_~g]-pppa ˖-׏PJT.x*ظ~*m۶۷'((H)MCqcIDATA@_sڵ+W6@P\\fCBBl٢f@ H$7n<|0Bh̘17oVJǧ>>>Jihkkr۶m۰axhllp8jN;T@{ ׯvGg111JoW&  ZMeiPssntttlܸq= 46@Z*dս!AYYْ%K233Ǩ,8Ћ -[& }}}Gƍwme5aعs333; ocJL:;;8陓}veĈawޅ ϙ3`j4@:ssseAIGeieeȑ$SSSe5 K; @i/uڠѣGZZZ~wӧOWb˖-?~СC&h28lP~.\x}&@8HȁPAgNHH011a$7oތa# @J$DSSڵk'MX^^@@)%%% })曇r{Vb] @ A/^XtܹsϜ9N/]gg3/ u YO:ujuuuaaȑ#b1^x }YFY :||󍾾-edddddȩv'fffz{{ aÆ)7r Z r Ԍ{WUU:thϞ= Uf{\\\Ξ=X@C5]biǙ3P{V Y+T~ðe˖o;Bᎎ\.A(R/_^hm no˗/r\''QJJJ~CC;(P}'oB3g$ɕ+W233PK, nhhxŋ2YYY <;??ѢE4ZɁ"##cbbFprHp0 cXƃ :wܖ-[MMMO>oŽ;̈Bkkd={ج,ggN BEEEu7lؠ?lذ =z퍟}6A rrr f``qFƚ Qy^^'&)rhg:7c5zb8//*..NNY,ֺu\.j]x֭[C QY6P$T6F/wuu oll wss[J_v횹"%300 ͌Quttّ[NII133C͝;ٳ7oΜ92䨨(D:ydssKtuu%"J)9"H(sv!bDu}z}1V@PTTzjOOOcc㸸8E:0L(3_ʡE/ю#"C wfKRD"axkDeE~2!!d˖-~mllGWRZ+**5jTggFFeȔ.` y)5utt(53&HȑPUdh˚:r}QrCbuuvv:thذagСxyNN@ `ٮH9Ч~G`wI'$$W|~||<}ȟCvv6BחAo0;;AOO/((H~eoo_BZ$9Udhg:7c5zNNNl6WSr +2X9ڵ ?UTTT>%K=Tֈ;whcۃQXXد_]vWjxF:X,}}DJY,CLL6QT6Xc_վo@YWwoJm]] >ȁP3ؽ@-3{B7o~>fvgϞ-_իEEE:::,8&pႻիW Ӧƛx~gM2E(w@#. 5_cccv @mZ[[Ǎum/ hwp8[nUwDz5v̙3ƌ߅l6{ҥwޅ @= hB__ju#0Y/0@킃cccl@Y<@ ,[L  @ׯ_4,9AeM ( @-i@) hH=9@+A!ȁ @O@b 7nؾ};㯦NZ]]]XX8rHXڸ ޕ+#####CNP v` h5؁]u9^G4/Х>vY460@_9bx<ވ#сEA >' z !vkJ$ݻw;"<yĉ}ǎfff" <==l6=+kkduq\ rrr f``qF252z;{122YYYΝ!uQU} ~"ZGy{{s\''۷oˉRN%Nz'BiG֊r!}iD=//_%44xРAΝ۲eӧ~@iSd WhmmerP܌:tёfgg% BQQQ$<<5 J;R4%% !4wܳg"n޼9sL򊔨*Ҿ@ 8rD"£:ydssKO)%Nzގ+!%0 ;wDD"777B($$l== !|~||~=Bח(+~J.(q'|zzzڑ#$/ksrrvuu͕Q䌗[Yr @2?ث233,YRZZJ2HZ[[#""ܹK]x7X,}}K[hȁ@ߤp<#ȁ:#ȁ:k u[VTH;IENDB`libbonobo-2.32.1/doc/api/html/debugging.html0000664000076400007640000001671111546334245015617 00000000000000 Debugging

Debugging

Bonobo component debugging advice, version 0.1 by Michael Meeks <mmeeks@gnu.org>

Since it is not transparently obvious how to debug Bonobo components the following suggestions may be of use.

Read the FAQ

This will cover particularly common errors and their solutions obviating the need for further debugging.


Versions

It is vital to ensure that the correct versions of both the component and the container are being run. The safest way to make sure this is the case is to explicitly specify the path eg.

./bonobo-my-component & ./my-test-container

Correct install

It is rather important to make sure that bonobo has compiled and installed correctly. If you are using CVS ensure that your bonobo has installed without errors and that you have run ldconfig.


Stale processes

It is a good idea to check there are no stale component processes running in the background, check with

ps ax | grep 'bonobo-my-component'

or just:

bonobo-slay

Debugging

So: debugging. The best way to do this is to have two X-terms, in one run the component:

gdb ./bonobo-my-component
$ r
		    

And in the second run the container:

gdb ./my-test-container
$ r
		

Putting breakpoints in shared libraries such as bonobo is not possible until they have been linked in. Hence break in main, and then start populating your breakpoints.

Ok, so it seems some people also get horribly confused by libtool libraries that are in fact here to help; libtool creates a shell script in place of the binary to allow non-installed libraries to be linked correctly. That aside you need to do:

$ libtool gdb ./my-program-name.

NB. don't go fiddling in .libs, you will get burned. NNB. it seems that emacs' debug mode doesn't like this; you have to write a small 'libtool gdb' wrapper script eg. 'libtool gdb $@'


CORBA method tracing

There is beautiful built in ORBit2 method tracing facility that will show you all CORBA invocations, their objects, arguments, microsecond timestamps etc. To use it you need to configure ORBit2 with the --enable-debug switch and then either define the environment variable ORBIT2_DEBUG or use the ORBDebugFlags command line option or orbitrc flag. See the ORBit2 FAQ for more info.


Order of execution

It is of course important to ensure that the component has registered before executing the container. A good guide is to wait until your hard disk has stopped thrashing madly before running the container.


Nothing will activate!

export BONOBO_ACTIVATION_DEBUG_OUTPUT=1
bonobo-slay
		

And try again - it's possible that a debug message is being suppressed by bonobo-activation-server that this will show you.


Nothing seems to happen, the code just locks

Check that you are doing either a bonobo_main() or a bonobo_activate() followed by gtk_main(). Failure to do this will cause strange lockups, caused because the POA is still queueing incoming requests waiting to be activated. NB. this must be done in both container and component.


Getting more information

If you are doing serious development consider compiling gtk+, glib and bonobo with debugging symbols:

export CFLAGS='-g' ; ./configure

If you suspect the name server of causing problems use type:

export BONOBO_ACTIVATION_DEBUG_EXERUN=1

to get debug to the console, simply adding a breakpoint in g_log will help get at the innards of the bonobo-activation process.


Debugging bonobo-activation

This is often best done by running:

gdb ./bonobo-activation
r --ac-activate
		

And then cutting and pasting the IOR it spews out into /tmp/orbit-$USER/reg:...-local.


The last resort

And finally when the handfuls of hair are coming out thick and fast, consider reading the source, it only looks scary, it won't bite.


Talk to the experts.

Try reading the mailing list archive .

Alternatively if you wish to buy in the programming expertise to meet an agressive deadline see: http://www.gnome-support.com.

libbonobo-2.32.1/doc/api/html/storage.png0000664000076400007640000014737611546334245015164 00000000000000PNG  IHDR\/sBITO pHYs IDATxy@G $#r*DJj_kZUQmEU^xTZ xA5(VECD<*$Hcn !nfg&. htMGu(@ۧAR@ BВ )H  H  H @p8@ݙpᘙ'@Z=H 'BLJ[B^^^jBڮ677WWW[nMH , @;I!mS__j``@O&o޼p8<oŊ}\.~" ߽{s8>{neG===OOh B:tp8b!T__p^ڴiS!4BڎuEP&=x!UTTuѣG+**N8Q\\'[VVVNrqqr9.\[[Cn߾}_ާOPؿwcǎ|;v찳322ZjBh׮]˗M6 JKKB{yE>} LCh$J!u'Nƍgll_ŋ999uuu#G,,,:thzz=~÷n݊Zh:GyQV /\pPWVVV[[yfЊ+l +>ldÃZC@@ٳB7o,..& 7x8ח,@ RqFPcc㲲x{{3FɆ H h;ͬusx<޴iVΝWŴgÆ ƍ{ѣ:2"$ Y`۶m磿ϧVVV&&&O>ݸq#BhGɆ H hÇ#"""={&JVXqݭ[v )lW%r8ÇwÇ'NJ>gPTTTUUUyy ?N 9r/^211IKK+,,tss8q"Y-$@AR@:th…...}Ͽ|ܹsqfV BFFF;v”9<**KNN677wwwsΩSb!;)d'OI [Ͳettm!4Z@] hIR )I!@I!@q5/V ܼׯ_;;;/Zhʕ+o߾Xh9xutt4uvBxˋtDH !Wwb!hW )/ ~'~~~QQQ A{I!eBЮ@R eB AI!@_&`+,˄,B2!@{'oBN@R]SLb!h' )Ю)^&`h\&`hY&`y 4_vvv~m322׬YrI!v*22rڵ=J #$4B۷zuVufnnhi\MhF=X"LMM?ÖMH $AR$ OOOt255@h`V{СC3335m6p@MGڝ}ԩ/^:t(VR@{zzzN4 P7H h5sa P7H h;. y!I!VB B$Z PH &&he /@ )@^Mh¨(֗ty>(77ɩeCMB?G]]O?R"i:XZ7X)WZLjjjzzz@+BI!@8C`gcc)Z啯X>} &O~z kMf͚o>@xǎ?~i(i))o+..ׯ:jV֒ X)N]]]PP/@ڲs|>gϞw;$///>߹s={0'Kr8fUU¤T*]lapppuu5y֭[\.\uttQƍ366>|/!uuu-i1oܸhƌ555Bd֬Y_~D"vuu%S@ \\\޽K?722ر͛E6֦ÜM1P'{%hm!/TK.]z͛7ƍ9s&>,**ݻw7ollUA%N֯_֭r==KYYYFŋ/^tm…|TTԽ{?~JOO{naaaYYYdd$3Њ+JKK򊊊"""|}}MLLRSSqᔔ@Crʊ씔rFQڴx"^>V2$5*.._|9B:uJD+@{'A|oWWWs\Z1''[>y  ԩӽ{mllb$UWW[YYm\Zyb۹1} s111h5E6֦nukmK.!  h ) N PyMH YInGtttĿWaUa\.WWWWWWWGG}nܸ1`###1yn]]-y*A_uuu^zejjZYYK33ׯ_SBUۨ7j@XV~ bpM!h֭[|rY#铐PQQ{KR d2YL0!$$X&}K[[Ǐ7B;A C:tСC#F033N=]am:DI!h /Ԕd2Tڄ؜9sf͚UPPP__k|>/$?7o^qq7oUzaaaSLa-pŠ \,((1cƾ}?c !'i oިamxh)ojׄE^$A*رc\.~SP:Jׯԩ޽ɓ' ,!!Ņ:;;ܹ|6,,\ UqFӧbb̙3MLLLLLfΜIJ;wdb 7m`FQtfS)_6D埸mR*I!*_#pM!! {? tV)>U{]TTK<oW\8qbFFF>}Z64@c`/ ,PP`РA2,;;Ţ4V Abbb"oTRRo߾ =Ot0#&..?ɽk#@+p8ZRI W֘%<<?w2@ў Bfh GLk̑ic@{If]緁?,4SM"ƍ366>|/ejjj>s##;n޼O][ںuEIe˖GWWWbuuu-=Y!H$f255555/% ceeKNkk늊 1ϥ7o:88DGG+*))ˋwyϞ=M%m0<ͯ>D^ag_d^~PB^r Tۮb7www?zhĠG5o&£ {+-i/^tm…2+W(**NIIa?ʪG_֭[YYYzzzK.eݻO߈YbEiii~~~^^^QQQDD ~G3%%o߾VVVt6>>~ȑ?chh8>쳨wޥ߼yi1a7+W|uQQݻwc îN@hF1wºs y54&8xX,n߄֛Z{d媍AsrQbVVVx;77Qr,ߩS{ϟm\Z崓.//o?|ΎǏkkk ={IشiP(l0N*''[>y1P޾o瓕++vC*;TB_㍜???Pw5ڷ'UrOhh(֭333BW~B=888$&&R[XXܾ}ȑ# P(xoߦƍnnnFFFK.5HjǙM=euhx={r\^ږ^x\x;j HsA=mvʟ9222ءCcddD~WHsggg{ckkKnr\]]ݎ;c;T^^Nqqq~M6ܯ_Ǐd˗/3FӧOٳgqR:uҥKzrrr:sLcF;w䆒Qɫ_aiC И&$W 1___޽{8p@"\pݝmPlll}}=޾}H$JJJJ$ؤRiJJ3ugnn9sz)9l;::*::LJf//]vUWWz̦I:Dٺu6#F1o9r˗;y10d &CQg(Xqpp{L&{-[C+򎎎Ϟ=cGBj[n޼ٻw+W|̆X#|왫MՅ :v؜ J2QWsV ZU`P .N|4FԊvAR8#_JԒqqq~~~ԦuttVܹciiIkG(p\.f]]]~5ڱdUׯ666'NV\9={r8BP|}}o߾ #fׯ{xx}ruup8ᆆnnn 98tss322Zt)իW[YYqRcSYf_h-RkcmxͫW~~~8h&Z!o.{}Drwwwځ˜T*MIIn"$''x<}Ekkkŕh&K #f+Ǐ>zhjLLLuuutt2=b2oooBZTFFF&ꫯ,ySFVV*##!Էo_M'IIT*rXAAhGGG'5j+'qj?E"A\.ZjM(.`prss{%fΜye*-=jpphEgnnA ѣ>>>bXqdOi-R7cۊ@R͛!xB6O* /--%RcccqZ<߿UUUBBeU9֭[{vbݺuc#&ԥK>ɓ:`<<<Ayxx"4iҵk~-[;̙s1}}}%Ǔ"ضI/^tE1@ 5!T`X3yyy9ifHSSS33(y*;PS 233\[XHq  /^XZZ=z<|ѢEKpuu500Xx1sBk֬!Rϊ'u: c_)ܳgYjmGvv6BWӁ`OMY۷w^٩FW\:uGZm?iҤn…-h𛯂vq)))4hh'fs,ο1_6lخ]V'00~Yx={4h8d-(NI2a+5mڴwޅ|W666cǎtD@S@R@s͝;ݻwѮh" Xt@&077t5+FBhQeeeΚ5k֬Y* d׮]#FԩZGGGG&ͫV Ps߿P6 IDATӱO4hݻw޽*6c}˗\bgg鈀`300HHHx?~'TTTh:"E )h' $֭:::-J266NJJypIL&t /R ϟ=yyrrr@@m4 "FFFRݻwEcO4Ybŷ~ABPhhA!]Q>h!xcmNLL BH VBЦ̚5k׮]B )mٳ9/\nݜ9sgƮ)@}fϞꫯBPqq5kjkk7oެpJ!hs̙3|>˖-k׮t8@cLLL8H$t H AyÏ9uVM4 _ *L;O?tgÆ h<BiB#Gh$-I!h9/$-I!hS֬Y#Y#F8|XX#Z80 )h!9ӷo_5)MZȳgt X)mʕ+r-Lc}7{IMMt,@J!hX)@RÇ_~=dȐ\M=;)))9]]'N 6ŋEEE@Ip8AY-jù7&Om4Eڐ33333yյp7www?z(ي23 jpfݺuӳ2eÇD3'wĉy5*u044LLLӧN}}оh]RUTTf͚`ԩK,믿Ο?n H$ }-j)$==ʕ+Q=8ݻw5CCmݺ&::x? 744tss? Kz׮]e֭[gfffii?#V^meeHBktppHLL())}#GKd%'44?f~z@`ccsĉ@`aaqaj/^p8/^,--/:% }}}y<۷dV[cV\1߰a3gz:v?ɛbZl`,--?%S*|} څhq~-BhŊ:.B111A… E"QRRAFFF-TLݙ;gΜ={ #GB8Hf ̚ɨy<޾x񢵵5#F1o9r˗)oo說hf7EZ[cV\1޽Kɓ  D"===yS[}Q@@ݻ7B͛tBhРAuI}~~>utt!HDDuu5nppTJ'"..<""Jtt#~>Ν;:͌Y3-*Z+W.YM*,Ydp\PкɌ<rcjjjӻy&BtΜ9cǎ%56}isO&-ZݻwT6oL >OZ9|ذadbڵkH$ڱcR[]]MKmPOmE__?99Y$%$$)SI$cǎ 痔0kfY^TvO>7l؀߿///r(J!̨؀9NNNA|dU)f&o"_!ԥKeiI| Bhڴi%~~~k׮i:B>i]R(H̙cbbbjjR[[#-Zd``=83K/YZZYJddYTT-8z;ҥ˩S 0[aYɤӧ<Afffroݺ&3*46+7ϟ9s&!sɛVν'O!djjzŕ cccW_}%4?]v]FB*] jb^UUՄ B[lQw$SpMI!ycB̮]WYYxbM##Ǐ{yyEEE:u*44i:裏N<6mԩܹs5IZZdв璁&077߱cǎ;X_s8ݻGړb#G<| 5 $1ch:v'N P!y5F{8!ERѣ/_.4 Fݻw 67ݻwA\~]Ӂh#4[@ˊhڣGd ~=zH94#Gv9l09@sJ! 4hPff{%yappi޽{7bĈwj:޶·n7n=>ԩ:h,~^z5dȐCLnn.BKsajhǛ wEQm4&&&*N>=w~Aӱ.\_ر!ԱcǏ?ZB+x1cb*Dfff .pFt9 |}}7@MB͛7-Xٙ<!tigggcP]]ڵk;u p`.]4f+++`*uT_\@v5jΜD"Q+СC|||kriiit!ԩSm۶eddQ ={!ԥKΐPHHHIIIUUBW&G+i|Ȃ ^|Y___RR~zA2l̘1{H$HЌ3={V]]fh=^a$Ք)S6olkkP"#8իe2JT X !)ZΝ;;w.sXXX8p,e=GE}ׯ_#:vHӧB敕 6gPXXBhƍA9s!4p@UHDo1hGlmmSRRlmmU=ޑ#G6oެjժI&UWW*&J3f t,o~~͛7w5c J_PuVТE=|>!PQQBRtǎ_r8|]Bh?A!yfPzz:4Y@ARڗ]0/D-^811ɓWIg&%%KRMzq޽{ϙ3g7n@QIBooorOvv6BחI; ̛7x ~ӦM~!ݻڵ+Yݻٺ{Feee!R)ma&''GՃ@sARÇ/kD.]_|l8GJ)BH"{mۆW⤐ڱc˭ٷoBd2|MB $=Ry^{۷OGG+޽;tp0MZ]6%%L*lً/B9s >?I!:EuuuYYY#GWp̘1[<|0000%%!gΜ yAttq604V|Tj~={V__?55Ut@e˖뻺fee?~|رd;v0`_GEE}ww9u^,Dr}uyҤI666 .ӧBw۶mǏ߸qɈ#oh_~˖-fff&L(**¿@pt *o^TSN>|)S;>|8hРך|޼y{_WiDjjj~_zzzZZn[`SQQ⢫[XXw~BЮop֬Y'Oӧ/'UX3o޼IJJO<!h )흚˜={… *Ud```ooh"??;w hu೏'>>)00/^ 7m&GG+W|'N=zm4d ^:`͆@tҥKj:TV A{ÑjҤI﫪ECCøk"޾}jF*7. ))INRڋ@U~i1`X]tIHH?~|RRm`Ӓ lӦMgcƌy]`Z8Ty򥥥Z`p8;w:rȐ!C233֔%-uB/94ڵk|~3+i6]__zA5Ńz䉧7|Ϡщ;vwǎ[uZhs=X_Žy?.͎[or|iH$֭999MF3$~˗/ծ.\rBFz:PL*VWW7|괴45@|{\)$&::?˗///H yȑl??_zU}AR>>ʛ>|xrrsWPP&sH1)$㍜???>~5#S P|Yn?Zzy8HO=ֺP(xoߦάƍnnnFFFK.5zGmY9B(<<-332۷oٓ2cf26l`kk{̙=zx;aaadi 6A ϲXZZ:zhuM?zAkjjT8^T=e>F޻wݻ$Ʌ  ?mPlll}}=޾}H$JJJ"(66V" JSRR;iP[άk׮]111fWS]]Mìg֭1\{ݽ{ ɓ'2. i26e vHC鯿;v?&QWW eڰ=^a^I!A .N|p9IT*%º:UTJ-gnnAm:::QGGlD;:D8f.KkY.Yʙ{X+r4PqGH< ===|۔9s;VshG y9jBƦA_}B裏>J gϞ4Xx3f̠`IIOT9ݜ7o^ll iEuڵ뤐 XܣGW^ѻwXjKJJ𶥥errX,޹s'2+m B}}}j"(!!uC?HcrMAdyJ!w$=BZ%Bj̬#$''\ >Ӏ}}}OOHifA#oL +**hu?~loo1bșԑ~)))?iT*>>7o^mmm ݹsãQZ7 HHH:tjT .L< ֮Xё1|łQ @ޓB ~ bx;66d͚5$KK5kP455533<j3.}-Z:_bhh/cEfdd1+ >>>x}3+i3gd;BZAڤ0>>䧟~RP.]DmԔիW+sͳgϔ)9sVZ|jT2&W_{nΝ'_jY hIa;QSSe˖޽{7|cccׯ_w5$$P,Q Uߴ"ձdXTTdjjjddt)WXVVBhƍWYB\$$$8;;[XXl۶zzz>>>B^OOOMLL Yϝ;Gd8UVQ߽{7.|ڵ>}u%==LKK~KKpSSSkkx{ .9jԨ+VZJ^CAܸqW^<_~x:|;wѱol7Y' :ecSo/7 ̉c ya*?h )lBͬXB%Q)2$$֖ѣW5q!SSS-I%$ FEEd2֯ǎ52I$ KKK܆ BDqqɓ'b;>\811+T@PVVF3##nذA$%&&dܺugϞ=zdccsiX]_~M %''G 6tY]]ݻwWWW999rԤ9::Yikk;}7o$''綳ѣGb'fϞ-Ό дiӞTy{sy{{#Sz갰0uǦړ͜9sǎQՁ\c>|0_ǎɵJ!WW﫰f,X—+H SSSE"Qff͟baÆ>}ZQRV<Z&h֓'O>cPӞgT&&&\L6k,1+H +++twn1VVVO>tԪ'UVI!PF!"**jɒ%#*$⋸8C~V2ӧiiik@>@8իU" =n:}}}}GGGs-MH$ w~E|I_YZZRl4gm3HR@ܹPYYꂃ;uo>aqqq\2ϖرc_|A۩-ԡ r PG7Y7jۘ]S7j3\Z`=SQQ!ӧOTzAeWR[_U3šwwYf;ŋMGlשV HMM%y98Њ+z%?dvvΝ;oNOմn"[(7Nf֩O1M]]]DDȑ#'pԨQA^ RŇo< 667&u)٨:$姘&,,ƍFںu+N}R o?tƍѣG M<uѣ͛7j (oٰaCii;B{/_lrmO>4hBTaoL#G| kƔy A7nիׯpܻw xB111d >wJݻwۛnܸڤݻw׮]ӧ^.]δ4///ZJqCJJJ,--MMMqޅ pIy5jԊ+|}}VZ`ؙZgeeeΝ;7 ۶mQRsN5Lo߾%)J k:yc*?3LzzzÇ;wIt?QF.222:usv>M ,4 hvxRRR׮] f͚oR:A|Y > N PU^(ɢU\|!ᑗʕL =*O81{l N<)wCe6$fddp 6DD= ?njzGlllN>-ߵkW/ܴi>Ξ={길8''' V\4GGG0k7mmmO͛dCCCr2ZgFFBhڴiOB觟~Ʉ3-**Ǐ4}yoԐ a2L dv?֐2ZC|}}BK9m43g\d+_gW~ =x`„ &&&~Agk Ɠs^գGOM &N_|I^]TTԥKf/ !{i$/|ڛ>n8]UUEʄ?R$4:¢SٳU8qv]jnmȑ#\" lقbׯ;w0?o+ˣ]ys.'O6lޖJ7a>u5$ MMMٳg 8p"L{n/ d f9u*]n>|_vCרÕby|~pppyy99tu2Ss^]lYAAٳzZ%{Sߎqqq5556mZloggKf999ݺuk!#GTUUedd|-wpW\IDavCmv2yZgAAPn:99}~W\4hPdjO1m._jmm=g|c9u缚Noϑ ~+Ŀ?}Sz9s{2=O}aa2$rzzzFFFx$ 655 777ǿ2ajOOl!C"/)$Ԑ>{, @OOOt%ɓ'\ kR*8p 44TUEDD?{g GB!@ HPQA=PҟVV * WUK[9U *z Grg݄yc̾5ݼ;4vڵn:x_v^u]j-ԽxyySRoJtO~4cƌ7o溸dggw ##[nqѣGב_}U@@Ν;qS^ֲW\)/k=7o{yy9r䯿III+#u]j#Yf^~6Gc V4i}0 q db1`۷os86;~[n;@ &"=۷mqqqm9BB>466޾}3,;99yxx}7_~eGָrpf @ $:=(Ȑv깟#4779rѢE/_e ӧO_xQKKڵkVVV<?vCXXIu:]ﺲ2..T^*ԩS]"SP d2QQQw6YE!N[ʒ_FRCCݻb/^CX"*wJJJl6ŜLLLev͚5ݯO466x<5cƌϟ;699kd9rä5qRjvOY&?0 %%E. O?L[?mڴ7nCR=GEE??HMMlYO}}ĉo߾ ww5jԤIҺ[ZS9.B?HLL OLLLRRfO˗u={,33۷?ϗ=YfMppjGZӎOJew`٦_ Z~\4dffZXXzzz Ѫ߽{z%)E /^=`Sӳ핔srr/M6lss,E Glii ޹s'%j pڧN­ўKJ'vZeeebцqqq sssUUU??6U7RTTR4^$ԂœT 2:*gsX_pxj#yVM--.^{yy9|]A,;Ӈ b,--oݺx%սtYPP0~xeoo۷o#"" 544~ss3sxx8<]MM0`V ׯ_TVVXiӦ^fϟ?ZHII#no꧅'TUj puuݶmӧώ;$:tȑ#N mՌ311>t萞Ivf=@BB5^bɓ]r +++L&L`^~ƍgΜYUU~ollEp!zmDII>hРP{{{=uuu ptt~:ѥO>QQQ$"(!!A৒%MJjjj477'%%=ZWW*z $11q„ DTJRMUUUZ`bbr9X|ŕ+W{W3?? Phaa,ۤ"h^QQQZZZMM͂ 0  ]˗{6 ;؟GboogϞK><33S.⫫q5DO=6*))D"@]]0j ̉`0 .5JKKg)FZtWҹt)ZxjllSTT JJJuuuҋTxAFS(++744X,|m! WZ5k,e۴w.nqIH|D":aVVV#& 0UUp҃[iiiٽ{7ϯ KP {C۷{zzĆrʀ(abttL,++ׯ]]]}̘1w ܼy3h>w`mAZkjj"##Ǎx𡞞^KKǏ`6kkk@@ɁV^M@O O$˗pXRA˄8q6w$٤jڴinf{˗/7R{VVV8++ Tܑ\__omm]UUn``pΝ}644E@ !yL'\b@} :4''ٳg˗/H$ )'QQQP "H2L\R:TDHF2VPz(Zx6 Ix!>}ŋagsYc͕+WMFvQSSSx qǽsEGG^; . q 'OTUUhjI/'hp)b݋aXLL̟)2Dd6.n1yܐ55˫ݦhQWWߴ,,,jjjg VU鸢_'%&&fԩ   GTVVbcV\\ GaL&sѢExJnnP rss7n\iiiKKKDD[\\liiaXNNL!NmnnfT?^IOZUj*pNJ1cFjj@ طoޓZZZ555|)dIEJ3==pmߣ5o<ޑ =SUUuL8D.⣣,Y"RK у ) { sttn!=[[[<{L,_ti…1> 2^>Bpܹ(/_,ZH^?~ocY^[[[>}z/0 [tiMMMff&{18p}qq1`ԩSccc׮]/***/^xb,&I"@<Zήuuu2dHFF`ʔ)׮]L4 ?#IEOUZЪTSWWW]ݽm4119{luuڵkY,>NC7B\'}~7H/(**‰}*?NMj͛w9sE|\\.Gr!zmx},;RPa]Af= IDAT>>>L&sȐ!ΝkvkQkkkej}wMMMfffL&׾|… Y,mRR̙=deeesss|,fee%|Iـ`;McWu޽CڧI޽kM8JE̶[bOw AnƏ-1ѝ_~߾}vZg/,,;vlQQQ;?uttrssaMX<==bOܼybΝ;GG&%%}J!SF!B^NA=yu֬YO>C-zqܹcoo/Qz7|boongg݊:O1Q:x455ܹÇ߿.vԬ[.220'OՈX,677 m}}@ ^z}@ۇzxx|7r1 ۷ɓ'/]r㏁677ܸRQ"S__ߑDׯӧW̙3bĈ˗ϙ3ʍ@  AP:u_bŊB@–/_NJĵΨf׻)z=uTA|%KgMKK---\"wDGcc?cX3fx9رcKX^^ޑ#G>LJMjv눴 MUUu)))rP^^`0~'xd2e9UӦMqF;$؋'ءCϏݻwwwk}ؔΙ3gڴiTXX(_rdݺuϞ=|+\ooo]֬YoPnMKfϞmjj렠ECff <kV<ݻc/:DWнWz :MMMᚚ)))ݼyS^[ZZa>tPKK̲hHOO6lŲu˗\.OCCCWWҥK0gAAY,=M۷pjCCC ?}~ naXxx߾}?0@AAf8^~7gbb}!===I:)))vvvmauttB%Zm6>ߧO;vH*9tPee#G½ChmҺMդ'-v]eeŚ6mիlHHHf+VIܸq & ;ׯ_qƙ3gVUUikk߿_.qmg^tAu[PUU-zE\xh\^^.),A'O._,O8amm UTTpĈⰰ#FE"Q||<bffuV>xVK0x΀†cccP(pvvBRbb ikD huYUU*&&&Ν/^\r$B\\PPaɓ'=z#!PTTdddVSS` ÄBV&yoxf#GٳgҥÇ̔j\$m$3/:DgAAgÉ]q!@!Ε+Wttt0 /$%(9۷{zzĆrʀ(abttL,++ׯ]]]}̘1w ܼysGGG|JKK&<7ڴi$kkk@@5xիWֈZ/꤭˗/UUUƵ7ysĉjw$ٔ:YIO)uƍ<|POOfff@BX|9\$2_YYYegg㬬,QqGzx}}uUU;w Ɔ1Y{ElM)D||WQQQ۶m 1 u|ȬYו3ðѣG38荶?石gφpV{57a)))\c=<''FCC`;;;&)IIIǏ'y̋5dɒ^ijj?ŋ;hJWW766vdY+**UQbbbNa@ cXggg *++b1~1 +..ƿtI3+LE*++\R@[:&mܸq---݊ ]Ԕhubf)(( F6RjD%I:i.pNJ1cFjj@ طoT׵B\W\\ "|6m .ܓ'jHje---QQQ̓ᙙ3UUUׯ_̄L">::zɒ%.v!} Ö.]ZSS?~ {_\\ >|xzz:45uصkNjDŋ/^/dFSK'ل]WWwϞ=0ٳk׮eXt_QQA&q$F~$uwuuߨݽRlR]צj*M6 2$##0eʔk׮&MhD"/'jHjeT>???Hh;I67oޕ+W"̙#qqqHY{ElИAAg1(9.lnn>~80LIIr4tR5 KPlffd2/_vvv^p!ŲMJJ9 lnn*Ԭ:::/_y&j*8fzjahK'ل:tH[[[KKkÆ GNLL/_244 "E'=!!w˖-_VVVjDgZ/II[wTn``2iҤGIIu]Iԉ'&uu7o\W?\tIWWWCCOKKK(ɭLmllf͛ ᆆx{E%7~ !UV)**FGG˦X,/TTT8@$u vjn+{d/"77{ȗv^^^^,AAῠ3^:HMM -iGP8u˗/WUg*n߾ߕ/N+ڮ|:Io>F >Ԏ?U fkOHH{d{ٕ|zme|>wm6 ön݊:ݻwEUc̙3nj3p@|w֭!C|?~nQ衠'ϑ͛7Kpz{DaXl٬YvqȑLJHD8vv.߂y<Ś1ctz1mڴ7ntWB.,׷&%677wف?{_~p݄ )׬Y*G )֭[ٳ̷oߺd?|,a222LYBBno߾AAA&&&FFF0=>>Ԕ円8 'L $D˙3g=jhh7ORNzV'mdrp7ыe{^RPP055_%bOJ)Nv%\.LH6 vvvʖgϞm.sX<00v#G e殬رceee'OO,8qQWWw9sK?~411IMM-/[ѣ6!!!T񉉉&LRRR D***R*BL (,,lhhHII166mbsBP^^ndd#F! Z'mݺMiDFmfR<@ z2hGi5(466^zUSSSʒSASbqqqEa–g`7߼{NRfY+Vڵtq}}2`힞0Oܹs' "" 8/**n`mmM8p`NNN𸬬 1MK``͛i?jii |>߼kӦM+WDXTɅcƌs^I[6Zv4i3}EEEFb2VVV;VV<חd㠠 rO>aخ]tttӉD##xx:I @ |>޽{K$K9s_|y=CCógR]GiaaѧO͛7C RJG`0-zƍ~W^x"W~פׯ_ꫯ7o[ӧDP_b1((~-644Dڄ9--- mmmKJJLsrr, .r ZZZMWWW&%%w|@46ݧOڂpܷx?x H҉IUI۰ao}G|3)8466n.\5j?PcccB*t6URRD"JJJ$RJdx}L9Trss\.U'uTyx~KqСC?G>}t}}}\\ӧOtKdffxǏZZZ8Avv6,i@!M޿ xMMM ÇSJ8|/ήuuuCcbbrkײX,ؓ|bڂ $]6>>^$UTT,^xŒtJUI|\\ܸq㤸@pИ%(AWQQQuuux6&Kxrb1$c@@𮢢(h2ӉJp=*K*6($A98/~q}}KDkTDTyxVKo^q @ i'7|s1XqY¼Ç+++$''d333&蘖|… Y,mRRnaرg& ( qwwOHHݲe LԬ:::իY,a׮]:tH[[[KKkÆ GNLLĹ|w}7d=deeesss| 7oބ]jUMMiD)F˓FAA~gǏ'M X~=|oVWW@kA!4rb۷op8;wN'*}ҠA0֧HVsYYY)))YZZoTkTD TyfffpܡW,kȑ/O@:::޾}6(lZv[퀴b׮]s⽼ºL PP/Eaoa߾}rKZYY'P }c)%(:u˗I ^^^_}UCCCE"۷[QD;A!ѻ!O:Iڬw>~2a?~Æ >|#>W3o޼iӦ߿_>"mB  :2rH}HHƍMLL[QDAA!w:mPSSc3gvNO>w^b߼y#_&xAKK _ѫ#vA :СC>|;b?¨.b刉 "`XYYYYYuM`l6iذa3g3fL7E 3   o޼wK.WΝC<s>I¨wW݅B!iknFGoVZm&7<]__;ޫoMrB9ӫ I[?C ƏgϞUUU]zuǎ3g$پ}… 8&EjYh۷o9Sߛ;699ܼcCCC ~¨6;#G>|5c:ClJ3ٍ-hgDQillx,kƌϟ??`k7W^eiam6qdDf~sдinܸ! Zpg&US}L^^^.I㮝@AarƍAxnXψQd nǒ\а{X,==ŋ?|P. 3fܹs„ ݻɓ .lذaرjjjn6.nom"??ޞf͚R׬Y:UaMl~>u={,33$H IDAT۷p5+Hwy7 ~~~ҳeff~ &m]՛Cvvt<ݻm* }ɓx{{Èȷ333GA#KBAadɒM6UWW_vڵk-wP__?q۷o={6//oԨQ&MJKKniK\\\^^/=x`%%%RǏ?[F޴}KKKAd2G Ƈ\.egg_|DGG1|p++T ޽{qq###"&a&LPQQm=*ð[nUUU͚5Kzi E(l޼_NNNL&,!!攤S 0 555$dlw7((DQQȨՌ755r_Vu_fsUQQ>} $y!(}=J[ܙ3g=jhh7ْZR]*I'_v`0*++ %0,33sѭ6$I77nبz{{߽{ m ø\.u,dff5 0$I%p̞=[MMM__6q}OׇD"Gh=Enڴfgee9ikA+CR?ܾ}ܹs[ZZh閩M*=aIzMJMM% nȲ`;v젞8abɹsbŋW\ ]\\V\L$'NX[[E"Q||yGGG[}}}Ҩ(CCCf$mݺ$ITmghjjzU [ 1bĭ['5$IԛCQQQZZZMM څBTWWlR鲄1#Fy&<D,Kx栭yر겲2ooo#>sK.>~hbb K5UZЎ&"sssRR ðÇDABCCI.}ѪU yYH̃aXTTTSS122>JOLLTVV.O>QQQb֬Y՟3gHjI4hSR-A 8;;<+Zt&kRiii 9s&Ábmm-)5.\̙38zjb 9qDuu5k7oLfcc;ooz*:: &O͕+WcX%]RATo N|qZ/_TUU[2 6i^^^6mTwmR7nÇzzz---?633#!yZ/_jhh|OܶlBJ/..nnn.,,>|܇71aOx ^5ZH1B 77{bڵ8T^\ZΝ;aaa˖-lrҥr.߾}KM/**DiiiꫯD"Qrr2ŋ/';vϞ=b8''ĉ0… !!!02.))177yTǎDeee[lvd<]xڝuRJ8*++k7n| ƥKjbAߦ())RMSSSaÆ*kkkZImI a!$U_ L>`,ZÇ4AT__߫WիWϞ=[$[K%2h;3F$QZRR3ID9vC9i,wr666̟?NkFDrrrrrr"""^gN7#iۇlܸ$<<ή&>yTTTFX@sݻw^rE}F~%--ׯw 'i>};vر?֭[ݭ@ Z@ C:tU 6v=|BM# oG;te˖W'WwȑÇһ&";vlrr21\pmJ#՜6mڍ7}:Tiۓuuw D7f͚`>7]I~~>i$v.(@.ГBD& n)= 'L 0 {]߾}LLL0 prrb2fff YYYL&sԨQTݺuj֬Y--- (,]CCFFF'$$DR]B͛9\Ve0G`888ܹSߨդI6U3>>Ԕ円r_x!E!LiӂpԝWG :"aݭGmˍbbbbqXX؈#YYYyxx<PXXАbll;wN,_xqʕlCBB:'L,UTT$U066VQQ1""… <Ox}}}OOϪDUUUI^&MZ^|'B3fKr A; z=L&s߾}>>>K``_=o< Ö/_~z Ê|~TT;vlmm-{X>ydI61 u틋c9$ð9sxxxHљ@<](~jjjRE&MZ^͐۷aǏ$0`>FnO:#wB:zj`` fðWWWbXS^^pB.t̙H0Ғdʔ)8''g*=}tx, p`jjjԂeF6kS5\]]aw{g%%%?^+g ŋ+_7+++b1{ Ê-,,7%""8cwƌ`߾}0&al6-KvttT)@ccc%ŗ7. jڤMլlSSSzz:1(^dOlmm;&ʶlRRRaXII )y ƥKݖH$%''Ha7oUKJJ𝝥j啕gϞڿƍiuB^xD@zL,4GR5imR]צjx 6TUUY[[ gѴ (.vN8p&MdnnÔb<^ٳŅ㥧[XX'p &L|{p[n߿@҉Hdgg;;;766r\//( Z//C2 |;Z"R TMZT׵_v ŲURR0L$mٲ#@`ֶ5:hDO@[[8ٳ˖-knnFqJJ DEEݻwO^7"8Q)00P.z?ûw$$dƍ&&&vvvݭ@PPAqa455€K,133#fؽ{wRRRwb^~䌖>6@ dMHH G3gμrJ@@5\3۷L&o߾˗Aall#?:ujҥ<,KQQظ0#%d2;]:@ "z17oAKK+55ktuuuO>͟?֬Y /}||?Ν;TR ވ5L6ƍ>ѩ'Dի{ZZZ0 [~y,,,/6lΘ1cƌu{k֬ VUU)kj3U?BFP׮]!g񤐴Tt\R,t+z`CȫWbbb~u͞={Ȑ!~~~<߿uVii)@__i<˖-+((HHHضmے%KtZݻw} 211QTT422酅&LPQQ0Ǎ8NHHaNNNL&,!!ðׯ_s窨L>GUUubv֭*+uKKKKJ@P(ټy3ӻ|2T  Ƈ\._ ࠦsNIuOhrttd2F KjS]ojjrCCC'ERGIRNCIqjNjz. )  h p___OAecc{&ͶUF[mv~g$˲$Ķ  a2-***j+G=z8q"&&iLL 麛>}:)P(ᅨ;[m;I-'{xx<O,//722aaa#F9E"Q|| !%% N<#&),;$$?11q„ DT***FDD]pJǻ,{zzVUU%&&J*|Bm)ɹsbŋW\)I?m|'BnSv:D]] ?رc6QwRWWWlI@tVզsZ ?~#FضmfQP (ţF9sfNNǏ_zf``*}G R9s|ܹ;yId |>)]re@@<0L,++ׯ񔖖MMM@ddq>kiiy$kkk@@իWJ@d힞𸡡/$yfb/_ԴZP];ĉ7RӶ)Dzxx/0kӦM/MZhs:_~/_LLLo***455臘666.M^ rSNQF1L++t vڥ/|}}+++{eddVssGMH61 p8\.Ӵp$}DMg0wӻx񢿿3g$'ʠZXXܾ}b }E>}HvI'R#BF"x`}}+W >>O^n2[m IDAT\b Ś1c)zee .]Ncggwҥ_~ܹÆ ʅ%%% sWzj`` fsN2f߅t:Nq޽{ʕ|JqF=|Ç~X\\[q̘1ܹs\zsdo׍^^^}]GGݻUUUK.?7f._L0s %BIR~W^e'og'O\h`j&၆oN=sϟ޵k)͘)mmm .[0 {{?~Ç dd"eǴSүE_L(777,,%11PRhD"EQ!!!}}}%%%Pm >Ogln ?vМ 9ȍDvvv]]]E7ҥKAܼy3&&^MTӿ'_$ľg: uvvn޼9--XcdzgϾpgà/믿~x'OJҪO>dĉ) .//(g)(((*""~!iӦwvvnkkLN@pɊ+>|x{A0UX,eG~~9&N/W&%%e̙<4c#;;oqaSpB̙3eʔ}q_s jܹslBfffj4NjTXB HKKjtcll#G"""C1Ť_KI-}?;I[^+ y s N(=G{^zg?D"ߺu+?D")..jyyy=7ПX Ri__ &/Y$&&&999++˘c1Ew}ٰ*88N.3{۷eݺus-..(j„ oߦ(J&ݺuސ~!_~͛uĉ-zƍYSYfܸqA?)zG_@:',*j$""G/1Д8qeʔ)6l=… 7! .裏/T*8q5+WMѰA3f$%%1444DDD0ezd;vPOC燸2 @$)*M&eB1Ť_Sbfk>$o_^* y0& ? \.J^MˍDntt4?֭[7P~?'ᩧ, -PFF +JLL|}v~ӟԘ7~Л GGG7E(++{ǘsA1;}Gݻ3f̈mnnk;Z'vtд/^| sgaΝ;T*ZmeeIKsg48CaՇ~I/NKKc0fd899W=9::?9rjjj2wf0O yLr9::**  <"8Ca-Ƴ}4Kjj*} @ _܉A[[cKaa k9ge+0|JTPs͝;yΜ9胢eddܽ{wٲeΝ2dvƟʹ/}\\%ƢpgZIV*ӷnz1gy;wxʕ}SN o~dE]Te:uJPO+ɡ-6[>k8onG/ʶvڝ;w۳g͚E?Y(s~s3`֞? ^vڋ/#<gϞ-H|||Ο?&J-[&H,Ykooꫯkx{{$9qDf$߿/Hd+++w /M&m=0))I&:t 0z%C[v$'MtDgggWW׬,}i?˙j:88X$1tSptƍ^^^ҢVLMC}묠 j~+..9ߋŋ^^^6m#HCϟP08`Z/b{{# goݺʕ+A\~}ҥ[lwަMz~EEE555'NNohh(..gϏ]f ݞb ~z;o@7>,%%EQYXX<6 v:lqq̙3'N4ܟICpntgϞSJhJ% _{ʏ̨ vvvOBP*Jyrfffoo`d)FRb2scm >^1>^j9[{_wvvedd̟?&Mkhh΄_fv{oӦMg̘Q]]߅j___s0v c8NczA${C[6w~DRtww1Z(F# )?2_MML&%8<_֖o!0$3wͿ( K߆hvQG}ol8uo~ߺ߲e EQGYt)/K}LUVT*ve˖}ǜ%^|111O 13fΜI^}}}Ƽ%k>b͛T8Euƍyyyԏ?9q<ёkxO#Ӣt:?3f0эLuŏK4<7ILss^{366ɓ]*$Ry<!-} t~xg;@(j֭NNN۶m3<.KR\^QQaxO999>>>"t#;ʀHP(8#{zzgNpp9翫V mcc|ë1_ܹS|3f8tPggg^^ޣ>zry時""" 3񝝝#ZNӦMkmm4M߰|} k׮]N N;sL݌) \2{l;;;__sэΝš_|EQ&L}6EQ2֭[E9;;ߺuK_͛ٿDz@]f͸q`׎/rQQ;1Fʕ A'rFz^\g9 mKl ,v~qɂ T*"*%K-^iywV^Ϳ!((=7\rʕ+-0S.d4l'O> t:]ss0E!XwޥK^|===˗/dz@F=N{S'''[ _yO>s"e=(QZZ*H222 륗^O]\\O~ak0ERT*&OMppիWwܹo|2>{w/CJMMULK\\\HHo~3f`1{UA$$$+eee3gĆb޼yΝ4^re)))g}ԩS#U"qWxxxYYYiiwNNNMMMymذ^`7>Ӝ%OކQ(mmm&}=#I;w?>))vԩtW_}`DtU \]];݌ )3 $d2$Oo^VVv=NEHL&T[[aº/!!a̙Ç:nC766חto ȵk޻wﭷފ&ۻ {oǎz ƬϏδf:+V谵~?\h/F^BB¡C?8qvttd꫟'og}V*KA~b{oKAďEy222rO?`L jjjg:Ll#1+fbŊ?OO>|'k{-Z0}s^_v?9zO{=T*upp ǧ;))^&S0&(qㆷ7?gφ?cBsrppχ^vww+J . "s3>>%%%(9vrrt//=cBdaa!8{lZj7o̹m!c,]FDD D2M}&M趜 OF 4JҾ>cz;QRT*N%K/^̴;W ԿXt:kcc3\r߾}ƚ+낢Y_ZpaDD_=h[^v-,,$IV;nzW!n88… /۷g͚c8 ^~m@_е)0R<`m۶T_h:6y䖖 >|s>#y…7nܘ={ӧ̙3<̀lJJJJJJ tINN&XBwܼo߾>̷i…|SO=UTThZ600iΝ4(X~ť<ӅǏ7~Í7~AAA.]b`PX4S:.!!!))IAp\|yΜ9E]x'b`p `kkgϞnuxTV $i V mϞ=ƍ3W02 ݧ$I$mmm====:b9 ΩS X,ɡ302m4PmmmWW[!Xͫ)R*111#РEEE%$$~pһx񢗗æM;ES"Xv$ɍ7{yyUVVQ |*?+++y5gXi]tg?ٿɓ's>0ҍ>>>tV[TTlΞ=S\\lggG>sĉc:88dffvvv &Ǝ̨ vvvfv;#4gBP*J2003^@@@ZZFQTt};EQT``޽{R4RT(#0c>*=ǯ99 B`rwh!B]xe˺ߐAlV(FnݺӧOӍ"ѿ/XftMJ>aaa...jjjd2;>󺧧G^ 4gH$jDD"@Ƨg8?=[[[idh42ApA0)bt|*Q|~0ڵkA,_а_W̙3TE!EQfͺsEQ SxQ%HZm^^g?5?&Z"[:;;?cgggQ,8МVMMMe(~3ӟ%8oXA0Bc"QaP OJ!I0ϰ T׿կ~5芰 ׯ.X)B8KQTCCCDDD"a6޺uӶmی)c!vN#?N7ӷq93*++D"Bw02=q镗{zzӧ :00^w,pRT.WTT {[؟ B.K 64S ((s€<|pڴiA޽{AJ>֭;%%%77ҥK7ʨ 賕&VU.TT" VlVL88#0oɟ~C?3g4In`]1E3q^^+յgϞO Fco^ ĉ/rWW׺u}]sVE!9v˻7nܸ{n~F3X?ٲe˟!jii1IJ``8RR֮];İn[hѡCƍ7h`հR`}HzEHD\\ܽ{Z-*BMƨ'OǏz3; ptt<}9sL0;;MA$''"_ GFFVVV$JzCBBt:I?婧ZfbUܕBZii͝|gQQQmmmC_/ܷo}c길8>}.11Ν;֭o@X)09[[[˗}p׮]o+Kdr܄1(0=$XOHH' `XD!օO0m۶  ׻Z*==]*8q"22H$̌UV<8X)01+V{fٲe7n Ir„ yyyQҖ,Yr1$)>X)01}˄2={~ {faP١(̝X3TUU$i.:n~wws`E!EQJ[,aNغ9> NR(b'''g,_JJ8e\:XwQgϞ̏?Xќ>},TTTTBBƒ ̝q ?~xsԃyzzAAAvvvAAAj $'MtDgggWW׬,ce_l߾͍+8u|IIINNN2СC徾^Er+Hܸq}g㺺0z}… ATVVzyy988lڴ#ŋLONj:88X$1m53'؍$8kKKZ2eJvv1$'wߘ5իW=+CYQZZjH$+ RޮT*)""%%EѯϜ93qDce988dffvvv fΞ=\TTFQҥK9BQTYY?ސ JhJB(*444##G0B`bhT*ݻ#?>?}S·Ǩ vvv6fP 233{{{wߘ5пɸ<8b]N>"HRhD"EQAt:]kcޥ sqqILLdT*mll IR0Z}}}HHH___tttII {s 8iD$ikkɞ1F΄1Ə_Ա>nSF&3(A̯7fg y}#f_]7Pս7n܈g̘q ???m̻A7oү/_~…>l׮]>7nLOOoooˣ~ڃ'}zQQʕ+͕X+3׷w^///;;<==n D 0q^n||T*eZd;v`uVGGG'''"d~zT*+**(jhhH$RtÆ Muyy=}{@֘]_p?| cD"ooǏ3(;Yo`p~?>GGEE555p$X_K.Yc|2oRxH#IرcpF'IR. /++3wO>=gs'`Rc###+++͝܁)--?}YTTT[[[dd$ aF?[[[˗c@0&$@0VD"ԅ(1u!>( `lA] E!9 PXE!Q P؅'ܼm6^`{ldSX)cŊ޵Ylkgg7F0/ B<<<-2JJJF$KB@Q( B$i,gH`@̾Xlb E!($IH$~~~;wtt;EQMz }ꆻ M`Q_j4V 삃?裃-D juppH$b|跦NO5..N,QYYi&3'?NRRL&;tPyyo__AEzf[~VmOŋl8uuuaaab… 3rɏϞy(8640 :((.((HVӛ$'';;;O4ѣήYYYƼo\Ћ0QZZj#-tc``޽{t:ٳg=<<233{{{)R(*J(Jh8)))Z͍K9r!'+HKKh4*6444##@voK9Cp<(8Fn_ 98) RޮT*ٙѯϜ93qDc7|F1`2- Nn sqqILL(J$i4Rtww!$Iz]Hj)h4 tLCBBKJJ؛sokL|[[[N"ѿ堷җ?)8Cp<(q o_ 91BɄU0ơ(1(Vsݲe V]]-H(bD")..jyyy "--Mզ Fcü=rHDDg+mOjZJaff&Nҗ?]BE▖}c`C}ɐITf31 kBPY!g̘Ĭ1? d;v(:00^(j֭NNN)***rT*ݰa`48붶6LNVm_^^iooOIQTCCCDDD"6?]<RT__v2 @$)*}շ_(1.<P\h&n`R]zIENDB`libbonobo-2.32.1/doc/api/html/misc.html0000664000076400007640000000401011546334245014604 00000000000000 Miscellaneous

Miscellaneous

Debugging
Common Questions — Find answers to common questions in the libbonobo manual
bonobo-config-database
libbonobo-2.32.1/doc/api/html/libbonobo-bonobo-persist.html0000664000076400007640000002403111546334245020566 00000000000000 BonoboPersist

BonoboPersist

BonoboPersist — Interface for anything that can save / load itself.

Synopsis

                    BonoboPersist;
                    BonoboPersistClass;
Bonobo_Persist_ContentTypeList * bonobo_persist_generate_content_types
                                                        (int num,
                                                         ...);
BonoboPersist *     bonobo_persist_construct            (BonoboPersist *persist,
                                                         const gchar *iid);
void                bonobo_persist_set_dirty            (BonoboPersist *persist,
                                                         gboolean dirty);

Object Hierarchy

  GObject
   +----BonoboObject
         +----BonoboPersist
               +----BonoboPersistStream
               +----BonoboPersistFile

Description

BonoboPersist is an abstract base class that is useless by itself. It implements some methods to handle content type querying for use by the derived BonoboPersistStream interface.

Details

BonoboPersist

typedef struct _BonoboPersist BonoboPersist;


BonoboPersistClass

typedef struct {
	BonoboObjectClass      parent_class;

	POA_Bonobo_Persist__epv epv;

	Bonobo_Persist_ContentTypeList *
	                      (*get_content_types) (BonoboPersist     *persist,
						    CORBA_Environment *ev);
} BonoboPersistClass;


bonobo_persist_generate_content_types ()

Bonobo_Persist_ContentTypeList * bonobo_persist_generate_content_types
                                                        (int num,
                                                         ...);

num :

the number of content types specified

... :

the content types (as strings)

Returns :

a ContentTypeList containing the given ContentTypes

bonobo_persist_construct ()

BonoboPersist *     bonobo_persist_construct            (BonoboPersist *persist,
                                                         const gchar *iid);

Initializes the BonoboPersist object. You should only use this method in derived implementations, because a BonoboPersist instance doesn't make a lot of sense, but the iid private field has to be set at construction time.

persist :

A BonoboPersist

iid :

OAF IID of the object this interface is aggregated to

Returns :

the BonoboPersist.

bonobo_persist_set_dirty ()

void                bonobo_persist_set_dirty            (BonoboPersist *persist,
                                                         gboolean dirty);

Sets the dirty status of the interface which is reported via the isDirty method.

persist :

A BonoboPersist

dirty :

A flag indicating the dirty status of this object.
libbonobo-2.32.1/doc/api/html/refcounting.html0000664000076400007640000002231611546334245016205 00000000000000 Reference Counting

Reference Counting

Bonobo component reference counting, version 0.1 by Michael Meeks <mmeeks@gnu.org> and Mike Fleming <mfleming@eazel.com>

Bonobo Objects

A bonobo object is a glib object that implements an CORBA interface, it also contains a pointer to the BonoboAggregateObject that it is part of. A bonobo object has two reference counts; the first is a GObject reference count on the object. This should be 1 at all times except pre-finalization. The main reference count for the aggregate is stored in the

typedef struct {
	int   ref_count;
	GList *objs;
} BonoboAggregateObject;
	    

structure. Also in this structure is a list of all the objects implementing other interfaces in this aggregate. Clearly an object is always in its own aggregate hence:

g_assert (g_list_find (object->priv->ao->objs, object) == object);
	    

Is always true. The object->priv->ao dereference is merely a nice way of encapsulating this information inside bonobo-object.c and ensuring that it can't be fiddled with elsewhere.


Ref counting

The only ref count to manipulate is that on the aggregate obejct, this is done via the bonobo_object_ref / unref pair, it is also done remotely via the Bonobo_Object_ref / unref CORBA stubs. There is no 'destroy' method, if you want this method you are probably confused about how GObject deals with allocation.

Some people try to use g_object_ref / unref on BonoboObjects; sadly this will cause very serious grief. This if you g_object_unref a bonobo object, then that object will be destroyed without consulting the aggregate ref-count, and without sorting out the aggregate. The net effect of this is that the aggregate is left including a finalized object. This is a very bad move indeed.


Reference leaks

Catching reference leaks is evily difficult. The first approach is to set environment variable BONOBO_DEBUG_FLAGS to a colon separated list of a subset of {object, running, aggregate, lifecycle, refs}. This will enable debugging output in certain parts of libbonobo. The output will be written to stdout or, alternatively, if you set BONOBO_DEBUG_DIR to a directory path, to a file named bonobo-debug-<pid> in that directory. This combined with a call to bonobo_shutdown () before exiting your program should provide a dump of all object references floating in your code.

Another good way of catching leaks---having guessed which object is not getting freed---is to fire up container and component in gdb, break in eg. bonobo_embeddable_new and insert a hardware watch point on the ref count [ see also Debugging ]:

(gdb) p &((BonoboObject *)embeddable)->priv->ao->ref_count
$N = (int *) 0x80808102
(gdb) watch *0x80808102
(gdb) cont
	    

This will result in gdb giving you control each time the ref count is changed. At this point halt the other end of the CORBA link and start logging traces at both ends. By the time the program exits you should have worked out where the reference went astray.


Ref Counting Conventions

And now for the important stuff:

Bonobo Ref Counting

The Bonobo ref count convention is as follows. (Mild rewording; same meaning as before)

  1. A function returning an object, either as the return value or by-reference, must always add a reference before returning. (Alternately: the callee must create a reference to the returned object that the caller owns)

  2. A function that accepts a bonobo object as an in/out parameter must unreference the originally passed object once if the function wishes to change the value of the in/out parameter. (The function must ref() new objects returned via this in/out in accordance with [1])

  3. An object passed into a function needs only be ref()'d if the ifunction wishes to retain a reference to the object beyond the scope of the function call.

In addition, there's a consensus that interface designers should be advised against designing methods with in/out parameters. In/out parameters can obscure the lifetime of the passed argument to casual code observers, and thus may cause hidden side-effects.

CORBA Ref-counting

Since the ORB also maintains reference counts per interface handle, should you be returning a reference to an object it is imperative to

Bonobo_Unknown_ref (corba_object, ev);
return CORBA_Object_duplicate (corba_object, ev);
		

To assist with this there are two functions:

Bonobo_Unknown bonobo_object_dup_ref       (Bonobo_Unknown     object,
                                            CORBA_Environment *ev);
void           bonobo_object_release_unref (Bonobo_Unknown     object,
                                            CORBA_Environment *ev);
		

So to return an Unknown from a impl you can simply:

return bonobo_object_dup_ref (corba_object, ev);

Warning

there is a caveat with this approach which is this:

If you construct a BonoboObject in an impl_ whose reference you wish to hand back to the caller then the situation is slightly different. In this case you have an object with the following:

Bonobo_Unknown: ref 1

BonoboObject: ref 1

You want to hand a CORBA reference to this object to the client, without incrementing the BonoboObject reference. To do this you must do:

return CORBA_Object_duplicate (BONOBO_OBJREF (myobject));
		    

The mirror of this is that if you want to hand a ref to an impl you will need to CORBA_Object_duplicate the value before inserting it into a BonoboObjectClient.

Ref counting and one-way methods

While the ORB has built in support for correct referencing on 1 way methods, the Bonobo reference count does not; hence if you wish to hand a bonobo reference to several listeners you need to do something like:

ref = Bonobo_Unknown_ref (BONOBO_OBJREF (obj), ev);
Bonobo_Sample_executeOnewayMethod (foo, ref, ev);
		

And at the other end in executeOnewayMethod the reference needs to be released.

libbonobo-2.32.1/doc/api/html/monikers.html0000664000076400007640000000612411546334245015510 00000000000000 Monikers

Monikers

Monikers in the Bonobo Component System
BonoboMoniker — The base implementation of our abstract object naming space
BonoboMonikerSimple — A super easy to use moniker implementation wrapper
bonobo-moniker-util — Object activation and construction through monikers.
BonoboMonikerExtender — A way to extend arbitary monikers
BonoboItemHandler — Simple Moniker Arguments
BonoboItemContainer — this implements a simple container interface for compound document containers
bonobo-moniker-context
libbonobo-2.32.1/doc/api/html/libbonobo.devhelp20000664000076400007640000017711411546334245016403 00000000000000 libbonobo-2.32.1/doc/api/html/style.css0000644000076400007640000001205611546334245014644 00000000000000.synopsis, .classsynopsis { /* tango:aluminium 1/2 */ background: #eeeeec; border: solid 1px #d3d7cf; padding: 0.5em; } .programlisting { /* tango:sky blue 0/1 */ background: #e6f3ff; border: solid 1px #729fcf; padding: 0.5em; } .variablelist { padding: 4px; margin-left: 3em; } .variablelist td:first-child { vertical-align: top; } @media screen { sup a.footnote { position: relative; top: 0em ! important; } /* this is needed so that the local anchors are displayed below the naviagtion */ div.footnote a[name], div.refnamediv a[name], div.refsect1 a[name], div.refsect2 a[name], div.index a[name], div.glossary a[name], div.sect1 a[name] { position: relative; padding-top:4.5em; } /* this seems to be a bug in the xsl style sheets when generating indexes */ div.index div.index { top: 0em; } /* make space for the fixed navigation bar and add space at the bottom so that * link targets appear somewhat close to top */ body { padding-top: 3.2em; padding-bottom: 20em; } /* style and size the navigation bar */ table.navigation#top { position: fixed; /* tango:scarlet red 0/1 */ background: #ffe6e6; border: solid 1px #ef2929; margin-top: 0; margin-bottom: 0; top: 0; left: 0; height: 3em; z-index: 10; } .navigation a, .navigation a:visited { /* tango:scarlet red 3 */ color: #a40000; } .navigation a:hover { /* tango:scarlet red 1 */ color: #ef2929; } td.shortcuts { /* tango:scarlet red 1 */ color: #ef2929; font-size: 80%; white-space: nowrap; } } @media print { table.navigation { visibility: collapse; display: none; } div.titlepage table.navigation { visibility: visible; display: table; /* tango:scarlet red 0/1 */ background: #ffe6e6; border: solid 1px #ef2929; margin-top: 0; margin-bottom: 0; top: 0; left: 0; height: 3em; } } .navigation .title { font-size: 200%; } div.gallery-float { float: left; padding: 10px; } div.gallery-float img { border-style: none; } div.gallery-spacer { clear: both; } a, a:visited { text-decoration: none; /* tango:sky blue 2 */ color: #3465a4; } a:hover { text-decoration: underline; /* tango:sky blue 1 */ color: #729fcf; } div.table table { border-collapse: collapse; border-spacing: 0px; /* tango:aluminium 3 */ border: solid 1px #babdb6; } div.table table td, div.table table th { /* tango:aluminium 3 */ border: solid 1px #babdb6; padding: 3px; vertical-align: top; } div.table table th { /* tango:aluminium 2 */ background-color: #d3d7cf; } hr { /* tango:aluminium 3 */ color: #babdb6; background: #babdb6; border: none 0px; height: 1px; clear: both; } .footer { padding-top: 3.5em; /* tango:aluminium 3 */ color: #babdb6; text-align: center; font-size: 80%; } .warning { /* tango:orange 0/1 */ background: #ffeed9; border-color: #ffb04f; } .note { /* tango:chameleon 0/0.5 */ background: #d8ffb2; border-color: #abf562; } .note, .warning { padding: 0.5em; border-width: 1px; border-style: solid; } .note h3, .warning h3 { margin-top: 0.0em } .note p, .warning p { margin-bottom: 0.0em } /* blob links */ h2 .extralinks, h3 .extralinks { float: right; /* tango:aluminium 3 */ color: #babdb6; font-size: 80%; font-weight: normal; } .annotation { /* tango:aluminium 5 */ color: #555753; font-size: 80%; font-weight: normal; } /* code listings */ .listing_code .programlisting .cbracket { color: #a40000; } /* tango: scarlet red 3 */ .listing_code .programlisting .comment { color: #a1a39d; } /* tango: aluminium 4 */ .listing_code .programlisting .function { color: #000000; font-weight: bold; } .listing_code .programlisting .function a { color: #11326b; font-weight: bold; } /* tango: sky blue 4 */ .listing_code .programlisting .keyword { color: #4e9a06; } /* tango: chameleon 3 */ .listing_code .programlisting .linenum { color: #babdb6; } /* tango: aluminium 3 */ .listing_code .programlisting .normal { color: #000000; } .listing_code .programlisting .number { color: #75507b; } /* tango: plum 2 */ .listing_code .programlisting .preproc { color: #204a87; } /* tango: sky blue 3 */ .listing_code .programlisting .string { color: #c17d11; } /* tango: chocolate 2 */ .listing_code .programlisting .type { color: #000000; } .listing_code .programlisting .type a { color: #11326b; } /* tango: sky blue 4 */ .listing_code .programlisting .symbol { color: #ce5c00; } /* tango: orange 3 */ .listing_frame { /* tango:sky blue 1 */ border: solid 1px #729fcf; padding: 0px; } .listing_lines, .listing_code { margin-top: 0px; margin-bottom: 0px; padding: 0.5em; } .listing_lines { /* tango:sky blue 0.5 */ background: #a6c5e3; /* tango:aluminium 6 */ color: #2e3436; } .listing_code { /* tango:sky blue 0 */ background: #e6f3ff; } .listing_code .programlisting { /* override from previous */ border: none 0px; padding: 0px; } .listing_lines pre, .listing_code pre { margin: 0px; } libbonobo-2.32.1/doc/api/html/libbonobo-bonobo-item-handler.html0000664000076400007640000005341011546334245021451 00000000000000 BonoboItemHandler

BonoboItemHandler

BonoboItemHandler — Simple Moniker Arguments

Synopsis

                    BonoboItemHandler;
                    BonoboItemHandlerClass;
BonoboItemHandler * bonobo_item_handler_new             (BonoboItemHandlerEnumObjectsFn enum_objects,
                                                         BonoboItemHandlerGetObjectFn get_object,
                                                         gpointer user_data);
BonoboItemHandler * bonobo_item_handler_new_closure     (GClosure *enum_objects,
                                                         GClosure *get_object);
BonoboItemHandler * bonobo_item_handler_construct       (BonoboItemHandler *handler,
                                                         GClosure *enum_objects,
                                                         GClosure *get_object);
                    BonoboItemOption;
GSList *            bonobo_item_option_parse            (const char *option_string);
void                bonobo_item_options_free            (GSList *options);

Object Hierarchy

  GObject
   +----BonoboObject
         +----BonoboItemHandler

Description

Sometimes you want to pass "arguments" to a component. Consider the component with the following OAFIID:

OAFIID:GNOME_FileSelector

You might want to be able to set configuration options from its moniker name, without having to ever use the property bag API. For example:

OAFIID:GNOME_FileSelector!AcceptMimeTypes=image/*

Implementing it

Create a BonoboItemHandler. This component will let you do argument parsing of any kind.

You have to provide two functions: enumObjects (this can be empty) and getObject.

The getObject function will be called when the moniker mechanism is trying to resolve a set of arguments to your function.

Like this:

1
2
3
4
5
6
7
8
9
10
11
12
Bonobo_Unknown
getObject (BonoboItemHandler *h, const char *item_name,
           gboolean only_if_exists, gpointer data,
           CORBA_Environment *ev)
{
        MyData *m = data;
        if (strcmp (item_name, "friendly") == 0){
                m->friendly = true;
        }
        /* we just return ourselves */
        return bonobo_object_dup_ref (bonobo_object_corba_objref (h), NULL);
}

So basically during the `getObject' operation you will be given a chance to process the `item_name' string which is basically like a command line argument (for the sake of explaining this) and based on this information you can customize your component.


Sample functions

Sometimes you will want to specify a bunch of options to configure your component, like this:

OAFIID:MyComponent!visible=true;image=blah.png

So we are separating the various options with semi-colons here. To simplify your code, we have provided a couple of functions that given the following string:

visible=true;image=blah.png

Will return a GList split with BonoboItemOptions:

1
2
3
4
5
6
7
GSList *l, *x;
x = bonobo_item_option_parse ("visible=true;image=blah.png");
for (l = x; l != NULL; l++){
    BonoboItemOption *io = l->data;
    printf ("Key=%s, Value=%s\n", io->key, io->value);
}
bonobo_item_option_free (x);

Details

BonoboItemHandler

typedef struct _BonoboItemHandler BonoboItemHandler;

Bonobo::ItemHandler implementation


BonoboItemHandlerClass

typedef struct {
	BonoboObjectClass parent_class;

	POA_Bonobo_ItemContainer__epv epv;
} BonoboItemHandlerClass;

BonoboItemHandler class


bonobo_item_handler_new ()

BonoboItemHandler * bonobo_item_handler_new             (BonoboItemHandlerEnumObjectsFn enum_objects,
                                                         BonoboItemHandlerGetObjectFn get_object,
                                                         gpointer user_data);

Creates a new BonoboItemHandler object. These are used to hold client sites.

enum_objects :

callback invoked for Bonobo::ItemContainer::enum_objects

get_object :

callback invoked for Bonobo::ItemContainer::get_objects

user_data :

extra data passed on the callbacks

Returns :

The newly created BonoboItemHandler object

bonobo_item_handler_new_closure ()

BonoboItemHandler * bonobo_item_handler_new_closure     (GClosure *enum_objects,
                                                         GClosure *get_object);

Creates a new BonoboItemHandler object. These are used to hold client sites.

enum_objects :

closure invoked for Bonobo::ItemContainer::enum_objects

get_object :

closure invoked for Bonobo::ItemContainer::get_objects

Returns :

The newly created BonoboItemHandler object

bonobo_item_handler_construct ()

BonoboItemHandler * bonobo_item_handler_construct       (BonoboItemHandler *handler,
                                                         GClosure *enum_objects,
                                                         GClosure *get_object);

Constructs the container BonoboObject using the provided closures for the actual implementation.

handler :

The handler object to construct

enum_objects :

The closure implementing enumObjects

get_object :

The closure implementing getObject

Returns :

The constructed BonoboItemContainer object.

BonoboItemOption

typedef struct {
	char *key;
	char *value;
} BonoboItemOption;

A key-value pair.


bonobo_item_option_parse ()

GSList *            bonobo_item_option_parse            (const char *option_string);

option_string :

Returns :


bonobo_item_options_free ()

void                bonobo_item_options_free            (GSList *options);

Use this to release a list returned by bonobo_item_option_parse()

options :

a GSList of BonoboItemOption structures that was returned by bonobo_item_option_parse()

See Also

A simplistic implementation exists in BonoboItemContainer.

libbonobo-2.32.1/doc/api/html/libbonobo-bonobo-moniker.html0000664000076400007640000005125211546334245020546 00000000000000 BonoboMoniker

BonoboMoniker

BonoboMoniker — The base implementation of our abstract object naming space

Synopsis

                    BonoboMoniker;
                    BonoboMonikerClass;
BonoboMoniker *     bonobo_moniker_construct            (BonoboMoniker *moniker,
                                                         const char *prefix);
Bonobo_Moniker      bonobo_moniker_get_parent           (BonoboMoniker *moniker,
                                                         CORBA_Environment *opt_ev);
void                bonobo_moniker_set_parent           (BonoboMoniker *moniker,
                                                         Bonobo_Moniker parent,
                                                         CORBA_Environment *opt_ev);
const char *        bonobo_moniker_get_name             (BonoboMoniker *moniker);
const char *        bonobo_moniker_get_name_full        (BonoboMoniker *moniker);
char *              bonobo_moniker_get_name_escaped     (BonoboMoniker *moniker);
void                bonobo_moniker_set_name             (BonoboMoniker *moniker,
                                                         const char *name);
const char *        bonobo_moniker_get_prefix           (BonoboMoniker *moniker);
void                bonobo_moniker_set_case_sensitive   (BonoboMoniker *moniker,
                                                         gboolean sensitive);
gboolean            bonobo_moniker_get_case_sensitive   (BonoboMoniker *moniker);

Object Hierarchy

  GObject
   +----BonoboObject
         +----BonoboMoniker
               +----BonoboMonikerSimple

Description

Monikers are used to name objects, they effectively implement an object naming space. You can obtain monikers either because you created the moniker manually, or from a stringified representation of a moniker.

For more information see bonobo/doc/Monikers, relatively few people want to implement monikers, mostly they just want to use them. To do this you need the bonobo-moniker-util API.

To implement your own moniker, it is most likely that you want to use BonoboMonikerSimple, BonoboMoniker is a mostly abstract base class that in some obscure cases might provide a more powerful feature set. Most people use BonoboMonikerSimple.

Details

BonoboMoniker

typedef struct _BonoboMoniker BonoboMoniker;

Implements Bonobo::Moniker


BonoboMonikerClass

typedef struct {
	BonoboObjectClass      parent_class;

	POA_Bonobo_Moniker__epv epv;

	/* virtual methods */
	Bonobo_Unknown (*resolve)            (BonoboMoniker               *moniker,
					      const Bonobo_ResolveOptions *options,
					      const CORBA_char            *requested_interface,
					      CORBA_Environment           *ev);

	void           (*set_internal_name)  (BonoboMoniker               *moniker,
					      const char                  *unescaped_name);
	const char    *(*get_internal_name)  (BonoboMoniker               *moniker);

	gpointer        dummy;
} BonoboMonikerClass;

BonoboMoniker's class


bonobo_moniker_construct ()

BonoboMoniker *     bonobo_moniker_construct            (BonoboMoniker *moniker,
                                                         const char *prefix);

Constructs a newly created bonobo moniker with the given arguments.

moniker :

an un-constructed moniker object.

prefix :

the prefix name of the moniker eg. 'file:', '!' or 'tar:' or NULL

Returns :

the constructed moniker or NULL on failure.

bonobo_moniker_get_parent ()

Bonobo_Moniker      bonobo_moniker_get_parent           (BonoboMoniker *moniker,
                                                         CORBA_Environment *opt_ev);

See bonobo_moniker_set_parent;

moniker :

the moniker

opt_ev :

an optional corba exception environment

Returns :

the parent of this moniker

bonobo_moniker_set_parent ()

void                bonobo_moniker_set_parent           (BonoboMoniker *moniker,
                                                         Bonobo_Moniker parent,
                                                         CORBA_Environment *opt_ev);

This sets the monikers parent; a moniker is really a long chain of hierarchical monikers; referenced by the most local moniker. This sets the parent pointer.

moniker :

the moniker

parent :

the parent

opt_ev :

an optional corba exception environment

bonobo_moniker_get_name ()

const char *        bonobo_moniker_get_name             (BonoboMoniker *moniker);

gets the unescaped name of the moniker less the prefix eg file:/tmp/hash#.gz returns /tmp/hash.gz

moniker :

the moniker

Returns :

the string or NULL in case of failure

bonobo_moniker_get_name_full ()

const char *        bonobo_moniker_get_name_full        (BonoboMoniker *moniker);

gets the full unescaped name of the moniker eg. file:/tmp/hash#.gz returns file:/tmp/hash.gz

moniker :

the moniker

Returns :

the string in case of failure

bonobo_moniker_get_name_escaped ()

char *              bonobo_moniker_get_name_escaped     (BonoboMoniker *moniker);

Get the full, escaped name of the moniker eg. file:/tmp/hash#.gz returns file:/tmp/hash#.gz

moniker :

a moniker

Returns :

the dynamically allocated string, or NULL in case of failure. Must release with g_free().

bonobo_moniker_set_name ()

void                bonobo_moniker_set_name             (BonoboMoniker *moniker,
                                                         const char *name);

This functions sets the moniker name in moniker to be name.

moniker :

the BonoboMoniker to configure.

name :

new, unescaped, name for this moniker.

bonobo_moniker_get_prefix ()

const char *        bonobo_moniker_get_prefix           (BonoboMoniker *moniker);

moniker :

a moniker

Returns :

the registered prefix for this moniker or NULL if there isn't one. eg "file:", or in case of failure

bonobo_moniker_set_case_sensitive ()

void                bonobo_moniker_set_case_sensitive   (BonoboMoniker *moniker,
                                                         gboolean sensitive);

Sets up whether we use case sensitivity for the default equal impl.

moniker :

the moniker

sensitive :

whether to see case on equality compare

bonobo_moniker_get_case_sensitive ()

gboolean            bonobo_moniker_get_case_sensitive   (BonoboMoniker *moniker);

moniker :

the moniker

Returns :

whether we use case sensitivity for the default equal impl.

See Also

bonobo-moniker-util BonoboMonikerSimple

libbonobo-2.32.1/doc/api/html/libbonobo-bonobo-event-source.html0000664000076400007640000006772111546334245021531 00000000000000 bonobo-event-source

bonobo-event-source

bonobo-event-source — An Event Source where clients can connect to listen to events.

Synopsis

BonoboEventSource * bonobo_event_source_new             (void);
void                bonobo_event_source_notify_listeners
                                                        (BonoboEventSource *event_source,
                                                         const char *event_name,
                                                         const CORBA_any *opt_value,
                                                         CORBA_Environment *opt_ev);
void                bonobo_event_source_notify_listeners_full
                                                        (BonoboEventSource *event_source,
                                                         const char *path,
                                                         const char *type,
                                                         const char *subtype,
                                                         const CORBA_any *opt_value,
                                                         CORBA_Environment *opt_ev);
void                bonobo_event_source_client_remove_listener
                                                        (Bonobo_Unknown object,
                                                         Bonobo_Listener listener,
                                                         CORBA_Environment *opt_ev);
void                bonobo_event_source_client_add_listener
                                                        (Bonobo_Unknown object,
                                                         BonoboListenerCallbackFn event_callback,
                                                         const char *opt_mask,
                                                         CORBA_Environment *opt_ev,
                                                         gpointer user_data);
gboolean            bonobo_event_source_has_listener    (BonoboEventSource *event_source,
                                                         const char *event_name);
void                bonobo_event_source_client_add_listener_closure
                                                        (Bonobo_Unknown object,
                                                         GClosure *callback,
                                                         const char *opt_mask,
                                                         CORBA_Environment *opt_ev);
Bonobo_Listener     bonobo_event_source_client_add_listener_full
                                                        (Bonobo_Unknown object,
                                                         GClosure *callback,
                                                         const char *opt_mask,
                                                         CORBA_Environment *opt_ev);
void                bonobo_event_source_ignore_listeners
                                                        (BonoboEventSource *event_source);

Description

An event source object is responsible for channeling the emission of signals on an object to the appropriate attached listeners. The API is extremely simple and allows implementations to notify their listeners of a new event occuring.

To notify a listener, you need to construct a textual string, this is done by the bonobo_event functions ( see BonoboListener ) ':' delimiting the fields. It is reccommended that the IDL module path of the interface be used as the first part of the string. This is because many interfaces can be aggregated together and need to share the same event namespace without conflicts. So for example the bonobo property bag notification code uses the IDL path "Bonobo/Property" the "change" kind and sets the sub-type to the property name:

Example 9. An example event source notification

1
2
3
4
5
6
7
8
9
10
11
12
13
static void
notify_listeners (BonoboPropertyBag *pb,
          BonoboProperty    *prop,
          const BonoboArg   *new_value,
          CORBA_Environment *opt_ev)
{
    if (prop->flags & BONOBO_PROPERTY_NO_LISTENING)
        return;
    bonobo_event_source_notify_listeners_full (pb->es,
                           "Bonobo/Property",
                           "change", prop->name,
                           new_value, opt_ev);
}


Of course, you need to notify the listener with a valid BonoboArg containing the event data, this could easily contain a structure. eg.

Example 10. Passing a structure in an event

module GNOME {
	module Foo {
		struct BaaEvent {
			double a;
			string b;
			long   c;
		};
	};
};
     
static void
fire_event (BonoboEventSource *on_source,
            double             a_double,
	    char              *a_string,
	    long               a_float,
	    CORBA_Environment *opt_ev)
{
	CORBA_any any;
	GNOME_Foo_BaaEvent e;
	e.a = a_double;
	e.b = a_string;
	e.c = a_float;
	any->_type = TC_GNOME_Foo_BaaEvent;
	any->_data = &e;
	bonobo_event_source_notify_listeners_full (
	   on_source, "GNOME/Foo", "event", NULL,
	   &any, opt_ev);
}
     


NB. it is reccommended that you make it clear that the event structure is intended for use with the BonoboEventSource / BonoboListener by naming it XYZEvent, ie. with the 'Event' suffix.

Details

bonobo_event_source_new ()

BonoboEventSource * bonobo_event_source_new             (void);

Creates a new BonoboEventSource object. Typically this object will be exposed to clients through CORBA and they will register and unregister functions to be notified of events that this EventSource generates.

To notify clients of an event, use the bonobo_event_source_notify_listeners() function.

Returns :

A new BonoboEventSource server object.

bonobo_event_source_notify_listeners ()

void                bonobo_event_source_notify_listeners
                                                        (BonoboEventSource *event_source,
                                                         const char *event_name,
                                                         const CORBA_any *opt_value,
                                                         CORBA_Environment *opt_ev);

This will notify all clients that have registered with this EventSource (through the addListener or addListenerWithMask methods) of the availability of the event named event_name. The value CORBA::any value is passed to all listeners.

event_name can not contain comma separators, as commas are used to separate the various event names.

event_source :

the Event Source that will emit the event.

event_name :

Name of the event being emitted

opt_value :

A CORBA_any value that contains the data that is passed to interested clients, or NULL for an empty value

opt_ev :

A CORBA_Environment where a failure code can be returned, can be NULL.

bonobo_event_source_notify_listeners_full ()

void                bonobo_event_source_notify_listeners_full
                                                        (BonoboEventSource *event_source,
                                                         const char *path,
                                                         const char *type,
                                                         const char *subtype,
                                                         const CORBA_any *opt_value,
                                                         CORBA_Environment *opt_ev);

event_source :

path :

type :

subtype :

opt_value :

opt_ev :


bonobo_event_source_client_remove_listener ()

void                bonobo_event_source_client_remove_listener
                                                        (Bonobo_Unknown object,
                                                         Bonobo_Listener listener,
                                                         CORBA_Environment *opt_ev);

object :

listener :

opt_ev :


bonobo_event_source_client_add_listener ()

void                bonobo_event_source_client_add_listener
                                                        (Bonobo_Unknown object,
                                                         BonoboListenerCallbackFn event_callback,
                                                         const char *opt_mask,
                                                         CORBA_Environment *opt_ev,
                                                         gpointer user_data);

object :

event_callback :

opt_mask :

opt_ev :

user_data :


bonobo_event_source_has_listener ()

gboolean            bonobo_event_source_has_listener    (BonoboEventSource *event_source,
                                                         const char *event_name);

This method determines if there are any listeners for the event to be broadcast. This can be used to detect whether it is worth constructing a potentialy expensive state update, before sending it to no-one.

event_source :

the Event Source that will emit the event.

event_name :

Name of the event being emitted

Returns :

TRUE if it's worth sending, else FALSE

bonobo_event_source_client_add_listener_closure ()

void                bonobo_event_source_client_add_listener_closure
                                                        (Bonobo_Unknown object,
                                                         GClosure *callback,
                                                         const char *opt_mask,
                                                         CORBA_Environment *opt_ev);

object :

callback :

opt_mask :

opt_ev :


bonobo_event_source_client_add_listener_full ()

Bonobo_Listener     bonobo_event_source_client_add_listener_full
                                                        (Bonobo_Unknown object,
                                                         GClosure *callback,
                                                         const char *opt_mask,
                                                         CORBA_Environment *opt_ev);

object :

callback :

opt_mask :

opt_ev :

Returns :


bonobo_event_source_ignore_listeners ()

void                bonobo_event_source_ignore_listeners
                                                        (BonoboEventSource *event_source);

Instructs the event source to de-register any listeners that are added from the global running context.

libbonobo-2.32.1/doc/api/html/libbonobo-bonobo-persist-file.html0000664000076400007640000007715411546334245021521 00000000000000 BonoboPersistFile

BonoboPersistFile

BonoboPersistFile — Interface for anything that can save / load itself from a file.

Synopsis

                    BonoboPersistFile;
int                 (*BonoboPersistFileIOFn)            (BonoboPersistFile *pf,
                                                         const CORBA_char *uri,
                                                         CORBA_Environment *ev,
                                                         void *closure);
                    BonoboPersistFileClass;
BonoboPersistFile * bonobo_persist_file_new             (BonoboPersistFileIOFn load_fn,
                                                         BonoboPersistFileIOFn save_fn,
                                                         const gchar *iid,
                                                         void *closure);
BonoboPersistFile * bonobo_persist_file_construct       (BonoboPersistFile *pf,
                                                         BonoboPersistFileIOFn load_fn,
                                                         BonoboPersistFileIOFn save_fn,
                                                         const gchar *iid,
                                                         void *closure);

Object Hierarchy

  GObject
   +----BonoboObject
         +----BonoboPersist
               +----BonoboPersistFile

Description

The PersistFile interface is a useful interface for Bonoboizing legacy applications, however, for new / correct applications it is far preferable to implement the BonoboPersistStream interface, since this will not only result in a nice clean to your application architecture, but also allow the transparent use of local, remote, and synthetic streams.

This interface works by connecting callbacks to the methods, in a pretty deprecated fashion, it is probably better nowadays to simply sub-class the BonoboXObject and override the epv methods. Either way, after all the caveats here is an example use:

Example 25. Persist file implementation

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
static gint
load_from_file (BonoboPersistFile *pf,
                const CORBA_char  *filename,
        CORBA_Environment *ev,
                void              *closure)
{
    EogImageData *image_data = closure;
    g_warning ("Load from '%s'", filename);
    return 0; /* Return 0 on success */
}
static gint
save_to_file (BonoboPersistFile *pf,
              const CORBA_char  *filename,
              CORBA_Environment *ev,
              void              *closure)
{
    EogImageData *image_data = closure;
    g_warning ("Save to '%s'", filename);
    return 0; /* Return 0 on success */
}


Having implemented the callbacks we then have to register them and aggregate the interface to our object:

Example 26. Aggregating a new PersistFile

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
EogImageData *
eog_image_data_construct (EogImageData *image_data)
{
    BonoboObject        *retval;
    BonoboPersistFile   *file;
    file = bonobo_persist_file_new (
        load_from_file, save_to_file, image_data);
    if (file == NULL) {
        bonobo_object_unref (BONOBO_OBJECT (image_data));
        return NULL;
    }
    bonobo_object_add_interface (BONOBO_OBJECT (image_data),
                     BONOBO_OBJECT (file));
    return image_data;
}


Note again, that you should be writing a BonoboPersistStream interface, however if you have already done this you might like to just have hooks through so that old apps can use the PersistFile interface:

Example 27. Chaining to a PersistStream implementation

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
static gint
load_from_file (BonoboPersistFile *pf,
                const CORBA_char  *filename,
        CORBA_Environment *ev,
                void              *closure)
{
    Bonobo_PersistStream ps = closure;
    BonoboStream *stream;
    stream = bonobo_stream_open (
        BONOBO_IO_DRIVER_FS,
        filename, Bonobo_STORAGE_READ,
        0);
    if (!stream)
        return 0;
    .. extract content type from file ...
    Bonobo_PersistStream_load (ps, type, ev);
    return 0; /* Return 0 on success */
}
static gint
save_to_file (BonoboPersistFile *pf,
              const CORBA_char  *filename,
              CORBA_Environment *ev,
              void              *closure)
{
    Bonobo_PersistStream ps = closure;
    BonoboStream *stream;
    stream = bonobo_stream_open (
        BONOBO_IO_DRIVER_FS,
        filename, Bonobo_STORAGE_WRITE | Bonobo_STORAGE_CREATE,
        S_IRUSR | S_IWUSR | S_IRGRP);
    if (!stream)
        return 0;
    .. work out content type we want to save ...
    Bonobo_PersistStream_save (ps, type, ev);
    return 0; /* Return 0 on success */
}


The mime type data can be extracted from gnome-vfs or gnome-mime.

Details

BonoboPersistFile

typedef struct _BonoboPersistFile BonoboPersistFile;

Warning

BonoboPersistFile is deprecated and should not be used in newly-written code.


BonoboPersistFileIOFn ()

int                 (*BonoboPersistFileIOFn)            (BonoboPersistFile *pf,
                                                         const CORBA_char *uri,
                                                         CORBA_Environment *ev,
                                                         void *closure);

Warning

BonoboPersistFileIOFn is deprecated and should not be used in newly-written code.

pf :

uri :

ev :

closure :

Returns :


BonoboPersistFileClass

typedef struct {
	BonoboPersistClass parent_class;

	POA_Bonobo_PersistFile__epv epv;

	/* methods */
	int   (*load)             (BonoboPersistFile *ps,
				   const CORBA_char  *uri,
				   CORBA_Environment *ev);

	int   (*save)             (BonoboPersistFile *ps,
				   const CORBA_char  *uri,
				   CORBA_Environment *ev);

	char *(*get_current_file) (BonoboPersistFile *ps,
				   CORBA_Environment *ev);
} BonoboPersistFileClass;

Warning

BonoboPersistFileClass is deprecated and should not be used in newly-written code.


bonobo_persist_file_new ()

BonoboPersistFile * bonobo_persist_file_new             (BonoboPersistFileIOFn load_fn,
                                                         BonoboPersistFileIOFn save_fn,
                                                         const gchar *iid,
                                                         void *closure);

Warning

bonobo_persist_file_new is deprecated and should not be used in newly-written code.

Creates a BonoboPersistFile object. The load_fn and save_fn parameters might be NULL. If this is the case, the load and save operations are performed by the class load and save methods

load_fn :

Loading routine

save_fn :

Saving routine

iid :

OAF IID of the object this interface is aggregated to

closure :

Data passed to IO routines.

Returns :

the BonoboPersistFile.

bonobo_persist_file_construct ()

BonoboPersistFile * bonobo_persist_file_construct       (BonoboPersistFile *pf,
                                                         BonoboPersistFileIOFn load_fn,
                                                         BonoboPersistFileIOFn save_fn,
                                                         const gchar *iid,
                                                         void *closure);

Warning

bonobo_persist_file_construct is deprecated and should not be used in newly-written code.

Initializes the BonoboPersistFile object. The load_fn and save_fn parameters might be NULL. If this is the case, the load and save operations are performed by the class load and save methods

pf :

A BonoboPersistFile

load_fn :

Loading routine

save_fn :

Saving routine

iid :

OAF IID of the object this interface is aggregated to

closure :

Data passed to IO routines.

Returns :

the BonoboPersistFile.
libbonobo-2.32.1/doc/api/html/libbonobo-bonobo-property-bag.html0000664000076400007640000017042611546334245021522 00000000000000 BonoboPropertyBag

BonoboPropertyBag

BonoboPropertyBag — Implements a generic property storage interface

Synopsis

                    BonoboPropertyBagClass;
                    BonoboPropertyBag;
#define             BONOBO_PROPERTY_READABLE
#define             BONOBO_PROPERTY_WRITEABLE
#define             BONOBO_PROPERTY_WRITABLE
#define             BONOBO_PROPERTY_NO_LISTENING
#define             BONOBO_PROPERTY_NO_AUTONOTIFY
                    BonoboProperty;
void                (*BonoboPropertyGetFn)              (BonoboPropertyBag *bag,
                                                         BonoboArg *arg,
                                                         guint arg_id,
                                                         CORBA_Environment *ev,
                                                         gpointer user_data);
void                (*BonoboPropertySetFn)              (BonoboPropertyBag *bag,
                                                         const BonoboArg *arg,
                                                         guint arg_id,
                                                         CORBA_Environment *ev,
                                                         gpointer user_data);
BonoboPropertyBag * bonobo_property_bag_new             (BonoboPropertyGetFn get_prop_cb,
                                                         BonoboPropertySetFn set_prop_cb,
                                                         gpointer user_data);
BonoboPropertyBag * bonobo_property_bag_new_closure     (GClosure *get_prop,
                                                         GClosure *set_prop);
BonoboPropertyBag * bonobo_property_bag_new_full        (GClosure *get_prop,
                                                         GClosure *set_prop,
                                                         BonoboEventSource *es);
BonoboPropertyBag * bonobo_property_bag_construct       (BonoboPropertyBag *pb,
                                                         GClosure *get_prop,
                                                         GClosure *set_prop,
                                                         BonoboEventSource *es);
void                bonobo_property_bag_add             (BonoboPropertyBag *pb,
                                                         const char *name,
                                                         int idx,
                                                         BonoboArgType type,
                                                         BonoboArg *default_value,
                                                         const char *doctitle,
                                                         Bonobo_PropertyFlags flags);
void                bonobo_property_bag_add_full        (BonoboPropertyBag *pb,
                                                         const char *name,
                                                         int idx,
                                                         BonoboArgType type,
                                                         BonoboArg *default_value,
                                                         const char *doctitle,
                                                         const char *docstring,
                                                         Bonobo_PropertyFlags flags,
                                                         GClosure *get_prop,
                                                         GClosure *set_prop);
void                bonobo_property_bag_remove          (BonoboPropertyBag *pb,
                                                         const char *name);
void                bonobo_property_bag_map_params      (BonoboPropertyBag *pb,
                                                         GObject *on_instance,
                                                         const GParamSpec **pspecs,
                                                         guint n_params);
GList *             bonobo_property_bag_get_prop_list   (BonoboPropertyBag *pb);

Description

The PropertyBag is used for many things, particularly for the customization of controls. The important thing to remember about the BonoboPropertyBag implementation is that no live data is stored in the bag. ie. the Model for the properties is your code.

Consequently when someone requests a properties value, or sets a property the callbacks you supply at bag construction time are called, and the code therein must supply the property. Similarly, when a property changes value inside your object you need to notify the property bag's listeners that it has changed with a call to bonobo_event_source_notify_listeners_full.

Here is a simple example use of the property bag:

Example 11. PropertyBag Callbacks

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
enum {
    PROP_RUNNING,
    PROP_COLOUR
} MyArgs;
static void
get_prop (BonoboPropertyBag *bag,
      BonoboArg         *arg,
      guint              arg_id,
      CORBA_Environment *ev,
      gpointer           user_data)
{
    GtkObject *clock = user_data;
    switch (arg_id) {
    case PROP_RUNNING:
        BONOBO_ARG_SET_BOOLEAN (arg, clock->is_running);
        break;
    case PROP_COLOUR:
        BONOBO_ARG_SET_STRING (arg, clock->color);
        break;
    default:
        bonobo_exception_set (ev, ex_Bonobo_PropertyBag_NotFound);
        break;
    }
}
static void
set_prop (BonoboPropertyBag *bag,
      const BonoboArg   *arg,
      guint              arg_id,
      CORBA_Environment *ev,
      gpointer           user_data)
{
    GtkClock *clock = user_data;
    switch (arg_id) {
    case PROP_RUNNING: {
        guint i = BONOBO_ARG_GET_BOOLEAN (arg);
        if (i)
            gtk_clock_start (clock);
        else
            gtk_clock_stop (clock);
        break;
    }
    case PROP_COLOUR:
        gtk_clock_set_color (clock, BONOBO_ARG_GET_STRING (arg));
    default:
        bonobo_exception_set (ev, ex_Bonobo_PropertyBag_NotFound);
        break;
    }
}


Then to instantiate the property bag interface and associate it with a control perhaps we do:

Example 12. Adding a PropertyBag to a control

1
2
3
4
5
6
7
8
9
10
11
12
BonoboPropertyBag *pb;
pb = bonobo_property_bag_new (get_prop, set_prop, clock);
bonobo_control_set_properties (control, pb);
bonobo_property_bag_add (pb, "running", PROP_RUNNING,
             BONOBO_ARG_BOOLEAN, NULL,
             _("Whether or not the clock is running"),
             0);
bonobo_property_bag_add (pb, "colour", PROP_COLOUR,
             BONOBO_ARG_STRING, NULL,
             _("The colour of the clock face"),
             0);
bonobo_object_unref (BONOBO_OBJECT (pb));


And finally we need to notify listeners of changes in various properties so we could perhaps do:

Example 13. Notifying proterty bag listeners

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
static void
signal_handler (GtkClock *clock, BonoboPropertyBag *pb)
{
    BonoboArg *arg = bonobo_arg_new (TC_string);
    BONOBO_ARG_SET_STRING (arg, gtk_clock_get_color (clock));
    bonobo_event_source_notify_listeners_full (pb->es,
                               "Bonobo/Property",
                               "change",
                           "colour",
                               arg, NULL);
    bonobo_arg_release (arg);
}
...
    gtk_signal_connect (GTK_OBJECT (clock), "color_changed",
                GTK_SIGNAL_FUNC (signal_handler), pb);


See also BonoboArg.

Details

BonoboPropertyBagClass

typedef struct {
	BonoboObjectClass        parent;

	POA_Bonobo_PropertyBag__epv epv;
} BonoboPropertyBagClass;


BonoboPropertyBag

typedef struct {
	BonoboObject             parent;
	BonoboPropertyBagPrivate *priv;
	BonoboEventSource        *es;
} BonoboPropertyBag;


BONOBO_PROPERTY_READABLE

#define BONOBO_PROPERTY_READABLE      Bonobo_PROPERTY_READABLE

If this flag is set, the property allows consulting its value.


BONOBO_PROPERTY_WRITEABLE

#define BONOBO_PROPERTY_WRITEABLE     Bonobo_PROPERTY_WRITEABLE

If this flag is set, the property supports modification of its value.


BONOBO_PROPERTY_WRITABLE

#define BONOBO_PROPERTY_WRITABLE      Bonobo_PROPERTY_WRITEABLE

Misspelling of BONOBO_PROPERTY_WRITEABLE.


BONOBO_PROPERTY_NO_LISTENING

#define BONOBO_PROPERTY_NO_LISTENING  Bonobo_PROPERTY_NO_LISTENING 

If this flag set, when the property changes its value its listeners will *not* be notified.


BONOBO_PROPERTY_NO_AUTONOTIFY

#define BONOBO_PROPERTY_NO_AUTONOTIFY Bonobo_PROPERTY_NO_AUTONOTIFY 

If this flag set, when the property changes its value its listeners will *not* be notified.


BonoboProperty

typedef struct {
	char		      *name;
	int                    idx;
	BonoboArgType          type;
	BonoboArg             *default_value;
	char		      *doctitle;
	char		      *docstring;
	Bonobo_PropertyFlags   flags;

	BonoboPropertyPrivate *priv;
} BonoboProperty;

Structure that holds information about a property in a BonoboPropertyBag.

char *name;

the canonic name of the property

int idx;

unique numeric identifier of the property within the property bag

BonoboArgType type;

type of value contained by this property

BonoboArg *default_value;

the default value

char *doctitle;

documentation string title

char *docstring;

documentation string

Bonobo_PropertyFlags flags;

property flags (read/write, etc.)

BonoboPropertyPrivate *priv;

implementation private data

BonoboPropertyGetFn ()

void                (*BonoboPropertyGetFn)              (BonoboPropertyBag *bag,
                                                         BonoboArg *arg,
                                                         guint arg_id,
                                                         CORBA_Environment *ev,
                                                         gpointer user_data);

Property getter function.

bag :

the property bag

arg :

output parameter; the caller must place here the property value

arg_id :

unique numeric identifier of the property within the property bag

ev :

the relevant CORBA environment

user_data :

user data

BonoboPropertySetFn ()

void                (*BonoboPropertySetFn)              (BonoboPropertyBag *bag,
                                                         const BonoboArg *arg,
                                                         guint arg_id,
                                                         CORBA_Environment *ev,
                                                         gpointer user_data);

Property setter function.

bag :

the property bag

arg :

the new property value to be set

arg_id :

unique numeric identifier of the property within the property bag

ev :

the relevant CORBA environment

user_data :

user data

bonobo_property_bag_new ()

BonoboPropertyBag * bonobo_property_bag_new             (BonoboPropertyGetFn get_prop_cb,
                                                         BonoboPropertySetFn set_prop_cb,
                                                         gpointer user_data);

Creates a new property bag with the specified callbacks.

get_prop_cb :

the property get callback

set_prop_cb :

the property set callback

user_data :

user data for the callbacks

Returns :

A new BonoboPropertyBag object.

bonobo_property_bag_new_closure ()

BonoboPropertyBag * bonobo_property_bag_new_closure     (GClosure *get_prop,
                                                         GClosure *set_prop);

Creates a new property bag with the specified callbacks.

get_prop :

the property get closure

set_prop :

the property set closure

Returns :

A new BonoboPropertyBag object.

bonobo_property_bag_new_full ()

BonoboPropertyBag * bonobo_property_bag_new_full        (GClosure *get_prop,
                                                         GClosure *set_prop,
                                                         BonoboEventSource *es);

Creates a new property bag with the specified callbacks.

get_prop :

the property get closure

set_prop :

the property set closure

es :

an event source to aggregate

Returns :

A new BonoboPropertyBag object.

bonobo_property_bag_construct ()

BonoboPropertyBag * bonobo_property_bag_construct       (BonoboPropertyBag *pb,
                                                         GClosure *get_prop,
                                                         GClosure *set_prop,
                                                         BonoboEventSource *es);

Constructor, only for use in wrappers and object derivation, please refer to the bonobo_property_bag_new for normal use.

This function returns pb, or NULL in case of error. If it returns NULL, the passed in pb is unrefed.

pb :

BonoboPropertyBag to construct

get_prop :

the property get closure

set_prop :

the property set closure

es :

an event source to aggregate

Returns :

BonoboPropertyBag pointer or NULL.

bonobo_property_bag_add ()

void                bonobo_property_bag_add             (BonoboPropertyBag *pb,
                                                         const char *name,
                                                         int idx,
                                                         BonoboArgType type,
                                                         BonoboArg *default_value,
                                                         const char *doctitle,
                                                         Bonobo_PropertyFlags flags);

Adds a property to the property bag.

pb :

property bag to add to

name :

name of new property

idx :

integer index for fast callback switch statement

type :

the CORBA type eg. TC_long

default_value :

the default value or NULL

doctitle :

the translated documentation string

flags :

various flags

bonobo_property_bag_add_full ()

void                bonobo_property_bag_add_full        (BonoboPropertyBag *pb,
                                                         const char *name,
                                                         int idx,
                                                         BonoboArgType type,
                                                         BonoboArg *default_value,
                                                         const char *doctitle,
                                                         const char *docstring,
                                                         Bonobo_PropertyFlags flags,
                                                         GClosure *get_prop,
                                                         GClosure *set_prop);

This adds a property to pb at the full tilt of complexity.

pb :

property bag to add to

name :

name of new property

idx :

integer index for fast callback switch statement

type :

the CORBA type eg. TC_long

default_value :

the default value or NULL

doctitle :

the translated documentation title

docstring :

the translated documentation string

flags :

various flags

get_prop :

a per property get callback

set_prop :

a per property set callback

bonobo_property_bag_remove ()

void                bonobo_property_bag_remove          (BonoboPropertyBag *pb,
                                                         const char *name);

removes the property with name from b.

pb :

the property bag

name :

name of property to remove.

bonobo_property_bag_map_params ()

void                bonobo_property_bag_map_params      (BonoboPropertyBag *pb,
                                                         GObject *on_instance,
                                                         const GParamSpec **pspecs,
                                                         guint n_params);

pb :

on_instance :

pspecs :

n_params :


bonobo_property_bag_get_prop_list ()

GList *             bonobo_property_bag_get_prop_list   (BonoboPropertyBag *pb);

pb :

A BonoboPropertyBag.

Returns :

a GList of BonoboProperty structures. This function is private and should only be used internally, or in a PropertyBag persistence implementation. You should not touch the BonoboProperty structure unless you know what you're doing.
libbonobo-2.32.1/doc/api/html/libbonobo-bonobo-moniker-context.html0000664000076400007640000001036211546334245022225 00000000000000 bonobo-moniker-context

bonobo-moniker-context

bonobo-moniker-context

Description

Details

BonoboMonikerContext

typedef struct {
	BonoboObject parent;

	BonoboMonikerContextPrivate *priv;
} BonoboMonikerContext;


BonoboMonikerContextClass

typedef struct {
	BonoboObjectClass parent;

	POA_Bonobo_MonikerContext__epv epv;
} BonoboMonikerContextClass;


bonobo_moniker_context_new ()

BonoboObject *      bonobo_moniker_context_new          (void);

Returns :

libbonobo-2.32.1/doc/api/html/libbonobo-bonobo-moniker-util.html0000664000076400007640000013462711546334245021531 00000000000000 bonobo-moniker-util

bonobo-moniker-util

bonobo-moniker-util — Object activation and construction through monikers.

Synopsis

Bonobo_Unknown      bonobo_get_object                   (const CORBA_char *name,
                                                         const char *interface_name,
                                                         CORBA_Environment *opt_ev);
Bonobo_Moniker      bonobo_moniker_client_new_from_name (const CORBA_char *name,
                                                         CORBA_Environment *opt_ev);
CORBA_char *        bonobo_moniker_client_get_name      (Bonobo_Moniker moniker,
                                                         CORBA_Environment *opt_ev);
Bonobo_Unknown      bonobo_moniker_client_resolve_default
                                                        (Bonobo_Moniker moniker,
                                                         const char *interface_name,
                                                         CORBA_Environment *opt_ev);
gboolean            bonobo_moniker_client_equal         (Bonobo_Moniker moniker,
                                                         const CORBA_char *name,
                                                         CORBA_Environment *opt_ev);
void                (*BonoboMonikerAsyncFn)             (Bonobo_Unknown object,
                                                         CORBA_Environment *ev,
                                                         gpointer user_data);
void                bonobo_get_object_async             (const CORBA_char *name,
                                                         const char *interface_name,
                                                         CORBA_Environment *ev,
                                                         BonoboMonikerAsyncFn cb,
                                                         gpointer user_data);
void                bonobo_moniker_client_new_from_name_async
                                                        (const CORBA_char *name,
                                                         CORBA_Environment *ev,
                                                         BonoboMonikerAsyncFn cb,
                                                         gpointer user_data);
void                bonobo_moniker_resolve_async        (Bonobo_Moniker moniker,
                                                         Bonobo_ResolveOptions *options,
                                                         const char *interface_name,
                                                         CORBA_Environment *ev,
                                                         BonoboMonikerAsyncFn cb,
                                                         gpointer user_data);
void                bonobo_moniker_resolve_async_default
                                                        (Bonobo_Moniker moniker,
                                                         const char *interface_name,
                                                         CORBA_Environment *ev,
                                                         BonoboMonikerAsyncFn cb,
                                                         gpointer user_data);
CORBA_char *        bonobo_moniker_util_get_parent_name (Bonobo_Moniker moniker,
                                                         CORBA_Environment *opt_ev);
Bonobo_Unknown      bonobo_moniker_util_qi_return       (Bonobo_Unknown object,
                                                         const CORBA_char *requested_interface,
                                                         CORBA_Environment *ev);
const char *        bonobo_moniker_util_parse_name      (const char *name,
                                                         int *plen);
int                 bonobo_moniker_util_seek_std_separator
                                                        (const CORBA_char *str,
                                                         int min_idx);
char *              bonobo_moniker_util_escape          (const char *string,
                                                         int offset);
char *              bonobo_moniker_util_unescape        (const char *string,
                                                         int num_chars);
void                bonobo_url_register                 (char *oafiid,
                                                         char *url,
                                                         char *mime_type,
                                                         Bonobo_Unknown object,
                                                         CORBA_Environment *ev);
void                bonobo_url_unregister               (char *oafiid,
                                                         char *url,
                                                         CORBA_Environment *ev);
Bonobo_Unknown      bonobo_url_lookup                   (char *oafiid,
                                                         char *url,
                                                         CORBA_Environment *ev);

Description

The moniker utility functions provide two sets of functions:

  • Helper functions for constructing and resolving monikers, and a simple get_object method that constructs and resolves against an interface in a single pass. Also, asynchronous versions of these methods are provided using the BonoboAsync code.

  • Helper functions for the implementation of new custom monikers are also provided here, along with a lot of the grunt code neccessary for moniker implementation, particularly constructing the chained list of sub-monikers that comprises a complex moniker.

The most useful function to get a feel for what monikers can do is the bonobo_get_object method. This is used to create a moniker and resolve it against a given interface like this:

Example 17. GetObject example

1
2
3
4
5
6
7
8
9
10
11
12
GtkWidget *
moniker_resolve_demo (void)
{
    Bonobo_Control control;
    CORBA_Environment ev;
    CORBA_exception_init (&ev);
    control = bonobo_get_object ("file:/demo/a.jpeg",
                                     "Bonobo/Control", NULL);
    if (control == CORBA_OBJECT_NIL)
        g_error ("Failed to get object file:/demo/a.jpeg");
    return bonobo_widget_new_control (control);
}


This also makes a control out of the widget.

It is worth noting that when resolving monikers a contracted version of the interface name may be used, ommitting the 'IDL:' prefix and / or the ':0' suffix.

Details

bonobo_get_object ()

Bonobo_Unknown      bonobo_get_object                   (const CORBA_char *name,
                                                         const char *interface_name,
                                                         CORBA_Environment *opt_ev);

This encapsulates both the parse stage and resolve process of using a moniker, providing a simple VisualBasic like mechanism for using the object name space.

name :

the name of a moniker

interface_name :

the name of the interface we want returned as the result

opt_ev :

an optional corba exception environment

Returns :

the requested interface or CORBA_OBJECT_NIL

bonobo_moniker_client_new_from_name ()

Bonobo_Moniker      bonobo_moniker_client_new_from_name (const CORBA_char *name,
                                                         CORBA_Environment *opt_ev);

This routine tries to parse a Moniker in string form

eg. file:/tmp/a.tar.gzgzip:tar:

into a CORBA_Object representation of this that can later be resolved against an interface.

name :

the name of a moniker

opt_ev :

an optional corba exception environment

Returns :

a new Moniker handle

bonobo_moniker_client_get_name ()

CORBA_char *        bonobo_moniker_client_get_name      (Bonobo_Moniker moniker,
                                                         CORBA_Environment *opt_ev);

moniker :

a moniker handle

opt_ev :

a corba exception environment

Returns :

the name of the moniker.

bonobo_moniker_client_resolve_default ()

Bonobo_Unknown      bonobo_moniker_client_resolve_default
                                                        (Bonobo_Moniker moniker,
                                                         const char *interface_name,
                                                         CORBA_Environment *opt_ev);

This resolves the moniker object against the given interface, with a default set of resolve options.

moniker :

a moniker

interface_name :

the name of the interface we want returned as the result

opt_ev :

an optional corba exception environment

Returns :

the interfaces resolved to or CORBA_OBJECT_NIL

bonobo_moniker_client_equal ()

gboolean            bonobo_moniker_client_equal         (Bonobo_Moniker moniker,
                                                         const CORBA_char *name,
                                                         CORBA_Environment *opt_ev);

Compare a full moniker with the given name

moniker :

The moniker

name :

a moniker name eg. file:/demo/a.jpeg

opt_ev :

optional CORBA_Environment or NULL.

Returns :

TRUE if they are the same

BonoboMonikerAsyncFn ()

void                (*BonoboMonikerAsyncFn)             (Bonobo_Unknown object,
                                                         CORBA_Environment *ev,
                                                         gpointer user_data);

Callback function, invoked when bonobo_get_object_async() completes its work.

object :

the newly-activated object, or CORBA_OBJECT_NIL if an exception occurred

ev :

CORBA environment that may contain an exception if an activation error occurred

user_data :

user data

bonobo_get_object_async ()

void                bonobo_get_object_async             (const CORBA_char *name,
                                                         const char *interface_name,
                                                         CORBA_Environment *ev,
                                                         BonoboMonikerAsyncFn cb,
                                                         gpointer user_data);

An async version of bonobo_get_object

interface_name :

the name of the interface we want returned as the result

ev :

a corba exception environment

cb :

the async callback that gets the response

user_data :

user context data to pass to that callback

bonobo_moniker_client_new_from_name_async ()

void                bonobo_moniker_client_new_from_name_async
                                                        (const CORBA_char *name,
                                                         CORBA_Environment *ev,
                                                         BonoboMonikerAsyncFn cb,
                                                         gpointer user_data);

An asynchronous version of new_from_name

name :

the name

ev :

a corba exception environment

cb :

the async callback that gets the response

user_data :

user context data to pass to that callback

bonobo_moniker_resolve_async ()

void                bonobo_moniker_resolve_async        (Bonobo_Moniker moniker,
                                                         Bonobo_ResolveOptions *options,
                                                         const char *interface_name,
                                                         CORBA_Environment *ev,
                                                         BonoboMonikerAsyncFn cb,
                                                         gpointer user_data);

An async version of bonobo_moniker_client_resolve

moniker :

the moniker to resolve

options :

resolve options

interface_name :

the name of the interface we want returned as the result

ev :

a corba exception environment

cb :

the async callback that gets the response

user_data :

user context data to pass to that callback

bonobo_moniker_resolve_async_default ()

void                bonobo_moniker_resolve_async_default
                                                        (Bonobo_Moniker moniker,
                                                         const char *interface_name,
                                                         CORBA_Environment *ev,
                                                         BonoboMonikerAsyncFn cb,
                                                         gpointer user_data);

An async version of bonobo_moniker_client_resolve_default

interface_name :

the name of the interface we want returned as the result

ev :

a corba exception environment

cb :

the async callback that gets the response

user_data :

user context data to pass to that callback

bonobo_moniker_util_get_parent_name ()

CORBA_char *        bonobo_moniker_util_get_parent_name (Bonobo_Moniker moniker,
                                                         CORBA_Environment *opt_ev);

This gets the name of the parent moniker ( recursively all of the parents of this moniker ).

moniker :

the moniker

opt_ev :

an optional corba exception environment

Returns :

the name; use CORBA_free to release it.

bonobo_moniker_util_qi_return ()

Bonobo_Unknown      bonobo_moniker_util_qi_return       (Bonobo_Unknown object,
                                                         const CORBA_char *requested_interface,
                                                         CORBA_Environment *ev);

A helper function to share code from the end of a resolve implementation; this ensures that the returned object is of the correct interface by doing a queryInterface on the object.

object :

the unknown to query

requested_interface :

the desired interface

ev :

a corba exception environment

Returns :

an handle to the requested interface

bonobo_moniker_util_parse_name ()

const char *        bonobo_moniker_util_parse_name      (const char *name,
                                                         int *plen);

This routine finds the rightmost moniker name. For example it will return "cache:" if you pass in "file:/tmp.txtcache:". It will also store the length of the parent string in plen (13 for the above example)

name :

a moniker name

plen :

an optional pointer to store the parent length

Returns :

the name of the rightmost moniker

bonobo_moniker_util_seek_std_separator ()

int                 bonobo_moniker_util_seek_std_separator
                                                        (const CORBA_char *str,
                                                         int min_idx);

This looks for a moniker separator in a moniker's name string.

See also bonobo_moniker_util_escape

str :

the string to scan

min_idx :

the minimum offset at which a separator can be found.

Returns :

the position of the separator, or a pointer to the end of the string.

bonobo_moniker_util_escape ()

char *              bonobo_moniker_util_escape          (const char *string,
                                                         int offset);

Escapes possible separator characters inside a moniker these include '!' and '#', the '\' escaping character is used.

string :

an unescaped string

offset :

an offset of characters to ignore

Returns :

an escaped sub-string.

bonobo_moniker_util_unescape ()

char *              bonobo_moniker_util_unescape        (const char *string,
                                                         int num_chars);

This routine strips num_chars: from the start of string, discards the rest, and proceeds to un-escape characters escaped with '\'.

string :

a string

num_chars :

the number of chars to process.

Returns :

the unescaped sub string.

bonobo_url_register ()

void                bonobo_url_register                 (char *oafiid,
                                                         char *url,
                                                         char *mime_type,
                                                         Bonobo_Unknown object,
                                                         CORBA_Environment *ev);

oafiid :

url :

mime_type :

object :

ev :


bonobo_url_unregister ()

void                bonobo_url_unregister               (char *oafiid,
                                                         char *url,
                                                         CORBA_Environment *ev);

oafiid :

url :

ev :


bonobo_url_lookup ()

Bonobo_Unknown      bonobo_url_lookup                   (char *oafiid,
                                                         char *url,
                                                         CORBA_Environment *ev);

oafiid :

url :

ev :

Returns :

libbonobo-2.32.1/doc/api/html/libbonobo-bonobo-storage-memory.html0000664000076400007640000000664111546334245022056 00000000000000 bonobo-storage-memory

bonobo-storage-memory

bonobo-storage-memory

Description

Details

bonobo_storage_mem_create ()

BonoboObject *      bonobo_storage_mem_create           (void);

Returns :

libbonobo-2.32.1/doc/api/html/libbonobo-bonobo-persist-stream.html0000664000076400007640000007404111546334245022065 00000000000000 BonoboPersistStream

BonoboPersistStream

BonoboPersistStream — Interface for anything that can save / load itself from a Bonobo stream.

Synopsis

                    BonoboPersistStream;
                    BonoboPersistStreamClass;
void                (*BonoboPersistStreamIOFn)          (BonoboPersistStream *ps,
                                                         const Bonobo_Stream stream,
                                                         Bonobo_Persist_ContentType type,
                                                         void *closure,
                                                         CORBA_Environment *ev);
Bonobo_Persist_ContentTypeList * (*BonoboPersistStreamTypesFn)
                                                        (BonoboPersistStream *ps,
                                                         void *closure,
                                                         CORBA_Environment *ev);
BonoboPersistStream * bonobo_persist_stream_new         (BonoboPersistStreamIOFn load_fn,
                                                         BonoboPersistStreamIOFn save_fn,
                                                         BonoboPersistStreamTypesFn types_fn,
                                                         const gchar *iid,
                                                         void *closure);
BonoboPersistStream * bonobo_persist_stream_construct   (BonoboPersistStream *ps,
                                                         BonoboPersistStreamIOFn load_fn,
                                                         BonoboPersistStreamIOFn save_fn,
                                                         BonoboPersistStreamTypesFn types_fn,
                                                         const gchar *iid,
                                                         void *closure);

Object Hierarchy

  GObject
   +----BonoboObject
         +----BonoboPersist
               +----BonoboPersistStream

Description

The PersistStream interface is the interface to use for all new components that are able to load and save themselves to a stream. It should be associated with any BonoboEmbeddable for use by the container in creating a compound document.

This interface works by connecting callbacks to the methods, in a somewhat deprecated fashion, it is probably better nowadays to simply sub-class the BonoboXObject and override the epv methods. Either way, after all the caveats here is an example use:

Example 28. Implementing the PersistStream callbacks

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
static void
load_from_stream (BonoboPersistStream        *ps,
                  const Bonobo_Stream         stream,
                  Bonobo_Persist_ContentType  type,
                  void                       *closure,
                  CORBA_Environment          *ev)
{
    EogImageData *image_data = closure;
    g_warning ("Load content from stream of type '%s'", type);
}
static gint
save_to_stream (BonoboPersistStream        *ps,
                const Bonobo_Stream         stream,
                Bonobo_Persist_ContentType  type,
                void                       *closure,
                CORBA_Environment          *ev)
{
    EogImageData *image_data = closure;
    g_warning ("Save content to stream with type '%s'", type);
}
static Bonobo_Persist_ContentTypeList *
get_supported_types (BonoboPersistStream *ps,
                     void                *closure,
                     CORBA_Environment   *ev)
{
    return bonobo_persist_generate_content_types (
        2, "text/plain", "text/html");
}


Having implemented the callbacks we then have to register them and aggregate the interface to our object:

Example 29. Aggregating a new PersistStream

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
EogImageData *
eog_image_data_construct (EogImageData *image_data)
{
    BonoboObject        *retval;
    BonoboPersistStream *ps;
    ps = bonobo_persist_stream_new (
        load_from_stream, save_to_stream,
        get_supported_types, NULL,
        image_data);
    if (ps == NULL) {
        bonobo_object_unref (BONOBO_OBJECT (image_data));
        return NULL;
    }
    bonobo_object_add_interface (BONOBO_OBJECT (image_data),
                     BONOBO_OBJECT (ps));
    return image_data;
}


Details

BonoboPersistStream

typedef struct _BonoboPersistStream BonoboPersistStream;

Warning

BonoboPersistStream is deprecated and should not be used in newly-written code.


BonoboPersistStreamClass

typedef struct {
	BonoboPersistClass parent_class;

	POA_Bonobo_PersistStream__epv epv;

	/* methods */
	void       (*load)         (BonoboPersistStream        *ps,
				    Bonobo_Stream              stream,
				    Bonobo_Persist_ContentType type,
				    CORBA_Environment          *ev);
	void       (*save)         (BonoboPersistStream        *ps,
				    Bonobo_Stream              stream,
				    Bonobo_Persist_ContentType type,
				    CORBA_Environment          *ev);

	Bonobo_Persist_ContentTypeList * (*get_content_types) (BonoboPersistStream *ps,
							       CORBA_Environment   *ev);
} BonoboPersistStreamClass;

Warning

BonoboPersistStreamClass is deprecated and should not be used in newly-written code.


BonoboPersistStreamIOFn ()

void                (*BonoboPersistStreamIOFn)          (BonoboPersistStream *ps,
                                                         const Bonobo_Stream stream,
                                                         Bonobo_Persist_ContentType type,
                                                         void *closure,
                                                         CORBA_Environment *ev);

Warning

BonoboPersistStreamIOFn is deprecated and should not be used in newly-written code.

ps :

stream :

type :

closure :

ev :


BonoboPersistStreamTypesFn ()

Bonobo_Persist_ContentTypeList * (*BonoboPersistStreamTypesFn)
                                                        (BonoboPersistStream *ps,
                                                         void *closure,
                                                         CORBA_Environment *ev);

Warning

BonoboPersistStreamTypesFn is deprecated and should not be used in newly-written code.

ps :

closure :

ev :

Returns :


bonobo_persist_stream_new ()

BonoboPersistStream * bonobo_persist_stream_new         (BonoboPersistStreamIOFn load_fn,
                                                         BonoboPersistStreamIOFn save_fn,
                                                         BonoboPersistStreamTypesFn types_fn,
                                                         const gchar *iid,
                                                         void *closure);

Warning

bonobo_persist_stream_new is deprecated and should not be used in newly-written code.

Creates a new BonoboPersistStream object. The various operations for the object are performed by the provided callback functions, which are passed closure when they are invoked. If any callback is NULL, the corresponding operation is performed by the class load and save routines.

load_fn :

Loading routine

save_fn :

Saving routine

types_fn :

get_content_types routine

iid :

OAF IID of the object this interface is aggregated to

closure :

Data passed to IO routines.

Returns :

the newly-created BonoboPersistStream object.

bonobo_persist_stream_construct ()

BonoboPersistStream * bonobo_persist_stream_construct   (BonoboPersistStream *ps,
                                                         BonoboPersistStreamIOFn load_fn,
                                                         BonoboPersistStreamIOFn save_fn,
                                                         BonoboPersistStreamTypesFn types_fn,
                                                         const gchar *iid,
                                                         void *closure);

Warning

bonobo_persist_stream_construct is deprecated and should not be used in newly-written code.

Initializes the BonoboPersistStream object. The load and save operations for the object are performed by the provided load_fn and save_fn callback functions, which are passed closure when they are invoked. If either load_fn or save_fn is NULL, the corresponding operation is performed by the class load and save routines.

ps :

A BonoboPersistStream object

load_fn :

Loading routine

save_fn :

Saving routine

types_fn :

returns the supported types

iid :

OAF IID of the object this interface is aggregated to

closure :

Data passed to IO routines.

Returns :

The initialized BonoboPersistStream object.
libbonobo-2.32.1/doc/api/html/ix01.html0000664000076400007640000021053011546334245014440 00000000000000 Index

Index

B

BonoboAppClientMsgDesc, BonoboAppClientMsgDesc
BonoboAppHookFunc, BonoboAppHookFunc ()
BonoboArg, BonoboArg
BonoboArgType, BonoboArgType
BonoboExceptionFn, BonoboExceptionFn ()
BonoboFactoryCallback, BonoboFactoryCallback ()
BonoboItemContainer, BonoboItemContainer
BonoboItemContainer::get-object, The "get-object" signal
BonoboItemContainerClass, BonoboItemContainerClass
BonoboItemHandler, BonoboItemHandler
BonoboItemHandlerClass, BonoboItemHandlerClass
BonoboItemOption, BonoboItemOption
BonoboListener, BonoboListener
BonoboListener::event-notify, The "event-notify" signal
BonoboListenerCallbackFn, BonoboListenerCallbackFn ()
BonoboListenerClass, BonoboListenerClass
BonoboMoniker, BonoboMoniker
BonoboMonikerAsyncFn, BonoboMonikerAsyncFn ()
BonoboMonikerClass, BonoboMonikerClass
BonoboMonikerContext, BonoboMonikerContext
BonoboMonikerContextClass, BonoboMonikerContextClass
BonoboMonikerExtender, BonoboMonikerExtender
BonoboMonikerExtenderClass, BonoboMonikerExtenderClass
BonoboMonikerExtenderFn, BonoboMonikerExtenderFn ()
BonoboMonikerSimple, BonoboMonikerSimple
BonoboMonikerSimpleClass, BonoboMonikerSimpleClass
BonoboMonikerSimpleResolveFn, BonoboMonikerSimpleResolveFn ()
BonoboObject, BonoboObject
BonoboObject::destroy, The "destroy" signal
BonoboObject::system-exception, The "system-exception" signal
BonoboObject:poa, The "poa" property
BonoboObjectClass, BonoboObjectClass
BonoboObjectPOAFn, BonoboObjectPOAFn ()
BonoboPersist, BonoboPersist
BonoboPersistClass, BonoboPersistClass
BonoboPersistFile, BonoboPersistFile
BonoboPersistFileClass, BonoboPersistFileClass
BonoboPersistFileIOFn, BonoboPersistFileIOFn ()
BonoboPersistStream, BonoboPersistStream
BonoboPersistStreamClass, BonoboPersistStreamClass
BonoboPersistStreamIOFn, BonoboPersistStreamIOFn ()
BonoboPersistStreamTypesFn, BonoboPersistStreamTypesFn ()
BonoboProperty, BonoboProperty
BonoboPropertyBag, BonoboPropertyBag
BonoboPropertyBagClass, BonoboPropertyBagClass
BonoboPropertyGetFn, BonoboPropertyGetFn ()
BonoboPropertySetFn, BonoboPropertySetFn ()
BonoboRunningContext, BonoboRunningContext
BonoboRunningContextClass, BonoboRunningContextClass
BonoboShlibFactory, BonoboShlibFactory
BonoboShlibFactoryClass, BonoboShlibFactoryClass
BonoboStreamMem, BonoboStreamMem
BonoboStreamMemClass, BonoboStreamMemClass
bonobo_activate, bonobo_activate ()
BONOBO_ACTIVATION_FACTORY, BONOBO_ACTIVATION_FACTORY()
BONOBO_ACTIVATION_FACTORY_TIMEOUT, BONOBO_ACTIVATION_FACTORY_TIMEOUT()
BONOBO_ACTIVATION_SHLIB_FACTORY, BONOBO_ACTIVATION_SHLIB_FACTORY()
bonobo_application_add_hook, bonobo_application_add_hook ()
bonobo_application_create_serverinfo, bonobo_application_create_serverinfo ()
bonobo_application_new, bonobo_application_new ()
bonobo_application_new_instance, bonobo_application_new_instance ()
bonobo_application_register_message, bonobo_application_register_message ()
bonobo_application_register_message_v, bonobo_application_register_message_v ()
bonobo_application_register_message_va, bonobo_application_register_message_va ()
bonobo_application_register_unique, bonobo_application_register_unique ()
bonobo_application_remove_hook, bonobo_application_remove_hook ()
bonobo_app_client_msg_send, bonobo_app_client_msg_send ()
bonobo_app_client_msg_send_argv, bonobo_app_client_msg_send_argv ()
bonobo_app_client_msg_send_valist, bonobo_app_client_msg_send_valist ()
bonobo_app_client_new, bonobo_app_client_new ()
bonobo_app_client_new_instance, bonobo_app_client_new_instance ()
BONOBO_ARG_BOOLEAN, BONOBO_ARG_BOOLEAN
BONOBO_ARG_CHAR, BONOBO_ARG_CHAR
bonobo_arg_copy, bonobo_arg_copy ()
BONOBO_ARG_DOUBLE, BONOBO_ARG_DOUBLE
BONOBO_ARG_FLOAT, BONOBO_ARG_FLOAT
bonobo_arg_from_gvalue, bonobo_arg_from_gvalue ()
BONOBO_ARG_GET_BOOLEAN, BONOBO_ARG_GET_BOOLEAN()
BONOBO_ARG_GET_CHAR, BONOBO_ARG_GET_CHAR()
BONOBO_ARG_GET_DOUBLE, BONOBO_ARG_GET_DOUBLE()
BONOBO_ARG_GET_FLOAT, BONOBO_ARG_GET_FLOAT()
BONOBO_ARG_GET_GENERAL, BONOBO_ARG_GET_GENERAL()
BONOBO_ARG_GET_INT, BONOBO_ARG_GET_INT()
BONOBO_ARG_GET_LONG, BONOBO_ARG_GET_LONG()
BONOBO_ARG_GET_LONGLONG, BONOBO_ARG_GET_LONGLONG()
BONOBO_ARG_GET_SHORT, BONOBO_ARG_GET_SHORT()
BONOBO_ARG_GET_STRING, BONOBO_ARG_GET_STRING()
BONOBO_ARG_INT, BONOBO_ARG_INT
bonobo_arg_is_equal, bonobo_arg_is_equal ()
BONOBO_ARG_LONG, BONOBO_ARG_LONG
BONOBO_ARG_LONGLONG, BONOBO_ARG_LONGLONG
bonobo_arg_new, bonobo_arg_new ()
bonobo_arg_new_from, bonobo_arg_new_from ()
BONOBO_ARG_NULL, BONOBO_ARG_NULL
bonobo_arg_release, bonobo_arg_release ()
BONOBO_ARG_SET_BOOLEAN, BONOBO_ARG_SET_BOOLEAN()
BONOBO_ARG_SET_CHAR, BONOBO_ARG_SET_CHAR()
BONOBO_ARG_SET_DOUBLE, BONOBO_ARG_SET_DOUBLE()
BONOBO_ARG_SET_FLOAT, BONOBO_ARG_SET_FLOAT()
BONOBO_ARG_SET_GENERAL, BONOBO_ARG_SET_GENERAL()
BONOBO_ARG_SET_INT, BONOBO_ARG_SET_INT()
BONOBO_ARG_SET_LONG, BONOBO_ARG_SET_LONG()
BONOBO_ARG_SET_LONGLONG, BONOBO_ARG_SET_LONGLONG()
BONOBO_ARG_SET_SHORT, BONOBO_ARG_SET_SHORT()
BONOBO_ARG_SET_STRING, BONOBO_ARG_SET_STRING()
BONOBO_ARG_SHORT, BONOBO_ARG_SHORT
BONOBO_ARG_STRING, BONOBO_ARG_STRING
bonobo_arg_to_gvalue, bonobo_arg_to_gvalue ()
bonobo_arg_type_from_gtype, bonobo_arg_type_from_gtype ()
bonobo_arg_type_is_equal, bonobo_arg_type_is_equal ()
bonobo_arg_type_to_gtype, bonobo_arg_type_to_gtype ()
bonobo_closure_invoke, bonobo_closure_invoke ()
bonobo_closure_invoke_va_list, bonobo_closure_invoke_va_list ()
bonobo_closure_store, bonobo_closure_store ()
bonobo_config_get_boolean, bonobo_config_get_boolean ()
bonobo_config_get_boolean_with_default, bonobo_config_get_boolean_with_default ()
bonobo_config_get_char, bonobo_config_get_char ()
bonobo_config_get_char_with_default, bonobo_config_get_char_with_default ()
bonobo_config_get_double, bonobo_config_get_double ()
bonobo_config_get_double_with_default, bonobo_config_get_double_with_default ()
bonobo_config_get_float, bonobo_config_get_float ()
bonobo_config_get_float_with_default, bonobo_config_get_float_with_default ()
bonobo_config_get_long, bonobo_config_get_long ()
bonobo_config_get_long_with_default, bonobo_config_get_long_with_default ()
bonobo_config_get_short, bonobo_config_get_short ()
bonobo_config_get_short_with_default, bonobo_config_get_short_with_default ()
bonobo_config_get_string, bonobo_config_get_string ()
bonobo_config_get_string_with_default, bonobo_config_get_string_with_default ()
bonobo_config_get_ulong, bonobo_config_get_ulong ()
bonobo_config_get_ulong_with_default, bonobo_config_get_ulong_with_default ()
bonobo_config_get_ushort, bonobo_config_get_ushort ()
bonobo_config_get_ushort_with_default, bonobo_config_get_ushort_with_default ()
bonobo_config_get_value, bonobo_config_get_value ()
bonobo_config_set_boolean, bonobo_config_set_boolean ()
bonobo_config_set_char, bonobo_config_set_char ()
bonobo_config_set_double, bonobo_config_set_double ()
bonobo_config_set_float, bonobo_config_set_float ()
bonobo_config_set_long, bonobo_config_set_long ()
bonobo_config_set_short, bonobo_config_set_short ()
bonobo_config_set_string, bonobo_config_set_string ()
bonobo_config_set_ulong, bonobo_config_set_ulong ()
bonobo_config_set_ushort, bonobo_config_set_ushort ()
bonobo_config_set_value, bonobo_config_set_value ()
bonobo_context_add, bonobo_context_add ()
bonobo_context_get, bonobo_context_get ()
bonobo_context_init, bonobo_context_init ()
bonobo_context_running_get, bonobo_context_running_get ()
bonobo_context_shutdown, bonobo_context_shutdown ()
bonobo_corba_object_type_register_static, bonobo_corba_object_type_register_static ()
bonobo_debug_init, bonobo_debug_init ()
bonobo_debug_print, bonobo_debug_print ()
bonobo_debug_shutdown, bonobo_debug_shutdown ()
bonobo_event_idl_path, bonobo_event_idl_path ()
bonobo_event_kind, bonobo_event_kind ()
bonobo_event_make_name, bonobo_event_make_name ()
bonobo_event_source_client_add_listener, bonobo_event_source_client_add_listener ()
bonobo_event_source_client_add_listener_closure, bonobo_event_source_client_add_listener_closure ()
bonobo_event_source_client_add_listener_full, bonobo_event_source_client_add_listener_full ()
bonobo_event_source_client_remove_listener, bonobo_event_source_client_remove_listener ()
bonobo_event_source_has_listener, bonobo_event_source_has_listener ()
bonobo_event_source_ignore_listeners, bonobo_event_source_ignore_listeners ()
bonobo_event_source_new, bonobo_event_source_new ()
bonobo_event_source_notify_listeners, bonobo_event_source_notify_listeners ()
bonobo_event_source_notify_listeners_full, bonobo_event_source_notify_listeners_full ()
bonobo_event_subtype, bonobo_event_subtype ()
bonobo_event_type, bonobo_event_type ()
BONOBO_EX, BONOBO_EX()
bonobo_exception_add_handler_fn, bonobo_exception_add_handler_fn ()
bonobo_exception_add_handler_str, bonobo_exception_add_handler_str ()
bonobo_exception_general_error_get, bonobo_exception_general_error_get ()
bonobo_exception_general_error_set, bonobo_exception_general_error_set ()
bonobo_exception_get_text, bonobo_exception_get_text ()
bonobo_exception_repoid_to_text, bonobo_exception_repoid_to_text ()
bonobo_exception_set, bonobo_exception_set()
bonobo_exception_shutdown, bonobo_exception_shutdown ()
BONOBO_EX_REPOID, BONOBO_EX_REPOID()
BONOBO_FACTORY_INIT, BONOBO_FACTORY_INIT()
bonobo_generic_factory_construct, bonobo_generic_factory_construct ()
bonobo_generic_factory_construct_noreg, bonobo_generic_factory_construct_noreg ()
bonobo_generic_factory_main, bonobo_generic_factory_main ()
bonobo_generic_factory_main_timeout, bonobo_generic_factory_main_timeout ()
bonobo_generic_factory_new, bonobo_generic_factory_new ()
bonobo_generic_factory_new_closure, bonobo_generic_factory_new_closure ()
bonobo_get_object, bonobo_get_object ()
bonobo_get_object_async, bonobo_get_object_async ()
bonobo_init, bonobo_init ()
bonobo_init_full, bonobo_init_full ()
bonobo_is_initialized, bonobo_is_initialized ()
bonobo_item_container_add, bonobo_item_container_add ()
bonobo_item_container_new, bonobo_item_container_new ()
bonobo_item_container_remove_by_name, bonobo_item_container_remove_by_name ()
bonobo_item_handler_construct, bonobo_item_handler_construct ()
bonobo_item_handler_new, bonobo_item_handler_new ()
bonobo_item_handler_new_closure, bonobo_item_handler_new_closure ()
bonobo_item_options_free, bonobo_item_options_free ()
bonobo_item_option_parse, bonobo_item_option_parse ()
bonobo_listener_new, bonobo_listener_new ()
bonobo_listener_new_closure, bonobo_listener_new_closure ()
bonobo_main, bonobo_main ()
bonobo_main_level, bonobo_main_level ()
bonobo_main_quit, bonobo_main_quit ()
bonobo_moniker_client_equal, bonobo_moniker_client_equal ()
bonobo_moniker_client_get_name, bonobo_moniker_client_get_name ()
bonobo_moniker_client_new_from_name, bonobo_moniker_client_new_from_name ()
bonobo_moniker_client_new_from_name_async, bonobo_moniker_client_new_from_name_async ()
bonobo_moniker_client_resolve_default, bonobo_moniker_client_resolve_default ()
bonobo_moniker_construct, bonobo_moniker_construct ()
bonobo_moniker_context_new, bonobo_moniker_context_new ()
bonobo_moniker_extender_new, bonobo_moniker_extender_new ()
bonobo_moniker_find_extender, bonobo_moniker_find_extender ()
bonobo_moniker_get_case_sensitive, bonobo_moniker_get_case_sensitive ()
bonobo_moniker_get_name, bonobo_moniker_get_name ()
bonobo_moniker_get_name_escaped, bonobo_moniker_get_name_escaped ()
bonobo_moniker_get_name_full, bonobo_moniker_get_name_full ()
bonobo_moniker_get_parent, bonobo_moniker_get_parent ()
bonobo_moniker_get_prefix, bonobo_moniker_get_prefix ()
bonobo_moniker_resolve_async, bonobo_moniker_resolve_async ()
bonobo_moniker_resolve_async_default, bonobo_moniker_resolve_async_default ()
bonobo_moniker_set_case_sensitive, bonobo_moniker_set_case_sensitive ()
bonobo_moniker_set_name, bonobo_moniker_set_name ()
bonobo_moniker_set_parent, bonobo_moniker_set_parent ()
bonobo_moniker_simple_construct, bonobo_moniker_simple_construct ()
bonobo_moniker_simple_new, bonobo_moniker_simple_new ()
bonobo_moniker_simple_new_closure, bonobo_moniker_simple_new_closure ()
bonobo_moniker_use_extender, bonobo_moniker_use_extender ()
bonobo_moniker_util_escape, bonobo_moniker_util_escape ()
bonobo_moniker_util_get_parent_name, bonobo_moniker_util_get_parent_name ()
bonobo_moniker_util_parse_name, bonobo_moniker_util_parse_name ()
bonobo_moniker_util_qi_return, bonobo_moniker_util_qi_return ()
bonobo_moniker_util_seek_std_separator, bonobo_moniker_util_seek_std_separator ()
bonobo_moniker_util_unescape, bonobo_moniker_util_unescape ()
BONOBO_OAF_FACTORY, BONOBO_OAF_FACTORY()
BONOBO_OAF_FACTORY_MULTI, BONOBO_OAF_FACTORY_MULTI()
BONOBO_OAF_SHLIB_FACTORY, BONOBO_OAF_SHLIB_FACTORY()
BONOBO_OAF_SHLIB_FACTORY_MULTI, BONOBO_OAF_SHLIB_FACTORY_MULTI()
bonobo_object, bonobo_object ()
bonobo_object_add_interface, bonobo_object_add_interface ()
BONOBO_OBJECT_CHECK, BONOBO_OBJECT_CHECK()
bonobo_object_check_env, bonobo_object_check_env ()
bonobo_object_corba_objref, bonobo_object_corba_objref ()
bonobo_object_dump_interfaces, bonobo_object_dump_interfaces ()
bonobo_object_dup_ref, bonobo_object_dup_ref ()
bonobo_object_fast, bonobo_object_fast()
bonobo_object_from_servant, bonobo_object_from_servant()
bonobo_object_from_stream, bonobo_object_from_stream ()
bonobo_object_get_poa, bonobo_object_get_poa ()
bonobo_object_get_servant, bonobo_object_get_servant()
bonobo_object_idle_unref, bonobo_object_idle_unref ()
bonobo_object_list_unref_all, bonobo_object_list_unref_all ()
bonobo_object_query_interface, bonobo_object_query_interface ()
bonobo_object_query_local_interface, bonobo_object_query_local_interface ()
bonobo_object_query_remote, bonobo_object_query_remote ()
bonobo_object_ref, bonobo_object_ref ()
bonobo_object_release_unref, bonobo_object_release_unref ()
bonobo_object_save_to_stream, bonobo_object_save_to_stream ()
bonobo_object_set_immortal, bonobo_object_set_immortal ()
bonobo_object_shutdown, bonobo_object_shutdown ()
bonobo_object_slist_unref_all, bonobo_object_slist_unref_all ()
bonobo_object_trace_refs, bonobo_object_trace_refs ()
BONOBO_OBJECT_TYPE, BONOBO_OBJECT_TYPE
bonobo_object_unref, bonobo_object_unref ()
BONOBO_OBJREF, BONOBO_OBJREF()
bonobo_orb, bonobo_orb ()
bonobo_pbclient_free_keys, bonobo_pbclient_free_keys ()
bonobo_pbclient_get, bonobo_pbclient_get ()
bonobo_pbclient_getv, bonobo_pbclient_getv ()
bonobo_pbclient_get_boolean, bonobo_pbclient_get_boolean ()
bonobo_pbclient_get_boolean_with_default, bonobo_pbclient_get_boolean_with_default ()
bonobo_pbclient_get_char, bonobo_pbclient_get_char ()
bonobo_pbclient_get_char_with_default, bonobo_pbclient_get_char_with_default ()
bonobo_pbclient_get_default_boolean, bonobo_pbclient_get_default_boolean ()
bonobo_pbclient_get_default_char, bonobo_pbclient_get_default_char ()
bonobo_pbclient_get_default_double, bonobo_pbclient_get_default_double ()
bonobo_pbclient_get_default_float, bonobo_pbclient_get_default_float ()
bonobo_pbclient_get_default_long, bonobo_pbclient_get_default_long ()
bonobo_pbclient_get_default_short, bonobo_pbclient_get_default_short ()
bonobo_pbclient_get_default_string, bonobo_pbclient_get_default_string ()
bonobo_pbclient_get_default_ulong, bonobo_pbclient_get_default_ulong ()
bonobo_pbclient_get_default_ushort, bonobo_pbclient_get_default_ushort ()
bonobo_pbclient_get_default_value, bonobo_pbclient_get_default_value ()
bonobo_pbclient_get_doc, bonobo_pbclient_get_doc ()
bonobo_pbclient_get_doc_title, bonobo_pbclient_get_doc_title ()
bonobo_pbclient_get_double, bonobo_pbclient_get_double ()
bonobo_pbclient_get_double_with_default, bonobo_pbclient_get_double_with_default ()
bonobo_pbclient_get_flags, bonobo_pbclient_get_flags ()
bonobo_pbclient_get_float, bonobo_pbclient_get_float ()
bonobo_pbclient_get_float_with_default, bonobo_pbclient_get_float_with_default ()
bonobo_pbclient_get_keys, bonobo_pbclient_get_keys ()
bonobo_pbclient_get_long, bonobo_pbclient_get_long ()
bonobo_pbclient_get_long_with_default, bonobo_pbclient_get_long_with_default ()
bonobo_pbclient_get_short, bonobo_pbclient_get_short ()
bonobo_pbclient_get_short_with_default, bonobo_pbclient_get_short_with_default ()
bonobo_pbclient_get_string, bonobo_pbclient_get_string ()
bonobo_pbclient_get_string_with_default, bonobo_pbclient_get_string_with_default ()
bonobo_pbclient_get_ulong, bonobo_pbclient_get_ulong ()
bonobo_pbclient_get_ulong_with_default, bonobo_pbclient_get_ulong_with_default ()
bonobo_pbclient_get_ushort, bonobo_pbclient_get_ushort ()
bonobo_pbclient_get_ushort_with_default, bonobo_pbclient_get_ushort_with_default ()
bonobo_pbclient_get_value, bonobo_pbclient_get_value ()
bonobo_pbclient_set, bonobo_pbclient_set ()
bonobo_pbclient_setv, bonobo_pbclient_setv ()
bonobo_pbclient_set_boolean, bonobo_pbclient_set_boolean ()
bonobo_pbclient_set_char, bonobo_pbclient_set_char ()
bonobo_pbclient_set_double, bonobo_pbclient_set_double ()
bonobo_pbclient_set_float, bonobo_pbclient_set_float ()
bonobo_pbclient_set_long, bonobo_pbclient_set_long ()
bonobo_pbclient_set_short, bonobo_pbclient_set_short ()
bonobo_pbclient_set_string, bonobo_pbclient_set_string ()
bonobo_pbclient_set_ulong, bonobo_pbclient_set_ulong ()
bonobo_pbclient_set_ushort, bonobo_pbclient_set_ushort ()
bonobo_pbclient_set_value, bonobo_pbclient_set_value ()
bonobo_pbclient_set_value_async, bonobo_pbclient_set_value_async ()
bonobo_persist_construct, bonobo_persist_construct ()
bonobo_persist_file_construct, bonobo_persist_file_construct ()
bonobo_persist_file_new, bonobo_persist_file_new ()
bonobo_persist_generate_content_types, bonobo_persist_generate_content_types ()
bonobo_persist_set_dirty, bonobo_persist_set_dirty ()
bonobo_persist_stream_construct, bonobo_persist_stream_construct ()
bonobo_persist_stream_new, bonobo_persist_stream_new ()
bonobo_poa, bonobo_poa ()
bonobo_poa_get_threaded, bonobo_poa_get_threaded ()
bonobo_poa_manager, bonobo_poa_manager ()
bonobo_property_bag_add, bonobo_property_bag_add ()
bonobo_property_bag_add_full, bonobo_property_bag_add_full ()
bonobo_property_bag_client_getv, bonobo_property_bag_client_getv
bonobo_property_bag_client_get_default_any, bonobo_property_bag_client_get_default_any()
bonobo_property_bag_client_get_default_gboolean, bonobo_property_bag_client_get_default_gboolean
bonobo_property_bag_client_get_default_gdouble, bonobo_property_bag_client_get_default_gdouble
bonobo_property_bag_client_get_default_gfloat, bonobo_property_bag_client_get_default_gfloat
bonobo_property_bag_client_get_default_gint, bonobo_property_bag_client_get_default_gint
bonobo_property_bag_client_get_default_glong, bonobo_property_bag_client_get_default_glong
bonobo_property_bag_client_get_default_string, bonobo_property_bag_client_get_default_string
bonobo_property_bag_client_get_docstring, bonobo_property_bag_client_get_docstring
bonobo_property_bag_client_get_flags, bonobo_property_bag_client_get_flags
bonobo_property_bag_client_get_property_type, bonobo_property_bag_client_get_property_type
bonobo_property_bag_client_get_value_any, bonobo_property_bag_client_get_value_any()
bonobo_property_bag_client_get_value_gboolean, bonobo_property_bag_client_get_value_gboolean
bonobo_property_bag_client_get_value_gdouble, bonobo_property_bag_client_get_value_gdouble
bonobo_property_bag_client_get_value_gfloat, bonobo_property_bag_client_get_value_gfloat
bonobo_property_bag_client_get_value_gint, bonobo_property_bag_client_get_value_gint
bonobo_property_bag_client_get_value_glong, bonobo_property_bag_client_get_value_glong
bonobo_property_bag_client_get_value_string, bonobo_property_bag_client_get_value_string
bonobo_property_bag_client_setv, bonobo_property_bag_client_setv
bonobo_property_bag_client_set_value_any, bonobo_property_bag_client_set_value_any
bonobo_property_bag_client_set_value_gboolean, bonobo_property_bag_client_set_value_gboolean
bonobo_property_bag_client_set_value_gdouble, bonobo_property_bag_client_set_value_gdouble
bonobo_property_bag_client_set_value_gfloat, bonobo_property_bag_client_set_value_gfloat
bonobo_property_bag_client_set_value_gint, bonobo_property_bag_client_set_value_gint
bonobo_property_bag_client_set_value_glong, bonobo_property_bag_client_set_value_glong
bonobo_property_bag_client_set_value_string, bonobo_property_bag_client_set_value_string
bonobo_property_bag_construct, bonobo_property_bag_construct ()
bonobo_property_bag_get_prop_list, bonobo_property_bag_get_prop_list ()
bonobo_property_bag_map_params, bonobo_property_bag_map_params ()
bonobo_property_bag_new, bonobo_property_bag_new ()
bonobo_property_bag_new_closure, bonobo_property_bag_new_closure ()
bonobo_property_bag_new_full, bonobo_property_bag_new_full ()
bonobo_property_bag_remove, bonobo_property_bag_remove ()
bonobo_property_bag_shutdown, bonobo_property_bag_shutdown ()
BONOBO_PROPERTY_NO_AUTONOTIFY, BONOBO_PROPERTY_NO_AUTONOTIFY
BONOBO_PROPERTY_NO_LISTENING, BONOBO_PROPERTY_NO_LISTENING
BONOBO_PROPERTY_READABLE, BONOBO_PROPERTY_READABLE
BONOBO_PROPERTY_WRITABLE, BONOBO_PROPERTY_WRITABLE
BONOBO_PROPERTY_WRITEABLE, BONOBO_PROPERTY_WRITEABLE
bonobo_return_if_fail, bonobo_return_if_fail()
bonobo_return_val_if_fail, bonobo_return_val_if_fail()
BONOBO_RET_EX, BONOBO_RET_EX()
BONOBO_RET_VAL_EX, BONOBO_RET_VAL_EX()
bonobo_running_context_at_exit_unref, bonobo_running_context_at_exit_unref ()
bonobo_running_context_auto_exit_unref, bonobo_running_context_auto_exit_unref ()
bonobo_running_context_ignore_object, bonobo_running_context_ignore_object ()
bonobo_running_context_new, bonobo_running_context_new ()
bonobo_running_context_shutdown, bonobo_running_context_shutdown ()
bonobo_setup_x_error_handler, bonobo_setup_x_error_handler ()
bonobo_shlib_factory_construct, bonobo_shlib_factory_construct ()
bonobo_shlib_factory_new, bonobo_shlib_factory_new ()
bonobo_shlib_factory_new_closure, bonobo_shlib_factory_new_closure ()
bonobo_shlib_factory_std, bonobo_shlib_factory_std ()
bonobo_storage_copy_to, bonobo_storage_copy_to ()
bonobo_storage_mem_create, bonobo_storage_mem_create ()
bonobo_stream_client_get_length, bonobo_stream_client_get_length ()
bonobo_stream_client_printf, bonobo_stream_client_printf ()
bonobo_stream_client_read, bonobo_stream_client_read ()
bonobo_stream_client_read_string, bonobo_stream_client_read_string ()
bonobo_stream_client_write, bonobo_stream_client_write ()
bonobo_stream_client_write_string, bonobo_stream_client_write_string ()
bonobo_stream_mem_construct, bonobo_stream_mem_construct ()
bonobo_stream_mem_create, bonobo_stream_mem_create ()
bonobo_stream_mem_get_buffer, bonobo_stream_mem_get_buffer ()
bonobo_stream_mem_get_size, bonobo_stream_mem_get_size ()
BONOBO_TYPE_CORBA_ANY, BONOBO_TYPE_CORBA_ANY
BONOBO_TYPE_CORBA_EXCEPTION, BONOBO_TYPE_CORBA_EXCEPTION
BONOBO_TYPE_CORBA_OBJECT, BONOBO_TYPE_CORBA_OBJECT
BONOBO_TYPE_CORBA_TYPECODE, BONOBO_TYPE_CORBA_TYPECODE
BONOBO_TYPE_FUNC, BONOBO_TYPE_FUNC()
BONOBO_TYPE_FUNC_FULL, BONOBO_TYPE_FUNC_FULL()
bonobo_type_setup, bonobo_type_setup ()
BONOBO_TYPE_STATIC_CORBA_ANY, BONOBO_TYPE_STATIC_CORBA_ANY
BONOBO_TYPE_STATIC_CORBA_EXCEPTION, BONOBO_TYPE_STATIC_CORBA_EXCEPTION
BONOBO_TYPE_STATIC_CORBA_OBJECT, BONOBO_TYPE_STATIC_CORBA_OBJECT
BONOBO_TYPE_STATIC_CORBA_TYPECODE, BONOBO_TYPE_STATIC_CORBA_TYPECODE
BONOBO_TYPE_STATIC_UNKNOWN, BONOBO_TYPE_STATIC_UNKNOWN
bonobo_type_unique, bonobo_type_unique ()
BONOBO_TYPE_UNKNOWN, BONOBO_TYPE_UNKNOWN
bonobo_unknown_ping, bonobo_unknown_ping ()
bonobo_url_lookup, bonobo_url_lookup ()
bonobo_url_register, bonobo_url_register ()
bonobo_url_unregister, bonobo_url_unregister ()
BONOBO_USER_EX, BONOBO_USER_EX()
bonobo_value_get_corba_any, bonobo_value_get_corba_any ()
bonobo_value_get_corba_exception, bonobo_value_get_corba_exception ()
bonobo_value_get_corba_object, bonobo_value_get_corba_object ()
bonobo_value_get_corba_typecode, bonobo_value_get_corba_typecode ()
bonobo_value_get_unknown, bonobo_value_get_unknown ()
BONOBO_VALUE_HOLDS_CORBA_ANY, BONOBO_VALUE_HOLDS_CORBA_ANY()
BONOBO_VALUE_HOLDS_CORBA_EXCEPTION, BONOBO_VALUE_HOLDS_CORBA_EXCEPTION()
BONOBO_VALUE_HOLDS_CORBA_OBJECT, BONOBO_VALUE_HOLDS_CORBA_OBJECT()
BONOBO_VALUE_HOLDS_CORBA_TYPECODE, BONOBO_VALUE_HOLDS_CORBA_TYPECODE()
BONOBO_VALUE_HOLDS_UNKNOWN, BONOBO_VALUE_HOLDS_UNKNOWN()
bonobo_value_set_corba_any, bonobo_value_set_corba_any ()
bonobo_value_set_corba_environment, bonobo_value_set_corba_environment ()
bonobo_value_set_corba_object, bonobo_value_set_corba_object ()
bonobo_value_set_corba_typecode, bonobo_value_set_corba_typecode ()
bonobo_value_set_unknown, bonobo_value_set_unknown ()
libbonobo-2.32.1/doc/api/html/libbonobo-bonobo-persist-client.html0000664000076400007640000001273111546334245022046 00000000000000 bonobo-persist-client

bonobo-persist-client

bonobo-persist-client

Synopsis

void                bonobo_object_save_to_stream        (Bonobo_Unknown object,
                                                         Bonobo_Stream stream,
                                                         CORBA_Environment *opt_ev);
Bonobo_Unknown      bonobo_object_from_stream           (Bonobo_Stream stream,
                                                         CORBA_Environment *opt_ev);

Description

Details

bonobo_object_save_to_stream ()

void                bonobo_object_save_to_stream        (Bonobo_Unknown object,
                                                         Bonobo_Stream stream,
                                                         CORBA_Environment *opt_ev);

object :

stream :

opt_ev :


bonobo_object_from_stream ()

Bonobo_Unknown      bonobo_object_from_stream           (Bonobo_Stream stream,
                                                         CORBA_Environment *opt_ev);

stream :

opt_ev :

Returns :

libbonobo-2.32.1/doc/api/html/libbonobo-bonobo-stream-memory.html0000664000076400007640000004060611546334245021704 00000000000000 BonoboStreamMem

BonoboStreamMem

BonoboStreamMem — In-memory implementation of Bonobo::Stream interface.

Synopsis

                    BonoboStreamMem;
                    BonoboStreamMemClass;
BonoboStreamMem *   bonobo_stream_mem_construct         (BonoboStreamMem *stream_mem,
                                                         const char *buffer,
                                                         size_t size,
                                                         gboolean read_only,
                                                         gboolean resizable);
BonoboObject *      bonobo_stream_mem_create            (const char *buffer,
                                                         size_t size,
                                                         gboolean read_only,
                                                         gboolean resizable);
const char *        bonobo_stream_mem_get_buffer        (BonoboStreamMem *stream_mem);
size_t              bonobo_stream_mem_get_size          (BonoboStreamMem *stream_mem);

Object Hierarchy

  GObject
   +----BonoboObject
         +----BonoboStreamMem

Description

The BonoboStreamMem is an implementation of the IDL:Bonobo/Stream:1.0 interface. This implementation allows an in-memory buffer to be exposed as a IDL:Bonobo/Stream:1.0 to clients.

Here is a sample way of exposing a C string as an IDL:Bonobo/Stream:1.0:

Example 22. Sample BonoboStreamMem usage

1
2
3
4
BonoboStream *make_bonobo_stream_on_string (char *string)
{
    return bonobo_stream_mem_create (string, strlen (string), TRUE, FALSE);
}


This example will make the string argument be exposed as a CORBA stream.

Details

BonoboStreamMem

typedef struct _BonoboStreamMem BonoboStreamMem;


BonoboStreamMemClass

typedef struct {
	BonoboObjectClass parent_class;

	POA_Bonobo_Stream__epv epv;

	char           *(*get_buffer) (BonoboStreamMem *stream_mem);
	size_t          (*get_size)   (BonoboStreamMem *stream_mem);
} BonoboStreamMemClass;


bonobo_stream_mem_construct ()

BonoboStreamMem *   bonobo_stream_mem_construct         (BonoboStreamMem *stream_mem,
                                                         const char *buffer,
                                                         size_t size,
                                                         gboolean read_only,
                                                         gboolean resizable);

stream_mem :

buffer :

size :

read_only :

resizable :

Returns :


bonobo_stream_mem_create ()

BonoboObject *      bonobo_stream_mem_create            (const char *buffer,
                                                         size_t size,
                                                         gboolean read_only,
                                                         gboolean resizable);

Creates a new BonoboStreamMem object.

If buffer is non-NULL, size bytes are copied from it into a new buffer. If buffer is NULL, a new buffer of size size is created and filled with zero bytes.

When data is read out of or (if read_only is FALSE) written into the returned BonoboStream object, the read() and write() operations operate on the new buffer. If resizable is TRUE, writing or seeking past the end of the buffer will cause the buffer to be expanded (with the new space zero-filled for a seek).

buffer :

The data for which a BonoboStreamMem object is to be created.

size :

The size in bytes of buffer.

read_only :

Specifies whether or not the returned BonoboStreamMem object should allow write() operations.

resizable :

Whether or not the buffer should be resized as needed.

Returns :

the constructed BonoboStream object

bonobo_stream_mem_get_buffer ()

const char *        bonobo_stream_mem_get_buffer        (BonoboStreamMem *stream_mem);

Returns the buffer associated with a BonoboStreamMem. If the stream is set to automatically resize itself, this buffer is only guaranteed to stay valid until the next write operation on the stream.

stream_mem :

a BonoboStreamMem

Returns :

a buffer containing the data written to the stream (or the data the stream was initialized with if nothing has been written).

bonobo_stream_mem_get_size ()

size_t              bonobo_stream_mem_get_size          (BonoboStreamMem *stream_mem);

Returns the size of the data associated with a BonoboStreamMem see bonobo_stream_mem_get_buffer

stream_mem :

a BonoboStreamMem

Returns :

the size.

See Also

BonoboStream

An abstract class to implement IDL:Bonobo/Streams.

IDL:Bonobo/Stream:1.0

The CORBA interface implemented .

libbonobo-2.32.1/doc/api/html/libbonobo-bonobo-shlib-factory.html0000664000076400007640000005424211546334245021652 00000000000000 bonobo-shlib-factory

bonobo-shlib-factory

bonobo-shlib-factory

Synopsis

                    BonoboShlibFactory;
                    BonoboShlibFactoryClass;
BonoboShlibFactory * bonobo_shlib_factory_construct     (BonoboShlibFactory *factory,
                                                         const char *act_iid,
                                                         PortableServer_POA poa,
                                                         gpointer act_impl_ptr,
                                                         GClosure *closure);
BonoboShlibFactory * bonobo_shlib_factory_new           (const char *component_id,
                                                         PortableServer_POA poa,
                                                         gpointer act_impl_ptr,
                                                         BonoboFactoryCallback factory_cb,
                                                         gpointer user_data);
BonoboShlibFactory * bonobo_shlib_factory_new_closure   (const char *act_iid,
                                                         PortableServer_POA poa,
                                                         gpointer act_impl_ptr,
                                                         GClosure *factory_closure);
Bonobo_Unknown      bonobo_shlib_factory_std            (const char *component_id,
                                                         PortableServer_POA poa,
                                                         gpointer act_impl_ptr,
                                                         BonoboFactoryCallback factory_cb,
                                                         gpointer user_data,
                                                         CORBA_Environment *ev);
#define             BONOBO_OAF_SHLIB_FACTORY            (oafiid,
                                                         descr,
                                                         fn,
                                                         data)
#define             BONOBO_OAF_SHLIB_FACTORY_MULTI      (oafiid,
                                                         descr,
                                                         fn,
                                                         data)
#define             BONOBO_ACTIVATION_SHLIB_FACTORY     (oafiid,
                                                         descr,
                                                         fn,
                                                         data)

Object Hierarchy

  GObject
   +----BonoboObject
         +----BonoboGenericFactory
               +----BonoboShlibFactory

Description

Details

BonoboShlibFactory

typedef struct _BonoboShlibFactory BonoboShlibFactory;


BonoboShlibFactoryClass

typedef struct {
	BonoboGenericFactoryClass parent_class;
} BonoboShlibFactoryClass;


bonobo_shlib_factory_construct ()

BonoboShlibFactory * bonobo_shlib_factory_construct     (BonoboShlibFactory *factory,
                                                         const char *act_iid,
                                                         PortableServer_POA poa,
                                                         gpointer act_impl_ptr,
                                                         GClosure *closure);

Initializes c_factory with the supplied data.

factory :

The object to be initialized.

act_iid :

The GOAD id that the new factory will implement.

poa :

the poa.

act_impl_ptr :

Activation shlib handle

closure :

The closure used to create new GnomeShlib object instances.

Returns :

The initialized BonoboShlibFactory object.

bonobo_shlib_factory_new ()

BonoboShlibFactory * bonobo_shlib_factory_new           (const char *component_id,
                                                         PortableServer_POA poa,
                                                         gpointer act_impl_ptr,
                                                         BonoboFactoryCallback factory_cb,
                                                         gpointer user_data);

This is a helper routine that simplifies the creation of factory objects for GNOME objects. The factory function will be invoked by the CORBA server when a request arrives to create a new instance of an object supporting the Bonobo::Shlib interface. The factory callback routine is passed the data pointer to provide the creation function with some state information.

component_id :

The GOAD id that this factory implements

poa :

the poa.

act_impl_ptr :

Activation shlib handle

factory_cb :

A callback which is used to create new BonoboObject instances.

user_data :

The closure data to be passed to the factory callback routine.

Returns :

A BonoboShlibFactory object that has an activated Bonobo::ShlibFactory object that has registered with the GNOME name server.

bonobo_shlib_factory_new_closure ()

BonoboShlibFactory * bonobo_shlib_factory_new_closure   (const char *act_iid,
                                                         PortableServer_POA poa,
                                                         gpointer act_impl_ptr,
                                                         GClosure *factory_closure);

This is a helper routine that simplifies the creation of factory objects for GNOME objects. The factory_closure closure will be invoked by the CORBA server when a request arrives to create a new instance of an object supporting the Bonobo::Shlib interface. The factory callback routine is passed the data pointer to provide the creation function with some state information.

act_iid :

The GOAD id that this factory implements

poa :

the poa.

act_impl_ptr :

Activation shlib handle

factory_closure :

A closure which is used to create new BonoboObject instances.

Returns :

A BonoboShlibFactory object that has an activated Bonobo::ShlibFactory object that has registered with the GNOME name server.

bonobo_shlib_factory_std ()

Bonobo_Unknown      bonobo_shlib_factory_std            (const char *component_id,
                                                         PortableServer_POA poa,
                                                         gpointer act_impl_ptr,
                                                         BonoboFactoryCallback factory_cb,
                                                         gpointer user_data,
                                                         CORBA_Environment *ev);

A Generic std shlib routine so we don't stick a load of code inside a public macro.

Returns :

0 on success, 1 on failure.

BONOBO_OAF_SHLIB_FACTORY()

#define             BONOBO_OAF_SHLIB_FACTORY(oafiid, descr, fn, data)

Deprecated. See BONOBO_ACTIVATION_SHLIB_FACTORY().

oafiid :

descr :

fn :

data :


BONOBO_OAF_SHLIB_FACTORY_MULTI()

#define             BONOBO_OAF_SHLIB_FACTORY_MULTI(oafiid, descr, fn, data)

Deprecated. See BONOBO_ACTIVATION_SHLIB_FACTORY().

oafiid :

descr :

fn :

data :


BONOBO_ACTIVATION_SHLIB_FACTORY()

#define             BONOBO_ACTIVATION_SHLIB_FACTORY(oafiid, descr, fn, data)

Macro that includes all boiler-plate code necessary to create an shlib type factory.

oafiid :

The factory's OAFIID

descr :

Description of the factory

fn :

Function (BonoboFactoryCallback) responsible for intantiating components

data :

Additional data to be passed to the callback
libbonobo-2.32.1/doc/api/html/libbonobo.devhelp0000664000076400007640000016247611546334245016326 00000000000000 libbonobo-2.32.1/doc/api/html/right.png0000644000076400007640000000073011546334245014611 00000000000000PNG  IHDRw=bKGD pHYs  ~tIME2 I%=eIDATx!o@.'**M0$$?1~vIeEuLl&4䝠Bݛ|>$ݶoc bonobo-application

bonobo-application

bonobo-application — a framework for unique application instance and automation

Synopsis

void                (*BonoboAppHookFunc)                (BonoboApplication *app,
                                                         gpointer data);
BonoboApplication *         bonobo_application_new      (const char *name);
void                bonobo_application_register_message (BonoboApplication *app,
                                                         const gchar *name,
                                                         const gchar *description,
                                                         GClosure *opt_closure,
                                                         GType return_type,
                                                         GType first_arg_type,
                                                         ...);
void                bonobo_application_register_message_v
                                                        (BonoboApplication *app,
                                                         const gchar *name,
                                                         const gchar *description,
                                                         GClosure *opt_closure,
                                                         GType return_type,
                                                         GType const arg_types[]);
void                bonobo_application_register_message_va
                                                        (BonoboApplication *app,
                                                         const gchar *name,
                                                         const gchar *description,
                                                         GClosure *opt_closure,
                                                         GType return_type,
                                                         GType first_arg_type,
                                                         va_list var_args);
gint                bonobo_application_new_instance     (BonoboApplication *app,
                                                         gint argc,
                                                         gchar *argv[]);
gchar *                    bonobo_application_create_serverinfo
                                                        (BonoboApplication *app,
                                                         gchar const *envp[]);
Bonobo_RegistrationResult  bonobo_application_register_unique
                                                        (BonoboApplication *app,
                                                         gchar const *serverinfo,
                                                         BonoboAppClient **client);
void                bonobo_application_add_hook         (BonoboAppHookFunc func,
                                                         gpointer data);
void                bonobo_application_remove_hook      (BonoboAppHookFunc func,
                                                         gpointer data);

Description

Details

BonoboAppHookFunc ()

void                (*BonoboAppHookFunc)                (BonoboApplication *app,
                                                         gpointer data);

app :

data :


bonobo_application_new ()

BonoboApplication *         bonobo_application_new      (const char *name);

Creates a new BonoboApplication object.

name :

application name

Returns :

a new BonoboApplication

bonobo_application_register_message ()

void                bonobo_application_register_message (BonoboApplication *app,
                                                         const gchar *name,
                                                         const gchar *description,
                                                         GClosure *opt_closure,
                                                         GType return_type,
                                                         GType first_arg_type,
                                                         ...);

Registers a new message type that the application supports.

When opt_closure is provided (and is non-NULL) it takes care of calling the callback function with the same arguments as registered for the message. On the other hand if opt_closure is NULL, the function arguments are provided in a GValueArray. This enables defining functions that accept variable number of arguments, but is perhaps a little more tedious to implement.

Example 5. Function with a closure

1
2
3
4
5
6
7
8
9
10
11
static void
message_open_url_cb (BonoboApplication *app, const char *url, gboolean new_win)
{
    ...
}
...
closure = g_cclosure_new (G_CALLBACK (message_open_url_cb), NULL, NULL);
g_closure_set_marshal (closure, my_marshal_VOID__STRING_BOOLEAN);
bonobo_application_register_message (app, "open-url", "Opens a new URL in the browser."
                                     " Parameters: url(string), open-in-new-window(boolean)",
                                     closure, G_TYPE_NONE, G_TYPE_STRING, G_TYPE_BOOLEAN, G_TYPE_NONE);


Example 6. Function accepting variable number of arguments

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
static GValue *
message_open_url_cb (BonoboApplication *app, const char *message, GValueArray *args)
{
    const char *url;
    gboolean    new_win = TRUE;
    g_return_val_if_fail (strcmp (message, "open-url") == 0, NULL);
    g_return_val_if_fail (args->n_values > 0, NULL);
    g_return_val_if_fail (G_VALUE_HOLDS_STRING (&args->values[0]), NULL);
    url = g_value_get_string (&args->values[0]);
    if (args->n_values > 1)
    {
        g_return_val_if_fail (G_VALUE_HOLDS_BOOLEAN (&args->values[1]), NULL);
        new_win = g_value_get_boolean (&args->values[1]);
    }
    ...
    return NULL;
}
...
bonobo_application_register_message (app, "open-url", "Opens a new URL in the browser."
                                     " Parameters: url(string) [, open-in-new-window(boolean)]",
                                     NULL, G_TYPE_NONE, G_TYPE_STRING, G_TYPE_BOOLEAN, G_TYPE_NONE);
g_signal_connect (app, "message::open-url", G_CALLBACK (message_open_url_cb), NULL);


Note

You are not required to register any messages for your application. However, only registered functions are included in the list returned by bonobo_app_client_msg_list()

app :

a BonoboApplication

name :

message string identifier

description :

a string containing a human readable description of the message

opt_closure :

a GClosure that will be called for this message, or NULL; Function takes ownership of this closure.

return_type :

Message return GType.

first_arg_type :

GType of first argument of message, or G_TYPE_NONE.

... :

G_TYPE_NONE -terminated list of argument GType's

bonobo_application_register_message_v ()

void                bonobo_application_register_message_v
                                                        (BonoboApplication *app,
                                                         const gchar *name,
                                                         const gchar *description,
                                                         GClosure *opt_closure,
                                                         GType return_type,
                                                         GType const arg_types[]);

See bonobo_application_register_message().

app :

a BonoboApplication

name :

message string identifier

description :

a string containing a human readable description of the message

opt_closure :

a GClosure that will be called for this message, or NULL; Function takes ownership of this closure.

return_type :

Message return GType.

arg_types :

G_TYPE_NONE -terminated vector of argument GType's

bonobo_application_register_message_va ()

void                bonobo_application_register_message_va
                                                        (BonoboApplication *app,
                                                         const gchar *name,
                                                         const gchar *description,
                                                         GClosure *opt_closure,
                                                         GType return_type,
                                                         GType first_arg_type,
                                                         va_list var_args);

See bonobo_application_register_message().

app :

a BonoboApplication

name :

message string identifier

description :

a string containing a human readable description of the message

opt_closure :

a GClosure that will be called for this message, or NULL; Function takes ownership of this closure.

return_type :

Message return GType.

first_arg_type :

GType of first argument of message, or G_TYPE_NONE

var_args :

G_TYPE_NONE -terminated valist of argument GType's

bonobo_application_new_instance ()

gint                bonobo_application_new_instance     (BonoboApplication *app,
                                                         gint argc,
                                                         gchar *argv[]);

Emit the "new-instance" signal of the BonoboApplication with the given arguments.

app :

a BonoboApplication

argc :

number of elements in argv

argv :

array of strings (command-line arguments)

Returns :

signal return value

bonobo_application_create_serverinfo ()

gchar *                    bonobo_application_create_serverinfo
                                                        (BonoboApplication *app,
                                                         gchar const *envp[]);

This utility function provides a simple way to contruct a valid serverinfo XML string.

app :

a BonoboApplication

envp :

NULL-terminated string vector, containing the enviroment variables we wish to include in the server description.

Returns :

a newly allocated string; caller must g_free() it.

bonobo_application_register_unique ()

Bonobo_RegistrationResult  bonobo_application_register_unique
                                                        (BonoboApplication *app,
                                                         gchar const *serverinfo,
                                                         BonoboAppClient **client);

Try to register the running application, or check for an existing application already registered and get a reference to it. Applications already running but on different environments (as defined by the bonobo:environenment server property) than this one are ignored and do not interfere.

If the registration attempt indicates that another instance of this application is already running, then the output variable client will receive a newly created BonoboAppClient associated with the running application. Otherwise, *client is set to NULL.

app :

a BonoboApplication instance

serverinfo :

the XML server description. bonobo_application_create_server_description() may be used to easily create such description.

client :

output parameter that will contain a client object, in case another instance has already running, or NULL if we are the first to register.

Returns :

the registration result. Bonobo_ACTIVATION_REG_SUCCESS means the application was registered, since no other running instance was detected. If, however, a running application is detected, Bonobo_ACTIVATION_REG_ALREADY_ACTIVE is returned.

bonobo_application_add_hook ()

void                bonobo_application_add_hook         (BonoboAppHookFunc func,
                                                         gpointer data);

Add a hook function to be called whenever a new BonoboApplication instance is created.

func :

hook function

data :

user data

bonobo_application_remove_hook ()

void                bonobo_application_remove_hook      (BonoboAppHookFunc func,
                                                         gpointer data);

Removes a hook function previously set with bonobo_application_add_hook().

func :

hook function

data :

user data
libbonobo-2.32.1/doc/api/html/libbonobo-bonobo-generic-factory.html0000664000076400007640000010725511546334245022170 00000000000000 BonoboGenericFactory

BonoboGenericFactory

BonoboGenericFactory — The basic, generic Bonobo object factory implementation

Synopsis

BonoboObject *      (*BonoboFactoryCallback)            (BonoboGenericFactory *factory,
                                                         const char *component_id,
                                                         gpointer closure);
BonoboGenericFactory * bonobo_generic_factory_new       (const char *act_iid,
                                                         BonoboFactoryCallback factory_cb,
                                                         gpointer user_data);
BonoboGenericFactory * bonobo_generic_factory_new_closure
                                                        (const char *act_iid,
                                                         GClosure *factory_closure);
BonoboGenericFactory * bonobo_generic_factory_construct (BonoboGenericFactory *factory,
                                                         const char *act_iid,
                                                         GClosure *factory_closure);
void                bonobo_generic_factory_construct_noreg
                                                        (BonoboGenericFactory *factory,
                                                         const char *act_iid,
                                                         GClosure *factory_closure);
int                 bonobo_generic_factory_main         (const char *act_iid,
                                                         BonoboFactoryCallback factory_cb,
                                                         gpointer user_data);
int                 bonobo_generic_factory_main_timeout (const char *act_iid,
                                                         BonoboFactoryCallback factory_cb,
                                                         gpointer user_data,
                                                         guint quit_timeout);
#define             BONOBO_FACTORY_INIT                 (descr,
                                                         version,
                                                         argcp,
                                                         argv)
#define             BONOBO_OAF_FACTORY                  (oafiid,
                                                         descr,
                                                         version,
                                                         callback,
                                                         data)
#define             BONOBO_OAF_FACTORY_MULTI            (oafiid,
                                                         descr,
                                                         version,
                                                         callback,
                                                         data)
#define             BONOBO_ACTIVATION_FACTORY           (oafiid,
                                                         descr,
                                                         version,
                                                         callback,
                                                         data)
#define             BONOBO_ACTIVATION_FACTORY_TIMEOUT   (oafiid,
                                                         descr,
                                                         version,
                                                         callback,
                                                         data,
                                                         quit_timeout)

Description

The vast majority of Bonobo objects are created by the BonoboGenericFactory implementation. This provides a very simple C sugar wrapper of the GNOME::ObjectFactory IDL interface, used by OAF to instantiate new objects.

Most applications when they start up will register their Bonobo object factory with OAF, this can be done like this:

Example 7. How to register a factory with OAF

1
2
3
4
5
BonoboGenericFactory *factory;
factory = bonobo_generic_factory_new (
    "OAFIID:GNOME_MyApp_myId",
    my_factory_function, NULL);
bonobo_running_context_auto_exit_unref (BONOBO_OBJECT (factory));


This registers the factory with OAF, associated with your factory's OAFIID ( as specified in the installed .oaf file ). The running_context_auto_exit_unref function is used to ensure that the program exits the gtk main loop when all of the factory's ( or any derived ) objects are destroyed.

When an object that is created by your factory is demanded from OAF the my_factory_function will be called:

Example 8. A simple factory

1
2
3
4
5
6
7
8
9
10
11
12
13
static BonoboObject *
my_factory_fn (BonoboGenericFactory *this,
               const char           *object_id,
               void                 *data)
{
    BonoboObject *object = NULL;
    g_return_val_if_fail (object_id != NULL, NULL);
    if (!strcmp (object_id, "OAFIID:Bonobo_Sample_Clock"))
        object = bonobo_clock_control_new ();
    else
        g_warning ("Unknown OAFIID '%s'", object_id);
    return object;
}


This will return the newly constructed object via OAF to the Object requestor.

There is a macro that can be used for simple components to remove the burden of writing the main function and getting the initialization correct, see BONOBO_ACTIVATION_FACTORY.

Details

BonoboFactoryCallback ()

BonoboObject *      (*BonoboFactoryCallback)            (BonoboGenericFactory *factory,
                                                         const char *component_id,
                                                         gpointer closure);

Type of function that is called when it's time for the factory to create a new instance.

factory :

the factory that invoked this callback

component_id :

OAFIID of the component that should be activated

closure :

user data

Returns :

the newly created BonoboObject

bonobo_generic_factory_new ()

BonoboGenericFactory * bonobo_generic_factory_new       (const char *act_iid,
                                                         BonoboFactoryCallback factory_cb,
                                                         gpointer user_data);

This is a helper routine that simplifies the creation of factory objects for GNOME objects. The factory function will be invoked by the CORBA server when a request arrives to create a new instance of an object supporting the Bonobo::Generic interface. The factory callback routine is passed the data pointer to provide the creation function with some state information.

act_iid :

The GOAD id that this factory implements

factory_cb :

A callback which is used to create new BonoboObject instances.

user_data :

The closure data to be passed to the factory callback routine.

Returns :

A BonoboGenericFactory object that has an activated Bonobo::GenericFactory object that has registered with the GNOME name server.

bonobo_generic_factory_new_closure ()

BonoboGenericFactory * bonobo_generic_factory_new_closure
                                                        (const char *act_iid,
                                                         GClosure *factory_closure);

This is a helper routine that simplifies the creation of factory objects for GNOME objects. The factory_closure closure will be invoked by the CORBA server when a request arrives to create a new instance of an object supporting the Bonobo::Generic interface. The factory callback routine is passed the data pointer to provide the creation function with some state information.

act_iid :

The GOAD id that this factory implements

factory_closure :

A closure which is used to create new BonoboObject instances.

Returns :

A BonoboGenericFactory object that has an activated Bonobo::GenericFactory object that has registered with the GNOME name server.

bonobo_generic_factory_construct ()

BonoboGenericFactory * bonobo_generic_factory_construct (BonoboGenericFactory *factory,
                                                         const char *act_iid,
                                                         GClosure *factory_closure);

Initializes c_factory with and registers the new factory with the name server.

factory :

The object to be initialized.

act_iid :

The Bonobo activation id that the new factory will implement. Bonobo::GenericFactory interface and which will be used to construct this BonoboGenericFactory Gtk object.

factory_closure :

A Multi object factory closure.

Returns :

The initialized BonoboGenericFactory object or NULL if already registered.

bonobo_generic_factory_construct_noreg ()

void                bonobo_generic_factory_construct_noreg
                                                        (BonoboGenericFactory *factory,
                                                         const char *act_iid,
                                                         GClosure *factory_closure);

Initializes c_factory with the supplied closure and iid.

factory :

The object to be initialized.

act_iid :

The GOAD id that the new factory will implement.

factory_closure :

A Multi object factory closure.

bonobo_generic_factory_main ()

int                 bonobo_generic_factory_main         (const char *act_iid,
                                                         BonoboFactoryCallback factory_cb,
                                                         gpointer user_data);

A Generic 'main' routine so we don't stick a load of code inside a public macro. See also bonobo_generic_factory_main_timeout().

act_iid :

the oaf iid of the factory

factory_cb :

the factory callback

user_data :

a user data pointer

Returns :

0 on success, 1 on failure.

bonobo_generic_factory_main_timeout ()

int                 bonobo_generic_factory_main_timeout (const char *act_iid,
                                                         BonoboFactoryCallback factory_cb,
                                                         gpointer user_data,
                                                         guint quit_timeout);

A Generic 'main' routine so we don't stick a load of code inside a public macro.

act_iid :

the oaf iid of the factory

factory_cb :

the factory callback

user_data :

a user data pointer

quit_timeout :

ammount of time to wait (miliseconds) after all objects have been released before quitting the main loop.

Returns :

0 on success, 1 on failure.

BONOBO_FACTORY_INIT()

#define             BONOBO_FACTORY_INIT(descr, version, argcp, argv)

Macro that expands to the code need to initialize an exe factory. Should be placed at the beginning of the main() function.

descr :

factory description string

version :

version string

argcp :

pointer to main()'s argc

argv :

main()'s argv

BONOBO_OAF_FACTORY()

#define             BONOBO_OAF_FACTORY(oafiid, descr, version, callback, data)

Deprecated; see BONOBO_ACTIVATION_FACTORY().

oafiid :

descr :

version :

callback :

data :


BONOBO_OAF_FACTORY_MULTI()

#define             BONOBO_OAF_FACTORY_MULTI(oafiid, descr, version, callback, data)

Deprecated; see BONOBO_ACTIVATION_FACTORY().

oafiid :

descr :

version :

callback :

data :


BONOBO_ACTIVATION_FACTORY()

#define             BONOBO_ACTIVATION_FACTORY(oafiid, descr, version, callback, data)

Macro that includes all boiler-plate code necessary to create an exe type factory, including a main() function and a generic factory.

oafiid :

The factory's OAFIID

descr :

Description of the factory

version :

Version string of the factory program

callback :

Function (BonoboFactoryCallback) responsible for intantiating components

data :

Additional data to be passed to the callback

BONOBO_ACTIVATION_FACTORY_TIMEOUT()

#define             BONOBO_ACTIVATION_FACTORY_TIMEOUT(oafiid, descr, version, callback, data, quit_timeout)

Like BONOBO_ACTIVATION_FACTORY(), but has an extra quit_timeout argument.

oafiid :

The factory's OAFIID

descr :

Description of the factory

version :

Version string of the factory program

callback :

Function (BonoboFactoryCallback) responsible for intantiating components

data :

Additional data to be passed to the callback

quit_timeout :

Ammount of time to wait (in milliseconds) before deciding to quit the factory. A larger value prevents frequent respawning of a new factory process when there are many consecutive one-time requests, so that your factory appears to start faster after the first time.
libbonobo-2.32.1/doc/api/html/properties.html0000664000076400007640000002146011546334245016055 00000000000000 Properties

Properties

Bonobo component properties, version 0.1 by Michael Meeks <mmeeks@gnu.org>

A brief discussion of how to use the property API to add a simple to use configuration mechanism to your bonobo component.

Properties and bags

A property is an attribute that is attached to a Bonobo object. It can have any type, although the standard types boolean, long, float, double, string are handled in a convenient fashion. Properties are attached to a PropertyBag object that is attached to your control or component in some way.


BonoboArgs

A bonobo arg contains the value of a property whilst it is 'in flight' between a property and a requestor. The bonobo arg system is designed to make ORBit's 'any' code easier to use and less error prone - it is however simply a wrapper around a CORBA_any.

A number of macros and helper functions are provided in bonobo-arg.h. Particularly, the type macros of BonoboArgType eg.

BONOBO_ARG_BOOLEAN, BONOBO_ARG_LONG, BONOBO_ARG_STRING

And a number of access procedures for getting and setting standard values from a BonoboArg. Eg. if 'a' is a BonoboArg * we should use:

BONOBO_ARG_GET_STRING (a) to get its string value

or

BONOBO_ARG_SET_STRING (a, "GNU")to set its string value

NB. Passing a NULL string to BONOBO_ARG_SET_STRING is equivalent to passing an empty string.

The bonobo-arg code also provides functions for mapping GParamSpecs to BonoboArgs and vice-versa.


PropertyBag creation

To add properties to an object first we must create a property bag hence:

BonoboPropertyBag *bonobo_property_bag_new (BonoboPropertyGetFn get_prop,
                                            BonoboPropertySetFn set_prop,
                                            gpointer            user_data);
	    

Each property has a get / set / user_data (GSU) triplet that handles that property's behavior. In a typical scenario all object properties in a bag utilise the same GSU triplet, and are identified inside the get / set functions by a unique enumerated constant arg_id. Inside the function this arg_id can then be used with a switch statement to provide efficient (de)multiplexing of property requests.

For particularly obtuse persons wanting more flexibility it is possible to specify the GSU triplet per property using the add_full variant.


Property Creation

Each basic property is created by this function:

void bonobo_property_bag_add (BonoboPropertyBag   *pb,
                              const char          *name,
			      int                  idx,
                              BonoboArgType        type,
		              BonoboArg           *default_value,
	    		      const char          *docstring,
                              BonoboPropertyFlags  flags);
	    

It looks horrendous, but is horribly simple in most cases; the idx is the index that will be passed to a generic get / set function for this property. The type is one of the BonoboArgType macros discussed in section 2 which maps to an ORBit TypeCode [ hence any arbitary type can be added without the property-bag knowing anything about it ( allocation of that type is the users responsibility ) ]. Default_value is either NULL or a value created thusly:

BonoboArg *def = bonobo_arg_new (BONOBO_ARG_DOUBLE);
BONOBO_ARG_SET_DOUBLE (def, 0.3127);
	    

It's reference is stored in the property_bag.

The rest of the code is internal and extremely transparent. In order to implement the get / set functions I would copy & paste the sample code in: libbonoboui/samples/controls/bonobo-sample-controls.c.


Wrapping GObjects

If you have already implemented a GObject that has the set of properties that you wish to export as Bonobo properties then it is trivial to add them to the property bag using a transparent mapping. This means that you do not have to write any more code, simply use:

GParamSpec **pspecs;
guint        n_props;

pspecs = g_object_class_list_properties (
      G_OBJECT_GET_CLASS (my_object), &n_props);

bonobo_property_bag_map_params (pb, my_object, pspecs, n_props);

g_free (pspecs)
	    

Using properties in your client application

There are some fairly typesafe but convenient vararg ways to get remote properties. Example:

1
2
3
4
5
6
7
CORBA_double i;

bonobo_widget_get_property (control, "value",
                TC_CORBA_double, &i, NULL);
i+= 0.37;
bonobo_widget_set_property (control, "value",
                TC_CORBA_double, i, NULL);

The alternative being the even more type safe version:

bonobo_property_bag_client_get_value_gdouble (pb, "value", &i);
	    
libbonobo-2.32.1/doc/api/html/libbonobo-bonobo-shutdown.html0000664000076400007640000001443211546334245020754 00000000000000 bonobo-shutdown

bonobo-shutdown

bonobo-shutdown

Description

Details

bonobo_context_init ()

void                bonobo_context_init                 (void);

Sets up the context system, internal use only, called by bonobo_init.


bonobo_context_shutdown ()

void                bonobo_context_shutdown             (void);

Shuts down the context system, internal use only


bonobo_object_shutdown ()

int                 bonobo_object_shutdown              (void);

Returns :


bonobo_exception_shutdown ()

void                bonobo_exception_shutdown           (void);


bonobo_property_bag_shutdown ()

void                bonobo_property_bag_shutdown        (void);


bonobo_running_context_shutdown ()

void                bonobo_running_context_shutdown     (void);

libbonobo-2.32.1/doc/api/html/up.png0000644000076400007640000000062611546334245014124 00000000000000PNG  IHDRw=bKGD pHYs  ~tIME2.E#IDATx=J@Fo] !+2[Z<@/9|t$D9nnBjBRIsI:H8UPN1fcsN95M㧖ɵ 束1~pEe$I 7nrDf!;`'ykI䲤sI_]y^^I>O>?YBIENDB`libbonobo-2.32.1/doc/api/html/streams.html0000664000076400007640000000564111546334245015342 00000000000000 Storages and Streams

Storages and Streams

bonobo-storage-memory
BonoboStreamMem — In-memory implementation of Bonobo::Stream interface.
bonobo-storage — Abstract implementation of the Bonobo::Storage interface
bonobo-stream-client — Simplified client wrapper functions for the Stream interface

Figure 3. The Bonobo::Stream interface

The Bonobo::Stream interface

Figure 4. The Bonobo::Storage interface

The Bonobo::Storage interface

libbonobo-2.32.1/doc/api/html/home.png0000644000076400007640000000121611546334245014424 00000000000000PNG  IHDRw=bKGD pHYs  ~tIME1KvIDATxՕkq?rCp ~CnpCAAJ .B-\'G]:ܠC -(8 Ԁ!fDғklbRoyxwpðIJ<of_-@RHf֟t^ښ$Q|pgv;X^^&s(bwwZF9&3඙ ^IRZUE.0Z]]U PYM8HGIekqqҀ! $۬3n e{-/seeeÌXOͷ$8==USQRR'9-s+B^ Cەs+%<7W :2IENDB`libbonobo-2.32.1/doc/api/html/left.png0000644000076400007640000000071311546334245014427 00000000000000PNG  IHDRw=bKGD pHYs  ~tIME1&[(XIDATx!OPE*ID%~ꊯ"p'ŏ`sܖrKf hmiIz}ܯI.p\`x l?l[,Hk<#c%\AUx[S7n6rzEs1j@NL$ݤi0 5/}\EKIo͓$a0jdFbkIAh>WlC'?tk;|/t*INZ^`y4Nr]׮ J<ڐt`X1@p䀸dZ')hK $V?%]+LsgUK"w53OIENDB`libbonobo-2.32.1/doc/api/html/libbonobo-bonobo-storage.html0000664000076400007640000002270411546334245020546 00000000000000 bonobo-storage

bonobo-storage

bonobo-storage — Abstract implementation of the Bonobo::Storage interface

Synopsis

void                bonobo_storage_copy_to              (Bonobo_Storage src,
                                                         Bonobo_Storage dest,
                                                         CORBA_Environment *ev);

Description

The BonoboStorage C interface is extremely simple, this is since the CORBA client interface is where the action occurs. It is anticipated that relatively few people need to implement the Bonobo/Storage IDL interface.

The common entry point for BonoboStorage is that of opening a storage using the bonobo_storage_open function, perhaps by a container to use to persist a compound document:

Example 23. An example storage use case

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
void
container_save (SampleApp         *app,
                const char        *filename,
                CORBA_Environment *ev)
{
    BonoboStorage *storage;
    Bonobo_Storage corba_storage;
    GList *components;
    int i;
    storage = bonobo_storage_open (STORAGE_TYPE, filename,
                       Bonobo_Storage_READ |
                       Bonobo_Storage_WRITE |
                       Bonobo_Storage_CREATE,
                       0664);
    g_return_if_fail (storage);
    corba_storage = BONOBO_OBJREF (storage);
    ...
    Serialize components to streams created in the storage
    ...
    Bonobo_Storage_commit (corba_storage, ev);
    CORBA_exception_free (ev);
    bonobo_object_unref (BONOBO_OBJECT (storage));
}


Details

bonobo_storage_copy_to ()

void                bonobo_storage_copy_to              (Bonobo_Storage src,
                                                         Bonobo_Storage dest,
                                                         CORBA_Environment *ev);

Implements a pure CORBA method for copying one storage into another, this is used by several BonoboStorage implemetations where a fast case localy copy cannot work.

src :

the source storage

dest :

the destination storage

ev :

CORBA exception environment
libbonobo-2.32.1/doc/api/html/libbonobo-bonobo-item-container.html0000664000076400007640000003141311546334245022015 00000000000000 BonoboItemContainer

BonoboItemContainer

BonoboItemContainer — this implements a simple container interface for compound document containers

Object Hierarchy

  GObject
   +----BonoboObject
         +----BonoboItemContainer

Signals

  "get-object"                                     : Run Last

Description

This implementation is mostly deprecated, see BonoboItemHandler

Details

BonoboItemContainer

typedef struct _BonoboItemContainer BonoboItemContainer;

Object that implements Bonobo::ItemHandler


BonoboItemContainerClass

typedef struct {
	BonoboObjectClass parent_class;

	POA_Bonobo_ItemContainer__epv epv;

	Bonobo_Unknown (*get_object) (BonoboItemContainer *item_container,
				      CORBA_char          *item_name,
				      CORBA_boolean        only_if_exists,
				      CORBA_Environment   *ev);
} BonoboItemContainerClass;

BonoboItemContainer's class


bonobo_item_container_new ()

BonoboItemContainer * bonobo_item_container_new         (void);

Creates a new BonoboItemContainer object. These are used to hold client sites.

Returns :

The newly created BonoboItemContainer object

bonobo_item_container_add ()

void                bonobo_item_container_add           (BonoboItemContainer *container,
                                                         const char *name,
                                                         BonoboObject *object);

Adds the object to the list of objects managed by this container

container :

The object to operate on.

name :

The name of the object

object :

The object to add to the container

bonobo_item_container_remove_by_name ()

void                bonobo_item_container_remove_by_name
                                                        (BonoboItemContainer *container,
                                                         const char *name);

Removes the named object from the container

container :

The object to operate on.

name :

The name of the object to remove from the container

Signal Details

The "get-object" signal

BonoboUnknown*      user_function                      (BonoboItemContainer  *bonoboitemcontainer,
                                                        gchar                *arg1,
                                                        gboolean              arg2,
                                                        BonoboCorbaException *arg3,
                                                        gpointer              user_data)                : Run Last

Signal emitted when a sub-object is requested from the item container.

bonoboitemcontainer :

the object which received the signal.

arg1 :

the item name, i.e. the string after the '!' character, usually a semicolon separated list of key=value options

arg2 :

the "only_if_exists" flag; if TRUE, client requests that subobject be returned if it exists, but that it should not be created on demand if it doesn't

arg3 :

environment, in case the signal wishes to raise an exception

user_data :

user data set when the signal handler was connected.

Returns :

an object contained by the item container, or CORBA_OBJECT_NIL.
libbonobo-2.32.1/doc/api/html/libbonobo-bonobo-exception.html0000664000076400007640000006410311546334245021077 00000000000000 bonobo-exception

bonobo-exception

bonobo-exception — maps CORBA exceptions to user readable text, + helper macros

Synopsis

#define             bonobo_exception_set                (opt_ev,
                                                         repo_id)
#define             bonobo_return_if_fail               (expr,
                                                         opt_ev)
#define             bonobo_return_val_if_fail           (expr,
                                                         val,
                                                         opt_ev)
#define             BONOBO_EX                           (ev)
#define             BONOBO_USER_EX                      (ev,
                                                         id)
#define             BONOBO_EX_REPOID                    (ev)
#define             BONOBO_RET_EX                       (ev)
#define             BONOBO_RET_VAL_EX                   (ev,
                                                         v)
char *              (*BonoboExceptionFn)                (CORBA_Environment *ev,
                                                         gpointer user_data);
char *              bonobo_exception_get_text           (CORBA_Environment *ev);
char *              bonobo_exception_repoid_to_text     (const char *repo_id);
void                bonobo_exception_add_handler_str    (const char *repo_id,
                                                         const char *str);
void                bonobo_exception_add_handler_fn     (const char *repo_id,
                                                         BonoboExceptionFn fn,
                                                         gpointer user_data,
                                                         GDestroyNotify destroy_fn);
void                bonobo_exception_general_error_set  (CORBA_Environment *ev,
                                                         CORBA_TypeCode opt_deriv,
                                                         const char *format,
                                                         ...);
const char *        bonobo_exception_general_error_get  (CORBA_Environment *ev);

Description

This module contains some useful helper functions that can be used to set various exceptions inside your CORBA methods. It also contains code to map between complex CORBA_Environment exceptions and helpful strings suitable for display to the user.

Typically to test for exceptions the BONOBO_EX macro is used thus:

Example 4. Bonobo exception trapping and reporting

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
int
do_something (CORBA_Environment *ev)
{
    ...
    retval = Foo_Baa_method (object, ev);
    if (BONOBO_EX (ev)) {
        if (BONOBO_USER_EX (ev, ex_CosNaming_NamingContext_NotFound)) {
                g_warning ("Not found");
        } else {
                char *str;
            g_warning ("Exception '%s' occured",
                (str = bonobo_exception_get_text (ev)));
            g_free (str);
        }
        return -1;
    }
    ...
}


Details

bonobo_exception_set()

#define             bonobo_exception_set(opt_ev,repo_id)

This macro sets the stateless user exception with repo_id on opt_ev or warns if opt_ev == NULL

opt_ev :

an optional corba exception environment.

repo_id :

repoid of the exception to set.

bonobo_return_if_fail()

#define             bonobo_return_if_fail(expr,opt_ev)

this macro is used for bonobo preconditons on argument types, usualy inside skels if expr is FALSE a warning is printed and opt_ev is set to ex_Bonobo_BadArg.

expr :

an expression that should be true

opt_ev :

an optional corba exception environment.

bonobo_return_val_if_fail()

#define             bonobo_return_val_if_fail(expr,val,opt_ev)

this macro is used for bonobo preconditons on argument types, usualy inside skels if expr is FALSE a warning is printed and opt_ev is set to ex_Bonobo_BadArg.

expr :

an expression that should be true

val :

a value to return on failure.

opt_ev :

an optional corba exception environment.

BONOBO_EX()

#define BONOBO_EX(ev)         ((ev) != NULL && (ev)->_major != CORBA_NO_EXCEPTION)

This macro returns TRUE if ev flags an exception.

ev :

the exception environment

BONOBO_USER_EX()

#define             BONOBO_USER_EX(ev,id)

This macro returns TRUE if ev contains a user exception of type id.

ev :

the exception environment

id :

the repo_id of the exception

BONOBO_EX_REPOID()

#define BONOBO_EX_REPOID(ev)  (ev)->_id

Returns the repoid string of exception ev.

ev :

a CORBA exception

BONOBO_RET_EX()

#define             BONOBO_RET_EX(ev)

returns if there is an exception flagged in ev.

ev :

the exception environment

BONOBO_RET_VAL_EX()

#define             BONOBO_RET_VAL_EX(ev,v)

returns v if there is an exception flagged in ev

ev :

the exception environment

v :

the value to return

BonoboExceptionFn ()

char *              (*BonoboExceptionFn)                (CORBA_Environment *ev,
                                                         gpointer user_data);

The prototype for user registerable exception decoders.

ev :

the exception environment

user_data :

user data to be passed to the function

Returns :

a g_malloc'd copy of a translated user readable error string.

bonobo_exception_get_text ()

char *              bonobo_exception_get_text           (CORBA_Environment *ev);

Returns a user readable description of the exception. First checks ev against builtin Bonobo exceptions, then falls back to exception names added through bonobo_exception_add_handler_str or bonobo_exception_add_handler_fn.

ev :

the corba environment.

Returns :

A g_malloc'd description, which the caller must free. NULL is never returned.

bonobo_exception_repoid_to_text ()

char *              bonobo_exception_repoid_to_text     (const char *repo_id);

This maps builtin bonobo exceptions that the system knows about to user readable strings.

repo_id :

exception repository id

Returns :

a user string or NULL for an unknown repo_id

bonobo_exception_add_handler_str ()

void                bonobo_exception_add_handler_str    (const char *repo_id,
                                                         const char *str);

This routine adds a simple string mapping for an exception with repository id repo_id, such that when we call bonobo_exception_get_text on an exception of id repo_id we get str back.

repo_id :

exception repository id

str :

the user readable, translated exception text.

bonobo_exception_add_handler_fn ()

void                bonobo_exception_add_handler_fn     (const char *repo_id,
                                                         BonoboExceptionFn fn,
                                                         gpointer user_data,
                                                         GDestroyNotify destroy_fn);

This routine adds a method mapping for an exception with repository id repo_id, such that when we call bonobo_exception_get_text on an exception of id repo_id the fn is called and passed user_data. When the handler is removed the destroy_fn is called on its user_data.

repo_id :

exception repository id

fn :

function to make exception human readable

user_data :

the user data

destroy_fn :

user data destroy function or NULL.

bonobo_exception_general_error_set ()

void                bonobo_exception_general_error_set  (CORBA_Environment *ev,
                                                         CORBA_TypeCode opt_deriv,
                                                         const char *format,
                                                         ...);

ev :

opt_deriv :

format :

... :


bonobo_exception_general_error_get ()

const char *        bonobo_exception_general_error_get  (CORBA_Environment *ev);

ev :

Returns :

libbonobo-2.32.1/doc/api/html/libbonobo-bonobo-arg.html0000664000076400007640000013670311546334245017660 00000000000000 bonobo-arg

bonobo-arg

bonobo-arg — simplified CORBA_Any wrappers

Synopsis

typedef             BonoboArg;
typedef             BonoboArgType;
#define             BONOBO_ARG_NULL
#define             BONOBO_ARG_BOOLEAN
#define             BONOBO_ARG_SHORT
#define             BONOBO_ARG_INT
#define             BONOBO_ARG_LONG
#define             BONOBO_ARG_LONGLONG
#define             BONOBO_ARG_FLOAT
#define             BONOBO_ARG_DOUBLE
#define             BONOBO_ARG_CHAR
#define             BONOBO_ARG_STRING
#define             BONOBO_ARG_GET_GENERAL              (a,
                                                         c,
                                                         t,
                                                         e)
#define             BONOBO_ARG_SET_GENERAL              (a,
                                                         v,
                                                         c,
                                                         t,
                                                         e)
#define             BONOBO_ARG_GET_BOOLEAN              (a)
#define             BONOBO_ARG_SET_BOOLEAN              (a,
                                                         v)
#define             BONOBO_ARG_GET_SHORT                (a)
#define             BONOBO_ARG_SET_SHORT                (a,
                                                         v)
#define             BONOBO_ARG_GET_INT                  (a)
#define             BONOBO_ARG_SET_INT                  (a,
                                                         v)
#define             BONOBO_ARG_GET_LONG                 (a)
#define             BONOBO_ARG_SET_LONG                 (a,
                                                         v)
#define             BONOBO_ARG_GET_LONGLONG             (a)
#define             BONOBO_ARG_SET_LONGLONG             (a,
                                                         v)
#define             BONOBO_ARG_GET_FLOAT                (a)
#define             BONOBO_ARG_SET_FLOAT                (a,
                                                         v)
#define             BONOBO_ARG_GET_DOUBLE               (a)
#define             BONOBO_ARG_SET_DOUBLE               (a,
                                                         v)
#define             BONOBO_ARG_GET_CHAR                 (a)
#define             BONOBO_ARG_SET_CHAR                 (a,
                                                         v)
#define             BONOBO_ARG_GET_STRING               (a)
#define             BONOBO_ARG_SET_STRING               (a,
                                                         v)
BonoboArg *         bonobo_arg_new                      (BonoboArgType t);
BonoboArg *         bonobo_arg_new_from                 (BonoboArgType t,
                                                         gconstpointer data);
void                bonobo_arg_release                  (BonoboArg *arg);
BonoboArg *         bonobo_arg_copy                     (const BonoboArg *arg);
void                bonobo_arg_from_gvalue              (BonoboArg *a,
                                                         const GValue *value);
BonoboArgType       bonobo_arg_type_from_gtype          (GType t);
void                bonobo_arg_to_gvalue                (GValue *value,
                                                         const BonoboArg *arg);
GType               bonobo_arg_type_to_gtype            (BonoboArgType id);
gboolean            bonobo_arg_is_equal                 (const BonoboArg *a,
                                                         const BonoboArg *b,
                                                         CORBA_Environment *opt_ev);
gboolean            bonobo_arg_type_is_equal            (BonoboArgType a,
                                                         BonoboArgType b,
                                                         CORBA_Environment *opt_ev);

Description

The BonoboArg code, and macros are designed to make the use of CORBA_Any's slightly simpler by providing a glib like binding for them. The bonobo-arg code also provides mappings between GValues and CORBA_anys.

A typical use of the BonoboArg macros would be in

Example 14. Property bag implementation

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
static void
get_prop (BonoboPropertyBag *bag,
      BonoboArg         *arg,
      guint              arg_id,
      CORBA_Environment *ev,
      gpointer           user_data)
{
    GObject *clock = user_data;
    switch (arg_id) {
    case PROP_RUNNING: {
        BONOBO_ARG_SET_BOOLEAN (arg, is_it_running);
        break;
    }
    default:
        bonobo_exception_set (ev, ex_Bonobo_PropertyBag_NotFound);
        break;
    }
}


Details

BonoboArg

typedef CORBA_any      BonoboArg;

A glib style looking type alias for a CORBA_any


BonoboArgType

typedef CORBA_TypeCode BonoboArgType;

A glib style looking typedef for a CORBA type description.


BONOBO_ARG_NULL

#define BONOBO_ARG_NULL     TC_null

the null type


BONOBO_ARG_BOOLEAN

#define BONOBO_ARG_BOOLEAN  TC_CORBA_boolean

the boolean type


BONOBO_ARG_SHORT

#define BONOBO_ARG_SHORT    TC_CORBA_short

the short type


BONOBO_ARG_INT

#define BONOBO_ARG_INT      TC_CORBA_long

the integer type [ in fact a long ]


BONOBO_ARG_LONG

#define BONOBO_ARG_LONG     TC_CORBA_long

the long type


BONOBO_ARG_LONGLONG

#define BONOBO_ARG_LONGLONG TC_CORBA_long_long

the long long type


BONOBO_ARG_FLOAT

#define BONOBO_ARG_FLOAT    TC_CORBA_float

the float type


BONOBO_ARG_DOUBLE

#define BONOBO_ARG_DOUBLE   TC_CORBA_double

the double type


BONOBO_ARG_CHAR

#define BONOBO_ARG_CHAR     TC_CORBA_char

the char type


BONOBO_ARG_STRING

#define BONOBO_ARG_STRING   TC_CORBA_string

the string type


BONOBO_ARG_GET_GENERAL()

#define             BONOBO_ARG_GET_GENERAL(a,c,t,e)

A macro to extract a value from a BonoboArg with the given CORBA type t.

a :

the BonoboArg

c :

a BonoboArgType for checking

t :

the C type of the value eg. for BONOBO_ARG_LONG: CORBA_long

e :

an optional CORBA_Environment or NULL.

BONOBO_ARG_SET_GENERAL()

#define             BONOBO_ARG_SET_GENERAL(a,v,c,t,e)

A macro to insert a value into an empty BonoboArg with the given CORBA type t.

a :

the BonoboArg

v :

a pointer to the value to insert.

c :

a BonoboArgType for checking

t :

the C type of the value eg. for BONOBO_ARG_LONG: CORBA_long

e :

an optional CORBA_Environment or NULL.

BONOBO_ARG_GET_BOOLEAN()

#define BONOBO_ARG_GET_BOOLEAN(a)   (BONOBO_ARG_GET_GENERAL (a, TC_CORBA_boolean, CORBA_boolean, NULL))

This macro returns a CORBA_boolean from inside a BonoboArg. If the BonoboArg's type does not match, the behavior is undefined, and may cause faults.

a :

the BonoboArg to extract the value from.

BONOBO_ARG_SET_BOOLEAN()

#define BONOBO_ARG_SET_BOOLEAN(a,v) (BONOBO_ARG_SET_GENERAL (a, v, TC_CORBA_boolean, CORBA_boolean, NULL))

This macro sets the value of a to contain v

a :

the Bonobo arg to insert the value into

v :

a CORBA_boolean.

BONOBO_ARG_GET_SHORT()

#define BONOBO_ARG_GET_SHORT(a)     (BONOBO_ARG_GET_GENERAL (a, TC_CORBA_short, CORBA_short, NULL))

This macro returns a CORBA_short from inside a BonoboArg. If the BonoboArg's type does not match, the behavior is undefined, and may cause faults.

a :

the BonoboArg to extract the value from.

BONOBO_ARG_SET_SHORT()

#define BONOBO_ARG_SET_SHORT(a,v)   (BONOBO_ARG_SET_GENERAL (a, v, TC_CORBA_short, CORBA_short, NULL))

This macro sets the value of a to contain v

a :

the Bonobo arg to insert the value into

v :

a CORBA_short.

BONOBO_ARG_GET_INT()

#define BONOBO_ARG_GET_INT(a)       (BONOBO_ARG_GET_GENERAL (a, TC_CORBA_long, CORBA_long, NULL))

this macro returns a CORBA_long from inside a BonoboArg, if the BonoboArg's type does not match, the behavior is undefined, and may cause faults.

a :

the BonoboArg to extract the value from.

BONOBO_ARG_SET_INT()

#define BONOBO_ARG_SET_INT(a,v)     (BONOBO_ARG_SET_GENERAL (a, v, TC_CORBA_long, CORBA_long, NULL))

This macro sets the value of a to contain v

a :

the Bonobo arg to insert the value into

v :

a CORBA_long.

BONOBO_ARG_GET_LONG()

#define BONOBO_ARG_GET_LONG(a)      (BONOBO_ARG_GET_GENERAL (a, TC_CORBA_long, CORBA_long, NULL))

this macro returns a CORBA_long from from inside a BonoboArg, if the BonoboArg's type does not match, the behavior is undefined, and may cause faults.

a :

the BonoboArg to extract the value from.

BONOBO_ARG_SET_LONG()

#define BONOBO_ARG_SET_LONG(a,v)    (BONOBO_ARG_SET_GENERAL (a, v, TC_CORBA_long, CORBA_long, NULL))

This macro sets the value of a to contain v

a :

the Bonobo arg to insert the value into

v :

a CORBA_long.

BONOBO_ARG_GET_LONGLONG()

#define BONOBO_ARG_GET_LONGLONG(a)  (BONOBO_ARG_GET_GENERAL (a, TC_CORBA_long_long, CORBA_long_long, NULL))

this macro returns a CORBA_long_long from from inside a BonoboArg, if the BonoboArg's type does not match, the behavior is undefined, and may cause faults.

a :

the BonoboArg to extract the value from.

BONOBO_ARG_SET_LONGLONG()

#define BONOBO_ARG_SET_LONGLONG(a,v) (BONOBO_ARG_SET_GENERAL (a, v, TC_CORBA_long_long, CORBA_long_long, NULL))

This macro sets the value of a to contain v

a :

the Bonobo arg to insert the value into

v :

a CORBA_long_long.

BONOBO_ARG_GET_FLOAT()

#define BONOBO_ARG_GET_FLOAT(a)     (BONOBO_ARG_GET_GENERAL (a, TC_CORBA_float, CORBA_float, NULL))

this macro returns a CORBA_float from inside a BonoboArg, if the BonoboArg's type does not match, the behavior is undefined, and may cause faults.

a :

the BonoboArg to extract the value from.

BONOBO_ARG_SET_FLOAT()

#define BONOBO_ARG_SET_FLOAT(a,v)   (BONOBO_ARG_SET_GENERAL (a, v, TC_CORBA_float, CORBA_float, NULL))

This macro sets the value of a to contain v

a :

the Bonobo arg to insert the value into

v :

a CORBA_float.

BONOBO_ARG_GET_DOUBLE()

#define BONOBO_ARG_GET_DOUBLE(a)    (BONOBO_ARG_GET_GENERAL (a, TC_CORBA_double, CORBA_double, NULL))

This macro returns a CORBA_double from inside a BonoboArg. If the BonoboArg's type does not match, the behavior is undefined, and may cause faults.

a :

the BonoboArg to extract the value from.

BONOBO_ARG_SET_DOUBLE()

#define BONOBO_ARG_SET_DOUBLE(a,v)  (BONOBO_ARG_SET_GENERAL (a, v, TC_CORBA_double, CORBA_double, NULL))

This macro sets the value of a to contain v

a :

the Bonobo arg to insert the value into

v :

a CORBA_double.

BONOBO_ARG_GET_CHAR()

#define BONOBO_ARG_GET_CHAR(a)      (BONOBO_ARG_GET_GENERAL (a, TC_CORBA_char, CORBA_char, NULL))

This macro returns a CORBA_char from inside a BonoboArg, If the BonoboArg's type does not match, the behavior is undefined, and may cause faults.

a :

the BonoboArg to extract the value from.

BONOBO_ARG_SET_CHAR()

#define BONOBO_ARG_SET_CHAR(a,v)    (BONOBO_ARG_SET_GENERAL (a, v, TC_CORBA_char, CORBA_char, NULL))

This macro sets the value of a to contain v

a :

the Bonobo arg to insert the value into

v :

a CORBA_char.

BONOBO_ARG_GET_STRING()

#define             BONOBO_ARG_GET_STRING(a)

this macro returns a const CORBA_char * from from inside a BonoboArg, if the BonoboArg's type does not match, the behavior is undefined, and may cause faults. The pointer to the string is only valid for the scope of the lifetime of a.

a :

the BonoboArg to extract the value from.

BONOBO_ARG_SET_STRING()

#define             BONOBO_ARG_SET_STRING(a,v)

This macro sets the value of a to contain a duplicated copy of v

a :

the Bonobo arg to insert the value into

v :

a CORBA_char *.

bonobo_arg_new ()

BonoboArg *         bonobo_arg_new                      (BonoboArgType t);

Create a new BonoboArg with the specified type the value of the BonoboArg is initially empty.

t :

the BonoboArgType eg. TC_CORBA_long

Returns :

the new BonoboArg

bonobo_arg_new_from ()

BonoboArg *         bonobo_arg_new_from                 (BonoboArgType t,
                                                         gconstpointer data);

Create a new BonoboArg with the specified type and data

t :

the BonoboArgType eg. TC_CORBA_long

data :

the data for the BonoboArg to be created

Returns :

the new BonoboArg

bonobo_arg_release ()

void                bonobo_arg_release                  (BonoboArg *arg);

This frees the memory associated with arg

arg :

the bonobo arg.

bonobo_arg_copy ()

BonoboArg *         bonobo_arg_copy                     (const BonoboArg *arg);

This function duplicates a by a deep copy

arg :

the bonobo arg

Returns :

a copy of arg

bonobo_arg_from_gvalue ()

void                bonobo_arg_from_gvalue              (BonoboArg *a,
                                                         const GValue *value);

This maps a GValue value to a BonoboArg a; a must point to a freshly allocated BonoboArg eg. such as returned by bonobo_arg_new

a :

pointer to blank BonoboArg

value :

GValue to copy

bonobo_arg_type_from_gtype ()

BonoboArgType       bonobo_arg_type_from_gtype          (GType t);

t :

Returns :


bonobo_arg_to_gvalue ()

void                bonobo_arg_to_gvalue                (GValue *value,
                                                         const BonoboArg *arg);

Maps a BonoboArg to a GtkArg; a must point to a blank GtkArg.

value :

pointer to a blank GValue

arg :

the BonoboArg to copy

bonobo_arg_type_to_gtype ()

GType               bonobo_arg_type_to_gtype            (BonoboArgType id);

This maps a BonoboArgType to a GType

id :

the BonoboArgType

Returns :

the mapped type or 0 on failure

bonobo_arg_is_equal ()

gboolean            bonobo_arg_is_equal                 (const BonoboArg *a,
                                                         const BonoboArg *b,
                                                         CORBA_Environment *opt_ev);

Compares two BonoboArg's for equivalence; will return TRUE if equivalent for all simple cases. For Object references CORBA sometimes denies 2 object references are equivalent even if they are [ this is a feature_not_bug ].

This function is commutative.

a :

a bonobo arg

b :

another bonobo arg

opt_ev :

optional exception environment or NULL.

Returns :

TRUE if a == b

bonobo_arg_type_is_equal ()

gboolean            bonobo_arg_type_is_equal            (BonoboArgType a,
                                                         BonoboArgType b,
                                                         CORBA_Environment *opt_ev);

This compares two BonoboArgType's in a and b. The opt_ev is an optional CORBA_Environment for exceptions, or NULL. This function is commutative.

a :

a type code

b :

a type code

opt_ev :

optional exception environment or NULL.

Returns :

TRUE if equal, FALSE if different
libbonobo-2.32.1/doc/api/html/libbonobo-bonobo-running-context.html0000664000076400007640000002027311546334245022243 00000000000000 BonoboRunningContext

BonoboRunningContext

BonoboRunningContext — a live object tracker

Description

BonoboRunningContext implements the Bonobo::RunningContext IDL interface, depicted in Figure 1, “The Bonobo::RunningContext interface”.

Figure 1. The Bonobo::RunningContext interface

The Bonobo::RunningContext interface

The purpose of this object is to keep track of currently running objects. This is useful in, for example, exe type factories, in order to know when it is safe to quit from the main loop.

BonoboRunningContext is a singleton. There is at most one instance running at all times. All BonoboObject's are automatically registered with the running context as part of their normal initialization procedure.

To find out when all objects have been destroyed, just connect a handler to the "last-unref" signal.

Details

BonoboRunningContext

typedef struct {
	BonoboObject parent;

	BonoboRunningContextPrivate *priv;
} BonoboRunningContext;

the running context data


BonoboRunningContextClass

typedef struct {
	BonoboObjectClass parent;

	POA_Bonobo_RunningContext__epv epv;

	void (*last_unref) (void);
} BonoboRunningContextClass;

the running context class


bonobo_running_context_new ()

BonoboObject *      bonobo_running_context_new          (void);

Returns :


bonobo_running_context_ignore_object ()

void                bonobo_running_context_ignore_object
                                                        (CORBA_Object object);

object :


bonobo_running_context_at_exit_unref ()

void                bonobo_running_context_at_exit_unref
                                                        (CORBA_Object object);

object :

See Also

BonoboGenericFactory(3)

libbonobo-2.32.1/doc/api/tmpl/0000775000076400007640000000000011546334245013060 500000000000000libbonobo-2.32.1/doc/api/tmpl/bonobo-main.sgml0000664000076400007640000000322611546334245016067 00000000000000 bonobo-main Bonobo initialization. Initialization functions for Bonobo applications. @void: @Returns: @argc: @argv: @Returns: @argc: @argv: @opt_orb: @opt_poa: @opt_manager: @Returns: @void: @name: @fmt: @Varargs: @void: @Returns: @void: @void: @void: @Returns: @void: @Returns: @void: @void: @Returns: @void: @Returns: @void: @Returns: @hint: @Varargs: @Returns: libbonobo-2.32.1/doc/api/tmpl/bonobo-moniker-simple.sgml0000664000076400007640000000645511546334245020105 00000000000000 BonoboMonikerSimple A super easy to use moniker implementation wrapper BonoboMonikerSimple makes writing monikers really extremely easy. To implement a moniker you only have to write 1 function. To register create the moniker object you have to use only 1 call. It can't get much simpler. If you want to use monikers instead of implementing them, you probably want to see #bonobo-moniker-util instead. Few people need to implement monikers, but if they do, this is how they should do it: A cut down file: moniker implementation Bonobo_Unknown bonobo_moniker_file_resolve (BonoboMoniker *moniker, const Bonobo_ResolveOptions *options, const CORBA_char *requested_interface, CORBA_Environment *ev) { const char *fname = bonobo_moniker_get_name (moniker); Bonobo_Unknown retval; g_warning ("Fname '%s'", fname); if (!strcmp (requested_interface, "IDL:Bonobo/Stream:1.0")) { BonoboStream *stream; stream = bonobo_stream_open ("fs", fname, Bonobo_Storage_READ, 0664); if (!stream) { g_warning ("Failed to open stream '%s'", fname); CORBA_exception_set (ev, CORBA_USER_EXCEPTION, ex_Bonobo_Moniker_InterfaceNotFound, NULL); return CORBA_OBJECT_NIL; } return CORBA_Object_duplicate (BONOBO_OBJREF (stream), ev); } return CORBA_OBJECT_NIL; } After implementing the resolve function, you need to create the new moniker in your standard factory: Creating a new simple moniker static BonoboObject * bonobo_std_moniker_factory (BonoboGenericFactory *this, const char *object_id, void *data) { g_return_val_if_fail (object_id != NULL, NULL); if (!strcmp (object_id, "OAFIID:Bonobo_Moniker_File")) return BONOBO_OBJECT (bonobo_moniker_simple_new ( "file:", bonobo_moniker_file_resolve)); else return NULL; } #BonoboMoniker, #BonoboMonikerSimple, #bonobo-moniker-util, #BonoboMonikerExtender A simplified #BonoboMoniker. BonoboMonikerSimple's class. @parent_class: Type of callback function that implements a simple moniker resolution. @moniker: the moniker @options: resolve options @requested_interface: the requested interface (repoid string) @ev: CORBA environment, in case an exception needs to be raised @Returns: a Bonobo_Unknown as the result of the resolution @moniker: @name: @resolve_closure: @Returns: @name: @resolve_fn: @Returns: @name: @resolve_closure: @Returns: libbonobo-2.32.1/doc/api/tmpl/bonobo-storage-memory.sgml0000664000076400007640000000062311546334245020113 00000000000000 bonobo-storage-memory @void: @Returns: libbonobo-2.32.1/doc/api/tmpl/bonobo-types.sgml0000664000076400007640000001017311546334245016306 00000000000000 bonobo-types @name: @tc: @is_bonobo_unknown: @Returns: A #GType for Bonobo_Unknown object references. A #GType for CORBA_any. A #GType for CORBA_Object object references. A #GType for CORBA_TypeCode. A #GType for CORBA_Environment. A #GType for CORBA_Environment with static scope (see #G_SIGNAL_TYPE_STATIC_SCOPE). A #GType for Bonobo_Unknown object references with static scope (see #G_SIGNAL_TYPE_STATIC_SCOPE). A #GType for CORBA_any with static scope (see #G_SIGNAL_TYPE_STATIC_SCOPE). A #GType for CORBA_Object object references with static scope (see #G_SIGNAL_TYPE_STATIC_SCOPE). A #GType for CORBA_TypeCode object references with static scope (see #G_SIGNAL_TYPE_STATIC_SCOPE). Returns true if the #GValue contains a Bonobo_Unknown. @value: Returns true if the #GValue contains a CORBA_any. @value: Returns true if the #GValue contains a CORBA_Object. @value: Returns true if the #GValue contains a CORBA_TypeCode. @value: Returns true if the #GValue contains a CORBA_Environment. @value: Get the Bonobo_Unknown value from a #GValue. @value: @Returns: Get the CORBA_any value from a #GValue. @value: @Returns: Get the CORBA_Object value from a #GValue. @value: @Returns: Get the CORBA_TypeCode value from a #GValue. @value: @Returns: Get the CORBA_Environment value from a #GValue. @value: @Returns: Put a #Bonobo_Unknow value in a #GValue. @value: @unknown: Put a #CORBA_any value in a #GValue. @value: @any: Put a #CORBA_Object value in a #GValue. @value: @object: Put a #CORBA_TypeCode value in a #GValue. @value: @tc: Put a #CORBA_Environment value in a #GValue. @value: @ev: @closure: @return_value: @var_args: @closure: @return_type: @Varargs: @closure: @default_marshal: @Returns: libbonobo-2.32.1/doc/api/tmpl/bonobo-object.sgml0000664000076400007640000002422511546334245016413 00000000000000 BonoboObject Base object for wrapping Bonobo::Unknown derived objects. Implements . BonoboObject provides an easy to use way of writing CORBA servers. It drastically simplifies the issues of epv and vepv construction by automating these, and automatically instantiates a CORBA_Object on g_object_new. This removes clutter from construction time. For libbonobo-2.0, it strongly deprecates #BonoboXObject.
The Bonobo::Unknown interface
The Bonobo::Unknown interface (wrapped by BonoboObject) is the foundation for the component system: it provides life cycle management for objects as well as service discovery. The Bonobo interfaces are all based on the Bonobo::Unknown interface. This interface is very simple and provides two basic services: object lifetime management and object functionality-discovery. This interface only contains three methods, here it is: module Bonobo { interface Unknown { void void ref (); void void unref (); Object query_interface (in string repoid); }; }; The ref() and unref() methods are used to control the lifetime of an object. The query_interface method is used to discover optional functionality provided by the object implementation. The lifetime management is based on reference counting: when a component is initially launched, it starts life with a reference count of one. This reference is held by the component invoker. Each time a reference is kept to this object (say, you store a copy of the object in an array), the reference count is incremented. Every time a reference goes out of scope, the reference count needs to be decremented. When the reference count reaches zero, the component knows that there are no outstanding references to it, and it is safe to shutdown. At this point, the component shuts down. It is possible to ask an object which implements the Bonobo::Unknown interface if it supports other CORBA interfaces. For example, it would be possible to ask an object whether it supports the "IDL:Bonobo/EmbeddablePrint:1.0" interface to find out if it is possible to print its contents. If the return value from invoking the query_interface method on the interface is CORBA_OBJECT_NIL, then we know that the requested interface is not supported. Otherwise, we can invoke IDL:Bonobo/EmbeddablePrint:1.0 methods on the returned CORBA Object. Clients of the query_interface method use it to discover dynamically if a component supports a given interface. Sometimes the client code would require a specific interface to exist, but many times it is possible to operate in a "downgraded" mode. You should design your code to be able to cope with the lack of interfaces in objects. This will allow your program to deal with more components, and this also allows components to work in more situations. For example, a help browser can load an HTML renderer component and ask this component which sort of features are supported by it: stop_animations (BrowserHTML html) { BrowserControl control control = html->query_interface ("IDL:Browser/Control:1.0"); if (control) control->stop_animations (); } The return value of the query_interface invocation contains a reference to a CORBA object that is derived from the Bonobo::Unknown interface or CORBA_OBJECT_NIL if the interface is not supported by the object. And this interface would have been already ref()ed before it was returned. It is up to the caller to call unref() when they are done using the interface. BonoboObject implements the Bonobo::Unknown interface and exports the implementations of the methods in this class to simplify creating new objects that inherit from Bonobo::Unknown. This base object provides default implementations for the ref, unref and query_interface methods. Other implementations reuse this implementation by listing on their VEPV tables the bonobo_object_epv entry point vector. The Bonobo::Unknown interface is inspired by the Microsoft COM IUnknown interface but it has been translated into the CORBA world. #GObject Returns the #GtkType for the BonoboObject object. This macro returns the CORBA object reference inside a #BonoboObject. @o: a #BonoboObject Signature of POA initialization and finalization functions @servant: the object's servant @ev: CORBA environment Implements Bonobo::Unknown. Signal emitted when the last reference of a BonoboObject has been lost and the object is being destroyed / finalized / deactivated. @bonoboobject: the object which received the signal. Signal emitted from bonobo_object_check_env if a system exception is identified. @bonoboobject: the #BonoboObject which received the signal. @arg1: the CORBA_Object contained in @bonoboobject. @arg2: the exception that has just occurred. Pass this property during construction to specify a custom POA for a BonoboObject. Example: BonoboObject * my_bonobo_object_new (void) { BonoboObject *object; object = g_object_new (MY_TYPE_BONOBO_OBJECT, "poa", bonobo_poa_get_threaded (BONOBO_POA_ALL_AT_IDLE), NULL); return object; } BonoboObject's class. @parent_class: @destroy: @system_exception: @poa_init_fn: @poa_fini_fn: @vepv: @epv_struct_offset: @base_epv: @epv: @dummy: @object: @newobj: @object: @repo_id: @Returns: @object: @repo_id: @opt_ev: @Returns: @unknown: @repo_id: @opt_ev: @Returns: @object: @Returns: @object: @opt_ev: @Returns: @object: @opt_ev: @Returns: @obj: @Returns: @obj: @obj: @Returns: @object: @immortal: @obj: @fn: @line: @ref: @Returns: @object: @object: @corba_object: @ev: Checks if the exception in @e needs to be signaled. If so, then the proper exception signal is generated on the BonoboObject object @o for the CORBA reference @c. @o: @c: @e: @object: @opt_ev: @Returns: @list: @list: @p: @Returns: @o: @s: @Returns: @o: @Returns: @object: @Returns: @parent_type: @init_fn: @fini_fn: @epv_struct_offset: @info: @type_name: @Returns: @type: @init_fn: @fini_fn: @epv_struct_offset: @Returns: Macro that includes all the boilerplate code need to register a new BonoboObject-derived class. The programmer has to define two functions only: @prefix_init and @prefix_class_init. As a result of the macro expansion, a function named @prefix_get_type() is defined. @class_name: Name of the GObject class, LikeThis @corba_name: Name of the CORBA interface, with IDL-to-C mapping, Like_This @parent: GType of the parent class, LIKE_TYPE_THIS @prefix: prefix of the implementation functions Like #BONOBO_TYPE_FUNC, but doesn't set POA ini and fini functions. @class_name: @parent: @prefix: libbonobo-2.32.1/doc/api/tmpl/bonobo-generic-factory.sgml0000664000076400007640000001203411546334245020221 00000000000000 BonoboGenericFactory The basic, generic Bonobo object factory implementation The vast majority of Bonobo objects are created by the #BonoboGenericFactory implementation. This provides a very simple C sugar wrapper of the GNOME::ObjectFactory IDL interface, used by OAF to instantiate new objects. Most applications when they start up will register their Bonobo object factory with OAF, this can be done like this: How to register a factory with OAF BonoboGenericFactory *factory; factory = bonobo_generic_factory_new ( "OAFIID:GNOME_MyApp_myId", my_factory_function, NULL); bonobo_running_context_auto_exit_unref (BONOBO_OBJECT (factory)); This registers the factory with OAF, associated with your factory's OAFIID ( as specified in the installed .oaf file ). The running_context_auto_exit_unref function is used to ensure that the program exits the gtk main loop when all of the factory's ( or any derived ) objects are destroyed. When an object that is created by your factory is demanded from OAF the my_factory_function will be called: A simple factory static BonoboObject * my_factory_fn (BonoboGenericFactory *this, const char *object_id, void *data) { BonoboObject *object = NULL; g_return_val_if_fail (object_id != NULL, NULL); if (!strcmp (object_id, "OAFIID:Bonobo_Sample_Clock")) object = bonobo_clock_control_new (); else g_warning ("Unknown OAFIID '%s'", object_id); return object; } This will return the newly constructed object via OAF to the Object requestor. There is a macro that can be used for simple components to remove the burden of writing the main function and getting the initialization correct, see #BONOBO_ACTIVATION_FACTORY. Type of function that is called when it's time for the factory to create a new instance. @factory: the factory that invoked this callback @component_id: OAFIID of the component that should be activated @closure: user data @Returns: the newly created #BonoboObject @act_iid: @factory_cb: @user_data: @Returns: @act_iid: @factory_closure: @Returns: @factory: @act_iid: @factory_closure: @Returns: @factory: @act_iid: @factory_closure: @act_iid: @factory_cb: @user_data: @Returns: @act_iid: @factory_cb: @user_data: @quit_timeout: @Returns: Macro that expands to the code need to initialize an exe factory. Should be placed at the beginning of the main() function. @descr: factory description string @version: version string @argcp: pointer to main()'s argc @argv: main()'s argv Deprecated; see BONOBO_ACTIVATION_FACTORY(). @oafiid: @descr: @version: @callback: @data: Deprecated; see BONOBO_ACTIVATION_FACTORY(). @oafiid: @descr: @version: @callback: @data: Macro that includes all boiler-plate code necessary to create an exe type factory, including a main() function and a generic factory. @oafiid: The factory's OAFIID @descr: Description of the factory @version: Version string of the factory program @callback: Function (#BonoboFactoryCallback) responsible for intantiating components @data: Additional data to be passed to the callback Like BONOBO_ACTIVATION_FACTORY(), but has an extra @quit_timeout argument. @oafiid: The factory's OAFIID @descr: Description of the factory @version: Version string of the factory program @callback: Function (#BonoboFactoryCallback) responsible for intantiating components @data: Additional data to be passed to the callback @quit_timeout: Ammount of time to wait (in milliseconds) before deciding to quit the factory. A larger value prevents frequent respawning of a new factory process when there are many consecutive one-time requests, so that your factory appears to start faster after the first time. libbonobo-2.32.1/doc/api/tmpl/bonobo-stream.sgml0000664000076400007640000000045511546334245016437 00000000000000 bonobo-stream libbonobo-2.32.1/doc/api/tmpl/bonobo-application.sgml0000664000076400007640000000747511546334245017460 00000000000000 bonobo-application a framework for unique application instance and automation @app: @data: @name: @Returns: When @opt_closure is provided (and is non-%NULL) it takes care of calling the callback function with the same arguments as registered for the message. On the other hand if @opt_closure is %NULL, the function arguments are provided in a #GValueArray. This enables defining functions that accept variable number of arguments, but is perhaps a little more tedious to implement. Function with a closure static void message_open_url_cb (BonoboApplication *app, const char *url, gboolean new_win) { ... } ... closure = g_cclosure_new (G_CALLBACK (message_open_url_cb), NULL, NULL); g_closure_set_marshal (closure, my_marshal_VOID__STRING_BOOLEAN); bonobo_application_register_message (app, "open-url", "Opens a new URL in the browser." " Parameters: url(string), open-in-new-window(boolean)", closure, G_TYPE_NONE, G_TYPE_STRING, G_TYPE_BOOLEAN, G_TYPE_NONE); Function accepting variable number of arguments static GValue * message_open_url_cb (BonoboApplication *app, const char *message, GValueArray *args) { const char *url; gboolean new_win = TRUE; g_return_val_if_fail (strcmp (message, "open-url") == 0, NULL); g_return_val_if_fail (args->n_values > 0, NULL); g_return_val_if_fail (G_VALUE_HOLDS_STRING (&args->values[0]), NULL); url = g_value_get_string (&args->values[0]); if (args->n_values > 1) { g_return_val_if_fail (G_VALUE_HOLDS_BOOLEAN (&args->values[1]), NULL); new_win = g_value_get_boolean (&args->values[1]); } ... return NULL; } ... bonobo_application_register_message (app, "open-url", "Opens a new URL in the browser." " Parameters: url(string) [, open-in-new-window(boolean)]", NULL, G_TYPE_NONE, G_TYPE_STRING, G_TYPE_BOOLEAN, G_TYPE_NONE); g_signal_connect (app, "message::open-url", G_CALLBACK (message_open_url_cb), NULL); You are not required to register any messages for your application. However, only registered functions are included in the list returned by bonobo_app_client_msg_list() @app: @name: @description: @opt_closure: @return_type: @first_arg_type: @Varargs: @app: @name: @description: @opt_closure: @return_type: @arg_types: @app: @name: @description: @opt_closure: @return_type: @first_arg_type: @var_args: @app: @argc: @argv: @Returns: @app: @envp: @Returns: @app: @serverinfo: @client: @Returns: @func: @data: @func: @data: libbonobo-2.32.1/doc/api/tmpl/bonobo-storage.sgml0000664000076400007640000000320111546334245016600 00000000000000 bonobo-storage Abstract implementation of the Bonobo::Storage interface The BonoboStorage C interface is extremely simple, this is since the CORBA client interface is where the action occurs. It is anticipated that relatively few people need to implement the Bonobo/Storage IDL interface. The common entry point for BonoboStorage is that of opening a storage using the bonobo_storage_open function, perhaps by a container to use to persist a compound document: An example storage use case void container_save (SampleApp *app, const char *filename, CORBA_Environment *ev) { BonoboStorage *storage; Bonobo_Storage corba_storage; GList *components; int i; storage = bonobo_storage_open (STORAGE_TYPE, filename, Bonobo_Storage_READ | Bonobo_Storage_WRITE | Bonobo_Storage_CREATE, 0664); g_return_if_fail (storage); corba_storage = BONOBO_OBJREF (storage); ... Serialize components to streams created in the storage ... Bonobo_Storage_commit (corba_storage, ev); CORBA_exception_free (ev); bonobo_object_unref (BONOBO_OBJECT (storage)); } #BonoboPersist #BonoboPersistStream @src: @dest: @ev: libbonobo-2.32.1/doc/api/tmpl/bonobo-stream-memory.sgml0000664000076400007640000000372411546334245017747 00000000000000 BonoboStreamMem In-memory implementation of Bonobo::Stream interface. The BonoboStreamMem is an implementation of the IDL:Bonobo/Stream:1.0 interface. This implementation allows an in-memory buffer to be exposed as a IDL:Bonobo/Stream:1.0 to clients. Here is a sample way of exposing a C string as an IDL:Bonobo/Stream:1.0: Sample BonoboStreamMem usage BonoboStream *make_bonobo_stream_on_string (char *string) { return bonobo_stream_mem_create (string, strlen (string), TRUE, FALSE); } This example will make the string argument be exposed as a CORBA stream. #BonoboStream An abstract class to implement IDL:Bonobo/Streams. IDL:Bonobo/Stream:1.0 The CORBA interface implemented . @parent_class: @epv: @get_buffer: @get_size: @stream_mem: @buffer: @size: @read_only: @resizable: @Returns: @buffer: @size: @read_only: @resizable: @Returns: @stream_mem: @Returns: @stream_mem: @Returns: libbonobo-2.32.1/doc/api/tmpl/bonobo-arg.sgml0000664000076400007640000001701211546334245015712 00000000000000 bonobo-arg simplified CORBA_Any wrappers The BonoboArg code, and macros are designed to make the use of CORBA_Any's slightly simpler by providing a glib like binding for them. The bonobo-arg code also provides mappings between GValues and CORBA_anys. A typical use of the BonoboArg macros would be in Property bag implementation static void get_prop (BonoboPropertyBag *bag, BonoboArg *arg, guint arg_id, CORBA_Environment *ev, gpointer user_data) { GObject *clock = user_data; switch (arg_id) { case PROP_RUNNING: { BONOBO_ARG_SET_BOOLEAN (arg, is_it_running); break; } default: bonobo_exception_set (ev, ex_Bonobo_PropertyBag_NotFound); break; } } A glib style looking type alias for a CORBA_any A glib style looking typedef for a CORBA type description. the null type the boolean type the short type the integer type [ in fact a long ] the long type the long long type the float type the double type the char type the string type A macro to extract a value from a BonoboArg with the given CORBA type @t. @a: the BonoboArg @c: a BonoboArgType for checking @t: the C type of the value eg. for BONOBO_ARG_LONG: CORBA_long @e: an optional CORBA_Environment or NULL. A macro to insert a value into an empty BonoboArg with the given CORBA type @t. @a: the BonoboArg @v: a pointer to the value to insert. @c: a BonoboArgType for checking @t: the C type of the value eg. for BONOBO_ARG_LONG: CORBA_long @e: an optional CORBA_Environment or NULL. This macro returns a CORBA_boolean from inside a BonoboArg. If the BonoboArg's type does not match, the behavior is undefined, and may cause faults. @a: the BonoboArg to extract the value from. This macro sets the value of @a to contain @v @a: the Bonobo arg to insert the value into @v: a CORBA_boolean. This macro returns a CORBA_short from inside a BonoboArg. If the BonoboArg's type does not match, the behavior is undefined, and may cause faults. @a: the BonoboArg to extract the value from. This macro sets the value of @a to contain @v @a: the Bonobo arg to insert the value into @v: a CORBA_short. this macro returns a CORBA_long from inside a BonoboArg, if the BonoboArg's type does not match, the behavior is undefined, and may cause faults. @a: the BonoboArg to extract the value from. This macro sets the value of @a to contain @v @a: the Bonobo arg to insert the value into @v: a CORBA_long. this macro returns a CORBA_long from from inside a BonoboArg, if the BonoboArg's type does not match, the behavior is undefined, and may cause faults. @a: the BonoboArg to extract the value from. This macro sets the value of @a to contain @v @a: the Bonobo arg to insert the value into @v: a CORBA_long. this macro returns a CORBA_long_long from from inside a BonoboArg, if the BonoboArg's type does not match, the behavior is undefined, and may cause faults. @a: the BonoboArg to extract the value from. This macro sets the value of @a to contain @v @a: the Bonobo arg to insert the value into @v: a CORBA_long_long. this macro returns a CORBA_float from inside a BonoboArg, if the BonoboArg's type does not match, the behavior is undefined, and may cause faults. @a: the BonoboArg to extract the value from. This macro sets the value of @a to contain @v @a: the Bonobo arg to insert the value into @v: a CORBA_float. This macro returns a CORBA_double from inside a BonoboArg. If the BonoboArg's type does not match, the behavior is undefined, and may cause faults. @a: the BonoboArg to extract the value from. This macro sets the value of @a to contain @v @a: the Bonobo arg to insert the value into @v: a CORBA_double. This macro returns a CORBA_char from inside a BonoboArg, If the BonoboArg's type does not match, the behavior is undefined, and may cause faults. @a: the BonoboArg to extract the value from. This macro sets the value of @a to contain @v @a: the Bonobo arg to insert the value into @v: a CORBA_char. this macro returns a const CORBA_char * from from inside a BonoboArg, if the BonoboArg's type does not match, the behavior is undefined, and may cause faults. The pointer to the string is only valid for the scope of the lifetime of @a. @a: the BonoboArg to extract the value from. This macro sets the value of @a to contain a duplicated copy of @v @a: the Bonobo arg to insert the value into @v: a CORBA_char *. @t: @Returns: @t: @data: @Returns: @arg: @arg: @Returns: @a: @value: @t: @Returns: @value: @arg: @id: @Returns: @a: @b: @opt_ev: @Returns: @a: @b: @opt_ev: @Returns: libbonobo-2.32.1/doc/api/tmpl/libbonobo-unused.sgml0000664000076400007640000000000011546334245017120 00000000000000libbonobo-2.32.1/doc/api/tmpl/bonobo-shlib-factory.sgml0000664000076400007640000000331211546334245017705 00000000000000 bonobo-shlib-factory @parent_class: @factory: @act_iid: @poa: @act_impl_ptr: @closure: @Returns: @component_id: @poa: @act_impl_ptr: @factory_cb: @user_data: @Returns: @act_iid: @poa: @act_impl_ptr: @factory_closure: @Returns: @component_id: @poa: @act_impl_ptr: @factory_cb: @user_data: @ev: @Returns: Deprecated. See BONOBO_ACTIVATION_SHLIB_FACTORY(). @oafiid: @descr: @fn: @data: Deprecated. See BONOBO_ACTIVATION_SHLIB_FACTORY(). @oafiid: @descr: @fn: @data: Macro that includes all boiler-plate code necessary to create an shlib type factory. @oafiid: The factory's OAFIID @descr: Description of the factory @fn: Function (#BonoboFactoryCallback) responsible for intantiating components @data: Additional data to be passed to the callback libbonobo-2.32.1/doc/api/tmpl/bonobo-stream-client.sgml0000664000076400007640000000345311546334245017714 00000000000000 bonobo-stream-client Simplified client wrapper functions for the Stream interface These interfaces are designed to make the stream interface slightly easier to use from client code. This is done 2 ways, first by make the exception environments optiional, and secondly by providing slightly nicer semantics. Writing some simple data to a stream bonobo_stream_client_printf (stream, TRUE, ev, "Hello World: %d", 5); It is well worth using the bonobo_stream_client_write function for any potentialy large writes, since this blocks the data into sensible chunks. This is important, otherwise a single transfer is attempted that will cause hassles in the CORBA stubs. [ NB. ORBit tries to alloca a huge chunk of memory and SEGVs ]. #BonoboStream @stream: @buffer: @size: @ev: @stream: @size: @length_read: @ev: @Returns: @stream: @str: @terminate: @ev: @stream: @terminate: @ev: @fmt: @Varargs: @stream: @str: @ev: @Returns: @stream: @ev: @Returns: libbonobo-2.32.1/doc/api/tmpl/bonobo-persist.sgml0000664000076400007640000000203611546334245016632 00000000000000 BonoboPersist Interface for anything that can save / load itself. BonoboPersist is an abstract base class that is useless by itself. It implements some methods to handle content type querying for use by the derived #BonoboPersistStream interface. #BonoboPersistStream, #BonoboPersistFile @parent_class: @epv: @get_content_types: @num: @Varargs: @Returns: @persist: @iid: @Returns: @persist: @dirty: libbonobo-2.32.1/doc/api/tmpl/bonobo-item-container.sgml0000664000076400007640000000316111546334245020057 00000000000000 BonoboItemContainer this implements a simple container interface for compound document containers This implementation is mostly deprecated, see #BonoboItemHandler #BonoboItemHandler Object that implements Bonobo::ItemHandler Signal emitted when a sub-object is requested from the item container. @bonoboitemcontainer: the object which received the signal. @arg1: the item name, i.e. the string after the '!' character, usually a semicolon separated list of key=value options @arg2: the "only_if_exists" flag; if %TRUE, client requests that subobject be returned if it exists, but that it should not be created on demand if it doesn't @arg3: environment, in case the signal wishes to raise an exception @Returns: an object contained by the item container, or %CORBA_OBJECT_NIL. #BonoboItemContainer's class @parent_class: @epv: @get_object: @void: @Returns: @container: @name: @object: @container: @name: libbonobo-2.32.1/doc/api/tmpl/bonobo-moniker-context.sgml0000664000076400007640000000110311546334245020261 00000000000000 bonobo-moniker-context @parent: @priv: @parent: @epv: @void: @Returns: libbonobo-2.32.1/doc/api/tmpl/bonobo-property-bag.sgml0000664000076400007640000001515411546334245017561 00000000000000 BonoboPropertyBag Implements a generic property storage interface The PropertyBag is used for many things, particularly for the customization of controls. The important thing to remember about the BonoboPropertyBag implementation is that no live data is stored in the bag. ie. the Model for the properties is your code. Consequently when someone requests a properties value, or sets a property the callbacks you supply at bag construction time are called, and the code therein must supply the property. Similarly, when a property changes value inside your object you need to notify the property bag's listeners that it has changed with a call to bonobo_event_source_notify_listeners_full. Here is a simple example use of the property bag: PropertyBag Callbacks enum { PROP_RUNNING, PROP_COLOUR } MyArgs; static void get_prop (BonoboPropertyBag *bag, BonoboArg *arg, guint arg_id, CORBA_Environment *ev, gpointer user_data) { GtkObject *clock = user_data; switch (arg_id) { case PROP_RUNNING: BONOBO_ARG_SET_BOOLEAN (arg, clock->is_running); break; case PROP_COLOUR: BONOBO_ARG_SET_STRING (arg, clock->color); break; default: bonobo_exception_set (ev, ex_Bonobo_PropertyBag_NotFound); break; } } static void set_prop (BonoboPropertyBag *bag, const BonoboArg *arg, guint arg_id, CORBA_Environment *ev, gpointer user_data) { GtkClock *clock = user_data; switch (arg_id) { case PROP_RUNNING: { guint i = BONOBO_ARG_GET_BOOLEAN (arg); if (i) gtk_clock_start (clock); else gtk_clock_stop (clock); break; } case PROP_COLOUR: gtk_clock_set_color (clock, BONOBO_ARG_GET_STRING (arg)); default: bonobo_exception_set (ev, ex_Bonobo_PropertyBag_NotFound); break; } } Then to instantiate the property bag interface and associate it with a control perhaps we do: Adding a PropertyBag to a control BonoboPropertyBag *pb; pb = bonobo_property_bag_new (get_prop, set_prop, clock); bonobo_control_set_properties (control, pb); bonobo_property_bag_add (pb, "running", PROP_RUNNING, BONOBO_ARG_BOOLEAN, NULL, _("Whether or not the clock is running"), 0); bonobo_property_bag_add (pb, "colour", PROP_COLOUR, BONOBO_ARG_STRING, NULL, _("The colour of the clock face"), 0); bonobo_object_unref (BONOBO_OBJECT (pb)); And finally we need to notify listeners of changes in various properties so we could perhaps do: Notifying proterty bag listeners static void signal_handler (GtkClock *clock, BonoboPropertyBag *pb) { BonoboArg *arg = bonobo_arg_new (TC_string); BONOBO_ARG_SET_STRING (arg, gtk_clock_get_color (clock)); bonobo_event_source_notify_listeners_full (pb->es, "Bonobo/Property", "change", "colour", arg, NULL); bonobo_arg_release (arg); } ... gtk_signal_connect (GTK_OBJECT (clock), "color_changed", GTK_SIGNAL_FUNC (signal_handler), pb); See also #BonoboArg. @parent: @epv: @parent: @priv: @es: If this flag is set, the property allows consulting its value. If this flag is set, the property supports modification of its value. Misspelling of #BONOBO_PROPERTY_WRITEABLE. If this flag set, when the property changes its value its listeners will *not* be notified. If this flag set, when the property changes its value its listeners will *not* be notified. Structure that holds information about a property in a #BonoboPropertyBag. @name: the canonic name of the property @idx: unique numeric identifier of the property within the property bag @type: type of value contained by this property @default_value: the default value @doctitle: documentation string title @docstring: documentation string @flags: property flags (read/write, etc.) @priv: implementation private data Property getter function. @bag: the property bag @arg: output parameter; the caller must place here the property value @arg_id: unique numeric identifier of the property within the property bag @ev: the relevant CORBA environment @user_data: user data Property setter function. @bag: the property bag @arg: the new property value to be set @arg_id: unique numeric identifier of the property within the property bag @ev: the relevant CORBA environment @user_data: user data @get_prop_cb: @set_prop_cb: @user_data: @Returns: @get_prop: @set_prop: @Returns: @get_prop: @set_prop: @es: @Returns: @pb: @get_prop: @set_prop: @es: @Returns: @pb: @name: @idx: @type: @default_value: @doctitle: @flags: @pb: @name: @idx: @type: @default_value: @doctitle: @docstring: @flags: @get_prop: @set_prop: @pb: @name: @pb: @on_instance: @pspecs: @n_params: @pb: @Returns: libbonobo-2.32.1/doc/api/tmpl/bonobo-item-handler.sgml0000664000076400007640000000771311546334245017521 00000000000000 BonoboItemHandler Simple Moniker Arguments Sometimes you want to pass "arguments" to a component. Consider the component with the following OAFIID: OAFIID:GNOME_FileSelector You might want to be able to set configuration options from its moniker name, without having to ever use the property bag API. For example: OAFIID:GNOME_FileSelector!AcceptMimeTypes=image/* Implementing it Create a BonoboItemHandler. This component will let you do argument parsing of any kind. You have to provide two functions: enumObjects (this can be empty) and getObject. The getObject function will be called when the moniker mechanism is trying to resolve a set of arguments to your function. Like this: Bonobo_Unknown getObject (BonoboItemHandler *h, const char *item_name, gboolean only_if_exists, gpointer data, CORBA_Environment *ev) { MyData *m = data; if (strcmp (item_name, "friendly") == 0){ m->friendly = true; } /* we just return ourselves */ return bonobo_object_dup_ref (bonobo_object_corba_objref (h), NULL); } So basically during the `getObject' operation you will be given a chance to process the `item_name' string which is basically like a command line argument (for the sake of explaining this) and based on this information you can customize your component. Sample functions Sometimes you will want to specify a bunch of options to configure your component, like this: OAFIID:MyComponent!visible=true;image=blah.png So we are separating the various options with semi-colons here. To simplify your code, we have provided a couple of functions that given the following string: visible=true;image=blah.png Will return a GList split with BonoboItemOptions: GSList *l, *x; x = bonobo_item_option_parse ("visible=true;image=blah.png"); for (l = x; l != NULL; l++){ BonoboItemOption *io = l->data; printf ("Key=%s, Value=%s\n", io->key, io->value); } bonobo_item_option_free (x); A simplistic implementation exists in #BonoboItemContainer. Bonobo::ItemHandler implementation BonoboItemHandler class @parent_class: @epv: @enum_objects: @get_object: @user_data: @Returns: @enum_objects: @get_object: @Returns: @handler: @enum_objects: @get_object: @Returns: A key-value pair. @key: @value: @option_string: @Returns: @options: libbonobo-2.32.1/doc/api/tmpl/bonobo-persist-client.sgml0000664000076400007640000000101311546334245020100 00000000000000 bonobo-persist-client @object: @stream: @opt_ev: @stream: @opt_ev: @Returns: libbonobo-2.32.1/doc/api/tmpl/bonobo-moniker-util.sgml0000664000076400007640000001064711546334245017567 00000000000000 bonobo-moniker-util Object activation and construction through monikers. The moniker utility functions provide two sets of functions: Helper functions for constructing and resolving monikers, and a simple get_object method that constructs and resolves against an interface in a single pass. Also, asynchronous versions of these methods are provided using the #BonoboAsync code. Helper functions for the implementation of new custom monikers are also provided here, along with a lot of the grunt code neccessary for moniker implementation, particularly constructing the chained list of sub-monikers that comprises a complex moniker. The most useful function to get a feel for what monikers can do is the bonobo_get_object method. This is used to create a moniker and resolve it against a given interface like this: GetObject example GtkWidget * moniker_resolve_demo (void) { Bonobo_Control control; CORBA_Environment ev; CORBA_exception_init (&ev); control = bonobo_get_object ("file:/demo/a.jpeg", "Bonobo/Control", NULL); if (control == CORBA_OBJECT_NIL) g_error ("Failed to get object file:/demo/a.jpeg"); return bonobo_widget_new_control (control); } This also makes a control out of the widget. It is worth noting that when resolving monikers a contracted version of the interface name may be used, ommitting the 'IDL:' prefix and / or the ':0' suffix. @name: @interface_name: @opt_ev: @Returns: @name: @opt_ev: @Returns: @moniker: @opt_ev: @Returns: @moniker: @interface_name: @opt_ev: @Returns: @moniker: @name: @opt_ev: @Returns: Callback function, invoked when bonobo_get_object_async() completes its work. @object: the newly-activated object, or %CORBA_OBJECT_NIL if an exception occurred @ev: CORBA environment that may contain an exception if an activation error occurred @user_data: user data @name: @interface_name: @ev: @cb: @user_data: @name: @ev: @cb: @user_data: @moniker: @options: @interface_name: @ev: @cb: @user_data: @moniker: @interface_name: @ev: @cb: @user_data: @moniker: @opt_ev: @Returns: @object: @requested_interface: @ev: @Returns: @name: @plen: @Returns: @str: @min_idx: @Returns: @string: @offset: @Returns: @string: @num_chars: @Returns: @oafiid: @url: @mime_type: @object: @ev: @oafiid: @url: @ev: @oafiid: @url: @ev: @Returns: libbonobo-2.32.1/doc/api/tmpl/bonobo-persist-stream.sgml0000664000076400007640000000654211546334245020131 00000000000000 BonoboPersistStream Interface for anything that can save / load itself from a Bonobo stream. The PersistStream interface is the interface to use for all new components that are able to load and save themselves to a stream. It should be associated with any #BonoboEmbeddable for use by the container in creating a compound document. This interface works by connecting callbacks to the methods, in a somewhat deprecated fashion, it is probably better nowadays to simply sub-class the BonoboXObject and override the epv methods. Either way, after all the caveats here is an example use: Implementing the PersistStream callbacks static void load_from_stream (BonoboPersistStream *ps, const Bonobo_Stream stream, Bonobo_Persist_ContentType type, void *closure, CORBA_Environment *ev) { EogImageData *image_data = closure; g_warning ("Load content from stream of type '%s'", type); } static gint save_to_stream (BonoboPersistStream *ps, const Bonobo_Stream stream, Bonobo_Persist_ContentType type, void *closure, CORBA_Environment *ev) { EogImageData *image_data = closure; g_warning ("Save content to stream with type '%s'", type); } static Bonobo_Persist_ContentTypeList * get_supported_types (BonoboPersistStream *ps, void *closure, CORBA_Environment *ev) { return bonobo_persist_generate_content_types ( 2, "text/plain", "text/html"); } Having implemented the callbacks we then have to register them and aggregate the interface to our object: Aggregating a new PersistStream EogImageData * eog_image_data_construct (EogImageData *image_data) { BonoboObject *retval; BonoboPersistStream *ps; ps = bonobo_persist_stream_new ( load_from_stream, save_to_stream, get_supported_types, NULL, image_data); if (ps == NULL) { bonobo_object_unref (BONOBO_OBJECT (image_data)); return NULL; } bonobo_object_add_interface (BONOBO_OBJECT (image_data), BONOBO_OBJECT (ps)); return image_data; } @parent_class: @epv: @load: @save: @get_content_types: @ps: @stream: @type: @closure: @ev: @ps: @closure: @ev: @Returns: @load_fn: @save_fn: @types_fn: @iid: @closure: @Returns: @ps: @load_fn: @save_fn: @types_fn: @iid: @closure: @Returns: libbonobo-2.32.1/doc/api/tmpl/bonobo-running-context.sgml0000664000076400007640000000353611546334245020311 00000000000000 BonoboRunningContext a live object tracker #BonoboRunningContext implements the Bonobo::RunningContext IDL interface, depicted in .
The Bonobo::RunningContext interface
The purpose of this object is to keep track of currently running objects. This is useful in, for example, exe type factories, in order to know when it is safe to quit from the main loop. #BonoboRunningContext is a singleton. There is at most one instance running at all times. All #BonoboObject's are automatically registered with the running context as part of their normal initialization procedure. To find out when all objects have been destroyed, just connect a handler to the "last-unref" signal. the running context data @parent: @priv: the running context class @parent: @epv: @last_unref: @void: @Returns: @object: @object: libbonobo-2.32.1/doc/api/tmpl/bonobo-context.sgml0000664000076400007640000000547711546334245016641 00000000000000 bonobo-context Extensible runtime service interface The bonobo-context code is designed to provide a way to expose CORBA contexts through a single C interface. This is so that language bindings can get away with wrapping a single function, and yet have access to the whole Bonobo service framework. Two examples of this are the MonikerContext and the RunningContext ( see Bonobo_Context.idl ). Getting and using the moniker context Bonobo_MonikerContext context; Bonobo_Unknown object; context = bonobo_context_get ("Activation", NULL); if (context == CORBA_OBJECT_NIL) g_error (_("Internal error, no activation context")); object = Bonobo_MonikerContext_getObject ( "file:/demo/a.jpeg", "Bonobo/Control", ev); ... The list of contexts is open and may be expanded in the future, currently there are the following: Activation - Bonobo/MonikerContext Running - Bonobo/RunningContext The running context is particularly useful for ensuring that server processes exit cleanly when all their objects and derived objects are dead. To do this we can simply do the following: How to get a factory to quit when it is idle static void last_unref_exit_cb (gpointer context, BonoboObject *factory) { bonobo_object_unref (factory); gtk_main_quit (); } ... int main (int argc, char **argv) { ... bonobo_running_context_ignore_object (BONOBO_OBJREF (object)); gtk_signal_connect (GTK_OBJECT (bonobo_context_running_get ()), "last_unref", last_unref_exit_cb, factory); ... bonobo_main (); } Since this is a commonly used thing there is a helper to make this easier: How to get a factory to quit when it is idle bonobo_running_context_auto_exit_unref (factory) @context_name: @opt_ev: @Returns: @context_name: @context: @void: @Returns: @object: libbonobo-2.32.1/doc/api/tmpl/bonobo-listener.sgml0000664000076400007640000001013111546334245016761 00000000000000 bonobo-listener An Event Listener (an implementation of Bonobo::Listener) The BonoboListener object is a CORBA server used to receive events emitted by a remote Bonobo::EventSource server. The combination EventSource/Listener is used to notify one or more client applications of events that happen in a component. Think of the EventSource/Listener as a notification/callback system that allows multiple clients to be informed of events. Once created, the BonoboListener object needs to be attached to a remote IDL:Bonobo/EventSource:1.0 server. This is done by passing the CORBA Object reference of the BonoboListener to the addListener method in the IDL:Bonobo/EventSource:1.0. The BonoboListener object allows the user to specify a callback function to be invoked when an event is emitted by the IDL:Bonobo/EventSource:1.0 server. The BonoboListener object also emits the "event_notify" Gtk+ signal, which allows you to connect multiple code segments to the same event notification. Here is a sample client application that registers interest in being notified of events from the fictional "Keyboard" event source: BonoboListener *keyboard_listener; my_listener_function (BonoboListener *l, char *event_name, CORBA_any value, CORBA_Environment *ev, gpointer user_data) { printf ("Received event named: %s\n", event_name); } connect_to_keyboard_source (Bonobo_EventSource *keyboard) { Bonobo_Unknown reference; /* * First, create the listener Bonobo server. */ keyboard_listener = bonobo_listener_new (my_listener_function, NULL); /* * Now, register our listener with the EventSource */ reference = bonobo_object_corba_objref (keyboard_listener); Bonobo_EventSource_addListener (keyboard, reference); } The CORBA::any value passed to the listener function is defined by the contract between the EventSource's event you are using and you. To manipulate the value, you can use the CORBA DynamicAny interface to introspect the value and extract the information you need. #BonoboEventSource #BonoboArg Implementents Bonobo::Listener. @bonobolistener: the object which received the signal. @arg1: @arg2: @arg3: #BonoboListener's class @parent_class: @epv: @event_notify: The signature for the callback function invoked when an event is delivered to the BonoboListener object. @listener: a pointer to the BonoboListener. @event_name: the event name that was emitted. @any: The value (A CORBA Any) that was passed by the EventSource. @ev: Environment for returning CORBA errors. @user_data: the data pointer specified when you called bonobo_listener_new @event_cb: @user_data: @Returns: @event_closure: @Returns: @idl_path: @kind: @subtype: @Returns: @event_name: @Returns: @event_name: @Returns: @event_name: @Returns: @event_name: @Returns: libbonobo-2.32.1/doc/api/tmpl/bonobo-event-source.sgml0000664000076400007640000000751511546334245017567 00000000000000 bonobo-event-source An Event Source where clients can connect to listen to events. An event source object is responsible for channeling the emission of signals on an object to the appropriate attached listeners. The API is extremely simple and allows implementations to notify their listeners of a new event occuring. To notify a listener, you need to construct a textual string, this is done by the bonobo_event functions ( see #BonoboListener ) ':' delimiting the fields. It is reccommended that the IDL module path of the interface be used as the first part of the string. This is because many interfaces can be aggregated together and need to share the same event namespace without conflicts. So for example the bonobo property bag notification code uses the IDL path "Bonobo/Property" the "change" kind and sets the sub-type to the property name: An example event source notification static void notify_listeners (BonoboPropertyBag *pb, BonoboProperty *prop, const BonoboArg *new_value, CORBA_Environment *opt_ev) { if (prop->flags & BONOBO_PROPERTY_NO_LISTENING) return; bonobo_event_source_notify_listeners_full (pb->es, "Bonobo/Property", "change", prop->name, new_value, opt_ev); } Of course, you need to notify the listener with a valid BonoboArg containing the event data, this could easily contain a structure. eg. Passing a structure in an event module GNOME { module Foo { struct BaaEvent { double a; string b; long c; }; }; }; static void fire_event (BonoboEventSource *on_source, double a_double, char *a_string, long a_float, CORBA_Environment *opt_ev) { CORBA_any any; GNOME_Foo_BaaEvent e; e.a = a_double; e.b = a_string; e.c = a_float; any->_type = TC_GNOME_Foo_BaaEvent; any->_data = &e; bonobo_event_source_notify_listeners_full ( on_source, "GNOME/Foo", "event", NULL, &any, opt_ev); } NB. it is reccommended that you make it clear that the event structure is intended for use with the #BonoboEventSource / #BonoboListener by naming it XYZEvent, ie. with the 'Event' suffix. #BonoboListener #BonoboArg @void: @Returns: @event_source: @event_name: @opt_value: @opt_ev: @event_source: @path: @type: @subtype: @opt_value: @opt_ev: @object: @listener: @opt_ev: @object: @event_callback: @opt_mask: @opt_ev: @user_data: @event_source: @event_name: @Returns: @object: @callback: @opt_mask: @opt_ev: @object: @callback: @opt_mask: @opt_ev: @Returns: @event_source: libbonobo-2.32.1/doc/api/tmpl/bonobo-moniker-extender.sgml0000664000076400007640000001005111546334245020415 00000000000000 BonoboMonikerExtender A way to extend arbitary monikers A moniker extender is used to extend the functionality of a moniker. There are two standard moniker extenders that cannot be system wide, since they use the oaf database to expand the scope of a moniker to arbitrarily many interfaces. These are invoked explicitely by monikers implementing the stream interface in the following way: Explicit Stream extender usage example Bonobo_Unknown example_moniker_resolve (BonoboMoniker *moniker, const Bonobo_ResolveOptions *options, const CORBA_char *requested_interface, CORBA_Environment *ev) { if (!strcmp (requested_interface, "IDL:Bonobo/Stream:1.0")) return handle_stream (moniker, options, ev); else return bonobo_moniker_use_extender ( "OAFIID:Bonobo_MonikerExtender_stream", moniker, options, requested_interface, ev); } The moniker extender essentialy resolves 'moniker' against stream and by some means ( not known when the moniker was written ) converts this to a new exotic interface - via. the PersistStream interface. All standard moniker extenders are registered by adding a fragment like this: Oaf information for an extender <oaf_attribute name="bonobo:moniker_extender" type="stringv"> <item value="file:"/> </oaf_attribute> to the .oaf file. This registers the extender with the system, such that when a moniker resolve fails an extender can be found for any of the monikers with prefix specified in the "bonobo:moniker_extender" stringv. Implementing your own extender is extremely simple, much like #BonoboMonikerSimple. Oaf information for an extender Bonobo_Unknown example_extender_resolve (BonoboMonikerExtender *extender, const Bonobo_Moniker m, const Bonobo_ResolveOptions *options, const CORBA_char *display_name, const CORBA_char *requested_interface, CORBA_Environment *ev) { ... resolve 'm' against an interface we know it supports ... ... then use that interface to provide requested_interface ... } It is registered again in much the same way in your factory: Creating a new simple moniker static BonoboObject * bonobo_std_moniker_factory (BonoboGenericFactory *this, const char *object_id, void *data) { g_return_val_if_fail (object_id != NULL, NULL); if (!strcmp (object_id, "OAFIID:Bonobo_MonikerExtender_file")) return BONOBO_OBJECT (bonobo_moniker_extender_new ( example_extender_resolve, NULL)); else return NULL; } Implements a moniker extender: Bonobo::MonikerExtender. BonoboMonikerExtender's class. @parent_class: @epv: @resolve: Moniker resolution callback function. @extender: extender (self) @parent: parent moniker @options: resolve options @display_name: ? FIXME @requested_interface: ? FIXME @ev: @Returns: the resolution resulting object @resolve: @data: @Returns: @name: @interface: @opt_ev: @Returns: @extender_oafiid: @moniker: @options: @requested_interface: @opt_ev: @Returns: libbonobo-2.32.1/doc/api/tmpl/bonobo-app-client.sgml0000664000076400007640000000217611546334245017202 00000000000000 bonobo-app-client client interface to remote #BonoboApplication objects @name: @return_type: @types: @description: @app_server: @Returns: @app_client: @argc: @argv: @opt_env: @Returns: @app_client: @message: @opt_env: @first_arg_type: @var_args: @Returns: @app_client: @message: @argv: @opt_env: @Returns: @app_client: @message: @opt_env: @first_arg_type: @Varargs: @Returns: libbonobo-2.32.1/doc/api/tmpl/bonobo-property-bag-client.sgml0000664000076400007640000002211111546334245021024 00000000000000 bonobo-property-bag-client simplified property bag client wrapper code This code is designed to make the property bag interface slightly easier to use, by allowing optional CORBA environments, sensible return values on exceptions, and accessors for specific types of CORBA_Any. eg. bonobo_property_bag_client_get_value_glong. With the property bag interface, as in all current remote Bonobo method invocations, translation issues are very dodgy. Assuming that the server process was activated in the correct locale, all should be well, however there is no guarantee that ( in a rapidly changing locale environment ) the string will be correctly translated. It is difficult to know how to solve this problem. #BonoboPropertyBag, #BonoboProperty, #BonoboPropertyControl @bag: @key: @opt_ev: @Returns: @bag: @key: @opt_ev: @Returns: @bag: @key: @defval: @def: @Returns: @bag: @key: @opt_ev: @Returns: @bag: @key: @opt_ev: @Returns: @bag: @key: @defval: @def: @Returns: @bag: @key: @opt_ev: @Returns: @bag: @key: @opt_ev: @Returns: @bag: @key: @defval: @def: @Returns: @bag: @key: @opt_ev: @Returns: @bag: @key: @opt_ev: @Returns: @bag: @key: @defval: @def: @Returns: @bag: @key: @opt_ev: @Returns: @bag: @key: @opt_ev: @Returns: @bag: @key: @defval: @def: @Returns: @bag: @key: @opt_ev: @Returns: @bag: @key: @opt_ev: @Returns: @bag: @key: @defval: @def: @Returns: @bag: @key: @opt_ev: @Returns: @bag: @key: @opt_ev: @Returns: @bag: @key: @defval: @def: @Returns: @bag: @key: @opt_ev: @Returns: @bag: @key: @opt_ev: @Returns: @bag: @key: @defval: @def: @Returns: @bag: @key: @opt_ev: @Returns: @bag: @key: @opt_ev: @Returns: @bag: @key: @defval: @def: @Returns: @bag: @key: @opt_tc: @opt_ev: @Returns: @bag: @key: @opt_tc: @opt_ev: @Returns: @bag: @key: @value: @opt_ev: @bag: @key: @value: @opt_ev: @bag: @key: @value: @opt_ev: @bag: @key: @value: @opt_ev: @bag: @key: @value: @opt_ev: @bag: @key: @value: @opt_ev: @bag: @key: @value: @opt_ev: @bag: @key: @value: @opt_ev: @bag: @key: @value: @opt_ev: @bag: @key: @value: @opt_ev: @bag: @key: @value: @opt_ev: @bag: @key: @opt_ev: @Returns: @bag: @key: @opt_ev: @Returns: @bag: @opt_ev: @Returns: @key_list: @bag: @key: @opt_ev: @Returns: @bag: @opt_ev: @first_prop: @Varargs: @bag: @opt_ev: @first_prop: @Varargs: @bag: @ev: @first_arg: @var_args: @Returns: @bag: @ev: @first_arg: @var_args: @Returns: @Returns: @Returns: @Returns: @Returns: @Returns: @Returns: @Returns: @Returns: @Returns: @pb: @name: @ev: @Returns: @Returns: @Returns: @Returns: @Returns: @Returns: @Returns: @pb: @name: @ev: @Returns: @Returns: @Returns: libbonobo-2.32.1/doc/api/tmpl/bonobo-exception.sgml0000664000076400007640000000736211546334245017146 00000000000000 bonobo-exception maps CORBA exceptions to user readable text, + helper macros This module contains some useful helper functions that can be used to set various exceptions inside your CORBA methods. It also contains code to map between complex CORBA_Environment exceptions and helpful strings suitable for display to the user. Typically to test for exceptions the BONOBO_EX macro is used thus: Bonobo exception trapping and reporting int do_something (CORBA_Environment *ev) { ... retval = Foo_Baa_method (object, ev); if (BONOBO_EX (ev)) { if (BONOBO_USER_EX (ev, ex_CosNaming_NamingContext_NotFound)) { g_warning ("Not found"); } else { char *str; g_warning ("Exception '%s' occured", (str = bonobo_exception_get_text (ev))); g_free (str); } return -1; } ... } This macro sets the stateless user exception with @repo_id on @opt_ev or warns if @opt_ev == NULL @opt_ev: an optional corba exception environment. @repo_id: repoid of the exception to set. this macro is used for bonobo preconditons on argument types, usualy inside skels if @expr is FALSE a warning is printed and @opt_ev is set to ex_Bonobo_BadArg. @expr: an expression that should be true @opt_ev: an optional corba exception environment. this macro is used for bonobo preconditons on argument types, usualy inside skels if @expr is FALSE a warning is printed and @opt_ev is set to ex_Bonobo_BadArg. @expr: an expression that should be true @val: a value to return on failure. @opt_ev: an optional corba exception environment. This macro returns TRUE if @ev flags an exception. @ev: the exception environment This macro returns TRUE if @ev contains a user exception of type @id. @ev: the exception environment @id: the repo_id of the exception Returns the repoid string of exception @ev. @ev: a CORBA exception returns if there is an exception flagged in @ev. @ev: the exception environment returns @v if there is an exception flagged in @ev @ev: the exception environment @v: the value to return The prototype for user registerable exception decoders. @ev: the exception environment @user_data: user data to be passed to the function @Returns: a g_malloc'd copy of a translated user readable error string. @ev: @Returns: @repo_id: @Returns: @repo_id: @str: @repo_id: @fn: @user_data: @destroy_fn: @ev: @opt_deriv: @format: @Varargs: @ev: @Returns: libbonobo-2.32.1/doc/api/tmpl/bonobo-moniker.sgml0000664000076400007640000000445211546334245016611 00000000000000 BonoboMoniker The base implementation of our abstract object naming space Monikers are used to name objects, they effectively implement an object naming space. You can obtain monikers either because you created the moniker manually, or from a stringified representation of a moniker. For more information see bonobo/doc/Monikers, relatively few people want to implement monikers, mostly they just want to use them. To do this you need the #bonobo-moniker-util API. To implement your own moniker, it is most likely that you want to use #BonoboMonikerSimple, BonoboMoniker is a mostly abstract base class that in some obscure cases might provide a more powerful feature set. Most people use #BonoboMonikerSimple. #bonobo-moniker-util #BonoboMonikerSimple Implements Bonobo::Moniker BonoboMoniker's class @parent_class: @epv: @resolve: @set_internal_name: @get_internal_name: @dummy: @moniker: @prefix: @Returns: @moniker: @opt_ev: @Returns: @moniker: @parent: @opt_ev: @moniker: @Returns: @moniker: @Returns: @moniker: @Returns: @moniker: @name: @moniker: @Returns: @moniker: @sensitive: @moniker: @Returns: libbonobo-2.32.1/doc/api/tmpl/bonobo-config-database.sgml0000664000076400007640000000701011546334245020145 00000000000000 bonobo-config-database @db: @key: @opt_ev: @Returns: @db: @key: @defval: @def: @Returns: @db: @key: @opt_ev: @Returns: @db: @key: @defval: @def: @Returns: @db: @key: @opt_ev: @Returns: @db: @key: @defval: @def: @Returns: @db: @key: @opt_ev: @Returns: @db: @key: @defval: @def: @Returns: @db: @key: @opt_ev: @Returns: @db: @key: @defval: @def: @Returns: @db: @key: @opt_ev: @Returns: @db: @key: @defval: @def: @Returns: @db: @key: @opt_ev: @Returns: @db: @key: @defval: @def: @Returns: @db: @key: @opt_ev: @Returns: @db: @key: @defval: @def: @Returns: @db: @key: @opt_ev: @Returns: @db: @key: @defval: @def: @Returns: @db: @key: @opt_tc: @opt_ev: @Returns: @db: @key: @value: @opt_ev: @db: @key: @value: @opt_ev: @db: @key: @value: @opt_ev: @db: @key: @value: @opt_ev: @db: @key: @value: @opt_ev: @db: @key: @value: @opt_ev: @db: @key: @value: @opt_ev: @db: @key: @value: @opt_ev: @db: @key: @value: @opt_ev: @db: @key: @value: @opt_ev: libbonobo-2.32.1/doc/api/tmpl/bonobo-i18n.sgml0000664000076400007640000000045311546334245015721 00000000000000 bonobo-i18n libbonobo-2.32.1/doc/api/tmpl/bonobo-persist-file.sgml0000664000076400007640000001035711546334245017554 00000000000000 BonoboPersistFile Interface for anything that can save / load itself from a file. The PersistFile interface is a useful interface for Bonoboizing legacy applications, however, for new / correct applications it is far preferable to implement the #BonoboPersistStream interface, since this will not only result in a nice clean to your application architecture, but also allow the transparent use of local, remote, and synthetic streams. This interface works by connecting callbacks to the methods, in a pretty deprecated fashion, it is probably better nowadays to simply sub-class the BonoboXObject and override the epv methods. Either way, after all the caveats here is an example use: Persist file implementation static gint load_from_file (BonoboPersistFile *pf, const CORBA_char *filename, CORBA_Environment *ev, void *closure) { EogImageData *image_data = closure; g_warning ("Load from '%s'", filename); return 0; /* Return 0 on success */ } static gint save_to_file (BonoboPersistFile *pf, const CORBA_char *filename, CORBA_Environment *ev, void *closure) { EogImageData *image_data = closure; g_warning ("Save to '%s'", filename); return 0; /* Return 0 on success */ } Having implemented the callbacks we then have to register them and aggregate the interface to our object: Aggregating a new PersistFile EogImageData * eog_image_data_construct (EogImageData *image_data) { BonoboObject *retval; BonoboPersistFile *file; file = bonobo_persist_file_new ( load_from_file, save_to_file, image_data); if (file == NULL) { bonobo_object_unref (BONOBO_OBJECT (image_data)); return NULL; } bonobo_object_add_interface (BONOBO_OBJECT (image_data), BONOBO_OBJECT (file)); return image_data; } Note again, that you should be writing a BonoboPersistStream interface, however if you have already done this you might like to just have hooks through so that old apps can use the PersistFile interface: Chaining to a #PersistStream implementation static gint load_from_file (BonoboPersistFile *pf, const CORBA_char *filename, CORBA_Environment *ev, void *closure) { Bonobo_PersistStream ps = closure; BonoboStream *stream; stream = bonobo_stream_open ( BONOBO_IO_DRIVER_FS, filename, Bonobo_STORAGE_READ, 0); if (!stream) return 0; .. extract content type from file ... Bonobo_PersistStream_load (ps, type, ev); return 0; /* Return 0 on success */ } static gint save_to_file (BonoboPersistFile *pf, const CORBA_char *filename, CORBA_Environment *ev, void *closure) { Bonobo_PersistStream ps = closure; BonoboStream *stream; stream = bonobo_stream_open ( BONOBO_IO_DRIVER_FS, filename, Bonobo_STORAGE_WRITE | Bonobo_STORAGE_CREATE, S_IRUSR | S_IWUSR | S_IRGRP); if (!stream) return 0; .. work out content type we want to save ... Bonobo_PersistStream_save (ps, type, ev); return 0; /* Return 0 on success */ } The mime type data can be extracted from gnome-vfs or gnome-mime. #BonoboPersistStream, #BonoboPersist @pf: @uri: @ev: @closure: @Returns: @parent_class: @epv: @load: @save: @get_current_file: @load_fn: @save_fn: @iid: @closure: @Returns: @pf: @load_fn: @save_fn: @iid: @closure: @Returns: libbonobo-2.32.1/doc/api/tmpl/bonobo-shutdown.sgml0000664000076400007640000000145211546334245017015 00000000000000 bonobo-shutdown @void: @void: @void: @Returns: @void: @void: @void: libbonobo-2.32.1/doc/api/refcounting.xml0000664000076400007640000001726611430735223015076 00000000000000 Reference Counting LIBBONOBO Library Reference Counting Bonobo component reference counting, version 0.1 by Michael Meeks <mmeeks@gnu.org> and Mike Fleming <mfleming@eazel.com> Bonobo Objects A bonobo object is a glib object that implements an CORBA interface, it also contains a pointer to the BonoboAggregateObject that it is part of. A bonobo object has two reference counts; the first is a GObject reference count on the object. This should be 1 at all times except pre-finalization. The main reference count for the aggregate is stored in the typedef struct { int ref_count; GList *objs; } BonoboAggregateObject; structure. Also in this structure is a list of all the objects implementing other interfaces in this aggregate. Clearly an object is always in its own aggregate hence: g_assert (g_list_find (object->priv->ao->objs, object) == object); Is always true. The object->priv->ao dereference is merely a nice way of encapsulating this information inside bonobo-object.c and ensuring that it can't be fiddled with elsewhere. Ref counting The only ref count to manipulate is that on the aggregate obejct, this is done via the bonobo_object_ref / unref pair, it is also done remotely via the Bonobo_Object_ref / unref CORBA stubs. There is no 'destroy' method, if you want this method you are probably confused about how GObject deals with allocation. Some people try to use g_object_ref / unref on BonoboObjects; sadly this will cause very serious grief. This if you g_object_unref a bonobo object, then that object will be destroyed without consulting the aggregate ref-count, and without sorting out the aggregate. The net effect of this is that the aggregate is left including a finalized object. This is a very bad move indeed. Reference leaks Catching reference leaks is evily difficult. The first approach is to set environment variable BONOBO_DEBUG_FLAGS to a colon separated list of a subset of {object, running, aggregate, lifecycle, refs}. This will enable debugging output in certain parts of libbonobo. The output will be written to stdout or, alternatively, if you set BONOBO_DEBUG_DIR to a directory path, to a file named bonobo-debug-<pid> in that directory. This combined with a call to bonobo_shutdown () before exiting your program should provide a dump of all object references floating in your code. Another good way of catching leaks---having guessed which object is not getting freed---is to fire up container and component in gdb, break in eg. bonobo_embeddable_new and insert a hardware watch point on the ref count [ see also ]: (gdb) p &((BonoboObject *)embeddable)->priv->ao->ref_count $N = (int *) 0x80808102 (gdb) watch *0x80808102 (gdb) cont This will result in gdb giving you control each time the ref count is changed. At this point halt the other end of the CORBA link and start logging traces at both ends. By the time the program exits you should have worked out where the reference went astray. Ref Counting Conventions And now for the important stuff: Bonobo Ref Counting The Bonobo ref count convention is as follows. (Mild rewording; same meaning as before) A function returning an object, either as the return value or by-reference, must always add a reference before returning. (Alternately: the callee must create a reference to the returned object that the caller owns) A function that accepts a bonobo object as an in/out parameter must unreference the originally passed object once if the function wishes to change the value of the in/out parameter. (The function must ref() new objects returned via this in/out in accordance with [1]) An object passed into a function needs only be ref()'d if the ifunction wishes to retain a reference to the object beyond the scope of the function call. In addition, there's a consensus that interface designers should be advised against designing methods with in/out parameters. In/out parameters can obscure the lifetime of the passed argument to casual code observers, and thus may cause hidden side-effects. CORBA Ref-counting Since the ORB also maintains reference counts per interface handle, should you be returning a reference to an object it is imperative to Bonobo_Unknown_ref (corba_object, ev); return CORBA_Object_duplicate (corba_object, ev); To assist with this there are two functions: Bonobo_Unknown bonobo_object_dup_ref (Bonobo_Unknown object, CORBA_Environment *ev); void bonobo_object_release_unref (Bonobo_Unknown object, CORBA_Environment *ev); So to return an Unknown from a impl you can simply: return bonobo_object_dup_ref (corba_object, ev); there is a caveat with this approach which is this: If you construct a BonoboObject in an impl_ whose reference you wish to hand back to the caller then the situation is slightly different. In this case you have an object with the following: Bonobo_Unknown: ref 1 BonoboObject: ref 1 You want to hand a CORBA reference to this object to the client, without incrementing the BonoboObject reference. To do this you must do: return CORBA_Object_duplicate (BONOBO_OBJREF (myobject)); The mirror of this is that if you want to hand a ref to an impl you will need to CORBA_Object_duplicate the value before inserting it into a BonoboObjectClient. Ref counting and one-way methods While the ORB has built in support for correct referencing on 1 way methods, the Bonobo reference count does not; hence if you wish to hand a bonobo reference to several listeners you need to do something like: ref = Bonobo_Unknown_ref (BONOBO_OBJREF (obj), ev); Bonobo_Sample_executeOnewayMethod (foo, ref, ev); And at the other end in executeOnewayMethod the reference needs to be released. libbonobo-2.32.1/doc/NAMESPACE0000644000076400007640000000530311173072711012462 00000000000000 See bonobo/doc/FAQ for more details on how to name components. Based on the assumption that the OMG will allow us to register the GNOME/ and Bonobo/ toplevel namespaces; the following spaces have been registered to the following projects, and are controlled by the following people [ subject to any pending complaints ]: * GNOME/ michael@helixcode.com, jirka@5z.com subdomains: AbiWord abiword msevior@mccubbin.ph.unimelb.edu.au Achtung/ achtung mkestner@ameritech.net Chord/ gnome-chord rob@pangolin.org.uk CoGnomen/ CoGnomen merchan@baton.phys.lsu.edu Config/ GConf hp@redhat.com ControlCenter/ control-center ? Crescendo/ creschendo will@lashell.net DB/ Gnome-db rodrigo@gnome-db.org Database/ libgda rodrigo@gnome-db.org Development/ gnome-debug, jpr@helixcode.com, dave@helixcode.com DevHelp/ DevHelp micke@codefactory.se Dia/ Dia james@daa.com.au EOG/ EOG federico@helixcode.com Elysium/ Elysium dobey@free.fr Encompass/ Encompass dobey@free.fr Evolution/ Evolution ettore@helixcode.com FileSelector/ file-sel jacob@ximian.com GDA/ libgda rodrigo@gnome-db.org GGV/ ggv jaka@gnu.org Galeon/ galeon marco@it.gnome.org Gnumeric/ Gnumeric jgoldberg@home.com Grapevine/ grapevine jirka@5z.com GtkHTML/ GtkHTML rodo@helixcode.com Guppi/ guppi3 trow@gnu.org Magnifier/ gnome-mag bill.haneman@sun.com Media/ gnome-media peter@ximian.com MrProject/ mrproject richard.hult@codefactory.se Nautilus/ Nautilus darin@eazel.com Pilot/ gnome-pilot eskil@eazel.com PonG/ pong jirka@5z.com Print/ gnome-print chema@celorio.com SodiPodi/ sodipodi lauris@helixcode.com Spell/ gtkhtml rodo@helixcode.com Terminal/ gnome-core jirka@5z.com, jacob@helixcode.com VCS/ gnome-vcs snaggen@acc.umu.se VFS/ gnome-vfs pavel@eazel.com Vertigo/ Panel 2.0 jirka@5z.com, jacob@helixcode.com Yelp/ Yelp micke@codefactory.se standard interfaces: HTMLEditor gtkhtml Panel gnome-core Panel2 (in 1.4) gnome-core PanelSpot gnome-core Applet gnome-core StatusSpot gnome-core deprecated interfaces: Unknown gnome-libs Table gnome-libs GenericFactory gnome-libs * Misc. Namespacing errors - non-deprecated. Desktop/ TextViewerFactory gnome-libs TextViewer gnome-libs Editor gnome-libs help_browser/ simple_browser gnome-core [ reserved for component infastructure ] * Bonobo/ miguel@helixcode.com, michael@helixcode.com Moniker/ MonikerExtender/ Sample/ Audio Calculator CanvasItem sample-canvas-item Clock Echo bonobo-echo Mines bonobo-mines Hello bonobo-hello Paint paint-component-simple Text bonobo-text-plain [ reserved for accessibility ] * Accessibility/ bill.haneman@sun.com libbonobo-2.32.1/doc/activation-api/0000775000076400007640000000000011546334245014243 500000000000000libbonobo-2.32.1/doc/activation-api/bonobo-activation.types0000644000076400007640000000000011546334245020652 00000000000000libbonobo-2.32.1/doc/activation-api/server-xml-reference.sgml0000644000076400007640000003721111173072711021102 00000000000000 <filename>.server</filename> file format reference This section describes the format of the .server files used by applications to tell the Bonobo Activation daemon about the interfaces they support. The <sgmltag>oaf_server</sgmltag> tag Here follows a simple example of a minimalist .server file. <oaf_info> <oaf_server iid="OAFIID:Bonobo_CosNaming_NamingContext" type="exe" location="/usr/lib/bonobo-activation/bonobo-activation-server"> </oaf_server> </oaf_info> Each oaf_server entry conventionally has three mandatory properties: iid (the FAQ of the Bonobo API reference manual explains how to create an iid), type (can be exe, factory, or shlib) and location. If the type is exe, location is the name of the executable which creates the CORBA interfaces associated to this entry and registers them to Bonobo Activation. If the type is factory, location is the iid of the component which can create the corresponding CORBA server. If the type is shlib, location is the name of the library the code is in: libgmf for example. Portability Note Don't include the .so suffix common on Linux systems in the location of a shlib component. Here follows a simple example of a component activated through a factory: <oaf_info> <oaf_server iid="OAFIID:Bonobo_Sample_Echo_Factory" type="exe" location="/usr/lib/bonobo-2.0/samples/bonobo-echo-2"> </oaf_server> <oaf_server iid="OAFIID:Bonobo_Sample_Echo" type="factory" location="OAFIID:Bonobo_Sample_Echo_Factory"> </oaf_server> </oaf_info> If you ask Bonobo Activation to activate the OAFIID:Bonobo_Sample_Echo component, Bonobo Activation will first check if it is a factory, make sure the corresponding factory compoenent is running (by activating it. Here, activating the factory component is a matter of launching the executable) and call create on the factory. It will return you that object. The <sgmltag>oaf_attribute</sgmltag> tag Defining servers is useful (that is what .goad files did light-years ago) but to use all the power of Bonobo Activation (i.e. queries ;-), you have to define oaf_attributes for each of those oaf_server entries. An example is worth all words. <oaf_info> <oaf_server iid="OAFIID:Bonobo_Sample_Echo_Factory" type="exe" location="/usr/lib/bonobo-2.0/samples/bonobo-echo-2"> <oaf_attribute name="repo_ids" type="stringv"> <item value="IDL:Bonobo/GenericFactory:1.0"/> </oaf_attribute> <oaf_attribute name="name" type="string" value="Echo component factory"/> <oaf_attribute name="description" type="string" value="Bonobo Echo server factory"/> </oaf_server> <oaf_server iid="OAFIID:Bonobo_Sample_Echo" type="factory" location="OAFIID:Bonobo_Sample_Echo_Factory"> <oaf_attribute name="repo_ids" type="stringv"> <item value="IDL:Demo/Echo:1.0"/> </oaf_attribute> <oaf_attribute name="name" type="string" value="Echo component"/> <oaf_attribute name="description" type="string" value="Bonobo Echo server sample program"/> </oaf_server> </oaf_info> Each oaf_server entry defines a set of attributes. Each attribute has a given name, type, and value. The types of the attributes are those defined in the Bonobo Activation query langage reference (). Type name should be non-caps. Values of type stringv are represented as follows: <oaf_attribute name="repo_ids" type="stringv"> <item value="IDL:Bonobo/Unknown:1.0"/> <item value="IDL:Bonobo/Control:1.0"/> </oaf_attribute> All other types' values are simply in the value field. A certain number of attributes have been normalized for GNOME. If a component uses any attribute from the list, it ought to have the meaning described here. Their list follows. Normalized attributes Attribute name Type Signification repo_ids stringv the list of all IDL interfaces this component implements, including inherited interfaces. If Bonobo::Unknown is one of the interfaces, the list should include all interfaces for which a queryInterface operation on the component will succeed. description string a human readable string describing what the component can do name string a short name for the component, suitable for display to the end user, e.g. in a menu. bonobo:editable boolean if the component allows editing of its content no bonobo:supported_uri_schemes stringv a list of protocols this component knows how to handle. This only really makes sense if the component implements one of the following interfaces: Bonobo::PersistFile or Nautilus::View bonobo:supported_mime_types stringv a list of MIME types this component understands as input. In addition to specific MIME types, it is possible to include supertypes (e.g. image/* or text/*) or */* to indicate the component can display any MIME type. Specifying */* is only necessary if neither supported_uri_schemes nor additional_uri_schemes is not specified, otherwise */* is assumed. This only really makes sense if the component implements one of the following interfaces: Bonobo::PersistStream, Bonobo::PersistFile, or Nautilus::View. bonobo:additional_uri_schemes stringv a list of protocols this component knows how to handle. The component is applicable to any URI which uses such a protocol, even if its MIME type is not among supported_mime_types. This only really makes sense if the component implements one of the following interfaces: Bonobo::PersistFile or Nautilus::View bonobo:moniker stringv FIXME bonobo:moniker_extender stringv FIXME bonobo:environment stringv List of environment variables that must have the same values in both activator (client) and component. This is useful for exe type factories. If there is already a running process serving the component being activated, its environment variables are compared to the ones in the activator. If they match, a new reference from that process is returned. If not, a new process is started, which receives an evironment modified to match the one in the activator for the environment keys specified in this property. nautilus:view_as_name string a suitable name for use as a View as name. Several labels in Nautilus will be built from this value, see the following attributes. This must be present for any Bonobo Controls that can be used as Nautilus views. nautilus:view_as_label string a label (without keyboard mnemonic) for the component's menu item in Nautilus' View as list (next to the zoom control) as well as for its entry in the Open with Other Viewer window. It defaults to View as name where name is the value of the view_as_name attribute. It is discouraged to rely on this fallback because it makes correct translation impossible for some languages. nautilus:view_as_label_with_mnemonic string a label (with keyboard mnemonic) for the component's menu item in Nautilus' View menu. Thus the mnemonic must not clash with one from a built-in menu item. If omitted, the value of view_as_label will be used instead. nautilus:viewer_label string a label for the component's menu item in the Open With submenu of Nautilus' context menu for files and the File menu. It defaults to name Viewer where name is the value of the view_as_name attribute. It is discouraged to rely on this fallback because it makes correct translation impossible for some languages. nautilus:required_directory_content_mime_types stringv if the component is to be activated on a URI with MIME type special/directory, it is only really applicable if the directory contains a file with one of the MIME types listed in this attribute. As before, supertypes like audio/* are allowed. If this attribute is omitted, */* is assumed. nautilus:sidebar_panel_name string a suitable name for use as a sidebar panel label name. This must be implemented by any Bonobo Controls that can be used as a Nautilus sidebar view. nautilus:context_menu_handler nautilus:can_handle_multiple_files nautilus:property_page_name nautilusverb:verbname
If bonobo:supported_uri_schemes or bonobo:additional_uri_schemes is specified but bonobo:supported_mime_types is not, it is assumed the component can handle any type of data that might come via that protocol. Some schemes may not even have an associated MIME type for any given URI, for instance irc: or news: If bonobo:supported_mime_types is specified but bonobo:supported_uri_schemes is not, the component is assumed to be able to handle all common URI schemes (possible definition: anything gnome-vfs can handle). If neither bonobo:supported_uri_schemes nor bonobo:additional_uri_schemes nor bonobo:supported_mime_types is specified, it is assumed the component cannot handle any data at all in a general way and should never be generically selected for such purposes. Nautilus considers a component as a view if it can handle the data from a URI and implements the Nautilus::View interface or Bonobo::Control and Bonobo::PersistStream or Bonobo::PersistFile.
libbonobo-2.32.1/doc/activation-api/Makefile.am0000644000076400007640000000334111173072711016207 00000000000000## Process this file with automake to create Makefile.in. AUTOMAKE_OPTIONS = 1.6 NULL= # The name of the module. DOC_MODULE=bonobo-activation # The top-level SGML file. DOC_MAIN_SGML_FILE=$(DOC_MODULE)-docs.sgml # The directory containing the source code. Relative to $(srcdir) DOC_SOURCE_DIR=$(top_srcdir)/bonobo-activation # Extra options to supply to gtkdoc-scan SCAN_OPTIONS=--deprecated-guards="BONOBO_DISABLE_DEPRECATED" # Extra options to supply to gtkdoc-mkdb MKDB_OPTIONS=--sgml-mode --output-format=xml # Extra options to supply to gtkdoc-fixref FIXXREF_OPTIONS= # Used for dependencies HFILE_GLOB=$(top_srcdir)/bonobo-activation/*.h CFILE_GLOB=$(top_srcdir)/bonobo-activation/*.c # Headers to ignore IGNORE_HFILES= \ Bonobo_ObjectDirectory.h \ Bonobo_ActivationContext.h \ bonobo-activation-i18n.h \ bonobo-activation-private.h \ bonobo-activation-base-service.h \ bonobo-activation-activate-private.h # Extra files to add when scanning EXTRA_HFILES= # Images to copy into HTML directory HTML_IMAGES = \ bonobo-activation.png \ $(NULL) # Non-autogenerated SGML files to be included in $(DOC_MAIN_SGML_FILE) content_files = \ tutorial.sgml \ migrating.sgml \ server-xml-reference.sgml \ configuring.sgml \ query-langage.sgml \ architecture.sgml \ lgpl.sgml \ $(NULL) ## extra dist stuff extra_files = # CFLAGS and LDFLAGS for compiling scan program. Only needed # if $(DOC_MODULE).types is non-empty. GTKDOC_CFLAGS = GTKDOC_LIBS = # If you need to override some of the declarations, place them in the # $(DOC_MODULE)-overrides.txt file and uncomment the second line here. DOC_OVERRIDES = #DOC_OVERRIDES = $(DOC_MODULE)-overrides.txt # include common portion ... include $(top_srcdir)/gtk-doc.make libbonobo-2.32.1/doc/activation-api/tutorial.sgml0000644000076400007640000001302011173072711016675 00000000000000 Bonobo Activation tutorial What is Bonobo Activation ? Bonobo Activation (originally named OAF) was designed as a replacement for the limited libgnorba library used in older GNOME released. bonobo-activation is responsible on GNOME 2.x systems for the activation of CORBA objects. bonobo-activation allows you to browse the available CORBA servers on your system (running or not). It keeps track of the running servers so that if you ask for a server which is already running, you will not start it again but will reuse the already running one. The need for a replacement Gnorba works well in a limited number of cases and suffers of a number of design issues. More specifically: It cannot handle the non-local case gracefully. ie: you cannot start a remote CORBA server with bonobo-activation. It uses evil hacks to keep track of the system's CosNaming service making it unusable on systems where an X server is not running. (for details, read bonobo-activation code ;-) bonobo-activation allows you to only request specific servers by their name: you cannot ask for a server which provides a specific service. You have to ask for a server which you know provides a specific service. Bonobo Activation was designed to address these issues. The remote issue is completely solved by the Bonobo Activation daemon (see ), the evil hacks regarding X are part of our past and the grand OAF query langage (see ) gives you the ability to perform arbitrary queries on the database of CORBA servers. Basically, Bonobo Activation keeps track of all the CORBA servers installed on your machine and can track any other machine's CORBA servers provided you set up Bonobo Activation correctly and allows you to perform queries on the properties of these servers. The following very simple example will make things rather clear: CORBA_Object o = bonobo_activation_activate ("repo_ids.has ('IDL:GNOME/Graph/Layout:1.0')", NULL, 0, NULL, &ev); This will ask for a component which supports the GNOME/Graph/Layout:1.0 interface. You can also do much more complicated things. Bonobo Activation will find one whcih matches the query and will take all the necessary measures required to get the server running (if it is a shared library progam, it will load the relevant library in memory. If you need a Factory, it will launch the factory and request the factory to create the relevant object). Getting started Here follows a very simple-stupid example of what you can do with Bonobo Activation. The complete API description of bonobo activation, the Bonobo Activation query langage reference and the .server file format reference are included in this document and are recommended readings. Reading is also a good idea. Checklist If you plan to use Bonobo Activation for your own CORBA servers, you should use the following simple checklist. Create a unique UUID for your CORBA server by using libuuid and uuidgen (both are available by anonymous ftp from tsx-11.mit.edu in /pub/linux/packages/ext2fs. These are part of the e2fsprogs package. Create a proper .server file for your server describing its IDL interfaces, its main properties and the way it is to be activated. Call bonobo_activation_init (make sure you do not initialize twice by calling bonobo_activation_is_initialized). Then, call bonobo_activation_active_server_register to register yourself as running to the Bonobo Activation daemon. If you are a client willing to activate a few servers, it is a little simpler: you just must make sure you call the bonobo_activation_init function and you can then call bonobo_activation_query or bonobo_activation_activate or bonobo_activation_activate_from_id. Here, put a real-life example of a client and a server. The non-local case Here, present how to use setup the system for the non-local case. If anyone is willing to write this part, mail gnome-components-list@gnome.org. in the meantime, you can have a look at the code in gnome-libs HEAD from cvs. (I never had time to go look at it) libbonobo-2.32.1/doc/activation-api/bonobo-activation.png0000644000076400007640000004233011173072711020277 00000000000000PNG  IHDR#sBITO IDATx%W]8.e)RZ4@_DI0'Dѕ Uh OH0D55 nw{w8sǹ3sz;3ǽsΜn١p 70u"]|ylȍSΟ??ub8q(EڴRi"Hil6c=n@L n{k+읕kcWm %ŌJvtM ڦ@ҢվޫjO\S]ՖS[9hUX[c kvX`ijѣ%6a&U-5)jlݪiC-0O2-X7RnQ}3sI:!56` f'Dktn穟j*F٩=T#09㴀,XsHByKi}ICQc Ck4ycQ5{kN@顼9 #6UӦt3$@L3oyI*07ڴ`uJn2M=~USRCS0C2-Gs+䋊w,f8QxȎ\#ٺIQu[KXc«f8ْɴjNג-j "aV;;V1[5Щƙ:KnjOZ󉦢z00MፘiHEL @*2-TdZ,.\kv>GNirPmZN{cĉ)2mZȴRi"fS=ɸ=j:)k4!GX?vl=GlV=jUIMxFbG{p|Lb"C⋖5irum|"_ 2zq8qbגijvG(?J>\5CS[sVؽ5|Qm\ZZBk[Jea1;(ZrL=oIm+t: jmUt9c"fZ/9|M ls$zְ@SyiIaq9|z|;]G֞isĥnڼ)zK^aK}Rꇭ>V=*Y=mNg!k]*p GcdHVC ytڣˮ*\rטK.KLed{~> ]#2ʁn)?U{npɣ;zTac.}ԋմmc5cմG`o_CJN -ymWlvY˥s^utmZM_CNĸr5Q\GCA^t{J>? Z⋚%:4 .p ~aѻvW\!y`æhuҢ3pѨ$4PJ5fu3f"c=Me֮ٯ &:T+BzcdXkM!e y3VS[ )> Ml[=˗/&=Z1D} K<:~|U` ZRɪbLk]:;0Mar-pW]pɋkp`Ulzz4`\i?{][zQ CZ\Zo=ozc:ֲ.lk#lx`nF:~~$,ŁgZT Gi4 IjiUd틸\jiiPiu|EV=퉛ga~a1?0s;Z]zXwomzl=, ۵ѵ?+сu\%[KVB`ϦB_-/QJ1f67NަpzK*<87fw.V;Uj7,^՗ _R|3X #;6pi@GaD{…nԩSϟ:f!ѽEpx'N8::|#7BM,n3*N̄LkEyIz % ( .ÿ4kvLQBZ%F5dcnKsضK+Ԇi@cZo:;/~ꆁ9軖vhULeVWJ|mw?뗾wԖ(5![ՍU)m!-1m[ qovBdTG#rHU9j:k\uT|DrcnMjKG5dE:6t6ƐcW?bQ8c2bc smZM7Q lj6tDnJ]S3j*UKtVR;Rѐt6UuY`@Ǫ8Go[~UU4%UKYtK6}#* Zoml% JQ1% o`!QYujFq+ܶk #+ Xuᴌ 5hM+6ڧ!ֵ;>} tNɴ}އpϛC fZ.\0idY^1:*\r]w]oR`N8qtttGӦL @*2-TdZȴRi"HEL @*2-TdZȴRi"HEL @*2-TO &˲v;u ve3X'el6 0OzRѦe׺v5ul[<ŝ=:"*{̓L J)U3<(Rm/%eȬ(PiעL+RHz *%4yNYri<,Zlɴ`]ҍj] 8`2-Xti ʳ"gj(m⥛ZC`AiAiJJRj-=X<~OƗ,FvyuDymJZr?JHJ3L\zu5i\txQEKu̙CXc<L ɓO?QRi"HEd)Ei"HEtҥCL @*2-X'Ol6F@+@*2-TdZ$C3'HEL P"ɴRi"ӂe@-@*2-TdZȴRi2lL @*2-X^B]s&HEL W`dZȴRi\xqC;>u,ޅ >NŊ\reٳgd~']zQtbzo֩'?ɩӉ'._|ȍPڴǩS뮩0}[W:u}ȴǙ3gީ0w}2-`HEL طfSzlNT~JA^f-ͼfMd6#%2-n{_r5őؓFeS'e3,6-!< 'ЬU 6} i"^iZ~VQAk~1P#jMmYNJ+4m5nʮRH)nSp`dZZ}7>3hm}QB l\cFi/RiQfj~KF<:ɴ8ՎZDV͏\=dz6Ӕ,(M#l7jibRKS9GzT=mfϡX%`M=iцZj'> &X¸VvS: UѦ[w˯md!P{`:m O;'̥Ѧ^g.m]:GTӌMbމ+^P mZB`io1ԁS fc葴XeL|- iHEK ]6-4 `2-o9s\߁Klm6<J>,?~m]O> /p뭷;v3g+zfaKC g>s?c?vM7oKz긺UL #:ܽԁ87H.aoOӧ|n!˲gy[nz??{07za>Om4+˲3gμ=9::g>3ml4i2z w=Į Z=3O,_~ɓ=7|G}[o-m{𳁞CX]>be^߹z_*ku N2-XۿͲ}{_u ̍L mo{[e\]{ss#ӂ͡{+WvF02-Xwyk_z|+O>_S@L رcʄS?0fye׿KKz룏>zر,._|-<s?sS`fy{~?c_WwO?7Y0[2-Xf|$;әC%{y7tc=vttt7?쳏a!g L&R1]8d]kM~>!4=32-Dk^ii)!k*hb>O IDATMeΝ;җt(믿xQt{MY;~>ѿ HA3k:}??u,tmZF"HEL @*2-TdZȴRszvWW#Ț~jٳS8y?ᩣe9⏎N81ViO0GKfs=V?]x: `o:~˗*`zꕯ|6-=X@*2-Tτ6M8|T~qɴGmֲٌpi#0L@Ԧ7%[{N/ag/\uZ_Mt$`hZbVoR(-_ODFbH)8`ڴ/<(ЬU'Z…VS4@-NP5q8<2U^r1 Vhj܆]^IC9hX'z Ako:Zk%V5 L,tJRUMiT ఍9"^Gv"BslHց}AyÂBaayR5ͤ <ף!9IWs0fTZObiډj7VӸV;i:Ŗꢦkfj'YuiCm*6y8uQw+;O`zl><ԮG5~ ڴJ{Xz$m:V6-TiQXbƄp`iIC!r9+$ӢF1f=_r t,.]4u ~^xԩSc0fsթĉGGG/_>~|1;vXeF,`/'O:`ul::::qu]wtt4V=S|+oSQ6-<"HE6פ(y2iK)9VTkM?k j)rQ:JoE;UmZV|i[tK6ӻ@̵+hG#vmjoiiV3觠ęVzKy@ni!%'my*ܴh>G#TK lSu|jg3 6*Úr :R|pTKnyi+yj3nh`Di3v $l`y#6Dc.QY1yX3ie͹E[[ȮZ˙X TM9V)_E1dE9ۃ#XeZ~nϓGr{ʴ+45]vjJ%j)1'X߮{T|>;gZ{~fGq@Q)*XՒVʷJogAHioFOWӎ\dH0/.anQ,f+]v6jJ`R˓#XxXiPMfxM#馛nF"[2*V5^j7d:ZH)!( nX*9_Z;zT`6^~":F*&ZzzbxR߁/ol]Wم6́-mZnKqHHaC@)=HEʔV+~Y~DfVkeʞ2YM^4ΐIæY.-O6Rmx;b04r#)ϴleYĜPV,Wj7<,QLEūiG8cOr01h`<=Qʹ-%gBVE4,1f{J%Ę;si:hg\`{jӪmɟ+1>״U^QZ+t:i&42fY/uZ ?غNLHaLBh#! Y&4"HeDÃFyTx&nn)2˜gQ˱`n2gӵ\/4zEN|߮17pwSɧ4۬3o_6S[~g EOz[J?ӻ^XVƕ}j7yFuPM;u0G@:nꤵS,rA ڎdZUܫYkm:eޱrnZ&"M;c#~jxsɸSot4 <ߣ chfduQqKcȚ&δZoVs!%5i#8\1Gh2Ci"HeqZAb Y]ti@3ӺrJeG,`?!3fuر,6=3bŋ'ON:gZǎ'>1b=SӧX#Rir~/&:%d7L^m''pk_"ROΐq8C$W]U@}"O3 0{ʴ|V 9Az~f1~Lܦv7ezUއ:[.漄RQu9Po⯜!۶jCc).4]{ïR-Պjw*.P[(G`gZ\a8q [6lXZwtԸR{sop16y 6j״Sѐo=K;"~sMmuY_nI#Vs9@%kc mӪm(t뵩kT%;d 5eaxHTFK?ސc8\q* `Z3Ovo` /jR4М&CގsoSrm^uZht0=lMhZcy_LbSѠeLkiJ E,6-TdZȴRYp&Ez/Ven Ŏ^&N{ʴ+4̥yk_爏,iRW[xuٶZ'cLHU_~c'> o[}2FV1etHȌM0PL+mZ}=,äv6ʷ!fiTbZriD|Sa1)5'Lʵ#-VSCμا)=)GW_־i@ש&3=<"Vg\JɴRsV>rٳ# 0??uJ?"իF/`qFnӺ{F,5;::?~wO /}!3fuر{wYsw}'OtQ\F"HEL @*2-TdZȴRi"HEL @*2-TdZȴRi"HCm6,˶ԁۅ8BtdZx6ffH5{6-ؓ]NWmqw>l4_!f2-ؓRg6yQ;+&ۆ_J,[YQҮE$B)#19YdɥukVju+'ӂH7wr&dZ0 T<{0|y/^9 %:(iT||z1%T TZ*SKS̝2SΝ{K_z~X@$mZϬ}3: hdh;N- hb}CSG5itS})Ĉxu @*2-4tMdZdT@W2-TdZ#ԒiDK=ȴRiD OOjRL @*2-XM]&2-TdZh:i "dZȴшēi'dZ:`֞y/~SG1;z׻կfYv};   xwN}ѩuѦ9s{:y}3gμ=vl10nƩCѦOOoOvdYl11dZ?яfYرc_җ{G˱_/ЉL ?//??7˲[o]zׅ /L`0s2-X|,u ߳AK̙gXozӛz/}K6,˾zǎw{̙>}BڴQ~gwy[nի=M74Ux}oo9s|M0k2-v~+^s},-|gY S̚L _~0z7M???Ehɴ4|/PbD<@+WzO>뿾oݽ /|>?|wL!0Cڴ\wuЇ7k}_~gIZ2-Xyb{ի{|k__s|ϟַ׾v9ҦرcGkMY7sܹw,L ]G?W:Z=`q?/|#w[ne글Ҧf5bŋ]ȴ,{=կ~O"%"9PAkٶw)`2%zР ڴF+iNGy`dZL#.H&%{L vٶ<؀#b2{af{\S(gu77۳̙LM.f5n:,!I[/ui ALP[xڗUO8n>G~8`2-޶K?/yQ ς-m›~Qe8$OJ sX89j C+3(k=nímZlJ,8,?] iӢbBLgݻk`퇤ƧB2-R>#BRZsCdViV)Q]cS-ey<i1 ,o  *nU!>pވ ZY ᘳjH% pTdZ$TQW\z{ ?LNj)brÎqYS/@$ȴRib\pٳSGsON0;2-~}l(`h٣GiLPIENDB`libbonobo-2.32.1/doc/activation-api/bonobo-activation-sections.txt0000644000076400007640000010701511546334245022170 00000000000000bonobo-activation/bonobo-activation.h
utilities Utilities Bonobo_ActivationPropertyType bonobo_server_info_prop_find bonobo_activation_info_stringify bonobo_activation_servinfo_to_actinfo bonobo_activation_id_parse bonobo_activation_info_new bonobo_activation_info_free bonobo_server_info_prop_lookup Bonobo_ServerInfoList bonobo_activation_get_default_component_for_mime_type bonobo_activation_get_all_components_for_mime_type Bonobo_ActivationProperty__alloc Bonobo_ActivationProperty__freekids Bonobo_ActivationProperty_copy Bonobo_ActivationPropertyValue__alloc Bonobo_ActivationPropertyValue__freekids Bonobo_ActivationPropertyValue_copy Bonobo_ServerInfoList__freekids Bonobo_ServerInfoList__alloc Bonobo_ServerInfoList_allocbuf Bonobo_ServerInfoList_demarshal Bonobo_ServerInfoList_duplicate Bonobo_ServerInfoList_marshal
query Query and Activation Bonobo_ImplementationID Bonobo_ActivationID Bonobo_ActivationFlags Bonobo_ActivationResultType bonobo_activation_query bonobo_activation_activate bonobo_activation_activate_from_id BonoboActivationCallback bonobo_activation_activate_async bonobo_activation_activate_from_id_async bonobo_activation_set_activation_env_value Bonobo_ACTIVATION_FLAG_PRIVATE Bonobo_ACTIVATION_FLAG_NO_LOCAL Bonobo_ACTIVATION_FLAG_EXISTING_ONLY Bonobo_Activation_NotListed__alloc Bonobo_Activation_NotListed__freekids Bonobo_Activation_ParseFailed__alloc Bonobo_Activation_ParseFailed__freekids Bonobo_Activation_IncompleteContext__freekids Bonobo_Activation_IncompleteContext__alloc Bonobo_ActivationResult__alloc Bonobo_ActivationResultData__alloc Bonobo_ActivationResultData__freekids Bonobo_ActivationResult__freekids Bonobo_ActivationEnvironment__alloc Bonobo_ActivationEnvironment_allocbuf Bonobo_ActivationEnvironment_demarshal Bonobo_ActivationEnvironment__freekids Bonobo_ActivationEnvironment_marshal Bonobo_ActivationEnvValue__alloc Bonobo_ActivationEnvValue__freekids Bonobo_Activation_AlreadyListed__alloc Bonobo_Activation_AlreadyListed__freekids Bonobo_ActivationFlags__alloc Bonobo_ActivationFlags_demarshal Bonobo_ActivationFlags__freekids Bonobo_ActivationFlags_marshal Bonobo_ActivationID__alloc Bonobo_ActivationID_demarshal Bonobo_ActivationID__freekids Bonobo_ActivationID_marshal Bonobo_ServerInfo__alloc Bonobo_ServerInfo_duplicate Bonobo_ServerInfo_copy Bonobo_ServerInfo__freekids Bonobo_StringList Bonobo_StringList__alloc Bonobo_StringList_allocbuf Bonobo_StringList_demarshal Bonobo_StringList__freekids Bonobo_StringList_marshal Bonobo_Unknown Bonobo_Unknown__classid Bonobo_Unknown__freekids Bonobo_Unknown_IMETHODS_LEN Bonobo_Unknown_queryInterface Bonobo_Unknown_ref Bonobo_Unknown_unref Bonobo_GeneralError__alloc Bonobo_GeneralError__freekids Bonobo_GenericFactory Bonobo_GenericFactory_CannotActivate__alloc Bonobo_GenericFactory_CannotActivate__freekids Bonobo_GenericFactory__classid Bonobo_GenericFactory_createObject Bonobo_GenericFactory__freekids Bonobo_GenericFactory_IMETHODS_LEN Bonobo_GenericFactory_queryInterface Bonobo_GenericFactory_ref Bonobo_GenericFactory_unref Bonobo_ImplementationID__alloc Bonobo_ImplementationID_demarshal Bonobo_ImplementationID__freekids Bonobo_ImplementationID_marshal CORBA_sequence_Bonobo_ActivationEnvValue__alloc CORBA_sequence_Bonobo_ActivationEnvValue_allocbuf CORBA_sequence_Bonobo_ActivationEnvValue__freekids CORBA_sequence_Bonobo_ActivationProperty__alloc CORBA_sequence_Bonobo_ActivationProperty_allocbuf CORBA_sequence_Bonobo_ActivationProperty_copy CORBA_sequence_Bonobo_ActivationProperty__freekids CORBA_sequence_Bonobo_ServerInfo__alloc CORBA_sequence_Bonobo_ServerInfo_allocbuf CORBA_sequence_Bonobo_ServerInfo__freekids CORBA_sequence_CORBA_string__alloc CORBA_sequence_CORBA_string_allocbuf CORBA_sequence_CORBA_string__freekids ex_Bonobo_Activation_AlreadyListed ex_Bonobo_Activation_IncompleteContext ex_Bonobo_Activation_NotListed ex_Bonobo_Activation_ParseFailed ex_Bonobo_GeneralError ex_Bonobo_GenericFactory_CannotActivate ORBIT_DECL_Bonobo_GenericFactory ORBIT_DECL_Bonobo_Unknown ORBIT_DECL_CORBA_sequence_Bonobo_ActivationEnvValue ORBIT_DECL_CORBA_sequence_Bonobo_ActivationProperty ORBIT_DECL_CORBA_sequence_Bonobo_ServerInfo ORBIT_DECL_CORBA_sequence_CORBA_string ORBIT_IDL_SERIAL ORBIT_IMPL_CORBA_sequence_Bonobo_ActivationEnvValue_0 ORBIT_IMPL_CORBA_sequence_Bonobo_ActivationEnvValue_1 ORBIT_IMPL_CORBA_sequence_Bonobo_ActivationEnvValue_10 ORBIT_IMPL_CORBA_sequence_Bonobo_ActivationEnvValue_11 ORBIT_IMPL_CORBA_sequence_Bonobo_ActivationEnvValue_12 ORBIT_IMPL_CORBA_sequence_Bonobo_ActivationEnvValue_13 ORBIT_IMPL_CORBA_sequence_Bonobo_ActivationEnvValue_14 ORBIT_IMPL_CORBA_sequence_Bonobo_ActivationEnvValue_15 ORBIT_IMPL_CORBA_sequence_Bonobo_ActivationEnvValue_16 ORBIT_IMPL_CORBA_sequence_Bonobo_ActivationEnvValue_17 ORBIT_IMPL_CORBA_sequence_Bonobo_ActivationEnvValue_18 ORBIT_IMPL_CORBA_sequence_Bonobo_ActivationEnvValue_19 ORBIT_IMPL_CORBA_sequence_Bonobo_ActivationEnvValue_2 ORBIT_IMPL_CORBA_sequence_Bonobo_ActivationEnvValue_20 ORBIT_IMPL_CORBA_sequence_Bonobo_ActivationEnvValue_21 ORBIT_IMPL_CORBA_sequence_Bonobo_ActivationEnvValue_22 ORBIT_IMPL_CORBA_sequence_Bonobo_ActivationEnvValue_3 ORBIT_IMPL_CORBA_sequence_Bonobo_ActivationEnvValue_4 ORBIT_IMPL_CORBA_sequence_Bonobo_ActivationEnvValue_5 ORBIT_IMPL_CORBA_sequence_Bonobo_ActivationEnvValue_6 ORBIT_IMPL_CORBA_sequence_Bonobo_ActivationEnvValue_7 ORBIT_IMPL_CORBA_sequence_Bonobo_ActivationEnvValue_8 ORBIT_IMPL_CORBA_sequence_Bonobo_ActivationEnvValue_9 ORBIT_IMPL_CORBA_sequence_Bonobo_ActivationProperty_0 ORBIT_IMPL_CORBA_sequence_Bonobo_ActivationProperty_1 ORBIT_IMPL_CORBA_sequence_Bonobo_ActivationProperty_10 ORBIT_IMPL_CORBA_sequence_Bonobo_ActivationProperty_11 ORBIT_IMPL_CORBA_sequence_Bonobo_ActivationProperty_12 ORBIT_IMPL_CORBA_sequence_Bonobo_ActivationProperty_13 ORBIT_IMPL_CORBA_sequence_Bonobo_ActivationProperty_14 ORBIT_IMPL_CORBA_sequence_Bonobo_ActivationProperty_15 ORBIT_IMPL_CORBA_sequence_Bonobo_ActivationProperty_16 ORBIT_IMPL_CORBA_sequence_Bonobo_ActivationProperty_17 ORBIT_IMPL_CORBA_sequence_Bonobo_ActivationProperty_18 ORBIT_IMPL_CORBA_sequence_Bonobo_ActivationProperty_19 ORBIT_IMPL_CORBA_sequence_Bonobo_ActivationProperty_2 ORBIT_IMPL_CORBA_sequence_Bonobo_ActivationProperty_20 ORBIT_IMPL_CORBA_sequence_Bonobo_ActivationProperty_21 ORBIT_IMPL_CORBA_sequence_Bonobo_ActivationProperty_22 ORBIT_IMPL_CORBA_sequence_Bonobo_ActivationProperty_3 ORBIT_IMPL_CORBA_sequence_Bonobo_ActivationProperty_4 ORBIT_IMPL_CORBA_sequence_Bonobo_ActivationProperty_5 ORBIT_IMPL_CORBA_sequence_Bonobo_ActivationProperty_6 ORBIT_IMPL_CORBA_sequence_Bonobo_ActivationProperty_7 ORBIT_IMPL_CORBA_sequence_Bonobo_ActivationProperty_8 ORBIT_IMPL_CORBA_sequence_Bonobo_ActivationProperty_9 ORBIT_IMPL_CORBA_sequence_Bonobo_ServerInfo_0 ORBIT_IMPL_CORBA_sequence_Bonobo_ServerInfo_1 ORBIT_IMPL_CORBA_sequence_Bonobo_ServerInfo_10 ORBIT_IMPL_CORBA_sequence_Bonobo_ServerInfo_11 ORBIT_IMPL_CORBA_sequence_Bonobo_ServerInfo_12 ORBIT_IMPL_CORBA_sequence_Bonobo_ServerInfo_13 ORBIT_IMPL_CORBA_sequence_Bonobo_ServerInfo_14 ORBIT_IMPL_CORBA_sequence_Bonobo_ServerInfo_15 ORBIT_IMPL_CORBA_sequence_Bonobo_ServerInfo_16 ORBIT_IMPL_CORBA_sequence_Bonobo_ServerInfo_17 ORBIT_IMPL_CORBA_sequence_Bonobo_ServerInfo_18 ORBIT_IMPL_CORBA_sequence_Bonobo_ServerInfo_19 ORBIT_IMPL_CORBA_sequence_Bonobo_ServerInfo_2 ORBIT_IMPL_CORBA_sequence_Bonobo_ServerInfo_20 ORBIT_IMPL_CORBA_sequence_Bonobo_ServerInfo_21 ORBIT_IMPL_CORBA_sequence_Bonobo_ServerInfo_22 ORBIT_IMPL_CORBA_sequence_Bonobo_ServerInfo_3 ORBIT_IMPL_CORBA_sequence_Bonobo_ServerInfo_4 ORBIT_IMPL_CORBA_sequence_Bonobo_ServerInfo_5 ORBIT_IMPL_CORBA_sequence_Bonobo_ServerInfo_6 ORBIT_IMPL_CORBA_sequence_Bonobo_ServerInfo_7 ORBIT_IMPL_CORBA_sequence_Bonobo_ServerInfo_8 ORBIT_IMPL_CORBA_sequence_Bonobo_ServerInfo_9 ORBIT_IMPL_CORBA_sequence_CORBA_string_0 ORBIT_IMPL_CORBA_sequence_CORBA_string_1 ORBIT_IMPL_CORBA_sequence_CORBA_string_10 ORBIT_IMPL_CORBA_sequence_CORBA_string_11 ORBIT_IMPL_CORBA_sequence_CORBA_string_12 ORBIT_IMPL_CORBA_sequence_CORBA_string_13 ORBIT_IMPL_CORBA_sequence_CORBA_string_14 ORBIT_IMPL_CORBA_sequence_CORBA_string_15 ORBIT_IMPL_CORBA_sequence_CORBA_string_16 ORBIT_IMPL_CORBA_sequence_CORBA_string_17 ORBIT_IMPL_CORBA_sequence_CORBA_string_18 ORBIT_IMPL_CORBA_sequence_CORBA_string_19 ORBIT_IMPL_CORBA_sequence_CORBA_string_2 ORBIT_IMPL_CORBA_sequence_CORBA_string_20 ORBIT_IMPL_CORBA_sequence_CORBA_string_21 ORBIT_IMPL_CORBA_sequence_CORBA_string_22 ORBIT_IMPL_CORBA_sequence_CORBA_string_3 ORBIT_IMPL_CORBA_sequence_CORBA_string_4 ORBIT_IMPL_CORBA_sequence_CORBA_string_5 ORBIT_IMPL_CORBA_sequence_CORBA_string_6 ORBIT_IMPL_CORBA_sequence_CORBA_string_7 ORBIT_IMPL_CORBA_sequence_CORBA_string_8 ORBIT_IMPL_CORBA_sequence_CORBA_string_9 POA_Bonobo_GenericFactory__fini POA_Bonobo_GenericFactory__init POA_Bonobo_Unknown__fini POA_Bonobo_Unknown__init TC_Bonobo_Activation_AlreadyListed TC_Bonobo_ActivationEnvironment TC_Bonobo_ActivationEnvValue TC_Bonobo_ActivationFlags TC_Bonobo_ActivationID TC_Bonobo_Activation_IncompleteContext TC_Bonobo_Activation_NotListed TC_Bonobo_Activation_ParseFailed TC_Bonobo_ActivationProperty TC_Bonobo_ActivationPropertyType TC_Bonobo_ActivationPropertyValue TC_Bonobo_ActivationResult TC_Bonobo_ActivationResultData TC_Bonobo_ActivationResultType TC_Bonobo_GeneralError TC_Bonobo_GenericFactory TC_Bonobo_GenericFactory_CannotActivate TC_Bonobo_ImplementationID TC_Bonobo_RegistrationResult TC_Bonobo_ServerInfo TC_Bonobo_ServerInfoList TC_Bonobo_StringList TC_Bonobo_Unknown TC_CORBA_sequence_Bonobo_ActivationEnvValue TC_CORBA_sequence_Bonobo_ActivationProperty TC_CORBA_sequence_Bonobo_ServerInfo TC_CORBA_sequence_CORBA_string TC_IMPL_TC_Bonobo_Activation_AlreadyListed_0 TC_IMPL_TC_Bonobo_Activation_AlreadyListed_1 TC_IMPL_TC_Bonobo_Activation_AlreadyListed_10 TC_IMPL_TC_Bonobo_Activation_AlreadyListed_11 TC_IMPL_TC_Bonobo_Activation_AlreadyListed_12 TC_IMPL_TC_Bonobo_Activation_AlreadyListed_13 TC_IMPL_TC_Bonobo_Activation_AlreadyListed_14 TC_IMPL_TC_Bonobo_Activation_AlreadyListed_15 TC_IMPL_TC_Bonobo_Activation_AlreadyListed_16 TC_IMPL_TC_Bonobo_Activation_AlreadyListed_17 TC_IMPL_TC_Bonobo_Activation_AlreadyListed_18 TC_IMPL_TC_Bonobo_Activation_AlreadyListed_19 TC_IMPL_TC_Bonobo_Activation_AlreadyListed_2 TC_IMPL_TC_Bonobo_Activation_AlreadyListed_20 TC_IMPL_TC_Bonobo_Activation_AlreadyListed_21 TC_IMPL_TC_Bonobo_Activation_AlreadyListed_22 TC_IMPL_TC_Bonobo_Activation_AlreadyListed_3 TC_IMPL_TC_Bonobo_Activation_AlreadyListed_4 TC_IMPL_TC_Bonobo_Activation_AlreadyListed_5 TC_IMPL_TC_Bonobo_Activation_AlreadyListed_6 TC_IMPL_TC_Bonobo_Activation_AlreadyListed_7 TC_IMPL_TC_Bonobo_Activation_AlreadyListed_8 TC_IMPL_TC_Bonobo_Activation_AlreadyListed_9 TC_IMPL_TC_Bonobo_ActivationEnvironment_0 TC_IMPL_TC_Bonobo_ActivationEnvironment_1 TC_IMPL_TC_Bonobo_ActivationEnvironment_10 TC_IMPL_TC_Bonobo_ActivationEnvironment_11 TC_IMPL_TC_Bonobo_ActivationEnvironment_12 TC_IMPL_TC_Bonobo_ActivationEnvironment_13 TC_IMPL_TC_Bonobo_ActivationEnvironment_14 TC_IMPL_TC_Bonobo_ActivationEnvironment_15 TC_IMPL_TC_Bonobo_ActivationEnvironment_16 TC_IMPL_TC_Bonobo_ActivationEnvironment_17 TC_IMPL_TC_Bonobo_ActivationEnvironment_18 TC_IMPL_TC_Bonobo_ActivationEnvironment_19 TC_IMPL_TC_Bonobo_ActivationEnvironment_2 TC_IMPL_TC_Bonobo_ActivationEnvironment_20 TC_IMPL_TC_Bonobo_ActivationEnvironment_21 TC_IMPL_TC_Bonobo_ActivationEnvironment_22 TC_IMPL_TC_Bonobo_ActivationEnvironment_3 TC_IMPL_TC_Bonobo_ActivationEnvironment_4 TC_IMPL_TC_Bonobo_ActivationEnvironment_5 TC_IMPL_TC_Bonobo_ActivationEnvironment_6 TC_IMPL_TC_Bonobo_ActivationEnvironment_7 TC_IMPL_TC_Bonobo_ActivationEnvironment_8 TC_IMPL_TC_Bonobo_ActivationEnvironment_9 TC_IMPL_TC_Bonobo_ActivationEnvValue_0 TC_IMPL_TC_Bonobo_ActivationEnvValue_1 TC_IMPL_TC_Bonobo_ActivationEnvValue_10 TC_IMPL_TC_Bonobo_ActivationEnvValue_11 TC_IMPL_TC_Bonobo_ActivationEnvValue_12 TC_IMPL_TC_Bonobo_ActivationEnvValue_13 TC_IMPL_TC_Bonobo_ActivationEnvValue_14 TC_IMPL_TC_Bonobo_ActivationEnvValue_15 TC_IMPL_TC_Bonobo_ActivationEnvValue_16 TC_IMPL_TC_Bonobo_ActivationEnvValue_17 TC_IMPL_TC_Bonobo_ActivationEnvValue_18 TC_IMPL_TC_Bonobo_ActivationEnvValue_19 TC_IMPL_TC_Bonobo_ActivationEnvValue_2 TC_IMPL_TC_Bonobo_ActivationEnvValue_20 TC_IMPL_TC_Bonobo_ActivationEnvValue_21 TC_IMPL_TC_Bonobo_ActivationEnvValue_22 TC_IMPL_TC_Bonobo_ActivationEnvValue_3 TC_IMPL_TC_Bonobo_ActivationEnvValue_4 TC_IMPL_TC_Bonobo_ActivationEnvValue_5 TC_IMPL_TC_Bonobo_ActivationEnvValue_6 TC_IMPL_TC_Bonobo_ActivationEnvValue_7 TC_IMPL_TC_Bonobo_ActivationEnvValue_8 TC_IMPL_TC_Bonobo_ActivationEnvValue_9 TC_IMPL_TC_Bonobo_ActivationFlags_0 TC_IMPL_TC_Bonobo_ActivationFlags_1 TC_IMPL_TC_Bonobo_ActivationFlags_10 TC_IMPL_TC_Bonobo_ActivationFlags_11 TC_IMPL_TC_Bonobo_ActivationFlags_12 TC_IMPL_TC_Bonobo_ActivationFlags_13 TC_IMPL_TC_Bonobo_ActivationFlags_14 TC_IMPL_TC_Bonobo_ActivationFlags_15 TC_IMPL_TC_Bonobo_ActivationFlags_16 TC_IMPL_TC_Bonobo_ActivationFlags_17 TC_IMPL_TC_Bonobo_ActivationFlags_18 TC_IMPL_TC_Bonobo_ActivationFlags_19 TC_IMPL_TC_Bonobo_ActivationFlags_2 TC_IMPL_TC_Bonobo_ActivationFlags_20 TC_IMPL_TC_Bonobo_ActivationFlags_21 TC_IMPL_TC_Bonobo_ActivationFlags_22 TC_IMPL_TC_Bonobo_ActivationFlags_3 TC_IMPL_TC_Bonobo_ActivationFlags_4 TC_IMPL_TC_Bonobo_ActivationFlags_5 TC_IMPL_TC_Bonobo_ActivationFlags_6 TC_IMPL_TC_Bonobo_ActivationFlags_7 TC_IMPL_TC_Bonobo_ActivationFlags_8 TC_IMPL_TC_Bonobo_ActivationFlags_9 TC_IMPL_TC_Bonobo_ActivationID_0 TC_IMPL_TC_Bonobo_ActivationID_1 TC_IMPL_TC_Bonobo_ActivationID_10 TC_IMPL_TC_Bonobo_ActivationID_11 TC_IMPL_TC_Bonobo_ActivationID_12 TC_IMPL_TC_Bonobo_ActivationID_13 TC_IMPL_TC_Bonobo_ActivationID_14 TC_IMPL_TC_Bonobo_ActivationID_15 TC_IMPL_TC_Bonobo_ActivationID_16 TC_IMPL_TC_Bonobo_ActivationID_17 TC_IMPL_TC_Bonobo_ActivationID_18 TC_IMPL_TC_Bonobo_ActivationID_19 TC_IMPL_TC_Bonobo_ActivationID_2 TC_IMPL_TC_Bonobo_ActivationID_20 TC_IMPL_TC_Bonobo_ActivationID_21 TC_IMPL_TC_Bonobo_ActivationID_22 TC_IMPL_TC_Bonobo_ActivationID_3 TC_IMPL_TC_Bonobo_ActivationID_4 TC_IMPL_TC_Bonobo_ActivationID_5 TC_IMPL_TC_Bonobo_ActivationID_6 TC_IMPL_TC_Bonobo_ActivationID_7 TC_IMPL_TC_Bonobo_ActivationID_8 TC_IMPL_TC_Bonobo_ActivationID_9 TC_IMPL_TC_Bonobo_Activation_IncompleteContext_0 TC_IMPL_TC_Bonobo_Activation_IncompleteContext_1 TC_IMPL_TC_Bonobo_Activation_IncompleteContext_10 TC_IMPL_TC_Bonobo_Activation_IncompleteContext_11 TC_IMPL_TC_Bonobo_Activation_IncompleteContext_12 TC_IMPL_TC_Bonobo_Activation_IncompleteContext_13 TC_IMPL_TC_Bonobo_Activation_IncompleteContext_14 TC_IMPL_TC_Bonobo_Activation_IncompleteContext_15 TC_IMPL_TC_Bonobo_Activation_IncompleteContext_16 TC_IMPL_TC_Bonobo_Activation_IncompleteContext_17 TC_IMPL_TC_Bonobo_Activation_IncompleteContext_18 TC_IMPL_TC_Bonobo_Activation_IncompleteContext_19 TC_IMPL_TC_Bonobo_Activation_IncompleteContext_2 TC_IMPL_TC_Bonobo_Activation_IncompleteContext_20 TC_IMPL_TC_Bonobo_Activation_IncompleteContext_21 TC_IMPL_TC_Bonobo_Activation_IncompleteContext_22 TC_IMPL_TC_Bonobo_Activation_IncompleteContext_3 TC_IMPL_TC_Bonobo_Activation_IncompleteContext_4 TC_IMPL_TC_Bonobo_Activation_IncompleteContext_5 TC_IMPL_TC_Bonobo_Activation_IncompleteContext_6 TC_IMPL_TC_Bonobo_Activation_IncompleteContext_7 TC_IMPL_TC_Bonobo_Activation_IncompleteContext_8 TC_IMPL_TC_Bonobo_Activation_IncompleteContext_9 TC_IMPL_TC_Bonobo_Activation_NotListed_0 TC_IMPL_TC_Bonobo_Activation_NotListed_1 TC_IMPL_TC_Bonobo_Activation_NotListed_10 TC_IMPL_TC_Bonobo_Activation_NotListed_11 TC_IMPL_TC_Bonobo_Activation_NotListed_12 TC_IMPL_TC_Bonobo_Activation_NotListed_13 TC_IMPL_TC_Bonobo_Activation_NotListed_14 TC_IMPL_TC_Bonobo_Activation_NotListed_15 TC_IMPL_TC_Bonobo_Activation_NotListed_16 TC_IMPL_TC_Bonobo_Activation_NotListed_17 TC_IMPL_TC_Bonobo_Activation_NotListed_18 TC_IMPL_TC_Bonobo_Activation_NotListed_19 TC_IMPL_TC_Bonobo_Activation_NotListed_2 TC_IMPL_TC_Bonobo_Activation_NotListed_20 TC_IMPL_TC_Bonobo_Activation_NotListed_21 TC_IMPL_TC_Bonobo_Activation_NotListed_22 TC_IMPL_TC_Bonobo_Activation_NotListed_3 TC_IMPL_TC_Bonobo_Activation_NotListed_4 TC_IMPL_TC_Bonobo_Activation_NotListed_5 TC_IMPL_TC_Bonobo_Activation_NotListed_6 TC_IMPL_TC_Bonobo_Activation_NotListed_7 TC_IMPL_TC_Bonobo_Activation_NotListed_8 TC_IMPL_TC_Bonobo_Activation_NotListed_9 TC_IMPL_TC_Bonobo_Activation_ParseFailed_0 TC_IMPL_TC_Bonobo_Activation_ParseFailed_1 TC_IMPL_TC_Bonobo_Activation_ParseFailed_10 TC_IMPL_TC_Bonobo_Activation_ParseFailed_11 TC_IMPL_TC_Bonobo_Activation_ParseFailed_12 TC_IMPL_TC_Bonobo_Activation_ParseFailed_13 TC_IMPL_TC_Bonobo_Activation_ParseFailed_14 TC_IMPL_TC_Bonobo_Activation_ParseFailed_15 TC_IMPL_TC_Bonobo_Activation_ParseFailed_16 TC_IMPL_TC_Bonobo_Activation_ParseFailed_17 TC_IMPL_TC_Bonobo_Activation_ParseFailed_18 TC_IMPL_TC_Bonobo_Activation_ParseFailed_19 TC_IMPL_TC_Bonobo_Activation_ParseFailed_2 TC_IMPL_TC_Bonobo_Activation_ParseFailed_20 TC_IMPL_TC_Bonobo_Activation_ParseFailed_21 TC_IMPL_TC_Bonobo_Activation_ParseFailed_22 TC_IMPL_TC_Bonobo_Activation_ParseFailed_3 TC_IMPL_TC_Bonobo_Activation_ParseFailed_4 TC_IMPL_TC_Bonobo_Activation_ParseFailed_5 TC_IMPL_TC_Bonobo_Activation_ParseFailed_6 TC_IMPL_TC_Bonobo_Activation_ParseFailed_7 TC_IMPL_TC_Bonobo_Activation_ParseFailed_8 TC_IMPL_TC_Bonobo_Activation_ParseFailed_9 TC_IMPL_TC_Bonobo_ActivationProperty_0 TC_IMPL_TC_Bonobo_ActivationProperty_1 TC_IMPL_TC_Bonobo_ActivationProperty_10 TC_IMPL_TC_Bonobo_ActivationProperty_11 TC_IMPL_TC_Bonobo_ActivationProperty_12 TC_IMPL_TC_Bonobo_ActivationProperty_13 TC_IMPL_TC_Bonobo_ActivationProperty_14 TC_IMPL_TC_Bonobo_ActivationProperty_15 TC_IMPL_TC_Bonobo_ActivationProperty_16 TC_IMPL_TC_Bonobo_ActivationProperty_17 TC_IMPL_TC_Bonobo_ActivationProperty_18 TC_IMPL_TC_Bonobo_ActivationProperty_19 TC_IMPL_TC_Bonobo_ActivationProperty_2 TC_IMPL_TC_Bonobo_ActivationProperty_20 TC_IMPL_TC_Bonobo_ActivationProperty_21 TC_IMPL_TC_Bonobo_ActivationProperty_22 TC_IMPL_TC_Bonobo_ActivationProperty_3 TC_IMPL_TC_Bonobo_ActivationProperty_4 TC_IMPL_TC_Bonobo_ActivationProperty_5 TC_IMPL_TC_Bonobo_ActivationProperty_6 TC_IMPL_TC_Bonobo_ActivationProperty_7 TC_IMPL_TC_Bonobo_ActivationProperty_8 TC_IMPL_TC_Bonobo_ActivationProperty_9 TC_IMPL_TC_Bonobo_ActivationPropertyType_0 TC_IMPL_TC_Bonobo_ActivationPropertyType_1 TC_IMPL_TC_Bonobo_ActivationPropertyType_10 TC_IMPL_TC_Bonobo_ActivationPropertyType_11 TC_IMPL_TC_Bonobo_ActivationPropertyType_12 TC_IMPL_TC_Bonobo_ActivationPropertyType_13 TC_IMPL_TC_Bonobo_ActivationPropertyType_14 TC_IMPL_TC_Bonobo_ActivationPropertyType_15 TC_IMPL_TC_Bonobo_ActivationPropertyType_16 TC_IMPL_TC_Bonobo_ActivationPropertyType_17 TC_IMPL_TC_Bonobo_ActivationPropertyType_18 TC_IMPL_TC_Bonobo_ActivationPropertyType_19 TC_IMPL_TC_Bonobo_ActivationPropertyType_2 TC_IMPL_TC_Bonobo_ActivationPropertyType_20 TC_IMPL_TC_Bonobo_ActivationPropertyType_21 TC_IMPL_TC_Bonobo_ActivationPropertyType_22 TC_IMPL_TC_Bonobo_ActivationPropertyType_3 TC_IMPL_TC_Bonobo_ActivationPropertyType_4 TC_IMPL_TC_Bonobo_ActivationPropertyType_5 TC_IMPL_TC_Bonobo_ActivationPropertyType_6 TC_IMPL_TC_Bonobo_ActivationPropertyType_7 TC_IMPL_TC_Bonobo_ActivationPropertyType_8 TC_IMPL_TC_Bonobo_ActivationPropertyType_9 TC_IMPL_TC_Bonobo_ActivationPropertyValue_0 TC_IMPL_TC_Bonobo_ActivationPropertyValue_1 TC_IMPL_TC_Bonobo_ActivationPropertyValue_10 TC_IMPL_TC_Bonobo_ActivationPropertyValue_11 TC_IMPL_TC_Bonobo_ActivationPropertyValue_12 TC_IMPL_TC_Bonobo_ActivationPropertyValue_13 TC_IMPL_TC_Bonobo_ActivationPropertyValue_14 TC_IMPL_TC_Bonobo_ActivationPropertyValue_15 TC_IMPL_TC_Bonobo_ActivationPropertyValue_16 TC_IMPL_TC_Bonobo_ActivationPropertyValue_17 TC_IMPL_TC_Bonobo_ActivationPropertyValue_18 TC_IMPL_TC_Bonobo_ActivationPropertyValue_19 TC_IMPL_TC_Bonobo_ActivationPropertyValue_2 TC_IMPL_TC_Bonobo_ActivationPropertyValue_20 TC_IMPL_TC_Bonobo_ActivationPropertyValue_21 TC_IMPL_TC_Bonobo_ActivationPropertyValue_22 TC_IMPL_TC_Bonobo_ActivationPropertyValue_3 TC_IMPL_TC_Bonobo_ActivationPropertyValue_4 TC_IMPL_TC_Bonobo_ActivationPropertyValue_5 TC_IMPL_TC_Bonobo_ActivationPropertyValue_6 TC_IMPL_TC_Bonobo_ActivationPropertyValue_7 TC_IMPL_TC_Bonobo_ActivationPropertyValue_8 TC_IMPL_TC_Bonobo_ActivationPropertyValue_9 TC_IMPL_TC_Bonobo_ActivationResult_0 TC_IMPL_TC_Bonobo_ActivationResult_1 TC_IMPL_TC_Bonobo_ActivationResult_10 TC_IMPL_TC_Bonobo_ActivationResult_11 TC_IMPL_TC_Bonobo_ActivationResult_12 TC_IMPL_TC_Bonobo_ActivationResult_13 TC_IMPL_TC_Bonobo_ActivationResult_14 TC_IMPL_TC_Bonobo_ActivationResult_15 TC_IMPL_TC_Bonobo_ActivationResult_16 TC_IMPL_TC_Bonobo_ActivationResult_17 TC_IMPL_TC_Bonobo_ActivationResult_18 TC_IMPL_TC_Bonobo_ActivationResult_19 TC_IMPL_TC_Bonobo_ActivationResult_2 TC_IMPL_TC_Bonobo_ActivationResult_20 TC_IMPL_TC_Bonobo_ActivationResult_21 TC_IMPL_TC_Bonobo_ActivationResult_22 TC_IMPL_TC_Bonobo_ActivationResult_3 TC_IMPL_TC_Bonobo_ActivationResult_4 TC_IMPL_TC_Bonobo_ActivationResult_5 TC_IMPL_TC_Bonobo_ActivationResult_6 TC_IMPL_TC_Bonobo_ActivationResult_7 TC_IMPL_TC_Bonobo_ActivationResult_8 TC_IMPL_TC_Bonobo_ActivationResult_9 TC_IMPL_TC_Bonobo_ActivationResultData_0 TC_IMPL_TC_Bonobo_ActivationResultData_1 TC_IMPL_TC_Bonobo_ActivationResultData_10 TC_IMPL_TC_Bonobo_ActivationResultData_11 TC_IMPL_TC_Bonobo_ActivationResultData_12 TC_IMPL_TC_Bonobo_ActivationResultData_13 TC_IMPL_TC_Bonobo_ActivationResultData_14 TC_IMPL_TC_Bonobo_ActivationResultData_15 TC_IMPL_TC_Bonobo_ActivationResultData_16 TC_IMPL_TC_Bonobo_ActivationResultData_17 TC_IMPL_TC_Bonobo_ActivationResultData_18 TC_IMPL_TC_Bonobo_ActivationResultData_19 TC_IMPL_TC_Bonobo_ActivationResultData_2 TC_IMPL_TC_Bonobo_ActivationResultData_20 TC_IMPL_TC_Bonobo_ActivationResultData_21 TC_IMPL_TC_Bonobo_ActivationResultData_22 TC_IMPL_TC_Bonobo_ActivationResultData_3 TC_IMPL_TC_Bonobo_ActivationResultData_4 TC_IMPL_TC_Bonobo_ActivationResultData_5 TC_IMPL_TC_Bonobo_ActivationResultData_6 TC_IMPL_TC_Bonobo_ActivationResultData_7 TC_IMPL_TC_Bonobo_ActivationResultData_8 TC_IMPL_TC_Bonobo_ActivationResultData_9 TC_IMPL_TC_Bonobo_ActivationResultType_0 TC_IMPL_TC_Bonobo_ActivationResultType_1 TC_IMPL_TC_Bonobo_ActivationResultType_10 TC_IMPL_TC_Bonobo_ActivationResultType_11 TC_IMPL_TC_Bonobo_ActivationResultType_12 TC_IMPL_TC_Bonobo_ActivationResultType_13 TC_IMPL_TC_Bonobo_ActivationResultType_14 TC_IMPL_TC_Bonobo_ActivationResultType_15 TC_IMPL_TC_Bonobo_ActivationResultType_16 TC_IMPL_TC_Bonobo_ActivationResultType_17 TC_IMPL_TC_Bonobo_ActivationResultType_18 TC_IMPL_TC_Bonobo_ActivationResultType_19 TC_IMPL_TC_Bonobo_ActivationResultType_2 TC_IMPL_TC_Bonobo_ActivationResultType_20 TC_IMPL_TC_Bonobo_ActivationResultType_21 TC_IMPL_TC_Bonobo_ActivationResultType_22 TC_IMPL_TC_Bonobo_ActivationResultType_3 TC_IMPL_TC_Bonobo_ActivationResultType_4 TC_IMPL_TC_Bonobo_ActivationResultType_5 TC_IMPL_TC_Bonobo_ActivationResultType_6 TC_IMPL_TC_Bonobo_ActivationResultType_7 TC_IMPL_TC_Bonobo_ActivationResultType_8 TC_IMPL_TC_Bonobo_ActivationResultType_9 TC_IMPL_TC_Bonobo_GeneralError_0 TC_IMPL_TC_Bonobo_GeneralError_1 TC_IMPL_TC_Bonobo_GeneralError_10 TC_IMPL_TC_Bonobo_GeneralError_11 TC_IMPL_TC_Bonobo_GeneralError_12 TC_IMPL_TC_Bonobo_GeneralError_13 TC_IMPL_TC_Bonobo_GeneralError_14 TC_IMPL_TC_Bonobo_GeneralError_15 TC_IMPL_TC_Bonobo_GeneralError_16 TC_IMPL_TC_Bonobo_GeneralError_17 TC_IMPL_TC_Bonobo_GeneralError_18 TC_IMPL_TC_Bonobo_GeneralError_19 TC_IMPL_TC_Bonobo_GeneralError_2 TC_IMPL_TC_Bonobo_GeneralError_20 TC_IMPL_TC_Bonobo_GeneralError_21 TC_IMPL_TC_Bonobo_GeneralError_22 TC_IMPL_TC_Bonobo_GeneralError_3 TC_IMPL_TC_Bonobo_GeneralError_4 TC_IMPL_TC_Bonobo_GeneralError_5 TC_IMPL_TC_Bonobo_GeneralError_6 TC_IMPL_TC_Bonobo_GeneralError_7 TC_IMPL_TC_Bonobo_GeneralError_8 TC_IMPL_TC_Bonobo_GeneralError_9 TC_IMPL_TC_Bonobo_GenericFactory_0 TC_IMPL_TC_Bonobo_GenericFactory_1 TC_IMPL_TC_Bonobo_GenericFactory_10 TC_IMPL_TC_Bonobo_GenericFactory_11 TC_IMPL_TC_Bonobo_GenericFactory_12 TC_IMPL_TC_Bonobo_GenericFactory_13 TC_IMPL_TC_Bonobo_GenericFactory_14 TC_IMPL_TC_Bonobo_GenericFactory_15 TC_IMPL_TC_Bonobo_GenericFactory_16 TC_IMPL_TC_Bonobo_GenericFactory_17 TC_IMPL_TC_Bonobo_GenericFactory_18 TC_IMPL_TC_Bonobo_GenericFactory_19 TC_IMPL_TC_Bonobo_GenericFactory_2 TC_IMPL_TC_Bonobo_GenericFactory_20 TC_IMPL_TC_Bonobo_GenericFactory_3 TC_IMPL_TC_Bonobo_GenericFactory_4 TC_IMPL_TC_Bonobo_GenericFactory_5 TC_IMPL_TC_Bonobo_GenericFactory_6 TC_IMPL_TC_Bonobo_GenericFactory_7 TC_IMPL_TC_Bonobo_GenericFactory_8 TC_IMPL_TC_Bonobo_GenericFactory_9 TC_IMPL_TC_Bonobo_GenericFactory_CannotActivate_0 TC_IMPL_TC_Bonobo_GenericFactory_CannotActivate_1 TC_IMPL_TC_Bonobo_GenericFactory_CannotActivate_10 TC_IMPL_TC_Bonobo_GenericFactory_CannotActivate_11 TC_IMPL_TC_Bonobo_GenericFactory_CannotActivate_12 TC_IMPL_TC_Bonobo_GenericFactory_CannotActivate_13 TC_IMPL_TC_Bonobo_GenericFactory_CannotActivate_14 TC_IMPL_TC_Bonobo_GenericFactory_CannotActivate_15 TC_IMPL_TC_Bonobo_GenericFactory_CannotActivate_16 TC_IMPL_TC_Bonobo_GenericFactory_CannotActivate_17 TC_IMPL_TC_Bonobo_GenericFactory_CannotActivate_18 TC_IMPL_TC_Bonobo_GenericFactory_CannotActivate_19 TC_IMPL_TC_Bonobo_GenericFactory_CannotActivate_2 TC_IMPL_TC_Bonobo_GenericFactory_CannotActivate_20 TC_IMPL_TC_Bonobo_GenericFactory_CannotActivate_3 TC_IMPL_TC_Bonobo_GenericFactory_CannotActivate_4 TC_IMPL_TC_Bonobo_GenericFactory_CannotActivate_5 TC_IMPL_TC_Bonobo_GenericFactory_CannotActivate_6 TC_IMPL_TC_Bonobo_GenericFactory_CannotActivate_7 TC_IMPL_TC_Bonobo_GenericFactory_CannotActivate_8 TC_IMPL_TC_Bonobo_GenericFactory_CannotActivate_9 TC_IMPL_TC_Bonobo_ImplementationID_0 TC_IMPL_TC_Bonobo_ImplementationID_1 TC_IMPL_TC_Bonobo_ImplementationID_10 TC_IMPL_TC_Bonobo_ImplementationID_11 TC_IMPL_TC_Bonobo_ImplementationID_12 TC_IMPL_TC_Bonobo_ImplementationID_13 TC_IMPL_TC_Bonobo_ImplementationID_14 TC_IMPL_TC_Bonobo_ImplementationID_15 TC_IMPL_TC_Bonobo_ImplementationID_16 TC_IMPL_TC_Bonobo_ImplementationID_17 TC_IMPL_TC_Bonobo_ImplementationID_18 TC_IMPL_TC_Bonobo_ImplementationID_19 TC_IMPL_TC_Bonobo_ImplementationID_2 TC_IMPL_TC_Bonobo_ImplementationID_20 TC_IMPL_TC_Bonobo_ImplementationID_21 TC_IMPL_TC_Bonobo_ImplementationID_22 TC_IMPL_TC_Bonobo_ImplementationID_3 TC_IMPL_TC_Bonobo_ImplementationID_4 TC_IMPL_TC_Bonobo_ImplementationID_5 TC_IMPL_TC_Bonobo_ImplementationID_6 TC_IMPL_TC_Bonobo_ImplementationID_7 TC_IMPL_TC_Bonobo_ImplementationID_8 TC_IMPL_TC_Bonobo_ImplementationID_9 TC_IMPL_TC_Bonobo_RegistrationResult_0 TC_IMPL_TC_Bonobo_RegistrationResult_1 TC_IMPL_TC_Bonobo_RegistrationResult_10 TC_IMPL_TC_Bonobo_RegistrationResult_11 TC_IMPL_TC_Bonobo_RegistrationResult_12 TC_IMPL_TC_Bonobo_RegistrationResult_13 TC_IMPL_TC_Bonobo_RegistrationResult_14 TC_IMPL_TC_Bonobo_RegistrationResult_15 TC_IMPL_TC_Bonobo_RegistrationResult_16 TC_IMPL_TC_Bonobo_RegistrationResult_17 TC_IMPL_TC_Bonobo_RegistrationResult_18 TC_IMPL_TC_Bonobo_RegistrationResult_19 TC_IMPL_TC_Bonobo_RegistrationResult_2 TC_IMPL_TC_Bonobo_RegistrationResult_20 TC_IMPL_TC_Bonobo_RegistrationResult_21 TC_IMPL_TC_Bonobo_RegistrationResult_22 TC_IMPL_TC_Bonobo_RegistrationResult_3 TC_IMPL_TC_Bonobo_RegistrationResult_4 TC_IMPL_TC_Bonobo_RegistrationResult_5 TC_IMPL_TC_Bonobo_RegistrationResult_6 TC_IMPL_TC_Bonobo_RegistrationResult_7 TC_IMPL_TC_Bonobo_RegistrationResult_8 TC_IMPL_TC_Bonobo_RegistrationResult_9 TC_IMPL_TC_Bonobo_ServerInfo_0 TC_IMPL_TC_Bonobo_ServerInfo_1 TC_IMPL_TC_Bonobo_ServerInfo_10 TC_IMPL_TC_Bonobo_ServerInfo_11 TC_IMPL_TC_Bonobo_ServerInfo_12 TC_IMPL_TC_Bonobo_ServerInfo_13 TC_IMPL_TC_Bonobo_ServerInfo_14 TC_IMPL_TC_Bonobo_ServerInfo_15 TC_IMPL_TC_Bonobo_ServerInfo_16 TC_IMPL_TC_Bonobo_ServerInfo_17 TC_IMPL_TC_Bonobo_ServerInfo_18 TC_IMPL_TC_Bonobo_ServerInfo_19 TC_IMPL_TC_Bonobo_ServerInfo_2 TC_IMPL_TC_Bonobo_ServerInfo_20 TC_IMPL_TC_Bonobo_ServerInfo_21 TC_IMPL_TC_Bonobo_ServerInfo_22 TC_IMPL_TC_Bonobo_ServerInfo_3 TC_IMPL_TC_Bonobo_ServerInfo_4 TC_IMPL_TC_Bonobo_ServerInfo_5 TC_IMPL_TC_Bonobo_ServerInfo_6 TC_IMPL_TC_Bonobo_ServerInfo_7 TC_IMPL_TC_Bonobo_ServerInfo_8 TC_IMPL_TC_Bonobo_ServerInfo_9 TC_IMPL_TC_Bonobo_ServerInfoList_0 TC_IMPL_TC_Bonobo_ServerInfoList_1 TC_IMPL_TC_Bonobo_ServerInfoList_10 TC_IMPL_TC_Bonobo_ServerInfoList_11 TC_IMPL_TC_Bonobo_ServerInfoList_12 TC_IMPL_TC_Bonobo_ServerInfoList_13 TC_IMPL_TC_Bonobo_ServerInfoList_14 TC_IMPL_TC_Bonobo_ServerInfoList_15 TC_IMPL_TC_Bonobo_ServerInfoList_16 TC_IMPL_TC_Bonobo_ServerInfoList_17 TC_IMPL_TC_Bonobo_ServerInfoList_18 TC_IMPL_TC_Bonobo_ServerInfoList_19 TC_IMPL_TC_Bonobo_ServerInfoList_2 TC_IMPL_TC_Bonobo_ServerInfoList_20 TC_IMPL_TC_Bonobo_ServerInfoList_21 TC_IMPL_TC_Bonobo_ServerInfoList_22 TC_IMPL_TC_Bonobo_ServerInfoList_3 TC_IMPL_TC_Bonobo_ServerInfoList_4 TC_IMPL_TC_Bonobo_ServerInfoList_5 TC_IMPL_TC_Bonobo_ServerInfoList_6 TC_IMPL_TC_Bonobo_ServerInfoList_7 TC_IMPL_TC_Bonobo_ServerInfoList_8 TC_IMPL_TC_Bonobo_ServerInfoList_9 TC_IMPL_TC_Bonobo_StringList_0 TC_IMPL_TC_Bonobo_StringList_1 TC_IMPL_TC_Bonobo_StringList_10 TC_IMPL_TC_Bonobo_StringList_11 TC_IMPL_TC_Bonobo_StringList_12 TC_IMPL_TC_Bonobo_StringList_13 TC_IMPL_TC_Bonobo_StringList_14 TC_IMPL_TC_Bonobo_StringList_15 TC_IMPL_TC_Bonobo_StringList_16 TC_IMPL_TC_Bonobo_StringList_17 TC_IMPL_TC_Bonobo_StringList_18 TC_IMPL_TC_Bonobo_StringList_19 TC_IMPL_TC_Bonobo_StringList_2 TC_IMPL_TC_Bonobo_StringList_20 TC_IMPL_TC_Bonobo_StringList_21 TC_IMPL_TC_Bonobo_StringList_22 TC_IMPL_TC_Bonobo_StringList_3 TC_IMPL_TC_Bonobo_StringList_4 TC_IMPL_TC_Bonobo_StringList_5 TC_IMPL_TC_Bonobo_StringList_6 TC_IMPL_TC_Bonobo_StringList_7 TC_IMPL_TC_Bonobo_StringList_8 TC_IMPL_TC_Bonobo_StringList_9 TC_IMPL_TC_Bonobo_Unknown_0 TC_IMPL_TC_Bonobo_Unknown_1 TC_IMPL_TC_Bonobo_Unknown_10 TC_IMPL_TC_Bonobo_Unknown_11 TC_IMPL_TC_Bonobo_Unknown_12 TC_IMPL_TC_Bonobo_Unknown_13 TC_IMPL_TC_Bonobo_Unknown_2 TC_IMPL_TC_Bonobo_Unknown_3 TC_IMPL_TC_Bonobo_Unknown_4 TC_IMPL_TC_Bonobo_Unknown_5 TC_IMPL_TC_Bonobo_Unknown_6 TC_IMPL_TC_Bonobo_Unknown_7 TC_IMPL_TC_Bonobo_Unknown_8 TC_IMPL_TC_Bonobo_Unknown_9 TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationEnvValue_0 TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationEnvValue_1 TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationEnvValue_10 TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationEnvValue_11 TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationEnvValue_12 TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationEnvValue_13 TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationEnvValue_14 TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationEnvValue_15 TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationEnvValue_16 TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationEnvValue_17 TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationEnvValue_18 TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationEnvValue_19 TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationEnvValue_2 TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationEnvValue_20 TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationEnvValue_21 TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationEnvValue_22 TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationEnvValue_3 TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationEnvValue_4 TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationEnvValue_5 TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationEnvValue_6 TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationEnvValue_7 TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationEnvValue_8 TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationEnvValue_9 TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationProperty_0 TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationProperty_1 TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationProperty_10 TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationProperty_11 TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationProperty_12 TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationProperty_13 TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationProperty_14 TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationProperty_15 TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationProperty_16 TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationProperty_17 TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationProperty_18 TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationProperty_19 TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationProperty_2 TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationProperty_20 TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationProperty_21 TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationProperty_22 TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationProperty_3 TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationProperty_4 TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationProperty_5 TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationProperty_6 TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationProperty_7 TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationProperty_8 TC_IMPL_TC_CORBA_sequence_Bonobo_ActivationProperty_9 TC_IMPL_TC_CORBA_sequence_Bonobo_ServerInfo_0 TC_IMPL_TC_CORBA_sequence_Bonobo_ServerInfo_1 TC_IMPL_TC_CORBA_sequence_Bonobo_ServerInfo_10 TC_IMPL_TC_CORBA_sequence_Bonobo_ServerInfo_11 TC_IMPL_TC_CORBA_sequence_Bonobo_ServerInfo_12 TC_IMPL_TC_CORBA_sequence_Bonobo_ServerInfo_13 TC_IMPL_TC_CORBA_sequence_Bonobo_ServerInfo_14 TC_IMPL_TC_CORBA_sequence_Bonobo_ServerInfo_15 TC_IMPL_TC_CORBA_sequence_Bonobo_ServerInfo_16 TC_IMPL_TC_CORBA_sequence_Bonobo_ServerInfo_17 TC_IMPL_TC_CORBA_sequence_Bonobo_ServerInfo_18 TC_IMPL_TC_CORBA_sequence_Bonobo_ServerInfo_19 TC_IMPL_TC_CORBA_sequence_Bonobo_ServerInfo_2 TC_IMPL_TC_CORBA_sequence_Bonobo_ServerInfo_20 TC_IMPL_TC_CORBA_sequence_Bonobo_ServerInfo_21 TC_IMPL_TC_CORBA_sequence_Bonobo_ServerInfo_22 TC_IMPL_TC_CORBA_sequence_Bonobo_ServerInfo_3 TC_IMPL_TC_CORBA_sequence_Bonobo_ServerInfo_4 TC_IMPL_TC_CORBA_sequence_Bonobo_ServerInfo_5 TC_IMPL_TC_CORBA_sequence_Bonobo_ServerInfo_6 TC_IMPL_TC_CORBA_sequence_Bonobo_ServerInfo_7 TC_IMPL_TC_CORBA_sequence_Bonobo_ServerInfo_8 TC_IMPL_TC_CORBA_sequence_Bonobo_ServerInfo_9 TC_IMPL_TC_CORBA_sequence_CORBA_string_0 TC_IMPL_TC_CORBA_sequence_CORBA_string_1 TC_IMPL_TC_CORBA_sequence_CORBA_string_10 TC_IMPL_TC_CORBA_sequence_CORBA_string_11 TC_IMPL_TC_CORBA_sequence_CORBA_string_12 TC_IMPL_TC_CORBA_sequence_CORBA_string_13 TC_IMPL_TC_CORBA_sequence_CORBA_string_14 TC_IMPL_TC_CORBA_sequence_CORBA_string_15 TC_IMPL_TC_CORBA_sequence_CORBA_string_16 TC_IMPL_TC_CORBA_sequence_CORBA_string_17 TC_IMPL_TC_CORBA_sequence_CORBA_string_18 TC_IMPL_TC_CORBA_sequence_CORBA_string_19 TC_IMPL_TC_CORBA_sequence_CORBA_string_2 TC_IMPL_TC_CORBA_sequence_CORBA_string_20 TC_IMPL_TC_CORBA_sequence_CORBA_string_21 TC_IMPL_TC_CORBA_sequence_CORBA_string_22 TC_IMPL_TC_CORBA_sequence_CORBA_string_3 TC_IMPL_TC_CORBA_sequence_CORBA_string_4 TC_IMPL_TC_CORBA_sequence_CORBA_string_5 TC_IMPL_TC_CORBA_sequence_CORBA_string_6 TC_IMPL_TC_CORBA_sequence_CORBA_string_7 TC_IMPL_TC_CORBA_sequence_CORBA_string_8 TC_IMPL_TC_CORBA_sequence_CORBA_string_9
registration Registration Bonobo_RegistrationResult bonobo_activation_unregister_active_server bonobo_activation_registration_env_free bonobo_activation_registration_env_set bonobo_activation_registration_env_set_global bonobo_activation_registration_env_get_global bonobo_activation_register_active_server bonobo_activation_iid_get BonoboActivationPlugin BonoboActivationPluginObject bonobo_activation_plugin_use bonobo_activation_plugin_unuse bonobo_activation_activate_shlib_server bonobo_activation_active_server_register bonobo_activation_active_server_unregister bonobo_activation_make_registration_id
initialization Initialization BONOBO_ACTIVATION_MAJOR_VERSION BONOBO_ACTIVATION_MINOR_VERSION BONOBO_ACTIVATION_MICRO_VERSION bonobo_activation_is_initialized bonobo_activation_init bonobo_activation_orb_init bonobo_activation_orb_get bonobo_activation_name_service_get bonobo_activation_hostname_get bonobo_activation_domain_get bonobo_activation_username_get bonobo_activation_context_get bonobo_activation_session_name_get bonobo_activation_get_popt_table_name bonobo_activation_postinit bonobo_activation_preinit bonobo_activation_release_corba_client bonobo_activation_add_reset_notify bonobo_activation_register_client
debugging Debugging bonobo_activation_debug_shutdown bonobo_activation_get_test_components_enabled bonobo_activation_set_test_components_enabled
libbonobo-2.32.1/doc/activation-api/architecture.sgml0000644000076400007640000001255411173072711017527 00000000000000 Bonobo Activation Architecture The Bonobo Activation daemon Bonobo Activation is nothing but a daemon implementing a set of CORBA interfaces. These CORBA interfaces implement a Name service for the set of CORBA servers installed on your system. Basically, Bonobo Activation knows about all the CORBA servers of your system, running or not. The Bonobo Activation daemon will activate those servers if you ask for them. The Bonobo Activation daemon features a powerful query langage which allows you to ask for certain services rather than for certain applications. C programmers who wish to access these services do not need to make raw CORBA calls: they can use a set of convenience functions implemented in the libbonobo-activation library. This library acts as a wrapper on top of the CORBA server. The API documentation for the libbonobo-activation library is available there. (XXX: add pointer to the API ref). Server architecture The Bonobo Activation server is split in 2 parts: the ObjectDirectory which contains the list of all servers on a given machine, and the ActivationContext which contains the list of all ObjectDirectories. It contains by default the local ObjectDirectory and you can add inside other distant ObjectDirectories. Each server is described by its .server file which contains among others the IDL interfaces this server implements, some specific properties and an IID (Implementation ID). Each IID has to be unique. Its format is pretty simple: OAFIID:program_name:UUID The UUID is supposed to be generated by the uuidgen program. program_name has to be an ASCII string without comma (','), square bracket ('[]'), or forward slash ('/') characters. Each CORBA server on a given machine is thus identified in a unique way. CORBA servers on different machines are uniquely identified through the AID (Activation ID). The AID format is also pretty simple: OAFAID:[IID,user,host,domain] user is the user unix login. host is a DNS domain name or stringified IP address. domain is is a string describing what use area the object has. One important thing to understand about these AID and IID is that the ObjectDirectory deals exclusively with IIDs (it is stritcly local) and the ActivationContext deals with AIDs since it can associate a set of user, host and domain to each IID it gets from one of its ObjectDirectory. As a result of this architecture, activation requests should go to the ActivationContext and registrations to the ObjectDirectory.
The Bonobo Activation architecture
The idea behind this is that when you make a request on the ActivationContext (like query), it will: make sure it has an up-to-date list of all the Servers with a call to ObjectDirectory::get_servers for each of its ObjectDirectory. loop through this list to try to satisfy the query with the given requirements and sort-order. activate the corresponding object with ObjectDirectory::activate (this is not exactly what happens since there are optimizations to save this call but the general idea is right).
Async Activation Bonobo Activation also has a set of asynchronous activation interfaces so that you do not need to block on activation calls. The CORBA level is pretty simple: the activation context has a set of _async calls: OAF_ACtivationContext_activate_async and OAF_ACtivationContext_activate_from_id_async. Both of those calls take an OAFActivationCallback CORBA object as parameter. This object, which is supposed to be implemented by client applications (it is actually implemented in liboaf) will receive CORBA calls when the activation is finished: module OAF { interface ActivationCallback { oneway void report_activation_failed (in string reason); oneway void report_activation_succeeded (in ActivationResult result); }; }; Of course, libbonobo-activation provides comvenient wrappers for those CORBA functions. Those are named bonobo_activation_activate_async and bonobo_activation_activate_from_id_async.
libbonobo-2.32.1/doc/activation-api/configuring.sgml0000644000076400007640000000701511173072711017353 00000000000000 Configuring Bonobo Activation <filename>.server</filename> search path. To know the list of available CORBA servers on your local machine, the Bonobo Activation daemon searches a number of directories for .server XML files which contain the description of the services offered by these servers. By default, Bonobo Activation will try to find them in ${prefix}/lib/bonobo/servers which may be a problem if users install other applications using Bonobo Activation in different prefixes. To work around this problem, Bonobo Activation will parse a number of other directories. It will parse the directories listed in the BONOBO_ACTIVATION_PATH environment variable. It will parse the prefixes listed in the GNOME2_PATH environment variable. If, for example, BONOBO_ACTIVATION_PATH=/opt/gnome2/lib/bonobo/servers:/opt/gnome2/bonobo-activation/lib/bonobo/servers, Bonobo Activation will parse /opt/gnome2/lib/bonobo/servers and /opt/gnome2/bonobo-activation/lib/bonobo/servers If GNOME2_PATH=/opt/gnome2:/opt/gnome2/bonobo-activation, Bonobo Activation will parse /opt/gnome2/lib/bonobo/servers and /opt/gnome2/bonobo-activation/lib/bonobo/servers. The above environment variables are kept to ease development with Bonobo Activation and for GNOME integration. Bonobo Activation has a much nicer configuration file which allows you to control which directories are parsed by Bonobo Activation. This XML configuration file is located in /etc/bonobo-activation/bonobo-activation-config.xml or ${prefix}/etc/bonobo-activation/bonobo-activation-config.xml. An empty bonobo-activation-config.xml and a sample bonobo-activation-config.xml.sample file should be installed on your system. It is recommended to use the bonobo-activation-sysconf command-line configuration tool to edit this file. However, here is an example of its format. <?xml version="1.0"?> <oafconfig> <searchpath> <item>/opt/gnome2/lib/bonobo/servers</item> <item>/usr/local/gnome2/lib/bonobo/servers</item> <item>/usr/local/lib/bonobo/servers</item> <item>/opt/gnome2/bonobo-activation/lib/bonobo/servers</item> </searchpath> <searchpath> <item>/opt/gnome2/bonobo-activation/lib/bonobo/servers</item> </searchpath> </oafconfig> There can be any number of item tags in a searchpath tag and any number of searchpath tags in the oafconfig tag. libbonobo-2.32.1/doc/activation-api/migrating.sgml0000644000076400007640000000026711173072711017024 00000000000000 Migrating from gnorba to Bonobo-activation Someone write this ? libbonobo-2.32.1/doc/activation-api/bonobo-activation-overrides.txt0000644000076400007640000000000011173072711022316 00000000000000libbonobo-2.32.1/doc/activation-api/Makefile.in0000664000076400007640000005066611546333027016242 00000000000000# Makefile.in generated by automake 1.11.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008, 2009 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@ # -*- mode: makefile -*- #################################### # Everything below here is generic # #################################### VPATH = @srcdir@ 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@ DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \ $(top_srcdir)/gtk-doc.make subdir = doc/activation-api ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.in 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_$(V)) am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) am__v_GEN_0 = @echo " GEN " $@; AM_V_at = $(am__v_at_$(V)) am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) am__v_at_0 = @ SOURCES = DIST_SOURCES = DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ AR = @AR@ AS = @AS@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ BONOBO_ACTIVATION_LT_VERSION_INFO = @BONOBO_ACTIVATION_LT_VERSION_INFO@ BONOBO_MAJOR_VERSION = @BONOBO_MAJOR_VERSION@ BONOBO_MICRO_VERSION = @BONOBO_MICRO_VERSION@ BONOBO_MINOR_VERSION = @BONOBO_MINOR_VERSION@ BONOBO_SLAY = @BONOBO_SLAY@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DISABLE_DEPRECATED_CFLAGS = @DISABLE_DEPRECATED_CFLAGS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GREP = @GREP@ GTHREAD_CFLAGS = @GTHREAD_CFLAGS@ GTHREAD_LIBS = @GTHREAD_LIBS@ GTKDOC_CHECK = @GTKDOC_CHECK@ GTKDOC_MKPDF = @GTKDOC_MKPDF@ GTKDOC_REBASE = @GTKDOC_REBASE@ HTML_DIR = @HTML_DIR@ IF_BSD_PS = @IF_BSD_PS@ IF_CYGWIN_PS = @IF_CYGWIN_PS@ IF_POSIX_PS = @IF_POSIX_PS@ 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@ LD = @LD@ LDFLAGS = @LDFLAGS@ LEX = @LEX@ LEXLIB = @LEXLIB@ LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ LFLAGS = @LFLAGS@ LIBBONOBO_CFLAGS = @LIBBONOBO_CFLAGS@ LIBBONOBO_LIBS = @LIBBONOBO_LIBS@ LIBBONOBO_LT_VERSION_INFO = @LIBBONOBO_LT_VERSION_INFO@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIPO = @LIPO@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ NM = @NM@ NMEDIT = @NMEDIT@ OBJDUMP = @OBJDUMP@ OBJEXT = @OBJEXT@ ORBIT_IDL = @ORBIT_IDL@ OTOOL = @OTOOL@ OTOOL64 = @OTOOL64@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PERL_PATH = @PERL_PATH@ PKG_CONFIG = @PKG_CONFIG@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ PS_PATH = @PS_PATH@ RANLIB = @RANLIB@ SEARCHPATHSEP = @SEARCHPATHSEP@ SED = @SED@ SERVER_CFLAGS = @SERVER_CFLAGS@ SERVER_LIBS = @SERVER_LIBS@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SOPREFIX = @SOPREFIX@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ WARN_CFLAGS = @WARN_CFLAGS@ XGETTEXT = @XGETTEXT@ YACC = @YACC@ YFLAGS = @YFLAGS@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ 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@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ lt_ECHO = @lt_ECHO@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ 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@ AUTOMAKE_OPTIONS = 1.6 NULL = # The name of the module. DOC_MODULE = bonobo-activation # The top-level SGML file. DOC_MAIN_SGML_FILE = $(DOC_MODULE)-docs.sgml # The directory containing the source code. Relative to $(srcdir) DOC_SOURCE_DIR = $(top_srcdir)/bonobo-activation # Extra options to supply to gtkdoc-scan SCAN_OPTIONS = --deprecated-guards="BONOBO_DISABLE_DEPRECATED" # Extra options to supply to gtkdoc-mkdb MKDB_OPTIONS = --sgml-mode --output-format=xml # Extra options to supply to gtkdoc-fixref FIXXREF_OPTIONS = # Used for dependencies HFILE_GLOB = $(top_srcdir)/bonobo-activation/*.h CFILE_GLOB = $(top_srcdir)/bonobo-activation/*.c # Headers to ignore IGNORE_HFILES = \ Bonobo_ObjectDirectory.h \ Bonobo_ActivationContext.h \ bonobo-activation-i18n.h \ bonobo-activation-private.h \ bonobo-activation-base-service.h \ bonobo-activation-activate-private.h # Extra files to add when scanning EXTRA_HFILES = # Images to copy into HTML directory HTML_IMAGES = \ bonobo-activation.png \ $(NULL) # Non-autogenerated SGML files to be included in $(DOC_MAIN_SGML_FILE) content_files = \ tutorial.sgml \ migrating.sgml \ server-xml-reference.sgml \ configuring.sgml \ query-langage.sgml \ architecture.sgml \ lgpl.sgml \ $(NULL) extra_files = # CFLAGS and LDFLAGS for compiling scan program. Only needed # if $(DOC_MODULE).types is non-empty. GTKDOC_CFLAGS = GTKDOC_LIBS = # If you need to override some of the declarations, place them in the # $(DOC_MODULE)-overrides.txt file and uncomment the second line here. DOC_OVERRIDES = @GTK_DOC_USE_LIBTOOL_FALSE@GTKDOC_CC = $(CC) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) @GTK_DOC_USE_LIBTOOL_TRUE@GTKDOC_CC = $(LIBTOOL) --tag=CC --mode=compile $(CC) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) @GTK_DOC_USE_LIBTOOL_FALSE@GTKDOC_LD = $(CC) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) @GTK_DOC_USE_LIBTOOL_TRUE@GTKDOC_LD = $(LIBTOOL) --tag=CC --mode=link $(CC) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) @GTK_DOC_USE_LIBTOOL_FALSE@GTKDOC_RUN = @GTK_DOC_USE_LIBTOOL_TRUE@GTKDOC_RUN = $(LIBTOOL) --mode=execute # We set GPATH here; this gives us semantics for GNU make # which are more like other make's VPATH, when it comes to # whether a source that is a target of one rule is then # searched for in VPATH/GPATH. # GPATH = $(srcdir) TARGET_DIR = $(HTML_DIR)/$(DOC_MODULE) EXTRA_DIST = \ $(content_files) \ $(HTML_IMAGES) \ $(DOC_MAIN_SGML_FILE) \ $(DOC_MODULE)-sections.txt \ $(DOC_MODULE)-overrides.txt DOC_STAMPS = scan-build.stamp tmpl-build.stamp sgml-build.stamp html-build.stamp \ pdf-build.stamp \ $(srcdir)/tmpl.stamp $(srcdir)/sgml.stamp $(srcdir)/html.stamp \ $(srcdir)/pdf.stamp SCANOBJ_FILES = \ $(DOC_MODULE).args \ $(DOC_MODULE).hierarchy \ $(DOC_MODULE).interfaces \ $(DOC_MODULE).prerequisites \ $(DOC_MODULE).signals REPORT_FILES = \ $(DOC_MODULE)-undocumented.txt \ $(DOC_MODULE)-undeclared.txt \ $(DOC_MODULE)-unused.txt CLEANFILES = $(SCANOBJ_FILES) $(REPORT_FILES) $(DOC_STAMPS) @ENABLE_GTK_DOC_TRUE@@GTK_DOC_BUILD_HTML_FALSE@HTML_BUILD_STAMP = @ENABLE_GTK_DOC_TRUE@@GTK_DOC_BUILD_HTML_TRUE@HTML_BUILD_STAMP = html-build.stamp @ENABLE_GTK_DOC_TRUE@@GTK_DOC_BUILD_PDF_FALSE@PDF_BUILD_STAMP = @ENABLE_GTK_DOC_TRUE@@GTK_DOC_BUILD_PDF_TRUE@PDF_BUILD_STAMP = pdf-build.stamp all: all-am .SUFFIXES: $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/gtk-doc.make $(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) --foreign doc/activation-api/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --foreign doc/activation-api/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 $(MAKE) $(AM_MAKEFLAGS) \ top_distdir="$(top_distdir)" distdir="$(distdir)" \ dist-hook check-am: all-am check: check-am all-am: Makefile all-local 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: $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install 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 clean-local mostlyclean-am distclean: distclean-am -rm -f Makefile distclean-am: clean-am distclean-generic distclean-local dvi: dvi-am dvi-am: html: html-am html-am: info: info-am info-am: install-data-am: install-data-local 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 \ maintainer-clean-local mostlyclean: mostlyclean-am mostlyclean-am: mostlyclean-generic mostlyclean-libtool pdf: pdf-am pdf-am: ps: ps-am ps-am: uninstall-am: uninstall-local .MAKE: install-am install-strip .PHONY: all all-am all-local check check-am clean clean-generic \ clean-libtool clean-local dist-hook distclean \ distclean-generic distclean-libtool distclean-local distdir \ dvi dvi-am html html-am info info-am install install-am \ install-data install-data-am install-data-local 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 \ maintainer-clean-local mostlyclean mostlyclean-generic \ mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ uninstall-local @ENABLE_GTK_DOC_TRUE@all-local: $(HTML_BUILD_STAMP) $(PDF_BUILD_STAMP) @ENABLE_GTK_DOC_FALSE@all-local: docs: $(HTML_BUILD_STAMP) $(PDF_BUILD_STAMP) $(REPORT_FILES): sgml-build.stamp #### scan #### scan-build.stamp: $(HFILE_GLOB) $(CFILE_GLOB) @echo 'gtk-doc: Scanning header files' @-chmod -R u+w $(srcdir) @_source_dir='' ; for i in $(DOC_SOURCE_DIR) ; do \ _source_dir="$${_source_dir} --source-dir=$$i" ; \ done ; \ cd $(srcdir) && \ gtkdoc-scan --module=$(DOC_MODULE) --ignore-headers="$(IGNORE_HFILES)" $${_source_dir} $(SCAN_OPTIONS) $(EXTRA_HFILES) @if grep -l '^..*$$' $(srcdir)/$(DOC_MODULE).types > /dev/null 2>&1 ; then \ CC="$(GTKDOC_CC)" LD="$(GTKDOC_LD)" RUN="$(GTKDOC_RUN)" CFLAGS="$(GTKDOC_CFLAGS) $(CFLAGS)" LDFLAGS="$(GTKDOC_LIBS) $(LDFLAGS)" gtkdoc-scangobj $(SCANGOBJ_OPTIONS) --module=$(DOC_MODULE) --output-dir=$(srcdir) ; \ else \ cd $(srcdir) ; \ for i in $(SCANOBJ_FILES) ; do \ test -f $$i || touch $$i ; \ done \ fi @touch scan-build.stamp $(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt: scan-build.stamp @true #### templates #### tmpl-build.stamp: $(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt @echo 'gtk-doc: Rebuilding template files' @-chmod -R u+w $(srcdir) @cd $(srcdir) && gtkdoc-mktmpl --module=$(DOC_MODULE) $(MKTMPL_OPTIONS) @touch tmpl-build.stamp tmpl.stamp: tmpl-build.stamp @true $(srcdir)/tmpl/*.sgml: @true #### xml #### sgml-build.stamp: tmpl.stamp $(DOC_MODULE)-sections.txt $(srcdir)/tmpl/*.sgml $(expand_content_files) @echo 'gtk-doc: Building XML' @-chmod -R u+w $(srcdir) @_source_dir='' ; for i in $(DOC_SOURCE_DIR) ; do \ _source_dir="$${_source_dir} --source-dir=$$i" ; \ done ; \ cd $(srcdir) && \ gtkdoc-mkdb --module=$(DOC_MODULE) --output-format=xml --expand-content-files="$(expand_content_files)" --main-sgml-file=$(DOC_MAIN_SGML_FILE) $${_source_dir} $(MKDB_OPTIONS) @touch sgml-build.stamp sgml.stamp: sgml-build.stamp @true #### html #### html-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files) @echo 'gtk-doc: Building HTML' @-chmod -R u+w $(srcdir) @rm -rf $(srcdir)/html @mkdir $(srcdir)/html @mkhtml_options=""; \ gtkdoc-mkhtml 2>&1 --help | grep >/dev/null "\-\-path"; \ if test "$(?)" = "0"; then \ mkhtml_options=--path="$(srcdir)"; \ fi; \ cd $(srcdir)/html && gtkdoc-mkhtml $$mkhtml_options $(MKHTML_OPTIONS) $(DOC_MODULE) ../$(DOC_MAIN_SGML_FILE) @test "x$(HTML_IMAGES)" = "x" || ( cd $(srcdir) && cp $(HTML_IMAGES) html ) @echo 'gtk-doc: Fixing cross-references' @cd $(srcdir) && gtkdoc-fixxref --module=$(DOC_MODULE) --module-dir=html --html-dir=$(HTML_DIR) $(FIXXREF_OPTIONS) @touch html-build.stamp #### pdf #### pdf-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files) @echo 'gtk-doc: Building PDF' @-chmod -R u+w $(srcdir) @rm -rf $(srcdir)/$(DOC_MODULE).pdf @mkpdf_imgdirs=""; \ if test "x$(HTML_IMAGES)" != "x"; then \ for img in $(HTML_IMAGES); do \ part=`dirname $$img`; \ echo $$mkpdf_imgdirs | grep >/dev/null "\-\-imgdir=$$part "; \ if test $$? != 0; then \ mkpdf_imgdirs="$$mkpdf_imgdirs --imgdir=$$part"; \ fi; \ done; \ fi; \ cd $(srcdir) && gtkdoc-mkpdf --path="$(abs_srcdir)" $$mkpdf_imgdirs $(DOC_MODULE) $(DOC_MAIN_SGML_FILE) $(MKPDF_OPTIONS) @touch pdf-build.stamp ############## clean-local: rm -f *~ *.bak rm -rf .libs distclean-local: cd $(srcdir) && \ rm -rf xml $(REPORT_FILES) $(DOC_MODULE).pdf \ $(DOC_MODULE)-decl-list.txt $(DOC_MODULE)-decl.txt maintainer-clean-local: clean cd $(srcdir) && rm -rf xml html install-data-local: @installfiles=`echo $(srcdir)/html/*`; \ if test "$$installfiles" = '$(srcdir)/html/*'; \ then echo '-- Nothing to install' ; \ else \ if test -n "$(DOC_MODULE_VERSION)"; then \ installdir="$(DESTDIR)$(TARGET_DIR)-$(DOC_MODULE_VERSION)"; \ else \ installdir="$(DESTDIR)$(TARGET_DIR)"; \ fi; \ $(mkinstalldirs) $${installdir} ; \ for i in $$installfiles; do \ echo '-- Installing '$$i ; \ $(INSTALL_DATA) $$i $${installdir}; \ done; \ if test -n "$(DOC_MODULE_VERSION)"; then \ mv -f $${installdir}/$(DOC_MODULE).devhelp2 \ $${installdir}/$(DOC_MODULE)-$(DOC_MODULE_VERSION).devhelp2; \ mv -f $${installdir}/$(DOC_MODULE).devhelp \ $${installdir}/$(DOC_MODULE)-$(DOC_MODULE_VERSION).devhelp; \ fi; \ $(GTKDOC_REBASE) --relative --dest-dir=$(DESTDIR) --html-dir=$${installdir}; \ fi uninstall-local: @if test -n "$(DOC_MODULE_VERSION)"; then \ installdir="$(DESTDIR)$(TARGET_DIR)-$(DOC_MODULE_VERSION)"; \ else \ installdir="$(DESTDIR)$(TARGET_DIR)"; \ fi; \ rm -rf $${installdir} # # Require gtk-doc when making dist # @ENABLE_GTK_DOC_TRUE@dist-check-gtkdoc: @ENABLE_GTK_DOC_FALSE@dist-check-gtkdoc: @ENABLE_GTK_DOC_FALSE@ @echo "*** gtk-doc must be installed and enabled in order to make dist" @ENABLE_GTK_DOC_FALSE@ @false dist-hook: dist-check-gtkdoc dist-hook-local mkdir $(distdir)/tmpl mkdir $(distdir)/html -cp $(srcdir)/tmpl/*.sgml $(distdir)/tmpl cp $(srcdir)/html/* $(distdir)/html -cp $(srcdir)/$(DOC_MODULE).pdf $(distdir)/ -cp $(srcdir)/$(DOC_MODULE).types $(distdir)/ -cp $(srcdir)/$(DOC_MODULE)-sections.txt $(distdir)/ cd $(distdir) && rm -f $(DISTCLEANFILES) $(GTKDOC_REBASE) --online --relative --html-dir=$(distdir)/html .PHONY : dist-hook-local docs #DOC_OVERRIDES = $(DOC_MODULE)-overrides.txt # include common portion ... # 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: libbonobo-2.32.1/doc/activation-api/bonobo-activation-docs.sgml0000644000076400007640000000375211173072711021410 00000000000000 ]> Bonobo Activation API Reference Manual Mathieu Lacage
mathieu@gnu.org
This documentation is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. A copy of the license is included in the section entitled "GNU Lesser General Public License" 2000 The Free Software Foundation
&tutorial; &configuring; &architecture; &query-langage; &server-xml-reference; &migrating; API Reference This part presents the function reference for the bonobo activation library. &init; &activation; &utils; ®istration; &debugging; &LGPL;
libbonobo-2.32.1/doc/activation-api/query-langage.sgml0000644000076400007640000002011411173072711017575 00000000000000 Bonobo Activation Query Langage The Bonobo Activation query langage Bonobo Activation has a query language used to request components with specific properties from the Bonobo Activation daemon. The API call bonobo_activation_activate takes a requirements parameter which is a string containing a specific request in the OAF query langage. A simple example is: CORBA_Object o = bonobo_activation_activate ("repo_ids.has ('IDL:GNOME/Graph/Layout:1.0')", NULL, 0, NULL, &ev); This will ask for a component which supports the GNOME/Graph/Lyout:1.0 interface. You can also do much more complicated things. "(repo_ids.has_all (['IDL:Bonobo/Control:1.0', 'IDL:Nautilus/ContentView:1.0']) OR repo_ids.has_one (['IDL:Bonobo/Control:1.0', 'IDL:Bonobo/Embeddable:1.0'])) AND repo_ids.has('IDL:Bonobo/PersistFile:1.0') AND foo:bar.defined()" This would get any component with both 'Control' and 'ContentView' or with either 'Control' or 'Embeddable' as long as they supported the 'PersistFile' interface, and defined the attribute 'foo:bar'. Syntax Constants 'string': As in SQL, delimited by single quotes. Example: 'mystring' 'stringv' (string arrays): A comma-separated list of strings, surrounded by square brackets. Example: ['red','blue'] 'number': Floating point decimals. (aka "whatever atof() accepts" :) 'boolean': TRUE or FALSE (other common boolean value identifiers also accepted, but not encouraged). Field identifiers Names of fields are attributes of a ServerInfo record. These include 'server_type', 'location_info', and 'iid', even though these are explicitly stored instead of just other attributes. Some pseudo-fields are also available - they are all prefaced with an underscore: _active : Whether the server is currently running (boolean) Variables Variables are various miscellaneous data items that are part of the environment. The syntax for referring to a variable is a '$' sign followed by the variable name. The following variables are available: $hostname : the hostname that the requesting client is running on. $domain : the "domain" that the client is requesting activation in. Functions Functions perform transformations on data and return a result. There are two possible syntaxes for a function call: funcname(field, other-arguments) field.funcname(other-arguments...) Internally, 'field.funcname(other-arguments...)' is translated to be exactly the same as 'funcname(field, other-arguments)', so 'priority.max()' is exactly the same as 'max(priority)'. Function names are case insensitive. The following functions are available: defined(expression) : Returns a boolean value that indicates whether the given expression is defined for the current record. For example, using a field name would indicate whether that field is defined for the record. has_one(stringv1, stringv2) : Returns a boolean value that indicates whether any of the strings in the 'stringv2' array are contained in the 'stringv1' array. has_all(stringv1, stringv2) : Returns a boolean value that indicates whether all of the strings in the 'stringv2' array are contained in the 'stringv1' array. has(stringv, string) Returns a boolean value that indicates whether 'string' is contained in the 'stringv' array. prefer_by_list_order(string, stringv) This function is intended to use as a sort condition when you have a prioritized list of preferred values. It returns -1 if the 'string' is not in the 'stringv' array, otherwise it's position measured from the end of 'stringv'. The result is that the first item is most preferred, items after that are next most preferred, and items not in the list are lowest priority. max(expr) Evaluates 'expr' over all the available server information records in the database, and returns the maximum value as dictated by the normal sort order for the data type of 'expr'. This function is not valid for string vectors. min(expr) As with the 'max' function, but finds the minimum value. Operators More complex queries can be built using the various operators described below. When building complex expressions, make sure they are fully parenthized or your query will fail in weird ways. Binary relational operators. Operator Signification == equal != not equal < less than > greater than <= less than or equal >= greater than or equal
Binary boolean operators. Operator Signification && or AND and || or OR or ^^ or XOR exclusive or
Unary boolean operators. Operator Signification ~ or NOT not
Binary arithmetic operators. Operator Signification / divided by + plus - minus * times
Unary arithmetic operators. Operator Signification - negate
libbonobo-2.32.1/doc/activation-api/html/0000775000076400007640000000000011546334245015207 500000000000000libbonobo-2.32.1/doc/activation-api/html/bonobo-activation-Query-and-Activation.html0000664000076400007640000006562311546334245025410 00000000000000 Query and Activation

Query and Activation

Query and Activation — Querying for components and Activating them

Synopsis

#include <bonobo-activation/bonobo-activation.h>

typedef             Bonobo_ImplementationID;
typedef             Bonobo_ActivationID;
typedef             Bonobo_ActivationFlags;
enum                Bonobo_ActivationResultType;
Bonobo_ServerInfoList * bonobo_activation_query         (const char *requirements,
                                                         char *const *selection_order,
                                                         CORBA_Environment *ev);
CORBA_Object        bonobo_activation_activate          (const char *requirements,
                                                         char *const *selection_order,
                                                         Bonobo_ActivationFlags flags,
                                                         Bonobo_ActivationID *ret_aid,
                                                         CORBA_Environment *ev);
CORBA_Object        bonobo_activation_activate_from_id  (const Bonobo_ActivationID aid,
                                                         Bonobo_ActivationFlags flags,
                                                         Bonobo_ActivationID *ret_aid,
                                                         CORBA_Environment *ev);
void                (*BonoboActivationCallback)         (CORBA_Object activated_object,
                                                         const char *error_reason,
                                                         gpointer user_data);
void                bonobo_activation_activate_async    (const char *requirements,
                                                         char *const *selection_order,
                                                         Bonobo_ActivationFlags flags,
                                                         BonoboActivationCallback callback,
                                                         gpointer user_data,
                                                         CORBA_Environment *ev);
void                bonobo_activation_activate_from_id_async
                                                        (const Bonobo_ActivationID aid,
                                                         Bonobo_ActivationFlags flags,
                                                         BonoboActivationCallback callback,
                                                         gpointer user_data,
                                                         CORBA_Environment *ev);
void                bonobo_activation_set_activation_env_value
                                                        (const char *name,
                                                         const char *value);

Description

This section describes how you can query for components and activate them.

Two set of functions are described: synchronous and asynchronous ones. The asynchronous version of the functions allow you to avoid blocking your application while the CORBA servers are started.

Details

Bonobo_ImplementationID

typedef CORBA_string Bonobo_ImplementationID;


Bonobo_ActivationID

typedef CORBA_string Bonobo_ActivationID;


Bonobo_ActivationFlags

typedef CORBA_long Bonobo_ActivationFlags;


enum Bonobo_ActivationResultType

typedef enum {
  Bonobo_ACTIVATION_RESULT_OBJECT,
  Bonobo_ACTIVATION_RESULT_SHLIB,
  Bonobo_ACTIVATION_RESULT_NONE
} Bonobo_ActivationResultType;


bonobo_activation_query ()

Bonobo_ServerInfoList * bonobo_activation_query         (const char *requirements,
                                                         char *const *selection_order,
                                                         CORBA_Environment *ev);

Executes the requirements query on the bonobo-activation-server. The result is sorted according to selection_order. selection_order can safely be NULL as well as ev. The returned list has to be freed with CORBA_free.

requirements :

query string.

selection_order :

sort criterion for returned list.

ev :

a CORBA_Environment structure which will contain the CORBA exception status of the operation, or NULL

Returns :

the list of servers matching the requirements.

bonobo_activation_activate ()

CORBA_Object        bonobo_activation_activate          (const char *requirements,
                                                         char *const *selection_order,
                                                         Bonobo_ActivationFlags flags,
                                                         Bonobo_ActivationID *ret_aid,
                                                         CORBA_Environment *ev);

Activates a given object. ret_aid can be safely NULLed as well as ev and selection_order. flags can be set to zero if you do not what to use.

requirements :

query string.

selection_order :

sort criterion for returned list.

flags :

how to activate the object.

ret_aid :

AID of the activated object.

ev :

CORBA_Environment structure which will contain the CORBA exception status of the operation.

Returns :

the CORBA object reference of the activated object. This value can be CORBA_OBJECT_NIL: you are supposed to check ev for success.

bonobo_activation_activate_from_id ()

CORBA_Object        bonobo_activation_activate_from_id  (const Bonobo_ActivationID aid,
                                                         Bonobo_ActivationFlags flags,
                                                         Bonobo_ActivationID *ret_aid,
                                                         CORBA_Environment *ev);

Activates the server corresponding to aid. ret_aid can be safely NULLed as well as ev. flags can be zero if you do not know what to do.

aid :

AID or IID of the object to activate.

flags :

activation flag.

ret_aid :

AID of the activated server.

ev :

CORBA_Environment structure which will contain the CORBA exception status of the operation.

Returns :

a CORBA object reference to the newly activated server. Do not forget to check ev for failure!!

BonoboActivationCallback ()

void                (*BonoboActivationCallback)         (CORBA_Object activated_object,
                                                         const char *error_reason,
                                                         gpointer user_data);

This is the signature of the function which you must pass as a callback to the asynchrounous activation functions.

activated_object :

error_reason :

user_data :


bonobo_activation_activate_async ()

void                bonobo_activation_activate_async    (const char *requirements,
                                                         char *const *selection_order,
                                                         Bonobo_ActivationFlags flags,
                                                         BonoboActivationCallback callback,
                                                         gpointer user_data,
                                                         CORBA_Environment *ev);

This function will asynchronously try to activate a component given the requirements query string. When the component is activated or when the activation fails, it will call callback with the given user_data data as parameter. callback will be called with a CORBA_OBJECT_NIL object if the activation fails. If the activation fails, the callback will be given a human-readable string containing a description of the error. In case of sucess, the error string value is undefined.

selection_order can be safely NULLed as well as ev and user_data. flags can be set to 0 if you do not know what to use.

requirements :

the bonobo-activation query string.

selection_order :

preference array.

flags :

activation flags.

callback :

callback function.

user_data :

data to be poassed to the callback function.

ev :

exception structure.

bonobo_activation_activate_from_id_async ()

void                bonobo_activation_activate_from_id_async
                                                        (const Bonobo_ActivationID aid,
                                                         Bonobo_ActivationFlags flags,
                                                         BonoboActivationCallback callback,
                                                         gpointer user_data,
                                                         CORBA_Environment *ev);

This function will asynchronously try to activate a component with the given aid. When the component is activated or when the activation fails, it will call callback with the given user_data data as parameter. callback will be called with a CORBA_OBJECT_NIL object if the activation fails. If the activation fails, the callback will be given a human-readable string containing a description of the error. In case of sucess, the error string value is undefined.

flags can be 0 if you do not know what to set it to and ev can be safely set to NULL.

aid :

the AID or IID of the component to activate.

flags :

activation flags.

callback :

callback function.

user_data :

data to be poassed to the callback function.

ev :

exception structure.

bonobo_activation_set_activation_env_value ()

void                bonobo_activation_set_activation_env_value
                                                        (const char *name,
                                                         const char *value);

name :

value :

libbonobo-2.32.1/doc/activation-api/html/bonobo-activation.devhelp0000664000076400007640000001736111546334245022125 00000000000000 libbonobo-2.32.1/doc/activation-api/html/index.html0000664000076400007640000001621111546334245017125 00000000000000 Bonobo Activation API Reference Manual

Mathieu Lacage


    
  

This documentation is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. A copy of the license is included in the section entitled "GNU Lesser General Public License"


libbonobo-2.32.1/doc/activation-api/html/server-xml-reference.html0000664000076400007640000001215611546334245022062 00000000000000 .server file format reference

.server file format reference

This section describes the format of the .server files used by applications to tell the Bonobo Activation daemon about the interfaces they support.

The oaf_server tag

Here follows a simple example of a minimalist .server file.

<oaf_info>
  <oaf_server iid="OAFIID:Bonobo_CosNaming_NamingContext"
	      type="exe"
              location="/usr/lib/bonobo-activation/bonobo-activation-server">
  </oaf_server>
</oaf_info>

Each oaf_server entry conventionally has three mandatory properties: iid (the FAQ of the Bonobo API reference manual explains how to create an iid), type (can be exe, factory, or shlib) and location.

If the type is exe, location is the name of the executable which creates the CORBA interfaces associated to this entry and registers them to Bonobo Activation. If the type is factory, location is the iid of the component which can create the corresponding CORBA server. If the type is shlib, location is the name of the library the code is in: libgmf for example.

Portability Note

Don't include the .so suffix common on Linux systems in the location of a shlib component.

Here follows a simple example of a component activated through a factory:

<oaf_info>
  <oaf_server iid="OAFIID:Bonobo_Sample_Echo_Factory" type="exe"
	      location="/usr/lib/bonobo-2.0/samples/bonobo-echo-2">
  </oaf_server>

  <oaf_server iid="OAFIID:Bonobo_Sample_Echo" type="factory"
	      location="OAFIID:Bonobo_Sample_Echo_Factory">
  </oaf_server>
</oaf_info>

If you ask Bonobo Activation to activate the OAFIID:Bonobo_Sample_Echo component, Bonobo Activation will first check if it is a factory, make sure the corresponding factory compoenent is running (by activating it. Here, activating the factory component is a matter of launching the executable) and call create on the factory. It will return you that object.

libbonobo-2.32.1/doc/activation-api/html/architecture.html0000664000076400007640000000566411546334245020512 00000000000000 Bonobo Activation Architecture

Bonobo Activation Architecture

The Bonobo Activation daemon

Bonobo Activation is nothing but a daemon implementing a set of CORBA interfaces. These CORBA interfaces implement a Name service for the set of CORBA servers installed on your system. Basically, Bonobo Activation knows about all the CORBA servers of your system, running or not. The Bonobo Activation daemon will activate those servers if you ask for them.

The Bonobo Activation daemon features a powerful query langage which allows you to ask for certain services rather than for certain applications.

C programmers who wish to access these services do not need to make raw CORBA calls: they can use a set of convenience functions implemented in the libbonobo-activation library. This library acts as a wrapper on top of the CORBA server. The API documentation for the libbonobo-activation library is available there. (XXX: add pointer to the API ref).

libbonobo-2.32.1/doc/activation-api/html/bonobo-activation.devhelp20000664000076400007640000002070711546334245022205 00000000000000 libbonobo-2.32.1/doc/activation-api/html/index.sgml0000664000076400007640000002121511546334245017123 00000000000000 libbonobo-2.32.1/doc/activation-api/html/bonobo-activation-Initialization.html0000664000076400007640000002431611546334245024425 00000000000000 Initialization

Initialization

Initialization — Initializing Bonobo Activation and its ORB.

Synopsis

#include <bonobo-activation/bonobo-activation.h>

#define             BONOBO_ACTIVATION_MAJOR_VERSION
#define             BONOBO_ACTIVATION_MINOR_VERSION
#define             BONOBO_ACTIVATION_MICRO_VERSION
gboolean            bonobo_activation_is_initialized    (void);
CORBA_ORB           bonobo_activation_init              (int argc,
                                                         char **argv);
CORBA_ORB           bonobo_activation_orb_init          (int *argc,
                                                         char **argv);
CORBA_ORB           bonobo_activation_orb_get           (void);
CORBA_Object        bonobo_activation_name_service_get  (CORBA_Environment *ev);

Description

These functions allow you to initialize Bonobo Activation and the ORB it is using. Initializing Bonobo Activation launches the Bonobo Activation daemon if it is not started.

Details

BONOBO_ACTIVATION_MAJOR_VERSION

#define BONOBO_ACTIVATION_MAJOR_VERSION (2)


BONOBO_ACTIVATION_MINOR_VERSION

#define BONOBO_ACTIVATION_MINOR_VERSION (32)


BONOBO_ACTIVATION_MICRO_VERSION

#define BONOBO_ACTIVATION_MICRO_VERSION (0)


bonobo_activation_is_initialized ()

gboolean            bonobo_activation_is_initialized    (void);

Tells you whether or not bonobo-activation is initialized.

Returns :

whether bonobo-activation is initialized or not.

bonobo_activation_init ()

CORBA_ORB           bonobo_activation_init              (int argc,
                                                         char **argv);

Initializes bonobo-activation. Should be called before any other call to the library.

argc :

number of command-line arguments passed to the program.

argv :

array of strings containing the command-line arguments of the program.

Returns :

the ORB used by bonobo-activation.

bonobo_activation_orb_init ()

CORBA_ORB           bonobo_activation_orb_init          (int *argc,
                                                         char **argv);

Initialize Bonobo Activation's ORB - do this once centrally so it can be easily shared.

argc :

pointer to program's argument count

argv :

argument array

Returns :

the ORB.

bonobo_activation_orb_get ()

CORBA_ORB           bonobo_activation_orb_get           (void);

Returns the ORB used by OAF.

Returns :

the ORB used by OAF.

bonobo_activation_name_service_get ()

CORBA_Object        bonobo_activation_name_service_get  (CORBA_Environment *ev);

Returns the name server of bonobo-activation. ev can be NULL.

ev :

CORBA_Environment structure which will contain the CORBA exception status of the operation.

Returns :

the name server of bonobo-activation.
libbonobo-2.32.1/doc/activation-api/html/bonobo-activation-Debugging.html0000664000076400007640000000722211546334245023326 00000000000000 Debugging

Debugging

Debugging

Synopsis

#include <bonobo-activation/bonobo-activation.h>

gboolean            bonobo_activation_debug_shutdown    (void);

Description

Details

bonobo_activation_debug_shutdown ()

gboolean            bonobo_activation_debug_shutdown    (void);

A debugging function to shutdown the ORB and process any reference count leaks that may have occurred.

Returns :

FALSE if there were leaks detected, else TRUE
libbonobo-2.32.1/doc/activation-api/html/configuring.html0000664000076400007640000001271611546334245020336 00000000000000 Configuring Bonobo Activation

Configuring Bonobo Activation

.server search path.

To know the list of available CORBA servers on your local machine, the Bonobo Activation daemon searches a number of directories for .server XML files which contain the description of the services offered by these servers. By default, Bonobo Activation will try to find them in ${prefix}/lib/bonobo/servers which may be a problem if users install other applications using Bonobo Activation in different prefixes.

To work around this problem, Bonobo Activation will parse a number of other directories. It will parse the directories listed in the BONOBO_ACTIVATION_PATH environment variable. It will parse the prefixes listed in the GNOME2_PATH environment variable. If, for example, BONOBO_ACTIVATION_PATH=/opt/gnome2/lib/bonobo/servers:/opt/gnome2/bonobo-activation/lib/bonobo/servers, Bonobo Activation will parse /opt/gnome2/lib/bonobo/servers and /opt/gnome2/bonobo-activation/lib/bonobo/servers If GNOME2_PATH=/opt/gnome2:/opt/gnome2/bonobo-activation, Bonobo Activation will parse /opt/gnome2/lib/bonobo/servers and /opt/gnome2/bonobo-activation/lib/bonobo/servers.

The above environment variables are kept to ease development with Bonobo Activation and for GNOME integration. Bonobo Activation has a much nicer configuration file which allows you to control which directories are parsed by Bonobo Activation. This XML configuration file is located in /etc/bonobo-activation/bonobo-activation-config.xml or ${prefix}/etc/bonobo-activation/bonobo-activation-config.xml. An empty bonobo-activation-config.xml and a sample bonobo-activation-config.xml.sample file should be installed on your system.

It is recommended to use the bonobo-activation-sysconf command-line configuration tool to edit this file. However, here is an example of its format.

<?xml version="1.0"?>

<oafconfig>

<searchpath>
<item>/opt/gnome2/lib/bonobo/servers</item>
<item>/usr/local/gnome2/lib/bonobo/servers</item>
<item>/usr/local/lib/bonobo/servers</item>
<item>/opt/gnome2/bonobo-activation/lib/bonobo/servers</item>
</searchpath>

<searchpath>
<item>/opt/gnome2/bonobo-activation/lib/bonobo/servers</item>
</searchpath>

</oafconfig>

There can be any number of item tags in a searchpath tag and any number of searchpath tags in the oafconfig tag.

libbonobo-2.32.1/doc/activation-api/html/bonobo-activation.png0000644000076400007640000004233011546334245021252 00000000000000PNG  IHDR#sBITO IDATx%W]8.e)RZ4@_DI0'Dѕ Uh OH0D55 nw{w8sǹ3sz;3ǽsΜn١p 70u"]|ylȍSΟ??ub8q(EڴRi"Hil6c=n@L n{k+읕kcWm %ŌJvtM ڦ@ҢվޫjO\S]ՖS[9hUX[c kvX`ijѣ%6a&U-5)jlݪiC-0O2-X7RnQ}3sI:!56` f'Dktn穟j*F٩=T#09㴀,XsHByKi}ICQc Ck4ycQ5{kN@顼9 #6UӦt3$@L3oyI*07ڴ`uJn2M=~USRCS0C2-Gs+䋊w,f8QxȎ\#ٺIQu[KXc«f8ْɴjNג-j "aV;;V1[5Щƙ:KnjOZ󉦢z00MፘiHEL @*2-TdZ,.\kv>GNirPmZN{cĉ)2mZȴRi"fS=ɸ=j:)k4!GX?vl=GlV=jUIMxFbG{p|Lb"C⋖5irum|"_ 2zq8qbגijvG(?J>\5CS[sVؽ5|Qm\ZZBk[Jea1;(ZrL=oIm+t: jmUt9c"fZ/9|M ls$zְ@SyiIaq9|z|;]G֞isĥnڼ)zK^aK}Rꇭ>V=*Y=mNg!k]*p GcdHVC ytڣˮ*\rטK.KLed{~> ]#2ʁn)?U{npɣ;zTac.}ԋմmc5cմG`o_CJN -ymWlvY˥s^utmZM_CNĸr5Q\GCA^t{J>? Z⋚%:4 .p ~aѻvW\!y`æhuҢ3pѨ$4PJ5fu3f"c=Me֮ٯ &:T+BzcdXkM!e y3VS[ )> Ml[=˗/&=Z1D} K<:~|U` ZRɪbLk]:;0Mar-pW]pɋkp`Ulzz4`\i?{][zQ CZ\Zo=ozc:ֲ.lk#lx`nF:~~$,ŁgZT Gi4 IjiUd틸\jiiPiu|EV=퉛ga~a1?0s;Z]zXwomzl=, ۵ѵ?+сu\%[KVB`ϦB_-/QJ1f67NަpzK*<87fw.V;Uj7,^՗ _R|3X #;6pi@GaD{…nԩSϟ:f!ѽEpx'N8::|#7BM,n3*N̄LkEyIz % ( .ÿ4kvLQBZ%F5dcnKsضK+Ԇi@cZo:;/~ꆁ9軖vhULeVWJ|mw?뗾wԖ(5![ՍU)m!-1m[ qovBdTG#rHU9j:k\uT|DrcnMjKG5dE:6t6ƐcW?bQ8c2bc smZM7Q lj6tDnJ]S3j*UKtVR;Rѐt6UuY`@Ǫ8Go[~UU4%UKYtK6}#* Zoml% JQ1% o`!QYujFq+ܶk #+ Xuᴌ 5hM+6ڧ!ֵ;>} tNɴ}އpϛC fZ.\0idY^1:*\r]w]oR`N8qtttGӦL @*2-TdZȴRi"HEL @*2-TdZȴRi"HEL @*2-TO &˲v;u ve3X'el6 0OzRѦe׺v5ul[<ŝ=:"*{̓L J)U3<(Rm/%eȬ(PiעL+RHz *%4yNYri<,Zlɴ`]ҍj] 8`2-Xti ʳ"gj(m⥛ZC`AiAiJJRj-=X<~OƗ,FvyuDymJZr?JHJ3L\zu5i\txQEKu̙CXc<L ɓO?QRi"HEd)Ei"HEtҥCL @*2-X'Ol6F@+@*2-TdZ$C3'HEL P"ɴRi"ӂe@-@*2-TdZȴRi2lL @*2-X^B]s&HEL W`dZȴRi\xqC;>u,ޅ >NŊ\reٳgd~']zQtbzo֩'?ɩӉ'._|ȍPڴǩS뮩0}[W:u}ȴǙ3gީ0w}2-`HEL طfSzlNT~JA^f-ͼfMd6#%2-n{_r5őؓFeS'e3,6-!< 'ЬU 6} i"^iZ~VQAk~1P#jMmYNJ+4m5nʮRH)nSp`dZZ}7>3hm}QB l\cFi/RiQfj~KF<:ɴ8ՎZDV͏\=dz6Ӕ,(M#l7jibRKS9GzT=mfϡX%`M=iцZj'> &X¸VvS: UѦ[w˯md!P{`:m O;'̥Ѧ^g.m]:GTӌMbމ+^P mZB`io1ԁS fc葴XeL|- iHEK ]6-4 `2-o9s\߁Klm6<J>,?~m]O> /p뭷;v3g+zfaKC g>s?c?vM7oKz긺UL #:ܽԁ87H.aoOӧ|n!˲gy[nz??{07za>Om4+˲3gμ=9::g>3ml4i2z w=Į Z=3O,_~ɓ=7|G}[o-m{𳁞CX]>be^߹z_*ku N2-XۿͲ}{_u ̍L mo{[e\]{ss#ӂ͡{+WvF02-Xwyk_z|+O>_S@L رcʄS?0fye׿KKz룏>zر,._|-<s?sS`fy{~?c_WwO?7Y0[2-Xf|$;әC%{y7tc=vttt7?쳏a!g L&R1]8d]kM~>!4=32-Dk^ii)!k*hb>O IDATMeΝ;җt(믿xQt{MY;~>ѿ HA3k:}??u,tmZF"HEL @*2-TdZȴRszvWW#Ț~jٳS8y?ᩣe9⏎N81ViO0GKfs=V?]x: `o:~˗*`zꕯ|6-=X@*2-Tτ6M8|T~qɴGmֲٌpi#0L@Ԧ7%[{N/ag/\uZ_Mt$`hZbVoR(-_ODFbH)8`ڴ/<(ЬU'Z…VS4@-NP5q8<2U^r1 Vhj܆]^IC9hX'z Ako:Zk%V5 L,tJRUMiT ఍9"^Gv"BslHց}AyÂBaayR5ͤ <ף!9IWs0fTZObiډj7VӸV;i:Ŗꢦkfj'YuiCm*6y8uQw+;O`zl><ԮG5~ ڴJ{Xz$m:V6-TiQXbƄp`iIC!r9+$ӢF1f=_r t,.]4u ~^xԩSc0fsթĉGGG/_>~|1;vXeF,`/'O:`ul::::qu]wtt4V=S|+oSQ6-<"HE6פ(y2iK)9VTkM?k j)rQ:JoE;UmZV|i[tK6ӻ@̵+hG#vmjoiiV3觠ęVzKy@ni!%'my*ܴh>G#TK lSu|jg3 6*Úr :R|pTKnyi+yj3nh`Di3v $l`y#6Dc.QY1yX3ie͹E[[ȮZ˙X TM9V)_E1dE9ۃ#XeZ~nϓGr{ʴ+45]vjJ%j)1'X߮{T|>;gZ{~fGq@Q)*XՒVʷJogAHioFOWӎ\dH0/.anQ,f+]v6jJ`R˓#XxXiPMfxM#馛nF"[2*V5^j7d:ZH)!( nX*9_Z;zT`6^~":F*&ZzzbxR߁/ol]Wم6́-mZnKqHHaC@)=HEʔV+~Y~DfVkeʞ2YM^4ΐIæY.-O6Rmx;b04r#)ϴleYĜPV,Wj7<,QLEūiG8cOr01h`<=Qʹ-%gBVE4,1f{J%Ę;si:hg\`{jӪmɟ+1>״U^QZ+t:i&42fY/uZ ?غNLHaLBh#! Y&4"HeDÃFyTx&nn)2˜gQ˱`n2gӵ\/4zEN|߮17pwSɧ4۬3o_6S[~g EOz[J?ӻ^XVƕ}j7yFuPM;u0G@:nꤵS,rA ڎdZUܫYkm:eޱrnZ&"M;c#~jxsɸSot4 <ߣ chfduQqKcȚ&δZoVs!%5i#8\1Gh2Ci"HeqZAb Y]ti@3ӺrJeG,`?!3fuر,6=3bŋ'ON:gZǎ'>1b=SӧX#Rir~/&:%d7L^m''pk_"ROΐq8C$W]U@}"O3 0{ʴ|V 9Az~f1~Lܦv7ezUއ:[.漄RQu9Po⯜!۶jCc).4]{ïR-Պjw*.P[(G`gZ\a8q [6lXZwtԸR{sop16y 6j״Sѐo=K;"~sMmuY_nI#Vs9@%kc mӪm(t뵩kT%;d 5eaxHTFK?ސc8\q* `Z3Ovo` /jR4М&CގsoSrm^uZht0=lMhZcy_LbSѠeLkiJ E,6-TdZȴRYp&Ez/Ven Ŏ^&N{ʴ+4̥yk_爏,iRW[xuٶZ'cLHU_~c'> o[}2FV1etHȌM0PL+mZ}=,äv6ʷ!fiTbZriD|Sa1)5'Lʵ#-VSCμا)=)GW_־i@ש&3=<"Vg\JɴRsV>rٳ# 0??uJ?"իF/`qFnӺ{F,5;::?~wO /}!3fuر{wYsw}'OtQ\F"HEL @*2-TdZȴRi"HEL @*2-TdZȴRi"HCm6,˶ԁۅ8BtdZx6ffH5{6-ؓ]NWmqw>l4_!f2-ؓRg6yQ;+&ۆ_J,[YQҮE$B)#19YdɥukVju+'ӂH7wr&dZ0 T<{0|y/^9 %:(iT||z1%T TZ*SKS̝2SΝ{K_z~X@$mZϬ}3: hdh;N- hb}CSG5itS})Ĉxu @*2-4tMdZdT@W2-TdZ#ԒiDK=ȴRiD OOjRL @*2-XM]&2-TdZh:i "dZȴшēi'dZ:`֞y/~SG1;z׻կfYv};   xwN}ѩuѦ9s{:y}3gμ=vl10nƩCѦOOoOvdYl11dZ?яfYرc_җ{G˱_/ЉL ?//??7˲[o]zׅ /L`0s2-X|,u ߳AK̙gXozӛz/}K6,˾zǎw{̙>}BڴQ~gwy[nի=M74Ux}oo9s|M0k2-v~+^s},-|gY S̚L _~0z7M???Ehɴ4|/PbD<@+WzO>뿾oݽ /|>?|wL!0Cڴ\wuЇ7k}_~gIZ2-Xyb{ի{|k__s|ϟַ׾v9ҦرcGkMY7sܹw,L ]G?W:Z=`q?/|#w[ne글Ҧf5bŋ]ȴ,{=կ~O"%"9PAkٶw)`2%zР ڴF+iNGy`dZL#.H&%{L vٶ<؀#b2{af{\S(gu77۳̙LM.f5n:,!I[/ui ALP[xڗUO8n>G~8`2-޶K?/yQ ς-m›~Qe8$OJ sX89j C+3(k=nímZlJ,8,?] iӢbBLgݻk`퇤ƧB2-R>#BRZsCdViV)Q]cS-ey<i1 ,o  *nU!>pވ ZY ᘳjH% pTdZ$TQW\z{ ?LNj)brÎqYS/@$ȴRib\pٳSGsON0;2-~}l(`h٣GiLPIENDB`libbonobo-2.32.1/doc/activation-api/html/bonobo-activation-Registration.html0000664000076400007640000005747311546334245024122 00000000000000 Registration

Registration

Registration — Registering CORBA objects to Bonobo Activation.

Synopsis

#include <bonobo-activation/bonobo-activation.h>

enum                Bonobo_RegistrationResult;
void                bonobo_activation_unregister_active_server
                                                        (const char *iid,
                                                         CORBA_Object obj);
void                bonobo_activation_registration_env_free
                                                        (GSList *reg_env);
GSList *            bonobo_activation_registration_env_set
                                                        (GSList *reg_env,
                                                         const char *name,
                                                         const char *value);
void                bonobo_activation_registration_env_set_global
                                                        (GSList *reg_env,
                                                         gboolean append_if_existing);
Bonobo_RegistrationResult  bonobo_activation_register_active_server
                                                        (const char *iid,
                                                         CORBA_Object obj,
                                                         GSList *reg_env);
const char *        bonobo_activation_iid_get           (void);
                    BonoboActivationPlugin;
                    BonoboActivationPluginObject;
void                bonobo_activation_plugin_use        (PortableServer_Servant servant,
                                                         gpointer impl_ptr);
void                bonobo_activation_plugin_unuse      (gpointer impl_ptr);

Description

When writing a component which can be activated through Bonobo Activation by clients, you need to be register your component to Bonobo Activation once it is created.

Details

enum Bonobo_RegistrationResult

typedef enum {
  Bonobo_ACTIVATION_REG_SUCCESS,
  Bonobo_ACTIVATION_REG_NOT_LISTED,
  Bonobo_ACTIVATION_REG_ALREADY_ACTIVE,
  Bonobo_ACTIVATION_REG_ERROR
} Bonobo_RegistrationResult;


bonobo_activation_unregister_active_server ()

void                bonobo_activation_unregister_active_server
                                                        (const char *iid,
                                                         CORBA_Object obj);

Unregisters obj with iid with the local bonobo-activation-server daemon.

iid :

IID of the server to unregister.

obj :

CORBA::Object to unregister.

bonobo_activation_registration_env_free ()

void                bonobo_activation_registration_env_free
                                                        (GSList *reg_env);

Frees the registration environment list, reg_env.

reg_env :

a GSList pointer.

bonobo_activation_registration_env_set ()

GSList *            bonobo_activation_registration_env_set
                                                        (GSList *reg_env,
                                                         const char *name,
                                                         const char *value);

Sets the environment variable name to value in the registration environment list reg_env.

reg_env :

a GSList pointer.

name :

the name of the env variable (must not be NULL).

value :

the value of the env variable (may be NULL).

Returns :

the new start of reg_env.

bonobo_activation_registration_env_set_global ()

void                bonobo_activation_registration_env_set_global
                                                        (GSList *reg_env,
                                                         gboolean append_if_existing);

Sets the global registration environment list with the contents of reg_env. If append_if_existing is set to FALSE, the an existing global list will be overwritten.

reg_env :

a GSList pointer.

append_if_existing :

whether or not to append to the global list.

bonobo_activation_register_active_server ()

Bonobo_RegistrationResult  bonobo_activation_register_active_server
                                                        (const char *iid,
                                                         CORBA_Object obj,
                                                         GSList *reg_env);

Registers obj with iid with the local bonobo-activation-server daemon.

If reg_env is not NULL, obj will be registered in such a way that if a client who's environment differs from the environment specified in reg_env, then another attempt to activate iid will not result in a reference to obj being returned, but rather another instance of iid being activated.

So, for example, you can ensure that a seperate instance of the component is activated for each distinct X display (and screen) by:

1
2
3
4
5
display_name = gdk_display_get_name (gdk_display_get_default());
reg_env = bonobo_activation_registration_env_set (
                           reg_env, "DISPLAY", display_name);
bonobo_activation_register_active_server (iid, active_server, reg_env);
bonobo_activation_registration_env_free (reg_env);

If reg_env is NULL, the global registration environment list will be used if it is set. See bonobo_activation_registration_env_set_global().

iid :

IID of the server to register.

obj :

CORBA::Object to register.

reg_env :

the registration environment.

Returns :

status of the registration.

bonobo_activation_iid_get ()

const char *        bonobo_activation_iid_get           (void);

Returns :


BonoboActivationPlugin

typedef struct {
	const BonoboActivationPluginObject *plugin_object_list;
	const char *description;
        gpointer dummy[8];
} BonoboActivationPlugin;

Components which want to be activated as shared libraries must export an BonoboActivationPlugin structure of name Bonobo_Plugin_info. An exmaple of how to use it folows:

static CORBA_Object
hi_shlib_make_object (PortableServer_POA poa,
                      const char *iid,
                      gpointer impl_ptr,
                      CORBA_Environment *ev)
{
        CORBA_Object object_ref;
        object_ref = impl_Hi__create (poa, ev);
        if (object_ref == CORBA_OBJECT_NIL
            || ev->_major != CORBA_NO_EXCEPTION) {
                printf ("Server cannot get objref\n");
                return CORBA_OBJECT_NIL;
        }
        bonobo_activation_plugin_use (poa, impl_ptr);
        return object_ref;
}
static const BonoboActivationPluginObject hi_plugin_list[] = {
        {
                "OAFIID:Hi:20000923",
                hi_shlib_make_object
        },
        {
                NULL
  	}
};
const BonoboActivationPlugin Bonobo_Plugin_info = {
        hi_plugin_list,
        "Hi example"
};


BonoboActivationPluginObject

typedef struct {
	const char *iid;

	/* This routine should call bonobo_activation_plugin_use(servant, impl_ptr), 
         * as should all routines which activate CORBA objects
	 * implemented by this shared library. This needs to be done 
         * before making any CORBA calls on the object, or
	 * passing that object around. First thing after servant creation 
         * always works. :) 
         */

        CORBA_Object (*activate) (PortableServer_POA poa,
                                  const char *iid, 
                                  gpointer impl_ptr, /* This pointer should be stored by the implementation
                                                         * to be passed to bonobo_activation_plugin_unuse() in the 
                                                         * implementation's destruction routine. */
				  CORBA_Environment *ev);
        gpointer dummy[4];
} BonoboActivationPluginObject;


bonobo_activation_plugin_use ()

void                bonobo_activation_plugin_use        (PortableServer_Servant servant,
                                                         gpointer impl_ptr);

You should call this routine to activate a shared library-based CORBA Object. It will be called by OAF if the component exports correctly an BonoboActivationPlugin structure named "Bonobo_Plugin_info".

servant :

The servant that was created

impl_ptr :

The impl_ptr that was passed to the original activation routine

bonobo_activation_plugin_unuse ()

void                bonobo_activation_plugin_unuse      (gpointer impl_ptr);

Side effects: May arrange for the shared library that the implementation is in to be unloaded.

When a shlib plugin for a CORBA object is destroying an implementation, it should call this function to make sure that the shared library is unloaded as needed.

impl_ptr :

The impl_ptr that was passed to the activation routine
libbonobo-2.32.1/doc/activation-api/html/async-activation.html0000664000076400007640000000550511546334245021276 00000000000000 Async Activation

Async Activation

Bonobo Activation also has a set of asynchronous activation interfaces so that you do not need to block on activation calls. The CORBA level is pretty simple: the activation context has a set of _async calls: OAF_ACtivationContext_activate_async and OAF_ACtivationContext_activate_from_id_async. Both of those calls take an OAFActivationCallback CORBA object as parameter. This object, which is supposed to be implemented by client applications (it is actually implemented in liboaf) will receive CORBA calls when the activation is finished:

module OAF {
        interface ActivationCallback {
                oneway void report_activation_failed (in string reason);
                oneway void report_activation_succeeded (in ActivationResult result);
        };
};

Of course, libbonobo-activation provides comvenient wrappers for those CORBA functions. Those are named bonobo_activation_activate_async and bonobo_activation_activate_from_id_async.

libbonobo-2.32.1/doc/activation-api/html/lgpl.html0000664000076400007640000002166411546334245016764 00000000000000 GNU Lesser General Public License

GNU Lesser General Public License

Version 2.1, February 1999

Free Software Foundation, Inc. 
    59 Temple Place, Suite 330
    Boston
    MA 02111-1307
    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 Licenses are intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users.

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.

This license, the Lesser General Public License, applies to some specially designated software packages--typically libraries--of the Free Software Foundation and other authors who decide to use it. You can use it too, but we suggest you first think carefully about whether this license or the ordinary General Public License is the better strategy to use in any particular case, based on the explanations below.

When we speak of free software, we are referring to freedom of use, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish); that you receive source code or can get it if you want it; that you can change the software and use pieces of it in new free programs; and that you are informed that you can do these things.

To protect your rights, we need to make restrictions that forbid distributors to deny you these rights or to ask you to surrender these rights. These restrictions translate to certain responsibilities for you if you distribute copies of the library or if you modify it.

For example, if you distribute copies of the library, whether gratis or for a fee, you must give the recipients all the rights that we gave you. You must make sure that they, too, receive or can get the source code. If you link other code with the library, you must provide complete object files to the recipients, so that they can relink them with the library after making changes to the library and recompiling it. And you must show them these terms so they know their rights.

We protect your rights with a two-step method: (1) we copyright the library, and (2) we offer you this license, which gives you legal permission to copy, distribute and/or modify the library.

To protect each distributor, we want to make it very clear that there is no warranty for the free library. Also, if the library is modified by someone else and passed on, the recipients should know that what they have is not the original version, so that the original author's reputation will not be affected by problems that might be introduced by others.

Finally, software patents pose a constant threat to the existence of any free program. We wish to make sure that a company cannot effectively restrict the users of a free program by obtaining a restrictive license from a patent holder. Therefore, we insist that any patent license obtained for a version of the library must be consistent with the full freedom of use specified in this license.

Most GNU software, including some libraries, is covered by the ordinary GNU General Public License. This license, the GNU Lesser General Public License, applies to certain designated libraries, and is quite different from the ordinary General Public License. We use this license for certain libraries in order to permit linking those libraries into non-free programs.

When a program is linked with a library, whether statically or using a shared library, the combination of the two is legally speaking a combined work, a derivative of the original library. The ordinary General Public License therefore permits such linking only if the entire combination fits its criteria of freedom. The Lesser General Public License permits more lax criteria for linking other code with the library.

We call this license the "Lesser" General Public License because it does Less to protect the user's freedom than the ordinary General Public License. It also provides other free software developers Less of an advantage over competing non-free programs. These disadvantages are the reason we use the ordinary General Public License for many libraries. However, the Lesser license provides advantages in certain special circumstances.

For example, on rare occasions, there may be a special need to encourage the widest possible use of a certain library, so that it becomes a de-facto standard. To achieve this, non-free programs must be allowed to use the library. A more frequent case is that a free library does the same job as widely used non-free libraries. In this case, there is little to gain by limiting the free library to free software only, so we use the Lesser General Public License.

In other cases, permission to use a particular library in non-free programs enables a greater number of people to use a large body of free software. For example, permission to use the GNU C Library in non-free programs enables many more people to use the whole GNU operating system, as well as its variant, the GNU/Linux operating system.

Although the Lesser General Public License is Less protective of the users' freedom, it does ensure that the user of a program that is linked with the Library has the freedom and the wherewithal to run that program using a modified version of the Library.

The precise terms and conditions for copying, distribution and modification follow. Pay close attention to the difference between a "work based on the library" and a "work that uses the library". The former contains code derived from the library, whereas the latter must be combined with the library in order to run.

libbonobo-2.32.1/doc/activation-api/html/server-arch.html0000664000076400007640000001174211546334245020243 00000000000000 Server architecture

Server architecture

The Bonobo Activation server is split in 2 parts: the ObjectDirectory which contains the list of all servers on a given machine, and the ActivationContext which contains the list of all ObjectDirectories. It contains by default the local ObjectDirectory and you can add inside other distant ObjectDirectories.

Each server is described by its .server file which contains among others the IDL interfaces this server implements, some specific properties and an IID (Implementation ID). Each IID has to be unique. Its format is pretty simple:

OAFIID:program_name:UUID

The UUID is supposed to be generated by the uuidgen program. program_name has to be an ASCII string without comma (','), square bracket ('[]'), or forward slash ('/') characters.

Each CORBA server on a given machine is thus identified in a unique way. CORBA servers on different machines are uniquely identified through the AID (Activation ID). The AID format is also pretty simple:

OAFAID:[IID,user,host,domain]

user is the user unix login. host is a DNS domain name or stringified IP address. domain is is a string describing what use area the object has.

One important thing to understand about these AID and IID is that the ObjectDirectory deals exclusively with IIDs (it is stritcly local) and the ActivationContext deals with AIDs since it can associate a set of user, host and domain to each IID it gets from one of its ObjectDirectory.

As a result of this architecture, activation requests should go to the ActivationContext and registrations to the ObjectDirectory.

Figure 1. The Bonobo Activation architecture

The Bonobo Activation architecture


The idea behind this is that when you make a request on the ActivationContext (like query), it will:

  • make sure it has an up-to-date list of all the Servers with a call to ObjectDirectory::get_servers for each of its ObjectDirectory.

  • loop through this list to try to satisfy the query with the given requirements and sort-order.

  • activate the corresponding object with ObjectDirectory::activate (this is not exactly what happens since there are optimizations to save this call but the general idea is right).

libbonobo-2.32.1/doc/activation-api/html/style.css0000644000076400007640000001205611546334245017003 00000000000000.synopsis, .classsynopsis { /* tango:aluminium 1/2 */ background: #eeeeec; border: solid 1px #d3d7cf; padding: 0.5em; } .programlisting { /* tango:sky blue 0/1 */ background: #e6f3ff; border: solid 1px #729fcf; padding: 0.5em; } .variablelist { padding: 4px; margin-left: 3em; } .variablelist td:first-child { vertical-align: top; } @media screen { sup a.footnote { position: relative; top: 0em ! important; } /* this is needed so that the local anchors are displayed below the naviagtion */ div.footnote a[name], div.refnamediv a[name], div.refsect1 a[name], div.refsect2 a[name], div.index a[name], div.glossary a[name], div.sect1 a[name] { position: relative; padding-top:4.5em; } /* this seems to be a bug in the xsl style sheets when generating indexes */ div.index div.index { top: 0em; } /* make space for the fixed navigation bar and add space at the bottom so that * link targets appear somewhat close to top */ body { padding-top: 3.2em; padding-bottom: 20em; } /* style and size the navigation bar */ table.navigation#top { position: fixed; /* tango:scarlet red 0/1 */ background: #ffe6e6; border: solid 1px #ef2929; margin-top: 0; margin-bottom: 0; top: 0; left: 0; height: 3em; z-index: 10; } .navigation a, .navigation a:visited { /* tango:scarlet red 3 */ color: #a40000; } .navigation a:hover { /* tango:scarlet red 1 */ color: #ef2929; } td.shortcuts { /* tango:scarlet red 1 */ color: #ef2929; font-size: 80%; white-space: nowrap; } } @media print { table.navigation { visibility: collapse; display: none; } div.titlepage table.navigation { visibility: visible; display: table; /* tango:scarlet red 0/1 */ background: #ffe6e6; border: solid 1px #ef2929; margin-top: 0; margin-bottom: 0; top: 0; left: 0; height: 3em; } } .navigation .title { font-size: 200%; } div.gallery-float { float: left; padding: 10px; } div.gallery-float img { border-style: none; } div.gallery-spacer { clear: both; } a, a:visited { text-decoration: none; /* tango:sky blue 2 */ color: #3465a4; } a:hover { text-decoration: underline; /* tango:sky blue 1 */ color: #729fcf; } div.table table { border-collapse: collapse; border-spacing: 0px; /* tango:aluminium 3 */ border: solid 1px #babdb6; } div.table table td, div.table table th { /* tango:aluminium 3 */ border: solid 1px #babdb6; padding: 3px; vertical-align: top; } div.table table th { /* tango:aluminium 2 */ background-color: #d3d7cf; } hr { /* tango:aluminium 3 */ color: #babdb6; background: #babdb6; border: none 0px; height: 1px; clear: both; } .footer { padding-top: 3.5em; /* tango:aluminium 3 */ color: #babdb6; text-align: center; font-size: 80%; } .warning { /* tango:orange 0/1 */ background: #ffeed9; border-color: #ffb04f; } .note { /* tango:chameleon 0/0.5 */ background: #d8ffb2; border-color: #abf562; } .note, .warning { padding: 0.5em; border-width: 1px; border-style: solid; } .note h3, .warning h3 { margin-top: 0.0em } .note p, .warning p { margin-bottom: 0.0em } /* blob links */ h2 .extralinks, h3 .extralinks { float: right; /* tango:aluminium 3 */ color: #babdb6; font-size: 80%; font-weight: normal; } .annotation { /* tango:aluminium 5 */ color: #555753; font-size: 80%; font-weight: normal; } /* code listings */ .listing_code .programlisting .cbracket { color: #a40000; } /* tango: scarlet red 3 */ .listing_code .programlisting .comment { color: #a1a39d; } /* tango: aluminium 4 */ .listing_code .programlisting .function { color: #000000; font-weight: bold; } .listing_code .programlisting .function a { color: #11326b; font-weight: bold; } /* tango: sky blue 4 */ .listing_code .programlisting .keyword { color: #4e9a06; } /* tango: chameleon 3 */ .listing_code .programlisting .linenum { color: #babdb6; } /* tango: aluminium 3 */ .listing_code .programlisting .normal { color: #000000; } .listing_code .programlisting .number { color: #75507b; } /* tango: plum 2 */ .listing_code .programlisting .preproc { color: #204a87; } /* tango: sky blue 3 */ .listing_code .programlisting .string { color: #c17d11; } /* tango: chocolate 2 */ .listing_code .programlisting .type { color: #000000; } .listing_code .programlisting .type a { color: #11326b; } /* tango: sky blue 4 */ .listing_code .programlisting .symbol { color: #ce5c00; } /* tango: orange 3 */ .listing_frame { /* tango:sky blue 1 */ border: solid 1px #729fcf; padding: 0px; } .listing_lines, .listing_code { margin-top: 0px; margin-bottom: 0px; padding: 0.5em; } .listing_lines { /* tango:sky blue 0.5 */ background: #a6c5e3; /* tango:aluminium 6 */ color: #2e3436; } .listing_code { /* tango:sky blue 0 */ background: #e6f3ff; } .listing_code .programlisting { /* override from previous */ border: none 0px; padding: 0px; } .listing_lines pre, .listing_code pre { margin: 0px; } libbonobo-2.32.1/doc/activation-api/html/bonobo-activation-Utilities.html0000664000076400007640000004375411546334245023420 00000000000000 Utilities

Utilities

Utilities — Random misc utilities to manipulate Bonobo_ServerInfo structures.

Synopsis

#include <bonobo-activation/bonobo-activation.h>

enum                Bonobo_ActivationPropertyType;
Bonobo_ActivationProperty * bonobo_server_info_prop_find
                                                        (Bonobo_ServerInfo *server,
                                                         const char *prop_name);
Bonobo_ActivationID  bonobo_activation_info_stringify   (const BonoboActivationInfo *actinfo);
BonoboActivationInfo * bonobo_activation_servinfo_to_actinfo
                                                        (const Bonobo_ServerInfo *servinfo);
BonoboActivationInfo * bonobo_activation_id_parse       (const CORBA_char *actid);
BonoboActivationInfo * bonobo_activation_info_new       (void);
void                bonobo_activation_info_free         (BonoboActivationInfo *actinfo);
const char *        bonobo_server_info_prop_lookup      (Bonobo_ServerInfo *server,
                                                         const char *prop_name,
                                                         GSList *i18n_languages);
typedef             Bonobo_ServerInfoList;
Bonobo_ServerInfo * bonobo_activation_get_default_component_for_mime_type
                                                        (const char *mime_type);
GList *             bonobo_activation_get_all_components_for_mime_type
                                                        (const char *mime_type);

Description

Details

enum Bonobo_ActivationPropertyType

typedef enum {
  Bonobo_ACTIVATION_P_STRING,
  Bonobo_ACTIVATION_P_NUMBER,
  Bonobo_ACTIVATION_P_BOOLEAN,
  Bonobo_ACTIVATION_P_STRINGV
} Bonobo_ActivationPropertyType;


bonobo_server_info_prop_find ()

Bonobo_ActivationProperty * bonobo_server_info_prop_find
                                                        (Bonobo_ServerInfo *server,
                                                         const char *prop_name);

Tries to find a server with the given property. Returns NULL if not found.

server :

the server where to seek the data.

prop_name :

the data to seek in the server.

Returns :

a pointer to the Bonobo_ActivationProperty structure.

bonobo_activation_info_stringify ()

Bonobo_ActivationID  bonobo_activation_info_stringify   (const BonoboActivationInfo *actinfo);

Warning

bonobo_activation_info_stringify is deprecated and should not be used in newly-written code.

Serializes actinfo into a char *. Should be freed with g_free().

actinfo :

the BonoboActivationInfo to flatten.

Returns :

the serialized version of actinfo.

bonobo_activation_servinfo_to_actinfo ()

BonoboActivationInfo * bonobo_activation_servinfo_to_actinfo
                                                        (const Bonobo_ServerInfo *servinfo);

Warning

bonobo_activation_servinfo_to_actinfo is deprecated and should not be used in newly-written code.

This function converts a Bonobo_ServerInfo structure to a BonoboActivationInfo structure. The returned structure should be freed with bonobo_activation_info_free.

servinfo :

An array of Bonobo_ServerInfo structures.

Returns :

a newly allocated initialized BonoboActivationInfo structure.

bonobo_activation_id_parse ()

BonoboActivationInfo * bonobo_activation_id_parse       (const CORBA_char *actid);

Warning

bonobo_activation_id_parse is deprecated and should not be used in newly-written code.

Returns a pointer to a newly allocated BonoboActivationInfo structure (to be freed with bonobo_activation_info_free) initialized with the data of actid.

actid :

the activation id structure.

Returns :

the BonoboActivationInfo corresponding to actid.

bonobo_activation_info_new ()

BonoboActivationInfo * bonobo_activation_info_new       (void);

Warning

bonobo_activation_info_new is deprecated and should not be used in newly-written code.

This function allocates a BonoboActicationInfo structure and returns it. Should NOT be called from outside of this code.

Returns :

a newly allocated non-initialized BonoboActicationInfo structure.

bonobo_activation_info_free ()

void                bonobo_activation_info_free         (BonoboActivationInfo *actinfo);

Warning

bonobo_activation_info_free is deprecated and should not be used in newly-written code.

Frees actinfo.

actinfo :

the BonoboActivationInfo structure to free.

bonobo_server_info_prop_lookup ()

const char *        bonobo_server_info_prop_lookup      (Bonobo_ServerInfo *server,
                                                         const char *prop_name,
                                                         GSList *i18n_languages);

Returns :


Bonobo_ServerInfoList

typedef CORBA_sequence_Bonobo_ServerInfo Bonobo_ServerInfoList;


bonobo_activation_get_default_component_for_mime_type ()

Bonobo_ServerInfo * bonobo_activation_get_default_component_for_mime_type
                                                        (const char *mime_type);

Query the MIME database for the default Bonobo component to be activated to view files of MIME type mime_type.

mime_type :

a const char * containing a mime type, e.g. "image/png".

Returns :

a Bonobo_ServerInfo * representing the OAF server to be activated to get a reference to the proper component.

Since 2.16.0


bonobo_activation_get_all_components_for_mime_type ()

GList *             bonobo_activation_get_all_components_for_mime_type
                                                        (const char *mime_type);

Return an alphabetically sorted list of Bonobo_ServerInfo data structures representing all Bonobo components registered to handle files of mime_type (and supertypes).

mime_type :

a const char * containing a mime type, e.g. "image/png".

Returns :

a GList * where the elements are Bonobo_ServerInfo * representing components that can handle mime_type.

Since 2.16.0

libbonobo-2.32.1/doc/activation-api/html/tutorial.html0000664000076400007640000001417411546334245017667 00000000000000 Bonobo Activation tutorial

Bonobo Activation tutorial

What is Bonobo Activation ?

Bonobo Activation (originally named OAF) was designed as a replacement for the limited libgnorba library used in older GNOME released. bonobo-activation is responsible on GNOME 2.x systems for the activation of CORBA objects. bonobo-activation allows you to browse the available CORBA servers on your system (running or not). It keeps track of the running servers so that if you ask for a server which is already running, you will not start it again but will reuse the already running one.

The need for a replacement

Gnorba works well in a limited number of cases and suffers of a number of design issues. More specifically:

  • It cannot handle the non-local case gracefully. ie: you cannot start a remote CORBA server with bonobo-activation.

  • It uses evil hacks to keep track of the system's CosNaming service making it unusable on systems where an X server is not running. (for details, read bonobo-activation code ;-)

  • bonobo-activation allows you to only request specific servers by their name: you cannot ask for a server which provides a specific service. You have to ask for a server which you know provides a specific service.

Bonobo Activation was designed to address these issues. The remote issue is completely solved by the Bonobo Activation daemon (see Bonobo Activation Architecture), the evil hacks regarding X are part of our past and the grand OAF query langage (see Bonobo Activation Query Langage) gives you the ability to perform arbitrary queries on the database of CORBA servers.

Basically, Bonobo Activation keeps track of all the CORBA servers installed on your machine and can track any other machine's CORBA servers provided you set up Bonobo Activation correctly and allows you to perform queries on the properties of these servers. The following very simple example will make things rather clear:

CORBA_Object o = bonobo_activation_activate ("repo_ids.has ('IDL:GNOME/Graph/Layout:1.0')",
                                             NULL, 0, NULL, &ev);
      

This will ask for a component which supports the GNOME/Graph/Layout:1.0 interface. You can also do much more complicated things. Bonobo Activation will find one whcih matches the query and will take all the necessary measures required to get the server running (if it is a shared library progam, it will load the relevant library in memory. If you need a Factory, it will launch the factory and request the factory to create the relevant object).

Getting started

Here follows a very simple-stupid example of what you can do with Bonobo Activation. The complete API description of bonobo activation, the Bonobo Activation query langage reference and the .server file format reference are included in this document and are recommended readings. Reading Bonobo Activation Architecture is also a good idea.

libbonobo-2.32.1/doc/activation-api/html/checklist.html0000664000076400007640000000714611546334245017776 00000000000000 Checklist

Checklist

If you plan to use Bonobo Activation for your own CORBA servers, you should use the following simple checklist.

  • Create a unique UUID for your CORBA server by using libuuid and uuidgen (both are available by anonymous ftp from tsx-11.mit.edu in /pub/linux/packages/ext2fs. These are part of the e2fsprogs package.

  • Create a proper .server file for your server describing its IDL interfaces, its main properties and the way it is to be activated.

  • Call bonobo_activation_init (make sure you do not initialize twice by calling bonobo_activation_is_initialized). Then, call bonobo_activation_active_server_register to register yourself as running to the Bonobo Activation daemon.

If you are a client willing to activate a few servers, it is a little simpler: you just must make sure you call the bonobo_activation_init function and you can then call bonobo_activation_query or bonobo_activation_activate or bonobo_activation_activate_from_id.

Here, put a real-life example of a client and a server.

The non-local case

Here, present how to use setup the system for the non-local case. If anyone is willing to write this part, mail gnome-components-list@gnome.org. in the meantime, you can have a look at the code in gnome-libs HEAD from cvs. (I never had time to go look at it)

libbonobo-2.32.1/doc/activation-api/html/query-syntax.html0000664000076400007640000002274011546334245020513 00000000000000 Syntax

Syntax

Constants

  • 'string': As in SQL, delimited by single quotes. Example: 'mystring'

  • 'stringv' (string arrays): A comma-separated list of strings, surrounded by square brackets. Example: ['red','blue']

  • 'number': Floating point decimals. (aka "whatever atof() accepts" :)

  • 'boolean': TRUE or FALSE (other common boolean value identifiers also accepted, but not encouraged).

Field identifiers

Names of fields are attributes of a ServerInfo record. These include 'server_type', 'location_info', and 'iid', even though these are explicitly stored instead of just other attributes.

Some pseudo-fields are also available - they are all prefaced with an underscore:

  • _active : Whether the server is currently running (boolean)

Variables

Variables are various miscellaneous data items that are part of the environment. The syntax for referring to a variable is a '$' sign followed by the variable name. The following variables are available:

  • $hostname : the hostname that the requesting client is running on.

  • $domain : the "domain" that the client is requesting activation in.

Functions

Functions perform transformations on data and return a result. There are two possible syntaxes for a function call:

	funcname(field, other-arguments)
	field.funcname(other-arguments...)

Internally, 'field.funcname(other-arguments...)' is translated to be exactly the same as 'funcname(field, other-arguments)', so 'priority.max()' is exactly the same as 'max(priority)'. Function names are case insensitive. The following functions are available:

  • defined(expression) : Returns a boolean value that indicates whether the given expression is defined for the current record. For example, using a field name would indicate whether that field is defined for the record.

  • has_one(stringv1, stringv2) : Returns a boolean value that indicates whether any of the strings in the 'stringv2' array are contained in the 'stringv1' array.

  • has_all(stringv1, stringv2) : Returns a boolean value that indicates whether all of the strings in the 'stringv2' array are contained in the 'stringv1' array.

  • has(stringv, string) Returns a boolean value that indicates whether 'string' is contained in the 'stringv' array.

  • prefer_by_list_order(string, stringv) This function is intended to use as a sort condition when you have a prioritized list of preferred values. It returns -1 if the 'string' is not in the 'stringv' array, otherwise it's position measured from the end of 'stringv'. The result is that the first item is most preferred, items after that are next most preferred, and items not in the list are lowest priority.

  • max(expr) Evaluates 'expr' over all the available server information records in the database, and returns the maximum value as dictated by the normal sort order for the data type of 'expr'. This function is not valid for string vectors.

  • min(expr) As with the 'max' function, but finds the minimum value.

Operators

More complex queries can be built using the various operators described below.

Warning

When building complex expressions, make sure they are fully parenthized or your query will fail in weird ways.

Table 1. Binary relational operators.

Operator Signification
== equal
!= not equal
< less than
> greater than
<= less than or equal
>= greater than or equal


Table 2. Binary boolean operators.

Operator Signification
&& or AND and
|| or OR or
^^ or XOR exclusive or


Table 3. Unary boolean operators.

Operator Signification
~ or NOT not


Table 4. Binary arithmetic operators.

Operator Signification
/ divided by
+ plus
- minus
* times


Table 5. Unary arithmetic operators.

Operator Signification
- negate


libbonobo-2.32.1/doc/activation-api/html/migrating.html0000664000076400007640000000360011546334245017775 00000000000000 Migrating from gnorba to Bonobo-activation

Migrating from gnorba to Bonobo-activation

Someone write this ?

libbonobo-2.32.1/doc/activation-api/html/right.png0000644000076400007640000000073011546334245016750 00000000000000PNG  IHDRw=bKGD pHYs  ~tIME2 I%=eIDATx!o@.'**M0$$?1~vIeEuLl&4䝠Bݛ|>$ݶoc9|t$D9nnBjBRIsI:H8UPN1fcsN95M㧖ɵ 束1~pEe$I 7nrDf!;`'ykI䲤sI_]y^^I>O>?YBIENDB`libbonobo-2.32.1/doc/activation-api/html/home.png0000644000076400007640000000121611546334245016563 00000000000000PNG  IHDRw=bKGD pHYs  ~tIME1KvIDATxՕkq?rCp ~CnpCAAJ .B-\'G]:ܠC -(8 Ԁ!fDғklbRoyxwpðIJ<of_-@RHf֟t^ښ$Q|pgv;X^^&s(bwwZF9&3඙ ^IRZUE.0Z]]U PYM8HGIekqqҀ! $۬3n e{-/seeeÌXOͷ$8==USQRR'9-s+B^ Cەs+%<7W :2IENDB`libbonobo-2.32.1/doc/activation-api/html/query-langage.html0000664000076400007640000000716611546334245020570 00000000000000 Bonobo Activation Query Langage

Bonobo Activation Query Langage

The Bonobo Activation query langage

Bonobo Activation has a query language used to request components with specific properties from the Bonobo Activation daemon. The API call bonobo_activation_activate takes a requirements parameter which is a string containing a specific request in the OAF query langage. A simple example is:

CORBA_Object o = bonobo_activation_activate ("repo_ids.has ('IDL:GNOME/Graph/Layout:1.0')",
                                             NULL, 0, NULL, &ev);

This will ask for a component which supports the GNOME/Graph/Lyout:1.0 interface. You can also do much more complicated things.

"(repo_ids.has_all (['IDL:Bonobo/Control:1.0',
		     'IDL:Nautilus/ContentView:1.0']) OR
  repo_ids.has_one (['IDL:Bonobo/Control:1.0',
                     'IDL:Bonobo/Embeddable:1.0'])) AND
  repo_ids.has('IDL:Bonobo/PersistFile:1.0') AND
  foo:bar.defined()"

This would get any component with both 'Control' and 'ContentView' or with either 'Control' or 'Embeddable' as long as they supported the 'PersistFile' interface, and defined the attribute 'foo:bar'.

libbonobo-2.32.1/doc/activation-api/html/left.png0000644000076400007640000000071311546334245016566 00000000000000PNG  IHDRw=bKGD pHYs  ~tIME1&[(XIDATx!OPE*ID%~ꊯ"p'ŏ`sܖrKf hmiIz}ܯI.p\`x l?l[,Hk<#c%\AUx[S7n6rzEs1j@NL$ݤi0 5/}\EKIo͓$a0jdFbkIAh>WlC'?tk;|/t*INZ^`y4Nr]׮ J<ڐt`X1@p䀸dZ')hK $V?%]+LsgUK"w53OIENDB`libbonobo-2.32.1/doc/activation-api/html/api-reference.html0000664000076400007640000000517711546334245020534 00000000000000 API Reference

API Reference

Initialization — Initializing Bonobo Activation and its ORB.
Query and Activation — Querying for components and Activating them
Utilities — Random misc utilities to manipulate Bonobo_ServerInfo structures.
Registration — Registering CORBA objects to Bonobo Activation.
Debugging

This part presents the function reference for the bonobo activation library.

libbonobo-2.32.1/doc/activation-api/html/attribute-tag.html0000664000076400007640000004053011546334245020573 00000000000000 The oaf_attribute tag

The oaf_attribute tag

Defining servers is useful (that is what .goad files did light-years ago) but to use all the power of Bonobo Activation (i.e. queries ;-), you have to define oaf_attributes for each of those oaf_server entries. An example is worth all words.

<oaf_info>
  <oaf_server iid="OAFIID:Bonobo_Sample_Echo_Factory" type="exe"
	      location="/usr/lib/bonobo-2.0/samples/bonobo-echo-2">
    <oaf_attribute name="repo_ids" type="stringv">
      <item value="IDL:Bonobo/GenericFactory:1.0"/>
    </oaf_attribute>
    <oaf_attribute name="name" type="string" value="Echo component factory"/>
    <oaf_attribute name="description" type="string"
                   value="Bonobo Echo server factory"/>
  </oaf_server>

  <oaf_server iid="OAFIID:Bonobo_Sample_Echo" type="factory"
	      location="OAFIID:Bonobo_Sample_Echo_Factory">
    <oaf_attribute name="repo_ids" type="stringv">
      <item value="IDL:Demo/Echo:1.0"/>
    </oaf_attribute>
    <oaf_attribute name="name" type="string" value="Echo component"/>
    <oaf_attribute name="description" type="string"
                   value="Bonobo Echo server sample program"/>
  </oaf_server>
</oaf_info>

Each oaf_server entry defines a set of attributes. Each attribute has a given name, type, and value. The types of the attributes are those defined in the Bonobo Activation query langage reference (the section called “Constants”). Type name should be non-caps.

Values of type stringv are represented as follows:

<oaf_attribute name="repo_ids" type="stringv">
  <item value="IDL:Bonobo/Unknown:1.0"/>
  <item value="IDL:Bonobo/Control:1.0"/>
</oaf_attribute>

All other types' values are simply in the value field.

A certain number of attributes have been normalized for GNOME. If a component uses any attribute from the list, it ought to have the meaning described here. Their list follows.

Table 6. Normalized attributes

Attribute name Type Signification  
repo_ids stringv the list of all IDL interfaces this component implements, including inherited interfaces. If Bonobo::Unknown is one of the interfaces, the list should include all interfaces for which a queryInterface operation on the component will succeed.  
description string a human readable string describing what the component can do  
name string a short name for the component, suitable for display to the end user, e.g. in a menu.  
bonobo:editable boolean if the component allows editing of its content no
bonobo:supported_uri_schemes stringv a list of protocols this component knows how to handle. This only really makes sense if the component implements one of the following interfaces: Bonobo::PersistFile or Nautilus::View  
bonobo:supported_mime_types stringv a list of MIME types this component understands as input. In addition to specific MIME types, it is possible to include supertypes (e.g. image/* or text/*) or */* to indicate the component can display any MIME type. Specifying */* is only necessary if neither supported_uri_schemes nor additional_uri_schemes is not specified, otherwise */* is assumed. This only really makes sense if the component implements one of the following interfaces: Bonobo::PersistStream, Bonobo::PersistFile, or Nautilus::View.  
bonobo:additional_uri_schemes stringv a list of protocols this component knows how to handle. The component is applicable to any URI which uses such a protocol, even if its MIME type is not among supported_mime_types. This only really makes sense if the component implements one of the following interfaces: Bonobo::PersistFile or Nautilus::View  
bonobo:moniker stringv FIXME  
bonobo:moniker_extender stringv FIXME  
bonobo:environment stringv List of environment variables that must have the same values in both activator (client) and component. This is useful for exe type factories. If there is already a running process serving the component being activated, its environment variables are compared to the ones in the activator. If they match, a new reference from that process is returned. If not, a new process is started, which receives an evironment modified to match the one in the activator for the environment keys specified in this property.  
nautilus:view_as_name string a suitable name for use as a View as name. Several labels in Nautilus will be built from this value, see the following attributes. This must be present for any Bonobo Controls that can be used as Nautilus views.  
nautilus:view_as_label string a label (without keyboard mnemonic) for the component's menu item in Nautilus' View as list (next to the zoom control) as well as for its entry in the Open with Other Viewer window. It defaults to View as name where name is the value of the view_as_name attribute. It is discouraged to rely on this fallback because it makes correct translation impossible for some languages.  
nautilus:view_as_label_with_mnemonic string a label (with keyboard mnemonic) for the component's menu item in Nautilus' View menu. Thus the mnemonic must not clash with one from a built-in menu item. If omitted, the value of view_as_label will be used instead.  
nautilus:viewer_label string a label for the component's menu item in the Open With submenu of Nautilus' context menu for files and the File menu. It defaults to name Viewer where name is the value of the view_as_name attribute. It is discouraged to rely on this fallback because it makes correct translation impossible for some languages.  
nautilus:required_directory_content_mime_types stringv if the component is to be activated on a URI with MIME type special/directory, it is only really applicable if the directory contains a file with one of the MIME types listed in this attribute. As before, supertypes like audio/* are allowed. If this attribute is omitted, */* is assumed.  
nautilus:sidebar_panel_name string a suitable name for use as a sidebar panel label name. This must be implemented by any Bonobo Controls that can be used as a Nautilus sidebar view.  
nautilus:context_menu_handler      
nautilus:can_handle_multiple_files      
nautilus:property_page_name      
nautilusverb:verbname      


If bonobo:supported_uri_schemes or bonobo:additional_uri_schemes is specified but bonobo:supported_mime_types is not, it is assumed the component can handle any type of data that might come via that protocol. Some schemes may not even have an associated MIME type for any given URI, for instance irc: or news:

If bonobo:supported_mime_types is specified but bonobo:supported_uri_schemes is not, the component is assumed to be able to handle all common URI schemes (possible definition: anything gnome-vfs can handle).

If neither bonobo:supported_uri_schemes nor bonobo:additional_uri_schemes nor bonobo:supported_mime_types is specified, it is assumed the component cannot handle any data at all in a general way and should never be generically selected for such purposes.

Nautilus considers a component as a view if it can handle the data from a URI and implements the Nautilus::View interface or Bonobo::Control and Bonobo::PersistStream or Bonobo::PersistFile.

libbonobo-2.32.1/doc/activation-api/html/terms.html0000664000076400007640000006137111546334245017157 00000000000000 TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION

TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION

Section 0

This License Agreement applies to any software library or other program which contains a notice placed by the copyright holder or other authorized party saying it may be distributed under the terms of this Lesser General Public License (also called this License). Each licensee is addressed as you.

A library means a collection of software functions and/or data prepared so as to be conveniently linked with application programs (which use some of those functions and data) to form executables.

The Library, below, refers to any such software library or work which has been distributed under these terms. A work based on the Library means either the Library or any derivative work under copyright law: that is to say, a work containing the Library or a portion of it, either verbatim or with modifications and/or translated straightforwardly into another language. (Hereinafter, translation is included without limitation in the term modification.)

Source code for a work means the preferred form of the work for making modifications to it. For a library, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the library.

Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running a program using the Library is not restricted, and output from such a program is covered only if its contents constitute a work based on the Library (independent of the use of the Library in a tool for writing it). Whether that is true depends on what the Library does and what the program that uses the Library does.

Section 1

You may copy and distribute verbatim copies of the Library's complete source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and distribute a copy of this License along with the Library.

You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee.

Section 2

You may modify your copy or copies of the Library or any portion of it, thus forming a work based on the Library, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions:

  1. The modified work must itself be a software library.

  2. You must cause the files modified to carry prominent notices stating that you changed the files and the date of any change.

  3. You must cause the whole of the work to be licensed at no charge to all third parties under the terms of this License.

  4. If a facility in the modified Library refers to a function or a table of data to be supplied by an application program that uses the facility, other than as an argument passed when the facility is invoked, then you must make a good faith effort to ensure that, in the event an application does not supply such function or table, the facility still operates, and performs whatever part of its purpose remains meaningful.

    (For example, a function in a library to compute square roots has a purpose that is entirely well-defined independent of the application. Therefore, Subsection 2d requires that any application-supplied function or table used by this function must be optional: if the application does not supply it, the square root function must still compute square roots.)

    These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Library, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Library, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it.

    Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Library.

    In addition, mere aggregation of another work not based on the Library with the Library (or with a work based on the Library) on a volume of a storage or distribution medium does not bring the other work under the scope of this License.

Section 3

You may opt to apply the terms of the ordinary GNU General Public License instead of this License to a given copy of the Library. To do this, you must alter all the notices that refer to this License, so that they refer to the ordinary GNU General Public License, version 2, instead of to this License. (If a newer version than version 2 of the ordinary GNU General Public License has appeared, then you can specify that version instead if you wish.) Do not make any other change in these notices.

Once this change is made in a given copy, it is irreversible for that copy, so the ordinary GNU General Public License applies to all subsequent copies and derivative works made from that copy.

This option is useful when you wish to copy part of the code of the Library into a program that is not a library.

Section 4

You may copy and distribute the Library (or a portion or derivative of it, under Section 2 ) in object code or executable form under the terms of Sections 1 and 2 above provided that you accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange.

If distribution of object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place satisfies the requirement to distribute the source code, even though third parties are not compelled to copy the source along with the object code.

Section 5

A program that contains no derivative of any portion of the Library, but is designed to work with the Library by being compiled or linked with it, is called a work that uses the Library. Such a work, in isolation, is not a derivative work of the Library, and therefore falls outside the scope of this License.

However, linking a work that uses the Library with the Library creates an executable that is a derivative of the Library (because it contains portions of the Library), rather than a work that uses the library. The executable is therefore covered by this License. Section 6 states terms for distribution of such executables.

When a work that uses the Library uses material from a header file that is part of the Library, the object code for the work may be a derivative work of the Library even though the source code is not. Whether this is true is especially significant if the work can be linked without the Library, or if the work is itself a library. The threshold for this to be true is not precisely defined by law.

If such an object file uses only numerical parameters, data structure layouts and accessors, and small macros and small inline functions (ten lines or less in length), then the use of the object file is unrestricted, regardless of whether it is legally a derivative work. (Executables containing this object code plus portions of the Library will still fall under Section 6.)

Otherwise, if the work is a derivative of the Library, you may distribute the object code for the work under the terms of Section 6. Any executables containing that work also fall under Section 6, whether or not they are linked directly with the Library itself.

Section 6

As an exception to the Sections above, you may also combine or link a "work that uses the Library" with the Library to produce a work containing portions of the Library, and distribute that work under terms of your choice, provided that the terms permit modification of the work for the customer's own use and reverse engineering for debugging such modifications.

You must give prominent notice with each copy of the work that the Library is used in it and that the Library and its use are covered by this License. You must supply a copy of this License. If the work during execution displays copyright notices, you must include the copyright notice for the Library among them, as well as a reference directing the user to the copy of this License. Also, you must do one of these things:

  1. Accompany the work with the complete corresponding machine-readable source code for the Library including whatever changes were used in the work (which must be distributed under Sections 1 and 2 above); and, if the work is an executable linked with the Library, with the complete machine-readable work that uses the Library, as object code and/or source code, so that the user can modify the Library and then relink to produce a modified executable containing the modified Library. (It is understood that the user who changes the contents of definitions files in the Library will not necessarily be able to recompile the application to use the modified definitions.)

  2. Use a suitable shared library mechanism for linking with the Library. A suitable mechanism is one that (1) uses at run time a copy of the library already present on the user's computer system, rather than copying library functions into the executable, and (2) will operate properly with a modified version of the library, if the user installs one, as long as the modified version is interface-compatible with the version that the work was made with.

  3. Accompany the work with a written offer, valid for at least three years, to give the same user the materials specified in Subsection 6a , above, for a charge no more than the cost of performing this distribution.

  4. If distribution of the work is made by offering access to copy from a designated place, offer equivalent access to copy the above specified materials from the same place.

  5. Verify that the user has already received a copy of these materials or that you have already sent this user a copy.

For an executable, the required form of the "work that uses the Library" must include any data and utility programs needed for reproducing the executable from it. However, as a special exception, the materials to be distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable.

It may happen that this requirement contradicts the license restrictions of other proprietary libraries that do not normally accompany the operating system. Such a contradiction means you cannot use both them and the Library together in an executable that you distribute.

Section 7

You may place library facilities that are a work based on the Library side-by-side in a single library together with other library facilities not covered by this License, and distribute such a combined library, provided that the separate distribution of the work based on the Library and of the other library facilities is otherwise permitted, and provided that you do these two things:

  1. Accompany the combined library with a copy of the same work based on the Library, uncombined with any other library facilities. This must be distributed under the terms of the Sections above.

  2. Give prominent notice with the combined library of the fact that part of it is a work based on the Library, and explaining where to find the accompanying uncombined form of the same work.

Section 8

You may not copy, modify, sublicense, link with, or distribute the Library except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense, link with, or distribute the Library is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance.

Section 9

You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Library or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Library (or any work based on the Library), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Library or works based on it.

Section 10

Each time you redistribute the Library (or any work based on the Library), the recipient automatically receives a license from the original licensor to copy, distribute, link with or modify the Library subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties with this License.

Section 11

If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Library at all. For example, if a patent license would not permit royalty-free redistribution of the Library by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Library.

If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply, and the section as a whole is intended to apply in other circumstances.

It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice.

This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License.

Section 12

If the distribution and/or use of the Library is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Library under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License.

Section 13

The Free Software Foundation may publish revised and/or new versions of the Lesser General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns.

Each version is given a distinguishing version number. If the Library specifies a version number of this License which applies to it and any later version, you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Library does not specify a license version number, you may choose any version ever published by the Free Software Foundation.

Section 14

If you wish to incorporate parts of the Library into other free programs whose distribution conditions are incompatible with these, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally.

NO WARRANTY

Section 15

BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.

Section 16

IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.

libbonobo-2.32.1/doc/activation-api/tmpl/0000775000076400007640000000000011546334245015217 500000000000000libbonobo-2.32.1/doc/activation-api/tmpl/initialization.sgml0000664000076400007640000000234211546334245021053 00000000000000 Initialization Initializing Bonobo Activation and its ORB. These functions allow you to initialize Bonobo Activation and the ORB it is using. Initializing Bonobo Activation launches the Bonobo Activation daemon if it is not started. @void: @Returns: @argc: @argv: @Returns: @argc: @argv: @Returns: @void: @Returns: @ev: @Returns: libbonobo-2.32.1/doc/activation-api/tmpl/debugging.sgml0000664000076400007640000000061611546334245017761 00000000000000 Debugging @void: @Returns: libbonobo-2.32.1/doc/activation-api/tmpl/utilities.sgml0000664000076400007640000000311711546334245020040 00000000000000 Utilities Random misc utilities to manipulate Bonobo_ServerInfo structures. @Bonobo_ACTIVATION_P_STRING: @Bonobo_ACTIVATION_P_NUMBER: @Bonobo_ACTIVATION_P_BOOLEAN: @Bonobo_ACTIVATION_P_STRINGV: @server: @prop_name: @Returns: @actinfo: @Returns: @servinfo: @Returns: @actid: @Returns: @void: @Returns: @actinfo: @server: @prop_name: @i18n_languages: @Returns: @mime_type: @Returns: @mime_type: @Returns: libbonobo-2.32.1/doc/activation-api/tmpl/bonobo-activation-unused.sgml0000664000076400007640000000106511546334245022743 00000000000000 base types libbonobo-2.32.1/doc/activation-api/tmpl/base.sgml0000644000076400007640000000032011546334245016726 00000000000000 base libbonobo-2.32.1/doc/activation-api/tmpl/registration.sgml0000664000076400007640000000553111546334245020541 00000000000000 Registration Registering CORBA objects to Bonobo Activation. When writing a component which can be activated through Bonobo Activation by clients, you need to be register your component to Bonobo Activation once it is created. @Bonobo_ACTIVATION_REG_SUCCESS: @Bonobo_ACTIVATION_REG_NOT_LISTED: @Bonobo_ACTIVATION_REG_ALREADY_ACTIVE: @Bonobo_ACTIVATION_REG_ERROR: @iid: @obj: @reg_env: @reg_env: @name: @value: @Returns: @reg_env: @append_if_existing: @iid: @obj: @reg_env: @Returns: @void: @Returns: Components which want to be activated as shared libraries must export an BonoboActivationPlugin structure of name Bonobo_Plugin_info. An exmaple of how to use it folows: static CORBA_Object hi_shlib_make_object (PortableServer_POA poa, const char *iid, gpointer impl_ptr, CORBA_Environment *ev) { CORBA_Object object_ref; object_ref = impl_Hi__create (poa, ev); if (object_ref == CORBA_OBJECT_NIL || ev->_major != CORBA_NO_EXCEPTION) { printf ("Server cannot get objref\n"); return CORBA_OBJECT_NIL; } bonobo_activation_plugin_use (poa, impl_ptr); return object_ref; } static const BonoboActivationPluginObject hi_plugin_list[] = { { "OAFIID:Hi:20000923", hi_shlib_make_object }, { NULL } }; const BonoboActivationPlugin Bonobo_Plugin_info = { hi_plugin_list, "Hi example" }; @plugin_object_list: @description: @dummy: @iid: @activate: @dummy: @servant: @impl_ptr: @impl_ptr: libbonobo-2.32.1/doc/activation-api/tmpl/types.sgml0000644000076400007640000000042611546334245017167 00000000000000 types libbonobo-2.32.1/doc/activation-api/tmpl/query.sgml0000664000076400007640000000402111546334245017165 00000000000000 Query and Activation Querying for components and Activating them This section describes how you can query for components and activate them. Two set of functions are described: synchronous and asynchronous ones. The asynchronous version of the functions allow you to avoid blocking your application while the CORBA servers are started. @Bonobo_ACTIVATION_RESULT_OBJECT: @Bonobo_ACTIVATION_RESULT_SHLIB: @Bonobo_ACTIVATION_RESULT_NONE: @requirements: @selection_order: @ev: @Returns: @requirements: @selection_order: @flags: @ret_aid: @ev: @Returns: @aid: @flags: @ret_aid: @ev: @Returns: This is the signature of the function which you must pass as a callback to the asynchrounous activation functions. @activated_object: @error_reason: @user_data: @requirements: @selection_order: @flags: @callback: @user_data: @ev: @aid: @flags: @callback: @user_data: @ev: @name: @value: libbonobo-2.32.1/doc/activation-api/lgpl.sgml0000644000076400007640000007277711173072711016020 00000000000000
GNU Lesser General Public License 2000 Free Software Foundation, Inc.
Free Software Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
.
Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed.
Version 2.1, February 1999
Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public Licenses are intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. 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. This license, the Lesser General Public License, applies to some specially designated software packages--typically libraries--of the Free Software Foundation and other authors who decide to use it. You can use it too, but we suggest you first think carefully about whether this license or the ordinary General Public License is the better strategy to use in any particular case, based on the explanations below. When we speak of free software, we are referring to freedom of use, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish); that you receive source code or can get it if you want it; that you can change the software and use pieces of it in new free programs; and that you are informed that you can do these things. To protect your rights, we need to make restrictions that forbid distributors to deny you these rights or to ask you to surrender these rights. These restrictions translate to certain responsibilities for you if you distribute copies of the library or if you modify it. For example, if you distribute copies of the library, whether gratis or for a fee, you must give the recipients all the rights that we gave you. You must make sure that they, too, receive or can get the source code. If you link other code with the library, you must provide complete object files to the recipients, so that they can relink them with the library after making changes to the library and recompiling it. And you must show them these terms so they know their rights. We protect your rights with a two-step method: (1) we copyright the library, and (2) we offer you this license, which gives you legal permission to copy, distribute and/or modify the library. To protect each distributor, we want to make it very clear that there is no warranty for the free library. Also, if the library is modified by someone else and passed on, the recipients should know that what they have is not the original version, so that the original author's reputation will not be affected by problems that might be introduced by others. Finally, software patents pose a constant threat to the existence of any free program. We wish to make sure that a company cannot effectively restrict the users of a free program by obtaining a restrictive license from a patent holder. Therefore, we insist that any patent license obtained for a version of the library must be consistent with the full freedom of use specified in this license. Most GNU software, including some libraries, is covered by the ordinary GNU General Public License. This license, the GNU Lesser General Public License, applies to certain designated libraries, and is quite different from the ordinary General Public License. We use this license for certain libraries in order to permit linking those libraries into non-free programs. When a program is linked with a library, whether statically or using a shared library, the combination of the two is legally speaking a combined work, a derivative of the original library. The ordinary General Public License therefore permits such linking only if the entire combination fits its criteria of freedom. The Lesser General Public License permits more lax criteria for linking other code with the library. We call this license the "Lesser" General Public License because it does Less to protect the user's freedom than the ordinary General Public License. It also provides other free software developers Less of an advantage over competing non-free programs. These disadvantages are the reason we use the ordinary General Public License for many libraries. However, the Lesser license provides advantages in certain special circumstances. For example, on rare occasions, there may be a special need to encourage the widest possible use of a certain library, so that it becomes a de-facto standard. To achieve this, non-free programs must be allowed to use the library. A more frequent case is that a free library does the same job as widely used non-free libraries. In this case, there is little to gain by limiting the free library to free software only, so we use the Lesser General Public License. In other cases, permission to use a particular library in non-free programs enables a greater number of people to use a large body of free software. For example, permission to use the GNU C Library in non-free programs enables many more people to use the whole GNU operating system, as well as its variant, the GNU/Linux operating system. Although the Lesser General Public License is Less protective of the users' freedom, it does ensure that the user of a program that is linked with the Library has the freedom and the wherewithal to run that program using a modified version of the Library. The precise terms and conditions for copying, distribution and modification follow. Pay close attention to the difference between a "work based on the library" and a "work that uses the library". The former contains code derived from the library, whereas the latter must be combined with the library in order to run. TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION Section 0 This License Agreement applies to any software library or other program which contains a notice placed by the copyright holder or other authorized party saying it may be distributed under the terms of this Lesser General Public License (also called this License). Each licensee is addressed as you. A library means a collection of software functions and/or data prepared so as to be conveniently linked with application programs (which use some of those functions and data) to form executables. The Library, below, refers to any such software library or work which has been distributed under these terms. A work based on the Library means either the Library or any derivative work under copyright law: that is to say, a work containing the Library or a portion of it, either verbatim or with modifications and/or translated straightforwardly into another language. (Hereinafter, translation is included without limitation in the term modification.) Source code for a work means the preferred form of the work for making modifications to it. For a library, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the library. Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running a program using the Library is not restricted, and output from such a program is covered only if its contents constitute a work based on the Library (independent of the use of the Library in a tool for writing it). Whether that is true depends on what the Library does and what the program that uses the Library does. Section 1 You may copy and distribute verbatim copies of the Library's complete source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and distribute a copy of this License along with the Library. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. Section 2 You may modify your copy or copies of the Library or any portion of it, thus forming a work based on the Library, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: The modified work must itself be a software library. You must cause the files modified to carry prominent notices stating that you changed the files and the date of any change. You must cause the whole of the work to be licensed at no charge to all third parties under the terms of this License. If a facility in the modified Library refers to a function or a table of data to be supplied by an application program that uses the facility, other than as an argument passed when the facility is invoked, then you must make a good faith effort to ensure that, in the event an application does not supply such function or table, the facility still operates, and performs whatever part of its purpose remains meaningful. (For example, a function in a library to compute square roots has a purpose that is entirely well-defined independent of the application. Therefore, Subsection 2d requires that any application-supplied function or table used by this function must be optional: if the application does not supply it, the square root function must still compute square roots.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Library, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Library, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Library. In addition, mere aggregation of another work not based on the Library with the Library (or with a work based on the Library) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. Section 3 You may opt to apply the terms of the ordinary GNU General Public License instead of this License to a given copy of the Library. To do this, you must alter all the notices that refer to this License, so that they refer to the ordinary GNU General Public License, version 2, instead of to this License. (If a newer version than version 2 of the ordinary GNU General Public License has appeared, then you can specify that version instead if you wish.) Do not make any other change in these notices. Once this change is made in a given copy, it is irreversible for that copy, so the ordinary GNU General Public License applies to all subsequent copies and derivative works made from that copy. This option is useful when you wish to copy part of the code of the Library into a program that is not a library. Section 4 You may copy and distribute the Library (or a portion or derivative of it, under Section 2 ) in object code or executable form under the terms of Sections 1 and 2 above provided that you accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange. If distribution of object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place satisfies the requirement to distribute the source code, even though third parties are not compelled to copy the source along with the object code. Section 5 A program that contains no derivative of any portion of the Library, but is designed to work with the Library by being compiled or linked with it, is called a work that uses the Library. Such a work, in isolation, is not a derivative work of the Library, and therefore falls outside the scope of this License. However, linking a work that uses the Library with the Library creates an executable that is a derivative of the Library (because it contains portions of the Library), rather than a work that uses the library. The executable is therefore covered by this License. Section 6 states terms for distribution of such executables. When a work that uses the Library uses material from a header file that is part of the Library, the object code for the work may be a derivative work of the Library even though the source code is not. Whether this is true is especially significant if the work can be linked without the Library, or if the work is itself a library. The threshold for this to be true is not precisely defined by law. If such an object file uses only numerical parameters, data structure layouts and accessors, and small macros and small inline functions (ten lines or less in length), then the use of the object file is unrestricted, regardless of whether it is legally a derivative work. (Executables containing this object code plus portions of the Library will still fall under Section 6.) Otherwise, if the work is a derivative of the Library, you may distribute the object code for the work under the terms of Section 6. Any executables containing that work also fall under Section 6, whether or not they are linked directly with the Library itself. Section 6 As an exception to the Sections above, you may also combine or link a "work that uses the Library" with the Library to produce a work containing portions of the Library, and distribute that work under terms of your choice, provided that the terms permit modification of the work for the customer's own use and reverse engineering for debugging such modifications. You must give prominent notice with each copy of the work that the Library is used in it and that the Library and its use are covered by this License. You must supply a copy of this License. If the work during execution displays copyright notices, you must include the copyright notice for the Library among them, as well as a reference directing the user to the copy of this License. Also, you must do one of these things: Accompany the work with the complete corresponding machine-readable source code for the Library including whatever changes were used in the work (which must be distributed under Sections 1 and 2 above); and, if the work is an executable linked with the Library, with the complete machine-readable work that uses the Library, as object code and/or source code, so that the user can modify the Library and then relink to produce a modified executable containing the modified Library. (It is understood that the user who changes the contents of definitions files in the Library will not necessarily be able to recompile the application to use the modified definitions.) Use a suitable shared library mechanism for linking with the Library. A suitable mechanism is one that (1) uses at run time a copy of the library already present on the user's computer system, rather than copying library functions into the executable, and (2) will operate properly with a modified version of the library, if the user installs one, as long as the modified version is interface-compatible with the version that the work was made with. Accompany the work with a written offer, valid for at least three years, to give the same user the materials specified in Subsection 6a , above, for a charge no more than the cost of performing this distribution. If distribution of the work is made by offering access to copy from a designated place, offer equivalent access to copy the above specified materials from the same place. Verify that the user has already received a copy of these materials or that you have already sent this user a copy. For an executable, the required form of the "work that uses the Library" must include any data and utility programs needed for reproducing the executable from it. However, as a special exception, the materials to be distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. It may happen that this requirement contradicts the license restrictions of other proprietary libraries that do not normally accompany the operating system. Such a contradiction means you cannot use both them and the Library together in an executable that you distribute. Section 7 You may place library facilities that are a work based on the Library side-by-side in a single library together with other library facilities not covered by this License, and distribute such a combined library, provided that the separate distribution of the work based on the Library and of the other library facilities is otherwise permitted, and provided that you do these two things: Accompany the combined library with a copy of the same work based on the Library, uncombined with any other library facilities. This must be distributed under the terms of the Sections above. Give prominent notice with the combined library of the fact that part of it is a work based on the Library, and explaining where to find the accompanying uncombined form of the same work. Section 8 You may not copy, modify, sublicense, link with, or distribute the Library except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense, link with, or distribute the Library is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. Section 9 You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Library or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Library (or any work based on the Library), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Library or works based on it. Section 10 Each time you redistribute the Library (or any work based on the Library), the recipient automatically receives a license from the original licensor to copy, distribute, link with or modify the Library subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties with this License. Section 11 If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Library at all. For example, if a patent license would not permit royalty-free redistribution of the Library by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Library. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply, and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. Section 12 If the distribution and/or use of the Library is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Library under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. Section 13 The Free Software Foundation may publish revised and/or new versions of the Lesser General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Library specifies a version number of this License which applies to it and any later version, you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Library does not specify a license version number, you may choose any version ever published by the Free Software Foundation. Section 14 If you wish to incorporate parts of the Library into other free programs whose distribution conditions are incompatible with these, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY Section 15 BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. Section 16 IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
libbonobo-2.32.1/doc/Makefile.in0000664000076400007640000004440211546333027013321 00000000000000# Makefile.in generated by automake 1.11.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008, 2009 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@ VPATH = @srcdir@ 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 = doc DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.in 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_$(V)) am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) am__v_GEN_0 = @echo " GEN " $@; AM_V_at = $(am__v_at_$(V)) am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) 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 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@ ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ AR = @AR@ AS = @AS@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ BONOBO_ACTIVATION_LT_VERSION_INFO = @BONOBO_ACTIVATION_LT_VERSION_INFO@ BONOBO_MAJOR_VERSION = @BONOBO_MAJOR_VERSION@ BONOBO_MICRO_VERSION = @BONOBO_MICRO_VERSION@ BONOBO_MINOR_VERSION = @BONOBO_MINOR_VERSION@ BONOBO_SLAY = @BONOBO_SLAY@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DISABLE_DEPRECATED_CFLAGS = @DISABLE_DEPRECATED_CFLAGS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GREP = @GREP@ GTHREAD_CFLAGS = @GTHREAD_CFLAGS@ GTHREAD_LIBS = @GTHREAD_LIBS@ GTKDOC_CHECK = @GTKDOC_CHECK@ GTKDOC_MKPDF = @GTKDOC_MKPDF@ GTKDOC_REBASE = @GTKDOC_REBASE@ HTML_DIR = @HTML_DIR@ IF_BSD_PS = @IF_BSD_PS@ IF_CYGWIN_PS = @IF_CYGWIN_PS@ IF_POSIX_PS = @IF_POSIX_PS@ 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@ LD = @LD@ LDFLAGS = @LDFLAGS@ LEX = @LEX@ LEXLIB = @LEXLIB@ LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ LFLAGS = @LFLAGS@ LIBBONOBO_CFLAGS = @LIBBONOBO_CFLAGS@ LIBBONOBO_LIBS = @LIBBONOBO_LIBS@ LIBBONOBO_LT_VERSION_INFO = @LIBBONOBO_LT_VERSION_INFO@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIPO = @LIPO@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ NM = @NM@ NMEDIT = @NMEDIT@ OBJDUMP = @OBJDUMP@ OBJEXT = @OBJEXT@ ORBIT_IDL = @ORBIT_IDL@ OTOOL = @OTOOL@ OTOOL64 = @OTOOL64@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PERL_PATH = @PERL_PATH@ PKG_CONFIG = @PKG_CONFIG@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ PS_PATH = @PS_PATH@ RANLIB = @RANLIB@ SEARCHPATHSEP = @SEARCHPATHSEP@ SED = @SED@ SERVER_CFLAGS = @SERVER_CFLAGS@ SERVER_LIBS = @SERVER_LIBS@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SOPREFIX = @SOPREFIX@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ WARN_CFLAGS = @WARN_CFLAGS@ XGETTEXT = @XGETTEXT@ YACC = @YACC@ YFLAGS = @YFLAGS@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ 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@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ lt_ECHO = @lt_ECHO@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ 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 = api activation activation-api EXTRA_DIST = NAMESPACE 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) --foreign doc/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --foreign doc/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 \ test -d "$(distdir)/$$subdir" \ || $(MKDIR_P) "$(distdir)/$$subdir" \ || exit 1; \ fi; \ done @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ 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: $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install 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: libbonobo-2.32.1/doc/activation/0000775000076400007640000000000011546334245013474 500000000000000libbonobo-2.32.1/doc/activation/test.server0000644000076400007640000000056111173072711015614 00000000000000 libbonobo-2.32.1/doc/activation/id-format.txt0000644000076400007640000000220111173072711016021 00000000000000 The Implementation ID (IID) These are strings that uniquely identify an implementation. The only restrictions on these are that they be ASCII, begin with "OAFIID:", and not contain the comma (','), square bracket ('[]'), or forward slash ('/') characters. If you are really at a loss on how to create these, here is a suggested format: OAFIID:program_name:UUID (where UUID is a uuid as generated by uuidgen). The only absolute requirement about these is that they uniquely identify an implementation. Human readability is a "would be very nice" goal. The Activation ID (AID) These are strings that tell how to bootstrap a specific object instance. This means that environmental information such as hostname, user, etc. They have the following format: OAFAID:[IID,user,host,domain] IID format has been described above. 'user' is the login username. 'host' is a DNS domain name or stringified IP address. 'domain' is a string describing what use area the object has - normally this will be 'user' (XXX not clearly defined yet). Manual creation of AIDs is unsupported - instead, just store and use the ones returned by the activate() operation. libbonobo-2.32.1/doc/activation/Makefile.am0000644000076400007640000000035311173072711015440 00000000000000EXTRA_DIST=\ bonobo-activation.dia \ bonobo-activation-use.dia \ INTERNALS \ id-format.txt \ query-language.txt \ limitations.txt \ debugging.txt \ standard-attributes.txt \ test.server \ bonobo-activation-base-service.txt libbonobo-2.32.1/doc/activation/bonobo-activation.dia0000644000076400007640000000404111173072711017476 00000000000000]Ko8WmaӢVۤ趗(=8JKIs߾%۱%M%NX q 98Wh>GO7>|) 5&.I6Ӈ<(!x 4eB;M{ %-+J/ "-)FQ*-I@vh53=ig7-5GL3ߏPڽ1[B{.fr+y]b+?rRK/.ߘc-%*(2*QZ%XW_ 1,i1+-0cS"+m:ca hK¡|Z <meÆ4h #߅rLȂ>F5!NmgVM9juk=VʀE< Ao)O(%Cu^SF .x=>$^v'vZ ٽ9aC}mk܆6tw<$Fmh0"E#*#$ӫ#LJ0r9JAZ lVxZE5]*PzrE&`!\`)%mRLڇZO_+H ~ 7ns58/@qUg vjN -GY_]{Ufq5QJQ6vlajʘVP1$,GrPTG* őx2 w\P:KyYSAXSA%Wz:'gMX(gؽa -,#6С3f=: Y";ك DYm/P+cؤ01"*b)lNt~v%RD{ӝ`fo4z]dԗ D ) դPMK!10=&t*8.F0Y  t>p~c HgM‚\U+oZZ* npKZwS5ͪ\W$D~6rrC#q3'L2ID^fZ,]>O`)ӞSUl\pI{iS6YFleUiϬoQ::mtTө.SZ׹Cuje6R,c]$!lks2Wd4J' ;Ws&h*l S;녱dL# +S,9сmLím56XX+V@S:xL^l㙅+g5ow<8Tt.-TP,KQv}/TTEcUKz{ +yV6mRrS\nfs1}<|)Zh_ 6(y?Q Mlibbonobo-2.32.1/doc/activation/standard-attributes.txt0000644000076400007640000001724611173072711020142 00000000000000 Standard .oafinfo file attributes. Not all components must specify all of these, but if they are present they ought to have these standardized meanings. A component should specify at least "repo_ids", "name" and "description" to be useful. Other attributes should be placed in a colon-separated namespace. General * "repo_ids" (stringv) - all the IDL interfaces this component implements, including inherited interfaces. If Bonobo::Unknown is one of the interfaces, this should include all interfaces that can be query_interface()d for. Fake interfaces like IDL:BonoboControl/text-plain:1.0 should _not_ be included. If this attribute is omitted, the object will be assuemd to support no IDL interfaces, which makes no sense. * "description" (string) - a free text description of the component, much like the gnorba description field. If omitted, the "name" attribute will be used, if present, otherwise the empty string. * "name" (string) - a short name suitable for display to the end user, e.g. in a menu. If omitted, the "description" attribute will be used, if present, otherwise the iid. * "scope" (stringv) - scope limitations of out of process components; 'lang' - activate per effective language 'display' - activate a component per display 'screen' - activate a component per screen Bonobo * "bonobo:editable" (boolean) - does this component allow editing of its contents? If omitted, assumed false or not applicable. * "bonobo:supported_mime_types" (stringv) - a list of mime types this component understands as input. In addition to specific mime types, it is possible to include supertypes (e.g. "image/*" or "text/*") or "*/*" to indicate the component can display any mime type. Specifying "*/*" is only necessary if "supported_uri_schemes" is not specified, otherwise it is assumed. This only really makes sense if the component implements one of the following interfaces: Bonobo::PersistStream, Bonobo::ProgressiveDataSink, Nautilus::View. * "bonobo:supported_uri_schemes" (stringv) - a list of protocols this component knows how to handle. This only really makes sense if the component implements one of the following interfaces: Bonobo::PersistFile or Nautilus::View If "bonobo:supported_uri_schemes" is specified but "bonobo:supported_mime_types" is not, it is assumed the component can handle any type of data that might come via that protocol. Some schemes may not even have an associated mime type for any given URI, for instance irc: or news: If "bonobo:supported_mime_types" is specified but "bonobo:supported_uri_schemes" is not, the component is assumed to be able to handle all common URI schemes (possible definition: anything gnome-vfs can handle). If neither "bonobo:supported_uri_schemes" nor "bonobo:supported_mime_types" is specified, it is assumed the component cannot handle any data at all in a general way and should never be generically selected for such purposes. Nautilus - Content Views * "nautilus:view_as_name" (string) - a suitable name for use as a view as name (it will be displayed as "View as " where is the name). This must be implemented by any Bonobo Embeddables or Controls that can be used as Nautilus views (for the content in the main window, not in the sidebar). * "nautilus:view_as_label" (string) - A string generally of the form "View as ". This is easier for translators to handle than composed strings. It also allows changes to that text, like "View with " rather than "View as ". * "nautilus:viewer_label" (string) - A string generally of the form " Viewer". This is easier for translators to handle than composed strings. I am not totally sure if the following two should be in the nautilus: or bonobo: namespace; I can see them being useful for other components at least in theory. Leaving as "nautilus:" attributes for now. * "nautilus:required_directory_content_mime_types" (stringv) - if the component is to be activated on a URI with mime type special/directory, it is only really applicable if the directory contains one of these mime types. As before, supertypes like "audio/*" are allowed. If this attribute is omitted, "*/*" is assumed. * "nautilus:required_uri_tester" (string) - this specifies the OAFIID of a component that implements the Nautilus::URITester interface (see proposal below). If the criteria established by all the other attributes are satisfied, an object with that OAFIID should be activated and its is_applicable() method should be called on the URI to test if it this component _really_, _really_ applies to the given URI. This should be used as a last resort. (Not yet implemented.) The reason for the "required_uri_tester" attribute is as follows. In Nautilus, we plan to have custom directory views that express higher-level semantics about certain directories, but that depend heavily on the directory contents. For example, there maybe "View as Version Controlled Directory" or the like which depends on their being a directory named "CVS/" in the appropriate directory. So in the most general case, we need to run some code specific to the component to make sure it is applicable to a given URI. Now, we could just activate the component, require it to have the URITester interface, do the test, and then destroy it to find out if it applies. But that might be quite heavyweight. So intead we specify the OAFIID of a different component, one which could be very lightweight (shlib or minimal exe that does not pull gnome/gtk stuff) which does the test and nothing else. If this attribute is not provided, no such testing is assumed necessary. Nautilus - Sidebar Views: * "nautilus:sidebar_panel_name" (string) - a suitable name for use as a sidebar panel label name. This must be implemented by any Bonobo Controls that can be used as a Nautilus sidebar view. * "nautilus:recommended_uri_schemes" (string) - the URI schemes this meta view is most recommended for. If "*" is included, this component is recommended for all schemes. If omitted or empty, it is not recommended for any. (Not yet implemented.) Vertigo: * "vertigo:category" - the name of the category a panel applet falls into, for purposes of generating the menu. General open questions * How does Bonobo::PersistStorage play into this? * An "icon" attribute has been proposed for component browser/selector purposes. If included it would have to be inline probably (base64-encoded png?) since the oafinfo file may not be on the same machine as the code doing the browsing or activation. * How to specify interesting info about applicable components when there is no relevant URI? For instance a regular dumb control, or something like the gnomines control where there is no relevant type. Maybe you only ever want to pick these off a list or activate a specific one by IID. Maybe controls that want to be activatable in nautilus somehow can just register their own URI scheme, for instance `gnome-control-mines:' for the gnomines thing. This seems like kind of a hack though. * Should "description" and the various name attributes be internationalized? If so, how? should there be other attributes with names like "description_${LANG}"? Someone proposed using lang="de"/lang="ru" in the XML tag. Nautilus-specific open questions * Should there be a way to use a Bonobo Control or Embeddable with Nautilus without requiring the developer to include a definition for "nautilus:sidebar_panel_name" or "nautilus:view_as_name"? * Should the user level of a component be an attribute? That lets just any component author set the user level instead of centralizing it. ================== module Nautilus { interface URITester { boolean is_applicable (string uri); } } libbonobo-2.32.1/doc/activation/bonobo-activation-use.dia0000644000076400007640000000152511173072711020274 00000000000000YMs0W0JqLzꡙz,jl' D}3H>w3V$/#Ǽ&ߪ,Ǚ xQލ̹[^׀X0bưls<0m,qVb)s,%18Lp{%ڪKldL˴k7 n0BXт&L5|I̭I!_wH,9A'#;Ȕ(ތj\|AQ$11A\Y? Axq`8*a${JEI~$6ȚNf>w@7<7ܦ"S@N= ug;v<,Xc{] TpنY&[73-n .HC( k˜/LcQt[yݨI8k,H ›/oľ`g E3PKfNM׉ r}7'Td@ LԕK{q)rt\dYҼ҂u0zW <6p@OTai쌗 ΟT|0VPvWl:OVpu2;,DJʢ>=IyvV LF-YlC:Gybѕfܙڤ-Df_JR4? -0}_}Hv4Rk*@libbonobo-2.32.1/doc/activation/query-language.txt0000644000076400007640000001003411173072711017070 00000000000000This file documents the Grand OAF Database Query Language. Constants: Strings: As in SQL, delimited by single quotes. Example: 'mystring' Stringvs (string arrays): A comma-separated list of strings, surrounded by square brackets. Example: ['red','blue'] Numbers: Floating point decimals. (aka "whatever atof() accepts" :) Booleans: TRUE or FALSE (other common boolean value identifiers also accepted, but not encouraged). Field identifiers: Names of fields are attributes of a ServerInfo record. These include 'type', 'location_info', and 'iid', even though these are explicitly stored instead of just other attributes. Some pseudo-fields are also available - they are all prefaced with an underscore: _active - Whether the server is currently running (boolean) Variables: Variables are various miscellaneous data items that are part of the environment. The syntax for referring to a variable is a '$' sign followed by the variable name. The following variables are available: $hostname - the hostname that the requesting client is running on. $domain - the "domain" that the client is requesting activation in. Functions: Functions perform transformations on data and return a result. There are two possible syntaxes for a function call: funcname(arguments) field.funcname(other-arguments...) Internally, 'field.funcname(other-arguments...)' is translated to be exactly the same as 'funcname(field, other-arguments)', so 'priority.max()' is exactly the same as 'max(priority)'. The following functions are available: defined(expression) Returns a boolean value that indicates whether the given expression is defined for the current record. For example, using a field name would indicate whether that field is defined for the record. has_one(stringv1, stringv2) Returns a boolean value that indicates whether any of the strings in the 'stringv2' array are contained in the 'stringv1' array. has_all(stringv1, stringv2) Returns a boolean value that indicates whether all of the strings in the 'stringv2' array are contained in the 'stringv1' array. has(stringv, string) Returns a boolean value that indicates whether 'string' is contained in the 'stringv' array. prefer_by_list_order(string, stringv) This function is intended to use as a sort condition when you have a prioritized list of preferred values. It returns -1 if the 'string' is not in the 'stringv' array, otherwise it's position measured from the end of 'stringv'. The result is that the first item is most preferred, items after that are next most preferred, and items not in the list are lowest priority. max(expr) Evaluates 'expr' over all the available server information records in the database, and returns the maximum value as dictated by the normal sort order for the data type of 'expr'. This function is not valid for string vectors. min(expr) As with the 'max' function, but finds the minimum value. Function names are case insensitive. Operators: Binary relational operators == equal != not equal < less than > greater than <= less than or equal >= greater than or equal Binary boolean operators &&, AND and ||, OR or ^^, XOR exclusive or Unary boolean operators ~, NOT not Binary arithmetic operators / divided by + plus - minus * times Unary arithmetic operators - negate Example queries: To get a component implementing the IDL:GNOME/Graph/Layout interface you might use: CORBA_Object o = oaf_activate ("repo_ids.has ('IDL:GNOME/Graph/Layout:1.0')", NULL, 0, NULL, &ev); A more complicated query might be: "(repo_ids.has_all (['IDL:Bonobo/Control:1.0', 'IDL:Nautilus/ContentView:1.0']) OR repo_ids.has_one (['IDL:Bonobo/Control:1.0', 'IDL:Bonobo/Embeddable:1.0'])) AND repo_ids.has('IDL:Bonobo/PersistFile:1.0') AND foo:bar.defined()" This would get any component with both 'Control' and 'ContentView' or with either 'Control' or 'Embeddable' as long as they supported the 'PersistFile' interface, and defined the attribute 'foo:bar'. libbonobo-2.32.1/doc/activation/limitations.txt0000644000076400007640000000067011173072711016503 00000000000000Objects activated by factories cannot automatically be activated via a different ObjectDirectory than the factory itself. Note that when activating a factory in the process of activating an object, the context of the ObjectDirectory will be used, not the context of the client. Shared libraries servers must be activated from an ObjectDirectory on the same host as the activating client. File accessability checking is not normally done. libbonobo-2.32.1/doc/activation/Makefile.in0000664000076400007640000002660311546333027015465 00000000000000# Makefile.in generated by automake 1.11.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008, 2009 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@ VPATH = @srcdir@ 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 = doc/activation DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.in 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_$(V)) am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) am__v_GEN_0 = @echo " GEN " $@; AM_V_at = $(am__v_at_$(V)) am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) am__v_at_0 = @ SOURCES = DIST_SOURCES = DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ AR = @AR@ AS = @AS@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ BONOBO_ACTIVATION_LT_VERSION_INFO = @BONOBO_ACTIVATION_LT_VERSION_INFO@ BONOBO_MAJOR_VERSION = @BONOBO_MAJOR_VERSION@ BONOBO_MICRO_VERSION = @BONOBO_MICRO_VERSION@ BONOBO_MINOR_VERSION = @BONOBO_MINOR_VERSION@ BONOBO_SLAY = @BONOBO_SLAY@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DISABLE_DEPRECATED_CFLAGS = @DISABLE_DEPRECATED_CFLAGS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GREP = @GREP@ GTHREAD_CFLAGS = @GTHREAD_CFLAGS@ GTHREAD_LIBS = @GTHREAD_LIBS@ GTKDOC_CHECK = @GTKDOC_CHECK@ GTKDOC_MKPDF = @GTKDOC_MKPDF@ GTKDOC_REBASE = @GTKDOC_REBASE@ HTML_DIR = @HTML_DIR@ IF_BSD_PS = @IF_BSD_PS@ IF_CYGWIN_PS = @IF_CYGWIN_PS@ IF_POSIX_PS = @IF_POSIX_PS@ 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@ LD = @LD@ LDFLAGS = @LDFLAGS@ LEX = @LEX@ LEXLIB = @LEXLIB@ LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ LFLAGS = @LFLAGS@ LIBBONOBO_CFLAGS = @LIBBONOBO_CFLAGS@ LIBBONOBO_LIBS = @LIBBONOBO_LIBS@ LIBBONOBO_LT_VERSION_INFO = @LIBBONOBO_LT_VERSION_INFO@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIPO = @LIPO@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ NM = @NM@ NMEDIT = @NMEDIT@ OBJDUMP = @OBJDUMP@ OBJEXT = @OBJEXT@ ORBIT_IDL = @ORBIT_IDL@ OTOOL = @OTOOL@ OTOOL64 = @OTOOL64@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PERL_PATH = @PERL_PATH@ PKG_CONFIG = @PKG_CONFIG@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ PS_PATH = @PS_PATH@ RANLIB = @RANLIB@ SEARCHPATHSEP = @SEARCHPATHSEP@ SED = @SED@ SERVER_CFLAGS = @SERVER_CFLAGS@ SERVER_LIBS = @SERVER_LIBS@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SOPREFIX = @SOPREFIX@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ WARN_CFLAGS = @WARN_CFLAGS@ XGETTEXT = @XGETTEXT@ YACC = @YACC@ YFLAGS = @YFLAGS@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ 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@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ lt_ECHO = @lt_ECHO@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ 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 = \ bonobo-activation.dia \ bonobo-activation-use.dia \ INTERNALS \ id-format.txt \ query-language.txt \ limitations.txt \ debugging.txt \ standard-attributes.txt \ test.server \ bonobo-activation-base-service.txt 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) --foreign doc/activation/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --foreign doc/activation/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: $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install 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: libbonobo-2.32.1/doc/activation/INTERNALS0000644000076400007640000000241711173072711014671 00000000000000Objects: ActivationContext: One per session. Performs queries on object directories. Gets an amalgamated list ObjectDirectory: Normally, one per user-system tuple. Maintains a database of objects. Activates objects upon request. ImplementationID (pseudo): Uniquely identifies an implementation. ActivationID (pseudo): ImplementationID, plus whatever other contextual information is necessary to activate the server (hostname, OD class, etc.) Use cases: Panel applet 1. User wants a new panel applet. 2. Panel asks ActivationContext->activate("impl_id") 3. AC asks ODs who has impl_id available. 4. AC looks through OD query results, looks for one that matches the requirements and preferences. (a) Narrow down list to those which match requirements. (b) Sort by preferences. (c) Choose first on list. 5. AC asks OD to activate server. 6. AC returns result. Bonobo component 1. User gets list of bonobo components (a) Query the AC for all objects that meet requirements, sort by preferences. 2. User chooses. 3. Proceed similar to above case from step 2. Editor 1. App says "give me an IDL:Editor:1.0". 2. AC searches through ODs (a) Narrow down list to those which match requirements. (b) Sort by preferences. (c) Choose first on list. XXX how to use defaults? libbonobo-2.32.1/doc/activation/debugging.txt0000644000076400007640000000171111173072711016077 00000000000000 Oaf debugging advice, version 0.1 Since it is not transparently obvious how to debug oaf the following suggestions may be of use. * Attach the debugger. It is not possible to run oaf in the debugger, instead you must activate oaf by doing a valid query; then attach the debugger to the process; This might be done like this; make install # this installs oaf where it can be run killall -9 oafd # asasinate any stale oafd oaf-run-query "repo_ids.has('foo')" # fire up a lurking oafd. ps -ax | grep oafd # get the of oafd libtool gdb ./oafd # start gdb on oafd attach # attach to the pid of the oaf daemon. * OAF_BARRIER_INIT Set this environment variable to 1. Anything using OAF will then hang in `oaf_init'. You can then attach to the process and execute the gdb command p barrier=0 After which you can set breakpoints to taste, or single-step. This is really useful for debugging the initial startup of oafd. libbonobo-2.32.1/doc/activation/bonobo-activation-base-service.txt0000644000076400007640000000472111173072711022133 00000000000000*** This is a detail of OAF internals. You do not need to know this information in order to write programs that use the OAF API. *** This whole setup is to allow finding objects that give us initial entry to a universe of CORBA objects. The references to these initial objects must be bootstrapped out of thin air, so we use well-known locations to check if they are running and to make their existence known when started. OAFRegistrationCategory: Attributes that an initial object needs to have. 'name' is the repo ID of the object that would need bootstrapping - IOW the object type. Currently this would be either IDL:OAF/ActivationContext:1.0 or IDL 'session_name' is to allow things like two different OD's on the same user/host/domain for different $DISPLAY. 'username', 'hostname' - in the traditional UNIX sense. 'domain' - I think this was supposed to work like 'session_name'. So broken and confusing - need to run through the usage in some sample cases to get it right. OAFRegistrationLocation: Provides the implementation of a "well-known location". liboaf comes with one that looks in local files in /tmp/orbit-sopwith. gnome-libs HEAD has one that looks at a root window property. OAFServiceActivator: A function that can get called to start an initial object if it can't be found by any of the OAFRegistrationLocations. gnome-libs defines one of these that tries to start oafd on a remote machine via rsh/ssh, but I think I forgot to write the accompanying OAFRegistrationLocation that checks for an existing one. Or something like that. OAF handles multiple OAFRegistrationLocations and OAFServiceActivators internally. BUGS: . You really want to be able to do things like use the ActivationContext listed on $DISPLAY even if you aren't in a GUI program, or be able to have remote ObjectDirectorys activated even in a local non-gnome-libs-HEAD program. The only solution that has presented itself so far is to install a shared library for each regloc/serviceactivator, then have liboaf run a small program that checks all the reglocs and returns the object requested. This is slow. This would also have problems if the non-GUI program was run as a daemon or something else (e.g. what if you have a BIFF-like program that gets run from procmailrc and tries to talk to Your Favorite Mail Check Program? $DISPLAY won't be set for /usr/bin/corbabiff) . Yes, the naming really sucks, but people writing OAF-using programs don't have to use this API so it's not too bad. - ECL libbonobo-2.32.1/COPYING0000644000076400007640000004311011173072711011527 00000000000000 GNU GENERAL PUBLIC LICENSE Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307 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 Library 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 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 Library General Public License instead of this License. libbonobo-2.32.1/configure.in0000664000076400007640000001646111546333001013014 00000000000000AC_PREREQ([2.59]) m4_define([bonobo_major_version],[2]) m4_define([bonobo_minor_version],[32]) m4_define([bonobo_micro_version],[1]) m4_define([bonobo_version],[bonobo_major_version.bonobo_minor_version.bonobo_micro_version]) AC_INIT([libbonobo],[bonobo_version],[http://bugzilla.gnome.org/enter_bug.cgi?product=bonobo&component=libbonobo]) AC_CONFIG_SRCDIR([bonobo/bonobo-moniker.h]) AC_CONFIG_HEADERS([config.h]) AM_INIT_AUTOMAKE([1.9 foreign no-dist-gzip dist-bzip2]) m4_ifdef([AM_SILENT_RULES],[AM_SILENT_RULES([yes])]) BONOBO_MAJOR_VERSION=bonobo_major_version BONOBO_MINOR_VERSION=bonobo_minor_version BONOBO_MICRO_VERSION=bonobo_micro_version AC_SUBST([BONOBO_MAJOR_VERSION]) AC_SUBST([BONOBO_MINOR_VERSION]) AC_SUBST([BONOBO_MICRO_VERSION]) AM_MAINTAINER_MODE LIBBONOBO_LT_VERSION_INFO='-version-info 0:0:0' AC_SUBST(LIBBONOBO_LT_VERSION_INFO) BONOBO_ACTIVATION_LT_VERSION_INFO='-version-info 4:0:0' AC_SUBST(BONOBO_ACTIVATION_LT_VERSION_INFO) AC_CANONICAL_HOST case "$host" in *-*-cygwin*) os_win32=no SOPREFIX=cyg ;; *-*-mingw*) os_win32=yes SOPREFIX=lib # Autoconf also puts stuff in configure to set PATH_SEPARATOR, but # if you run the configure script with a Cygwin shell, it gets set # to ":" while we do want the semicolon here. SEARCHPATHSEP=";" ;; *) os_win32=no SOPREFIX=lib SEARCHPATHSEP=":" AC_DEFINE(HAVE_DBUS, 1, [whether we have dbus]) ;; esac AM_CONDITIONAL(OS_WIN32, [test $os_win32 = yes]) AC_SUBST(SOPREFIX) AC_SUBST(SEARCHPATHSEP) if test "$os_win32" = "yes"; then if test x$enable_static = xyes -o x$enable_static = x; then AC_MSG_WARN([Disabling static library build, must build as DLL on Windows.]) enable_static=no fi if test x$enable_shared = xno; then AC_MSG_WARN([Enabling shared library build, must build as DLL on Windows.]) fi enable_shared=yes fi AC_ISC_POSIX AC_PROG_CC AC_PROG_SED AM_PROG_LEX if [[ "$LEX" != "flex" ]]; then AC_MSG_ERROR([flex is required to build bonobo-activation]) fi AC_SUBST(LFLAGS) AC_STDC_HEADERS AC_PROG_INSTALL AC_PROG_LN_S AC_PROG_MAKE_SET AC_LIBTOOL_WIN32_DLL AM_PROG_LIBTOOL AC_PROG_YACC AC_CHECK_FUNCS(bind_textdomain_codeset) # **** # i18n # **** IT_PROG_INTLTOOL([0.35.0]) GETTEXT_PACKAGE=libbonobo-2.0 AC_SUBST(GETTEXT_PACKAGE) AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"$GETTEXT_PACKAGE",[gettext package name]) AM_GLIB_GNU_GETTEXT GNOME_COMMON_INIT GNOME_COMPILE_WARNINGS dnl Checks for library functions AC_CHECK_FUNCS(usleep nanosleep sigaction setsid) dnl Checks for headers AC_CHECK_HEADERS(sys/wait.h syslog.h) # # Start of pkg-config checks # ORBIT_VERSION=2.11.2 GLIB_VERSION=2.25.7 PKG_CHECK_MODULES(LIBBONOBO, \ ORBit-2.0 >= $ORBIT_VERSION \ ORBit-CosNaming-2.0 >= $ORBIT_VERSION \ gmodule-2.0 >= 2.0.1 \ glib-2.0 >= $GLIB_VERSION \ gobject-2.0 >= $GLIB_VERSION \ gthread-2.0 >= $GLIB_VERSION \ gio-2.0 >= $GLIB_VERSION) AC_SUBST(LIBBONOBO_CFLAGS) AC_SUBST(LIBBONOBO_LIBS) PKG_CHECK_MODULES(SERVER, \ gmodule-2.0 >= 2.0.1 \ gio-2.0 >= 2.25.5 \ ORBit-2.0 >= 2.4.0 \ ORBit-CosNaming-2.0 >= 2.4.0 \ libxml-2.0 >= 2.4.20) AC_SUBST(SERVER_LIBS) AC_SUBST(SERVER_CFLAGS) if test "$enable_maintainer_mode" = "yes"; then DISABLE_DEPRECATED_CFLAGS="-DG_DISABLE_DEPRECATED -DG_DISABLE_SINGLE_INCLUDES" AC_SUBST(DISABLE_DEPRECATED_CFLAGS) fi # orbit-idl test x$ORBIT_IDL = x && ORBIT_IDL="`$PKG_CONFIG --variable=orbit_idl ORBit-2.0`" AC_SUBST(ORBIT_IDL) AC_CHECK_HEADER(popt.h,,AC_MSG_ERROR([Failed to find popt.h - you may have to adjust your environment])) PKG_CHECK_MODULES(GTHREAD, gthread-2.0 >= $GLIB_VERSION) # checks for working GThread # Aware: "make check" fails with --disable-threads AC_ARG_ENABLE(threads, AS_HELP_STRING([--disable-threads], [Disable multithread support @<:@default=enabled@:>@]), enable_threads="$enableval", enable_threads=yes) if test x$enable_threads != xno; then AC_MSG_CHECKING([for working gthread-2.0 support]) libbonobo_save_CFLAGS=$CFLAGS libbonobo_save_LIBS=$LIBS CFLAGS="$CFLAGS $GTHREAD_CFLAGS" LIBS="$LIBS $GTHREAD_LIBS" AC_TRY_RUN([#include int main (void) { if (!g_thread_supported()) g_thread_init(NULL); return NULL == g_mutex_new(); }], AC_MSG_RESULT(yes),[ AC_MSG_RESULT(no) AC_MSG_ERROR( [No working gthread-2.0 support found, using --disable-threads IS DISCOURAGED]) ], [AC_MSG_RESULT(unknown) AC_MSG_WARN( [Couldn't check for working gthread-2.0 support while crosscompiling ])]) CFLAGS=$libbonobo_save_CFLAGS LIBS=$libbonobo_save_LIBS AC_DEFINE(HAVE_GTHREADS,,[whether we use gthreads]) fi # Checks for Apple Darwin AC_CHECK_FUNC(_NSGetEnviron, have_ns_getenviron=yes) if test x$have_ns_getenviron = xyes; then AC_DEFINE(HAVE_NSGETENVIRON, 1, [whether we have _NSGetEnviron]) fi AC_CHECK_HEADER(crt_externs.h, have_crt_externs=yes) if test x$have_crt_externs = xyes; then AC_DEFINE(HAVE_CRT_EXTERNS_H, 1, [whether we have crt_externs.h]) fi # glib-genmarshal AC_PATH_PROG(GLIB_GENMARSHAL, glib-genmarshal) GTK_DOC_CHECK([1.0]) AC_ARG_ENABLE(debug, AS_HELP_STRING([--enable-debug], [Enable debugging code @<:@default=disabled@:>@]), enable_debug="$enableval", enable_debug=no) if test x$enable_debug = xyes; then AC_DEFINE(G_ENABLE_DEBUG, 1, [Defined if debugging code should be compiled]) fi AC_ARG_ENABLE(bonobo-activation-debug, AS_HELP_STRING([--enable-bonobo-activation-debug], [turn on debugging @<:@default=no@:>@]), enable_bonobo_activation_debug=$enableval, enable_bonobo_activation_debug=no) if test "x$enable_bonobo_activation_debug" = "xyes"; then AC_DEFINE(BONOBO_ACTIVATION_DEBUG, 1, [whether to compile with bonobo activation debugging]) fi AC_PATH_PROG(PERL_PATH, perl) if test -n "$PERL_PATH"; then BONOBO_SLAY=bonobo-slay AC_PATH_PROG(PS_PATH, ps) AC_CACHE_CHECK([for POSIX ps], ac_cv_prog_ps_posix, [ USER=${USER:-${LOGNAME:-`logname`}} if $PS_PATH -U $USER -opid,args >/dev/null 2>&1; then ac_cv_prog_ps_posix=yes else ac_cv_prog_ps_posix=no fi ]) if test "$ac_cv_prog_ps_posix" = yes; then IF_BSD_PS=# else IF_POSIX_PS=# fi case "$target_os" in cygwin*) IF_BSD_PS=# IF_POSIX_PS=# ;; *) IF_CYGWIN_PS=# ;; esac fi AC_SUBST(PERL_PATH) AC_SUBST(BONOBO_SLAY) AC_SUBST(PS_PATH) AC_SUBST(IF_BSD_PS) AC_SUBST(IF_POSIX_PS) AC_SUBST(IF_CYGWIN_PS) # ***************************************************************************** # ***************************************************************************** AC_CONFIG_FILES([ Makefile libbonobo-zip po/Makefile.in idl/Makefile bonobo/Makefile bonobo/libbonobo-2.0.pc bonobo/libbonobo-2.0-uninstalled.pc bonobo-activation/Makefile bonobo-activation/bonobo-activation-2.0.pc bonobo-activation/bonobo-activation-2.0-uninstalled.pc bonobo-activation/bonobo-activation-version.h activation-server/Makefile monikers/Makefile samples/Makefile samples/echo/Makefile utils/Makefile utils/bonobo-slay tests/Makefile tests/test-activation/Makefile tests/models/Makefile doc/Makefile doc/api/Makefile doc/api/figures/Makefile doc/activation/Makefile doc/activation-api/Makefile ]) AC_OUTPUT echo "" echo "bonobo configuration summary:" echo "=============================" echo "" echo "\ Threads : $enable_threads Debug : $enable_debug Bonobo activation debug : $enable_bonobo_activation_debug" echo "" libbonobo-2.32.1/bonobo-activation/0000775000076400007640000000000011546334243014201 500000000000000libbonobo-2.32.1/bonobo-activation/bonobo-activation-init.h0000644000076400007640000000471611173072711020651 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ /* * bonobo-activation: A library for accessing bonobo-activation-server. * * Copyright (C) 1999, 2000 Red Hat, Inc. * Copyright (C) 2000 Eazel, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library 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 * Library General Public License for more details. * * You should have received a copy of the GNU Library General Public * License along with this library; if not, write to the Free * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * * Author: Elliot Lee */ #ifndef BONOBO_ACTIVATION_INIT_H #define BONOBO_ACTIVATION_INIT_H #include #ifndef BONOBO_DISABLE_DEPRECATED #include #endif #include G_BEGIN_DECLS CORBA_ORB bonobo_activation_orb_init (int *argc, char **argv); CORBA_ORB bonobo_activation_orb_get (void); gboolean bonobo_activation_is_initialized (void); CORBA_ORB bonobo_activation_init (int argc, char **argv); void bonobo_activation_preinit (gpointer app, gpointer mod_info); void bonobo_activation_postinit (gpointer app, gpointer mod_info); /* deprecated / private to libbonoboui */ CORBA_Context bonobo_activation_context_get (void); #ifndef BONOBO_DISABLE_DEPRECATED const char *bonobo_activation_hostname_get (void); const char *bonobo_activation_session_name_get (void); const char *bonobo_activation_domain_get (void); #define bonobo_activation_username_get() g_get_user_name() extern struct poptOption bonobo_activation_popt_options[]; char *bonobo_activation_get_popt_table_name (void); #endif /* BONOBO_DISABLE_DEPRECATED */ gboolean bonobo_activation_debug_shutdown (void); GOptionGroup *bonobo_activation_get_goption_group (void); G_END_DECLS #endif /* BONOBO_ACTIVATION_INIT_H */ libbonobo-2.32.1/bonobo-activation/bonobo-activation-fork-server.c0000644000076400007640000004142411173072711022143 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ /* * bonobo-activation: A library for accessing bonobo-activation-server. * * Copyright (C) 1999, 2000 Red Hat, Inc. * Copyright (C) 2000, 2001 Eazel, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library 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 * Library General Public License for more details. * * You should have received a copy of the GNU Library General Public * License along with this library; if not, write to the Free * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * * Author: Elliot Lee * */ #include #include #include #include #include #include #ifndef _GNU_SOURCE #define _GNU_SOURCE 1 #endif #include #include #include #include #include #include #include #include #include #include static GMutex *thread_lock = NULL; static GCond *thread_cond = NULL; static GSList *running_activations = NULL; #define RUNNING_LIST_LOCK() if (thread_lock) g_mutex_lock (thread_lock); #define RUNNING_LIST_UNLOCK() if (thread_lock) g_mutex_unlock (thread_lock); /* Whacked from gnome-libs/libgnorba/orbitns.c */ #define IORBUFSIZE 2048 typedef struct { gboolean done; char iorbuf[IORBUFSIZE]; #ifdef BONOBO_ACTIVATION_DEBUG char *do_srv_output; #endif GIOChannel *ioc; /* For list compares */ const Bonobo_ActivationEnvironment *environment; const char *act_iid; const char *exename; BonoboForkReCheckFn re_check; gpointer user_data; } EXEActivateInfo; static CORBA_Object exe_activate_info_to_retval (EXEActivateInfo *ai, CORBA_Environment *ev) { CORBA_Object retval; g_strstrip (ai->iorbuf); if (!strncmp (ai->iorbuf, "IOR:", 4)) { retval = CORBA_ORB_string_to_object (bonobo_activation_orb_get (), ai->iorbuf, ev); if (ev->_major != CORBA_NO_EXCEPTION) retval = CORBA_OBJECT_NIL; #ifdef BONOBO_ACTIVATION_DEBUG if (ai->do_srv_output) g_message ("Did string_to_object on %s = '%p' (%s)", ai->iorbuf, retval, ev->_major == CORBA_NO_EXCEPTION? "no-exception" : ev->_id); #endif } else { Bonobo_GeneralError *errval; #ifdef BONOBO_ACTIVATION_DEBUG if (ai->do_srv_output) g_warning ("string doesn't match IOR:"); #endif errval = Bonobo_GeneralError__alloc (); if (*ai->iorbuf == '\0') errval->description = CORBA_string_dup (_("Child process did not give an error message, unknown failure occurred")); else errval->description = CORBA_string_dup (ai->iorbuf); CORBA_exception_set (ev, CORBA_USER_EXCEPTION, ex_Bonobo_GeneralError, errval); retval = CORBA_OBJECT_NIL; } return retval; } static EXEActivateInfo * find_on_list (EXEActivateInfo *seek_ai, CORBA_Environment *ev) { GSList *l; for (l = running_activations; l; l = l->next) { EXEActivateInfo *ai = l->data; if (strcmp (seek_ai->exename, ai->exename)) continue; if (seek_ai->environment && ai->environment) { if (!Bonobo_ActivationEnvironment_match (seek_ai->environment, ai->environment)) continue; } else if (seek_ai->environment || ai->environment) continue; return ai; } return NULL; } static CORBA_Object scan_list (EXEActivateInfo *seek_ai, CORBA_Environment *ev) { EXEActivateInfo *ai; CORBA_Object retval = CORBA_OBJECT_NIL; if (thread_cond) { /* * someone might have registered while we * dropped the main server lock => re-check, * inelegant but ... */ #ifdef BONOBO_ACTIVATION_DEBUG g_message ("Pre-check for ... '%s' \n", seek_ai->act_iid); #endif retval = seek_ai->re_check (seek_ai->environment, seek_ai->act_iid, seek_ai->user_data); if (retval != CORBA_OBJECT_NIL) return retval; } if (!(ai = find_on_list (seek_ai, ev))) return CORBA_OBJECT_NIL; if (thread_cond) { while (ai && !ai->done) { #ifdef BONOBO_ACTIVATION_DEBUG g_message ("thread %p: activation of '%s' already pending, waiting ...\n", g_thread_self(), seek_ai->act_iid); #endif /* Wait for something to happen */ g_cond_wait (thread_cond, thread_lock); #ifdef BONOBO_ACTIVATION_DEBUG g_message ("thread %p: activation of '%s' woken up to retry ...\n", g_thread_self(), seek_ai->act_iid); #endif ai = find_on_list (seek_ai, ev); } } else { /* We run the loop too ... */ while (!ai->done) g_main_context_iteration (NULL, TRUE); } if (ai && !strcmp (seek_ai->act_iid, ai->act_iid)) { #ifdef BONOBO_ACTIVATION_DEBUG g_message ("thread %p hit the jackpot '%s' '%s'\n", g_thread_self(), seek_ai->act_iid, ai->act_iid); #endif retval = exe_activate_info_to_retval (ai, ev); if (ev->_major != CORBA_NO_EXCEPTION) g_message ("URGH ! 3\n"); } else if (seek_ai->re_check) { /* It might have just registered the IID */ #ifdef BONOBO_ACTIVATION_DEBUG g_message ("thread %p re-check for ... '%s' \n", g_thread_self(), seek_ai->act_iid); #endif retval = seek_ai->re_check (seek_ai->environment, seek_ai->act_iid, seek_ai->user_data); } else { #ifdef BONOBO_ACTIVATION_DEBUG g_warning ("thread %p: very unusual dual activation failure: '%s'\n", g_thread_self(), seek_ai->act_iid); #endif } return retval; } static gboolean handle_exepipe (GIOChannel * source, GIOCondition condition, EXEActivateInfo * data) { gboolean retval = TRUE; /* The expected thing is to get this callback maybe twice, * once with G_IO_IN and once G_IO_HUP, of course we need to handle * other cases. */ if (data->iorbuf[0] == '\0' && (condition & (G_IO_IN | G_IO_PRI))) { GString *str = g_string_new (""); GError *error = NULL; GIOStatus status; status = g_io_channel_read_line_string (data->ioc, str, NULL, &error); if (status == G_IO_STATUS_ERROR) { g_snprintf (data->iorbuf, IORBUFSIZE, _("Failed to read from child process: %s\n"), error->message); g_error_free (error); #ifdef BONOBO_ACTIVATION_DEBUG fprintf (stderr, "b-a-f-s failed to read from child '%s'\n", error->message); #endif error = NULL; retval = FALSE; } else if (status == G_IO_STATUS_EOF) { g_snprintf (data->iorbuf, IORBUFSIZE, _("EOF from child process\n")); retval = FALSE; } else { strncpy (data->iorbuf, str->str, IORBUFSIZE); retval = TRUE; } g_string_free (str, TRUE); } else { retval = FALSE; } if (retval && !strncmp (data->iorbuf, "IOR:", 4)) retval = FALSE; #ifdef BONOBO_ACTIVATION_DEBUG if (data->do_srv_output) g_message ("srv output[%d]: '%s'", retval, data->iorbuf); #endif if (!retval) data->done = TRUE; return retval; } void bonobo_activation_server_fork_init (gboolean threaded) { if (threaded) { thread_lock = g_mutex_new (); thread_cond = g_cond_new (); } } #ifndef G_OS_WIN32 static void child_setup (gpointer user_data) { int pipe_fd = GPOINTER_TO_INT (user_data); /* unset close on exec */ fcntl (pipe_fd, F_SETFD, 0); } #else #define child_setup NULL #endif CORBA_Object bonobo_activation_server_by_forking ( const char **cmd_const, gboolean set_process_group, int fd_arg, const Bonobo_ActivationEnvironment *environment, const char *od_iorstr, const char *act_iid, gboolean use_new_loop, BonoboForkReCheckFn re_check, gpointer user_data, CORBA_Environment *ev) { gint iopipes[2]; CORBA_Object retval = CORBA_OBJECT_NIL; EXEActivateInfo ai; GError *error = NULL; GSource *source; GMainContext *context; char **newenv = NULL; char **cmd; g_return_val_if_fail (cmd_const != NULL, CORBA_OBJECT_NIL); g_return_val_if_fail (cmd_const [0] != NULL, CORBA_OBJECT_NIL); g_return_val_if_fail (act_iid != NULL, CORBA_OBJECT_NIL); ai.environment = environment; ai.act_iid = act_iid; ai.exename = cmd_const [0]; ai.re_check = re_check; ai.user_data = user_data; #ifdef BONOBO_ACTIVATION_DEBUG ai.do_srv_output = getenv ("BONOBO_ACTIVATION_DEBUG_EXERUN"); #endif RUNNING_LIST_LOCK(); if (!use_new_loop && (retval = scan_list (&ai, ev)) != CORBA_OBJECT_NIL) { RUNNING_LIST_UNLOCK(); return retval; } if (thread_lock) /* don't allow re-enterancy in this thread */ use_new_loop = TRUE; #ifdef G_OS_WIN32 _pipe (iopipes, 4096, _O_BINARY); #else pipe (iopipes); #endif #ifdef BONOBO_ACTIVATION_DEBUG if (ai.do_srv_output) fprintf (stderr, " SPAWNING: '%s' for '%s'\n", cmd_const[0], act_iid); #endif #ifdef G_OS_WIN32 ai.ioc = g_io_channel_win32_new_fd (iopipes[0]); #else ai.ioc = g_io_channel_unix_new (iopipes[0]); #endif g_io_channel_set_encoding (ai.ioc, NULL, NULL); source = g_io_create_watch (ai.ioc, G_IO_IN | G_IO_PRI | G_IO_HUP | G_IO_NVAL | G_IO_ERR); g_source_set_callback (source, (GSourceFunc) handle_exepipe, &ai, NULL); g_source_set_can_recurse (source, TRUE); if (use_new_loop) context = g_main_context_new (); else context = g_main_context_default (); g_source_attach (source, context); /* Set up environment for child */ if (environment && environment->_length > 0) { int i, n; char **env, **ep; n = environment->_length; env = ep = g_listenv (); n += g_strv_length (env); newenv = g_new (char *, n+1); for (i = n = 0; i < environment->_length; i++, n++) { newenv [n] = g_strconcat (environment->_buffer [i].name, "=", environment->_buffer [i].value, NULL); } while (*ep) { /* No need to check if the environment entry * is well-formed (name=value), g_listenv() * already does and returns only the proper * environment variable names. */ for (i = 0; i < environment->_length; i++) if (strcmp (*ep, environment->_buffer [i].name) == 0) break; if (i == environment->_length) { newenv [n] = g_strconcat (*ep, "=", g_getenv (*ep), NULL); n++; } ep++; } g_strfreev (env); newenv [n] = NULL; } /* Pass the IOR pipe's write end to the child */ cmd = g_strdupv ((char **)cmd_const); if (fd_arg != 0) { g_free (cmd[fd_arg]); cmd[fd_arg] = g_strdup_printf (cmd_const[fd_arg], iopipes[1]); } ai.iorbuf[0] = '\0'; ai.done = FALSE; running_activations = g_slist_prepend (running_activations, &ai); RUNNING_LIST_UNLOCK(); /* Spawn */ if (!g_spawn_async (NULL, (gchar **) cmd, newenv, #ifdef G_OS_WIN32 /* win32 g_spawn doesn't handle child_setup, so leave all fds open */ G_SPAWN_LEAVE_DESCRIPTORS_OPEN | #endif G_SPAWN_SEARCH_PATH | G_SPAWN_CHILD_INHERITS_STDIN, child_setup, GINT_TO_POINTER (iopipes[1]), NULL, &error)) { Bonobo_GeneralError *errval; gchar *error_message = g_strconcat (_("Couldn't spawn a new process"), ":", error->message, NULL); #ifdef BONOBO_ACTIVATION_DEBUG fprintf (stderr, "g_spawn_async error '%s'\n", error->message); #endif g_error_free (error); error = NULL; errval = Bonobo_GeneralError__alloc (); errval->description = CORBA_string_dup (error_message); g_free (error_message); CORBA_exception_set (ev, CORBA_USER_EXCEPTION, ex_Bonobo_GeneralError, errval); RUNNING_LIST_LOCK(); running_activations = g_slist_remove (running_activations, &ai); RUNNING_LIST_UNLOCK(); if (thread_cond) g_cond_broadcast (thread_cond); close (iopipes[1]); g_source_destroy (source); g_source_unref (source); g_io_channel_shutdown (ai.ioc, FALSE, NULL); g_io_channel_unref (ai.ioc); if (use_new_loop) g_main_context_unref (context); g_strfreev (newenv); g_strfreev (cmd); close (iopipes[0]); return CORBA_OBJECT_NIL; } close (iopipes[1]); g_strfreev (newenv); g_strfreev (cmd); /* Get the IOR from the pipe */ while (!ai.done) { g_main_context_iteration (context, TRUE); } #ifdef BONOBO_ACTIVATION_DEBUG g_message ("thread %p: broadcast activation of '%s' complete ...\n", g_thread_self(), act_iid); #endif if (thread_cond) g_cond_broadcast (thread_cond); g_source_destroy (source); g_source_unref (source); g_io_channel_shutdown (ai.ioc, FALSE, NULL); g_io_channel_unref (ai.ioc); if (use_new_loop) g_main_context_unref (context); RUNNING_LIST_LOCK(); running_activations = g_slist_remove (running_activations, &ai); RUNNING_LIST_UNLOCK(); retval = exe_activate_info_to_retval (&ai, ev); close (iopipes[0]); return retval; } libbonobo-2.32.1/bonobo-activation/bonobo-activation-activate.h0000644000076400007640000000536411173072711021506 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ /* * bonobo-activation: A library for accessing bonobo-activation-server. * * Copyright (C) 1999, 2000 Red Hat, Inc. * Copyright (C) 2000 Eazel, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library 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 * Library General Public License for more details. * * You should have received a copy of the GNU Library General Public * License along with this library; if not, write to the Free * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * * Author: Elliot Lee */ #ifndef BONOBO_ACTIVATION_ACTIVATE_H #define BONOBO_ACTIVATION_ACTIVATE_H #include G_BEGIN_DECLS CORBA_Object bonobo_activation_name_service_get (CORBA_Environment * ev); Bonobo_ServerInfoList *bonobo_activation_query (const char *requirements, char *const *selection_order, CORBA_Environment * ev); CORBA_Object bonobo_activation_activate (const char *requirements, char *const *selection_order, Bonobo_ActivationFlags flags, Bonobo_ActivationID * ret_aid, CORBA_Environment * ev); CORBA_Object bonobo_activation_activate_from_id (const Bonobo_ActivationID aid, Bonobo_ActivationFlags flags, Bonobo_ActivationID * ret_aid, CORBA_Environment * ev); void bonobo_activation_set_activation_env_value (const char *name, const char *value); Bonobo_DynamicPathLoadResult bonobo_activation_dynamic_add_path (const char *add_path, CORBA_Environment * ev); Bonobo_DynamicPathLoadResult bonobo_activation_dynamic_remove_path (const char *remove_path, CORBA_Environment * ev); #ifndef BONOBO_DISABLE_DEPRECATED /* debugging functions. */ void bonobo_activation_set_test_components_enabled (gboolean val); gboolean bonobo_activation_get_test_components_enabled (void); #endif G_END_DECLS #endif /* BONOBO_ACTIVATION_ACTIVATE_H */ libbonobo-2.32.1/bonobo-activation/bonobo-activation-base-service.h0000644000076400007640000001243111173072711022247 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ /* * bonobo-activation: A library for accessing bonobo-activation-server. * * Copyright (C) 1999, 2000 Red Hat, Inc. * Copyright (C) 2000 Eazel, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library 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 * Library General Public License for more details. * * You should have received a copy of the GNU Library General Public * License along with this library; if not, write to the Free * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * * Author: Elliot Lee * */ /* The folowing API is not intended for application use. * It is intended only for people who want to extend OAF bootstraping system. * I have no idea why we have all this tralala but Eliot knows and he _tried_ * to explain it in docs/bonobo-activation-base-service.txt */ /* * DO NOT USE this API, it is deprecated and crufty. */ #ifndef BONOBO_ACTIVATION_BASE_SERVICE_H #define BONOBO_ACTIVATION_BASE_SERVICE_H #ifndef BONOBO_DISABLE_DEPRECATED #include #include G_BEGIN_DECLS typedef struct { const char *name; const char *session_name; const char *username; const char *hostname; const char *domain; /* FIXME: unused - remove ? */ } BonoboActivationBaseService; typedef struct _BonoboActivationBaseServiceRegistry BonoboActivationBaseServiceRegistry; struct _BonoboActivationBaseServiceRegistry { void (*lock) (const BonoboActivationBaseServiceRegistry *registry, gpointer user_data); void (*unlock) (const BonoboActivationBaseServiceRegistry *registry, gpointer user_data); char * (*check) (const BonoboActivationBaseServiceRegistry *registry, const BonoboActivationBaseService *base_service, int *ret_distance, gpointer user_data); void (*register_new) (const BonoboActivationBaseServiceRegistry *registry, const char *ior, const BonoboActivationBaseService *base_service, gpointer user_data); void (*unregister) (const BonoboActivationBaseServiceRegistry *registry, const char *ior, const BonoboActivationBaseService *base_service, gpointer user_data); }; typedef CORBA_Object (*BonoboActivationBaseServiceActivator) ( const BonoboActivationBaseService *base_service, const char **command, int ior_fd, CORBA_Environment *ev); /* unused / deprecated */ void bonobo_activation_base_service_registry_add (const BonoboActivationBaseServiceRegistry *registry, int priority, gpointer user_data); /* unused / deprecated */ CORBA_Object bonobo_activation_base_service_check (const BonoboActivationBaseService *base_service, CORBA_Environment *ev); /* unused / deprecated */ void bonobo_activation_base_service_set (const BonoboActivationBaseService *base_service, CORBA_Object obj, CORBA_Environment *ev); /* unused / deprecated */ void bonobo_activation_base_service_unset (const BonoboActivationBaseService *base_service, CORBA_Object obj, CORBA_Environment *ev); /* unused / deprecated */ void bonobo_activation_base_service_activator_add (BonoboActivationBaseServiceActivator activator, int priority); /* Do not release() the returned value */ CORBA_Object bonobo_activation_service_get (const BonoboActivationBaseService *base_service); void bonobo_activation_base_service_debug_shutdown (CORBA_Environment *ev); G_END_DECLS #endif /* BONOBO_DISABLE_DEPRECATED */ #endif /* BONOBO_ACTIVATION_BASE_SERVICE_H */ libbonobo-2.32.1/bonobo-activation/bonobo-activation-version.h.in0000644000076400007640000000234611173072711021775 00000000000000/* * bonobo-activation: A library for accessing bonobo-activation-server. * * Copyright (C) 1999, 2000 Red Hat, Inc. * Copyright (C) 2000 Eazel, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library 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 * Library General Public License for more details. * * You should have received a copy of the GNU Library General Public * License along with this library; if not, write to the Free * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * * Author: Elliot Lee */ #ifndef BONOBO_ACTIVATION_VERSION_H #define BONOBO_ACTIVATION_VERSION_H #define BONOBO_ACTIVATION_MAJOR_VERSION (@BONOBO_MAJOR_VERSION@) #define BONOBO_ACTIVATION_MINOR_VERSION (@BONOBO_MINOR_VERSION@) #define BONOBO_ACTIVATION_MICRO_VERSION (@BONOBO_MICRO_VERSION@) #endif /* BONOBO_ACTIVATION_VERSION_H */ libbonobo-2.32.1/bonobo-activation/Makefile.am0000664000076400007640000000572011433015514016151 00000000000000NULL= lib_LTLIBRARIES=libbonobo-activation.la INCLUDES= \ -I$(top_srcdir) \ -I$(top_builddir) \ -DPREFIX=\""$(prefix)\"" \ -DSERVER_LIBEXECDIR=\""$(libexecdir)\"" \ -DSERVERINFODIR=\"$(libdir)/bonobo/servers\" \ -DSERVER_CONFDIR=\"$(sysconfdir)\" \ -DBONOBO_ACTIVATION_LOCALEDIR=\""${prefix}/${DATADIRNAME}/locale"\" \ $(LIBBONOBO_CFLAGS) \ -DVERSION=\"$(VERSION)\" \ $(DISABLE_DEPRECATED_CFLAGS) \ -DG_LOG_DOMAIN=\"Bonobo-Activation\" \ $(NULL) AM_LDFLAGS= \ $(LIBBONOBO_LIBS) \ $(BONOBO_ACTIVATION_LT_VERSION_INFO) \ -no-undefined \ $(NULL) bonobo_activationincludedir = $(includedir)/bonobo-activation-2.0/bonobo-activation bonobo_activationinclude_HEADERS= \ Bonobo_Unknown.h \ Bonobo_GenericFactory.h \ Bonobo_Activation_types.h \ bonobo-activation.h \ bonobo-activation-async.h \ bonobo-activation-activate.h \ bonobo-activation-init.h \ bonobo-activation-mime.h \ bonobo-activation-shlib.h \ bonobo-activation-register.h \ bonobo-activation-server-info.h \ bonobo-activation-version.h \ $(NULL) libbonobo_activation_la_SOURCES= \ $(BUILT_SOURCES) \ bonobo-activation-get-language-list.c \ bonobo-activation-client.c \ bonobo-activation-client.h \ bonobo-activation-id.h \ bonobo-activation-id.c \ bonobo-activation-mime.c \ bonobo-activation-private.h \ bonobo-activation-shlib.c \ bonobo-activation-activate.c \ bonobo-activation-activate-private.h \ bonobo-activation-base-service.h \ bonobo-activation-base-service.c \ bonobo-activation-register.c \ bonobo-activation-server-info.c \ bonobo-activation-fork-server.c \ bonobo-activation-init.c \ $(NULL) libbonobo_activation_la_LIBADD = $(INTLLIBS) IDL_FLAGS = -I$(top_srcdir)/idl IDL_DIR = $(top_srcdir)/idl/ IDL_FILES = Bonobo_Unknown.idl \ Bonobo_GenericFactory.idl \ Bonobo_Activation_types.idl \ Bonobo_ObjectDirectory.idl \ Bonobo_ActivationContext.idl \ $(NULL) IDL_HEADER_FILES = $(IDL_FILES:.idl=.h) IDL_COMMONS = $(IDL_FILES:.idl=-common.c) IDL_SKELS = $(IDL_FILES:.idl=-skels.c) IDL_STUBS = $(IDL_FILES:.idl=-stubs.c) BUILT_SOURCES= $(IDL_HEADER_FILES) $(IDL_COMMONS) $(IDL_SKELS) $(IDL_STUBS) \ $(NULL) $(libbonobo_activation_la_OBJECTS): $(BUILT_SOURCES) %.h %-stubs.c %-skels.c %-common.c %-imodule.c %-skelimpl.c: $(IDL_DIR)%.idl $(ORBIT_IDL) @-(rm -f $(*).h $(*)-stubs.c $(*)-skels.c $(*)-common.c $(*)-imodule.c $(*)-skelimpl.c || true) > /dev/null $(AM_V_GEN) $(ORBIT_IDL) $(IDL_FLAGS) "-D__$(*)_COMPILATION" --deps $(*D)/.deps/$(*F).idl.P $< if MAINTAINER_MODE DEPS_MAGIC := $(shell mkdir .deps > /dev/null 2>&1 || :) IDL_DEP_FILES = $(IDL_FILES:%.idl=.deps/%.idl.P) -include $(IDL_DEP_FILES) distclean-local: -rm -rf .deps endif CLEANFILES= \ $(BUILT_SOURCES) \ $(NULL) dist-hook: cd $(distdir) ; rm -f $(CLEANFILES) pkgconfigdir = $(libdir)/pkgconfig pkgconfig_DATA = bonobo-activation-2.0.pc EXTRA_DIST = $(pkgconfig_DATA) bonobo-activation-2.0-uninstalled.pc.in AUTHORS libbonobo-2.32.1/bonobo-activation/bonobo-activation-2.0-uninstalled.pc.in0000644000076400007640000000067411173072711023304 00000000000000prefix=@prefix@ exec_prefix=@exec_prefix@ libdir=@libdir@ includedir=@includedir@/bonobo-activation-2.0 datarootdir=@datarootdir@ datadir=@datadir@ idldir=@datadir@/idl/bonobo-activation-2.0 Name: Bonobo Activation Version: @VERSION@ Description: Object activation framework for GNOME Requires: glib-2.0 gmodule-no-export-2.0 ORBit-2.0 Libs: ${pc_top_builddir}/${pcfiledir}/libbonobo-activation.la Cflags: -I${pc_top_builddir}/${pcfiledir}/.. libbonobo-2.32.1/bonobo-activation/bonobo-activation-client.h0000644000076400007640000000062111173072711021153 00000000000000#ifndef BONOBO_ACTIVATION_CLIENT_H #define BONOBO_ACTIVATION_CLIENT_H #include #include void bonobo_activation_release_corba_client (void); void bonobo_activation_add_reset_notify (GVoidFunc fn); void bonobo_activation_register_client (Bonobo_ActivationContext context, CORBA_Environment *ev); #endif /* BONOBO_ACTIVATION_CLIENT_H */ libbonobo-2.32.1/bonobo-activation/bonobo-activation.h0000644000076400007640000000336311173072711017705 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ /* * bonobo-activation: A library for accessing bonobo-activation-server. * * Copyright (C) 1999, 2000 Red Hat, Inc. * Copyright (C) 2000 Eazel, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library 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 * Library General Public License for more details. * * You should have received a copy of the GNU Library General Public * License along with this library; if not, write to the Free * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * * Author: Elliot Lee */ #ifndef BONOBO_ACTIVATION_H #define BONOBO_ACTIVATION_H #include #include #include #include #include #include #include #include #include extern const guint bonobo_activation_major_version, bonobo_activation_minor_version, bonobo_activation_micro_version; extern const char bonobo_activation_version[]; #endif /* BONOBO_ACTIVATION_H */ libbonobo-2.32.1/bonobo-activation/bonobo-activation-server-info.c0000644000076400007640000001417311173072711022136 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ /* * liboaf: A library for accessing oafd in a nice way. * * Copyright (C) 1999, 2000 Red Hat, Inc. * Copyright (C) 2000 Eazel, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library 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 * Library General Public License for more details. * * You should have received a copy of the GNU Library General Public * License along with this library; if not, write to the Free * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * * Author: Elliot Lee * */ #include #include #include /** * bonobo_server_info_prop_find: * @server: the server where to seek the data. * @prop_name: the data to seek in the server. * * Tries to find a server with the given property. Returns * NULL if not found. * * Return value: a pointer to the %Bonobo_ActivationProperty structure. */ Bonobo_ActivationProperty * bonobo_server_info_prop_find (Bonobo_ServerInfo *server, const char *prop_name) { int i; for (i = 0; i < server->props._length; i++) { if (!strcmp (server->props._buffer[i].name, prop_name)) return &server->props._buffer[i]; } return NULL; } /** * bonobo_server_info_prop_lookup: * @server: * @prop_name: * @i18n_languages: * * * Return value: */ const char * bonobo_server_info_prop_lookup (Bonobo_ServerInfo *server, const char *prop_name, GSList *i18n_languages) { GSList *cur; Bonobo_ActivationProperty *prop; const char *retval; char *prop_name_buf; if (i18n_languages) { for (cur = i18n_languages; cur; cur = cur->next) { prop_name_buf = g_strdup_printf ("%s-%s", prop_name, (char *) cur->data); retval = bonobo_server_info_prop_lookup (server, prop_name_buf, NULL); g_free (prop_name_buf); if (retval) return retval; } } prop = bonobo_server_info_prop_find (server, prop_name); if (prop != NULL && prop->v._d == Bonobo_ACTIVATION_P_STRING) return prop->v._u.value_string; return NULL; } static void CORBA_sequence_CORBA_string_copy (CORBA_sequence_CORBA_string *copy, const CORBA_sequence_CORBA_string *original) { int i; copy->_maximum = original->_length; copy->_length = original->_length; copy->_buffer = CORBA_sequence_CORBA_string_allocbuf (original->_length); for (i = 0; i < original->_length; i++) { copy->_buffer[i] = CORBA_string_dup (original->_buffer[i]); } CORBA_sequence_set_release (copy, TRUE); } void Bonobo_ActivationPropertyValue_copy (Bonobo_ActivationPropertyValue *copy, const Bonobo_ActivationPropertyValue *original) { copy->_d = original->_d; switch (original->_d) { case Bonobo_ACTIVATION_P_STRING: copy->_u.value_string = CORBA_string_dup (original->_u.value_string); break; case Bonobo_ACTIVATION_P_NUMBER: copy->_u.value_number = original->_u.value_number; break; case Bonobo_ACTIVATION_P_BOOLEAN: copy->_u.value_boolean = original->_u.value_boolean; break; case Bonobo_ACTIVATION_P_STRINGV: CORBA_sequence_CORBA_string_copy (©->_u.value_stringv, &original->_u.value_stringv); break; default: g_assert_not_reached (); } } void Bonobo_ActivationProperty_copy (Bonobo_ActivationProperty *copy, const Bonobo_ActivationProperty *original) { copy->name = CORBA_string_dup (original->name); Bonobo_ActivationPropertyValue_copy (©->v, &original->v); } void CORBA_sequence_Bonobo_ActivationProperty_copy ( CORBA_sequence_Bonobo_ActivationProperty *copy, const CORBA_sequence_Bonobo_ActivationProperty *original) { int i; copy->_maximum = original->_length; copy->_length = original->_length; copy->_buffer = CORBA_sequence_Bonobo_ActivationProperty_allocbuf (original->_length); for (i = 0; i < original->_length; i++) { Bonobo_ActivationProperty_copy (©->_buffer[i], &original->_buffer[i]); } CORBA_sequence_set_release (copy, TRUE); } void Bonobo_ServerInfo_copy (Bonobo_ServerInfo *copy, const Bonobo_ServerInfo *original) { copy->iid = CORBA_string_dup (original->iid); copy->server_type = CORBA_string_dup (original->server_type); copy->location_info = CORBA_string_dup (original->location_info); copy->username = CORBA_string_dup (original->username); copy->hostname = CORBA_string_dup (original->hostname); copy->domain = CORBA_string_dup (original->domain); CORBA_sequence_Bonobo_ActivationProperty_copy (©->props, &original->props); } /** * Bonobo_ServerInfo_duplicate: * @original: %ServerInfo to copy. * * The return value should befreed with CORBA_free (). * * Return value: a newly allocated copy of @original. */ Bonobo_ServerInfo * Bonobo_ServerInfo_duplicate (const Bonobo_ServerInfo *original) { Bonobo_ServerInfo *copy; copy = Bonobo_ServerInfo__alloc (); Bonobo_ServerInfo_copy (copy, original); return copy; } Bonobo_ServerInfoList * Bonobo_ServerInfoList_duplicate (const Bonobo_ServerInfoList *original) { int i; Bonobo_ServerInfoList *list; if (!original) return NULL; list = Bonobo_ServerInfoList__alloc (); list->_length = original->_length; list->_maximum = list->_length; list->_buffer = Bonobo_ServerInfoList_allocbuf (list->_length); for (i = 0; i < list->_length; i++) Bonobo_ServerInfo_copy (&list->_buffer [i], &original->_buffer [i]); CORBA_sequence_set_release (list, TRUE); return list; } libbonobo-2.32.1/bonobo-activation/bonobo-activation-2.0.pc0000664000076400007640000000064511546333036020363 00000000000000prefix=/opt/gnome exec_prefix=${prefix} libdir=${exec_prefix}/lib includedir=${prefix}/include/bonobo-activation-2.0 datarootdir=${prefix}/share datadir=${datarootdir} idldir=${datarootdir}/idl/bonobo-activation-2.0 Name: Bonobo Activation Version: 2.32.1 Description: Object activation framework for GNOME Requires: glib-2.0 gmodule-no-export-2.0 ORBit-2.0 Libs: -L${libdir} -lbonobo-activation Cflags: -I${includedir} libbonobo-2.32.1/bonobo-activation/bonobo-activation-2.0.pc.in0000644000076400007640000000061711173072711020761 00000000000000prefix=@prefix@ exec_prefix=@exec_prefix@ libdir=@libdir@ includedir=@includedir@/bonobo-activation-2.0 datarootdir=@datarootdir@ datadir=@datadir@ idldir=@datadir@/idl/bonobo-activation-2.0 Name: Bonobo Activation Version: @VERSION@ Description: Object activation framework for GNOME Requires: glib-2.0 gmodule-no-export-2.0 ORBit-2.0 Libs: -L${libdir} -lbonobo-activation Cflags: -I${includedir} libbonobo-2.32.1/bonobo-activation/bonobo-activation-shlib.c0000644000076400007640000002275011173072711021000 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ /* * bonobo-activation: A library for accessing bonobo-activation-server. * * Copyright (C) 1999, 2000 Red Hat, Inc. * Copyright (C) 2000 Eazel, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library 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 * Library General Public License for more details. * * You should have received a copy of the GNU Library General Public * License along with this library; if not, write to the Free * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * * Author: Elliot Lee */ #include #include #include #include #include #include #include /* ORBit-specific hack */ #include typedef struct { GModule *loaded; int refcount; char filename[1]; } ActivePluginInfo; static GHashTable *living_by_filename = NULL; static void gnome_plugin_unload (gpointer data, gpointer user_data) { ActivePluginInfo *api = user_data; BONOBO_ACTIVATION_LOCK (); g_module_close (api->loaded); g_hash_table_remove (living_by_filename, api->filename); g_free (api); BONOBO_ACTIVATION_UNLOCK (); } /** * bonobo_activation_activate_shlib_server: * @sh: * @ev: * * Private function. * * Return value: */ CORBA_Object bonobo_activation_activate_shlib_server (Bonobo_ActivationResult *sh, CORBA_Environment *ev) { CORBA_Object retval; const BonoboActivationPlugin *plugin; ActivePluginInfo *local_plugin_info = NULL; const BonoboActivationPluginObject *pobj; int i; PortableServer_POA poa; CORBA_ORB orb; char *filename; const char *iid; g_return_val_if_fail (sh->res._d == Bonobo_ACTIVATION_RESULT_SHLIB, CORBA_OBJECT_NIL); g_return_val_if_fail (sh->res._u.res_shlib._length > 0, CORBA_OBJECT_NIL); BONOBO_ACTIVATION_LOCK (); /* The location info is at the end to of the string list */ filename = sh->res._u.res_shlib._buffer[sh->res._u.res_shlib._length - 1]; if (living_by_filename) local_plugin_info = g_hash_table_lookup (living_by_filename, filename); if (!local_plugin_info) { /* We have to load the thing from scratch */ GModule *gmod; gboolean success; gmod = g_module_open (filename, G_MODULE_BIND_LAZY); if (!gmod) { char *error_string; Bonobo_GeneralError *error = Bonobo_GeneralError__alloc (); error_string = g_strdup_printf ( _("g_module_open of `%s' failed with `%s'"), filename, g_module_error ()); error->description = CORBA_string_dup (error_string); CORBA_exception_set (ev, CORBA_USER_EXCEPTION, ex_Bonobo_GeneralError, error); g_free (error_string); BONOBO_ACTIVATION_UNLOCK (); return CORBA_OBJECT_NIL; /* Couldn't load it */ } success = g_module_symbol (gmod, "Bonobo_Plugin_info", (gpointer *) &plugin); if (!success) { char *error_string; Bonobo_GeneralError *error = Bonobo_GeneralError__alloc (); g_module_close (gmod); error_string = g_strdup_printf ( _("Can't find symbol Bonobo_Plugin_info in `%s'"), filename); error->description = CORBA_string_dup (error_string); CORBA_exception_set (ev, CORBA_USER_EXCEPTION, ex_Bonobo_GeneralError, error); g_free (error_string); BONOBO_ACTIVATION_UNLOCK (); return CORBA_OBJECT_NIL; } local_plugin_info = g_malloc (sizeof (ActivePluginInfo) + strlen (filename) + 1); local_plugin_info->refcount = 0; local_plugin_info->loaded = gmod; strcpy (local_plugin_info->filename, filename); if (!living_by_filename) living_by_filename = g_hash_table_new (g_str_hash, g_str_equal); g_hash_table_insert (living_by_filename, local_plugin_info->filename, local_plugin_info); } else { int success; success = g_module_symbol (local_plugin_info->loaded, "Bonobo_Plugin_info", (gpointer *) & plugin); if (!success) { char *error_string; Bonobo_GeneralError *error = Bonobo_GeneralError__alloc (); error_string = g_strdup_printf ( _("Can't find symbol Bonobo_Plugin_info in `%s'"), filename); error->description = CORBA_string_dup (error_string); CORBA_exception_set (ev, CORBA_USER_EXCEPTION, ex_Bonobo_GeneralError, error); g_free (error_string); BONOBO_ACTIVATION_UNLOCK (); return CORBA_OBJECT_NIL; } } retval = CORBA_OBJECT_NIL; orb = bonobo_activation_orb_get (); poa = (PortableServer_POA) CORBA_ORB_resolve_initial_references (orb, "RootPOA", ev); /* Index into the string list one element from the end to get the iid of the shlib */ iid = sh->res._u.res_shlib._buffer[sh->res._u.res_shlib._length - 2]; for (pobj = plugin->plugin_object_list; pobj->iid; pobj++) { if (strcmp (iid, pobj->iid) == 0) { /* Found a match */ break; } } if (pobj->iid) { /* Activate the shlib */ retval = pobj->activate (poa, pobj->iid, local_plugin_info, ev); if (ev->_major != CORBA_NO_EXCEPTION) retval = CORBA_OBJECT_NIL; /* Activate the factiories contained in the shlib */ i = sh->res._u.res_shlib._length - 2; for (i--; i >= 0 && !CORBA_Object_is_nil (retval, ev); i--) { CORBA_Object new_retval; iid = sh->res._u.res_shlib._buffer[i]; new_retval = Bonobo_GenericFactory_createObject ( retval, (char *) iid, ev); if (ev->_major != CORBA_NO_EXCEPTION || CORBA_Object_is_nil (new_retval, ev)) { if (ev->_major == CORBA_NO_EXCEPTION) { Bonobo_GeneralError *error = Bonobo_GeneralError__alloc (); char *error_string = g_strdup_printf ( _("Factory `%s' returned NIL for `%s'"), pobj->iid, iid); error->description = CORBA_string_dup (error_string); CORBA_exception_set (ev, CORBA_USER_EXCEPTION, ex_Bonobo_GeneralError, error); g_free (error_string); } new_retval = CORBA_OBJECT_NIL; } CORBA_Object_release (retval, ev); retval = new_retval; } } else { Bonobo_GeneralError *error = Bonobo_GeneralError__alloc (); char *error_string = g_strdup_printf ( _("Shlib `%s' didn't contain `%s'"), filename, iid); error->description = CORBA_string_dup (error_string); CORBA_exception_set (ev, CORBA_USER_EXCEPTION, ex_Bonobo_GeneralError, error); g_free (error_string); } CORBA_Object_release ((CORBA_Object) poa, ev); BONOBO_ACTIVATION_UNLOCK (); return retval; } /** * bonobo_activation_plugin_use: * @servant: The servant that was created * @impl_ptr: The impl_ptr that was passed to the original activation routine * * You should call this routine to activate a shared library-based * CORBA Object. It will be called by OAF if the component exports * correctly an %BonoboActivationPlugin structure named "Bonobo_Plugin_info". */ void bonobo_activation_plugin_use (PortableServer_Servant servant, gpointer impl_ptr) { ActivePluginInfo *local_plugin_info = impl_ptr; local_plugin_info->refcount++; } static gboolean bonobo_activation_plugin_real_unuse (gpointer impl_ptr) { ActivePluginInfo *api; g_return_val_if_fail (impl_ptr, FALSE); api = impl_ptr; api->refcount--; if (api->refcount <= 0) { gnome_plugin_unload (&(api->refcount), api); } return FALSE; } /** * bonobo_activation_plugin_unuse: * @impl_ptr: The impl_ptr that was passed to the activation routine * * Side effects: May arrange for the shared library that the * implementation is in to be unloaded. * * When a shlib plugin for a CORBA object is destroying an * implementation, it should call this function to make sure that the * shared library is unloaded as needed. */ void bonobo_activation_plugin_unuse (gpointer impl_ptr) { g_idle_add (bonobo_activation_plugin_real_unuse, impl_ptr); } libbonobo-2.32.1/bonobo-activation/bonobo-activation-client.c0000644000076400007640000001662511173072711021161 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ /* * bonobo-activation-client.c: A client client to enable caching * * Copyright (C) 2002 Ximian Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library 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 * Library General Public License for more details. * * You should have received a copy of the GNU Library General Public * License along with this library; if not, write to the Free * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * * Author: Michael Meeks (michael@ximian.com) */ #include #include #include #include #include #include #include static GSList *reset_notify_callbacks = NULL; static void reset_caches (void) { GSList *l; GVoidFunc cb; BONOBO_ACTIVATION_LOCK (); for (l = reset_notify_callbacks; l; l = l->next) { cb = l->data; cb (); } BONOBO_ACTIVATION_UNLOCK (); } void bonobo_activation_add_reset_notify (GVoidFunc fn) { BONOBO_ACTIVATION_LOCK (); if (!g_slist_find (reset_notify_callbacks, fn)) reset_notify_callbacks = g_slist_prepend ( reset_notify_callbacks, fn); BONOBO_ACTIVATION_UNLOCK (); } typedef struct { POA_Bonobo_ActivationClient servant; } impl_POA_Bonobo_ActivationClient; static void impl_Bonobo_ActivationClient__finalize (PortableServer_Servant servant, CORBA_Environment *ev) { g_free (servant); } static void impl_Bonobo_ActivationClient_resetCache (PortableServer_Servant servant, CORBA_Environment *ev) { /* Reset the cache ! */ #ifdef BONOBO_ACTIVATION_DEBUG g_message ("Reset cache"); #endif reset_caches (); } static CORBA_long impl_Bonobo_ActivationClient_getVersion (PortableServer_Servant servant, CORBA_Environment *ev) { return (BONOBO_ACTIVATION_MAJOR_VERSION*10000 + BONOBO_ACTIVATION_MINOR_VERSION*100 + BONOBO_ACTIVATION_MICRO_VERSION); } static PortableServer_ServantBase__epv impl_Bonobo_ActivationClient_base_epv = { NULL, /* private data */ impl_Bonobo_ActivationClient__finalize, NULL, /* default_POA routine */ }; static POA_Bonobo_ActivationClient__epv impl_Bonobo_ActivationClient_epv = { NULL, /* private */ &impl_Bonobo_ActivationClient_resetCache, &impl_Bonobo_ActivationClient_getVersion }; static POA_Bonobo_Unknown__epv impl_Bonobo_Unknown_epv = { NULL, /* private data */ NULL, NULL, NULL }; static POA_Bonobo_ActivationClient__vepv impl_Bonobo_ActivationClient_vepv = { &impl_Bonobo_ActivationClient_base_epv, &impl_Bonobo_Unknown_epv, &impl_Bonobo_ActivationClient_epv }; static CORBA_Object bonobo_activation_corba_client_new (void) { CORBA_ORB orb; CORBA_Object retval; CORBA_Environment *ev, real_ev; PortableServer_POA poa; PortableServer_POAManager manager; impl_POA_Bonobo_ActivationClient *newservant; ev = &real_ev; CORBA_exception_init (ev); orb = bonobo_activation_orb_get (); poa = (PortableServer_POA) CORBA_ORB_resolve_initial_references (orb, "RootPOA", ev); manager = PortableServer_POA__get_the_POAManager (poa, ev); PortableServer_POAManager_activate (manager, ev); newservant = g_new0 (impl_POA_Bonobo_ActivationClient, 1); newservant->servant.vepv = &impl_Bonobo_ActivationClient_vepv; POA_Bonobo_ActivationClient__init ((PortableServer_Servant) newservant, ev); retval = PortableServer_POA_servant_to_reference (poa, newservant, ev); CORBA_Object_release ((CORBA_Object) manager, ev); CORBA_Object_release ((CORBA_Object) poa, ev); CORBA_exception_free (ev); return retval; } static CORBA_Object client = CORBA_OBJECT_NIL; void bonobo_activation_release_corba_client (void) { CORBA_Environment ev; CORBA_exception_init (&ev); CORBA_Object_release (client, &ev); reset_caches (); CORBA_exception_free (&ev); client = CORBA_OBJECT_NIL; } static char * get_lang_list (void) { static char *result = NULL; static gboolean result_set = FALSE; GString *str; gboolean add_comma = FALSE; const char * const* languages; int i; if (result_set) return result; BONOBO_ACTIVATION_LOCK (); str = g_string_new (NULL); languages = g_get_language_names (); for (i = 0; languages[i] != NULL; i++) { if (add_comma) g_string_append (str, ","); else add_comma = TRUE; g_string_append (str, languages[i]); } result_set = TRUE; result = str->str ? str->str : ""; g_string_free (str, FALSE); BONOBO_ACTIVATION_UNLOCK (); return result; } void bonobo_activation_register_client (Bonobo_ActivationContext context, CORBA_Environment *ev) { Bonobo_StringList client_env; int i; Bonobo_ObjectDirectory od; char **env; char **newenv; if (client == CORBA_OBJECT_NIL) client = bonobo_activation_corba_client_new (); Bonobo_ActivationContext_addClient (context, client, get_lang_list (), ev); if (ev->_major != CORBA_NO_EXCEPTION) return; od = bonobo_activation_object_directory_get ( bonobo_activation_username_get (), bonobo_activation_hostname_get ()); /* send environment to activation server */ env = g_listenv (); newenv = g_new (char *, g_strv_length (env) + 1); for (i = 0; env[i]; i++) newenv[i] = g_strconcat (env[i], "=", g_getenv (env[i]), NULL); newenv[i] = NULL; g_strfreev (env); client_env._buffer = newenv; client_env._length = g_strv_length (newenv); Bonobo_ObjectDirectory_addClientEnv (od, client, &client_env, ev); CORBA_exception_init (ev); /* bin potential missing method exception */ g_strfreev (newenv); } Bonobo_ActivationClient bonobo_activation_client_get (void) { CORBA_Environment ev; if (client == CORBA_OBJECT_NIL) { CORBA_exception_init (&ev); bonobo_activation_register_client ((Bonobo_ActivationContext) bonobo_activation_activation_context_get (), &ev); if (ev._major != CORBA_NO_EXCEPTION) g_warning ("Failed to register Bonobo::ActivationClient"); CORBA_exception_free (&ev); } return client; } libbonobo-2.32.1/bonobo-activation/bonobo-activation-register.c0000644000076400007640000004411011173072711021515 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ /* * bonobo-activation: A library for accessing bonobo-activation-server. * * Copyright (C) 1999, 2000 Red Hat, Inc. * Copyright (C) 2000 Eazel, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library 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 * Library General Public License for more details. * * You should have received a copy of the GNU Library General Public * License along with this library; if not, write to the Free * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * * Author: Elliot Lee * */ #include #include #include #include #include #include #include typedef struct { char *name; char *value; } RegistrationEnvValue; static gboolean check_registration = TRUE; static gboolean need_ior_printout = TRUE; static Bonobo_ActivationEnvironment global_reg_env; void bonobo_activation_timeout_reg_check_set (gboolean on) { check_registration = on; } gboolean bonobo_activation_timeout_reg_check (gpointer data) { if (!check_registration || g_getenv ("BONOBO_ACTIVATION_NO_TIMEOUT")) return FALSE; if (need_ior_printout) { g_error ("This process has not registered the required OAFIID " "your source code should register '%s'. If your code is " "performing delayed registration and this message is trapped " "in error, see bonobo_activation_idle_reg_check_set.", bonobo_activation_iid_get ()); } return FALSE; } gboolean Bonobo_ActivationEnvironment_match (const Bonobo_ActivationEnvironment *a, const Bonobo_ActivationEnvironment *b) { int i, start = 0; for (i = 0; i < a->_length; i++) { int j; for (j = start; j < b->_length; j++) if (!strcmp (a->_buffer [i].name, b->_buffer [j].name)) break; if (j >= b->_length) continue; if (strcmp (a->_buffer [i].value, b->_buffer [j].value) != 0) return FALSE; if (j == start) start++; } return TRUE; } void Bonobo_ActivationEnvValue_copy (Bonobo_ActivationEnvValue *dest, Bonobo_ActivationEnvValue *src) { g_return_if_fail (dest != NULL); g_return_if_fail (src != NULL); dest->name = CORBA_string_dup (src->name); dest->value = CORBA_string_dup (src->value); dest->flags = src->flags; } void Bonobo_ActivationEnvValue_set (Bonobo_ActivationEnvValue *env, const char *name, const char *value) { g_return_if_fail (env != NULL); g_return_if_fail (name != NULL); CORBA_free (env->name); CORBA_free (env->value); env->name = CORBA_string_dup (name); env->value = value ? CORBA_string_dup (value) : CORBA_string_dup (""); env->flags = 0; if (!value) env->flags |= Bonobo_ACTIVATION_ENV_FLAG_UNSET; } static void copy_env_list_to_sequence (Bonobo_ActivationEnvironment *environment, GSList *reg_env) { GSList *l; int i; g_assert (reg_env != NULL); environment->_length = environment->_maximum = g_slist_length (reg_env); environment->_buffer = Bonobo_ActivationEnvironment_allocbuf (environment->_length); environment->_release = TRUE; for (l = reg_env, i = 0; l; l = l->next, i++) { RegistrationEnvValue *val = l->data; Bonobo_ActivationEnvValue_set ( &environment->_buffer [i], val->name, val->value); #ifdef BONOBO_ACTIVATION_DEBUG g_message ("Registration environment for '%s' = '%s'%s", environment->_buffer [i].name, environment->_buffer [i].value, (environment->_buffer [i].flags & Bonobo_ACTIVATION_ENV_FLAG_UNSET) ? "(unset)" : ""); #endif } } static char * registration_result_to_string (Bonobo_RegistrationResult result) { switch (result) { case Bonobo_ACTIVATION_REG_SUCCESS: return "(success)"; break; case Bonobo_ACTIVATION_REG_NOT_LISTED: return "(not listed)"; break; case Bonobo_ACTIVATION_REG_ALREADY_ACTIVE: return "(already active)"; break; case Bonobo_ACTIVATION_REG_ERROR: return "(error)"; break; default: g_warning("Invalid registration result code %i", result); break; } return "(invalid)"; } /** * bonobo_activation_register_active_server: * @iid: IID of the server to register. * @obj: CORBA::Object to register. * @reg_env: the registration environment. * * Registers @obj with @iid with the local bonobo-activation-server * daemon. * * If @reg_env is not %NULL, @obj will be registered in such a * way that if a client who's environment differs from the * environment specified in @reg_env, then another attempt * to activate @iid will not result in a reference to @obj * being returned, but rather another instance of @iid being * activated. * * So, for example, you can ensure that a seperate instance * of the component is activated for each distinct X display * (and screen) by: * * * display_name = gdk_display_get_name (gdk_display_get_default()); * reg_env = bonobo_activation_registration_env_set ( * reg_env, "DISPLAY", display_name); * bonobo_activation_register_active_server (iid, active_server, reg_env); * bonobo_activation_registration_env_free (reg_env); * * * If @reg_env is %NULL, the global registration environment * list will be used if it is set. See * bonobo_activation_registration_env_set_global(). * * Return value: status of the registration. */ Bonobo_RegistrationResult bonobo_activation_register_active_server (const char *iid, CORBA_Object obj, GSList *reg_env) { Bonobo_RegistrationResult rv; CORBA_Object existing; rv = bonobo_activation_register_active_server_ext (iid, obj, reg_env, 0, &existing, NULL); if (existing != CORBA_OBJECT_NIL) CORBA_Object_release (existing, NULL); return rv; } /** * bonobo_activation_register_active_server_ext: * @iid: IID of the server to register. * @obj: CORBA::Object to register. * @reg_env: the registration environment. * @flags: registration flags * @existing: in case an object with the same IID has already been * registered, *existing will contain a reference to the existing * object. * @description: An optional component description to be registered * with the server for no server-info components. * * This function is the same as * bonobo_activation_register_active_server(), except that: 1. you can * specify registration flags; 2. in case registration fails because * there is already an object registered with that IID, a reference to * the first object registered is returned. * * At the moment, only the only flag available is * Bonobo_REGISTRATION_FLAG_NO_SERVERINFO, which means to allow * registration of an active server which doesn't have a corresponding * .server. Note that bonobo activation queries will ignore objects * registered this way. This feature is not meant to be used directly * by applications, so beware! * * Return value: status of the registration. **/ Bonobo_RegistrationResult bonobo_activation_register_active_server_ext (const char *iid, CORBA_Object obj, GSList *reg_env, Bonobo_RegistrationFlags flags, CORBA_Object *existing, const char *description) { Bonobo_ObjectDirectory od; CORBA_Environment ev; Bonobo_RegistrationResult retval; const char *actid; g_return_val_if_fail (existing != NULL, Bonobo_ACTIVATION_REG_ERROR); *existing = CORBA_OBJECT_NIL; CORBA_exception_init (&ev); #ifdef BONOBO_ACTIVATION_DEBUG g_message ("About to register '%s': %p%s", iid, obj, CORBA_Object_non_existent (obj, &ev) ? " (nonexistent)" : ""); #endif actid = bonobo_activation_iid_get (); if (actid && strcmp (actid, iid) == 0 && bonobo_activation_private) { retval = Bonobo_ACTIVATION_REG_SUCCESS; } else { Bonobo_ActivationEnvironment environment; od = bonobo_activation_object_directory_get ( bonobo_activation_username_get (), bonobo_activation_hostname_get ()); if (CORBA_Object_is_nil (od, &ev)) return Bonobo_ACTIVATION_REG_ERROR; if (reg_env) copy_env_list_to_sequence (&environment, reg_env); retval = Bonobo_ObjectDirectory_register_new_full (od, iid, reg_env ? &environment : &global_reg_env, obj, flags, description ? description : "", existing, bonobo_activation_client_get (), &ev); if (ev._major == CORBA_SYSTEM_EXCEPTION && !strcmp (ev._id, ex_CORBA_BAD_OPERATION)) { /* fall-back */ CORBA_exception_free (&ev); retval = Bonobo_ObjectDirectory_register_new (od, iid, reg_env ? &environment : &global_reg_env, obj, flags, description ? description : "", existing, &ev); } if (ev._major != CORBA_NO_EXCEPTION) { retval = Bonobo_ACTIVATION_REG_ERROR; g_warning ("Strange exception (%s) from active server registration", ev._id); } if (reg_env) CORBA_free (environment._buffer); } #ifndef BONOBO_ACTIVATION_DEBUG if (g_getenv ("BONOBO_DEBUG") && retval != Bonobo_ACTIVATION_REG_SUCCESS) #endif g_message ("registration of '%s' returns %s", iid, registration_result_to_string (retval)); if (actid && strcmp (actid, iid) == 0 && need_ior_printout) { char *iorstr; FILE *fh; int iorfd = bonobo_activation_ior_fd_get (); need_ior_printout = FALSE; if (iorfd == 1) fh = stdout; else { fh = fdopen (iorfd, "w"); if (!fh) fh = stdout; } iorstr = CORBA_ORB_object_to_string ( bonobo_activation_orb_get (), obj, &ev); if (ev._major == CORBA_NO_EXCEPTION) { fprintf (fh, "%s\n", iorstr); CORBA_free (iorstr); } if (fh != stdout) { fclose (fh); } else if (iorfd > 2) { close (iorfd); } } #ifdef BONOBO_ACTIVATION_DEBUG else if (actid && need_ior_printout) { g_warning ("Unusual '%s' was activated, but " "'%s' is needed", iid, actid); } #endif CORBA_exception_free (&ev); #ifdef BONOBO_ACTIVATION_DEBUG g_message ("Successfully registered `%s'", iid); #endif return retval; } /** * bonobo_activation_active_server_register: * @registration_id: IID of the server to register. * @obj: CORBA::Object to register. * * Registers @obj with @iid with the local bonobo-activation-server * daemon. * * This function is now deprecated and should no longer be * used. bonobo_activation_register_active_server() should now * be used. * * Return value: status of the registration. */ Bonobo_RegistrationResult bonobo_activation_active_server_register (const char *registration_id, CORBA_Object obj) { Bonobo_RegistrationResult retval; char *iid; iid = strrchr (registration_id, ','); if (!iid) { retval = bonobo_activation_register_active_server ( registration_id, obj, NULL); } else { GSList *reg_env = NULL; char *display_name; int len; len = iid - registration_id; display_name = g_alloca (len + 1); strncpy (display_name, registration_id, len); display_name [len] = '\0'; iid++; reg_env = bonobo_activation_registration_env_set ( reg_env, "DISPLAY", display_name); #ifdef BONOBO_ACTIVATION_DEBUG g_message ("Registering iid '%s' with display '%s'", iid, display_name); #endif retval = bonobo_activation_register_active_server (iid, obj, reg_env); bonobo_activation_registration_env_free (reg_env); } return retval; } /** * bonobo_activation_unregister_active_server: * @iid: IID of the server to unregister. * @obj: CORBA::Object to unregister. * * Unregisters @obj with @iid with the local bonobo-activation-server * daemon. */ void bonobo_activation_unregister_active_server (const char *iid, CORBA_Object obj) { Bonobo_ObjectDirectory od; CORBA_Environment ev; const char *actid; actid = bonobo_activation_iid_get (); if(actid && strcmp (actid, iid) == 0 && bonobo_activation_private) { return; } od = bonobo_activation_object_directory_get ( bonobo_activation_username_get (), bonobo_activation_hostname_get ()); CORBA_exception_init (&ev); if (CORBA_Object_is_nil (od, &ev)) return; Bonobo_ObjectDirectory_unregister (od, (char *) iid, obj, &ev); CORBA_exception_free (&ev); } void bonobo_activation_active_server_unregister (const char *iid, CORBA_Object obj) { bonobo_activation_unregister_active_server (iid, obj); } /** * bonobo_activation_registration_env_set: * @reg_env: a GSList pointer. * @name: the name of the env variable (must not be %NULL). * @value: the value of the env variable (may be %NULL). * * Sets the environment variable @name to @value in the * registration environment list @reg_env. * * Return value: the new start of @reg_env. */ GSList * bonobo_activation_registration_env_set (GSList *reg_env, const char *name, const char *value) { RegistrationEnvValue *env_value; g_return_val_if_fail (name != NULL, reg_env); #ifdef BONOBO_ACTIVATION_DEBUG { GSList *l; for (l = reg_env; l; l = l->next) { RegistrationEnvValue *v = l->data; g_assert (v != NULL); g_assert (v->name != NULL); if (!strcmp (v->name, name)) g_warning ("Duplicate env values set - %s=%s and %s=%s", v->name, v->value ? v->value : "(null)", name, value ? value : "(null)"); } } #endif env_value = g_new (RegistrationEnvValue, 1); env_value->name = g_strdup (name); env_value->value = g_strdup (value); reg_env = g_slist_prepend (reg_env, env_value); return reg_env; } /** * bonobo_activation_registration_env_free: * @reg_env: a GSList pointer. * * Frees the registration environment list, @reg_env. */ void bonobo_activation_registration_env_free (GSList *reg_env) { GSList *l; for (l = reg_env; l; l = l->next) { RegistrationEnvValue *env_value = l->data; g_free (env_value->name); g_free (env_value->value); g_free (env_value); } g_slist_free (reg_env); } /** * bonobo_activation_registration_env_set_global: * @reg_env: a GSList pointer. * @append_if_existing: whether or not to append to the global list. * * Sets the global registration environment list with the * contents of @reg_env. If @append_if_existing is set to * %FALSE, the an existing global list will be overwritten. */ void bonobo_activation_registration_env_set_global (GSList *reg_env, gboolean append_if_existing) { Bonobo_ActivationEnvValue *old_buffer; int old_length = 0; if (append_if_existing) old_length = global_reg_env._length; old_buffer = global_reg_env._buffer; if (reg_env) { GSList *l; int i; global_reg_env._length = global_reg_env._maximum = old_length + g_slist_length (reg_env); global_reg_env._buffer = Bonobo_ActivationEnvironment_allocbuf (global_reg_env._length); global_reg_env._release = TRUE; for (i = 0; i < old_length; i++) Bonobo_ActivationEnvValue_copy ( &global_reg_env._buffer [i], &old_buffer [i]); for (l = reg_env; l; l = l->next) { RegistrationEnvValue *val = l->data; Bonobo_ActivationEnvValue_set ( &global_reg_env._buffer [++i], val->name, val->value); } g_assert (i == global_reg_env._length - 1); } else memset (&global_reg_env, 0, sizeof (Bonobo_ActivationEnvironment)); if (old_buffer) CORBA_free (old_buffer); } /** * bonobo_activation_make_registration_id: * @iid: IID of the server to unregister. * @display: the X display name with which you wish to register. * * Creates bonobo-activation registration ID suitable for use * with bonobo_activation_active_server_register(). If @display * is the name of an X display, then using this registration * ID will ensure that the server will only be used by clients * using the same X display. * * This method is now deprecated. Instead you can achieve the * same effect by: * * * display_name = gdk_display_get_name (gdk_display_get_default()); * reg_env = bonobo_activation_registration_env_set ( * reg_env, "DISPLAY", display_name); * bonobo_activation_register_active_server (iid, active_server, reg_env); * bonobo_activation_registration_env_free (reg_env); * * * Return value: newly allocated registration id. */ char * bonobo_activation_make_registration_id (const char *iid, const char *display) { #ifdef BONOBO_ACTIVATION_DEBUG g_message ("Make registration id from '%s' '%s'", iid, display); #endif if (display == NULL) { return g_strdup (iid); } else { return g_strconcat (display, ",", iid, NULL); } } libbonobo-2.32.1/bonobo-activation/bonobo-activation-server-info.h0000644000076400007640000000575011173072711022144 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ /* * liboaf: A library for accessing oafd in a nice way. * * Copyright (C) 1999, 2000 Red Hat, Inc. * Copyright (C) 2000 Eazel, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library 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 * Library General Public License for more details. * * You should have received a copy of the GNU Library General Public * License along with this library; if not, write to the Free * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * * Author: Elliot Lee * */ #ifndef BONOBO_ACTIVATION_SERVER_INFO_H #define BONOBO_ACTIVATION_SERVER_INFO_H #include G_BEGIN_DECLS Bonobo_ActivationProperty *bonobo_server_info_prop_find (Bonobo_ServerInfo *server, const char *prop_name); const char *bonobo_server_info_prop_lookup (Bonobo_ServerInfo *server, const char *prop_name, GSList *i18n_languages); void Bonobo_ActivationPropertyValue_copy (Bonobo_ActivationPropertyValue *copy, const Bonobo_ActivationPropertyValue *original); void Bonobo_ActivationProperty_copy (Bonobo_ActivationProperty *copy, const Bonobo_ActivationProperty *original); void CORBA_sequence_Bonobo_ActivationProperty_copy (CORBA_sequence_Bonobo_ActivationProperty *copy, const CORBA_sequence_Bonobo_ActivationProperty *original); void Bonobo_ServerInfo_copy (Bonobo_ServerInfo *copy, const Bonobo_ServerInfo *original); Bonobo_ServerInfo *Bonobo_ServerInfo_duplicate (const Bonobo_ServerInfo *original); Bonobo_ServerInfoList *Bonobo_ServerInfoList_duplicate (const Bonobo_ServerInfoList *original); G_END_DECLS #endif /* BONOBO_ACTIVATION_SERVER_INFO_H */ libbonobo-2.32.1/bonobo-activation/AUTHORS0000644000076400007640000000022311173072711015157 00000000000000Michael Meeks Mark McLoughlin Elliot Lee Maciej Stachowiak libbonobo-2.32.1/bonobo-activation/bonobo-activation-get-language-list.c0000644000076400007640000000434311173072711023206 00000000000000/* * Copyright (C) 1997, 1998, 1999, 2000 Free Software Foundation * All rights reserved. * * This file is part of the Gnome Library. * * The Gnome Library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library General Public License as * published by the Free Software Foundation; either version 2 of the * License, or (at your option) any later version. * * The Gnome 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 * Library General Public License for more details. * * You should have received a copy of the GNU Library General Public * License along with the Gnome Library; see the file COPYING.LIB. If not, * write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, * Boston, MA 02111-1307, USA. */ #include #include #include /* ALEX: * This function is not in use anymore in bonobo. However, some * versions of libgnome and gnome-vfs use it, so we can't remove it. * We keep it here for backwards compat. For details, see bug 168948. */ /* * bonobo_activation_i18n_get_language_list: * * This computes a list of language strings that the user wants. It searches in * the standard environment variables to find the list, which is sorted in order * from most desirable to least desirable. The `C' locale is appended to the * list if it does not already appear (other routines depend on this * behaviour). * * The argument is ignored. It used to be the category to use for the locale. * * Return value: the list of languages, this list should not be freed as it is * owned by gnome-i18n. */ const GList * bonobo_activation_i18n_get_language_list (const gchar *ignored) { static GList *list = NULL; const char * const* langs; int i; BONOBO_ACTIVATION_LOCK (); if (list == NULL) { langs = g_get_language_names (); for (i = 0; langs[i] != NULL; i++) { list = g_list_prepend (list, g_strdup(langs[i])); } list = g_list_reverse (list); } BONOBO_ACTIVATION_UNLOCK (); return list; } libbonobo-2.32.1/bonobo-activation/bonobo-activation-private.h0000644000076400007640000001155111173072711021353 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ /* * bonobo-activation: A library for accessing bonobo-activation-server. * * Copyright (C) 1999, 2000 Red Hat, Inc. * Copyright (C) 2000 Eazel, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library 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 * Library General Public License for more details. * * You should have received a copy of the GNU Library General Public * License along with this library; if not, write to the Free * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * * Author: Elliot Lee */ #ifndef BONOBO_ACTIVATION_PRIVATE_H #define BONOBO_ACTIVATION_PRIVATE_H #include #include #include #include #define BONOBO_ACTIVATION_FACTORY_PRIVATE_TIMEOUT 1 extern GStaticRecMutex _bonobo_activation_guard; #define BONOBO_ACTIVATION_LOCK() g_static_rec_mutex_lock (&_bonobo_activation_guard) #define BONOBO_ACTIVATION_UNLOCK() g_static_rec_mutex_unlock (&_bonobo_activation_guard) void bonobo_activation_timeout_reg_check_set (gboolean on); gboolean bonobo_activation_timeout_reg_check (gpointer data); void bonobo_activation_server_fork_init (gboolean threaded); typedef CORBA_Object (*BonoboForkReCheckFn) (const Bonobo_ActivationEnvironment *environemnt, const char *act_iid, gpointer user_data); CORBA_Object bonobo_activation_server_by_forking (const char **cmd, gboolean set_process_group, int fd_arg, const Bonobo_ActivationEnvironment *environemnt, const char *od_iorstr, const char *act_iid, gboolean use_new_loop, BonoboForkReCheckFn re_check, gpointer user_data, CORBA_Environment *ev); void bonobo_activation_base_service_init (void); int bonobo_activation_ior_fd_get (void); CORBA_Object bonobo_activation_activation_context_get (void); CORBA_Object bonobo_activation_object_directory_get (const char *username, const char *hostname); void bonobo_activation_init_activation_env (void); extern gboolean bonobo_activation_private; CORBA_Object bonobo_activation_internal_activation_context_get_extended ( gboolean existing_only, CORBA_Environment *ev); CORBA_Object bonobo_activation_internal_service_get_extended ( const BonoboActivationBaseService *base_service, gboolean existing_only, CORBA_Environment *ev); gboolean Bonobo_ActivationEnvironment_match (const Bonobo_ActivationEnvironment *a, const Bonobo_ActivationEnvironment *b); void Bonobo_ActivationEnvValue_set (Bonobo_ActivationEnvValue *env, const char *name, const char *value); void Bonobo_ActivationEnvValue_copy (Bonobo_ActivationEnvValue *dest, Bonobo_ActivationEnvValue *src); Bonobo_ActivationClient bonobo_activation_client_get (void); /* used only for unit testing */ CORBA_char * _bonobo_activation_get_activation_env_value (const char *name); char * _bonobo_activation_ior_fname_get (void); char * _bonobo_activation_lock_fname_get (void); #ifdef G_OS_WIN32 char *_bonobo_activation_win32_replace_prefix (const char *runtime_prefix, const char *configure_time_path); const char *_bonobo_activation_win32_get_prefix (void); const char *_bonobo_activation_win32_get_server_libexecdir (void); const char *_bonobo_activation_win32_get_serverinfodir (void); const char *_bonobo_activation_win32_get_server_confdir (void); const char *_bonobo_activation_win32_get_localedir (void); #endif #endif /* BONOBO_ACTIVATION_PRIVATE_H */ libbonobo-2.32.1/bonobo-activation/bonobo-activation-version.h0000664000076400007640000000225011546333036021370 00000000000000/* * bonobo-activation: A library for accessing bonobo-activation-server. * * Copyright (C) 1999, 2000 Red Hat, Inc. * Copyright (C) 2000 Eazel, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library 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 * Library General Public License for more details. * * You should have received a copy of the GNU Library General Public * License along with this library; if not, write to the Free * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * * Author: Elliot Lee */ #ifndef BONOBO_ACTIVATION_VERSION_H #define BONOBO_ACTIVATION_VERSION_H #define BONOBO_ACTIVATION_MAJOR_VERSION (2) #define BONOBO_ACTIVATION_MINOR_VERSION (32) #define BONOBO_ACTIVATION_MICRO_VERSION (1) #endif /* BONOBO_ACTIVATION_VERSION_H */ libbonobo-2.32.1/bonobo-activation/bonobo-activation-register.h0000644000076400007640000000552511173072711021531 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ /* * bonobo-activation: A library for accessing bonobo-activation-server. * * Copyright (C) 1999, 2000 Red Hat, Inc. * Copyright (C) 2000 Eazel, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library 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 * Library General Public License for more details. * * You should have received a copy of the GNU Library General Public * License along with this library; if not, write to the Free * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * * Author: Elliot Lee */ #ifndef BONOBO_ACTIVATION_REGISTER_H #define BONOBO_ACTIVATION_REGISTER_H #include #include G_BEGIN_DECLS Bonobo_RegistrationResult bonobo_activation_register_active_server (const char *iid, CORBA_Object obj, GSList *reg_env); Bonobo_RegistrationResult bonobo_activation_register_active_server_ext (const char *iid, CORBA_Object obj, GSList *reg_env, Bonobo_RegistrationFlags flags, CORBA_Object *existing, const char *description); void bonobo_activation_unregister_active_server (const char *iid, CORBA_Object obj); GSList *bonobo_activation_registration_env_set (GSList *reg_env, const char *name, const char *value); void bonobo_activation_registration_env_free (GSList *reg_env); void bonobo_activation_registration_env_set_global (GSList *reg_env, gboolean append_if_existing); #ifndef BONOBO_DISABLE_DEPRECATED Bonobo_RegistrationResult bonobo_activation_active_server_register (const char *registration_id, CORBA_Object obj); void bonobo_activation_active_server_unregister (const char *iid, CORBA_Object obj); char *bonobo_activation_make_registration_id (const char *iid, const char *display); #endif /* BONOBO_DISABLE_DEPRECATED */ const char *bonobo_activation_iid_get (void); G_END_DECLS #endif /* BONOBO_ACTIVATION_REGISTER_H */ libbonobo-2.32.1/bonobo-activation/bonobo-activation-activate-private.h0000644000076400007640000000273111173072711023151 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ /* * bonobo-activation: A library for accessing bonobo-activation-server. * * Copyright (C) 1999, 2000 Red Hat, Inc. * Copyright (C) 2000 Eazel, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library 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 * Library General Public License for more details. * * You should have received a copy of the GNU Library General Public * License along with this library; if not, write to the Free * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * * Author: Elliot Lee */ #ifndef BONOBO_ACTIVATION_ACTIVATE_PRIVATE_H #define BONOBO_ACTIVATION_ACTIVATE_PRIVATE_H #include char *bonobo_activation_maybe_add_test_requirements (const char *requirements); void bonobo_activation_copy_string_array_to_Bonobo_StringList (char *const *selection_order, Bonobo_StringList *ret_val); #endif /* BONOBO_ACTIVATION_ACTIVATE_PRIVATE_H */ libbonobo-2.32.1/bonobo-activation/Makefile.in0000664000076400007640000007061111546333026016171 00000000000000# Makefile.in generated by automake 1.11.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008, 2009 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@ VPATH = @srcdir@ 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 = bonobo-activation DIST_COMMON = $(bonobo_activationinclude_HEADERS) \ $(srcdir)/Makefile.am $(srcdir)/Makefile.in \ $(srcdir)/bonobo-activation-2.0-uninstalled.pc.in \ $(srcdir)/bonobo-activation-2.0.pc.in \ $(srcdir)/bonobo-activation-version.h.in AUTHORS ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.in 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 = bonobo-activation-2.0.pc \ bonobo-activation-2.0-uninstalled.pc \ bonobo-activation-version.h 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__installdirs = "$(DESTDIR)$(libdir)" "$(DESTDIR)$(pkgconfigdir)" \ "$(DESTDIR)$(bonobo_activationincludedir)" LTLIBRARIES = $(lib_LTLIBRARIES) am__DEPENDENCIES_1 = libbonobo_activation_la_DEPENDENCIES = $(am__DEPENDENCIES_1) am__objects_1 = am__objects_2 = $(am__objects_1) am__objects_3 = $(am__objects_2) am__objects_4 = Bonobo_Unknown-common.lo \ Bonobo_GenericFactory-common.lo \ Bonobo_Activation_types-common.lo \ Bonobo_ObjectDirectory-common.lo \ Bonobo_ActivationContext-common.lo $(am__objects_1) am__objects_5 = $(am__objects_4) am__objects_6 = Bonobo_Unknown-skels.lo Bonobo_GenericFactory-skels.lo \ Bonobo_Activation_types-skels.lo \ Bonobo_ObjectDirectory-skels.lo \ Bonobo_ActivationContext-skels.lo $(am__objects_1) am__objects_7 = $(am__objects_6) am__objects_8 = Bonobo_Unknown-stubs.lo Bonobo_GenericFactory-stubs.lo \ Bonobo_Activation_types-stubs.lo \ Bonobo_ObjectDirectory-stubs.lo \ Bonobo_ActivationContext-stubs.lo $(am__objects_1) am__objects_9 = $(am__objects_8) am__objects_10 = $(am__objects_3) $(am__objects_5) $(am__objects_7) \ $(am__objects_9) $(am__objects_1) am_libbonobo_activation_la_OBJECTS = $(am__objects_10) \ bonobo-activation-get-language-list.lo \ bonobo-activation-client.lo bonobo-activation-id.lo \ bonobo-activation-mime.lo bonobo-activation-shlib.lo \ bonobo-activation-activate.lo \ bonobo-activation-base-service.lo \ bonobo-activation-register.lo bonobo-activation-server-info.lo \ bonobo-activation-fork-server.lo bonobo-activation-init.lo \ $(am__objects_1) libbonobo_activation_la_OBJECTS = \ $(am_libbonobo_activation_la_OBJECTS) AM_V_lt = $(am__v_lt_$(V)) am__v_lt_ = $(am__v_lt_$(AM_DEFAULT_VERBOSITY)) am__v_lt_0 = --silent 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_$(V)) am__v_CC_ = $(am__v_CC_$(AM_DEFAULT_VERBOSITY)) am__v_CC_0 = @echo " CC " $@; AM_V_at = $(am__v_at_$(V)) am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) 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_$(V)) am__v_CCLD_ = $(am__v_CCLD_$(AM_DEFAULT_VERBOSITY)) am__v_CCLD_0 = @echo " CCLD " $@; AM_V_GEN = $(am__v_GEN_$(V)) am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) am__v_GEN_0 = @echo " GEN " $@; SOURCES = $(libbonobo_activation_la_SOURCES) DIST_SOURCES = $(libbonobo_activation_la_SOURCES) DATA = $(pkgconfig_DATA) HEADERS = $(bonobo_activationinclude_HEADERS) ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ AR = @AR@ AS = @AS@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ BONOBO_ACTIVATION_LT_VERSION_INFO = @BONOBO_ACTIVATION_LT_VERSION_INFO@ BONOBO_MAJOR_VERSION = @BONOBO_MAJOR_VERSION@ BONOBO_MICRO_VERSION = @BONOBO_MICRO_VERSION@ BONOBO_MINOR_VERSION = @BONOBO_MINOR_VERSION@ BONOBO_SLAY = @BONOBO_SLAY@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DISABLE_DEPRECATED_CFLAGS = @DISABLE_DEPRECATED_CFLAGS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GREP = @GREP@ GTHREAD_CFLAGS = @GTHREAD_CFLAGS@ GTHREAD_LIBS = @GTHREAD_LIBS@ GTKDOC_CHECK = @GTKDOC_CHECK@ GTKDOC_MKPDF = @GTKDOC_MKPDF@ GTKDOC_REBASE = @GTKDOC_REBASE@ HTML_DIR = @HTML_DIR@ IF_BSD_PS = @IF_BSD_PS@ IF_CYGWIN_PS = @IF_CYGWIN_PS@ IF_POSIX_PS = @IF_POSIX_PS@ 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@ LD = @LD@ LDFLAGS = @LDFLAGS@ LEX = @LEX@ LEXLIB = @LEXLIB@ LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ LFLAGS = @LFLAGS@ LIBBONOBO_CFLAGS = @LIBBONOBO_CFLAGS@ LIBBONOBO_LIBS = @LIBBONOBO_LIBS@ LIBBONOBO_LT_VERSION_INFO = @LIBBONOBO_LT_VERSION_INFO@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIPO = @LIPO@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ NM = @NM@ NMEDIT = @NMEDIT@ OBJDUMP = @OBJDUMP@ OBJEXT = @OBJEXT@ ORBIT_IDL = @ORBIT_IDL@ OTOOL = @OTOOL@ OTOOL64 = @OTOOL64@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PERL_PATH = @PERL_PATH@ PKG_CONFIG = @PKG_CONFIG@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ PS_PATH = @PS_PATH@ RANLIB = @RANLIB@ SEARCHPATHSEP = @SEARCHPATHSEP@ SED = @SED@ SERVER_CFLAGS = @SERVER_CFLAGS@ SERVER_LIBS = @SERVER_LIBS@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SOPREFIX = @SOPREFIX@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ WARN_CFLAGS = @WARN_CFLAGS@ XGETTEXT = @XGETTEXT@ YACC = @YACC@ YFLAGS = @YFLAGS@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ 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@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ lt_ECHO = @lt_ECHO@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ 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@ NULL = lib_LTLIBRARIES = libbonobo-activation.la INCLUDES = \ -I$(top_srcdir) \ -I$(top_builddir) \ -DPREFIX=\""$(prefix)\"" \ -DSERVER_LIBEXECDIR=\""$(libexecdir)\"" \ -DSERVERINFODIR=\"$(libdir)/bonobo/servers\" \ -DSERVER_CONFDIR=\"$(sysconfdir)\" \ -DBONOBO_ACTIVATION_LOCALEDIR=\""${prefix}/${DATADIRNAME}/locale"\" \ $(LIBBONOBO_CFLAGS) \ -DVERSION=\"$(VERSION)\" \ $(DISABLE_DEPRECATED_CFLAGS) \ -DG_LOG_DOMAIN=\"Bonobo-Activation\" \ $(NULL) AM_LDFLAGS = \ $(LIBBONOBO_LIBS) \ $(BONOBO_ACTIVATION_LT_VERSION_INFO) \ -no-undefined \ $(NULL) bonobo_activationincludedir = $(includedir)/bonobo-activation-2.0/bonobo-activation bonobo_activationinclude_HEADERS = \ Bonobo_Unknown.h \ Bonobo_GenericFactory.h \ Bonobo_Activation_types.h \ bonobo-activation.h \ bonobo-activation-async.h \ bonobo-activation-activate.h \ bonobo-activation-init.h \ bonobo-activation-mime.h \ bonobo-activation-shlib.h \ bonobo-activation-register.h \ bonobo-activation-server-info.h \ bonobo-activation-version.h \ $(NULL) libbonobo_activation_la_SOURCES = \ $(BUILT_SOURCES) \ bonobo-activation-get-language-list.c \ bonobo-activation-client.c \ bonobo-activation-client.h \ bonobo-activation-id.h \ bonobo-activation-id.c \ bonobo-activation-mime.c \ bonobo-activation-private.h \ bonobo-activation-shlib.c \ bonobo-activation-activate.c \ bonobo-activation-activate-private.h \ bonobo-activation-base-service.h \ bonobo-activation-base-service.c \ bonobo-activation-register.c \ bonobo-activation-server-info.c \ bonobo-activation-fork-server.c \ bonobo-activation-init.c \ $(NULL) libbonobo_activation_la_LIBADD = $(INTLLIBS) IDL_FLAGS = -I$(top_srcdir)/idl IDL_DIR = $(top_srcdir)/idl/ IDL_FILES = Bonobo_Unknown.idl \ Bonobo_GenericFactory.idl \ Bonobo_Activation_types.idl \ Bonobo_ObjectDirectory.idl \ Bonobo_ActivationContext.idl \ $(NULL) IDL_HEADER_FILES = $(IDL_FILES:.idl=.h) IDL_COMMONS = $(IDL_FILES:.idl=-common.c) IDL_SKELS = $(IDL_FILES:.idl=-skels.c) IDL_STUBS = $(IDL_FILES:.idl=-stubs.c) BUILT_SOURCES = $(IDL_HEADER_FILES) $(IDL_COMMONS) $(IDL_SKELS) $(IDL_STUBS) \ $(NULL) @MAINTAINER_MODE_TRUE@DEPS_MAGIC := $(shell mkdir .deps > /dev/null 2>&1 || :) @MAINTAINER_MODE_TRUE@IDL_DEP_FILES = $(IDL_FILES:%.idl=.deps/%.idl.P) CLEANFILES = \ $(BUILT_SOURCES) \ $(NULL) pkgconfigdir = $(libdir)/pkgconfig pkgconfig_DATA = bonobo-activation-2.0.pc EXTRA_DIST = $(pkgconfig_DATA) bonobo-activation-2.0-uninstalled.pc.in AUTHORS all: $(BUILT_SOURCES) $(MAKE) $(AM_MAKEFLAGS) 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) --foreign bonobo-activation/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --foreign bonobo-activation/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): bonobo-activation-2.0.pc: $(top_builddir)/config.status $(srcdir)/bonobo-activation-2.0.pc.in cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ bonobo-activation-2.0-uninstalled.pc: $(top_builddir)/config.status $(srcdir)/bonobo-activation-2.0-uninstalled.pc.in cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ bonobo-activation-version.h: $(top_builddir)/config.status $(srcdir)/bonobo-activation-version.h.in cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ install-libLTLIBRARIES: $(lib_LTLIBRARIES) @$(NORMAL_INSTALL) test -z "$(libdir)" || $(MKDIR_P) "$(DESTDIR)$(libdir)" @list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \ list2=; for p in $$list; do \ if test -f $$p; then \ list2="$$list2 $$p"; \ else :; fi; \ done; \ test -z "$$list2" || { \ echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(libdir)'"; \ $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(libdir)"; \ } uninstall-libLTLIBRARIES: @$(NORMAL_UNINSTALL) @list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \ for p in $$list; do \ $(am__strip_dir) \ echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(libdir)/$$f'"; \ $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(libdir)/$$f"; \ done clean-libLTLIBRARIES: -test -z "$(lib_LTLIBRARIES)" || rm -f $(lib_LTLIBRARIES) @list='$(lib_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 libbonobo-activation.la: $(libbonobo_activation_la_OBJECTS) $(libbonobo_activation_la_DEPENDENCIES) $(AM_V_CCLD)$(LINK) -rpath $(libdir) $(libbonobo_activation_la_OBJECTS) $(libbonobo_activation_la_LIBADD) $(LIBS) mostlyclean-compile: -rm -f *.$(OBJEXT) distclean-compile: -rm -f *.tab.c @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Bonobo_ActivationContext-common.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Bonobo_ActivationContext-skels.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Bonobo_ActivationContext-stubs.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Bonobo_Activation_types-common.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Bonobo_Activation_types-skels.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Bonobo_Activation_types-stubs.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Bonobo_GenericFactory-common.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Bonobo_GenericFactory-skels.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Bonobo_GenericFactory-stubs.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Bonobo_ObjectDirectory-common.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Bonobo_ObjectDirectory-skels.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Bonobo_ObjectDirectory-stubs.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Bonobo_Unknown-common.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Bonobo_Unknown-skels.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Bonobo_Unknown-stubs.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-activation-activate.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-activation-base-service.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-activation-client.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-activation-fork-server.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-activation-get-language-list.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-activation-id.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-activation-init.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-activation-mime.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-activation-register.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-activation-server-info.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-activation-shlib.Plo@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 @am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(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 @am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(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 @am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $< mostlyclean-libtool: -rm -f *.lo clean-libtool: -rm -rf .libs _libs install-pkgconfigDATA: $(pkgconfig_DATA) @$(NORMAL_INSTALL) test -z "$(pkgconfigdir)" || $(MKDIR_P) "$(DESTDIR)$(pkgconfigdir)" @list='$(pkgconfig_DATA)'; test -n "$(pkgconfigdir)" || list=; \ for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ echo "$$d$$p"; \ done | $(am__base_list) | \ while read files; do \ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(pkgconfigdir)'"; \ $(INSTALL_DATA) $$files "$(DESTDIR)$(pkgconfigdir)" || exit $$?; \ done uninstall-pkgconfigDATA: @$(NORMAL_UNINSTALL) @list='$(pkgconfig_DATA)'; test -n "$(pkgconfigdir)" || list=; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ test -n "$$files" || exit 0; \ echo " ( cd '$(DESTDIR)$(pkgconfigdir)' && rm -f" $$files ")"; \ cd "$(DESTDIR)$(pkgconfigdir)" && rm -f $$files install-bonobo_activationincludeHEADERS: $(bonobo_activationinclude_HEADERS) @$(NORMAL_INSTALL) test -z "$(bonobo_activationincludedir)" || $(MKDIR_P) "$(DESTDIR)$(bonobo_activationincludedir)" @list='$(bonobo_activationinclude_HEADERS)'; test -n "$(bonobo_activationincludedir)" || list=; \ 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_HEADER) $$files '$(DESTDIR)$(bonobo_activationincludedir)'"; \ $(INSTALL_HEADER) $$files "$(DESTDIR)$(bonobo_activationincludedir)" || exit $$?; \ done uninstall-bonobo_activationincludeHEADERS: @$(NORMAL_UNINSTALL) @list='$(bonobo_activationinclude_HEADERS)'; test -n "$(bonobo_activationincludedir)" || list=; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ test -n "$$files" || exit 0; \ echo " ( cd '$(DESTDIR)$(bonobo_activationincludedir)' && rm -f" $$files ")"; \ cd "$(DESTDIR)$(bonobo_activationincludedir)" && rm -f $$files 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 $(MAKE) $(AM_MAKEFLAGS) \ top_distdir="$(top_distdir)" distdir="$(distdir)" \ dist-hook check-am: all-am check: $(BUILT_SOURCES) $(MAKE) $(AM_MAKEFLAGS) check-am all-am: Makefile $(LTLIBRARIES) $(DATA) $(HEADERS) installdirs: for dir in "$(DESTDIR)$(libdir)" "$(DESTDIR)$(pkgconfigdir)" "$(DESTDIR)$(bonobo_activationincludedir)"; 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: $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install 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) @MAINTAINER_MODE_FALSE@distclean-local: clean: clean-am clean-am: clean-generic clean-libLTLIBRARIES clean-libtool \ mostlyclean-am distclean: distclean-am -rm -rf ./$(DEPDIR) -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-local distclean-tags dvi: dvi-am dvi-am: html: html-am html-am: info: info-am info-am: install-data-am: install-bonobo_activationincludeHEADERS \ install-pkgconfigDATA install-dvi: install-dvi-am install-dvi-am: install-exec-am: install-libLTLIBRARIES 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-bonobo_activationincludeHEADERS \ uninstall-libLTLIBRARIES uninstall-pkgconfigDATA .MAKE: all check install install-am install-strip .PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \ clean-libLTLIBRARIES clean-libtool ctags dist-hook distclean \ distclean-compile distclean-generic distclean-libtool \ distclean-local distclean-tags distdir dvi dvi-am html html-am \ info info-am install install-am \ install-bonobo_activationincludeHEADERS 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-libLTLIBRARIES install-man install-pdf \ install-pdf-am install-pkgconfigDATA 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-bonobo_activationincludeHEADERS \ uninstall-libLTLIBRARIES uninstall-pkgconfigDATA $(libbonobo_activation_la_OBJECTS): $(BUILT_SOURCES) %.h %-stubs.c %-skels.c %-common.c %-imodule.c %-skelimpl.c: $(IDL_DIR)%.idl $(ORBIT_IDL) @-(rm -f $(*).h $(*)-stubs.c $(*)-skels.c $(*)-common.c $(*)-imodule.c $(*)-skelimpl.c || true) > /dev/null $(AM_V_GEN) $(ORBIT_IDL) $(IDL_FLAGS) "-D__$(*)_COMPILATION" --deps $(*D)/.deps/$(*F).idl.P $< @MAINTAINER_MODE_TRUE@-include $(IDL_DEP_FILES) @MAINTAINER_MODE_TRUE@distclean-local: @MAINTAINER_MODE_TRUE@ -rm -rf .deps dist-hook: cd $(distdir) ; rm -f $(CLEANFILES) # 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: libbonobo-2.32.1/bonobo-activation/bonobo-activation-shlib.h0000644000076400007640000000521411173072711021001 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ /* * bonobo-activation: A library for accessing bonobo-activation-server. * * Copyright (C) 1999, 2000 Red Hat, Inc. * Copyright (C) 2000 Eazel, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library 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 * Library General Public License for more details. * * You should have received a copy of the GNU Library General Public * License along with this library; if not, write to the Free * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * * Author: Elliot Lee */ #ifndef BONOBO_ACTIVATION_SHLIB_H #define BONOBO_ACTIVATION_SHLIB_H #include G_BEGIN_DECLS typedef struct { const char *iid; /* This routine should call bonobo_activation_plugin_use(servant, impl_ptr), * as should all routines which activate CORBA objects * implemented by this shared library. This needs to be done * before making any CORBA calls on the object, or * passing that object around. First thing after servant creation * always works. :) */ CORBA_Object (*activate) (PortableServer_POA poa, const char *iid, gpointer impl_ptr, /* This pointer should be stored by the implementation * to be passed to bonobo_activation_plugin_unuse() in the * implementation's destruction routine. */ CORBA_Environment *ev); gpointer dummy[4]; } BonoboActivationPluginObject; typedef struct { const BonoboActivationPluginObject *plugin_object_list; const char *description; gpointer dummy[8]; } BonoboActivationPlugin; void bonobo_activation_plugin_use (PortableServer_Servant servant, gpointer impl_ptr); void bonobo_activation_plugin_unuse (gpointer impl_ptr); #ifndef BONOBO_DISABLE_DEPRECATED CORBA_Object bonobo_activation_activate_shlib_server (Bonobo_ActivationResult *sh, CORBA_Environment *ev); #endif G_END_DECLS #endif /* BONOBO_ACTIVATION_SHLIB_H */ libbonobo-2.32.1/bonobo-activation/bonobo-activation-mime.c0000644000076400007640000002463711373604303020634 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ /* * bonobo-activation: A library for accessing bonobo-activation-server. * * Copyright (C) 2000 Eazel, Inc. * Copyright (C) 2006 Red Hat, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library 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 * Library General Public License for more details. * * You should have received a copy of the GNU Library General Public * License along with this library; if not, write to the Free * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * * Authors: * Maciej Stachowiak * Alexander Larsson */ #include #include #include "bonobo-activation-mime.h" #include #include static char * extract_prefix_add_suffix (const char *string, const char *separator, const char *suffix) { const char *separator_position; int prefix_length; char *result; separator_position = strstr (string, separator); prefix_length = separator_position == NULL ? strlen (string) : separator_position - string; result = g_malloc (prefix_length + strlen (suffix) + 1); strncpy (result, string, prefix_length); result[prefix_length] = '\0'; strcat (result, suffix); return result; } static char * get_supertype_from_mime_type (const char *mime_type) { if (mime_type == NULL) { return NULL; } return extract_prefix_add_suffix (mime_type, "/", "/*"); } static GList * Bonobo_ServerInfoList_to_ServerInfo_g_list (Bonobo_ServerInfoList *info_list) { GList *retval; int i; retval = NULL; if (info_list != NULL && info_list->_length > 0) { for (i = 0; i < info_list->_length; i++) { retval = g_list_prepend (retval, Bonobo_ServerInfo_duplicate (&info_list->_buffer[i])); } retval = g_list_reverse (retval); } return retval; } /** * bonobo_activation_get_default_component_for_mime_type: * @mime_type: a const char * containing a mime type, e.g. "image/png". * * Query the MIME database for the default Bonobo component to be activated to * view files of MIME type @mime_type. * * Return value: a #Bonobo_ServerInfo * representing the OAF server to be activated * to get a reference to the proper component. * * Since: 2.16.0 */ Bonobo_ServerInfo * bonobo_activation_get_default_component_for_mime_type (const char *mime_type) { Bonobo_ServerInfoList *info_list; Bonobo_ServerInfo *default_component; CORBA_Environment ev; char *supertype; char *query; char *sort[4]; if (mime_type == NULL) { return NULL; } CORBA_exception_init (&ev); supertype = get_supertype_from_mime_type (mime_type); /* Find a component that supports either the exact mime type, the supertype, or all mime types. */ query = g_strconcat ("bonobo:supported_mime_types.has_one (['", mime_type, "', '", supertype, "', '*'])", NULL); /* Prefer something that matches the exact type to something that matches the supertype */ sort[0] = g_strconcat ("bonobo:supported_mime_types.has ('", mime_type, "')", NULL); /* Prefer something that matches the supertype to something that matches `*' */ sort[1] = g_strconcat ("bonobo:supported_mime_types.has ('", supertype, "')", NULL); sort[2] = g_strdup ("name"); sort[3] = NULL; info_list = bonobo_activation_query (query, sort, &ev); default_component = NULL; if (ev._major == CORBA_NO_EXCEPTION) { if (info_list != NULL && info_list->_length > 0) { default_component = Bonobo_ServerInfo_duplicate (&info_list->_buffer[0]); } CORBA_free (info_list); } g_free (supertype); g_free (query); g_free (sort[0]); g_free (sort[1]); g_free (sort[2]); g_free (sort[3]); CORBA_exception_free (&ev); return default_component; } /** * bonobo_activation_get_all_components_for_mime_type: * @mime_type: a const char * containing a mime type, e.g. "image/png". * * Return an alphabetically sorted list of #Bonobo_ServerInfo * data structures representing all Bonobo components registered * to handle files of @mime_type (and supertypes). * * Return value: a #GList * where the elements are #Bonobo_ServerInfo * * representing components that can handle @mime_type. * * Since: 2.16.0 */ GList * bonobo_activation_get_all_components_for_mime_type (const char *mime_type) { Bonobo_ServerInfoList *info_list; GList *components_list; CORBA_Environment ev; char *supertype; char *query; char *sort[2]; if (mime_type == NULL) { return NULL; } CORBA_exception_init (&ev); /* Find a component that supports either the exact mime type, the supertype, or all mime types. */ /* FIXME bugzilla.eazel.com 1142: should probably check for the right interfaces too. Also slightly semantically different from nautilus in other tiny ways. */ supertype = get_supertype_from_mime_type (mime_type); query = g_strconcat ("bonobo:supported_mime_types.has_one (['", mime_type, "', '", supertype, "', '*'])", NULL); g_free (supertype); /* Alphebetize by name, for the sake of consistency */ sort[0] = g_strdup ("name"); sort[1] = NULL; info_list = bonobo_activation_query (query, sort, &ev); if (ev._major == CORBA_NO_EXCEPTION) { components_list = Bonobo_ServerInfoList_to_ServerInfo_g_list (info_list); CORBA_free (info_list); } else { components_list = NULL; } g_free (query); g_free (sort[0]); CORBA_exception_free (&ev); return components_list; } /* This is code that used to be in gnome-vfs, but that has been moved to bonobo so that * gnome-vfs doesn't have to depend on bonobo. We keep the old names to keep binary compatibility, * although new users of this should use the bonobo_activation_* calls above instead. */ /* There public headers are in gnome-vfs, but you really shouldn't use these functions */ Bonobo_ServerInfo *gnome_vfs_mime_get_default_component (const char *mime_type); GList * gnome_vfs_mime_get_all_components (const char *mime_type); void gnome_vfs_mime_component_list_free (GList *list); GList * gnome_vfs_mime_remove_component_from_list (GList *components, const char *iid, gboolean *did_remove); GList * gnome_vfs_mime_id_list_from_component_list (GList *components); gboolean gnome_vfs_mime_id_in_component_list (const char *iid, GList *components); GList * gnome_vfs_mime_get_short_list_components (const char *mime_type); static void initialize_bonobo (void) { char *bogus_argv[2] = { "dummy", NULL }; static gboolean initialized = FALSE; if (initialized) { return; } initialized = TRUE; if (!bonobo_activation_is_initialized ()) { bonobo_activation_init (0, bogus_argv); } return; } Bonobo_ServerInfo * gnome_vfs_mime_get_default_component (const char *mime_type) { initialize_bonobo (); return bonobo_activation_get_default_component_for_mime_type (mime_type); } GList * gnome_vfs_mime_get_all_components (const char *mime_type) { initialize_bonobo (); return bonobo_activation_get_all_components_for_mime_type (mime_type); } GList * gnome_vfs_mime_get_short_list_components (const char *mime_type) { Bonobo_ServerInfoList *info_list; GList *components_list; CORBA_Environment ev; char *supertype; char *query; char *sort[4]; initialize_bonobo (); if (mime_type == NULL) { return NULL; } CORBA_exception_init (&ev); /* Find a component that supports either the exact mime type, the supertype, or all mime types. */ /* FIXME bugzilla.eazel.com 1142: should probably check for the right interfaces too. Also slightly semantically different from nautilus in other tiny ways. */ supertype = get_supertype_from_mime_type (mime_type); query = g_strconcat ("bonobo:supported_mime_types.has_one (['", mime_type, "', '", supertype, "', '*'])", NULL); /* Prefer something that matches the exact type to something that matches the supertype */ sort[0] = g_strconcat ("bonobo:supported_mime_types.has ('", mime_type, "')", NULL); /* Prefer something that matches the supertype to something that matches `*' */ sort[1] = g_strconcat ("bonobo:supported_mime_types.has ('", supertype, "')", NULL); sort[2] = g_strdup ("name"); sort[3] = NULL; info_list = bonobo_activation_query (query, sort, &ev); if (ev._major == CORBA_NO_EXCEPTION) { components_list = Bonobo_ServerInfoList_to_ServerInfo_g_list (info_list); CORBA_free (info_list); } else { components_list = NULL; } g_free (supertype); g_free (query); g_free (sort[0]); g_free (sort[1]); g_free (sort[2]); CORBA_exception_free (&ev); return components_list; } static gint gnome_vfs_mime_component_matches_id (Bonobo_ServerInfo *component, const char *iid) { return strcmp (component->iid, iid); } GList * gnome_vfs_mime_id_list_from_component_list (GList *components) { GList *list = NULL; GList *node; for (node = components; node != NULL; node = node->next) { list = g_list_prepend (list, g_strdup (((Bonobo_ServerInfo *)node->data)->iid)); } return g_list_reverse (list); } gboolean gnome_vfs_mime_id_in_component_list (const char *iid, GList *components) { return g_list_find_custom (components, (gpointer) iid, (GCompareFunc) gnome_vfs_mime_component_matches_id) != NULL; } GList * gnome_vfs_mime_remove_component_from_list (GList *components, const char *iid, gboolean *did_remove) { GList *matching_node; matching_node = g_list_find_custom (components, (gpointer)iid, (GCompareFunc) gnome_vfs_mime_component_matches_id); if (matching_node != NULL) { components = g_list_remove_link (components, matching_node); gnome_vfs_mime_component_list_free (matching_node); } if (did_remove != NULL) { *did_remove = matching_node != NULL; } return components; } void gnome_vfs_mime_component_list_free (GList *list) { g_list_foreach (list, (GFunc) CORBA_free, NULL); g_list_free (list); } libbonobo-2.32.1/bonobo-activation/bonobo-activation-activate.c0000644000076400007640000006202111173072711021472 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ /* * bonobo-activation: A library for accessing bonobo-activation-server. * * Copyright (C) 1999, 2000 Red Hat, Inc. * Copyright (C) 2000 Eazel, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library 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 * Library General Public License for more details. * * You should have received a copy of the GNU Library General Public * License along with this library; if not, write to the Free * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * * Author: Elliot Lee */ #include #include #include #include #include #include #include #include #include #include #include #include #include static Bonobo_ActivationEnvironment *activation_environment = NULL; /* FIXME: deprecated internal functions. Should we just remove? */ void bonobo_activation_set_test_components_enabled (gboolean val) { } gboolean bonobo_activation_get_test_components_enabled (void) { return FALSE; } static void copy_strv_to_sequence (char *const *selection_order, Bonobo_StringList *str_seq) { int len; if (!selection_order) { memset (str_seq, 0, sizeof (Bonobo_StringList)); return; } for (len = 0; selection_order [len]; len++); str_seq->_length = str_seq->_maximum = len; str_seq->_buffer = (char **) selection_order; str_seq->_release = FALSE; } /* Limit of the number of cached queries */ #define QUERY_CACHE_MAX 32 #undef QUERY_CACHE_DEBUG static GHashTable *query_cache = NULL; typedef struct { char *query; char **sort_criteria; Bonobo_ServerInfoList *list; } QueryCacheEntry; static void query_cache_entry_free (gpointer data) { QueryCacheEntry *entry = data; #ifdef QUERY_CACHE_DEBUG g_message ("Blowing item %p", entry); #endif /* QUERY_CACHE_DEBUG */ g_free (entry->query); g_strfreev (entry->sort_criteria); CORBA_free (entry->list); g_free (entry); } static gboolean cache_clean_half (gpointer key, gpointer value, gpointer user_data) { int *a = user_data; /* Blow half the elements */ return (*a)++ % 2; } static gboolean query_cache_equal (gconstpointer a, gconstpointer b) { int i; char **strsa, **strsb; const QueryCacheEntry *entrya = a; const QueryCacheEntry *entryb = b; if (strcmp (entrya->query, entryb->query)) return FALSE; strsa = entrya->sort_criteria; strsb = entryb->sort_criteria; if (!strsa && !strsb) return TRUE; if (!strsa || !strsb) return FALSE; for (i = 0; strsa [i] && strsb [i]; i++) if (strcmp (strsa [i], strsb [i])) return FALSE; if (strsa [i] || strsb [i]) return FALSE; return TRUE; } static guint query_cache_hash (gconstpointer a) { guint hash, i; char **strs; const QueryCacheEntry *entry = a; hash = g_str_hash (entry->query); strs = entry->sort_criteria; for (i = 0; strs && strs [i]; i++) hash ^= g_str_hash (strs [i]); return hash; } static void query_cache_reset (void) { if (query_cache) { g_hash_table_destroy (query_cache); query_cache = NULL; } } static void create_query_cache (void) { query_cache = g_hash_table_new_full ( query_cache_hash, query_cache_equal, query_cache_entry_free, NULL); bonobo_activation_add_reset_notify (query_cache_reset); } static Bonobo_ServerInfoList * query_cache_lookup (const char *query, char * const *sort_criteria, gboolean *active) { QueryCacheEntry fake; QueryCacheEntry *entry; Bonobo_ServerInfoList *result; BONOBO_ACTIVATION_LOCK (); *active = FALSE; if (!query_cache) { create_query_cache (); BONOBO_ACTIVATION_UNLOCK (); return NULL; } if (strstr (query, "_active")) { *active = TRUE; return NULL; } fake.query = (char *) query; fake.sort_criteria = (char **) sort_criteria; if ((entry = g_hash_table_lookup (query_cache, &fake))) { #ifdef QUERY_CACHE_DEBUG g_message ("\n\n --- Hit (%p) ---\n\n\n", entry->list); #endif /* QUERY_CACHE_DEBUG */ result = Bonobo_ServerInfoList_duplicate (entry->list); } else { #ifdef QUERY_CACHE_DEBUG g_message ("Miss"); #endif /* QUERY_CACHE_DEBUG */ result = NULL; } BONOBO_ACTIVATION_UNLOCK (); return result; } static void query_cache_insert (const char *query, char * const *sort_criteria, Bonobo_ServerInfoList *list) { int idx = 0; QueryCacheEntry *entry = g_new (QueryCacheEntry, 1); if (!query_cache) { create_query_cache (); } else if (g_hash_table_size (query_cache) > QUERY_CACHE_MAX) { g_hash_table_foreach_remove ( query_cache, cache_clean_half, &idx); } entry->query = g_strdup (query); entry->sort_criteria = g_strdupv ((char **) sort_criteria); entry->list = Bonobo_ServerInfoList_duplicate (list); g_hash_table_replace (query_cache, entry, entry); #ifdef QUERY_CACHE_DEBUG g_message ("Query cache size now %d", g_hash_table_size (query_cache)); #endif /* QUERY_CACHE_DEBUG */ } /** * bonobo_activation_query: * @requirements: query string. * @selection_order: sort criterion for returned list. * @ev: a %CORBA_Environment structure which will contain * the CORBA exception status of the operation, or NULL * * Executes the @requirements query on the bonobo-activation-server. * The result is sorted according to @selection_order. * @selection_order can safely be NULL as well as @ev. * The returned list has to be freed with CORBA_free. * * Return value: the list of servers matching the requirements. */ Bonobo_ServerInfoList * bonobo_activation_query (const char *requirements, char * const *selection_order, CORBA_Environment *opt_ev) { gboolean active; Bonobo_StringList selorder; Bonobo_ServerInfoList *retval; Bonobo_ActivationContext ac; CORBA_Environment tempenv, *ev; g_return_val_if_fail (requirements != NULL, CORBA_OBJECT_NIL); ac = bonobo_activation_activation_context_get (); g_return_val_if_fail (ac != NULL, CORBA_OBJECT_NIL); retval = query_cache_lookup (requirements, selection_order, &active); if (retval) return retval; if (!opt_ev) { CORBA_exception_init (&tempenv); ev = &tempenv; } else ev = opt_ev; copy_strv_to_sequence (selection_order, &selorder); retval = Bonobo_ActivationContext_query ( ac, requirements, &selorder, bonobo_activation_context_get (), ev); if (ev->_major == CORBA_NO_EXCEPTION) { if (!active) query_cache_insert (requirements, selection_order, retval); } else retval = NULL; if (!opt_ev) CORBA_exception_free (&tempenv); return retval; } static CORBA_Object handle_activation_result (Bonobo_ActivationResult *result, Bonobo_ActivationID *ret_aid, CORBA_Environment *ev) { CORBA_Object retval = CORBA_OBJECT_NIL; switch (result->res._d) { case Bonobo_ACTIVATION_RESULT_SHLIB: retval = bonobo_activation_activate_shlib_server (result, ev); break; case Bonobo_ACTIVATION_RESULT_OBJECT: retval = CORBA_Object_duplicate (result->res._u.res_object, ev); break; case Bonobo_ACTIVATION_RESULT_NONE: default: break; } if (ret_aid) { if (result->aid && result->aid [0]) *ret_aid = g_strdup (result->aid); else *ret_aid = NULL; } CORBA_free (result); return retval; } /** * bonobo_activation_activate: * @requirements: query string. * @selection_order: sort criterion for returned list. * @flags: how to activate the object. * @ret_aid: AID of the activated object. * @ev: %CORBA_Environment structure which will contain * the CORBA exception status of the operation. * * Activates a given object. @ret_aid can be safely NULLed as well * as @ev and @selection_order. @flags can be set to zero if you do * not what to use. * * Return value: the CORBA object reference of the activated object. * This value can be CORBA_OBJECT_NIL: you are supposed * to check @ev for success. */ CORBA_Object bonobo_activation_activate (const char *requirements, char *const *selection_order, Bonobo_ActivationFlags flags, Bonobo_ActivationID *ret_aid, CORBA_Environment *opt_ev) { Bonobo_ActivationContext ac; Bonobo_ActivationResult *result; CORBA_Environment tempenv, *ev; Bonobo_StringList selorder; CORBA_Object retval = CORBA_OBJECT_NIL; g_return_val_if_fail (requirements != NULL, CORBA_OBJECT_NIL); ac = bonobo_activation_activation_context_get (); g_return_val_if_fail (ac != NULL, CORBA_OBJECT_NIL); if (!opt_ev) { CORBA_exception_init (&tempenv); ev = &tempenv; } else ev = opt_ev; copy_strv_to_sequence (selection_order, &selorder); result = Bonobo_ActivationContext_activateMatchingFull (ac, requirements, &selorder, activation_environment, flags, bonobo_activation_client_get (), bonobo_activation_context_get (), ev); if (ev->_major == CORBA_SYSTEM_EXCEPTION && !strcmp (ev->_id, ex_CORBA_BAD_OPERATION)) /* fall-back */ { g_message ("TESTME: Fall-back activate"); result = Bonobo_ActivationContext_activateMatching (ac, requirements, &selorder, activation_environment, flags, bonobo_activation_context_get (), ev); } if (ev->_major == CORBA_NO_EXCEPTION) retval = handle_activation_result (result, ret_aid, ev); if (!opt_ev) CORBA_exception_free (&tempenv); return retval; } /** * bonobo_activation_activate_from_id * @aid: AID or IID of the object to activate. * @flags: activation flag. * @ret_aid: AID of the activated server. * @ev: %CORBA_Environment structure which will contain * the CORBA exception status of the operation. * * Activates the server corresponding to @aid. @ret_aid can be safely * NULLed as well as @ev. @flags can be zero if you do not know what * to do. * * Return value: a CORBA object reference to the newly activated * server. Do not forget to check @ev for failure!! */ CORBA_Object bonobo_activation_activate_from_id (const Bonobo_ActivationID aid, Bonobo_ActivationFlags flags, Bonobo_ActivationID *ret_aid, CORBA_Environment *opt_ev) { Bonobo_ActivationContext ac; Bonobo_ActivationResult *result; CORBA_Environment *ev, tempenv; CORBA_Object retval = CORBA_OBJECT_NIL; g_return_val_if_fail (aid != NULL, CORBA_OBJECT_NIL); if (!strncmp ("OAFIID:", aid, 7)) { char *requirements; requirements = g_alloca (strlen (aid) + sizeof ("iid == ''")); sprintf (requirements, "iid == '%s'", aid); return bonobo_activation_activate ( requirements, NULL, flags, ret_aid, opt_ev); } if (!opt_ev) { CORBA_exception_init (&tempenv); ev = &tempenv; } else ev = opt_ev; ac = bonobo_activation_internal_activation_context_get_extended ( (flags & Bonobo_ACTIVATION_FLAG_EXISTING_ONLY), ev); if (!ac) { if (!opt_ev) CORBA_exception_free (&tempenv); return CORBA_OBJECT_NIL; } result = Bonobo_ActivationContext_activateFromAidFull (ac, aid, flags, bonobo_activation_client_get (), bonobo_activation_context_get (), ev); if (ev->_major == CORBA_SYSTEM_EXCEPTION && !strcmp (ev->_id, ex_CORBA_BAD_OPERATION)) /* fall-back */ result = Bonobo_ActivationContext_activateFromAid (ac, aid, flags, bonobo_activation_context_get (), ev); if (ev->_major == CORBA_NO_EXCEPTION) retval = handle_activation_result (result, ret_aid, ev); if (!opt_ev) CORBA_exception_free (&tempenv); return retval; } /* Async activation */ #define ASYNC_ERROR_NO_AID (_("No ActivationID supplied")) #define ASYNC_ERROR_NO_REQUIREMENTS (_("No requirements supplied")) #define ASYNC_ERROR_NO_CONTEXT (_("Failed to initialise the ActivationContext")) #define ASYNC_ERROR_INV_FAILED (_("Failed to invoke method on the ActivationContext")) #define ASYNC_ERROR_GENERAL_EXCEPTION (_("System exception: %s : %s")) #define ASYNC_ERROR_EXCEPTION (_("System exception: %s")) static ORBit_IMethod *activate_matching_full_method = NULL; static ORBit_IMethod *activate_from_aid_full_method = NULL; typedef struct { BonoboActivationCallback user_cb; gpointer user_data; } AsyncActivationData; static void setup_methods (void) { activate_matching_full_method = &Bonobo_ActivationContext__iinterface.methods._buffer [7]; activate_from_aid_full_method = &Bonobo_ActivationContext__iinterface.methods._buffer [9]; /* If these blow the IDL changed order, and the above indexes need updating */ g_assert (!strcmp (activate_matching_full_method->name, "activateMatchingFull")); g_assert (!strcmp (activate_from_aid_full_method->name, "activateFromAidFull")); } static void activation_async_callback (CORBA_Object object, ORBit_IMethod *m_data, ORBitAsyncQueueEntry *aqe, gpointer user_data, CORBA_Environment *ev) { Bonobo_ActivationResult *result = NULL; AsyncActivationData *async_data = user_data; Bonobo_GeneralError *err; CORBA_Object retval; char *reason = NULL; g_return_if_fail (async_data != NULL); g_return_if_fail (async_data->user_cb != NULL); if (ev->_major != CORBA_NO_EXCEPTION) goto return_exception; ORBit_small_demarshal_async (aqe, &result, NULL, ev); if (ev->_major != CORBA_NO_EXCEPTION) goto return_exception; retval = handle_activation_result (result, NULL, ev); if (ev->_major != CORBA_NO_EXCEPTION) goto return_exception; async_data->user_cb (retval, NULL, async_data->user_data); clean_out: g_free (async_data); return; return_exception: if (!strcmp (ev->_id, "IDL:Bonobo/GeneralError:1.0")) { err = ev->_any._value; if (!err || !err->description) reason = g_strdup_printf (ASYNC_ERROR_GENERAL_EXCEPTION, ev->_id, "(no description)"); else reason = g_strdup_printf (ASYNC_ERROR_GENERAL_EXCEPTION, ev->_id, err->description); } else reason = g_strdup_printf (ASYNC_ERROR_EXCEPTION, ev->_id); async_data->user_cb (CORBA_OBJECT_NIL, reason, async_data->user_data); g_free (reason); goto clean_out; } /** * bonobo_activation_activate_async: * @requirements: the bonobo-activation query string. * @selection_order: preference array. * @flags: activation flags. * @callback: callback function. * @user_data: data to be poassed to the callback function. * @ev: exception structure. * * This function will asynchronously try to activate a component * given the @requirements query string. When the component is * activated or when the activation fails, it will call @callback * with the given @user_data data as parameter. * callback will be called with a CORBA_OBJECT_NIL object if the * activation fails. If the activation fails, the callback will be * given a human-readable string containing a description of the * error. In case of sucess, the error string value is undefined. * * @selection_order can be safely NULLed as well as @ev and * @user_data. @flags can be set to 0 if you do not know what to * use. */ void bonobo_activation_activate_async (const char *requirements, char *const *selection_order, Bonobo_ActivationFlags flags, BonoboActivationCallback async_cb, gpointer user_data, CORBA_Environment *opt_ev) { Bonobo_ActivationContext ac; AsyncActivationData *async_data; CORBA_Environment *ev, tempenv; Bonobo_StringList selorder; Bonobo_ActivationClient client; gpointer args [5]; if (!requirements) { async_cb (CORBA_OBJECT_NIL, ASYNC_ERROR_NO_REQUIREMENTS, user_data); return; } ac = bonobo_activation_activation_context_get (); if (!ac) { async_cb (CORBA_OBJECT_NIL, ASYNC_ERROR_NO_CONTEXT, user_data); return; } if (!opt_ev) { CORBA_exception_init (&tempenv); ev = &tempenv; } else ev = opt_ev; async_data = g_new (AsyncActivationData, 1); async_data->user_cb = async_cb; async_data->user_data = user_data; copy_strv_to_sequence (selection_order, &selorder); client = bonobo_activation_client_get (); args [0] = &requirements; args [1] = &selorder; args [2] = activation_environment; args [3] = &flags; args [4] = &client; if (!activate_matching_full_method) setup_methods (); ORBit_small_invoke_async (ac, activate_matching_full_method, activation_async_callback, async_data, args, bonobo_activation_context_get (), ev); if (ev->_major != CORBA_NO_EXCEPTION) { async_cb (CORBA_OBJECT_NIL, ASYNC_ERROR_INV_FAILED, user_data); g_free (async_data); } if (!opt_ev) CORBA_exception_free (&tempenv); return; } /** * bonobo_activation_activate_from_id_async: * @aid: the AID or IID of the component to activate. * @flags: activation flags. * @callback: callback function. * @user_data: data to be poassed to the callback function. * @ev: exception structure. * * This function will asynchronously try to activate a component * with the given @aid. When the component is * activated or when the activation fails, it will call @callback * with the given @user_data data as parameter. * callback will be called with a CORBA_OBJECT_NIL object if the * activation fails. If the activation fails, the callback will be * given a human-readable string containing a description of the * error. In case of sucess, the error string value is undefined. * * @flags can be 0 if you do not know what to set it to and * @ev can be safely set to NULL. */ void bonobo_activation_activate_from_id_async (const Bonobo_ActivationID aid, Bonobo_ActivationFlags flags, BonoboActivationCallback async_cb, gpointer user_data, CORBA_Environment *opt_ev) { Bonobo_ActivationContext ac; AsyncActivationData *async_data; CORBA_Environment *ev, tempenv; Bonobo_ActivationClient client; gpointer args [3]; if (!aid) { async_cb (CORBA_OBJECT_NIL, ASYNC_ERROR_NO_AID, user_data); return; } if (!strncmp ("OAFIID:", aid, 7)) { char *requirements; requirements = g_alloca (strlen (aid) + sizeof ("iid == ''")); sprintf (requirements, "iid == '%s'", aid); bonobo_activation_activate_async ( requirements, NULL, flags, async_cb, user_data, opt_ev); return; } if (!opt_ev) { CORBA_exception_init (&tempenv); ev = &tempenv; } else ev = opt_ev; ac = bonobo_activation_internal_activation_context_get_extended ( (flags & Bonobo_ACTIVATION_FLAG_EXISTING_ONLY), ev); if (!ac) { if (!opt_ev) CORBA_exception_free (&tempenv); async_cb (CORBA_OBJECT_NIL, ASYNC_ERROR_NO_CONTEXT, user_data); return; } async_data = g_new (AsyncActivationData, 1); async_data->user_cb = async_cb; async_data->user_data = user_data; if (!activate_from_aid_full_method) setup_methods (); client = bonobo_activation_client_get (); args [0] = (gpointer) &aid; args [1] = &flags; args [2] = &client; ORBit_small_invoke_async (ac, activate_from_aid_full_method, activation_async_callback, async_data, args, bonobo_activation_context_get (), ev); if (ev->_major != CORBA_NO_EXCEPTION) { async_cb (CORBA_OBJECT_NIL, ASYNC_ERROR_INV_FAILED, user_data); g_free (async_data); } if (!opt_ev) CORBA_exception_free (&tempenv); return; } void bonobo_activation_init_activation_env (void) { int i; struct { const char *name; const char *value; } getenv_values[] = { #ifndef G_OS_WIN32 { "DISPLAY", NULL }, /* X display */ { "SESSION_MANAGER", NULL }, /* XSMP session manager */ { "AUDIODEV", NULL }, /* Audio device on Sun systems */ { "XAUTHORITY", NULL }, { "LC_ALL", NULL }, /* locale information: see setlocale(3) */ { "LC_COLLATE", NULL }, { "LC_MESSAGES", NULL }, { "LC_MONETARY", NULL }, { "LC_NUMERIC", NULL }, { "LC_TIME", NULL }, #endif { "LANG", NULL }, /* Fallback locale name */ { NULL, NULL } }; g_assert (activation_environment == NULL); activation_environment = Bonobo_ActivationEnvironment__alloc (); for (i = 0; getenv_values [i].name; i++) { Bonobo_ActivationEnvValue value; getenv_values [i].value = getenv (getenv_values [i].name); if (!getenv_values [i].value) continue; value.name = (CORBA_char *) getenv_values [i].name; value.value = (CORBA_char *) getenv_values [i].value; value.flags = 0; ORBit_sequence_append (activation_environment, &value); } } void bonobo_activation_set_activation_env_value (const char *name, const char *value) { int i; Bonobo_ActivationEnvValue env_value = { (CORBA_char *) name, (CORBA_char *) value, 0 }; g_return_if_fail (name != NULL); for (i = 0; i < activation_environment->_length; i++) { if (!strcmp (activation_environment->_buffer [i].name, name)) { ORBit_sequence_remove (activation_environment, i); break; } } ORBit_sequence_append (activation_environment, &env_value); } CORBA_char * _bonobo_activation_get_activation_env_value (const char *name) { int i; g_return_val_if_fail (name != NULL, NULL); for (i = 0; i < activation_environment->_length; i++) { if (strcmp (activation_environment->_buffer [i].name, name) == 0) { return activation_environment->_buffer [i].value; } } return NULL; } /** * bonobo_activation_name_service_get: * @ev: %CORBA_Environment structure which will contain * the CORBA exception status of the operation. * * Returns the name server of bonobo-activation. @ev can be NULL. * * Return value: the name server of bonobo-activation. */ CORBA_Object bonobo_activation_name_service_get (CORBA_Environment * ev) { return bonobo_activation_activate_from_id ( "OAFIID:Bonobo_CosNaming_NamingContext", 0, NULL, ev); } /** * bonobo_activation_dynamic_add_path: * @add_path: The path would be loaded in runtime. * @ev: %CORBA_Environment structure which will contain * the CORBA exception status of the operation. * This function could make BAS server load the specific * search path in runtime. * * Return value: a result of dynamic path load */ Bonobo_DynamicPathLoadResult bonobo_activation_dynamic_add_path (const char *add_path, CORBA_Environment * ev) { Bonobo_ObjectDirectory od; Bonobo_DynamicPathLoadResult res; g_return_val_if_fail (add_path != NULL, Bonobo_DYNAMIC_LOAD_ERROR); od = bonobo_activation_object_directory_get ( bonobo_activation_username_get (), bonobo_activation_hostname_get ()); if (CORBA_Object_is_nil (od, ev)) return Bonobo_DYNAMIC_LOAD_ERROR; res = Bonobo_ObjectDirectory_dynamic_add_path(od, add_path, ev); if (ev->_major != CORBA_NO_EXCEPTION) return Bonobo_DYNAMIC_LOAD_ERROR; return res; } /** * bonobo_activation_dynamic_remove_path: * @remove_path: The path would be unloaded in runtime. * @ev: %CORBA_Environment structure which will contain * the CORBA exception status of the operation. * This function could make BAS server unload the specific * search path in runtime. * * Return value: a result of dynamic path load */ Bonobo_DynamicPathLoadResult bonobo_activation_dynamic_remove_path (const char *remove_path, CORBA_Environment * ev) { Bonobo_ObjectDirectory od; Bonobo_DynamicPathLoadResult res; g_return_val_if_fail (remove_path != NULL, Bonobo_DYNAMIC_LOAD_ERROR); od = bonobo_activation_object_directory_get ( bonobo_activation_username_get (), bonobo_activation_hostname_get ()); if (CORBA_Object_is_nil (od, ev)) return Bonobo_DYNAMIC_LOAD_ERROR; res = Bonobo_ObjectDirectory_dynamic_remove_path(od, remove_path, ev); if (ev->_major != CORBA_NO_EXCEPTION) return Bonobo_DYNAMIC_LOAD_ERROR; return res; } libbonobo-2.32.1/bonobo-activation/bonobo-activation-init.c0000644000076400007640000004771411173072711020651 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ /* * bonobo-activation: A library for accessing bonobo-activation-server. * * Copyright (C) 1999, 2000 Red Hat, Inc. * Copyright (C) 2000 Eazel, Inc. * Copyright (C) 2003 Ximian, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library 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 * Library General Public License for more details. * * You should have received a copy of the GNU Library General Public * License along with this library; if not, write to the Free * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * * Authors: * Elliot Lee * Michael Meeks */ #include #include "bonobo-activation-init.h" #include "bonobo-activation-client.h" #include "Bonobo_ActivationContext.h" #include #include "bonobo-activation-private.h" #include "bonobo-activation-register.h" #include "bonobo-activation-version.h" #include #include #include #include #include #include #include /****************** ORBit-specific stuff ****************/ #include GStaticRecMutex _bonobo_activation_guard = G_STATIC_REC_MUTEX_INIT; static CORBA_ORB bonobo_activation_orb = CORBA_OBJECT_NIL; static CORBA_Context bonobo_activation_context; static gboolean is_initialized = FALSE; /* prevent registering with OAF when bonobo_activation_active_server_register() */ gboolean bonobo_activation_private = FALSE; #ifdef G_OS_WIN32 #ifndef PIC #error Must build as a DLL #endif #include #include #include static const char *prefix; static const char *server_libexecdir; static const char *serverinfodir; static const char *server_confdir; static const char *localedir; static HMODULE hmodule; char * _bonobo_activation_win32_replace_prefix (const char *runtime_prefix, const char *configure_time_path) { if (strncmp (configure_time_path, PREFIX "/", strlen (PREFIX) + 1) == 0) { return g_strconcat (runtime_prefix, configure_time_path + strlen (PREFIX), NULL); } else return g_strdup (configure_time_path); } /* DllMain that just stores the DLL's hmodule */ BOOL WINAPI DllMain (HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved) { switch (fdwReason) { case DLL_PROCESS_ATTACH: hmodule = hinstDLL; break; } return TRUE; } G_LOCK_DEFINE_STATIC (mutex); static void setup_runtime_paths (void) { char cpbfr[1000]; wchar_t wcbfr[1000]; char *full_prefix = NULL; char *cp_prefix = NULL; G_LOCK (mutex); if (prefix != NULL) { G_UNLOCK (mutex); return; } if (G_WIN32_HAVE_WIDECHAR_API ()) { /* NT-based Windows */ if (GetModuleFileNameW (hmodule, wcbfr, G_N_ELEMENTS (wcbfr))) { full_prefix = g_utf16_to_utf8 (wcbfr, -1, NULL, NULL, NULL); if (GetShortPathNameW (wcbfr, wcbfr, G_N_ELEMENTS (wcbfr)) && WideCharToMultiByte (CP_ACP, 0, wcbfr, -1, cpbfr, G_N_ELEMENTS (cpbfr), NULL, NULL)) cp_prefix = g_strdup (cpbfr); else if (full_prefix) cp_prefix = g_locale_from_utf8 (full_prefix, -1, NULL, NULL, NULL); } } else { /* Win9x */ if (GetModuleFileNameA (hmodule, cpbfr, G_N_ELEMENTS (cpbfr))) { full_prefix = g_locale_to_utf8 (cpbfr, -1, NULL, NULL, NULL); cp_prefix = g_strdup (cpbfr); } } if (full_prefix != NULL) { gchar *p = strrchr (full_prefix, '\\'); if (p != NULL) *p = '\0'; p = strrchr (full_prefix, '\\'); if (p && (g_ascii_strcasecmp (p + 1, "bin") == 0)) *p = '\0'; prefix = full_prefix; } if (cp_prefix != NULL) { gchar *p = _mbsrchr (cp_prefix, '\\'); if (p != NULL) *p = '\0'; p = _mbsrchr (cp_prefix, '\\'); if (p && (g_ascii_strcasecmp (p + 1, "bin") == 0)) *p = '\0'; } server_libexecdir = _bonobo_activation_win32_replace_prefix (full_prefix, SERVER_LIBEXECDIR); serverinfodir = _bonobo_activation_win32_replace_prefix (full_prefix, SERVERINFODIR); server_confdir = _bonobo_activation_win32_replace_prefix (full_prefix, SERVER_CONFDIR); localedir = _bonobo_activation_win32_replace_prefix (cp_prefix, BONOBO_ACTIVATION_LOCALEDIR); G_UNLOCK (mutex); } const char * _bonobo_activation_win32_get_prefix (void) { setup_runtime_paths (); return prefix; } const char * _bonobo_activation_win32_get_server_libexecdir (void) { setup_runtime_paths (); return server_libexecdir; } const char * _bonobo_activation_win32_get_serverinfodir (void) { setup_runtime_paths (); return serverinfodir; } const char * _bonobo_activation_win32_get_server_confdir (void) { setup_runtime_paths (); return server_confdir; } const char * _bonobo_activation_win32_get_localedir (void) { setup_runtime_paths (); return localedir; } #undef BONOBO_ACTIVATION_LOCALEDIR #define BONOBO_ACTIVATION_LOCALEDIR _bonobo_activation_win32_get_localedir () #endif /** * bonobo_activation_orb_get: * * Returns the ORB used by OAF. * * Return value: the ORB used by OAF. */ CORBA_ORB bonobo_activation_orb_get (void) { return bonobo_activation_orb; } const char * bonobo_activation_hostname_get (void) { /* * This tolerates a run-time change of * hostname [a-la DHCP], and we don't care * about this anyway; there is no cross-host * activation foo. */ return "localhost"; #if 0 static char hostname[256] = ""; if (hostname[0] == '\0') { if (gethostname (hostname, sizeof (hostname) - 1)) strcpy (hostname, "localhost"); } return hostname; #endif } /** * bonobo_activation_context_get: * @void: * * Fetches the internal CORBA_Context used with every activation * request. This can be used to manipulate some of the associated * fields; particularly 'display'. * * This method is deprecated. * * Return value: the CORBA context for activating with. **/ CORBA_Context bonobo_activation_context_get (void) { return bonobo_activation_context; } const char * bonobo_activation_session_name_get (void) { const char *dumbptr = "local"; return dumbptr; } const char * bonobo_activation_domain_get (void) { return NULL; } CORBA_Object bonobo_activation_internal_activation_context_get_extended (gboolean existing_only, CORBA_Environment *ev) { BonoboActivationBaseService base_service = { NULL }; base_service.name = "IDL:Bonobo/ActivationContext:1.0"; base_service.session_name = bonobo_activation_session_name_get (); return bonobo_activation_internal_service_get_extended (&base_service, existing_only, ev); } CORBA_Object bonobo_activation_activation_context_get (void) { BonoboActivationBaseService base_service = { NULL }; base_service.name = "IDL:Bonobo/ActivationContext:1.0"; base_service.session_name = bonobo_activation_session_name_get (); return bonobo_activation_service_get (&base_service); } static Bonobo_ObjectDirectory object_directory = CORBA_OBJECT_NIL; CORBA_Object bonobo_activation_object_directory_get (const char *username, const char *hostname) { CORBA_Environment ev; Bonobo_ActivationContext new_ac; Bonobo_ObjectDirectoryList *od_list; static Bonobo_ActivationContext ac = CORBA_OBJECT_NIL; new_ac = bonobo_activation_activation_context_get (); if (ac == new_ac) return object_directory; ac = new_ac; CORBA_exception_init (&ev); od_list = Bonobo_ActivationContext__get_directories (ac, &ev); if (ev._major != CORBA_NO_EXCEPTION) { CORBA_exception_free (&ev); return CORBA_OBJECT_NIL; } if (od_list->_length != 1) { g_warning ("Extremely strange, strange object directories (%d)" "registered with the activation context", od_list->_length); CORBA_free (od_list); CORBA_exception_free (&ev); return CORBA_OBJECT_NIL; } object_directory = CORBA_Object_duplicate (od_list->_buffer[0], &ev); CORBA_free (od_list); CORBA_exception_free (&ev); return object_directory; } static int bonobo_activation_ior_fd = 1; static char *bonobo_activation_activate_iid = NULL; #ifndef BONOBO_DISABLE_DEPRECATED_SOURCE struct poptOption bonobo_activation_popt_options[] = { { NULL, '\0', POPT_ARG_INTL_DOMAIN, GETTEXT_PACKAGE, 0, NULL, NULL }, { "oaf-ior-fd", '\0', POPT_ARG_INT, &bonobo_activation_ior_fd, 0, N_("File descriptor to print IOR on"), N_("FD") }, { "oaf-activate-iid", '\0', POPT_ARG_STRING, &bonobo_activation_activate_iid, 0, N_("IID to activate"), "IID" }, { "oaf-private", '\0', POPT_ARG_NONE, &bonobo_activation_private, 0, N_("Prevent registering of server with OAF"), NULL }, { NULL } }; #endif /* BONOBO_DISABLE_DEPRECATED_SOURCE */ static void init_gettext (gboolean bind_codeset) { static gboolean initialized = FALSE; #ifdef HAVE_BIND_TEXTDOMAIN_CODESET static gboolean codeset_bound = FALSE; #endif if (!initialized) { bindtextdomain (GETTEXT_PACKAGE, BONOBO_ACTIVATION_LOCALEDIR); initialized = TRUE; } #ifdef HAVE_BIND_TEXTDOMAIN_CODESET if (!codeset_bound && bind_codeset) { bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8"); codeset_bound = TRUE; } #endif } /** * bonobo_activation_get_goption_group: * * Returns a #GOptionGroup for parsing bonobo-activation options. * * Return value: a new #GOptionGroup * * Since: 2.14 */ GOptionGroup * bonobo_activation_get_goption_group (void) { const GOptionEntry bonobo_activation_goption_options[] = { { "oaf-ior-fd", '\0', 0, G_OPTION_ARG_INT, &bonobo_activation_ior_fd, N_("File descriptor to print IOR on"), N_("FD") }, { "oaf-activate-iid", '\0', 0, G_OPTION_ARG_STRING, &bonobo_activation_activate_iid, N_("IID to activate"), "IID" }, { "oaf-private", '\0', 0, G_OPTION_ARG_NONE, &bonobo_activation_private, N_("Prevent registering of server with OAF"), NULL }, { NULL } }; GOptionGroup *group; init_gettext (TRUE); group = g_option_group_new ("bonobo-activation", N_("Bonobo Activation options:"), N_("Show Bonobo Activation options"), NULL, NULL); g_option_group_set_translation_domain (group, GETTEXT_PACKAGE); g_option_group_add_entries (group, bonobo_activation_goption_options); return group; } /** * bonobo_activation_activation_iid_get: * * If this process was launched to activate an exe server, this * function gives the IID of the server requested, otherwise it * returns NULL. * * Return value: The IID of the activated server or NULL. */ const char * bonobo_activation_iid_get (void) { return bonobo_activation_activate_iid; } int bonobo_activation_ior_fd_get (void) { return bonobo_activation_ior_fd; } void bonobo_activation_preinit (gpointer app, gpointer mod_info) { init_gettext (FALSE); } void bonobo_activation_postinit (gpointer app, gpointer mod_info) { bonobo_activation_base_service_init (); #if defined (F_SETFD) && defined (FD_CLOEXEC) if (bonobo_activation_ior_fd > 2) fcntl (bonobo_activation_ior_fd, F_SETFD, FD_CLOEXEC); #endif #ifdef G_OS_WIN32 if (bonobo_activation_ior_fd > 2) { HANDLE newhandle; if (DuplicateHandle (GetCurrentProcess (), (HANDLE) _get_osfhandle (bonobo_activation_ior_fd), GetCurrentProcess (), &newhandle, 0, FALSE, DUPLICATE_SAME_ACCESS)) { close (bonobo_activation_ior_fd); bonobo_activation_ior_fd = _open_osfhandle ((int) newhandle, _O_TEXT | _O_NOINHERIT); } } #endif if (bonobo_activation_activate_iid) g_timeout_add_seconds_full (G_PRIORITY_LOW, BONOBO_ACTIVATION_FACTORY_PRIVATE_TIMEOUT, bonobo_activation_timeout_reg_check, NULL, NULL); else bonobo_activation_timeout_reg_check_set (FALSE); is_initialized = TRUE; } #ifdef BONOBO_ACTIVATION_DEBUG static void do_barrier (int signum) { volatile int barrier = 1; #ifndef HAVE_SIGACTION signal (signum, do_barrier); #endif while (barrier); } #endif /** * bonobo_activation_is_initialized: * * Tells you whether or not bonobo-activation is initialized. * * Return value: whether bonobo-activation is initialized or not. */ gboolean bonobo_activation_is_initialized (void) { return is_initialized; } #ifndef BONOBO_DISABLE_DEPRECATED_SOURCE /** * bonobo_activation_get_popt_table_name: * * Get the table name to use for the oaf popt options table when * registering with libgnome * * Return value: A localized copy of the string "bonobo activation options" */ char * bonobo_activation_get_popt_table_name (void) { init_gettext (FALSE); return _("Bonobo activation options"); } #endif /* BONOBO_DISABLE_DEPRECATED_SOURCE */ /** * bonobo_activation_init: * @argc: number of command-line arguments passed to the program. * @argv: array of strings containing the command-line * arguments of the program. * * Initializes bonobo-activation. Should be called before any other * call to the library. * * Return value: the ORB used by bonobo-activation. */ CORBA_ORB bonobo_activation_init (int argc, char **argv) { CORBA_ORB retval; int i; if (!is_initialized) { bindtextdomain (PACKAGE, BONOBO_ACTIVATION_LOCALEDIR); bonobo_activation_preinit (NULL, NULL); retval = bonobo_activation_orb_init (&argc, argv); } else retval = bonobo_activation_orb; /* Accumulate arguments over multiple inits. Sometimes we are * initialized from GTK_MODULEs or gnome-vfs with bogus arguments */ for (i = 1; i < argc; i++) { if (!strncmp ("--oaf-ior-fd=", argv[i], strlen ("--oaf-ior-fd="))) { bonobo_activation_ior_fd = atoi (argv[i] + strlen ("--oaf-ior-fd=")); if (!bonobo_activation_ior_fd) bonobo_activation_ior_fd = 1; } else if (!strncmp ("--oaf-activate-iid=", argv[i], strlen ("--oaf-activate-iid="))) { bonobo_activation_activate_iid = g_strdup (argv[i] + strlen ("--oaf-activate-iid=")); } else if (!strcmp ("--oaf-private", argv[i])) { bonobo_activation_private = TRUE; } } if (!is_initialized) bonobo_activation_postinit (NULL, NULL); return retval; } /** * bonobo_activation_orb_init: * @argc: pointer to program's argument count * @argv: argument array * * Initialize Bonobo Activation's ORB - do this once centrally * so it can be easily shared. * * Return value: the ORB. **/ CORBA_ORB bonobo_activation_orb_init (int *argc, char **argv) { CORBA_Context def_ctx; CORBA_Environment ev; const char *hostname; gchar *orb_id; CORBA_exception_init (&ev); #ifdef HAVE_GTHREADS orb_id = "orbit-local-mt-orb"; #else orb_id = "orbit-local-non-threaded-orb"; #endif bonobo_activation_orb = CORBA_ORB_init (argc, argv, orb_id, &ev); g_assert (ev._major == CORBA_NO_EXCEPTION); bonobo_activation_init_activation_env (); /* Set values in default context */ CORBA_ORB_get_default_context (bonobo_activation_orb, &def_ctx, &ev); CORBA_Context_create_child (def_ctx, "activation", &bonobo_activation_context, &ev); g_assert (ev._major == CORBA_NO_EXCEPTION); CORBA_Object_release ((CORBA_Object) def_ctx, &ev); g_assert (ev._major == CORBA_NO_EXCEPTION); hostname = bonobo_activation_hostname_get (); CORBA_Context_set_one_value (bonobo_activation_context, "hostname", (char *) hostname, &ev); CORBA_Context_set_one_value (bonobo_activation_context, "username", (char *) g_get_user_name (), &ev); CORBA_exception_free (&ev); #ifdef BONOBO_ACTIVATION_DEBUG if (getenv ("BONOBO_ACTIVATION_TRAP_SEGV")) { #ifdef HAVE_SIGACTION struct sigaction sa; sa.sa_handler = do_barrier; sigaction (SIGSEGV, &sa, NULL); sigaction (SIGPIPE, &sa, NULL); #else signal (SIGSEGV, do_barrier); #ifdef SIGPIPE signal (SIGPIPE, do_barrier); #endif #endif } if (getenv ("BONOBO_ACTIVATION_BARRIER_INIT")) { volatile int barrier = 1; while (barrier); } #endif return bonobo_activation_orb; } /** * bonobo_activation_debug_shutdown: * * A debugging function to shutdown the ORB and process * any reference count leaks that may have occurred. * * Return value: FALSE if there were leaks detected, else TRUE **/ gboolean bonobo_activation_debug_shutdown (void) { int retval = TRUE; CORBA_Environment ev; if (is_initialized) { CORBA_exception_init (&ev); bonobo_activation_base_service_debug_shutdown (&ev); if (ev._major != CORBA_NO_EXCEPTION) { retval = FALSE; } if (bonobo_activation_context != CORBA_OBJECT_NIL) { CORBA_Object_release ( (CORBA_Object) bonobo_activation_context, &ev); bonobo_activation_context = CORBA_OBJECT_NIL; } bonobo_activation_release_corba_client (); if (object_directory != CORBA_OBJECT_NIL) { CORBA_Object_release (object_directory, &ev); object_directory = CORBA_OBJECT_NIL; } if (bonobo_activation_orb != CORBA_OBJECT_NIL) { CORBA_ORB_destroy (bonobo_activation_orb, &ev); if (ev._major != CORBA_NO_EXCEPTION) { retval = FALSE; } CORBA_Object_release ( (CORBA_Object) bonobo_activation_orb, &ev); is_initialized = FALSE; } CORBA_exception_free (&ev); } return retval; } static const char bonobo_activation_version [] = VERSION; static const guint bonobo_activation_major_version = BONOBO_ACTIVATION_MAJOR_VERSION; static const guint bonobo_activation_minor_version = BONOBO_ACTIVATION_MINOR_VERSION; static const guint bonobo_activation_micro_version = BONOBO_ACTIVATION_MICRO_VERSION; libbonobo-2.32.1/bonobo-activation/bonobo-activation-id.c0000644000076400007640000001076511173072711020276 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ /* * bonobo-activation: A library for accessing bonobo-activation-server. * * Copyright (C) 1999, 2000 Red Hat, Inc. * Copyright (C) 2000 Eazel, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library 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 * Library General Public License for more details. * * You should have received a copy of the GNU Library General Public * License along with this library; if not, write to the Free * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * * Author: Elliot Lee * */ #include #include #include /** * bonobo_activation_info_new: * * This function allocates a %BonoboActicationInfo structure and returns it. * Should NOT be called from outside of this code. * * Return value: a newly allocated non-initialized %BonoboActicationInfo structure. */ BonoboActivationInfo * bonobo_activation_info_new (void) { return g_new0 (BonoboActivationInfo, 1); } /** * bonobo_activation_servinfo_to_actinfo: * @servinfo: An array of %Bonobo_ServerInfo structures. * * This function converts a %Bonobo_ServerInfo structure to a * %BonoboActivationInfo structure. The returned structure should * be freed with bonobo_activation_info_free. * * Return value: a newly allocated initialized %BonoboActivationInfo structure. */ BonoboActivationInfo * bonobo_activation_servinfo_to_actinfo (const Bonobo_ServerInfo * servinfo) { BonoboActivationInfo *retval = bonobo_activation_info_new (); retval->iid = g_strdup (servinfo->iid); retval->user = g_strdup (servinfo->username); retval->host = g_strdup (servinfo->hostname); return retval; } /** * bonobo_activation_info_free: * @actinfo: the %BonoboActivationInfo structure to free. * * Frees @actinfo. * */ void bonobo_activation_info_free (BonoboActivationInfo * actinfo) { g_free (actinfo->iid); g_free (actinfo->user); g_free (actinfo->host); g_free (actinfo); } /** * bonobo_activation_id_parse: * @actid: the activation id structure. * * Returns a pointer to a newly allocated %BonoboActivationInfo * structure (to be freed with bonobo_activation_info_free) initialized * with the data of @actid. * * Return value: the %BonoboActivationInfo corresponding to @actid. */ BonoboActivationInfo * bonobo_activation_id_parse (const CORBA_char *actid) { BonoboActivationInfo *retval; char *splitme, *ctmp, *ctmp2; char **parts[4]; const int nparts = sizeof (parts) / sizeof (parts[0]); int bracket_count, partnum; g_return_val_if_fail (actid, NULL); if (strncmp (actid, "OAFAID:", sizeof ("OAFAID:") - 1)) return NULL; ctmp = (char *) (actid + sizeof ("OAFAID:") - 1); if (*ctmp != '[') return NULL; retval = bonobo_activation_info_new (); splitme = g_alloca (strlen (ctmp) + 1); strcpy (splitme, ctmp); parts[0] = &(retval->iid); parts[1] = &(retval->user); parts[2] = &(retval->host); for (partnum = bracket_count = 0, ctmp = ctmp2 = splitme; bracket_count >= 0 && *ctmp && partnum < nparts; ctmp++) { switch (*ctmp) { case '[': if (bracket_count <= 0) ctmp2 = ctmp + 1; bracket_count++; break; case ']': bracket_count--; if (bracket_count <= 0) { *ctmp = '\0'; if (*ctmp2) *parts[partnum++] = g_strdup (ctmp2); } break; case ',': if (bracket_count == 1) { *ctmp = '\0'; if (*ctmp2) *parts[partnum++] = g_strdup (ctmp2); ctmp2 = ctmp + 1; } break; default: break; } } return retval; } /** * bonobo_activation_info_stringify: * @actinfo: the %BonoboActivationInfo to flatten. * * Serializes @actinfo into a char *. Should be freed with g_free (). * * Return value: the serialized version of @actinfo. */ char * bonobo_activation_info_stringify (const BonoboActivationInfo * actinfo) { g_return_val_if_fail (actinfo, NULL); return g_strconcat ("OAFAID:[", actinfo->iid ? actinfo->iid : "", ",", actinfo->user ? actinfo->user : "", ",", actinfo->host ? actinfo->host : "", "]", NULL); } libbonobo-2.32.1/bonobo-activation/bonobo-activation-async.h0000644000076400007640000000463611173072711021024 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ /* * oaf-async: A library for accessing oafd in a nice way. * * Copyright (C) 2000 Eazel, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library 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 * Library General Public License for more details. * * You should have received a copy of the GNU Library General Public * License along with this library; if not, write to the Free * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * * Author: Mathieu Lacage * */ #ifndef BONOBO_ACTIVATION_ASYNC_H #define BONOBO_ACTIVATION_ASYNC_H #include G_BEGIN_DECLS /* activated_object is CORBA_OBJECT_NIL if the activation failed somehow. If this is the case, error_reason contains a valid string which describes the pb encountered. If this is not the case, error_reason is not defined. activated_object should be CORBA_Object_release'd by the user */ typedef void (*BonoboActivationCallback) (CORBA_Object activated_object, const char *error_reason, gpointer user_data); void bonobo_activation_activate_async (const char *requirements, char *const *selection_order, Bonobo_ActivationFlags flags, BonoboActivationCallback callback, gpointer user_data, CORBA_Environment * ev); void bonobo_activation_activate_from_id_async (const Bonobo_ActivationID aid, Bonobo_ActivationFlags flags, BonoboActivationCallback callback, gpointer user_data, CORBA_Environment * ev); G_END_DECLS #endif /* BONOBO_ACTIVATION_ASYNC_H */ libbonobo-2.32.1/bonobo-activation/bonobo-activation-mime.h0000644000076400007640000000250611173072711020630 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ /* * bonobo-activation: A library for accessing bonobo-activation-server. * * Copyright (C) 2006 Red Hat, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library 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 * Library General Public License for more details. * * You should have received a copy of the GNU Library General Public * License along with this library; if not, write to the Free * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * * Author: Alexander Larsson */ #ifndef BONOBO_ACTIVATION_MIME_H #define BONOBO_ACTIVATION_MIME_H #include Bonobo_ServerInfo *bonobo_activation_get_default_component_for_mime_type (const char *mime_type); GList * bonobo_activation_get_all_components_for_mime_type (const char *mime_type); #endif /* BONOBO_ACTIVATION_MIME_H */ libbonobo-2.32.1/bonobo-activation/bonobo-activation-base-service.c0000664000076400007640000005201111433015514022237 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ /* * bonobo-activation: A library for accessing bonobo-activation-server. * * Copyright (C) 1999, 2000 Red Hat, Inc. * Copyright (C) 2000, 2001 Eazel, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library 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 * Library General Public License for more details. * * You should have received a copy of the GNU Library General Public * License along with this library; if not, write to the Free * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * * Author: Elliot Lee * */ /* This is part of the per-app CORBA bootstrapping - we use this to get hold of a running metaserver and such */ #include #include #include #include #include #include #include #include #ifndef _GNU_SOURCE #define _GNU_SOURCE 1 #endif #include #include #include #include #include #include #include #include #ifdef HAVE_SYS_WAIT_H #include #endif #include #include #ifdef G_OS_WIN32 #include #endif #include /* If you have a strange unix, you get odd hard coded limits */ #ifndef PATH_MAX # define PATH_MAX 1024 #endif static GSList *registries = NULL; typedef struct { int priority; const BonoboActivationBaseServiceRegistry *registry; gpointer user_data; } RegistryInfo; typedef struct { int priority; BonoboActivationBaseServiceActivator activator; } ActivatorInfo; static gint ri_compare (gconstpointer a, gconstpointer b) { RegistryInfo *ra = (RegistryInfo *) a; RegistryInfo *rb = (RegistryInfo *) b; return (rb->priority - ra->priority); } void bonobo_activation_base_service_registry_add (const BonoboActivationBaseServiceRegistry *registry, int priority, gpointer user_data) { RegistryInfo *new_ri; g_return_if_fail (registry); new_ri = g_new (RegistryInfo, 1); new_ri->priority = priority; new_ri->registry = registry; new_ri->user_data = user_data; registries = g_slist_insert_sorted (registries, new_ri, ri_compare); } CORBA_Object bonobo_activation_base_service_check (const BonoboActivationBaseService *base_service, CORBA_Environment *ev) { GSList *link; CORBA_Object retval = CORBA_OBJECT_NIL; int dist = INT_MAX; char *ior = NULL; for (link = registries; link; link = link->next) { RegistryInfo *ri; char *new_ior; int new_dist = dist; ri = link->data; if (!ri->registry->check) continue; new_ior = ri->registry->check (ri->registry, base_service, &new_dist, ri->user_data); if (new_ior && (new_dist < dist)) { g_free (ior); ior = new_ior; } else if (new_ior) { g_free (new_ior); } } if (ior) { retval = CORBA_ORB_string_to_object (bonobo_activation_orb_get (), ior, ev); if (ev->_major != CORBA_NO_EXCEPTION) retval = CORBA_OBJECT_NIL; g_free (ior); } return retval; } /*dumb marshalling hack */ static void bonobo_activation_registration_iterate (const BonoboActivationBaseService *base_service, CORBA_Object obj, CORBA_Environment *ev, gulong offset, int nargs) { GSList *link; char *ior = NULL; if (nargs == 4) ior = CORBA_ORB_object_to_string (bonobo_activation_orb_get (), obj, ev); for (link = registries; link; link = link->next) { RegistryInfo *ri; void (*func_ptr) (); ri = link->data; func_ptr = *(gpointer *) ((guchar *) ri->registry + offset); if (!func_ptr) continue; switch (nargs) { case 4: func_ptr (ri->registry, ior, base_service, ri->user_data); break; case 2: func_ptr (ri->registry, ri->user_data); break; } } if (nargs == 4) CORBA_free (ior); } static int lock_count = 0; static void bonobo_activation_registries_lock (CORBA_Environment *ev) { if (lock_count == 0) bonobo_activation_registration_iterate (NULL, CORBA_OBJECT_NIL, ev, G_STRUCT_OFFSET (BonoboActivationBaseServiceRegistry, lock), 2); lock_count++; } static void bonobo_activation_registries_unlock (CORBA_Environment *ev) { lock_count--; if (lock_count == 0) bonobo_activation_registration_iterate (NULL, CORBA_OBJECT_NIL, ev, G_STRUCT_OFFSET (BonoboActivationBaseServiceRegistry, unlock), 2); } void bonobo_activation_base_service_unset (const BonoboActivationBaseService *base_service, CORBA_Object obj, CORBA_Environment *ev) { bonobo_activation_registries_lock (ev); bonobo_activation_registration_iterate (base_service, obj, ev, G_STRUCT_OFFSET (BonoboActivationBaseServiceRegistry, unregister), 4); bonobo_activation_registries_unlock (ev); } void bonobo_activation_base_service_set (const BonoboActivationBaseService *base_service, CORBA_Object obj, CORBA_Environment *ev) { bonobo_activation_registries_lock (ev); bonobo_activation_registration_iterate (base_service, obj, ev, G_STRUCT_OFFSET (BonoboActivationBaseServiceRegistry, register_new), 4); bonobo_activation_registries_unlock (ev); } struct SysServerInstance { CORBA_Object already_running; char *username, *hostname; }; struct SysServer { const char *name; const char **cmd; int fd_arg; GSList *instances; } activatable_servers[] = { /* cmd filled in at runtime */ {"IDL:Bonobo/ActivationContext:1.0", NULL, 2, CORBA_OBJECT_NIL}, { NULL} }; #define STRMATCH(x, y) ((!x && !y) || (x && y && !strcmp(x, y))) static CORBA_Object existing_check (const BonoboActivationBaseService *base_service, struct SysServer *ss) { GSList *link; for (link = ss->instances; link; link = link->next) { struct SysServerInstance *ssi; ssi = link->data; if ( (!ssi->username || STRMATCH (ssi->username, base_service->username)) && (!ssi->hostname || STRMATCH (ssi->hostname, base_service->hostname))) return ssi->already_running; } return CORBA_OBJECT_NIL; } void bonobo_activation_base_service_debug_shutdown (CORBA_Environment *ev) { int i; GSList *l, *instances; struct SysServerInstance *ssi; for (i = 0; activatable_servers[i].name; i++) { instances = activatable_servers[i].instances; activatable_servers[i].instances = NULL; for (l = instances; l; l = l->next) { ssi = l->data; CORBA_Object_release (ssi->already_running, ev); g_free (ssi->username); g_free (ssi->hostname); g_free (ssi); } g_slist_free (instances); } } static void bonobo_activation_existing_set (const BonoboActivationBaseService *base_service, struct SysServer *ss, CORBA_Object obj, CORBA_Environment *ev) { GSList *link; struct SysServerInstance *ssi; ssi = NULL; for (link = ss->instances; link; link = link->next) { ssi = link->data; if ( (!ssi->username || STRMATCH (ssi->username, base_service->username)) && (!ssi->hostname || STRMATCH (ssi->hostname, base_service->hostname))) break; } if (link == NULL) { ssi = g_new0 (struct SysServerInstance, 1); ssi->already_running = obj; ssi->username = g_strdup (base_service->username); ssi->hostname = g_strdup (base_service->hostname); ss->instances = g_slist_prepend (ss->instances, ssi); } else { CORBA_Object_release (ssi->already_running, ev); ssi->already_running = obj; } /* FIXME: all this code is unneccesarily abstract & buggy with it */ if (!strcmp (base_service->name, "IDL:Bonobo/ActivationContext:1.0")) { bonobo_activation_register_client (obj, ev); } } static GSList *activator_list = NULL; static gint ai_compare (gconstpointer a, gconstpointer b) { const ActivatorInfo *ra, *rb; ra = a; rb = b; return (rb->priority - ra->priority); } void bonobo_activation_base_service_activator_add (BonoboActivationBaseServiceActivator activator, int priority) { ActivatorInfo *new_act; new_act = g_new (ActivatorInfo, 1); new_act->priority = priority; new_act->activator = activator; activator_list = g_slist_insert_sorted (activator_list, new_act, ai_compare); } static CORBA_Object bonobo_activation_activators_use (const BonoboActivationBaseService *base_service, const char **cmd, int fd_arg, CORBA_Environment *ev) { CORBA_Object retval = CORBA_OBJECT_NIL; GSList *link; for (link = activator_list; CORBA_Object_is_nil (retval, ev) && link; link = link->next) { ActivatorInfo *actinfo; actinfo = link->data; retval = actinfo->activator (base_service, cmd, fd_arg, ev); } return retval; } CORBA_Object bonobo_activation_internal_service_get_extended ( const BonoboActivationBaseService *base_service, gboolean existing_only, CORBA_Environment *ev) { CORBA_Object retval = CORBA_OBJECT_NIL; int i; CORBA_Environment myev, important_error_ev; gboolean ne; g_return_val_if_fail (base_service, CORBA_OBJECT_NIL); BONOBO_ACTIVATION_LOCK (); for (i = 0; activatable_servers[i].name; i++) { if (!strcmp (base_service->name, activatable_servers[i].name)) break; } if (!activatable_servers[i].name) { BONOBO_ACTIVATION_UNLOCK (); return retval; } CORBA_exception_init (&myev); CORBA_exception_init (&important_error_ev); retval = existing_check (base_service, &activatable_servers[i]); if (!CORBA_Object_non_existent (retval, ev)) goto out; bonobo_activation_registries_lock (ev); retval = bonobo_activation_base_service_check (base_service, &myev); ne = CORBA_Object_non_existent (retval, &myev); if (ne && !existing_only) { CORBA_Object race_condition; CORBA_Object_release (retval, &myev); retval = bonobo_activation_activators_use (base_service, activatable_servers[i].cmd, activatable_servers[i].fd_arg, &important_error_ev); race_condition = bonobo_activation_base_service_check (base_service, &myev); if (!CORBA_Object_non_existent (race_condition, &myev)) { CORBA_Object_release (retval, &myev); retval = race_condition; } else if (!CORBA_Object_is_nil (retval, &myev)) { bonobo_activation_base_service_set (base_service, retval, &myev); CORBA_Object_release (race_condition, &myev); } } bonobo_activation_registries_unlock (ev); if (!CORBA_Object_non_existent (retval, ev)) bonobo_activation_existing_set (base_service, &activatable_servers[i], retval, ev); out: /* If we overwrote ev with some stupid junk, replace * it with the real error */ if (important_error_ev._major != CORBA_NO_EXCEPTION) { CORBA_exception_free (ev); /* This transfers memory ownership */ *ev = important_error_ev; } CORBA_exception_free (&myev); BONOBO_ACTIVATION_UNLOCK (); return retval; } CORBA_Object bonobo_activation_service_get (const BonoboActivationBaseService *base_service) { CORBA_Environment ev; CORBA_Object obj; CORBA_exception_init (&ev); obj = bonobo_activation_internal_service_get_extended ( base_service, FALSE, &ev); #ifdef G_ENABLE_DEBUG if (ev._major != CORBA_NO_EXCEPTION) { if (!strcmp (ev._id, "IDL:Bonobo/GeneralError:1.0")) { Bonobo_GeneralError *err = ev._any._value; if (!err || !err->description) g_warning ("General error with no description"); else g_warning ("Exception '%s' on activate", err->description); } else g_warning ("Exception on activate\n"); } #endif CORBA_exception_free (&ev); return obj; } /*****Implementation of the IOR registration system via plain files ******/ static int lock_fd = -1; static const char * get_tmpdir (void) { static const char *tmpdir = NULL; if (!tmpdir) tmpdir = ORBit_get_safe_tmp (); if (!tmpdir) g_error ("No secure tmpdir found"); return tmpdir; } static const char * get_session_guid (void) { #ifdef HAVE_DBUS const char *session_bus_address; const char *guid; session_bus_address = g_dbus_address_get_for_bus_sync (G_BUS_TYPE_SESSION, NULL, NULL); if (session_bus_address == NULL) return NULL; guid = g_strrstr (session_bus_address, "guid="); if (guid == NULL) return NULL; if (guid[0] == '\0') return NULL; return guid + strlen ("guid="); #else return NULL; #endif } char * _bonobo_activation_lock_fname_get (void) { const char *session_guid; session_guid = get_session_guid (); if (session_guid == NULL) return g_build_filename (get_tmpdir (), "bonobo-activation-register.lock", NULL); return g_strdup_printf ("%s" G_DIR_SEPARATOR_S "bonobo-activation-register-%s.lock", get_tmpdir (), session_guid); } char * _bonobo_activation_ior_fname_get (void) { const char *session_guid; session_guid = get_session_guid (); if (session_guid == NULL) return g_build_filename (get_tmpdir (), "bonobo-activation-server-ior", NULL); return g_strdup_printf ("%s" G_DIR_SEPARATOR_S "bonobo-activation-server-%s-ior", get_tmpdir (), session_guid); } static void wait_for_lock (void) { #ifdef HAVE_USLEEP usleep (10000); #elif defined(HAVE_NANOSLEEP) struct timespec timewait; timewait.tv_sec = 0; timewait.tv_nsec = 1000000; nanosleep (&timewait, NULL); #else #warning You might have bad performance without usleep g_usleep (10000); #endif access ("bonobo-activation lock wait", 0); } static void rloc_file_lock (const BonoboActivationBaseServiceRegistry *registry, gpointer user_data) { #if defined (F_SETFD) && defined (FD_CLOEXEC) && defined (F_SETLKW) char *fn; struct flock lock; int retval; char *err; fn = _bonobo_activation_lock_fname_get (); while ((lock_fd = open (fn, O_CREAT | O_RDWR, 0700)) < 0) { if (errno == EEXIST) wait_for_lock (); else { g_message ("%s locking '%s'", g_strerror (errno), fn); break; } } fcntl (lock_fd, F_SETFD, FD_CLOEXEC); if (lock_fd >= 0) { lock.l_type = F_WRLCK; lock.l_whence = SEEK_SET; lock.l_start = 0; lock.l_len = 1; lock.l_pid = getpid (); while ((retval = fcntl (lock_fd, F_SETLKW, &lock)) < 0 && errno == EINTR) /**/; if (retval < 0) { /* FIXME: need to report this error in a better way. */ err = strerror (errno); g_warning ("Failed to acquire lock: %s\n.", err); } } g_free (fn); #elif defined (G_OS_WIN32) char *fn = _bonobo_activation_lock_fname_get (); wchar_t *wfn = g_utf8_to_utf16 (fn, -1, NULL, NULL, NULL); while ((lock_fd = _wsopen (wfn, O_CREAT|O_RDWR|_O_SHORT_LIVED|_O_NOINHERIT, _SH_DENYRW, 0700)) < 0) { if (errno == EACCES) { wait_for_lock (); } else { g_message ("%s locking '%s'", g_strerror (errno), fn); break; } } g_free (wfn); g_free (fn); #else g_warning ("No locking implemented\n"); #endif } static void rloc_file_unlock (const BonoboActivationBaseServiceRegistry *registry, gpointer user_data) { #if defined (F_SETFD) && defined (FD_CLOEXEC) && defined (F_SETLKW) struct flock lock; if (lock_fd >= 0) { lock.l_type = F_UNLCK; lock.l_whence = SEEK_SET; lock.l_start = 0; lock.l_len = 1; lock.l_pid = getpid (); fcntl (lock_fd, F_SETLKW, &lock); close (lock_fd); lock_fd = -1; } #elif defined (G_OS_WIN32) if (lock_fd >= 0) { close (lock_fd); lock_fd = -1; } #endif } static char * rloc_file_check (const BonoboActivationBaseServiceRegistry *registry, const BonoboActivationBaseService *base_service, int *ret_distance, gpointer user_data) { FILE *fh; char *fn; fn = _bonobo_activation_ior_fname_get (); fh = g_fopen (fn, "r"); g_free (fn); if (fh != NULL) { char iorbuf[8192]; iorbuf[0] = '\0'; while (fgets (iorbuf, sizeof (iorbuf), fh) && strncmp (iorbuf, "IOR:", 4)) /**/; g_strstrip (iorbuf); fclose (fh); if (!strncmp (iorbuf, "IOR:", 4)) { *ret_distance = 0; return g_strdup (iorbuf); } } return NULL; } static void rloc_file_register (const BonoboActivationBaseServiceRegistry *registry, const char *ior, const BonoboActivationBaseService *base_service, gpointer user_data) { char *fn; FILE *fh; fn = _bonobo_activation_ior_fname_get (); fh = g_fopen (fn, "w"); if (fh != NULL) { fprintf (fh, "%s\n", ior); fclose (fh); } g_free (fn); } static void rloc_file_unregister (const BonoboActivationBaseServiceRegistry *registry, const char *ior, const BonoboActivationBaseService *base_service, gpointer user_data) { char *fn; g_unlink ((fn = _bonobo_activation_ior_fname_get ())); g_free (fn); } static const BonoboActivationBaseServiceRegistry rloc_file = { rloc_file_lock, rloc_file_unlock, rloc_file_check, rloc_file_register, rloc_file_unregister }; static CORBA_Object local_re_check_fn (const Bonobo_ActivationEnvironment *environment, const char *act_iid, gpointer user_data) { CORBA_Environment ev; CORBA_Object result; CORBA_exception_init (&ev); result = bonobo_activation_internal_service_get_extended (user_data, TRUE, &ev); CORBA_exception_free (&ev); return result; } static CORBA_Object local_activator (const BonoboActivationBaseService *base_service, const char **cmd, int fd_arg, CORBA_Environment *ev) { if ( (!base_service->username || STRMATCH (base_service->username, g_get_user_name ())) && (!base_service->hostname || STRMATCH (base_service->hostname, bonobo_activation_hostname_get ()))) { return bonobo_activation_server_by_forking ( cmd, FALSE, fd_arg, NULL, NULL, base_service->name, TRUE, local_re_check_fn, (gpointer)base_service, ev); } return CORBA_OBJECT_NIL; } void bonobo_activation_base_service_init (void) { const char *override_cmd; #ifndef G_OS_WIN32 static const char *bonobo_activation_ac_cmd[] = { SERVER_LIBEXECDIR "/bonobo-activation-server", "--ac-activate", "--ior-output-fd=%d", NULL }; #else static const char *bonobo_activation_ac_cmd[] = { NULL, "--ac-activate", "--ior-output-fd=%d", NULL }; static gboolean beenhere = FALSE; if (!beenhere) { bonobo_activation_ac_cmd[0] = g_build_filename (_bonobo_activation_win32_get_server_libexecdir (), "bonobo-activation-server", NULL); beenhere = TRUE; } #endif bonobo_activation_base_service_activator_add (local_activator, 0); bonobo_activation_base_service_registry_add (&rloc_file, 0, NULL); if ((override_cmd = g_getenv ("BONOBO_ACTIVATION_SERVER")) && (override_cmd[0] != '\0')) bonobo_activation_ac_cmd [0] = override_cmd; activatable_servers[0].cmd = bonobo_activation_ac_cmd; } libbonobo-2.32.1/bonobo-activation/bonobo-activation-id.h0000644000076400007640000000401711173072711020274 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ /* * bonobo-activation: A library for accessing bonobo-activation-server. * * Copyright (C) 1999, 2000 Red Hat, Inc. * Copyright (C) 2000 Eazel, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library 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 * Library General Public License for more details. * * You should have received a copy of the GNU Library General Public * License along with this library; if not, write to the Free * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * * Author: Elliot Lee */ #ifndef BONOBO_ACTIVATION_ID_H #define BONOBO_ACTIVATION_ID_H #ifndef BONOBO_DISABLE_DEPRECATED #include G_BEGIN_DECLS /* If you wish to manipulate the internals of this structure, please use g_malloc/g_free to allocate memory. */ typedef struct { char *iid; /* Implementation ID */ char *user; /* user name */ char *host; /* DNS name or IP address */ char *domain; /* FIXME: unused - remove ? */ } BonoboActivationInfo; Bonobo_ActivationID bonobo_activation_info_stringify (const BonoboActivationInfo *actinfo); BonoboActivationInfo *bonobo_activation_servinfo_to_actinfo (const Bonobo_ServerInfo *servinfo); BonoboActivationInfo *bonobo_activation_id_parse (const CORBA_char *actid); BonoboActivationInfo *bonobo_activation_info_new (void); void bonobo_activation_info_free (BonoboActivationInfo *actinfo); G_END_DECLS #endif /* BONOBO_DISABLE_DEPRECATED */ #endif /* BONOBO_ACTIVATION_ID_H */ libbonobo-2.32.1/config.h.in0000664000076400007640000000612511546333040012525 00000000000000/* config.h.in. Generated from configure.in by autoheader. */ /* whether to compile with bonobo activation debugging */ #undef BONOBO_ACTIVATION_DEBUG /* always defined to indicate that i18n is enabled */ #undef ENABLE_NLS /* gettext package name */ #undef GETTEXT_PACKAGE /* Defined if debugging code should be compiled */ #undef G_ENABLE_DEBUG /* Define to 1 if you have the `bind_textdomain_codeset' function. */ #undef HAVE_BIND_TEXTDOMAIN_CODESET /* whether we have crt_externs.h */ #undef HAVE_CRT_EXTERNS_H /* whether we have dbus */ #undef HAVE_DBUS /* 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 /* whether we use gthreads */ #undef HAVE_GTHREADS /* 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 `nanosleep' function. */ #undef HAVE_NANOSLEEP /* whether we have _NSGetEnviron */ #undef HAVE_NSGETENVIRON /* Define to 1 if you have the `setsid' function. */ #undef HAVE_SETSID /* Define to 1 if you have the `sigaction' function. */ #undef HAVE_SIGACTION /* 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_SYSLOG_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_SYS_WAIT_H /* Define to 1 if you have the header file. */ #undef HAVE_UNISTD_H /* Define to 1 if you have the `usleep' function. */ #undef HAVE_USLEEP /* Define to the sub-directory in which libtool stores uninstalled libraries. */ #undef LT_OBJDIR /* 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 /* Version number of package */ #undef VERSION /* Define to 1 if `lex' declares `yytext' as a `char *' by default, not a `char[]'. */ #undef YYTEXT_POINTER libbonobo-2.32.1/Makefile.in0000664000076400007640000006640011546333030012550 00000000000000# Makefile.in generated by automake 1.11.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008, 2009 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@ VPATH = @srcdir@ 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) $(libinclude_HEADERS) \ $(srcdir)/Makefile.am $(srcdir)/Makefile.in \ $(srcdir)/config.h.in $(srcdir)/libbonobo-zip.in \ $(top_srcdir)/configure AUTHORS COPYING COPYING.LIB ChangeLog \ NEWS TODO config.guess config.sub depcomp install-sh ltmain.sh \ missing mkinstalldirs ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.in 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 = libbonobo-zip CONFIG_CLEAN_VPATH_FILES = AM_V_GEN = $(am__v_GEN_$(V)) am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) am__v_GEN_0 = @echo " GEN " $@; AM_V_at = $(am__v_at_$(V)) am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) 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__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__installdirs = "$(DESTDIR)$(libincludedir)" HEADERS = $(libinclude_HEADERS) 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 = $(SUBDIRS) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) distdir = $(PACKAGE)-$(VERSION) top_distdir = $(distdir) am__remove_distdir = \ { test ! -d "$(distdir)" \ || { find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \ && rm -fr "$(distdir)"; }; } am__relativize = \ dir0=`pwd`; \ sed_first='s,^\([^/]*\)/.*$$,\1,'; \ sed_rest='s,^[^/]*/*,,'; \ sed_last='s,^.*/\([^/]*\)$$,\1,'; \ sed_butlast='s,/*[^/]*$$,,'; \ while test -n "$$dir1"; do \ first=`echo "$$dir1" | sed -e "$$sed_first"`; \ if test "$$first" != "."; then \ if test "$$first" = ".."; then \ dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \ dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \ else \ first2=`echo "$$dir2" | sed -e "$$sed_first"`; \ if test "$$first2" = "$$first"; then \ dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \ else \ dir2="../$$dir2"; \ fi; \ dir0="$$dir0"/"$$first"; \ fi; \ fi; \ dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \ done; \ reldir="$$dir2" GZIP_ENV = --best DIST_ARCHIVES = $(distdir).tar.bz2 distuninstallcheck_listfiles = find . -type f -print distcleancheck_listfiles = find . -type f -print ACLOCAL = @ACLOCAL@ ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ AR = @AR@ AS = @AS@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ BONOBO_ACTIVATION_LT_VERSION_INFO = @BONOBO_ACTIVATION_LT_VERSION_INFO@ BONOBO_MAJOR_VERSION = @BONOBO_MAJOR_VERSION@ BONOBO_MICRO_VERSION = @BONOBO_MICRO_VERSION@ BONOBO_MINOR_VERSION = @BONOBO_MINOR_VERSION@ BONOBO_SLAY = @BONOBO_SLAY@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DISABLE_DEPRECATED_CFLAGS = @DISABLE_DEPRECATED_CFLAGS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GREP = @GREP@ GTHREAD_CFLAGS = @GTHREAD_CFLAGS@ GTHREAD_LIBS = @GTHREAD_LIBS@ GTKDOC_CHECK = @GTKDOC_CHECK@ GTKDOC_MKPDF = @GTKDOC_MKPDF@ GTKDOC_REBASE = @GTKDOC_REBASE@ HTML_DIR = @HTML_DIR@ IF_BSD_PS = @IF_BSD_PS@ IF_CYGWIN_PS = @IF_CYGWIN_PS@ IF_POSIX_PS = @IF_POSIX_PS@ 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@ LD = @LD@ LDFLAGS = @LDFLAGS@ LEX = @LEX@ LEXLIB = @LEXLIB@ LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ LFLAGS = @LFLAGS@ LIBBONOBO_CFLAGS = @LIBBONOBO_CFLAGS@ LIBBONOBO_LIBS = @LIBBONOBO_LIBS@ LIBBONOBO_LT_VERSION_INFO = @LIBBONOBO_LT_VERSION_INFO@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIPO = @LIPO@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ NM = @NM@ NMEDIT = @NMEDIT@ OBJDUMP = @OBJDUMP@ OBJEXT = @OBJEXT@ ORBIT_IDL = @ORBIT_IDL@ OTOOL = @OTOOL@ OTOOL64 = @OTOOL64@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PERL_PATH = @PERL_PATH@ PKG_CONFIG = @PKG_CONFIG@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ PS_PATH = @PS_PATH@ RANLIB = @RANLIB@ SEARCHPATHSEP = @SEARCHPATHSEP@ SED = @SED@ SERVER_CFLAGS = @SERVER_CFLAGS@ SERVER_LIBS = @SERVER_LIBS@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SOPREFIX = @SOPREFIX@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ WARN_CFLAGS = @WARN_CFLAGS@ XGETTEXT = @XGETTEXT@ YACC = @YACC@ YFLAGS = @YFLAGS@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ 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@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ lt_ECHO = @lt_ECHO@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ 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 = \ idl bonobo-activation bonobo \ activation-server monikers \ utils samples tests doc po libincludedir = $(includedir)/libbonobo-2.0 libinclude_HEADERS = \ libbonobo.h EXTRA_DIST = \ MAINTAINERS \ bonobo-activation-config.xml \ libbonobo-zip.in \ intltool-extract.in \ intltool-merge.in \ intltool-update.in \ changes.txt \ gtk-doc.make DISTCHECK_CONFIGURE_FLAGS = --enable-gtk-doc DISTCLEANFILES = intltool-extract intltool-merge intltool-update all: config.h $(MAKE) $(AM_MAKEFLAGS) all-recursive .SUFFIXES: am--refresh: @: $(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) --foreign'; \ $(am__cd) $(srcdir) && $(AUTOMAKE) --foreign \ && exit 0; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --foreign 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; \ $(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 libbonobo-zip: $(top_builddir)/config.status $(srcdir)/libbonobo-zip.in cd $(top_builddir) && $(SHELL) ./config.status $@ mostlyclean-libtool: -rm -f *.lo clean-libtool: -rm -rf .libs _libs distclean-libtool: -rm -f libtool config.lt install-libincludeHEADERS: $(libinclude_HEADERS) @$(NORMAL_INSTALL) test -z "$(libincludedir)" || $(MKDIR_P) "$(DESTDIR)$(libincludedir)" @list='$(libinclude_HEADERS)'; test -n "$(libincludedir)" || list=; \ 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_HEADER) $$files '$(DESTDIR)$(libincludedir)'"; \ $(INSTALL_HEADER) $$files "$(DESTDIR)$(libincludedir)" || exit $$?; \ done uninstall-libincludeHEADERS: @$(NORMAL_UNINSTALL) @list='$(libinclude_HEADERS)'; test -n "$(libincludedir)" || list=; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ test -n "$$files" || exit 0; \ echo " ( cd '$(DESTDIR)$(libincludedir)' && rm -f" $$files ")"; \ cd "$(DESTDIR)$(libincludedir)" && rm -f $$files # 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 \ test -d "$(distdir)/$$subdir" \ || $(MKDIR_P) "$(distdir)/$$subdir" \ || exit 1; \ fi; \ done @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ 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 -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 -9 -c >$(distdir).tar.bz2 $(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 -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) | bzip2 -9 -c >$(distdir).tar.bz2 $(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.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 a+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" \ $(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: @$(am__cd) '$(distuninstallcheck_dir)' \ && test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \ || { 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 $(HEADERS) config.h installdirs: installdirs-recursive installdirs-am: for dir in "$(DESTDIR)$(libincludedir)"; 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: $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install 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 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-data-local install-libincludeHEADERS install-dvi: install-dvi-recursive install-dvi-am: install-exec-am: install-html: install-html-recursive install-html-am: install-info: install-info-recursive install-info-am: install-man: install-pdf: install-pdf-recursive install-pdf-am: install-ps: install-ps-recursive install-ps-am: installcheck-am: maintainer-clean: maintainer-clean-recursive -rm -f $(am__CONFIG_DISTCLEAN_FILES) -rm -rf $(top_srcdir)/autom4te.cache -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-recursive mostlyclean-am: mostlyclean-generic mostlyclean-libtool pdf: pdf-recursive pdf-am: ps: ps-recursive ps-am: uninstall-am: uninstall-libincludeHEADERS uninstall-local .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 ctags ctags-recursive dist dist-all dist-bzip2 \ dist-gzip 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-data-local install-dvi install-dvi-am install-exec \ install-exec-am install-html install-html-am install-info \ install-info-am install-libincludeHEADERS 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-libincludeHEADERS uninstall-local install-data-local: -mkdir -p $(DESTDIR)$(sysconfdir)/bonobo-activation if test -f $(DESTDIR)$(sysconfdir)/bonobo-activation/bonobo-activation-config.xml; then \ echo "bonobo-activation-config.xml configuration file not changed"; \ else \ $(INSTALL_DATA) $(top_srcdir)/bonobo-activation-config.xml \ $(DESTDIR)$(sysconfdir)/bonobo-activation; \ fi uninstall-local: if cmp $(DESTDIR)$(sysconfdir)/bonobo-activation/bonobo-activation-config.xml $(top_srcdir)/bonobo-activation-config.xml > /dev/null ; then \ rm -f $(DESTDIR)$(sysconfdir)/bonobo-activation/bonobo-activation-config.xml; \ fi # 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: libbonobo-2.32.1/missing0000755000076400007640000002623311432275520012103 00000000000000#! /bin/sh # Common stub for a few missing GNU programs while installing. scriptversion=2009-04-28.21; # UTC # Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2006, # 2008, 2009 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 tar try tar, gnutar, gtar, then tar without non-portable flags 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. ;; tar*) if test -n "$run"; then echo 1>&2 "ERROR: \`tar' requires --run" exit 1 elif test "x$2" = "x--version" || test "x$2" = "x--help"; then exit 1 fi ;; *) 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 ;; tar*) shift # We have already tried tar in the generic part. # Look for gnutar/gtar before invocation to avoid ugly error # messages. if (gnutar --version > /dev/null 2>&1); then gnutar "$@" && exit 0 fi if (gtar --version > /dev/null 2>&1); then gtar "$@" && exit 0 fi firstarg="$1" if shift; then case $firstarg in *o*) firstarg=`echo "$firstarg" | sed s/o//` tar "$firstarg" "$@" && exit 0 ;; esac case $firstarg in *h*) firstarg=`echo "$firstarg" | sed s/h//` tar "$firstarg" "$@" && exit 0 ;; esac fi echo 1>&2 "\ WARNING: I can't seem to be able to run \`tar' with the given arguments. You may want to install GNU tar or Free paxutils, or check the command line arguments." exit 1 ;; *) 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: libbonobo-2.32.1/ChangeLog0000644000076400007640000063775411373604303012275 000000000000002009-10-06 Michael Meeks * bonobo-activation/bonobo-activation-mime.c (gnome_vfs_mime_get_short_list_components): fix memory corruption identified by Vuntz - thanks. ================================ 2.24.1 ============================ 2009-01-27 Tor Lillqvist * activation-server/Makefile.am: Link as a "GUI" exe file on Windows to avoid console windows. * activation-server/activation-server-main.c (main): Use the verb "started" instead of "forked" in error message. On Windows, if the BONOBO_ACTIVATION_DEBUG_OUTPUT environment variable is set, do ensure that stdout and stderr goes somewhere. If necessary open a new console. If somebody attempts to run bonobo-activation-server directly, always ensure the ensuing error message is visible. (ensure_output_visible) (wait_console_key): New functions used on Windows to ensure output goes somewhere even if the executable is a "GUI" one. 2008-01-14 Fridrich Strba * configure.in: allow override the check for ORBIT_IDL from environmental variable + prevent AC_TRY_RUN from bailing out when we are cross-compiling. 2008-12-15 Kjartan Maraas * configure.in: Require glib 2.14.0. 2008-12-11 Kjartan Maraas * bonobo/bonobo-generic-factory.c: (last_unref_cb): Don't do this one as that might be explicitly set. 2008-12-11 Kjartan Maraas * activation-server/server.h: * bonobo-activation/bonobo-activation-private.h: * bonobo/bonobo-generic-factory.c: And remember to adjust the timeout constants accordingly. 2008-12-11 Kjartan Maraas * bonobo-activation/bonobo-activation-init.c: (bonobo_activation_postinit): Fix typo. 2008-12-11 Kjartan Maraas * activation-server/object-directory-corba.c: (check_quit): * bonobo-activation/bonobo-activation-init.c: (bonobo_activation_postinit): * bonobo/bonobo-generic-factory.c: (last_unref_cb), (bonobo_generic_factory_main_timeout): Use g_timeout_add_seconds and friends in a few places. 2008-12-09 Kjartan Maraas * configure.in: Don't use here either. 2008-12-09 Kjartan Maraas * activation-server/activation-server-main.c * bonobo-activation/bonobo-activation-shlib.c * test-activation/bonobo-activation-test.c * test-activation/empty-client.c Remove some #if 0'ed out code. 2008-12-09 Kjartan Maraas * activation-server/object-directory-load.c: glib include fix. Patch from Przemysław Grzegorczyk Closes bug #563712. 2008-10-17 Cosimo Cecchi * bonobo-activation/Makefile.am: * bonobo-activation/bonobo-activation-client.h: * bonobo/Makefile.am: * bonobo/bonobo-main.c: * bonobo/bonobo-running-context.c: * configure.in: * monikers/Makefile.am: * tests/Makefile.am: * tests/test-activation/Makefile.am: Use and enforce single GLib includes. 2008-09-22 Kjartan Maraas * configure.in: Post release bump. ========================= 2.24.0 ====================== 2008-09-22 Kjartan Maraas * NEWS: Update * configure.in: Release 2.24.0 2008-09-11 Tor Lillqvist * activation-server/activation-server-main.c (main) * bonobo/bonobo-generic-factory.h (BONOBO_ACTIVATION_FACTORY) (BONOBO_ACTIVATION_FACTORY_TIMEOUT) * tests/test-activation/bonobo-activation-test.c (main) * tests/test-activation/empty-server.c (main) * tests/*.c (main): Call g_thread_init(NULL) here. It is the right thing to do, and in the future ORBit2 might enforce this, see bug #547885. ========================= 2.23.1 ===================== 2008-08-19 Kjartan Maraas * NEWS: Update for release. * activation-server/activation-context-corba.c: (ac_query_get_var): s/strcasecmp/g_ascii_strcasecmp. * bonobo/bonobo-object.c: (bonobo_object_class_init): Notify the user about initializing bonobo with a warning and not a g_error. 2008-08-11 Tobias Mueller * bonobo/bonobo-object.c (bonobo_object_class_init): Checks for bonobo being initialized in bonobo_object_class_init, else notify the user. Fixes bug 543735. 2008-07-25 Tobias Mueller * bonobo/bonobo-main.c (bonobo_init): Extend documentation to reflect the fact that it accepts NULL. Fixes bug 543733. 2008-07-07 Michael Meeks * activation-server/activation-context-corba.c (ac_rescan), * activation-server/object-directory-corba.c (as_rescan): fix identical bug in cut/paste code (urgh): we should reset idle_id in the idle handler, so we can cope with the race more than once. Switch to a 100ms timeout from idle too: to cope with lots of app death on Zap more efficiently. 2008-06-16 Ray Strode * configure.in: Post-release bump ============================ 2.23.0 ============================ 2008-06-06 Tor Lillqvist * configure.in: Look for dbus only on Unix and define HAVE_DBUS in config.h in that case. * activation-server/activation-server-main.c * bonobo-activation/bonobo-activation-base-service.c (get_session_guid): Bypass dbus code unless HAVE_DBUS. 2008-06-03 Kjartan Maraas * activation-server/activation-server-main.c: Add a comment for a global var. * configure.in: Bump version to 2.23.0 2008-05-29 Christian Persch * bonobo-activation/bonobo-activation-init.h: * bonobo/bonobo-macros.h: * bonobo/bonobo-types.h: Include instead of single headers. Bug #535475. 2008-05-07 Ray Strode * activation-server/activation-server-main.c: (cleanup_ior_and_lock_files), (main): remove ior and lock files on exit path 2008-05-07 Ray Strode Make bonobo-activation-server exit when dbus session exits * configure.in: Require dbus and dbus-glib * activation-server/activation-server-main.c: (bus_message_handler): Check for "Disconnected" signal and quit mainloop upon getting it. (main): Get on session bus and filter for messages. 2008-05-07 Ray Strode Key ior and lock filenames of dbus session guid * bonobo-activation/bonobo-activation-base-service.c (get_session_guid): New function to extract guid from $DBUS_SESSION_BUS_ADDRESS (_bonobo_activation_lock_fname_get), (_bonobo_activation_ior_fname_get): encode result of of get_session_guid () into returned filenames 2008-05-07 Ray Strode Consolidate ior and lock name getter logic to one place to facilitate changing that logic * bonobo-activation/bonobo-activation-private.h: * bonobo-activation/bonobo-activation-base-service.c: (get_lock_fname), (get_ior_fname), (_bonobo_activation_lock_fname_get), (_bonobo_activation_ior_fname_get): Rename and export get_lock_fname and get_ior_fname. (rloc_file_lock), (rloc_file_check), (rloc_file_register), (rloc_file_unregister): adapt for renamed functions * activation-server/activation-server-main.c (dump_ior): get ior name from libbonobo-activation instead of hardcoding it to "bonobo-activation-server-ior" ============================ 2.22.0 ============================ 2008-02-01 Kjartan Maraas * bonobo/bonobo-exception.h: Fix warnings from gcc 4.3. ============================ 2.21.90 ============================ 2008-01-29 Christian Persch * bonobo/bonobo-exception.h: * bonobo/bonobo-object.h: * bonobo/bonobo-running-context.h: Use G_STRFUNC. * configure.in: Update for 2.21.90. 2008-01-28 Kjartan Maraas * configure.in: Bump version. * doc/api/tmpl/bonobo-application.sgml: Flush change. ============================ 2.20.4 ============================ 2008-01-28 Michael Meeks * activation-server/object-directory-corba.c (od_get_active_server): fix #512520 2008-01-25 Kjartan Maraas * DEPENDS: Fix some. * NEWS: Update * bonobo-activation/bonobo-activation-init.c: Mark som stuff static * configure.in: Remove obsolete check for unneeded parts of popt. 2008-01-21 Tor Lillqvist * libbonobo-zip.in: Look for catalogs in share/locale first, as that is where they will be with a properly built GNU gettext. 2007-01-07 Brian Cameron * bonobo/bonobo-arg.h: Change non-GCC version of the BONOBO_ARG_SET_STRING macro to remove the parens that surround the braces. This syntax is a GCC extension that does not work with other compilers, such as Sun Studio. FIxes bug #507129. Reviewed by Michael Meeks. 2007-12-22 Olav Vitters * configure.in: Bump version. ============================= 2.20.3 =========================== 2007-12-22 Olav Vitters * NEWS: Update. 2007-12-13 Jens Granseuer * bonobo-activation/bonobo-activation-activate.c: (bonobo_activation_init_activation_env): fix C99ism (bug #503280) 2007-12-12 Kjartan Maraas * bonobo/bonobo-arg.h: Fix some gcc'isms that were uncovered by the g_assert -> g_warn_if_fail changes in the current glib. Fixes build problems. Thanks to Tim Janik for help finding the problem. 2007-12-12 Gustavo J. A. M. Carneiro * configure.in: Bump version. ============================= 2.20.2 =========================== 2007-12-12 Gustavo J. A. M. Carneiro * NEWS: Update. * bonobo-activation/bonobo-activation-activate.c: (bonobo_activation_init_activation_env): Fix a regression introduced in 2.20.0 (bug #427992). Patch by gnome-bugzilla@dm.cobite.com. 2007-11-12 Kjartan Maraas * bonobo-activation/bonobo-activation-base-service.c: Remove redundant include. 2007-10-15 Kjartan Maraas * configure.in: Post release bump ============================= 2.20.1 =========================== 2007-10-15 Kjartan Maraas * activation-server/activation-server-main.c: (build_src_dir), (log_handler): Plug a leak. 2007-09-18 Kjartan Maraas * activation-server/activation-context-corba.c: (activation_clients_cache_notify), (ac_do_activation): Plug a leak. Patch from Matthias Clasen. Closes bug #476448. 2007-09-18 Kjartan Maraas * activation-server/object-directory-load.c: (od_end_element): Plug a leak. Patch from Matthias Clasen. Closes bug #476398. * bonobo-activation/bonobo-activation-activate.c: (_bonobo_activation_get_activation_env_value): Return a value. ============================== 2.20.0 ========================== 2007-09-08 Gustavo J. A. M. Carneiro * bonobo-activation/bonobo-activation-activate.c: (_bonobo_activation_get_activation_env_value): * bonobo-activation/bonobo-activation-private.h: * tests/test-activation/Makefile.am: * tests/test-activation/bonobo-activation-env-test.c: (main): Add unit test to check for possible bug introduced by fix to bug #427992. 2007-08-19 Gilles Dartiguelongue * configure.in: use AC_HELP_STRING to align configure switches =============================== 2.19.5 ======================== 2007-07-30 Christian Persch * autogen.sh: * bonobo/Makefile.am: * configure.in: * monikers/Makefile.am: Fix the build with automake 1.10. 2007-07-03 Tor Lillqvist * bonobo-activation/bonobo-activation-fork-server.c (bonobo_activation_server_by_forking): In trunk GLib pipe() is no longer a macro in gwin32.h, so call _pipe() explicitly. 2007-06-23 Christian Persch * bonobo/libbonobo-2.0-uninstalled.pc.in: * bonobo/libbonobo-2.0.pc.in: Use gmodule-no-export-2.0 instead of gmodule-2.0. Bug #449841. 2007-06-19 Gustavo J. A. M. Carneiro * configure.in: Post-release version bump. =============================== 2.19.4 ======================== 2007-06-19 Gustavo J. A. M. Carneiro * configure.in: Bump version to 2.19.4 to match the GNOME release. * NEWS: Update NEWS. 2007-04-19 Gustavo J. A. M. Carneiro * bonobo-activation/bonobo-activation-activate.c: Rewrite bonobo_activation_set_activation_env_value to make use ORBit_sequnce_* APIs, to simplify code and eliminate memory errors. Closes #427992. 2007-04-10 Matthias Clasen * bonobo-activation/bonobo-activation-activate.c (bonobo_activation_set_activation_env_value): Don't leak old key-value pairs when copying to a larger array. (#427992) 2007-03-23 Christian Persch * bonobo/bonobo-i18n.h: Deprecate bonobo-i18n.h. Bug #419533. 2007-03-23 Christian Persch * activation-server/activation-context-corba.c: * activation-server/activation-server-corba-extensions.c: * activation-server/activation-server-main.c: * activation-server/object-directory-activate.c: * activation-server/object-directory-config-file.c: * activation-server/object-directory-corba.c: * activation-server/object-directory-load.c: * bonobo-activation/Makefile.am: * bonobo-activation/bonobo-activation-activate.c: * bonobo-activation/bonobo-activation-base-service.c: * bonobo-activation/bonobo-activation-fork-server.c: * bonobo-activation/bonobo-activation-get-language-list.c: * bonobo-activation/bonobo-activation-i18n.h: * bonobo-activation/bonobo-activation-init.c: * bonobo-activation/bonobo-activation-shlib.c: * bonobo/Makefile.am: * bonobo/bonobo-application.c: * bonobo/bonobo-debug.c: (bonobo_debug_print): * bonobo/bonobo-debug.h: * bonobo/bonobo-exception.c: * bonobo/bonobo-generic-factory.h: * bonobo/bonobo-moniker-util.c: * bonobo/bonobo-moniker.c: * bonobo/bonobo-object.c: * bonobo/bonobo-running-context.c: (bonobo_running_context_trace_objects_T): * monikers/bonobo-moniker-oaf.c: * samples/echo/echo-client.c: * utils/bonobo-activation-sysconf.c: (main): Use glib/gi18n[-lib].h instead of bonobo-i18n.h. Bug #419535. 2007-03-09 Gustavo J. A. M. Carneiro * activation-server/object-directory-corba.c (od_merge_client_environment): Don't crash if a ClientContext for a client isn't available (maybe because it's a legacy client). Fixes bug #416393. 2007-02-28 Kjartan Maraas * bonobo-activation/bonobo-activation-mime.h: Fix header guard. * configure.in: Fix link flags with -z defs ldflags. Patch from Loïc Minier. Closes bug #409065. 2007-02-27 Kjartan Maraas * activation-server/activation-server-main.c: * bonobo-activation/bonobo-activation-init.c: * bonobo/bonobo-generic-factory.c: Remove unneeded duplicated includes. 2007-02-27 Kjartan Maraas * bonobo-activation/bonobo-activation-client.c: * bonobo/bonobo-app-client.c: (bonobo_app_client_get_type): * bonobo/bonobo-debug.c: (bonobo_debug_init): * bonobo/bonobo-types.c: (bonobo_corba_object_type_register_static): Remove unneeded trailing commas. 2007-02-27 Kjartan Maraas * tests/test-activation/bonobo-activation-test-async.c: (test_activate), (test_activate_from_id): Fix return values to be consistent. =============================== 2.17.92 ======================== 2007-02-26 Kjartan Maraas * NEWS: Update. * bonobo/bonobo-context.c: (context_add), (bonobo_context_init): Revert the patch from bug 403143 since it breaks make check. * doc/api/tmpl/bonobo-i18n.sgml: Updated. 2007-02-26 Kjartan Maraas * activation-server/activation-context-corba.c: * activation-server/activation-server-main.c: * bonobo/bonobo-i18n.h: * bonobo/bonobo-object.c: More fixes for bug #363033. This should make nautilus compile again hopefully. 2007-02-24 Christian Persch * bonobo/bonobo-debug.c: (bonobo_debug_init): * bonobo/bonobo-running-context.c: (bonobo_running_context_trace_objects_T): Reduce relocations. 2007-02-20 Kjartan Maraas * MAINTAINERS: Add myself. * Makefile.am: Dist the above. * bonobo/bonobo-context.c: (context_take), (bonobo_context_init): * bonobo/bonobo-i18n.h: Fix redefining of _ causing compiler warnings. Closes bug #363033. ============================== 2.17.91 ========================== 2007-02-02 Kjartan Maraas * bonobo/bonobo-context.c: (context_take), (bonobo_context_init): Plug a leak. Patch from Chris Wilson. Closes bug #403143. * bonobo/libbonobo-2.0.pc.in: Add gmodule-2.0 here. Bug #409065. 2007-01-30 Kjartan Maraas * bonobo-activation/bonobo-activation-fork-server.c: (bonobo_activation_server_by_forking): * bonobo-activation/bonobo-activation-mime.c: (bonobo_activation_get_default_component_for_mime_type): Remove a couple unused variables. 2007-01-26 Kjartan Maraas * bonobo-activation/bonobo-activation-init.c: (bonobo_activation_get_goption_group): * bonobo-activation/bonobo-activation-init.h: Factor out some more popt remains. Reported by dmacks at netspace org. Patch from Christian Persch. Closes bug #357145. 2007-01-22 Gustavo J. A. M. Carneiro * tests/test-activation/test.sh: Add "ulimit -c 0" to disable core dumps with a note for future work to investigate it :-P ========================= 2.17.90 ============================ 2007-01-21 Gustavo J. A. M. Carneiro * bonobo/bonobo-application.c (set_property): Go back to Kjartan's version using g_value_dup_string in this file because it is the correct one after all. Fixes #398059. 2007-01-19 Gustavo J. A. M. Carneiro * bonobo/bonobo-application.c (set_property), * bonobo/bonobo-arg.c (bonobo_arg_from_gvalue): Revert the g_value_dup_string change on 2007-01-15, which is not correct. Fixes #398059. 2007-01-15 Kjartan Maraas * activation-server/object-directory-load.c: (od_load_file): * bonobo-activation/bonobo-activation-base-service.c: (bonobo_activation_existing_set): * bonobo-activation/bonobo-activation-register.c: (bonobo_activation_registration_env_set): * bonobo/bonobo-application.c: (bonobo_application_finalize), (set_property): * bonobo/bonobo-item-handler.c: (bonobo_item_options_free): * bonobo/bonobo-listener.c: (bonobo_listener_finalize): * bonobo/bonobo-property-bag.c: (bonobo_property_bag_foreach_remove_prop): * bonobo/bonobo-running-context.c: (impl_Bonobo_RunningContext_removeKey): * bonobo/bonobo-storage-memory.c: (smem_list_contents_impl): * bonobo/bonobo-stream-memory.c: (mem_finalize): Remove unneeded checks for null before calling g_free/g_strdup. Closes bug #396796. 2007-01-15 Kjartan Maraas * bonobo/bonobo-application.c: (set_property): * bonobo/bonobo-arg.c: (bonobo_arg_from_gvalue): Use g_value_dup_string instead of g_strdup (g_value_get_string()) 2006-12-26 Gustavo J. A. M. Carneiro * tests/test-activation/empty-server.c (main): Automatically unregister the 'Empty' component after a couple of seconds in order to let the test b-a-s quit. Makes unit tests slightly more reliable and fixes #112837. * tests/test-activation/bonobo-activation-test-async.c: Use g_message instead of printf. Use g_main_loop_* and g_timeout_add instead of busy waiting for detecting callback time outs. 2006-12-17 Gustavo J. A. M. Carneiro * bonobo/bonobo-arg.c (bonobo_arg_new): Greatly simplify this function by using CORBA_any__alloc and ORBit_small_alloc. Also fixes the memory leak reported in bug #358504 (thanks Chris Heath). 2006-12-15 Kjartan Maraas * bonobo-activation/bonobo-activation-activate.c: (bonobo_activation_set_activation_env_value): Revert the patch for bug #353959 since it caused problems with nautilus not starting. 2006-12-14 Kjartan Maraas * configure.in: Go to 2.17.0. 2006-12-14 Kjartan Maraas * bonobo-activation/bonobo-activation-activate.c: (bonobo_activation_set_activation_env_value): Fix a memory leak. Patch from Chris Wilson. Closes bug #353959. 2006-12-12 Christian Persch * bonobo/bonobo-app-client.c: (bonobo_app_client_get_type): * bonobo/bonobo-types.c: (bonobo_corba_object_type_register_static): No need to make GTYpeInfo static. Bug #382329. 2006-12-06 Christian Persch * bonobo-activation/bonobo-activation-init.c: (bonobo_activation_get_goption_group): Add ":" to option group description. Bug #350227. 2006-12-01 Gustavo J. A. M. Carneiro * Makefile.am: Uninstall bonobo-activation-config.xml. Patch by Matthew Barnes, slightly improved by me. Closes #381044. 2006-11-19 Kjartan Maraas * configure.in: Up requirement on ORBit2 to 2.11.2. Noticed by Mark Johnson. Closes bug #376211. 2006-11-15 Kjartan Maraas * bonobo-activation/bonobo-activation-init.h: Put the popt include and struct inside #ifndef BONOBO_DISABLE_DEPRECATED guards. We should still conditionalize the checks for popt in configure.in Bug #357145. 2006-11-10 Kjartan Maraas * activation-server/activation-server-main.c: Fix a string. Reported by David Lodge, patch from Gustavo Carneiro. Closes bug #355159. 2006-10-22 Kjartan Maraas * activation-server/Makefile.am: * activation-server/activation-context-query.c: (qexp_func_has_one), (qexp_func_has_all), (qexp_func_has), (qexp_func_prefer_by_list_order), (qexp_evaluate_variable), (qexp_evaluate_id), (qexp_evaluate_binop), (qexp_evaluate_unop): * activation-server/activation-server-main.c: (main): * bonobo-activation/bonobo-activation-init.c: * idl/Makefile.am: * samples/echo/Makefile.am: * samples/echo/echo-client.c: (main): * tests/test-activation/Makefile.am: * tests/test-activation/bonobo-activation-run-query.c: (main): * tests/test-object.c: (main): * utils/Makefile.am: - Add $(WARN_CFLAGS) to some makefiles - Fix a bunch of misspellings of 'occurred', bug #360360 - Fix some compiler warnings 2006-10-08 Matthew Barnes * doc/api/libbonobo-docs.sgml: Add an index to the API docs. 2006-09-16 Ernani Azevedo reviewed by: Gustavo Carneiro. * bonobo-activation/bonobo-activation-activate.c: Fix typos in error messages. Closes bug #354341. 2006-09-16 Gustavo J. A. M. Carneiro * configure.in: Remove the message that says this is the development branch. Fixes bug #355244. 2006-09-05 Tor Lillqvist * configure.in: Define Automake conditional OS_WIN32. * monikers/Makefile.am: Use relative path to the moniker DLL on Win32. Odd that I haven't noticed this until now. * bonobo-activation/bonobo-activation-fork-server.c (child_setup): #define child_setup as NULL on Win32, instead of having it as a real but empty function, to avoid runtime warning from GLib. ======================== 2.16.0 =========================== 2006-08-16 Alexander Larsson * bonobo-activation/bonobo-activation-mime.c: Add Since markers to docs for new functions 2006-08-16 Gustavo J. A. M. Carneiro * doc/activation-api/bonobo-activation-sections.txt: Enable output of documentation for bonobo_activation_get_default_component_for_mime_type and bonobo_activation_get_all_components_for_mime_type. 2006-08-15 Kjartan Maraas * configure.in: Remove checks for dladdr and xrdb. ============================= 2.15.3 ====================== 2006-08-14 Gustavo J. A. M. Carneiro * activation-server/object-directory-corba.c (impl_Bonobo_ObjectDirectory_unregister) (impl_Bonobo_ObjectDirectory_register_new_full): Pass NULL ev instead of creating our own temp. 2006-08-14 Alexander Larsson * bonobo-activation/bonobo-activation-fork-server.c: (child_setup), (bonobo_activation_server_by_forking): Don't inherit any open fds but stdin/out/err and b-a-s pipe in child. 2006-08-12 Gustavo J. A. M. Carneiro * activation-server/object-directory-corba.c (impl_Bonobo_ObjectDirectory_register_new_full): Use a temporary CORBA_Environment when calling bonobo_event_source_notify_listeners, otherwise exceptions in bonobo_event_source_notify_listeners propagate to Bonobo::ObjectDirectory::register_new_full, causing strange activate server registration errors. (impl_Bonobo_ObjectDirectory_unregister): Idem. 2006-08-10 Kjartan Maraas * configure.in: Fix gthread configure test when building uninstalled (Brian Cameron). Closes bug #316530. 2006-08-09 Michael Meeks * bonobo-activation/bonobo-activation-base-service.c (local_re_check_fn): use tmp. local ev. * bonobo-activation/bonobo-activation-private.h: remove CORBA ev. from BonoboForkReCheckFn. * activation-server/object-directory-corba.c (bonobo_object_directory_re_check_fn): don't go setting exceptions that don't need setting. * bonobo-activation/bonobo-activation-fork-server.c (bonobo_activation_server_by_forking): don't leak various bits on g_spawn failure; also broadcast signal. ============================= 2.15.2 ====================== 2006-08-08 Kjartan Maraas * Revert the fix for coverity #2705. It caused segfaults during make check. 2006-08-07 Kjartan Maraas * bonobo/bonobo-exception.h: * bonobo/bonobo-property-bag-client.h: * bonobo/bonobo-stream-client.h: Sentinel markup patch from Marcus Meissner. Closes bug #338443. * monikers/bonobo-moniker-extender-stream.c: (bonobo_stream_extender_resolve): Fix a warning. 2006-07-21 Kjartan Maraas * bonobo/bonobo-stream-client.c: (bonobo_stream_client_read): Fix possible NULL dereference. Coverity #1190. 2006-07-21 Kjartan Maraas * activation-server/test-performance.c: (test_server_info_load): Fix a leak. (Coverity #2684) * bonobo/bonobo-moniker-extender.c: (bonobo_moniker_find_extender): Another leak fix (Coverity #2824) 2006-07-18 Kjartan Maraas * activation-server/activation-context-corba.c: (ac_do_activation): Another null deref found by Coverity. 2006-07-15 Kjartan Maraas * bonobo/bonobo-storage-memory.c: (smem_rename_impl): Init filename so we don't pass uninitialized memory to g_free() Coverity #2841. 2006-07-14 Kjartan Maraas * bonobo/bonobo-storage-memory.c: (smem_rename_impl): Free the entry as well. Coverity #2705. 2006-07-14 Kjartan Maraas * monikers/bonobo-moniker-extender-stream.c: (bonobo_stream_extender_resolve): Free mime_type here. Coverity #2707. 2006-07-14 Kjartan Maraas * bonobo/bonobo-app-client.c: (bonobo_app_client_msg_send_argv), (bonobo_app_client_get_msgdescs), (bonobo_app_client_new_instance): * bonobo/bonobo-event-source.c: (bonobo_event_source_client_remove_listener), (bonobo_event_source_client_add_listener_full): * bonobo/bonobo-foreign-object.c: (bonobo_foreign_object_new): Fix more leaks. Reported by Coverity as CID #2681, #2682, #2685, #2686, #2687 and #2690. Closes bug #347522. 2006-07-14 Kjartan Maraas * bonobo/bonobo-exception.h: Fix previous commit. Thanks to Paolo Borelli. 2006-07-14 Kjartan Maraas * bonobo/bonobo-exception.h: Fix leak. Coverity #2717 and a whole bunch of others. Closes bug #347501. * bonobo/bonobo-object.c: (do_corba_setup_T): Another leak. Coverity #2683. Closes bug #347511. 2006-07-11 Kjartan Maraas * activation-server/activation-context-corba.c: (ac_context_to_string_array): Fix some leaks in an error case. Closes bug #346346 and Coverity #2823. 2006-07-07 Alexander Larsson * bonobo-activation/Makefile.am: * bonobo-activation/bonobo-activation-mime.[ch]: Add new public functions bonobo_activation_get_default_component_for_mime_type and bonobo_activation_get_all_components_for_mime_type. Also implement all the gnome-vfs mime symbols so that gnome-vfs can be independent of bonobo. 2006-06-20 Tor Lillqvist * bonobo-activation/bonobo-activation-init.c (bonobo_activation_postinit): Make bonobo_activation_ior_fd non-inherited on Win32, too. 2006-06-17 Kjartan Maraas * activation-server/Bonobo_CosNaming_NamingContext.server.in.in: Add blank line to the end of the file to please Solaris sed. From Damien Carbery. Closes bug #329762. 2006-06-17 Kjartan Maraas * configure.in: * po/LINGUAS: More po/LINGUAS work by Przemysław Grzegorczyk. Closes bug #338543. 2006-06-16 Tor Lillqvist * libbonobo-zip.in: Include also bonobo-activation-sysconf.exe in the zipfile distribution. (From $prefix/bin; it is assumed that on Win32 one runs the configure script with --sbindir pointing to $prefix/bin, as it isn't really common to use a "sbin" directory on Win32, just putting all executables in "bin" is enough.) 2006-06-14 Tor Lillqvist Win32 portability fixes for problems that turn up when installing into pathnames with spaces (like C:\Program Files) and when the username has non-ASCII characters in it. Reviewed by Michael. * activation-server/object-directory-activate.c (od_server_activate_exe): Deprecate the feature that we can have command line arguments in the location_info. Give a warning if that happens. Don't even try to split the location_info into an argv on Win32, as the pathname of the executable already might well contain spaces. * bonobo-activation/bonobo-activation-client.c (bonobo_activation_register_client) * bonobo-activation/bonobo-activation-fork-server.c (bonobo_activation_server_by_forking): Use g_listenv() and g_getenv() instead of peeking into environ directly. On Win32, the strings in the environ array are in system codepage, while we want the UTF-8 that g_listenv() and g_getenv() provide. 2006-05-23 Michael Meeks * bonobo/Makefile.am (libbonobo_2_la_LIBADD): use $(top_builddir) * activation-server/Makefile.am (LDADD): link to libb-a as well. 2006-05-18 Kjartan Maraas * bonobo/bonobo-stream-client.c (bonobo_stream_client_read): Make a var signed since it's checked for negative values. 2006-05-18 Kjartan Maraas * bonobo-activation/bonobo-activation-init.c: (bonobo_activation_init): Don't return garbage. * doc/FAQ: Typos * doc/api/faq.xml: Same * doc/api/monikers-overview.xml: Same 2006-05-03 Christian Persch * bonobo-activation/bonobo-activation-init.c: (init_gettext), (bonobo_activation_get_goption_group), (bonobo_activation_preinit), (bonobo_activation_get_popt_table_name): Make sure to initialise the textdomain codeset if we're using goption. Bug #335159. 2006-05-02 Kjartan Maraas * bonobo-activation/bonobo-activation-register.c: (bonobo_activation_registration_env_set_global): Fix polarity of the test before setting global_reg_env. Closes bug #338177. 2006-04-30 Gora Mohanty * configure.in: Added 'or' (Oriya) to ALL_LINGUAS. 2006-04-28 Tor Lillqvist Cygwin patch by "Cygwin Ports maintainer" (#339976): * configure.in: Set SOPREFIX to "cyg" on Cygwin, otherwise "lib". Set IF_CYGWIN_PS to "#" on non-Cygwin. AC_SUBST them. * monikers/Bonobo_Moniker_std.server.in.in: Use SOPREFIX. * monikers/Makefile.am: Expand SOPREFIX. * utils/bonobo-slay.in: Add the Cygwin-specific command, use IF_CYGWIN_PS for it. 2006-04-18 Kjartan Maraas * configure.in: Remove obsolete entry for no_NO * po/no.po: And the translation. 2006-04-10 Vladimer Sichinava * configure.in: Added "ka" (Georgian) to ALL_LINGUAS 2006-04-03 Kjartan Maraas * activation-server/client.c: #include for exit(3). * bonobo-activation/bonobo-activation-init.c: (bonobo_activation_orb_init): Remove ignored const qualifier. 2006-04-03 Kjartan Maraas * activation-server/object-directory-corba.c: (as_rescan): Add missing return value. * bonobo-activation/bonobo-activation-init.c: (bonobo_activation_postinit): Adjust for the below. * bonobo-activation/bonobo-activation-private.h: Rename BONOBO_ACTIVATION_FACTORY_TIMEOUT to BONOBO_ACTIVATION_PRIVATE_TIMEOUT. * bonobo/bonobo-debug.c: (bonobo_debug_init): Constify * bonobo/bonobo-main.c: Make some vars static. * bonobo/bonobo-moniker-util.c: Make a struct static and constify. * bonobo/bonobo-moniker.c: (bonobo_moniker_get_parent): Axe some unneeded code. * bonobo/bonobo-property-bag-client.c: (bonobo_pbclient_setv), (bonobo_pbclient_getv): Fix format specifiers. * bonobo/bonobo-running-context.c: Make some vars static and put an otherwise unused function inside #ifdef G_ENABLE_DEBUG. * bonobo/bonobo-stream-client.c: (bonobo_stream_client_read): More format specifiers. * tests/test-main-loop.c: (run_tests): Again. * tests/test-properties-client.c: Make some vars static. * tests/test-properties-server.c: (simple_prop_to_string), (print_props): More of the same. * tests/test-thread.c: (get_fn): Again. 2006-03-31 Michael Terry * activation-server/activation-server-main.c (main): Convert from popt to GOption. Closes bug #336610. * activation-server/client.c (main): Same * tests/test-activation/empty-server.c (main): Same * utils/bonobo-activation-sysconf.c (main): Same * bonobo-activation/bonobo-activation-init.c: Remove popt.h include. * activation-server/Makefile.am: Remove POPT_LIBS. * tests/test-activation/Makefile.am: Same * utils/Makefile.am: Same * utils/bonobo-activate.c: Removed; unused 2006-03-21 Kjartan Maraas * activation-server/object-directory-load.c: Plug a leak. Closes bug #335322. 2006-03-16 Michael Meeks * activation-server/object-directory-load.c (bonobo_parse_server_info_memory, od_load_file), (od_error, od_end_element, od_start_element, etc.): re-write parser to use GMarkup instead: 110m -> 40m cycles on load. * bonobo-activation/bonobo-activation-fork-server.c (scan_list): kill race. * activation-server/object-directory-corba.c (impl_Bonobo_ObjectDirectory_register_new_full): treat a dupliate registration of an already active server as a success. * activation-server/activation-server-main.c (log_handler, redirect_output): dump more console output when using --register-server for debugging. 2006-03-15 Michael Meeks * activation-server/object-directory-corba.c (active_server_cnx_broken, client_cnx_broken), (add_active_server): use listen_for_broken instead of (ORBit internal only) 'broken' signal with threading implications. Take & release the server lock in the 'broken' callback. (as_rescan): deal with re-enterancy once at idle. * activation-server/activation-context-corba.c (impl_Bonobo_ActivationContext_addClient), (active_client_cnx_broken): same 'broken' fix. (activation_clients_is_empty_scan): iterate over a copy of the list, with simple re-enterancy optimization. (ac_rescan): real with re-enterancy once at idle. 2006-03-13 Michael Meeks * activation-server/object-directory-activate.c (od_server_activate_factory): drop the lock as we call out to create an instance (thanks Federico), further improves parallelism & fixes theoretical deadlock. 2006-03-10 Michael Meeks * doc/b-a-s-threading.txt: notes on b-a-s threading. * activation-server/README: notes on debugging. * bonobo-activation/bonobo-activation-fork-server.c (scan_list): fix list scan & debug to fix crash. * activation-server/object-directory-corba.c (bonobo_object_directory_re_check_fn): remember to take lock for this callback. * bonobo-activation/bonobo-activation-fork-server.c (bonobo_activation_server_fork_init): add * activation-server/activation-context-corba.c (impl_Bonobo_ActivationContext_activateMatchingFull), (ac_do_activation): hold refs, generate aid earlier, use g_strdup_printf. * activation-server/README: add blurb. * activation-server/activation-server-main.c (server_get_poa, server_lock, server_unlock, main): impl. threaded POA & locking methods. * activation-server/*-corba.c: take/release lock at entry / exit of CORBA impls. * activation-server/activation-context-corba.c (activation_context_setup): use the poa. * activation-server/object-directory-corba.c (bonobo_object_directory_init): use the poa. * activation-server/activation-server-main.c: enable --register-server in non debugging builds, just too useful. * configure.in: bump to 2.15.0, add chatty blurb. * Branch for gnome-2-14 === 2.13.93 === 2006-03-07 Rodrigo Moya * NEWS: * configure.in: released 2.13.93. 2006-03-07 Michael Meeks * activation-server/object-directory-activate.c (od_server_activate_factory): keep private copy of data we need, since it can be freed due to re-enterancy. (od_server_activate_exe): ditto. * activation-server/object-directory-corba.c (impl_Bonobo_ObjectDirectory_activate): added comment to explain new situation. 2006-02-07 Michael Meeks * bonobo-activation/bonobo-activation-init.c (bonobo_activation_init): accumulate arguments over multiple inits, to elide effect of early dummy inits. * bonobo/bonobo-main.c (bonobo_init_full): always pass args to bonobo_activation_init. === 2.13.1 === 2006-01-16 Gustavo J. A. M. Carneiro * configure.in: Bump version to 2.13.1. 2006-01-16 Christian Persch * bonobo-activation/bonobo-activation-init.c: Fix typo in the GOptionGroup description; it's "bonobo" not "bonbo". 2006-01-13 Michael Meeks * bonobo-activation/bonobo-activation-fork-server.c (bonobo_activation_server_by_forking): fixup mis-use of 'cmd' before it's initialized. 2006-01-12 Michael Meeks * bonobo-activation/bonobo-activation-fork-server.c (bonobo_activation_server_by_forking): fix vicious corruptor of the (static) cmd array, dating back 5+ years to the oaf days. 2005-12-22 Gustavo J. A. M. Carneiro * activation-server/object-directory-corba.c (object_directory_init): Change hash table value type to the new structure ClientContext, with a new destructor function. (object_directory_finalize): Change to new name client_contexts. (impl_Bonobo_ObjectDirectory_addClientEnv): Add a ClientContext to hash table, instead of an environment. (client_cnx_broken): Remove any iid definitions registered by the client at runtime when the client disconnects. (od_register_runtime_server_info): Take note of which iid's are defined by which clients, to unregister them later as the clients disconnect. Also, fix return value, that should be new_serverinfo instead of old_serverinfo. (od_merge_client_environment): Changes regarding environment->context. * activation-server/object-directory.h: Change name of client_envs to client_contexts to reflect new role. Fixes Bug 149908: b-a-s doesn't allow updating runtime-defined ServerInfo's === 2.13.0 === 2005-10-28 Erdal Ronahi * configure.in: Added ku (Kurdish) to ALL_LINGUAS 2005-10-28 Kjartan Maraas * activation-server/object-directory-load.c: (od_load_context): * bonobo/bonobo-item-container.c: (impl_Bonobo_ItemContainer_enumObjects): * bonobo/bonobo-moniker-simple.c: * bonobo/bonobo-moniker-util.c: (resolve_async_cb): * bonobo/bonobo-object.c: (bonobo_object_query_local_interface): * bonobo/bonobo-property-bag-client.c: * bonobo/bonobo-shlib-factory.c: * bonobo/bonobo-types.c: (corba_object_proxy_value_free), (corba_object_proxy_value_copy), (corba_object_proxy_lcopy_value): * monikers/bonobo-moniker-std.c: Merge cleanups from stable. 2005-09-29 Christian Persch * configure.in: Bump version to 2.13.0, and require glib 2.8.0. * bonobo-activation/bonobo-activation-init.c: (bonobo_activation_get_goption_group): * bonobo-activation/bonobo-activation-init.h: Add bonobo_activation_get_goption_group() for use by the GOption argument parsing in libgnome. Patch by Pawel Sliwowski , bug #307312. 2005-09-16 Gustavo J. A. M. Carneiro * bonobo/bonobo-app-client.c (_typecode_to_gtype): s/__inline__/inline/. Fixes bug #315145: "libbonobo 2.10.1 fails to build on solaris 10 with sun studio 10." 2005-09-12 Tor Lillqvist * activation-server/object-directory-load.c (ParseInfo): Add a filename field. (parse_info_free): Free the filename field. (parse_oaf_server_attrs): On Win32, if the path to a shlib or exe starts with ../, expand it relative to the directory where the .server file is. (od_load_context): Take also filename parameter, initialize filename field in ParseInfo. (od_load_file): Pass filename to od_load_context(). (bonobo_parser_server_info_memory): Pass NULL as filename to od_load_context(). 2005-08-24 Kjartan Maraas * bonobo/bonobo-item-handler.c: Don't use deprecated functions. (bonobo_marshal_BOXED__STRING_BOOLEAN_DUMMY_BOXED): * bonobo/bonobo-moniker-simple.c: Same (bonobo_marshal_BOXED__RESOLVEOPTIONS_STRING_BOXED): * bonobo/bonobo-property-bag.c: Same (bonobo_marshal_ANY__TYPECODE_UINT_EXCEPTION): * doc/activation-api/tmpl/query.sgml: These seem to have changed... * doc/activation-api/tmpl/registration.sgml: * doc/activation-api/tmpl/utilities.sgml: 2005-08-22 Tor Lillqvist * activation-server/object-directory-config-file.c (object_directory_load_xml_file) * activation-server/object-directory-load.c (od_load_file) * utils/bonobo-activation-sysconf.c (open_file): On Win32, read XML file into memory and parse from there, so that we don't pass a GLib UTF-8 file name to libxml which expects system codepage file names. * activation-server/activation-server-main.c (main) * bonobo-activation/bonobo-activation-i18n.h * utils/bonobo-activation-sysconf.c (main): Use GETTEXT_PACKAGE instead of PACKAGE to get more translated messages. 2005-08-22 Tor Lillqvist Rework the end-user installation location independence code for Win32. Have all that code in the libbonobo-activation DLL only. The libbonobo DLL and bonobo-activation-server.exe are installed in the same prefix as libbonobo-activation anyway, so it's enough if they call functions in libbonobo-activation to get the runtime paths. * activation-server/activation-server-main.c * activation-server/object-directory-config-file.c * activation-server/object-directory-load.c * bonobo/bonobo-main.c * bonobo-activation/bonobo-activation-base-service.c * util/bonobo-activation-sysconf.c: Include bonobo-activation-private.h and use the run-time path lookup functions on Windows instead of compile-time paths. * bonobo-activation/Makefile.am: Pass also SERVERINFODIR and SERVER_CONFDIR defines, as in ../activation-server. * bonobo-activation/bonobo-activation-fork-server.c (bonobo_activation_server_by_forking): Plug small memory leak: Free the fd_arg string also if the spawn fails. * bonobo-activation/bonobo-activation-init.c (DllMain): Use a very minimal DllMain(), as is the recommended best practice. (_bonobo_activation_win32_replace_prefix): Rename and make non-static, as now used in other files. (setup_runtime_paths): New function, do the DLL path lookup and installation prefix logic here instead of in DllMain(). (_bonobo_activation_win32_get_prefix, _bonobo_activation_win32_get_server_libexecdir, _bonobo_activation_win32_get_serverinfodir, _bonobo_activation_win32_get_server_confdir, _bonobo_activation_win32_get_localedir): New functions to get the run-time paths, instead of variables. * bonobo-activation/bonobo-activation-private.h: Declare _bonobo_activation_win32_replace_prefix() and the new functions above. 2005-08-19 Kjartan Maraas * Version 2.10.1 to fix confusion with previously unannounced release. * bonobo/bonobo-main.c: Fix function name in api docs * USERS: Remove some dead users and some that don't use bonobo. 2005-08-17 Michael Meeks * Version 2.10.0 2005-08-16 Stepan Kasal * bonobo/libbonobo-2.0.pc.in, bonobo/libbonobo-2.0-uninstalled.pc.in: * bonobo-activation/bonobo-activation-2.0-uninstalled.pc.in: * bonobo-activation/bonobo-activation-2.0.pc.in: Add datarootdir variable, for compatibility with future Autoconf releases. 2005-07-20 Loïc Minier * activation-server/bonobo-activation-server.1: misc. fixes, thanks to Dan Jacobson. 2005-07-20 Shreyas Srinivasan * bonobo/bonobo-activation-fork-server.c: Fix #310152, Resolve environ to NSGetEnviron on a mac os x. 2005-07-06 Tor Lillqvist * configure.in: Remove check for getaddrinfo() as it is not used in libbonobo any longer. No sense keeping unused stuff in configure.in. 2005-07-05 Jan Kratochvil * bonobo/bonobo-activation-init.c, * bonobo/bonobo-private.h, * bonobo/bonobo-main.c, * configure.in: conditionalise thread usage with HAVE_GTHREADS macro, & add configure parameter. 2005-05-16 Alexander Larsson * activation-server/object-directory-load.c: * bonobo-activation/bonobo-activation-client.c: Use g_get_language_list instead of bonobo_activation_i18n_get_language_list. * bonobo-activation/bonobo-activation-get-language-list.c: * bonobo-activation/bonobo-activation-private.h: Use g_get_language_list to implement bonobo_activation_i18n_get_language_list, this is for use by gnome-vfs and libgnome. Add a comment about this. This fixes bug 168948 (make bonobo use 100k less of memory per application) 2005-04-16 Tor Lillqvist * bonobo/bonobo-main.c (DllMain): Use wide-character API to get the installation folder on NT-based Windows. Then, as the locale directory is passed to the non-UTF8ified gettext library, get the short form of the name which I assume is guaranteed to have only characters in the system codepage. All this so that libbonobo will find its message catalogs also if installed in a path with characters not representable in the system codepage, which presumably happens mainly in CJK locales. Actually, I think it is not quite safe to have this much code that calls GLib, even, in a DllMain() function. Will have to change the logic later. * bonobo/bonobo-main.h: Add prototype for bonobo_main_level to silence gcc. 2005-04-15 Tor Lillqvist * configure.in: Since we de facto require GLib 2.6, spell it out. * activation-server/activation-server-main.c * activation-server/object-directory-corba.c * activation-server/object-directory-load.c (od_load_directory) * bonobo-activation/bonobo-activation-base-service.c * bonobo/bonobo-debug.c: Use GDir API and the gstdio wrappers for better localized pathname support on Windows. Use g_build_filename() where applicable instead of g_strconcat(). * bonobo-activation/bonobo-activation-base-service.c (rloc_file_lock): On Win32, convert the UTF-8 lock file name to wide chars and use the wide char _wsopen() to open it, since there is no gstdio wrapper for _sopen(). * tests/test-activation/test.sh: Set USER to `id -un` if not set. 2005-04-12 Mark McLoughlin * bonobo-activation/bonobo-activation-2.0-uninstalled.pc.in, bonobo-activation/bonobo-activation-2.0.pc.in: require gmodule-no-export-2.0 rather than gmodule-2.0 so we don't get -export-dynamic on our link line. 2005-03-30 Steve Murphy * configure.in: Added "rw" to ALL_LINGUAS. 2005-03-27 Tor Lillqvist * configure.in: Apparently AC_LIBTOOL_WIN32_DLL isn't deprecated after all, and in fact necessary with HEAD libtool. 2005-03-11 Tor Lillqvist * configure.in: Call AC_CANONICAL_HOST before looking at $host. * bonobo/Makefile.am (libbonobo_2_la_LIBADD) * bonobo-activation/Makefile.am (libbonobo_activation_la_LIBADD) * monikers/Makefile.am (libmoniker_std_2_la_LIBADD): Add $(INTLLIBS). 2005-02-25 Tor Lillqvist Further improvements to Windows port. Make it independent of installation location, i.e. don't use any hardcoded paths in the binaries. * configure.in: Set SEARCHPATHSEP to ";" on Win32, ":" on Unix. AC_SUBST it. * libbonobo-zip.in: Refinements. * activation-server/Makefile.am * bonobo/Makefile.am * bonobo-activation/Makefile.am: Pass the configure-time installation prefix to the compilations. * */*.c: Use G_SEARCHPATH_SEPARATOR instead of hardcoded colon. * activation-server/activation-server-main.c (server_win32_replace_prefix, whereami): New functions. Look up the executable's pathname at runtime, deduce end-user installation prefix from that, form run-time strings corresponding to SERVERINFODIR, SERVER_LOCALEDIR and SERVER_CONFDIR from that. (main): Call whereami(). * activation-server/object-directory-load.c (parse_oaf_server_attrs): If the prefix of the pathname to an exe or shlib file matches our configure-time prefix, replace it with the actual end-user installation prefix, so that .server files don't have to be edited at end-user installation time. * activation-server/server.h: Declare server_win32_replace_prefix(). * activation-server/test-performance.c (server_win32_replace_prefix): Dummy implementation. This function is needed in test-performance, too, but as test-performance isn't installed, we cannot know the run-time prefix. On the other hand, this is a test program that will be run only on the build machine anyway, so we can use the configure-time paths. * bonobo/bonobo-main.c (replace_prefix, DllMain): New functions. Automatically deduce installation location on end-user machine. Form run-time BONOBO_LOCALEDIR. * bonobo-activation/bonobo-activation-base-service.c (bonobo_activation_base_service_init): Use run-time SERVER_LIBEXECDIR. * bonobo-activation/bonobo-activation-fork-server.c: Print debug message only if BONOBO_ACTIVATION_DEBUG_EXERUN. * bonobo-activation/bonobo-activation-get-language-list.c (unalias_lang): Use run-time path to locale.alias on Windows. Don't use Unix-specific fixed pathnames. * bonobo-activation/bonobo-activation-init.c (replace_prefix, DllMain): As above. * samples/echo/echo.c (impl_demo_echo_echo): freopen stdout to the controlling terminal as the activation server has redirected it to /dev/null. * tests/Makefile.am * tests/test-activation/Makefile.am: Use SEARCHPATHSEP when setting BONOBO_ACTIVATION_PATH. 2005-02-22 Tor Lillqvist Port to Windows: * libbonobo-zip.in: New file, used to build zipfile distribution on Windows. * configure.in: Force shared library build (only) on Win32. Check for sigaction() and setsid(). Check for and . Remove duplicate AC_ISC_POSIX. Remove obsolete AC_LIBTOOL_WIN32_DLL. Expand libbonobo-zip. * Makefile.am (EXTRA_DIST): Distribute libbonobo-zip.in. * activation-server/activation-server-main.c (log_handler): If we don't HAVE_SYSLOG_H, print to stderr instead. (redirect_output): On Win32 the bit bucket is called NUL:. (main): Conditionalize on HAVE_SETSID and HAVE_SYSLOG_H. If we don't HAVE_SIGACTION, use signal() instead. Conditionalize use of SIGPIPE that doesn't exist in the Microsoft C library. (Signals are a C library concept on Windows, the underlying OS uses a different abstraction.) * activation-server/object-directory-activate.c: Remove unnecessary inclusion of . * bonobo/bonobo-debug.c (bonobo_debug_init): Use stderr instead of stdout. * bonobo-activation/bonobo-activation-activate.c (bonobo_activation_init_activation_env): Don't bother with Unix environment variables like DISPLAY and SESSION_MANAGER on Windows. (Do try LANG, though, although it isn't use by "normal" Windows software either, but potentially by GLib-using software.) * bonobo-activation/bonobo-activation-base-service.c (wait_for_lock): Use g_usleep() if we don't have usleep() or nanosleep(). (rloc_file_lock, rloc_file_unlock): Use _sopen() (open() with "share mode") on Win32. (STRMATCH): Remove duplicate definition. * bonobo-activation/bonobo-activation-client.c: Include for environ on Win32. * bonobo-activation/bonobo-activation-fork-server.c (bonobo_activation_server_by_forking): Cross-platform implementation using g_spawn_async() and GIOChannel. * bonobo-activation/bonobo-activation-init.c (bonobo_activation_postinit): Conditionalize use of F_SETFD and FD_CLOEXEC. (do_barrier): If don't HAVE_SIGACTION, re-arm signal. (bonobo_activation_orb_init): Use signal() if not HAVE_SIGACTION. * tests/Makefile.am: Add .libs to PATH, too. On Windows shared libraries are searched for in PATH. Append EXEEXT to test program names. * tests/test-generic-factory.sh: Filter out CRs from the test program output to avoid false differences. * tests/test-activation/bonobo-activation-test.c (main): Use g_usleep() instead of sleep(). * tests/test-activation/empty-server.c (main): Don't register Unix-only environment variables on Win32. * tests/test-activation/test.sh: Add .libs to PATH, too, for Win32. 2005-02-20 Gustavo J. A. M. Carneiro * doc/api/libbonobo.types: Remove bonobo_running_context_get_type, it is private. * libbonobo.h: Add missing includes for bonobo-moniker-extender.h, bonobo-item-handler.h, and bonobo-shlib-factory.h. Fixes #167: documentation's build segfault on ia64. Based on patch by Sebastien Bacher. 2005-02-08 Christian Rose * configure.in: Added "xh" to ALL_LINGUAS. === 2.8.1 === 2005-02-05 Gustavo J. A. M. Carneiro * NEWS: Update. * configure.in: Version 2.8.1. 2005-02-03 Mark McLoughlin Fix problem with locale env variables getting cocked up. Based on patch from Ryan Lortie in bug #164303 * bonobo-activation/bonobo-activation-activate.c: (bonobo_activation_init_activation_env): treat LC_* just the same as all other environment variables rather than trying to be clever with selocale(). 2005-02-02 Hans Petter Jansson * configure.in: Add checks for Apple Darwin's way of getting the environment from within a shared library. The results of these tests are already used in the code, but seemingly, the tests themselves were never added. 2005-02-02 Michael Meeks * README: update a little. 2005-01-30 Gustavo J. A. M. Carneiro * bonobo-activation/bonobo-activation-register.c (bonobo_activation_register_active_server_ext): Just in case, add fallback code to print warning and initialize retval when a unexpected exception occurs. 2005-01-29 Gustavo J. A. M. Carneiro * bonobo/bonobo-arg.c (bonobo_arg_from_gvalue_alloc): Take precautions against NULL string GValue. 2005-01-15 Gustavo J. A. M. Carneiro * doc/activation-api/server-xml-reference.sgml: Document .server property 'bonobo:environment'. 2005-01-06 Thomas Vander Stichele * configure.in: Fix autoheader warnings 2004-12-13 Padraig O'Briain * activation-server/object-directory-corba.c (od_get_active_server): Add break call to avoid further searcing when server if found. Bug #150538. 2004-09-28 Mark McLoughlin Fixes problem with running epiphany immediately after install it - bug #145169. * activation-server/object-directory-corba.c: (od_register_runtime_server_info): re-scan the server info directories when registering a server rather than only when activating a server. 2004-09-13 Mark McLoughlin * configure.in: Version 2.8.0. 2004-08-24 Gustavo J. A. M. Carneiro * bonobo/bonobo-generic-factory.c (bonobo_generic_factory_new_generic) (last_unref_cb): Ignore "last-unref" if it happens during the object creation callback and an object is actually created in the end. Fixes bug #139140 (Can't get bonobo objects in _init method of bonobo object) 2004-08-23 Gustavo J. A. M. Carneiro * Makefile.am (DISTCLEANFILES): Only clean intltool-* in make distclean, not make clean, since there is no rule to regenerate them from the makefile. Fixes #144541. 2004-08-23 Tommi Komulainen * doc/api/tmpl/bonobo-application.sgml (bonobo_application_register_message): Add a longer description and some examples. * bonobo/bonobo-application.c (bonobo_application_register_message): Remove example program from inline documentation (moved to the gtk-doc template file). 2004-08-16 Christian Rose * configure.in: Added "bs" to ALL_LINGUAS. 2004-08-13 Gustavo J. A. M. Carneiro * bonobo/bonobo-object.c (bonobo_object_finalize_servant): Call object's poa_fini_fn. Patch by Michael Meeks. Fixes #118117. 2004-08-12 Gustavo J. A. M. Carneiro * tests/test-activation/Makefile.am (TESTS_ENVIRONMENT): Set BONOBO_ACTIVATION_DEBUG, since some tests use relative server paths, thus fail if the b-a-s changes dir on startup. * activation-server/activation-server-main.c (main): Declare debug_output_env as const, to suppress compiler warning. (main): Unless env. var. BONOBO_ACTIVATION_DEBUG is set, chdir("/") before entering main loop. * bonobo/bonobo-running-context.c (bonobo_running_context_trace_objects_T): Add ri->emitted_last_unref = FALSE, missing in debug version of addObject, but present in the non-debug version. (bonobo_running_context_trace_objects_T): Complement the information of the number of alive objects with a list of the interfaces of the alive objects. 2004-08-11 Gustavo J. A. M. Carneiro * activation-server/object-directory-corba.c (od_register_runtime_server_info): We should be returning new_serverinfo instead of old_serverinfo. 2004-08-11 Alexander Larsson * bonobo-activation/bonobo-activation-get-language-list.c (read_aliases): Import some fixes from gnome-vfs copy. 2004-08-11 Alexander Larsson * bonobo-activation/bonobo-activation-get-language-list.c (read_aliases): Use less memory for alias tables. 2004-08-11 Kjartan Maraas * activation-server/client.c: (add_load_path), (remove_load_path), (register_activate_server), (do_query_server_info), (do_activating): Correctly use ANSI argument list. * bonobo-activation/bonobo-activation-base-service.c: (bonobo_activation_registration_iterate): Same.. * bonobo-activation/bonobo-activation-fork-server.c: (bonobo_activation_server_by_forking): Use NULL in place of 0 * bonobo/bonobo-debug.c: (bonobo_debug_init): ANSI arguments * bonobo/bonobo-generic-factory.c: (bonobo_generic_factory_destroy): NULL vs 0 * bonobo/bonobo-item-handler.c: (bonobo_item_handler_finalize): * bonobo/bonobo-listener.c: (bonobo_listener_finalize), (bonobo_listener_init): NULL vs 0 * bonobo/bonobo-persist-client.c: (bonobo_object_save_to_stream), (bonobo_object_from_stream): NULL vs 0 * bonobo/bonobo-persist.c: (bonobo_persist_finalize): NULL vs 0 * bonobo/bonobo-storage-memory.c: (bonobo_storage_mem_create): NULL vs 0. * configure.in: Added nb to ALL_LINGUAS. 2004-08-10 Gustavo J. A. M. Carneiro * tests/test-activation/Makefile.am (TESTS_ENVIRONMENT): Add $(top_srcdir)/activation-server to BONOBO_ACTIVATION_PATH, so that event source test doesn't fail. * bonobo-activation/bonobo-activation-register.c (bonobo_activation_make_registration_id): g_message instead of g_warning. 2004-08-09 Gustavo J. A. M. Carneiro * tests/test-activation/Makefile.am: Don't install $(serverfiles). They are not required to be installed for make check. Fixes #145056. 2004-08-08 Gustavo J. A. M. Carneiro * idl/Bonobo_Control.idl: Prepend 'action' parameter name with underscore to avoid clash with type Action, in PropertyControl::notifyAction(). Fixes #118078. * idl/Bonobo_Property.idl: Escape PropertyBag::ReadOnly and ConfigDatabase::DBFlags::DEFAULT with a leading underscore because of clashes with IDL keywords. Fixes #118078. * bonobo-activation/Makefile.am (INCLUDES): Define G_LOG_DOMAIN=Bonobo-Activation. * bonobo-activation/bonobo-activation-activate.c, * bonobo-activation/bonobo-activation-base-service.c, * bonobo-activation/bonobo-activation-client.c, * bonobo-activation/bonobo-activation-fork-server.c, * bonobo-activation/bonobo-activation-register.c: Turn g_warnings that contain only informational debug messages into g_message, so that we can abort with --g-fatal-warnings in the real strange stituations. * bonobo-activation/bonobo-activation-register.c (registration_result_to_string): Give a g_warning on invalid code instead of aborting. This is an error, but not fatal by any means. 2004-08-07 Gustavo J. A. M. Carneiro * tests/test-activation/Makefile.am: Don't install $(serverfiles). They are not required to be installed for make check. 2004-08-04 Greg Hudson * bonobo-activation/bonobo-activation-fork-server.c (bonobo_activation_server_by_forking): reset signal mask removing SIGCHLD block for forked child. 2004-07-21 Antonio Xu * activation-server/object-directory-corba.c (remove_active_server): add judgement to make sure the count of active server is right. 2004-07-09 Tommi Komulainen * bonobo/bonobo-app-client.c (bonobo_app_client_get_msgdescs): fix array bound checking & Fix API docs. 2004-06-26 Pawan Chitrakar * configure.in: Added "ne" Nepali in ALL_LINGUAS 2004-05-29 Michael Meeks * Version 2.6.2 2004-05-28 Michael Meeks * activation-server/activation-server-main.c (main): turn output debug on if we use --register-server * bonobo-activation/bonobo-activation-init.c (bonobo_activation_hostname_get): always return localhost - so we don't barf when the hostname changes (DHCP). Slightly bad, but a) this method is deprecated anyway, b) only fools would use it to return the current hostname and c) localhost is often the local host name anyway. 2004-05-26 Michael Meeks * Version 2.6.1 2004-05-26 Arvind Samptur * activation-server/object-directroy.h : Add od_finished_internal_registration () helper function. * activation-server/object-directroy-corba.c (add_active_server): Don't add our internal servers count to n_active_servers. * activation-server/activation-server-main.c (main): Use od_finished_internal_registration () to indicate that we are done with our internal server registeration. Fixes #139500 2004-05-14 Michael Meeks * bonobo-activation/bonobo-activation-init.c: move sys/types.h include upwards for bsd. 2004-05-06 Michael Wilson * bonobo/bonobo-application.c (message_desc_copy) (_gtype_to_typecode): bin bogus gnuism: __inline__ 2004-05-05 Michael Wilson * bonobo/bonobo-application.c: bin bogus trailing ',' and ';' - fix AIX build. 2004-04-16 Iñaki Larrañaga * configure.in: Added "eu" (Basque) to ALL_LINGUAS. 2004-04-15 Gustavo J. A. M. Carneiro * activation-server/object-directory-corba.c (od_register_runtime_server_info): Do not ever try to update a ServerInfo if there's already another ServerInfo registered for the given IID. This both improves performance and avoids a possible memory error that I have been unable to track down after much debugging. 2004-04-09 Guntupalli Karunakar * configure.in: Added "gu" (Gujarati) to ALL_LINGUAS. 2004-04-06 Pablo Saratxaga * ChangeLog: converted to UTF-8 2004-03-30 Adam Weinberger * configure.in: Added en_CA to ALL_LINGUAS. 2004-03-22 Guntupalli Karunakar * configure.in: Added "pa" (Punjabi) to ALL_LINGUAS. 2004-03-17 Tony Arnold * bonobo-activation/bonobo-activation-client.c: ugly hack for Darwin's whacked-out 'environ. 2004-03-16 Gareth Owen * configure.in: Added en_GB to ALL_LINGUAS 2004-03-15 Julio M. Merino Vidal * bonobo-activation/bonobo-activation-get-language-list.c (unalias_lang): read aliases from the prefix first (NetBSD) 2004-03-08 Michael Meeks * Version 2.6.0 2004-03-07 Glynn Foster * bonobo-activation/Makefile.am, bonobo-activation/bonobo-activation-2.0-uninstalled.pc.in: * bonobo/Makefile.am, bonobo/libbonobo-2.0-uninstalled.pc.in, configure.in: Add uninstalled pkg-config files, so that we can link the library without needing to install it. 2004-02-07 Robert Sedak * configure.in: Added "hr" (Croatian) to ALL_LINGUAS. 2004-02-03 Tomasz Kłoczko * configure.in: Trival cleanup: remove AC_SUBST(CFLAGS), AC_SUBST(CPPFLAGS) and AC_SUBST(LDFLAGS). This variables are substed by default. 2004-02-02 Michael Meeks * Version 2.5.4 2004-02-02 David Hawthorne * autogen.sh: require automake 1.7 2004-02-01 Gustavo J. A. M. Carneiro * bonobo/bonobo-app-client.c, * bonobo/bonobo-application.c, * doc/api/libbonobo-docs.sgml, * doc/api/libbonobo-sections.txt, * doc/api/tmpl/bonobo-application.sgml, * doc/api/tmpl/bonobo-app-client.sgml: Initial BonoboApplication/BonoboAppClient documentation. Only introductory text is missing. * configure.in: Explicitly require GLib >= 2.3.2. * tests/test-uniqapp.c (message_quit_cb): Quit after a timeout, so that remote BonoboAppClient has time to unref our BonoboApplication reference. * bonobo/bonobo-application.c, bonobo/bonobo-application.h: s/BONOBO_TYPE_APPLICATION_ARGV/G_TYPE_STRV/ (new type available since glib 2.3.2). * bonobo/bonobo-app-client.c (bonobo_app_client_finalize): release_unref() the app_server remote object. * bonobo/bonobo-application.c (bonobo_application_register_unique): Ref() the application server object returned by b-a-s. Loop a few times trying to register as server, for as long as the ref() operation raises an exception. It should be noted that this situation is very unlikely to happen, though. 2004-01-30 Michael Meeks * bonobo-activation/bonobo-activation-register.c (bonobo_activation_register_active_server_ext): only be cautious about displaying if not in debugging mode, fix failure to compile. 2004-01-27 Rodrigo Moya * activation-server/object-directory-corba.c (object_directory_class_init): removed repeated line. * bonobo-activation/bonobo-activation-register.c (bonobo_activation_register_active_server_ext): display warning message if there's an exception. 2004-01-26 Michael Meeks * activation-server/activation-server-main.c (build_src_dir): re-order compile-time prefix so it doesn't screw people (ta. Chris, Dave et. al.). 2004-01-21 Anders Carlsson * bonobo-activation/bonobo-activation-init.c: (bonobo_activation_preinit): Fix translation of program arguments. (#106549, patch by Hidetoshi Tajima). 2004-01-15 Michael Meeks * Version 2.5.3 2004-01-15 Michael Meeks * activation-server/activation-server-main.c (main): beef up the --register-server case for debugging. * bonobo-activation/bonobo-activation-register.c (bonobo_activation_timeout_reg_check): add env. check for BONOBO_ACTIVATION_NO_TIMEOUT to disable the timeout. 2004-01-12 Michael Terry * activation-server/Makefile.am: Define G_LOG_DOMAIN. * activation-server/activation-server-main.c (log_handler): New function to handle g_log family calls which sends the message to syslog. Inspired by Havoc Pennington's GEdit debug code. (redirect_output): Change to use new output_debug global setting. (main): Setup syslog and g_log handler. Initialize output_debug based on environment variable BONOBO_ACTIVATION_DEBUG_OUTPUT. Parts of bug 131045. * activation-server/object-directory-corba.c (bonobo_object_directory_reload): Fix a debug output to use g_log. * activation-server/object-directory-load.c (parse_oaf_server_attrs), (parse_oaf_attribute), (od_load_context), (od_load_directory): Fix up some output calls to use g_log family correctly. 2004-01-14 Gustavo J. A. M. Carneiro * tests/generic-factory.c (generic_factory_cb): take some additional precautions against possible reentrancy. * tests/test-generic-factory.sh: unset BONOBO_ACTIVATION_DEBUG_OUTPUT env var to suppress b-a-s errors, instead of filtering the factory output through grep. 2004-01-14 Albert Chin-A-Young * bonobo/bonobo-moniker-util.c (async_activation_cb) (bonobo_moniker_resolve_async): fix for AIX. 2004-01-09 Michael Meeks * Version 2.5.2 2004-01-09 Michael Meeks * bonobo-activation/bonobo-activation-activate.c (query_cache_lookup): fix undefined 'active' issue. 2004-01-08 Michael Meeks * bonobo/bonobo-property-bag.c (flags_gparam_to_bonobo): fix logic bug, thanks to Dave Jones 2004-01-06 Michael Meeks * configure.in: require a decent/recent ORBit2. * bonobo-activation/bonobo-activation-register.c (bonobo_activation_register_active_server_ext), * bonobo-activation/bonobo-activation-activate.c (bonobo_activation_activate_from_id), (bonobo_activation_activate): check for BAD_OPERATION not NO_IMPLEMENT for backwards compatibility #129841, thanks Crispin. 2004-01-06 Gustavo J. A. M. Carneiro * activation-server/object-directory-load.c (parse_oaf_attribute) (od_EndElement): Allocate all serverinfo members with CORBA typed allocators, so that we can use Bonobo_ServerInfo__freekids to free the serverinfo. (bonobo_server_info_load): Set servers->_maximum equal to servers->_length, so that ORBit_sequence_append works correctly. Removed FIXME comment, since it is already fixed. * activation-server/object-directory-corba.c (od_dump_list): Use -> instead of . to dereference od->attr_servers pointer. (update_registry): CORBA_free old od->attr_servers before creating new one with CORBA dynamic allocation. (impl_Bonobo_ObjectDirectory__get_servers): Dereference od->attr_servers pointer. (od_register_runtime_server_info): Avoid calling update_registry(od, TRUE), which rescans/parses all XML .server files. Instead, just add/replace new serverinfo in od->attr_servers, od->attr_runtime_servers, and od->by_iid, then notify clients the serverinfo list has changed. (impl_Bonobo_ObjectDirectory_addClientEnv): Use ORBit_small_listen_for_broken instead of (deprecated) ORBit_small_get_connection. * activation-server/activation-context-corba.c (ac_update_list): Make a deep copy of the Bonobo_ServerInfoList, instead of keeping a pointer to it. * activation-server/object-directory.h (struct _ObjectDirectory): Change attr_servers to a pointer to structure instead of a direct structure, since we need to dynamically allocate it now (in order to be able to use ORBit_sequence_append). 2004-01-04 Martin Kretzschmar * doc/activation-api/server-xml-reference.sgml: l10n fix (see also Bug #122798). 2004-01-01 Gustavo J. A. M. Carneiro * activation-server/object-directory-corba.c (client_cnx_broken) (impl_Bonobo_ObjectDirectory_addClientEnv): Free client environment when client disconnects. 2003-12-31 Gustavo J. A. M. Carneiro * bonobo/bonobo-app-client.c (bonobo_app_client_new_instance): Add optional CORBA_Environment parameter, for better error handling. (bonobo_app_client_msg_send): Add CORBA_Environment; Declare a mandatory GType argument, for better compile-time checking, since the function needs at least one GType. (bonobo_app_client_msg_send_valist): idem. (bonobo_app_client_msg_send_argv): idem. (bonobo_app_client_new_instance): Add CORBA_Environment. * bonobo/bonobo-application.c (bonobo_application_register_unique): now returns Bonobo_RegistrationResult, receives serverinfo raw description and client interface is returned in an output parameter. (bonobo_application_create_serverinfo): New convenience method to build a XML server description for the app, including a list of cared-for environment variables. * bonobo/bonobo-application.h, bonobo/bonobo-app-client.h, * tests/test-uniqapp.c: Update to API changes. 2003-12-25 Gustavo J. A. M. Carneiro * bonobo/bonobo-marshal.list, bonobo/bonobo-application.c (bonobo_application_class_init): Changed new-instance signal argv type to BONOBO_TYPE_APPLICATION_ARGV instead of G_TYPE_POINTER, to make it easiear to wrap in language bindings. * bonobo/bonobo-application.h, bonobo/bonobo-application.c: Define a BONOBO_TYPE_APPLICATION_ARGV boxed type for a NULL-terminated string array, gchar**. * bonobo/bonobo-application.c (bonobo_application_new_instance): Create temporary NULL-terminated string array to pass as signal argument. * tests/test-uniqapp.c, bonobo/bonobo-marshal.list: Use the double type instead of float, for interoperability with python. 2003-12-24 Gustavo J. A. M. Carneiro * tests/test-uniqapp.c (message_cb, main): Add a string argument to the test message. * bonobo/bonobo-arg.c (bonobo_arg_from_gvalue_alloc): Add missing initialization of arg->_type and arg->_value for the G_TYPE_STRING case. 2003-12-18 Gustavo J. A. M. Carneiro * activation-server/object-directory-corba.c (od_merge_client_environment): Make the 'server' parameter const. (impl_Bonobo_ObjectDirectory_register_new_full): Register ServerInfo from description before merging environments, since merging requires the ServerInfo in the first place. (od_merge_client_environment): Tolerate NULL ServerInfo. 2003-12-09 Michael Meeks * bonobo-activation/bonobo-activation-client.c (bonobo_activation_register_client): switch to using environ instead - with our own extern for Solaris. 2003-12-08 Michael Meeks * Version 2.5.1 * activation-server/activation-context-corba.c (impl_Bonobo_ActivationContext__get_servers): prune. 2003-12-08 Gustavo J. A. M. Carneiro * bonobo-activation/bonobo-activation-activate.c (bonobo_activation_query): fix daft snafu. * bonobo-activation/bonobo-activation-register.c (bonobo_activation_register_active_server_ext): register the full version. * bonobo-activation/bonobo-activation-client.c (bonobo_activation_client_get): export internally. (bonobo_activation_register_client): pass the environment. * bonobo-activation/bonobo-activation-activate.c (bonobo_activation_activate_from_id), (bonobo_activation_activate): use new APIs and fallback on exception. (setup_methods): update. (bonobo_activation_activate_from_id_async), (bonobo_activation_activate_async): pass client - no fallbacks though (yet). * activation-server/object-directory-corba.c (object_directory_init): upd. (od_merge_client_environment): impl. (impl_Bonobo_ObjectDirectory_activate): add client handle (impl_Bonobo_ObjectDirectory_register_new_full): split/add (impl_Bonobo_ObjectDirectory_register_new), (impl_Bonobo_ObjectDirectory_activate): update. (od_register_runtime_server_info): return the right value. (impl_Bonobo_ObjectDirectory_addClientEnv): add envs. (object_directory_finalize): cleanup envs. * activation-server/object-directory-activate.c (od_server_activate_factory): propagate client context. * activation-server/client.c (do_activating): do a 'Full' activation. * activation-server/activation-context-corba.c (activation_context_class_init): expand vtable. (impl_Bonobo_ActivationContext_activateMatchingFull), (impl_Bonobo_ActivationContext_activateFromAidFull): split/add (impl_Bonobo_ActivationContext_activateMatching), (impl_Bonobo_ActivationContext_activateFromAid): update. 2003-12-09 Shmyrev * activation-server/activation-server-main.c (main): create / register the event source. * activation-server/object-directory-corba.c (impl_Bonobo_ObjectDirectory_register_new), (impl_Bonobo_ObjectDirectory_unregister): emit notifications. * tests/test-activation/Makefile.am: use libbonobo * tests/test-activation/bonobo-activation-test.c (main): add activation notification tests. * activation-server/Bonobo_CosNaming_NamingContext.server.in.in: describe the activation event source. 2003-12-08 Michael Meeks * bonobo-activation/bonobo-activation-activate.c (query_cache_lookup): grok for _active, don't use the cache if we're querying on live state. (bonobo_activation_query): don't insert into the cache if _active used. 2003-12-07 Gustavo J. A. M. Carneiro * bonobo/bonobo-application.c, bonobo/bonobo-application.h (bonobo_application_register_message_v): new function, like bonobo_application_register_message_va, but takes a vector of GType's instead of va_list, useful for language bindings. (bonobo_application_register_message_va): Calls bonobo_application_register_message_v after collecting arguments. * bonobo/bonobo-app-client.c, bonobo/bonobo-app-client.h (bonobo_app_client_msg_send_argv): New message sending function that receives a GValue* vector. This is mainly for language bindings. (bonobo_app_client_msg_send_valist): Now calls bonobo_app_client_msg_send_argv after collecting values. 2003-12-01 Gustavo J. A. M. Carneiro * bonobo-activation/bonobo-activation-client.c (impl_Bonobo_ActivationClient_getVersion): implement Bonobo::ActivationClient::getVersion(). * activation-server/activation-context-corba.c (impl_Bonobo_ActivationContext_getVersion) (activation_context_class_init): implement Bonobo::ActivationContext::getVersion(). * idl/Bonobo_ActivationContext.idl: Added getVersion() method to both ActivationClient and ActivationContext. 2003-11-24 Gustavo J. A. M. Carneiro * bonobo/bonobo-application.c (bonobo_application_register_unique): Build a XML fragment to pass as description of the server being registered. * activation-server/test-performance.c (test_server_info_load): Pass new required parameter to bonobo_server_info_load. * activation-server/object-directory.h: New attribute attr_runtime_servers, for servers without .server file, completely defined at run-time. * activation-server/object-directory-corba.c (update_registry): Pass in new 'runtime_servers' argument to bonobo_server_info_load. (od_register_runtime_server_info): new function to register new ServerInfo from XML string description. (impl_Bonobo_ObjectDirectory_register_new): Call od_register_runtime_server_info, instead of directly doing hashtable lookup to register ServerInfo from description and at the same time find out if ServerInfo is available (description could be empty). (object_directory_init): Initialize runtime_servers array here. * activation-server/server.h: Declare bonobo_parse_server_info_memory; update signature of bonobo_server_info_load. * activation-server/object-directory-load.c (bonobo_server_info_load): Add argument 'runtime_servers'; Append elements from runtime_servers to list of servers. (od_load_context): common code from file and string parsing functions. (od_load_file): moved most call to od_load_context; call it here. (bonobo_parse_server_info_memory): like od_load_file, but parses a memory string instead of a file. 2003-11-22 Gustavo J. A. M. Carneiro * bonobo/bonobo-app-client.c, bonobo/bonobo-application.c: s/bonobo_arg_from_gvalue_copy/bonobo_arg_from_gvalue_alloc/ s/bonobo_arg_to_gvalue_copy/bonobo_arg_to_gvalue_alloc/ * bonobo/bonobo-arg.h, bonobo/bonobo-arg.c: Rename bonobo_arg_(to|from)_gvalue_copy to bonobo_arg_(to|from)_gvalue_alloc, in order to confuse less programmers. 2003-11-17 Gustavo J. A. M. Carneiro * bonobo/bonobo-marshal.list: Add a few required marshalers. * idl/Makefile.am (idl_DATA): Add Bonobo_Application.idl. * bonobo/Makefile.am: Add bonobo-application.h and bonobo-application.c * tests/test-uniqapp.c: BonoboApplication test program. * tests/Makefile.am (check_PROGRAMS): Add BonoboApplication test. * bonobo/bonobo-main.c (bonobo_init_full): Call bonobo_arg_init here. * bonobo/bonobo-arg.c (bonobo_arg_to_gvalue_copy): like bonobo_arg_to_gvalue, but initializes/allocates return value. (bonobo_arg_from_gvalue_copy): like bonobo_arg_from_gvalue, but initializes/allocates return value. (__bonobo_arg_from_CORBA_ANY, __TC_CORBA_any_to_gvalue): specific functions to convert to/from CORBA_any. (bonobo_arg_register_from_gvalue_converter) (bonobo_arg_register_to_gvalue_converter): argument convertion registration API. (bonobo_arg_init): Function that needs to be called upon bonobo initialization to setup argument converters. * bonobo/bonobo-arg.h: declare new argument conversion functions. * bonobo/bonobo-app-client.c, bonobo/bonobo-app-client.h: BonoboAppClient -- client interface to BonoboApplication. * bonobo/bonobo-application.c, bonobo/bonobo-application.h: BonoboApplication initial implementation. * idl/Bonobo.idl: Include Bonobo_Application.idl. * idl/Bonobo_Application.idl: IDL Interface for GEP 12 Bonobo Unique Application. 2003-11-10 Malcolm Tredinnick * bonobo/bonobo-main.c (bonobo_main_level): Implement. * tests/test-main-loop.c, tests/Makefile.am: Test the above. * doc/api/libbonobo-sections.txt: Document it. 2003-10-31 Michael Meeks * Version 2.4.2 2003-11-03 Michael Meeks * bonobo-activation/bonobo-activation-base-service.c (bonobo_activation_service_get): print out the exception if build with debugging. * tests/test-moniker.c (main): activate before doing misc. calls. * activation-server/activation-server-main.c (main): activate the POA manager before we call in-proc methods that can generate transient errors. 2003-10-31 Michael Meeks * bonobo-activation/bonobo-activation-activate.c (bonobo_activation_init_activation_env): add XAUTHORITY to the list of uniqueness keys - causing grief for many: #124707 2003-10-31 Michael Meeks * bonobo/bonobo-context.c (bonobo_context_shutdown): check that people didn't shut down the ORB before we got called. 2003-10-29 Sebastien Bacher * utils/bonobo-slay.in: Add --help support, so 'bonobo-slay --help' doesn't slay the processes. Add a '-i' option to ask before slaying. 2003-10-25 Gustavo J. A. M. Carneiro * bonobo/bonobo-main.c (bonobo_poa_get_threadedv): Add support for ORBIT_THREAD_HINT_ON_CONTEXT. 2003-10-10 Michael Meeks * Version 2.4.1 2003-10-08 Mark McLoughlin * bonobo/bonobo-item-handler.c: (bonobo_item_handler_finalize): don't leak the get_object closure - we only freed it if the enum_object closure wasn't NULL. Nailed down using valgrind info from Kjartan. 2003-10-01 Michael Meeks * bonobo/bonobo-generic-factory.c: include bonobo-debug.h; thanks to Paolo Maggi. 2003-09-28 Gediminas Paulauskas * configure.in: Added lt to ALL_LINGUAS. 2003-09-24 Gustavo J. A. M. Carneiro * bonobo/bonobo-generic-factory.c (bonobo_generic_factory_construct): If the env.var BONOBO_DEBUG includes 'lifecycle' and bonobo is configured with --enable-debug, then give a warning when registration fails saying why. 2003-09-23 Gustavo J. A. M. Carneiro * tests/Makefile.am (EXTRA_DIST): Added Test_Generic_Factory.server. * tests/test-generic-factory.c (timeout2, run_tests): Use bonobo_activation_query() to activate the server instead of bonobo_get_object(), since during make distcheck the OAFIID moniker is not installed yet when the tests are run. * bonobo/bonobo-arg.c (MAKE_FROM_GVALUE, MAKE_TO_GVALUE): Revert the changes of 2003-04-22, since they introduce memory leaks. It turns out I misunderstood the API. 2003-09-19 Kjartan Maraas * bonobo/bonobo-running-context.c: (bonobo_running_context_trace_objects_T): Fix compiler warnings. 2003-09-12 Gustavo J. A. M. Carneiro * tests/Makefile.am (EXTRA_DIST): Removed non-existent file clean-warnings.sed. * doc/activation-api/tutorial.sgml: In the section "The need for a replacement" we should be talking about replacing gnorba, not bonobo activation. 2003-08-28 Michael Meeks * tests/models/generic-factory.output: bin the duff stuff from here too. * tests/test-generic-factory.sh: add a funky sed script to bin the duplicated / uninteresting bits. * tests/models/Makefile.am: add. * tests/Makefile.am (SUBDIRS): upd. * configure.in: add tests/models/Makefile - we wern't distributing the test output. 2003-08-26 Michael Meeks * Version 2.4.0 * activation-server/object-directory-corba.c (remove_active_server): don't spew a warning. 2003-08-22 Samúel Jón Gunnarsson * configure.in: Added "is" to ALL_LINGUAS. 2003-08-10 Chris Toshok * bonobo-activation/bonobo-activation-base-service.c (bonobo_activation_internal_service_get_extended): fix typo - UNLOCK instead of LOCK. 2003-08-04 Christophe Fergeau * doc/activation-api/query-langage.sgml: * doc/api/tmpl/bonobo-generic-factory.sgml: * doc/api/tmpl/bonobo-property-bag.sgml: fixed small inaccuracies in the doc 2003-08-04 Steve Chaplin * bonobo-activation/Makefile.am: use AM_LDFLAGS. 2003-07-31 Michael Meeks * Version 2.3.6 * configure.in: require ORBit2 >= 2.7.5 for the is_a fix. * bonobo/bonobo-foreign-object.c (bonobo_foreign_object_new): add the CORBA_Object_is_a check back in. * bonobo/bonobo-object.c (do_corba_setup_T): move inheritance trap here, where we have a valid object reference. 2003-07-30 Michael Meeks * bonobo/bonobo-object.c (bonobo_object_instance_init): add an inheritance trap. 2003-07-26 Gustavo J. A. M. Carneiro * doc/api/faq.xml: Added link to the C language mapping spec. 2003-07-17 Gustavo J. A. M. Carneiro * tests/test-activation/Makefile.am (TESTS_ENVIRONMENT): Define BONOBO_ACTIVATION_PATH here instead, dependent on $(srcdir). * tests/test-activation/test.sh (BONOBO_ACTIVATION_PATH): Don't define here. * tests/test-activation/Makefile.am: s/noinst_PROGRAMS/check_PROGRAMS/ * tests/Makefile.am: s/noinst_SCRIPTS/check_SCRIPTS/; s/noinst_PROGRAMS/check_PROGRAMS/; Add check_SCRIPTS to EXTRA_DIST. 2003-07-17 Michael Meeks * bonobo-activation/bonobo-activation-fork-server.c (bonobo_activation_server_by_forking): fix leak thanks to Morten. 2003-07-17 Gustavo J. A. M. Carneiro * tests/Makefile.am (TESTS_ENVIRONMENT): Define MODELS_DIR... * tests/test-generic-factory.sh: ... and use it here. * tests/test-generic-factory.sh (BONOBO_ACTIVATION_PATH): Don't define it here. * tests/Makefile.am (noinst_PROGRAMS): Added generic-factory. (TESTS_ENVIRONMENT): Define BONOBO_ACTIVATION_PATH here, to make it dependent on srcdir. 2003-07-15 Gustavo J. A. M. Carneiro * tests/test-generic-factory.sh: Set TMPDIR to a private directory, to force a private b-a-s. * tests/models/generic-factory.output: Reference model changed a bit. * tests/Makefile.am: Added back a simplified version of the generic factory test. * tests/Test_Generic_Factory.server, * tests/test-generic-factory.sh: added. * tests/Test_Generic_Factory.server.in, * tests/test-generic-factory.sh.in: removed. 2003-07-15 Michael Meeks * Version 2.3.5 * tests/test-activation/Makefile.am, * activation-server/Makefile.am, * bonobo/Makefile.am, * idl/Makefile.am, * Makefile.am: clean up misc. mess new autotools doesn't like. * tests/Makefile.am: disable test-generic-foo* 2003-07-13 Gustavo J. A. M. Carneiro * bonobo/bonobo-object.c (bonobo_object_finalize_internal_T): Call bonobo_running_context_remove_object_T if it is foreign object, since bonobo_object_corba_deactivate_T isn't called in such case. * bonobo/bonobo-foreign-object.c (bonobo_foreign_object_new): Call bonobo_running_context_add_object_T() here, since do_corba_setup() is never called for foreign objects. (bonobo_foreign_object_new): Instantiate with g_object_new instead of g_type_create_instance, otherwise bonobo_object_constructor never gets called and the object isn't completely initialized. * bonobo/bonobo-generic-factory.c (startup_timeout) (last_unref_timeout): Clear timeout handle IDs before returning FALSE from the callbacks. 2003-07-09 Antonio Xu * activation-server/client.c: (do_activating): Add the output of Activation ID. (main): Add the output of Query spec. 2003-07-08 Michael Meeks * tests/test-activation/Makefile.am: disable persistantly failing async tests - bad library location issue rather than anything serious I hope. * configure.in: add popt check / POPT_LIBS. * tests/test-activation/Makefile.am, * activation-server/Makefile.am, * utils/Makefile.am: link explicitely to popt, thanks to Damien Carbery 2003-07-04 Frederic Crozat * Version 2.3.4 2003-06-24 Michael Meeks * test/test-activation/Makefile.am: resolve linking snafu with bonobo-activation-run-query * test/test-activation/test.sh: remove export A=b bash-ism 2003-06-16 Taneem Ahmed * configure.in: Added "bn" to ALL_LINGUAS. 2003-06-12 Frederic Crozat * bonobo/bonobo-main.c: (bonobo_poa_new_from): * bonobo/bonobo-main.h: don't use C++ keyword. 2003-06-10 Michael Meeks * Version 2.3.3 2003-06-10 Michael Meeks * idl/Bonobo_Canvas.idl: use the Gdk::WindowId instead of a long window_id; upgrading the deprecated interface / add more padding. 2003-06-10 Gustavo J. A. M. Carneiro * bonobo/bonobo-generic-factory.c (bonobo_generic_factory_destroy): Cancel any pending timeouts, just in case. 2003-06-10 Michael Meeks * bonobo/bonobo-property-bag-client.c (bonobo_pbclient_set_boolean): un-roll & sync. with prototype. 2003-06-09 Dan Winship * bonobo/bonobo-property-bag-client.c (bonobo_pbclient_set_boolean): another gboolean vs CORBA_boolean bug. 2003-06-09 Michael Meeks * Version 2.3.2 2003-06-09 Michael Meeks * tests/Makefile.am (EXTRA_DIST): fix. * bonobo/bonobo-running-context.c (impl_Bonobo_RunningContext_removeKey) Rename several methods to _T suffix. (check_empty_T): don't hold the lock over event emissions. Add a slew of guards. * bonobo/bonobo-object.c (bonobo_object_init): bin it. (bonobo_object_instance_init, bonobo_object_finalize_internal): hold the guard on total_aggregates arithmetic. (bonobo_object_bag_get_ref, bonobo_object_bag_remove) (bag_collect_ref_list_cb, bonobo_object_bag_list_ref) (bag_collect_key_list_cb, bonobo_object_bag_destroy) (bonobo_object_bag_cleanup_T): impl. (bonobo_object_trace_refs, bonobo_object_ref) (bonobo_object_unref): hold guards over ref/unref etc. (bonobo_object_ref_T): impl. * bonobo/bonobo-main.c (bonobo_init_full): create _bonobo_lock. * bonobo/bonobo-shutdown.h: rename to * bonobo/bonobo-private.h: this to better reflect it's role. 2003-06-09 Rodrigo Moya * doc/activation-api/*.sgml: replaced references to OAF with "Bonobo Activation". 2003-06-09 Michael Meeks * idl/Bonobo_Activation_types.idl: make 'unset' a flags field instead; just as efficient and more expandable. * bonobo-activation/bonobo-activation-register.c (Bonobo_ActivationEnvValue_copy, Bonobo_ActivationEnvValue_set): switch to new unset scheme with flag. * bonobo-activation/bonobo-activation-shlib.c (bonobo_activation_activate_shlib_server), (gnome_plugin_unload): hold guard. * bonobo-activation/bonobo-activation-get-language-list.c (bonobo_activation_i18n_get_language_list): add guard. * bonobo-activation/bonobo-activation-client.c (bonobo_activation_add_reset_notify, reset_caches): guard reset_caches list. (get_lang_list): guard lang list. * bonobo-activation/bonobo-activation-base-service.c (bonobo_activation_internal_service_get_extended): guard the activator list - the only real entry point here. * bonobo-activation/bonobo-activation-activate.c (query_cache_lookup): guard the cache. * activation-server/activation-context-corba.c, * bonobo-activation/bonobo-activation.h, * bonobo-activation/Makefile.am: don't include or install the (deprecated) -base-service.h, or -activation-id.h headers. * bonobo-activation/bonobo-activation-init.c (bonobo_activation_orb_init): always initialize the thread safe ORB. (orb_handle_connection, orb_add_connection) (orb_remove_connection, bonobo_activation_orb_init): bin ancient, stale USES_GLIB cruft. * tests/test-thread.c (main): bin the special case for thread-safe init. 2003-06-09 Gustavo J. A. M. Carneiro * bonobo/bonobo-running-context.c (bonobo_running_context_add_object): Set emitted_last_unref = FALSE, just in case. * doc/api/tmpl/bonobo-generic-factory.sgm: Documented BONOBO_ACTIVATION_FACTORY_TIMEOUT. * doc/api/libbonobo-sections.txt: Added bonobo_generic_factory_main_timeout and BONOBO_ACTIVATION_FACTORY_TIMEOUT. * tests/Makefile.am: Build and declare generic factory regression test. * tests/models/generic-factory.output: generic factory client model output. * tests/models/generic-factory.output: generic factory server model output. * tests/test-generic-factory.sh.in: Regression test script for generic factory. * tests/generic-factory.c: generic factory regression test server. * tests/test-generic-factory.c: generic factory regression test client. * tests/Test_Generic_Factory.server.in: .server file for regression test of generic factory. * bonobo/bonobo-generic-factory.h (BONOBO_ACTIVATION_FACTORY_TIMEOUT): New generic factory macro that accepts an extra quit_timeout argument. * bonobo/bonobo-generic-factory.c (bonobo_generic_factory_main): Call bonobo_generic_factory_main_timeout with default 2 seconds timeout. (bonobo_generic_factory_main_timeout): New generic factory main mainloop with startup timeout (if somehow the server "forgets" to request an object after one minute) and quit timeout, to avoid quitting immediately after all objects have been released. (bonobo_generic_factory_init): Initialize factory->priv->last_unref_timeout to the default value. (impl_Bonobo_ObjectFactory_createObject): Cancel any pending timeouts. 2003-06-09 Michael Meeks * configure.in: bump required bits, version. * bonobo/bonobo-main.c (bonobo_poa_get_threaded): don't leak a policy (thanks to NotZed). (bonobo_poa_get_threaded, bonobo_poa_get_threadedv): add argv arg. 2003-06-06 Michael Meeks * bonobo/bonobo-object.c (bonobo_object_set_poa): stub. * tests/test-thread.c (main): upd. * bonobo/bonobo-main.c (bonobo_poa_new_from): impl. helper for creating new poas. (bonobo_poa_get_threaded): use ORBitThreadHint instead & re-hash. 2003-06-06 Michael Meeks * bonobo-activation/bonobo-activation-fork-server.c (bonobo_activation_server_by_forking): use g_main_context_default not erroneous NULL thing. * bonobo-activation/bonobo-activation-init.c (bonobo_activation_hostname_get): yet more simplification. 2003-06-05 Kenneth Rohde Christiansen * configure.in: Added li to ALL_LINGUAS. 2003-06-05 Michael Meeks * bonobo-activation/bonobo-activation-init.c (bonobo_activation_hostname_get): bin the unnecessary & slow hostname lookup, this causes acute grief on badly configured machines. 2003-06-04 Michael Meeks * activation-server/server.h: turn off BONOBO_ACTIVATION_DEBUG - it's spewing reams of cruft. 2003-06-02 Shailesh Mittal * configure.in: Added checks for getaddrinfo(). * acconfig.h: Added HAVE_GETADDRINFO. * bonobo-activation/bonobo-activation-init.c (bonobo_activation_hostname_get): If getaddrinfo is defined on the system, it is used for hostname resolution, otherwise old gethostbyname is used for the purpose. 2003-06-02 Gustavo J. A. M. Carneiro * doc/api/figures/running-context.png, * doc/api/figures/running-context.dia: Added. * doc/api/figures/Makefile.am (diagrams): Added running-context.dia. * doc/api/Makefile.am (HTML_IMAGES): Added figures/running-context.png. * doc/api/tmpl/bonobo-running-context.sgml: Added a bit of documentation about this. * bonobo/bonobo-item-container.h: Removed the no longer used BonoboClientSiteList typedef. * doc/api/libbonobo-docs.sgml: Removed the bonobo-macros and bonobo-xobject sections. * doc/api/tmpl/bonobo-macros.sgml, * doc/api/tmpl/bonobo-unused.sgml, * doc/api/tmpl/libbonobo-unused.sgml, * doc/api/tmpl/bonobo-async.sgml, * doc/api/tmpl/bonobo-audio-ulaw.sgml, * doc/api/tmpl/bonobo-object-client.sgml, * doc/api/tmpl/bonobo-selector.sgml, * doc/api/tmpl/bonobo-property-bag-xml.sgml, * doc/api/tmpl/bonobo-wrapper.sgml, * doc/api/tmpl/bonobo-x-object.sgml: removed. * doc/api/Makefile.am: ignore bonobo-macros.h, bonobo-x-object.h and bonobo-stream.h. * doc/api/libbonobo-docs.sgml, * doc/api/libbonobo-sections.txt, * doc/api/tmpl/bonobo-arg.sgml, * doc/api/tmpl/bonobo-event-source.sgml, * doc/api/tmpl/bonobo-exception.sgml, * doc/api/tmpl/bonobo-generic-factory.sgml, * doc/api/tmpl/bonobo-item-container.sgml, * doc/api/tmpl/bonobo-item-handler.sgml, * doc/api/tmpl/bonobo-listener.sgml, * doc/api/tmpl/bonobo-main.sgml, * doc/api/tmpl/bonobo-moniker-context.sgml, * doc/api/tmpl/bonobo-moniker-extender.sgml, * doc/api/tmpl/bonobo-moniker-simple.sgml, * doc/api/tmpl/bonobo-moniker-util.sgml, * doc/api/tmpl/bonobo-moniker.sgml, * doc/api/tmpl/bonobo-object.sgml, * doc/api/tmpl/bonobo-persist-file.sgml, * doc/api/tmpl/bonobo-persist-stream.sgml, * doc/api/tmpl/bonobo-persist.sgml, * doc/api/tmpl/bonobo-property-bag-client.sgml, * doc/api/tmpl/bonobo-property-bag.sgml, * doc/api/tmpl/bonobo-running-context.sgml, * doc/api/tmpl/bonobo-shlib-factory.sgml, * doc/api/tmpl/bonobo-storage-memory.sgml, * doc/api/tmpl/bonobo-storage.sgml, * doc/api/tmpl/bonobo-stream-memory.sgml, * doc/api/tmpl/bonobo-stream.sgml, * doc/api/tmpl/bonobo-types.sgml: documention update and cleanup. 2003-05-30 Michael Meeks * activation-server/object-directory.h: add headers for time_t. * activation-server/object-directory-activate.c (od_server_activate_exe): use the glib mainloop to poll through. * bonobo-activation/bonobo-activation-base-service.c (get_tmpdir): use ORBit_get_temp_dir, and fail noisly if we can't get a secure place to poke. (local_activator): force a local loop. * bonobo/bonobo-object.c: add linc locking dummies. * bonobo-activation/bonobo-activation-fork-server.c (bonobo_activation_server_by_forking): add 'use_new_loop' argument; create either an inferior loop, or use the glib mainloop - as suits. Only scan with the mainloop. (scan_list): use the mainloop here too. * tests/test-activation/bonobo-activation-test.c (race_empty): use g_main_iteration. 2003-05-29 Michael Meeks * tests/test-thread.c (test_threads): add a timeout to the glib mainloop for loop graunching. * bonobo/bonobo-main.c (bonobo_poa_get_threaded): set the ORB_CTRL_MODEL policy without which this is mostly useless, also activate the poa. * tests/test-thread.c: add. * bonobo/bonobo-property-bag-client.c (bonobo_pbclient_get_boolean): fix a nasty with CORBA_boolean vs. 'gboolean'. 2003-05-27 Gustavo J. A. M. Carneiro * doc/api/figures/Makefile.am: Indicate the need to use dia 0.91 instead of 0.90. * doc/api/figures/*.{dia,png}: Open all dia files with dia 0.91, tune the class fonts, and export as png. Figures now look nicer. 2003-05-24 Martin Kretzschmar * doc/activation-api/server-xml-reference.sgml: added markup, updated .server snippets for GNOME2, s/OAF/Bonobo Activation in text, went into nautilus code and came back with information about oaf_attributes for nautilus views, written down here 2003-05-22 Michael Meeks * bonobo-activation/bonobo-activation-fork-server.c (bonobo_activation_server_by_forking): add a nasty hack to handle force_threaded mode; spew FIXMEs. 2003-05-20 Telsa Gwynne * configure.in: Added cy (Welsh) to ALL_LINGUAS 2003-05-19 Michael Meeks * activation-server/object-directory-corba.c (impl_Bonobo_ObjectDirectory_register_new): update sig. * bonobo-activation/bonobo-activation-register.c (bonobo_activation_register_active_server_ext): add a description parameter. 2003-05-13 Michael Meeks * activation-server/Makefile.am: add object-directory.h 2003-05-12 Michael Meeks * activation-server/client.c (remove_load_path, add_load_path): handle unknown error cases. (register_activate_server): initialize r_obj always. * activation-server/object-directory-corba.c (impl_Bonobo_ObjectDirectory__get_username), (impl_Bonobo_ObjectDirectory__get_hostID): bin. (object_directory_class_init, object_directory_init) (object_directory_finalize): add. (bonobo_object_directory_init, bonobo_object_directory_shutdown): substantial update. Large scale re-factoring action towards BonoboObject, and final removal. 2003-05-12 Michael Meeks * tests/test-activation/Makefile.am: don't install bonobo-activation-emtpy-server, it's a test program. bin NULL bits. 2003-05-12 Gustavo J. A. M. Carneiro * MAINTAINERS: Declare myself as documentation maintainer. 2003-05-11 Martin Kretzschmar * doc/activation-api/configuring.sgml: update for GNOME2 * doc/activation-api/bonobo-activation.sgml: changed license blurb to say that there are no Invariant Sections, with permission of the original author, Mathieu Lacage, see http://mail.gnome.org/archives/gnome-components-list/2003-May/msg00015.html * doc/activation-api/bonobo-activation-docs.sgml: ditto * bonobo-activation-config.xml: made examples GNOME2-ish 2003-05-10 Gustavo J. A. M. Carneiro * bonobo-activation-config.xml: Added an example configuration as xml comments. 2003-05-09 Martin Kretzschmar * configure.in: require ORBit2 >= 2.7.1 2003-05-09 Antonio Xu * activation-server/client.c (poptOption): add some options for handle add/remove search path in runtime and register server with command line. (add_load_path): add a new function to handle add search path in runtime. (remove_load_path): add a new function to handle remove search patch in runtime. (register_activate_server): add a new function to handle register bonobo server with command line. (do_query_server_info): add a new function to handle query server info with command line. (do_activating): add a new function to handle activating server with command line. (main): clean code. * activation-server/object-directory-corba.c (impl_Bonobo_ObjectDirectory_add_path): add a new function to implement the new method of interface. (impl_Bonobo_ObjectDirectory_remove_path): add a new function to implement the new method of interface. * activation-server/object-directory-load.c (bonobo_server_info_load): add FIXME, servers->_buffer should be freed. * bonobo-activation/bonobo-activation-activate.c (bonobo_activation_dynamic_add_path): add a new function to handle add search path in runtime. (bonobo_activation_dynamic_remove_path): add a new function to handle remove search path in runtime. * bonobo-activation/bonobo-activation-activate.h: (bonobo_activation_dynamic_add_path) (bonobo_activation_dynamic_remove_path): add two new function to handle add and remove search path in runtime. * idl/Bonobo_Activation_types.idl (DynamicPathLoadResult): add new enum for define the result of dynamic path load. * idl/Bonobo_ObjectDirectory.idl (dynamic_add_path) (dynamic_remove_path): add two new function to handle add and remove search path in runtime. 2003-05-08 Gustavo J. A. M. Carneiro * doc/activation-api/Makefile.am: Replace common gtk-doc makefile code with an include. (DOC_SOURCE_DIR): Fixed bonobo-activation directory location. * doc/Makefile.am (SUBDIRS): Added activation and activation-api. * configure.in: AC_OUTPUT doc/activation/Makefile and doc/activation-api/Makefile. 2003-05-08 Jens Granseuer * Makefile.am (install-data-local): use DESTDIR. 2003-05-06 Michael Meeks * Version 2.3.1 2003-05-06 Michael Meeks * Makefile.am (install-data-local): fix manual install * tests/test-properties.sh: remove the iorfile before run. * tests/test-properties-client.c (main): set the orb before using it. * tests/test-activation/test.sh: set BONOBO_ACTIVATION_SERVER. * bonobo-activation/bonobo-activation-base-service.c: bin od_cmd. (bonobo_activation_base_service_init): clobber the activation server exe, so the tests can run on a non-installed b-a-s. * activation-server/Makefile.am (bonobo_activation_server_SOURCES): add activation-context.h * Makefile.am (SUBDIRS): add 'util' * utils/bonobo-activation-sysconf.c: fixup. 2003-05-05 Christian Rose * configure.in: Added sr and sr@Latn to ALL_LINGUAS. 2003-04-28 Michael Meeks * doc/activation-api/tmpl/registration.sgml: fix Bonobo_Plugin_info. 2003-04-23 Gustavo J. A. M. Carneiro * doc/api/Makefile.am (IGNORE_HFILES): Ignore Bonobo.h and bonobo-marshal.h. * doc/api/libbonobo-sections.txt: Added missing symbols from libbonobo-unused.txt. * bonobo/bonobo-arg.c, bonobo/bonobo-generic-factory.h, * bonobo/bonobo-item-handler.c, bonobo/bonobo-listener.c, * bonobo/bonobo-main.c, bonobo/bonobo-main.h, * bonobo/bonobo-moniker.c, bonobo/bonobo-moniker.h, * bonobo/bonobo-object.c, bonobo/bonobo-persist-file.c, * bonobo/bonobo-persist-stream.h, bonobo/bonobo-persist.c, * bonobo/bonobo-property-bag-client.h, bonobo/bonobo-property-bag.c, * bonobo/bonobo-property-bag.h, bonobo/bonobo-shlib-factory.c, * bonobo/bonobo-shlib-factory.h, bonobo/bonobo-stream-client.c, * bonobo/bonobo-types.c, doc/api/libbonobo-sections.txt: Minor changes (documentation comments, mismatch between parameter names in header files and in the C files) to fix most gtk-doc scanning warnings. 2003-04-22 Gustavo J. A. M. Carneiro * Makefile.am (EXTRA_DIST): Include bonobo-activation-config.xml, not bonobo-activation-config.xml.in. (install-data-local): Override default bonobo-activation-config.xml installation procedure so that it is not overwritten if it already exists. 2003-04-22 Gustavo J. A. M. Carneiro * doc/api/libbonobo.args, doc/api/libbonobo.prerequisistes, doc/api/libbonobo.interfaces: Removed (purely-generated files). * doc/api/libbonobo-sections.txt: Added bonobo_poa_get_threaded and BonoboThreadHint. * doc/api/tmpl/bonobo-object.sgml: Added an example of using the "poa" proterty. * doc/api/bonobo-api.sgml, doc/api/bonobo.hierarchy, * doc/api/bonobo.signals, doc/api/bonobo.args, * doc/api/bonobo-sections-bad.txt, doc/api/bonobo.types, * doc/api/bonobo-decl.txt, doc/api/bonobo-sections.txt: Removed these unused files (the real files are named libbonobo*) * bonobo/bonobo-shutdown.h: Removed one '*' to prevent gtk-doc from trying to parse this as a documentation header. 2003-04-22 Michael Meeks * tests/test-activation/Makefile.am: do most of the tests * tests/test-activation/test.sh: from here. * activation-server/activation-context-corba.c (child_od_info_new, child_od_info_free): bin hostname/username bits. (child_od_info_new): bin it. (child_od_info_free): rename to (directory_info_free): this. (child_od_exception): bin. (child_od_update_active): rename to (ac_update_active): this. (child_od_update_list): rename to (ac_update_list, ac_update_list): upd. 2003-04-22 Gustavo J. A. M. Carneiro * doc/api/bonobo-sections.txt: Added bonobo_poa_get_threaded to the bonobo-main section. * bonobo/bonobo-main.c (bonobo_poa_get_threaded): New function to get a predefined POA for a given threading policy/hint: one-way-at-idle, all-at-idle, and thread-per-request. * bonobo/bonobo-main.h: Declare bonobo_poa_get_threaded. Added G_BEGIN_DECLS/G_END_DECLS. * bonobo-activation/bonobo-activation-register.h, * bonobo-activation/bonobo-activation-register.c (bonobo_activation_register_active_server): Renamed to bonobo_activation_register_active_server_ext while updating to the new Bonobo::ObjectDirectory::register_new signature, and reimplemented bonobo_activation_register_active_server as an adaptor to avoid breaking existing apps (and also to avoid exposing internal implementation details). * bonobo/bonobo-arg.c (MAKE_FROM_GVALUE): Use ORBit_alloc_tcval to allocate space for the value; also initilize the _type and _release fields of the CORBA::any. (MAKE_TO_GVALUE): g_value_init before setting the value. * activation-server/object-directory-corba.c (impl_Bonobo_ObjectDirectory_register_new): Update to the new API: return existing object, and honor the Bonobo_REGISTRATION_FLAG_NO_SERVERINFO registration flag. * activation-server/activation-server-main.c (main): Update to the new Bonobo_ObjectDirectory_register_new signature. * idl/Bonobo_ObjectDirectory.idl (Bonobo::ObjectDirectory::register_new): Added and output variable to return the existing object in case the client tries to register an object which is has already been registered. * idl/Bonobo_Activation_types.idl: Define RegistrationFlags with the single value REGISTRATION_FLAG_NO_SERVERINFO. 2003-04-17 Gustavo J. A. M. Carneiro * tests/test-object.c (main): Removed the foreign object test, since it was broken anyway. 2003-04-17 Michael Meeks * tests/test-activation/Makefile.am (TESTS_ENVIRONMENT): update test path. * bonobo/bonobo-object.c (bonobo_object_get_property) (bonobo_object_set_property): impl. (bonobo_object_instance_init): chop out do_corba_setup bits and move them into (bonobo_object_constructor): here, where we are sure that we have the poa property in hand. (bonobo_object_get_poa): impl. (bonobo_object_corba_deactivate, do_corba_setup): use it. (bonobo_object_finalize_internal): fix deactivation issue. 2003-04-17 Michael Meeks * doc/activation-api/server-xml-reference.sgml: update docs. * tests/test-activation/plugin.server: ditto. * monikers/Bonobo_Moniker_std.server.in.in: bin the .so library suffix. 2003-04-17 Masahiro Sakai * configure.in: call AC_LIBTOOL_WIN32_DLL. * bonobo/Makefile.am, bonobo-activation/Makefile.am, idl/Makefile.am, monikers/Makefile.am, tests/test-activation/Makefile.am: append -no-undefined to each library's LDFLAGS. * monikers/Makefile.am (libmoniker_std_2_la_LIBADD): write dependency libraries explicitly in it. * tests/test-activation/Makefile.am (libtest_plugin_la_LIBADD): ditto. * activation-server/Makefile.am (LDADD): move -lname-server-2 before $(SERVER_LIBS). because it depends on $(SERVER_LIBS). * samples/echo/Makefile.am (bonobo_echo_2_LDADD, echo_client_2_LDADD): move libEcho.a to the first. because it depends on other libraries. 2003-04-16 Gustavo J. A. M. Carneiro * bonobo/bonobo-object.c (bonobo_object_finalize_internal): Fix stupid bug: compare object type with BONOBO_TYPE_FOREIGN_OBJECT instead of BONOBO_TYPE_OBJECT when deciding if we should call bonobo_object_corba_deactivate. 2003-04-16 Michael Meeks * configure.in: add activation debug flags, and the crucial flex / LEX check ( thanks to Ali Akcaagac) 2003-04-15 Gustavo J. A. M. Carneiro * tests/test-object.c (main): A very lame excuse of a test of BonoboForeignObject. * bonobo/bonobo-foreign-object.h, bonobo/bonobo-foreign-object.c: Implement BonoboForeignObject, which GObject-derives from BonoboObject, and allows one to wrap an existing plain CORBA_Object as a BonoboObject, as long as that object implements the interface Bonobo::Unknown. * bonobo/bonobo-object.c (bonobo_object_finalize_internal): Don't call bonobo_object_corba_deactivate for BonoboForeignObject instances. (bonobo_object_instance_init): Don't call do_corba_setup for BonoboForeignObject instances. 2003-04-14 Michael Meeks * idl/Makefile.am (idl_flags): fix. * bonobo/Makefile.am (idl_flags): fix. * bonobo/libbonobo-2.0.pc.in (idlinclude): fix. * configure.in: remove IDL path check from split module. Many thanks to Havoc Pennington for digging this out. 2003-04-11 Padraig O'Briain * activation-server/activation-contect-corba.c, bonobo/bonobo-event-source.c, bonobo/bonobo-generic-factory.c, bonobo/bonobo-item-factory.c, bonobo/bonobo-item-handler.c, bonobo/bonobo-listener.c, bonobo/bonobo-moniker-context.c, bonobo/bonobo-moniker-extender.c, bonobo/bonobo-monikeri.c, bonobo/bonobo-persist-file.c, bonobo/bonobo-persist-stream.c, bonobo/bonobo-persist.c, bonobo/bonobo-property-bag.c, bonobo/bonobo-running-context.c, bonobo/bonobo-storage-memory.c, samples/echo/echo.c: Remove semicolon after macro BONOBO_TYPE_FUNC_FULL; this fixes compiler warning when using FORTE compiler. 2003-04-08 Michael Meeks * tests/test-activation/Makefile.am: don't link objects into both binaries and libraries in the same directory. * autogen.sh, bonobo/Makefile.am, doc/api/Makefile.am: switch back to automake-1.6 2003-04-07 Carlos Perelló Marín * configure.in (ALL_LINGUAS): Added ga, hi, wa and yi from bonobo-activation. 2003-04-07 Michael Meeks * Makefile.am: install / carry b-a-config.xml * activation-server/activation-context-corba.c (activation_context_finalize): trash the multi-directory capability - a horrificly complex non-working feature. 2003-04-07 Michael Meeks * activation-server/activation-server-main.c (main): upd. * activation-server/activation-context-corba.c (activation_context_init): use BonoboObject for a major clean. Much internal cleaning ... * activation-server/activation-server-main.c (main): init / shutdown libbonobo. (dump_ior): split from main. * tests/test-activation/Makefile.am (TESTS_ENVIRONMENT): run tests in an isolated (by TMPDIR) environment, update path for b-a-s activation. 2003-04-07 Michael Meeks * Makefile.am: disable doc until we can work with a newer automake that can do conditionals inside an include. * autogen.sh (REQUIRED_AUTOMAKE_VERSION): revert to automake-1.4 which doesn't screw-up with IDL compilation. * bonobo/Makefile.am (LDFLAGS): use just LDFLAGS. * doc/api/Makefile.am (AUTOMAKE_OPTIONS): set to 1.4 * configure.in: merge in bonobo-slay bits, update dirs. * docs/activation: Merge from bonobo-activation/docs * docs/activation-api: Merge from bonobo-activation/api-docs * utils: Merge from bonobo-activation/utils 2003-04-07 Michael Meeks * bonobo/Makefile.am (AM_LDFLAGS): upd version info. * bonobo-activation/bonobo-activation-version.h.in: upd. * idl/Makefile.am: add activation IDL bits. * Makefile.am (SUBDIRS): upd. * configure.in (SERVER_CFLAGS): add. * bonobo-activation/Makefile.am: upd. particularly LT_VERSION_INFO. * configure.in (ENABLE_ORBIT2): bin; unused anyway. * bonobo-activation: Merge from bonobo-activation/bonobo-activation * activation-server: Merge from bonobo-activation/server 2003-03-24 Gustavo J. A. M. Carneiro * Makefile.am (DISTCHECK_CONFIGURE_FLAGS): Pass --enable-gtk-doc to configure when making distcheck, otherwise it fails. (EXTRA_DIST): Include gtk-doc.make in the distribution. * doc/api/figures/Makefile.am: Don't delete the png files when doing make maintainer-clean. * bonobo/Makefile.am (AM_LDFLAGS): Define AM_LDFLAGS instead of LDFLAGS to please automake 1.7. * doc/api/Makefile.am: Require automake 1.6. Replaced the generic code with a generic gtk-doc makefile template include. * autogen.sh (REQUIRED_AUTOMAKE_VERSION): Require automake >= 1.6. * configure.in: Use the macro GTK_DOC_CHECK to check for gtk-doc. 2003-03-21 Guntupalli Karunakar * configure.in: Added "ml" in ALL_LINGUAS 2003-03-11 Martin Kretzschmar * bonobo/bonobo-macros.h (BONOBO_BOILERPLATE): insert explicit casts in class_init_trampoline for C++ compatibility * bonobo/bonobo-arg.h (BONOBO_ARG_GET_STRING) (BONOBO_ARG_SET_STRING): disable typechecks for __STRICT_ANSI__ and C++ 2003-03-08 Christian Rose * configure.in: Added "eo" to ALL_LINGUAS. 2003-03-07 Bill Haneman * idl/Bonobo_Property.idl: * idl/Bonobo.idl: Replaced #if !defined(FOO) with #ifndef(FOO), etc. for better compatibility with IDL parsers like idlj. 2003-03-04 Michael Meeks * bonobo/bonobo-arg.h: update macros. 2003-02-28 Hidetoshi Tajima * bonobo/bonobo-exception.c (BONOBO_EXPLICIT_TRANSLATION_DOMAIN): * bonobo/bonobo-moniker.c (BONOBO_EXPLICIT_TRANSLATION_DOMAIN): * bonobo/bonobo-moniker-util.c (BONOBO_EXPLICIT_TRANSLATION_DOMAIN): use GETTEXT_PACKAGE instead of PACKAGE (#107228). 2003-02-19 Gustavo J. A. M. Carneiro * monikers/bonobo-moniker-std.c (bonobo_std_moniker_factory): idem. * monikers/bonobo-moniker-oaf.c (bonobo_moniker_oaf_resolve): idem. * monikers/bonobo-moniker-new.c (bonobo_moniker_new_resolve): idem. * monikers/bonobo-moniker-item.c (bonobo_moniker_item_resolve): idem. * monikers/bonobo-moniker-query.c (bonobo_moniker_query_resolve): idem. * monikers/bonobo-moniker-extender-stream.c (bonobo_stream_extender_resolve): Wrap g_warnings and g_messages in #ifdef G_ENABLE_DEBUG / #endif. 2003-02-18 Gustavo J. A. M. Carneiro * doc/api/tmpl/bonobo-item-handler.sgml: Corrected the BonoboItemHandler example to ref() the object being returned. * monikers/bonobo-moniker-extender-stream.c (bonobo_stream_extender_resolve): Replace a couple of invalid uses of g_warning with g_message. 2003-02-06 Christian Rose * configure.in: Added "id" to ALL_LINGUAS. 2003-02-05 Gustavo J. A. M. Carneiro * doc/api/libbonobo-docs.sgml: Include monikers-overview.xml. This file is a simple conversion of doc/Monikers from bonobo-1.x distribution. It was written quite some time ago, but most of it still applies and provides fascinating insight on bonobo moniker architecture. * doc/api/Makefile.am (content_files): Added monikers-overview.xml. 2003-02-03 Gustavo J. A. M. Carneiro * doc/api/libbonobo.hierarchy: Removed from version control, since it is a purely generated file. * doc/api/libbonobo.signals: Removed from version control, since it is a purely generated file. * doc/api/tmpl/bonobo-object.sgml: Removed the comment "if you are looking to implement a CORBA interface you want to see #BonoboXObject"; It doesn't make much sense since libbonobo 2.0. * doc/api/libbonobo-sections.txt: Removed the 'bonobo-transient' section. * doc/api/Makefile.am (HTML_IMAGES): Added unknown.png. * doc/api/tmpl/bonobo-object.sgml: Include figure with the Bonobo::Unknown interface. * doc/api/figures/Makefile.am (diagrams): Added unknown.dia. 2003-01-23 Thomas Vander Stichele * configure.in: fix aclocal maintainer mode 2003-01-22 Marius Andreiana * configure.in: added 'ro' to ALL_LINGUAS 2003-01-22 Christian Rose * configure.in: Added "mn" to ALL_LINGUAS. 2003-01-21 Gustavo J. A. M. Carneiro * doc/api/Makefile.am (SCAN_OPTIONS): Changed --deprecated-guards option value to BONOBO_DISABLE_DEPRECATED, as it should be. 2003-01-20 Michael Meeks * Version 2.2.0 * doc/Makefile.am (EXTRA_DIST): ship NAMESPACE * doc/api/Makefile.am (content_files): add misc. xml files. 2003-01-20 Pablo Saratxaga * configure.in: Added German (de), Farsi (fa), Macedonian (mk) and Dutch (nl) to ALL_LINGUAS 2003-01-18 Gustavo J. A. M. Carneiro * doc/api/libbonobo.types: Declare list of types of GObjecs to be scanned. * doc/api/Makefile.am: Enable scanning of GObjects for signals, parameters, and object hierarchy. * bonobo/bonobo-persist.h, bonobo/bonobo-storage-memory.h, bonobo/bonobo-item-container.h, bonobo/bonobo-moniker.h, bonobo/bonobo-listener.h, bonobo/bonobo-event-source.h, bonobo/bonobo-object.h, bonobo/bonobo-running-context.h: Split struct declaration from typedef, otherwise gtkdoc gets confused. 2003-01-16 Daniel Yacob * configure.in: added am to ALL_LINGUAS 2003-01-07 Gustavo J. A. M. Carneiro * doc/api/figures/*.png: Added the dia generated png files for those who don't have dia installed. * doc/api/figures/Makefile.am (%.png): Don't fail if dia is not installed. * doc/api/Makefile.am (EXTRA_DIST): Don't include $(HTML_IMAGES) in EXTRA_DIST, because they are already included in doc/api/figures/Makefile.am's EXTRA_DIST. (html-build.stamp): Don't fail when copying images to the html dir if the image files were not built. 2003-01-06 Gustavo J. A. M. Carneiro * doc/api/Makefile.am (dist-hook): Replace the 'sgml' directory with 'xml'. 2003-01-06 Julio Merino * doc/api/Makefile.am (all-local): Add fall-back in case of no gtk-doc. 2003-01-06 Frederic Crozat * samples/echo/Makefile.am: use $(libdir) instead of $(prefix)/lib, for x86-64 2003-01-06 Michael Meeks * bonobo/bonobo-arg.h (BONOBO_ARG_GET_GENERAL): make these conditional on __STRICT_ANSI__, and C++ thanks to James H. 2003-01-02 Gustavo J. A. M. Carneiro * doc/api/tmpl/bonobo-property-bag.sgml: Added a couple of 's to some examples. * bonobo/bonobo-types.c (bonobo_closure_invoke): Just added a space between '&' and 'retval', because libxml2 (invoked by xsltproc, invoked by gtk-doc) doesn't like & followed by letters followed by ';' very much. I think this is fixed by now, but I'm not sure... * configure.in: Require gtk-doc >= 0.10; Added doc/api/figures/Makefile to list of processed makefiles. * doc/api/libbonobo-docs.sgml: Changed SGML declaration to XML, with DocBook 4.1.2. Indented the whole file with xml-lite mode of Emacs (4 spaces basic offset). Created the following toplevel sections: General; Objects, Factories, Reference Counting; Property Bags, Events, Listeners; Monikers; Storages and Streams; Persistency; Miscellaneous. Moved the old sections into the appropriate toplevel section, based on topic. Also, added the new xml files and added the figures at appropriate places. * doc/simple-moniker-arguments.txt, api/tmpl/bonobo-item-handler.sgml: Included this documentation in api/tmpl/bonobo-item-handler.sgml. * doc/properties.txt, api/propertis.xml: Moved this documentation to api/properties.xml and converted to DocBook. * doc/refcounting.txt, api/refcounting.xml: Moved this documentation to api/refcounting.xml and converted to DocBook. * doc/debugging.txt, api/debugging.xml: Moved this documentation to api/debugging.xml and converted to DocBook. * doc/FAQ, api/faq.xml: Moved to api/faq.xml and converted to DocBook. * doc/api/Makefile.am: Everything below the comment '# Everything below here is generic #' has been replaced by that same section in the gtk-doc template Makefile.am. Also changed the MKDB_OPTIONS to generate xml instead of sgml, so gtk-doc uses the xslt-proc mode to generate html instead of jade, which makes this whole process a *lot* faster; In addition, declare 'figures' in SUBDIRS. 2002-12-31 Abel Cheung <maddog@linux.org.hk> * monikers/bonobo-moniker-oaf.c: Just 2 typo in translation string; nothing more. 2002-12-17 Gustavo J. A. M. Carneiro <gjc@inescporto.pt> * bonobo/bonobo-storage.h, * bonobo/bonobo-stream.h: add blurb on why these headers are deprecated, and how to do things now. 2002-11-28 Michael Meeks <michael@ximian.com> * Version 2.1.1 2002-11-28 Michael Meeks <michael@ximian.com> * bonobo/bonobo-i18n.h (bind_textdomain_codeset): undef before defining the non-NLS path macros, add bind_textdomain_codeset stub. 2002-11-22 Hidetoshi Tajima <hidetoshi.tajima@sun.com> * configure.in: check for bind_textdomain_codeset * bonobo/bonobo-main.c: use it. * monikers/bonobo-moniker-oaf.c: set explicit domain properly. 2002-11-22 Dan Mills <thunder@vximian.com> * configure.in: fixed gtk-doc check. 2002-11-10 Ole Laursen <olau@hardworking.dk> * configure.in: Added da to ALL_LINGUAS. 2002-11-09 Dmitry G. Mastrukov <dmitry@taurussoft.org> * configure.in: Added Belarusian to ALL_LINGUAS 2002-11-05 Michael Meeks <michael@ximian.com> * idl/Bonobo_Listener.idl: fix comments. 2002-11-01 Michael Meeks <michael@ximian.com> * Version 2.1.0 2002-10-28 Michael Meeks <michael@ximian.com> * bonobo/bonobo-object.c (bonobo_object_query_remote): helper wrapper for queryInterface. (get_unknown_unref_imethod): impl. (bonobo_object_release_unref): make these unrefs asynchronous for more speed. * tests/test-properties-client.c (create_bag_client): add test. * bonobo/bonobo-property-bag-client.c (bonobo_pbclient_set_value_async), (get_set_value_imethod): add from eel impl. * Branch for 2.1 2002-10-18 Michael Meeks <michael@ximian.com> * Version 2.0.1 2002-10-10 Kjartan Maraas <kmaraas@gnome.org> * bonobo/bonobo-exception.c (bonobo_exception_general_error_set): Plug a leak. Fixes #95359. 2002-09-30 Stanislav Brabec <sbrabec@suse.cz> * configure.in: Added cs to ALL_LINGUAS. 2002-09-24 hhetter@suse.de * bonobo/*.c: replace teminating GType '0' in var-arg argument lists with G_TYPE_INVALID, for 64bit safety. 2002-09-24 Padraig O'Briain <padraig.obriain@sun.com> * bonobo/bonobo-main.c: Change bonobo_inited from boolean to int. (bonobo_is_initialized): Update to take account that bonobo_inited is not an int. (bonobo_debug_shutdown): Do shutdown only if bonobo_inited is 1 (bonobo_init_full): Increment bonobo_inited each time the function is called. These changes allow bonobo_init() to be called many times and objects will be destroyed only after the same number of calls to bonobo_debug_shutdown() are made. This fixes bug 92864. 2002-09-23 Michael Meeks <michael@ximian.com> * tests/Makefile.am (LDADD): add LIBBONOBO_LIBS. 2002-09-19 Padraig O'Briain <padraig.obriain@sun.com> * samples/echo/Makefile.am: Add CLEANFILES so that make clean deletes Bonobo_Sample_echo.server and Bonobo_Sample_echo.server.in 2002-09-02 Peteris Krisjanis <peteris.krisjanis@os.lv> * configure.in: Added Latvian (lv) to ALL_LINGUAS 2002-08-17 Simos Xenitellis <simos@hellug.gr> * configure.in: Added el to ALL_LINGUAS 2002-07-31 Michael Meeks <michael@ximian.com> * bonobo/bonobo-persist-file.h: fix docs for Michael Wilson. 2002-07-26 Gustavo Noronha Silva <kov@beterraba> * configure.in: added pt_BR to ALL_LINGUAS 2002-06-18 Mark McLoughlin <mark@skynet.ie> * idl/Bonobo_Control.idl: add comment on the format of cookie arg to Control::getWindowId. 2002-06-11 Michael Meeks <michael@ximian.com> * configure.in (gnomelocaledir): setup. 2002-06-01 Michael Meeks <michael@ximian.com> * Version 2.0.0 2002-06-01 Michael Meeks <michael@ximian.com> * configure.in: upd, require ORBit2-2.4.0, bonobo-activation-1.0. * bonobo/Makefile.am: kill PLUGIN_DIR add LDFLAGS bits. * bonobo/bonobo-object.h: add dummy padding. * idl/*.idl: add dummy padding. 2002-05-27 Gustavo Giráldez <gustavo.giraldez@gmx.net> * configure.in: add a --enable-debug parameter to compile the debugging code. 2002-05-27 Michael Meeks <michael@ximian.com> * Version 1.117.1 2002-05-27 Michael Meeks <michael@ximian.com> * idl/Bonobo_Persist.idl: make it more clear that PersistFile actually passes URIs. 2002-05-20 Michael Meeks <michael@ximian.com> * bonobo/bonobo-event-source.c (bonobo_event_source_finalize): prune code and move it (bonobo_event_source_destroy): here, tear down the listeners earlier. * bonobo/bonobo-listener.c (bonobo_listener_destroy): impl. so we don't fire events after destroy. (bonobo_listener_class_init): upd. 2002-05-20 Michael Meeks <michael@ximian.com> * Version 1.117.0 * configure.in: remove message-of-doom * bonobo/bonobo-debug.c (bonobo_debug_init): change env. var to BONOBO_DEBUG, to be consistant with GOBJECT, ORBIT2 etc. 2002-05-16 Michael Meeks <michael@ximian.com> * doc/NAMESPACE: add GNOME_AbiWord 2002-05-13 Jaka Mocnik <jaka@gnu.org> * bonobo/bonobo-debug.[ch]: debugging print function and parsing of environment variables BONOBO_DEBUG_FLAGS and BONOBO_DEBUG_DIR in order to determine the desired debugging output. * bonobo/Makefile.am: compile the new source file. * bonobo/bonobo-object.c, bonobo/bonobo-running-context.c: instead of conditionally compiling the debugging code, compile it always, but only execute it if the appropriate debugging flags are set. 2002-05-10 Pablo Saratxaga <pablo@mandrakesoft.com> * configure.in: Added Vietnamese (vi) to ALL_LINGUAS 2002-04-29 Anders Carlsson <andersca@gnu.org> * Release 1.116.0 2002-04-19 jacob berkman <jacob@ximian.com> * COPYING: add 2002-04-16 Richard Kinder <r_kinder@yahoo.com> * bonobo/bonobo-stream-client.c (bonobo_stream_client_read): use g_try_malloc instead. 2002-04-12 Michael Meeks <michael@ximian.com> * Version 1.115.0 2002-03-31 Havoc Pennington <hp@pobox.com> * tests/test-stream-mem.c (test_read_write): trivial fix for non-buildage introduced by Murray's previous change. Bad Murray! (s/BONOBO_SEEK_CUR/SeekCur/) 2002-03-31 Murray Cumming <murrayc@usa.net> * idl/Bonobo_Storage.idl: The Bonobo::Stream::Unknown::SeekType enum values are now e.g. SeekCur instead of SEEK_CUR. This was necessary because these values are already in #define macros in the global C namespace, somewhere in stdio.h. 2002-03-21 Stephane Demurget <demurgets@free.fr> * bonobo/bonobo-event-source.c (bonobo_event_source_has_listener): efficiency fix. 2002-03-18 Michael Meeks <michael@ximian.com> * Version 1.113.0 2002-03-15 Michael Meeks <michael@ximian.com> * bonobo/bonobo-event-source.c (bonobo_event_source_has_listener): impl. 2002-03-11 Changwoo Ryu <cwryu@debian.org> * configure.in: Added 'ko' to ALL_LINGUAS. 2002-03-05 Michael Meeks <michael@ximian.com> * doc/api/tmpl/bonobo-macros.sgml: mend. * bonobo/bonobo-types.c (bonobo_corba_object_type_register_static): ignore is_bonobo_unknown, we don't use this information and trust the user to do the Bonobo referencing right, or we're going to get lots of inefficiency from the way GValue works, particularly we need a 'take ownership' semantic for return values. Update throught to follow this convention. Assume CORBA_Object_duplicate is sane. (bonobo_closure_invoke): fix leak with return type - by using g_value_unset and a full copy. (corba_any_copy): remove debug, yes this inefficiency sucks - we never called this before. 2002-02-27 Mark McLoughlin <mark@skynet.ie> * idl/Bonobo_Listener.idl: kill unused ListenerId typedef. * doc/debugging.txt: update ORBit2 debugging blurb. 2002-02-22 Michael Meeks <michael@ximian.com> * bonobo/bonobo-moniker-simple.c: make the parent_class static ! 2002-02-19 Michael Meeks <michael@ximian.com> * Version 1.112.0 2002-02-17 Michael Meeks <michael@ximian.com> * bonobo/bonobo-types.c (bonobo_closure_invoke_va_list): free the params array after use - doh. 2002-02-18 Gediminas Paulauskas <menesis@delfi.lt> * configure.in: remove GNOME_COMMON_INIT, GNOME_PLATFORM_GNOME_2 macros to match latest gnome-common. 2002-02-17 jacob berkman <jacob@ximian.com> * bonobo/bonobo-stream-memory.h (bonobo_stream_mem_create): return a BonoboObject instead of the deprecated BonoboStream typedef. 2002-02-15 Michael Meeks <michael@ximian.com> * bonobo/Makefile.am: add disable deprecated flag. 2002-02-14 Michael Meeks <michael@ximian.com> * bonobo/bonobo-object.h (bonobo_object_ref): kill bogus G_STMT_START/END in the OBJECT_DEBUG bits. * bonobo/bonobo-object.c (bonobo_object_unref, bonobo_object_idle_unref), (bonobo_object_trace_refs, bonobo_object_ref): take a gpointer instead of a BonoboObject, to follow glib - reduces type casting without any checking relaxation. 2002-02-11 Michael Meeks <michael@ximian.com> * bonobo/bonobo-stream-memory.c (bonobo_stream_mem_create): return a BonoboObject instead of the deprecated BonoboStream typedef. 2002-02-11 Zbigniew Chyla <cyba@gnome.pl> * configure.in (ALL_LINGUAS): Added pl (Polish). 2002-02-11 Michael Meeks <michael@ximian.com> * Version 1.111.0 2002-02-11 Michael Meeks <michael@ximian.com> * bonobo/bonobo-storage.h: * bonobo/bonobo-xobject.h: * bonobo/bonobo-persist-file.h: * bonobo/bonobo-persist-stream.h: add deprecated helpers where appropriate. 2002-02-09 Pauli Virtanen <ptvirtan@cc.hut.fi> * configure.in (ALL_LINGUAS): Added "fi" (Finnish). 2002-02-08 Mark McLoughlin <mark@skynet.ie> * bonobo/bonobo-item-handler.c: (bonobo_item_options_free): fix leak. 2002-02-07 Michael Meeks <michael@ximian.com> * bonobo/bonobo-moniker-util.c (moniker_id_from_nickname): ditto. * bonobo/bonobo-main.c (bonobo_main), (bonobo_main_quit): port fully. * bonobo/bonobo-moniker.c (impl_equal): ditto. 2002-02-04 Michael Meeks <michael@ximian.com> * bonobo/bonobo-property-bag.h (BONOBO_PROPERTY_WRITABLE): add for people who like sueing other people. 2002-02-01 Tomasz K³oczko <kloczek@pld.org.pl> * monikers/Makefile.am: small fix for automake 1.5. 2002-01-29 Michael Meeks <michael@ximian.com> * Version 1.110.0 2002-01-28 Alexander Shopov <al_shopov@web.bg> * configure.in (ALL_LINGUAS): Added "bg" (Bulgarian). 2002-01-27 Emese Kovacs <emese@gnome.hu> * configure.in: Added Hungarian to ALL_LINGUAS 2002-01-21 Michael Meeks <michael@ximian.com> * bonobo/bonobo-generic-factory.c (bonobo_generic_factory_destroy): don't unregister if noreg is set. (bonobo_generic_factory_construct_noreg): set noreg. (bonobo_generic_factory_init): upd. (bonobo_generic_factory_construct): upd. 2002-01-21 Michael Meeks <michael@ximian.com> * idl/Bonobo_UI.idl: setAttr needs a component_name. * configure.in: bump version to 1.109.1 2002-01-18 Michael Meeks <michael@ximian.com> * bonobo/bonobo-object.c (bonobo_object_add_interface): correct aggregate ref count debug. 2002-01-17 Rodrigo Moya <rodrigo@gnome-db.org> * doc/api/tmpl/bonobo-object.sgml: * doc/api/tmpl/bonobo-xobject.sgml: changed to reflect the current situation with those 2 classes for libbonobo-2.0 2002-01-16 Johan Dahlin <jdahlin@telia.com> * monikers/Makefile.am: Link libmoniker_std.so against bonobo/libbonobo-2.la to make python, which open dynamic libraries with RTLD_GLOBAL flag to dlopen, happy. 2002-01-15 Darin Adler <darin@bentspoon.com> * bonobo/Makefile.am: * idl/Makefile.am: Missed a few spots when changing __BONOBO_COMPILATION to __Bonobo_COMPILATION. 2002-01-15 Johan Dahlin <jdahlin@telia.com> * idl/Bonobo.idl: change __BONOBO_COMPILATION to __Bonobo_COMPILATION, so we use the same 'schema' as in bonobo-activation's idls. * idl/Bonobo_Moniker.idl: include Bonobo_Activation_types.idl since we're using GeneralError from that file. 2002-01-10 Michael Meeks <michael@ximian.com> * Version 1.109.0 2002-01-09 Michael Meeks <michael@ximian.com> * bonobo/bonobo-moniker-util.c: add GNOME_Moniker_Config shortcut. 2002-01-10 Mark McLoughlin <mark@skynet.ie> * bonobo/bonobo-moniker-util.c: (bonobo_moniker_util_parse_name): kill debug. 2002-01-08 Michael Meeks <michael@ximian.com> * bonobo/bonobo-types.c (bonobo_value_set_corba_typecode): impl. (bonobo_value_set_corba_object): impl. (bonobo_value_set_corba_environment): impl. 2002-01-08 Michael Meeks <michael@ximian.com> * bonobo/libbonobo-2.0.pc.in (idlinclude): add. 2002-01-07 Michael Meeks <michael@ximian.com> * bonobo/bonobo-types.h (BONOBO_TYPE_UNKNOWN): remove the SIGNAL_STATIC_SCOPE from the standard BONOBO_TYPE_whatevers, _Everyone_ should use BONOBO_TYPE_STATIC_... for their signal arguments, sigh, moan, groan - this should be the default. (BONOBO_TYPE_STRING): nice idea Martin - sadly has to go. * bonobo/bonobo-generic-factory.c (bonobo_generic_factory_new_generic): upd. to new type scheme. * bonobo/bonobo-item-container.c (bonobo_item_container_class_init): ditto. * bonobo/bonobo-moniker-simple.c (simple_resolve): ditto. * bonobo/bonobo-listener.c (bonobo_listener_class_init): ditto. * bonobo/bonobo-generic-factory.c (bonobo_generic_factory_new_generic): ditto. 2002-01-05 Mikael Hallendal <micke@codefactory.se> * doc/NAMESPACE (subdomains): added Yelp 2002-01-04 Michael Meeks <michael@ximian.com> * bonobo/bonobo-event-source.c (bonobo_event_source_notify_listeners): add precondition. 2002-01-02 Michael Meeks <michael@ximian.com> * idl/Bonobo_UI.idl: make deregisterComponent oneway. 2002-01-03 John Fleck <jfleck@inkstain.net> * configure.in, Makefile.am, doc/Makefile.am, doc/api/Makefile.am doc/api/libbonobo-decl-list.txt doc/api/libbonobo-decl.txt doc/api/libbonobo-docs.sgml doc/api/libbonobo-sections.txt doc/api/libbonobo-undocumented.txt doc/api/libbonobo-unused.txt doc/api/libbonobo.args doc/api/libbonobo.hierarchy doc/api/libbonobo.signals doc/api/tmpl/*.sgml adding gtk-doc api documentation infrastructure. 2002-01-03 Anders Carlsson <andersca@gnu.org> * bonobo/bonobo-generic-factory.c (bonobo_generic_factory_construct_noreg): Allow a NULL factory_closure argument. (bonobo_generic_factory_destroy): Unregister the server in destroy instead of finalize since the CORBA Object has been destroyed in the finalize handler. 2001-12-30 Anders Carlsson <andersca@gnu.org> * bonobo/bonobo-generic-factory.c (bonobo_generic_factory_finalize): Don't unref the factory_closure if it hasn't been created. 2002-01-03 jacob berkman <jacob@ximian.com> * bonobo/bonobo-property-bag.c (bonobo_property_bag_map_params): use g_param_spec_get_(name|nick|blurb) to get the property name, doc title, and dock string 2002-01-02 Jens Finke <jens@triq.net> * bonobo/bonobo-item-container.c (bonobo_item_container_class_init): Set struct offset with G_STRUCT_OFFSET, use bonobo_unknown_get_type as return value type. 2001-12-27 Duarte Loreto <happyguy_pt@hotmail.com> * configure.in: Added portuguese to ALL_LINGUAS 2001-12-27 Jesus Bravo Alvarez <jba@pobox.com> * configure.in: Added gl (Galician) to ALL_LINGUAS. 2001-12-23 Takayuki KUSANO <AE5T-KSN@asahi-net.or.jp> * configure.in: Added "ja" to ALL_LINGUAS. 2001-12-21 Michael Meeks <michael@ximian.com> * idl/Bonobo_Control.idl: add getParentAccessible for Bill, in place of unImplemented3 - no ABI impact. 2001-12-17 Darin Adler <darin@bentspoon.com> * bonobo/bonobo-generic-factory.c: (bonobo_generic_factory_finalize): Add null check. 2001-12-17 Mark McLoughlin <mark@skynet.ie> * bonobo/bonobo-item-handler.c: (bonobo_marshal_POINTER__DUMMY_BOXED), (bonobo_marshal_BOXED__STRING_BOOLEAN_DUMMY_BOXED): actually pass the user_data argument to the callback. 2001-12-14 Mark McLoughlin <mark@skynet.ie> * bonobo/bonobo-item-handler.c: (bonobo_item_option_new_append): impl. (bonobo_item_option_parse): re-write to handle corner cases better and be more readable. 2001-12-14 Mark McLoughlin <mark@skynet.ie> * bonobo/bonobo-item-handler.c: (bonobo_item_handler_finalize), (bonobo_item_handler_construct), (bonobo_item_handler_new): tolerate NULL get_object and enum_objects callbacks/closures. 2001-12-14 Mark McLoughlin <mark@skynet.ie> * bonobo/bonobo-event-source.h, bonobo/bonobo-generic-factory.h, bonobo/bonobo-item-container.h, bonobo/bonobo-item-handler.h, bonobo/bonobo-listener.h, bonobo/bonobo-moniker-extender.h, bonobo/bonobo-moniker-simple.h, bonobo/bonobo-moniker.h, bonobo/bonobo-object.h, bonobo/bonobo-persist-file.h, bonobo/bonobo-persist-stream.h, bonobo/bonobo-persist.h, bonobo/bonobo-property-bag.h, bonobo/bonobo-shlib-factory.h, bonobo/bonobo-storage-memory.h, bonobo/bonobo-stream-memory.h, bonobo/bonobo-transient.h, bonobo/bonobo-xobject.h, monikers/bonobo-moniker-query.h, monikers/bonobo-stream-cache.h: kill C++ style comments. 2001-12-13 Michael Meeks <michael@ximian.com> * bonobo/bonobo-object.c (bonobo_object_ref), (bonobo_object_unref, bonobo_object_trace_refs), (bonobo_object_instance_init): keep track of total number of refs overall always. (bonobo_object_shutdown): upd. printout. 2001-12-11 Michael Meeks <michael@ximian.com> * Version 1.108.0 2001-12-08 Michael Meeks <michael@ximian.com> * bonobo/bonobo-moniker.c (impl_resolve): make the failure more chatty. * bonobo/bonobo-exception.c: fix exception translation. * monikers/bonobo-moniker-oaf.c (bonobo_moniker_oaf_resolve): return some friendly activation type errors. * idl/Bonobo_Moniker.idl: return GeneralError from resolves. * doc/*: move documents across from bonobo 1.0, particularly NAMESPACE is now canonicaly here. 2001-12-06 Michael Meeks <michael@ximian.com> * bonobo/bonobo-object.c (bonobo_object_ref), (bonobo_object_unref): only alter the ref count if we're not immortal. 2001-12-07 Rodrigo Moya <rodrigo@gnome-db.org> * samples/echo/Makefile.am: * samples/echo/Bonobo_Sample_Echo.server.in.in: install components in $(prefix)/lib/bonobo-2.0/samples 2001-12-08 Abel Cheung <maddog@linux.org.hk> * configure.in: Fix typo in GETTEXT_PACKAGE. 2001-11-28 jacob berkman <jacob@ximian.com> * tests/Makefile.am (TESTS_ENVIRONMENT): prepend our new paths rather than replace them 2001-11-26 Michael Meeks <michael@ximian.com> * Version 1.107.0 * configure.in: bump reqs. 2001-11-23 Michael Meeks <michael@ximian.com> * bonobo/bonobo-main.c (bonobo_init_full): cope with NULL argc. * tests/test-moniker.c (main): regression test. 2001-11-19 Michael Meeks <michael@ximian.com> * bonobo/bonobo-object.c (do_corba_setup): prune the wasteful: CORBA_free (PortableServer_POA_activate_object ( bonobo_poa (), &object->servant, &ev)); for a speedup; assumes our POA supports implicit activation. Tue Nov 20 21:14:15 2001 Owen Taylor <otaylor@redhat.com> * bonobo/bonobo-arg.[ch] bonobo/bonobo-event-source.h bonobo/bonobo-generic-factory.[ch] bonobo/bonobo-item-container.c bonobo/bonobo-item-container.h bonobo/bonobo-item-handler.h bonobo/bonobo-listener.[ch] bonobo/bonobo-object.h bonobo/bonobo-property-bag.h bonobo/bonobo-types.c: Remove unnecessary and soon to be disallowed includes of gobject/*.h. 2001-11-19 Michael Meeks <michael@ximian.com> * bonobo/bonobo-types.h: include glib-object.h * libbonobo.h: include bonobo-types.h * bonobo/Makefile.am: don't install the bonobo marshallers - new glib policy. 2001-11-14 Michael Meeks <michael@ximian.com> * idl/Bonobo_UI.idl: add 'unimplemented' methods. 2001-11-18 Miles Lane <miles@megapathdsl.net> * bonobo/bonobo-event-source.c bonobo/bonobo-generic-factory.c bonobo/bonobo-item-container.c bonobo/bonobo-item-handler.c bonobo/bonobo-listener.c bonobo/bonobo-main.h bonobo/bonobo-moniker-context.c bonobo/bonobo-object.c bonobo/bonobo-persist-file.c bonobo/bonobo-persist-stream.c bonobo/bonobo-persist.c bonobo/bonobo-running-context.c bonobo/bonobo-shlib-factory.c bonobo/bonobo-shlib-factory.h bonobo/bonobo-types.c tests/test-properties-server.c : replace occurances of gobject/[gobject, gsignal, gvalue, gvaluearray].h with glib-object.h, due to a change in these include files that forces an #error for all direct includes. This checkin was approved by Havoc. 2001-11-14 Michael Meeks <michael@ximian.com> * idl/Bonobo_Control.idl: include Bonobo_UI.idl rename getUIHandler to getUIContainer. add getWindowId, update setFrame, add add unImplemented placeholders. 2001-11-14 Michael Meeks <michael@ximian.com> * libbonobo.h: include bonobo-macros.h * bonobo/bonobo-object.h: move new macros into * bonobo/bonobo-macros.h: here; create & pull in GNOME_BOILERPLATE bits -> BONOBO_BOILERPLATE. * bonobo/Makefile.am: add bonobo-macros.h 2001-11-12 Darin Adler <darin@bentspoon.com> * bonobo/bonobo-object.h: Add BONOBO_CLASS_BOILERPLATE and BONOBO_CLASS_BOILERPLATE_FULL, which are Bonobo versions of GNOME_CLASS_BOILERPLATE. 2001-11-09 Michael Meeks <michael@ximian.com> * bonobo/bonobo-object.c (bonobo_object_finalize_gobject): add debug to stop people getting ref counting mixed up. 2001-11-09 ERDI Gergo <cactus@cactus.rulez.org> * bonobo/bonobo-storage-memory.c (smem_rename_impl): (smem_open_stream_impl): (smem_open_storage_impl): Do proper ref/unref stuff (you have to bonobo_object_release_unref the return value of openStream/openStorage) 2001-11-07 ERDI Gergo <cactus@cactus.rulez.org> * bonobo/bonobo-storage-memory.c (split_path): use new GLib g_strsplit API * tests/test-storage-mem.c: more intelligent counting of number of tests 2001-11-08 Michael Meeks <michael@ximian.com> * idl/Bonobo_UI.idl: more spelling fixage from Darin. * bonobo/bonobo-exception.c (bonobo_exception_repoid_to_text): upd. 2001-11-08 Michael Meeks <michael@ximian.com> * idl/Bonobo_UI.idl: spelling fix from Darin. 2001-11-06 Michael Meeks <michael@ximian.com> * bonobo/bonobo-moniker-simple.c (simple_finalize): chain to parent correctly. (bonobo_moniker_simple_class_init): setup parent. * bonobo/bonobo-main.c (bonobo_init_full): init glib with G_TYPE_DEBUG_OBJECTS. 2001-11-06 Michael Meeks <michael@ximian.com> * idl/Bonobo_UI.idl: Add NonExistantAttr for Darin. 2001-11-05 Michael Meeks <michael@ximian.com> * tests/test-storage-mem.c (main): fixup remaining tests, reflow, some seds, check all passed. * tests/Makefile.am (TESTS): add test-storage-mem. 2001-11-02 Michael Meeks <michael@ximian.com> * Version 1.106.0 2001-11-01 Michael Meeks <michael@ximian.com> * idl/Bonobo_Control.idl: kill getWindowId, return the Id the other way round - from setFrame. add getAccessible. 2001-11-01 Michael Meeks <michael@ximian.com> * bonobo/bonobo-object.h (bonobo_object_fast): impl. ultra fast method for casting an unknown servant / object to an BonoboObject. Make bonobo_object_from_servant faster too. 2001-11-01 Michael Meeks <michael@ximian.com> * bonobo/bonobo-moniker.c: big picture: remove double virtualization of lots of things. (impl_get_parent, impl_set_parent): upd. (bonobo_moniker_default_get_name): fold into (impl_get_name): here. (bonobo_moniker_default_set_name): fold into (impl_set_name): here. (bonobo_moniker_default_equal): fold into (impl_equal): here. (impl_bonobo_moniker_set_internal_name): remove debug. * bonobo/bonobo-storage-memory.c: radicaly re-organize. * bonobo/bonobo-storage-memory.h: remove bogus & inefficient double virtualization. 2001-11-01 Michael Meeks <michael@ximian.com> * bonobo/bonobo-object.c (bonobo_object_ref): tolerate NULL silently. (bonobo_object_unref): ditto & return NULL. (bonobo_object_trace_refs): upd. (bonobo_object_unref): fixup. (bonobo_object_release_unref): make symmetrical. * tests/test-object.c (main): upd. 2001-11-01 Michael Meeks <michael@ximian.com> * bonobo/bonobo-main.c (bonobo_shutdown): rename to (bonobo_debug_shutdown): to please Maciej, upd to use the new bonobo_activation shutdown API. 2001-10-30 jacob berkman <jacob@ximian.com> * bonobo/libbonobo-2.0.pc.in (Cflags): * bonobo/Makefile.am (libbonoboincludedir): * Makefile.am (libincludedir): put headers in libbonobo-2.0 rather than gnome-2.0 2001-10-31 Michael Meeks <michael@ximian.com> * bonobo/bonobo-object.c (bonobo_unknown_ping): hold a CORBA ref on the object over the two methods we invoke, thanks to Ettore. 2001-10-31 Michael Meeks <michael@ximian.com> * bonobo/bonobo-moniker-simple.c (simple_resolve): make the return value SIGNAL_TYPE_STATIC * bonobo/bonobo-types.c (corba_object_proxy_lcopy_value): if G_BALUE_NOCOPY_CONTENTS, then just blit the pointer across instead of erroneously dupping; a pain to get this one. * bonobo/bonobo-object.c (bonobo_object_shutdown): return error status. * bonobo/bonobo-main.c (bonobo_shutdown): use error status. * bonobo/bonobo-generic-factory.c (bonobo_generic_factory_main): do an auto-exit unref on the factory. 2001-10-31 Michael Meeks <michael@ximian.com> * bonobo/bonobo-object.c (bonobo_object_class_init): fixup signal definition. (bonobo_object_check_env): fixup signal emission. (bonobo_marshal_VOID__CORBA_BOXED): impl. * bonobo/bonobo-types.c: use new ORB methods for exception handling. * tests/test-object.c (system_exception_cb): impl. (main): test bonobo_check_env. 2001-10-30 Michael Meeks <michael@ximian.com> * bonobo/bonobo-object.c (bonobo_object_ref): return the object you just reffed. * idl/Bonobo_Control.idl: getDesiredSize, return a Gtk::Requisition, update WindowId bits. add getToplevelId - to avoid ugly property hacks. Move State to Gtk. Make all 'set' methods oneway. * idl/Bonobo_Canvas.idl: Split out Gdk bits into: * idl/Bonobo_Gdk.idl: Add & add Gtk::Requisition. move windowId into here. 2001-10-29 jacob berkman <jacob@ximian.com> * monikers/Makefile.am (server_DATA): s/XML_I18N_TOOLS/INTLTOOL/ * bonobo/bonobo-main.c (bonobo_init_full): * bonobo/bonobo-exception.c (GNOME_EXPLICIT_TRANSLATION_DOMAIN): use GETTEXT_PACKAGE * configure.in: package is "libbonobo" not "libbonobo2", intltoolize, use AM_GLIB_GNU_GETTEXT, and set GETTEXT_PACKAGE * acconfig.h: add GETTEXT_PACKAGE * Makefile.am (EXTRA_DIST): dist intltool things instead of xml-i18n-foo 2001-10-29 Seth Nickell <snickell@stanford.edu> * monikers/bonobo-moniker-query.h: * monikers/bonobo-stream-cache.c: (bonobo_stream_cache_get_type): * monikers/bonobo-stream-cache.h: Run the magic scripts in the monikers directly too :-) 2001-10-28 Seth Nickell <snickell@stanford.edu> * bonobo/bonobo-event-source.c: (bonobo_event_source_new): * bonobo/bonobo-event-source.h: * bonobo/bonobo-generic-factory.c: (bonobo_generic_factory_new_generic): * bonobo/bonobo-generic-factory.h: * bonobo/bonobo-item-container.c: * bonobo/bonobo-item-container.h: * bonobo/bonobo-item-handler.c: (impl_enum_objects), (impl_get_object): * bonobo/bonobo-item-handler.h: * bonobo/bonobo-listener.c: (impl_Bonobo_Listener_event), (bonobo_listener_new_closure): * bonobo/bonobo-listener.h: * bonobo/bonobo-moniker-context.c: * bonobo/bonobo-moniker-extender.c: * bonobo/bonobo-moniker-extender.h: * bonobo/bonobo-moniker-simple.c: (simple_resolve): * bonobo/bonobo-moniker-simple.h: * bonobo/bonobo-moniker.c: * bonobo/bonobo-moniker.h: * bonobo/bonobo-object.c: (bonobo_object_class_init): * bonobo/bonobo-object.h: * bonobo/bonobo-persist-file.c: * bonobo/bonobo-persist-file.h: * bonobo/bonobo-persist-stream.c: * bonobo/bonobo-persist-stream.h: * bonobo/bonobo-persist.c: * bonobo/bonobo-persist.h: * bonobo/bonobo-property-bag.c: (impl_Bonobo_PropertyBag_getValue), (impl_Bonobo_PropertyBag_getValues), (impl_Bonobo_PropertyBag_setValue), (impl_Bonobo_PropertyBag_setValues), (bonobo_property_bag_new_full): * bonobo/bonobo-property-bag.h: * bonobo/bonobo-running-context.c: * bonobo/bonobo-shlib-factory.c: * bonobo/bonobo-shlib-factory.h: * bonobo/bonobo-storage-memory.c: * bonobo/bonobo-storage-memory.h: * bonobo/bonobo-stream-memory.c: (bonobo_stream_mem_get_type): * bonobo/bonobo-stream-memory.h: * bonobo/bonobo-transient.c: (bonobo_transient_new): * bonobo/bonobo-transient.h: * bonobo/bonobo-xobject.h: Convert Bonobo TYPE macros from: BONOBO_..._TYPE to BONOBO_TYPE_... Add #defines to the old style for compatibility, but add a magic comment so its easy to remove them in the future. See also: http://www.stanford.edu/~snickell/bonobo_type_convert.pl (converts source code to use the new macros) 2001-10-30 Michael Meeks <michael@ximian.com> * libbonobo.h: add bonobo-stream-mem.h, bonobo-storage-memory.h * bonobo/bonobo-object.c (bonobo_object_query_local_interface): no point in a virtual query_interface, we have that with the epv overriding, kill wierd mess. (bonobo_object_get_local_interface_from_objref): kill convoluted mess. 2001-10-27 Michael Meeks <michael@ximian.com> * idl/Bonobo_Control.idl: make activateURI and queueResize oneway methods. 2001-10-27 Dirk-Jan C. Binnema <djcb@djcbsoftware.nl> * bonobo/bonobo-moniker.c (bonobo_moniker_default_equal): fix leak. 2001-10-27 Michael Meeks <michael@ximian.com> * tests/test-properties-client.c (print_props): release the typecode. * bonobo/bonobo-object.c (bonobo_object_corba_deactivate): remove stale code. * bonobo/bonobo-main.c (bonobo_shutdown): unref the ORB after the destroy. (bonobo_shutdown): release bonobo-activation's context, add support for moving this code into bonobo-activation. 2001-10-25 jacob berkman <jacob@ximian.com> * idl/Makefile.am (Bonobo_module_la_LDFLAGS): also pass -avoid-version 2001-10-26 Michael Meeks <michael@ximian.com> * bonobo/bonobo-shlib-factory.h: remove prototypes I forgot. 2001-10-26 Michael Meeks <michael@ximian.com> * bonobo/bonobo-object.c (bonobo_object_instance_init). (bonobo_object_finalize_internal): keep track of total number of aggregate objects. (bonobo_object_init): setup the mutex. (bonobo_object_shutdown): always warn if we leaked. * tests/test-event-source.c (run_tests): fix ref. leak. * tests/test-properties-server.c (main): fix leaking context. * bonobo/bonobo-shlib-factory.c (bonobo_shlib_factory_new_generic): unref ourself after object creation, so we don't leave cruft lying around. (bonobo_shlib_factory_get_type): kill, replace with macro that does correct inheritance. (bonobo_shlib_factory_inc_live), (bonobo_shlib_factory_dec_live_cb), (bonobo_shlib_factory_dec_live), (bonobo_shlib_factory_track_object): kill. * bonobo/bonobo-generic-factory.c (impl_Bonobo_ObjectFactory_createObject): protect the maintainer. 2001-10-26 Michael Meeks <michael@ximian.com> * bonobo/bonobo-storage-memory.c: use NULL not 0 for pointers. (smem_open_stream): fix fatal bug. * bonobo/bonobo-main.c (bonobo_shutdown): release the poa_manager and the poa. 2001-10-26 Michael Meeks <michael@ximian.com> * idl/Makefile.am (orbittypelibdir): move type library into the orbit-2.0 prefix. * bonobo/bonobo-exception.c (bonobo_exception_shutdown): fix warning. 2001-10-26 Michael Meeks <michael@ximian.com> * bonobo/bonobo-running-context.c (bonobo_running_context_shutdown): don't unref a ref we don't own. * bonobo/bonobo-property-bag-client.c (unref_default_bag): rename (bonobo_property_bag_shutdown): to this. remove locking. (get_default_bag): only do locking where neccessary for speed. * bonobo/bonobo-object.c (bonobo_object_tracking_shutdown): rename to (bonobo_object_shutdown): this & publicise. * bonobo/bonobo-running-context.c (running_info_destroy): rename to (bonobo_running_context_shutdown): this. * bonobo/Makefile.am (noinst_HEADERS): add bonobo-shutdown.h * bonobo/bonobo-main.c (bonobo_is_initialized): doc. (bonobo_shutdown): impl. ( a start at least ) * bonobo/bonobo-generic-factory.c (bonobo_generic_factory_main): use bonobo_shutdown. * tests/test-stream-mem.c, tests/test-properties-server.c, tests/test-properties-client.c, tests/test-object.c, tests/test-event-source.c, tests/test-moniker.c (main): Add bonobo_shutdown. * tests/test-storage-mem.c (main): clean coding style & shutdown 2001-10-26 Michael Meeks <michael@ximian.com> * tests/test-object.c (main): disable a test breaking ORB encapsulation. * bonobo/bonobo-shlib-factory.c (bonobo_shlib_factory_construct): use the noreg constructor - we don't register shlib servers. s/oaf_/act_/ * bonobo/bonobo-generic-factory.c: s/oaf_iid/act_iid/ clean up documentation. (bonobo_generic_factory_construct_noreg): impl. (bonobo_generic_factory_construct): use it. 2001-10-24 jacob berkman <jacob@ximian.com> * bonobo/bonobo-shlib-factory.h: remove duplicate BONOBO_OAF_SHLIB_FACTORY_MULTI macro 2001-10-24 Michael Meeks <michael@ximian.com> * monikers/bonobo-moniker-std.c: upd. * bonobo/bonobo-generic-factory.h (BONOBO_OAF_FACTORY): rename to (BONOBO_ACTIVATION_FACTORY): and add compat macros, use the generic_factory_main method, not a load of inline code. * bonobo/bonobo-generic-factory.c (bonobo_generic_factory_main): impl. * bonobo/bonobo-shlib-factory.h (BONOBO_ACTIVATION_SHLIB_FACTORY): similar renames. * bonobo/bonobo-shlib-factory.c (bonobo_shlib_factory_std): impl. 2001-10-21 jacob berkman <jacob@ximian.com> * bonobo/bonobo-generic-factory.c (bonobo_generic_factory_construct): always return NULL if we don't successfully register with bonobo-activation 2001-10-20 Michael Meeks <michael@ximian.com> * bonobo/bonobo-arg.c (bonobo_arg_type_to_gtype), (bonobo_arg_type_from_gtype): quiet debug. * bonobo/bonobo-property-bag.c (bonobo_property_bag_new): tolerate NULL callbacks. (bonobo_property_bag_map_params): don't free pspecs we don't own. (bonobo_property_bag_foreach_remove_prop): only unref if callbacks're not NULL. (bonobo_property_bag_finalize): ditto. 2001-10-18 Michael Meeks <michael@ximian.com> * bonobo/bonobo-object.c (bonobo_object_dump_interfaces): re-write not to poke at obj->type_id. * tests/test-moniker.c (check_string): test 'equal' as well. 2001-10-18 Michael Meeks <michael@ximian.com> * bonobo/bonobo-property-bag.c (bonobo_property_bag_add_gtk_args): rename to (bonobo_property_bag_map_params): this & re-hash. * bonobo/bonobo-arg.c *gtk* rename to *gvalue* & clean. * bonobo/bonobo-types.c (corba_object_proxy_value_init): impl. * bonobo/bonobo-stream-client.c (bonobo_stream_client_read): kill FIXME. 2001-10-18 Michael Meeks <michael@ximian.com> * bonobo/bonobo-object.c (bonobo_object_query_local_interface): remove GType fiddling, just use CORBA_Object_is_a (bonobo_object_add_interface): Add some more powerful, but optional debug to catch people aggregating two instances of the same interface together, or the same two objects etc. (bonobo_track_shlib_objects): remove mess. * bonobo/bonobo-moniker-util.c (async_parse_cb): fix the callback; setName has no return value ! 2001-10-17 Michael Meeks <michael@ximian.com> * bonobo/bonobo-persist-stream.c (impl_save), (impl_load): update sigs to kill warnings. * bonobo/bonobo-types.c (bonobo_value_get_corba_exception): return as const, you can't copy CORBA_Environments in a nice way. * bonobo/bonobo-moniker-util.c (bonobo_moniker_util_qi_return): fix theoretical uninit retval bug. and don't redundantly duplicate the returned CORBA_Object. * bonobo/bonobo-exception.c (bonobo_exception_general_error_set): impl. * tests/test-object.c (main): regression test it. * bonobo/bonobo-event-source.c (bonobo_event_source_client_add_listener_full): release the CORBA ref on the event source not just the bonobo one. 2001-10-13 Michael Meeks <michael@ximian.com> * bonobo/bonobo-moniker-util.c: kill all the ENABLE_ORBIT2 bits. * bonobo/bonobo-moniker-util.h: don't include bonobo-async.h * bonobo/Makefile.am (libbonobo_src): remove bonobo-async.[ch], dead - see ORBit2/src/orb/orb-core/orbit-small *Async* 2001-09-29 Iain Holmes <iain@ximian.com> * bonobo/bonobo-listener.c (bonobo_listener_new): Check if the callback function is NULL, and if so, don't create a GClosure. 2001-10-05 Abel Cheung <maddog@linux.org.hk> * monikers/Bonobo_Moniker_std.server.in.in: Havoc's patch to rename libmoniker_std.so -> libmoniker_std_2.so, avoiding conflict with bonobo 1.0.x . * monikers/Makefile.am: Ditto. 2001-09-27 Michael Meeks <michael@ximian.com> * Version 1.103 2001-09-25 Mark McLoughlin <mark@skynet.ie> * samples/echo/Makefile.am: s/orbit-idl/$(ORBIT_IDL). 2001-09-25 Michael Meeks <michael@ximian.com> * tests/Makefile.am: hook test-properties up to run automaticaly. * tests/test-properties.sh: impl. * tests/test-properties-client.c (main): read IOR from 'iorfile'. * tests/test-properties-server.c (create_bag): dump the IOR into 'iorfile' 2001-09-24 Michael Meeks <michael@ximian.com> * bonobo/bonobo-property-bag-client.c (MAKE_SET_SIMPLE): use arg_new_from so we copy and don't start freeing memory we don't own later - sigh. * tests/test-event-source.c: fix signatures & (void) * bonobo/bonobo-types.c (bonobo_closure_invoke_va_list): change sig. and split out return value handling. (bonobo_closure_invoke): move return value handling here where we can va_start again. 2001-09-22 Wang Jian <lark@linux.net.cn> * configure.in(ALL_LINGUAS): Added zh_CN for Simplified Chinese. 2001-09-21 Havoc Pennington <hp@redhat.com> * configure.in, autogen.sh: remove CERTIFIED_GNOMIE 2001-09-20 Michael Meeks <michael@ximian.com> * bonobo/bonobo-moniker-util.c (bonobo_moniker_util_unescape): fix bug escaping literal '\\' mis-counting as 2 escapes, where there is only a single escaped '\' 2001-09-20 Frank Belew <frb@ximian.com> * configure.in: Removed AM_CONDITIONAL(FALSE...) 2001-09-20 Pablo Saratxaga <pablo@mandrakesoft.com> * configure.in: Added Catalan (ca) language 2001-09-17 Havoc Pennington <hp@redhat.com> * bonobo/bonobo-types.c (bonobo_closure_invoke_va_list): patch from Ariel Rios to fix on Alpha, PPC * bonobo/libbonobo-2.0.pc.in (idldir): update * idl/Makefile.am (idldir): change to datadir/idl/bonobo-2.0 2001-09-10 Alex Larsson <alexl@redhat.com> * bonobo/bonobo-types.c (bonobo_corba_any_get_type), (bonobo_corba_typecode_get_type), (bonobo_corba_exception_get_type): fix for recent glib breakage - you need HEAD glib. 2001-09-10 Frank Belew <frb@ximian.com> * bonobo/bonobo-moniker.c (impl_set_name): don't return in a void function 2001-09-10 Dan Winship <danw@ximian.com> * bonobo/bonobo-event-source.c (bonobo_event_source_init): Use g_new0 to initialize event_source->priv to prevent uninitialized reads. 2001-09-10 Martin Baulig <martin@gnome.org> * Version 1.102.0. * configure.in: Ooops, bump version number to 1.102.0. 2001-09-10 Martin Baulig <martin@gnome.org> * configure.in: Require ORBit-2.0 >= 2.3.94 and glib-2.0 >= 1.3.7. 2001-09-10 Martin Baulig <martin@gnome.org> * Bonobo/bonobo-types.c (bonobo_corba_any_get_type): Don't provide a `boxed_init' function. (bonobo_corba_exception_get_type): Likewise. (corba_any_init, corba_exception_init): Removed. 2001-09-10 Martin Baulig <martin@gnome.org> * tests/test-moniker.c: The expected result of "a:!b:" is "!b:", not "b:" - see my ChangeLog entry for bonobo/bonobo-moniker-util.c (bonobo_moniker_util_parse_name) from 2001-08-11. 2001-09-09 Frank Belew <frb@ximian.com> * bonobo/bonobo-types.c: removed references to gbsearcharray (otaylor@redhat.com) 2001-09-03 Jody Goldberg <jgoldberg@home.com> * bonobo/bonobo-stream-memory.c (mem_get_info) : CORBA does not like NULL as a CORBA_String 2001-09-06 Mark McLoughlin <mark@skynet.ie> * Makefile.am: change includedir to gnome-2.0/ as well. 2001-09-06 Anders Carlsson <andersca@gnu.org> * bonobo/Makefile.am: Change includedir to gnome-2.0/ instead of gnome/2/ * bonobo/libbonobo-2.0.pc.in (Cflags): Likewise. 2001-09-04 Martin Baulig <martin@gnome.org> This big closures / types patch: - GValues are not copied anymore in signal/closure marshallers (using G_SIGNAL_TYPE_STATIC_SCOPE / G_VALUE_NOCOPY_CONTENTS). - we use "real" types (not G_TYPE_POINTER) in all signal/closure marshallers. - some closures now have custom marshallers to make them easier to use for scripting languages. - bonobo_closure_invoke() no longer returns a GValue, it now takes the return type as first type argument, see the documentation in bonobo-types.c for details. Detailed list of changes: * bonobo/bonobo-types.h (BONOBO_TYPE_STRING, BONOBO_TYPE_CORBA_ANY, BONOBO_TYPE_CORBA_OBJECT, BONOBO_TYPE_CORBA_TYPECODE, BONOBO_TYPE_CORBA_EXCEPTION): Set the G_SIGNAL_TYPE_STATIC_SCOPE flag for all these types. (BONOBO_TYPE_STRING): New type. (BONOBO_TYPE_NONSTATIC_UNKNOWN, BONOBO_TYPE_NONSTATIC_CORBA_ANY, BONOBO_TYPE_NONSTATIC_CORBA_OBJECT, BONOBO_TYPE_NONSTATIC_CORBA_TYPECODE, BONOBO_TYPE_NONSTATIC_CORBA_EXCEPTION): Added #defines for the non-static versions of these types. * bonobo/bonobo-types.c (bonobo_value_set_unknown, bonobo_value_set_corba_any, bonobo_value_set_corba_typecode, bonobo_value_set_corba_environment): New functions; they do not copy their arguments and set the G_VALUE_NOCOPY_CONTENTS flag. (bonobo_closure_invoke_valist): Removed the `GValue *retval' argument, renamed `first_type' to `return_type'. The return value is now handled like a normal argument. For details, see the documentation in the source file. (bonobo_closure_invoke): Removed the `GValue *retval' argument, renamed `first_type' to `return_type' * bonobo/bonobo-generic-factory.c: Marshal the closure as OBJECT:STRING, not as POINTER:STRING. * bonobo/bonobo-item-container.c: Marshal the "get_object" signal as BOXED:STRING_BOOLEAN_BOXED (retval as BONOBO_TYPE_UNKNOWN, args are BONOBO_TYPE_STRING, G_TYPE_BOOLEAN, BONOBO_TYPE_CORBA_EXCEPTION); * bonobo/bonobo-item-handler.c: Provide custom marshallers for the `enum_objects' and `get_object' closures: - `enum_objects' returns a G_TYPE_POINTER and takes a BONOBO_ITEM_HANDLER_TYPE and a BONOBO_TYPE_CORBA_EXCEPTION. - `get_object' returns a BONOBO_TYPE_UNKNOWN and takes BONOBO_ITEM_HANDLER_TYPE, G_TYPE_STRING, G_TYPE_BOOLEAN and BONOBO_TYPE_CORBA_EXCEPTION arguments. * bonobo/bonobo-listener.c: Marshal the `event_callback' as VOID:STRING,BOXED,BOXED (BONOBO_TYPE_STRING, BONOBO_TYPE_CORBA_ANY, and BONOBO_TYPE_CORBA_EXCEPTION). * bonobo/bonobo-marshal.list: Removed all unused items and everything from libbonoboui. * bonobo/bonobo-moniker-simple.h (BONOBO_RESOLVE_FLAG_TYPE): New type; this is a GFlags type for Bonobo_ResolveFlag. (bonobo_resolve_flag_get_type): Added type init func for it. * bonobo/bonobo-moniker-simple.c: Provide a custom marshaller for the `resolve_fn' closure. Instead passing a Bonobo_ResolveOptions as G_TYPE_POINTER, the closure now takes its contents as two arguments: BONOBO_RESOLVE_FLAG_TYPE and G_TYPE_LONG. The closure returns a BONOBO_TYPE_CORBA_OBJECT and takes BONOBO_MONIKER_TYPE, BONOBO_RESOLVE_FLAG_TYPE, G_TYPE_LONG, BONOBO_TYPE_STRING, BONOBO_TYPE_CORBA_EXCEPTION as arguments. * bonobo/bonobo-object.c: Marshal the "system_exception" signal VOID:OBJECT,BOXED (BONOBO_OBJECT_TYPE | G_SIGNAL_TYPE_STATIC_SCOPE and BONOBO_TYPE_CORBA_EXCEPTION). * bonobo/bonobo-property-bag.c: Provide custom marshallers for the 'get_prop' and `set_prop' closures: `get_prop' returns BONOBO_TYPE_CORBA_ANY and takes BONOBO_PROPERTY_BAG_TYPE,BONOBO_TYPE_CORBA_TYPECODE, G_TYPE_UINT, BONOBO_TYPE_CORBA_EXCEPTION. `set_prop' returns nothing and takes BONOBO_PROPERTY_BAG_TYPE, BONOBO_TYPE_CORBA_ANY, G_TYPE_UINT, BONOBO_TYPE_CORBA_EXCEPTION. 2001-08-31 Abel Cheung <maddog@linux.org.hk> * configure.in (ALL_LINGUAS): zh_TW.Big5 -> zh_TW 2001-08-27 ERDI Gergo <cactus@cactus.rulez.org> * bonobo/bonobo-object.c (bonobo_object_set_immortal): s/imortal/immortal/ 2001-08-22 Rodrigo Moya <rodrigo@gnome-db.org> * bonobo/bonobo-arg.c (bonobo_arg_new_from): new function to create BonoboArg's from a given type and data * bonobo/bonobo-arg.h: added GET/SET macros for more CORBA types 2001-08-21 Dirk-Jan C. Binnema <djcb@djcbsoftware.nl> * bonobo/bonobo-main.c (bonobo_init_full): remove SIGPIPE handler; handle this in linc instead * bonobo/bonobo-moniker.c (all char* methods): return NULL instead of "" in case of failure, for consistency 2001-08-20 Maciej Stachowiak <mjs@noisehavoc.org> * idl/Makefile.am: Fix violation of bonobo-activation's include guards to match new names. 2001-08-20 ERDI Gergo <cactus@cactus.rulez.org> * idl/Bonobo_Clipboard.idl: more sensible argument order 2001-08-18 Michael Meeks <michael@ximian.com> * idl/Makefile.am: build the Activation_types into our type library. 2001-08-18 Darin Adler <darin@bentspoon.com> * bonobo/Makefile.am: * idl/Makefile.am: * monikers/Makefile.am: * tests/Makefile.am: Fix loose ends from last checkin and remove unnecessary -I directives to speed up compiles. 2001-08-18 Darin Adler <darin@bentspoon.com> * configure.in: Add GLIB_GENMARSHAL variable. * bonobo/Makefile.am: Update marshal build rules to work in a simpler way. * idl/Makefile.am: Fix generated-source-file rules so they work well enough for "make distcheck". 2001-08-17 Michael Meeks <michael@ximian.com> * monikers/bonobo-moniker-new.c (bonobo_moniker_new_resolve): kill warning on 'params'. 2001-08-17 Mikael Hallendal <micke@codefactory.se> * bonobo/bonobo-property-bag.c (impl_Bonobo_PropertyBag_setValue): Use PROPERTY_NO_AUTONOTIFY to check if we should notify listeners. (impl_Bonobo_PropertyBag_setValues): same. * idl/Bonobo_Property.idl: added PROPERTY_NO_AUTONOTIFY. 2001-08-17 Michael Meeks <michael@ximian.com> * bonobo/bonobo-event-source.c (bonobo_event_source_notify_listeners): hold a CORBA reference over the notification re-enterancy hazard. Homogenise opt_ev handling, to keep 'ev' consistant always. 2001-08-17 ERDI Gergo <cactus@cactus.rulez.org> * bonobo/bonobo-event-source.c (bonobo_event_source_notify_listeners): Allow CORBA_OBJECT_NIL for the `value' argument 2001-08-16 Fatih Demir <kabalak@gtranslator.org> * configure.in: Added "tr" to the languages list. 2001-08-14 Michael Meeks <michael@ximian.com> * monikers/bonobo-moniker-ior.c (bonobo_moniker_ior_resolve): impl - sweet. * monikers/Makefile.am: upd. * bonobo/bonobo-moniker-util.c (bonobo_moniker_util_qi_return): comment - looks like we have a redudant CORBA_Object_duplicate to me. 2001-08-14 Michael Meeks <michael@ximian.com> * bonobo/bonobo-property-bag-client.c (bonobo_pbclient_get_value): remove redundant cleanout: label * monikers/Makefile.am: s/oaf/server, update install dir. * bonobo/bonobo-property-bag.c (bonobo_property_bag_add_full): fix secondary 'add_full' closure store to use new marshaller. 2001-08-13 Michael Meeks <michael@ximian.com> * idl/Makefile.am (Bonobo-imodule.c): fix itype lib build deps. * configure.in: bump to 1.101.2 * tests/test-object.c: kill some warnings. * idl/Bonobo_UI.idl: add 'execVerb', 'uiEvent' for scripting bindings & macros. * bonobo/bonobo-exception.c (bonobo_exception_repoid_to_text): update to reflect new exceptions. 2001-08-11 Michael Meeks <michael@ximian.com> * bonobo/bonobo-property-bag-client.c (bonobo_pbclient_get_value): re-write to tolerate nulls silently and map tk_null -> NULL. * tests/test-object.c (main): add BONOBO_RET_EX regression tests. * bonobo/bonobo-exception.c (bonobo_exception_repoid_to_text): filled out the PropertyBag exceptions. 2001-08-11 Martin Baulig <martin@gnome.org> * bonobo/bonobo-exception.h (BONOBO_RET_EX, BONOBO_RET_VAL_EX): Make the G_STMT_START/END actually work. * bonobo/bonobo-moniker-util.c (bonobo_moniker_util_parse_name): For the item moniker, the "!" is the first character or the return value. 2001-08-10 Michael Meeks <michael@ximian.com> * bonobo/bonobo-arg.h: bracket protect arg in GET/SET macros. 2001-08-09 Dirk-Jan C. Binnema <djcb@djcbsoftware.nl> * bonobo/bonobo-moniker.c (bonobo_moniker_get_name_escaped): return NULL in case of failure. 2001-08-08 Michael Meeks <michael@ximian.com> * bonobo/bonobo-types.c (bonobo_closure_store), (bonobo_closure_invoke): tolerate a NULL closure - as a noop. * bonobo/bonobo-generic-factory.h: do a UI init if we have LIBBONOBOUI_H defined. 2001-08-08 Michael Meeks <michael@ximian.com> * configure.in: add samples/echo * message-of-doom: ameliorate. 2001-08-08 Darin Adler <darin@bentspoon.com> * bonobo/Makefile.am: One more tweak to the dependency fix. We still need to include bonobo-marshal.c. 2001-08-08 Michael Meeks <michael@ximian.com> * idl/Makefile.am: move typelib stuff here, add whacked out defines to get bonobo-activation code included in-line. * bonobo/Makefile.am: kill typelib building. 2001-08-08 Michael Meeks <michael@ximian.com> * bonobo/Makefile.am: make dependency fix more portable with Peter Wainwright's solution. 2001-08-08 Martin Baulig <martin@gnome.org> * bonobo/bonobo-moniker-util.c (bonobo_moniker_util_parse_name): Return "!" for the item moniker. * bonobo/bonobo-item-handler.c (impl_enum_objects): Fixed closure. (impl_get_objects): Ditto. 2001-08-08 Martin Baulig <martin@gnome.org> * bonobo/bonobo-types.h (bonobo_value_get_*): Constify the arg. (BONOBO_TYPE_CORBA_TYPECODE): New type. * bonobo/bonobo-property-bag.c (bonobo_marshal_ANY__TYPECODE_UINT_POINTER): New static function. This is a custom marshaller for the Bonobo::PropertyBag's `get_prop' method - it takes a CORBA_TypeCode instead of the CORBA_any and returns a CORBA_any. (impl_Bonobo_PropertyBag_getValue): The closure now takes a CORBA_TypeCode and returns a CORBA_any. 2001-08-08 Cody Russell <bratsche@gnome.org> * bonobo/*.[h]: Ensured that all _get_type () functions are declared as G_GNUC_CONST. 2001-08-07 Michael Meeks <michael@ximian.com> * bonobo/bonobo-listener.c (impl_Bonobo_Listener_event): 0 terminate the list of arguments - argh. * bonobo/bonobo-property-bag.c (impl_Bonobo_PropertyBag_getValue), (impl_Bonobo_PropertyBag_getValues), (impl_Bonobo_PropertyBag_setValue), (impl_Bonobo_PropertyBag_setValues): ditto. * bonobo/bonobo-item-handler.c (impl_enum_objects), (impl_get_object): ditto. 2001-08-07 Michael Meeks <michael@ximian.com> * Version 1.101.1 2001-08-07 Michael Meeks <michael@ximian.com> * configure.in: depend on ORBit2 >= 2.3.93 for CORBA_TypeCode_equivalent * bonobo/bonobo-property-bag-client.c (bonobo_pbclient_get_value): use CORBA_TypeCode_equivalent so we ignore tedious alias problems. * bonobo/bonobo-property-bag.c (bonobo_property_bag_remove): impl - breaks API freeze, but c'est la vie - important method to have around. * bonobo/Makefile.am: really fixup dependencies, build the other things afterwards. 2001-08-07 Rodrigo Moya <rodrigo@ximian.com> * bonobo/Makefile.am: build $CORBA_SOURCES and $marshal_sources before the other source files 2001-08-07 Mark McLoughlin <mark@skynet.ie> * bonobo/bonobo-event-source.c, bonobo/bonobo-main.c, bonobo/bonobo-object.c: Use CORBA_OBJECT_NIL instead of CORBA_Object_is_nil. * bonobo/bonobo-object.c (bonobo_object_finalize_servant): use bonobo_object to get the BonoboObject from the servant. (bonobo_object_dup_ref): move NIL check up. (bonobo_object_query_local_interface): check for exception from CORBA_Object_is_a and treat an exception as a FALSE return. 2001-08-05 Michael Meeks <michael@ximian.com> * Makefile.am: distribute changes.txt 2001-08-03 Michael Meeks <michael@ximian.com> * Version 1.101.0 * configure.in: use AM_GLIB_GNU_GETTEXT. * Makefile.am: prune intl. 2001-08-02 Michael Meeks <michael@ximian.com> * bonobo/bonobo-types.c (bonobo_closure_store): make this include the marshalers. * bonobo/bonobo-marshal-main.c: remove. * bonobo/Makefile.am: update the strange dependency rules. 2001-08-03 Abel Cheung <maddog@linux.org.hk> * configure.in: Added zh_TW.Big5 (traditional Chinese) to ALL_LINGUAS. 2001-08-01 Michael Meeks <michael@ximian.com> * Version 1.100.0 2001-08-01 Maciej Stachowiak <mjs@noisehavoc.org> * bonobo/bonobo-generic-factory.c: (impl_Bonobo_ObjectFactory_createObject): Don't pass params argument. (bonobo_generic_factory_class_init): Remove `manufactures' * monikers/bonobo-moniker-new.c: (bonobo_moniker_new_resolve): Don't pass params argument. 2001-08-02 Michael Meeks <michael@ximian.com> * bonobo/bonobo-types.c (bonobo_value_get_unknown): fixup. 2001-08-01 Michael Meeks <michael@ximian.com> * bonobo/bonobo-types.c (bonobo_value_get_unknown): ref. (bonobo_value_get_corba_object): ref the thing (bonobo_value_get_corba_any): copy more inefficiency. (bonobo_value_get_corba_exception): knobble - just too broken. 2001-08-01 Michael Meeks <michael@ximian.com> * monikers/bonobo-moniker-oaf.c: upd. * monikers/bonobo-moniker-query.c: upd. * idl/Bonobo.idl: upd. * bonobo/bonobo-generic-factory.c: become a BonoboObject; horay. * bonobo/bonobo-shlib-factory.h: ditto. * configure.in: use bonobo-activation. 2001-08-01 Martin Baulig <martin@gnome.org> * bonobo/bonobo-moniker-util.c (bonobo_moniker_util_qi_return): Only throw an exception if the object is nil, but don't emit a g_warning(). 2001-08-01 Michael Meeks <michael@ximian.com> * tests/test-moniker.c (test_real_monikers): add a test from Martin (main): use it. 2001-08-01 Martin Baulig <martin@gnome.org> * bonobo/bonobo-generic-factory.c (bonobo_generic_factory_construct): Use bonobo_marshal_POINTER__STRING, not g_cclosure_marshal_VOID__STRING as closure marshaller. (bonobo_generic_factory_new_generic): Use G_TYPE_POINTER as return value for the closure. * bonobo/bonobo-marshal.list: Changed BOXED:POINTER,STRING,POINTER to BOXED:POINTER,STRING,BOXED and added OBJECT:STRING. * bonobo/bonobo-moniker-simple.c (simple_moniker): Initialize the static GValue before calling g_value_init() on it or you'll get a core dump. * bonobo/bonobo-moniker-simple.c (bonobo_moniker_simple_construct): Use bonobo_marshal_BOXED__POINTER_STRING_BOXED, not bonobo_marshal_BOXED__POINTER_STRING_POINTER. 2001-08-01 Martin Baulig <martin@gnome.org> * bonobo/bonobo-types.c (bonobo_corba_exception_get_type): We need to use a custom boxed type for BONOBO_TYPE_CORBA_ENVIRONMENT since it's not a CORBA::Object. 2001-08-01 Michael Meeks <michael@ximian.com> * bonobo/bonobo-main.h: fix broken include guards. 2001-07-31 Abel Cheung <maddog@linux.org.hk> * configure.in: Added zh_TW.Big5 (traditional Chinese) to ALL_LINGUAS. 2001-07-31 Michael Meeks <michael@ximian.com> * bonobo/bonobo-object.h: include liboaf here. * libbonobo.h: not here. * bonobo/bonobo-moniker-extender.c, * monikers/bonobo-moniker-query.c, * monikers/bonobo-moniker-oaf.c, * monikers/bonobo-moniker-new.c, * monikers/bonobo-moniker-extender-stream.c, * bonobo/bonobo-shlib-factory.c, * bonobo/bonobo-generic-factory.c, * bonobo/bonobo-exception.c, * bonobo/bonobo-moniker-util.c: prune liboaf.h includes. 2001-07-31 Michael Meeks <michael@ximian.com> * bonobo/bonobo-context.c (bonobo_context_init): register as the "Moniker" context instead. * idl/Bonobo_Context.idl: rename Activation -> Moniker context. * bonobo/bonobo-activation-context.[ch]: rename to * bonobo/bonobo-moniker-context.[ch]: this. * bonobo/Makefile.am: upd. 2001-07-30 ERDI Gergo <cactus@cactus.rulez.org> * bonobo/Makefile.am (libbonoboinclude_HEADERS): removed duplicate bonobo-marshal.h entry * bonobo/bonobo-property-bag.h: Made some BonoboProperty fields public again * tests/test-properties-server.c: updated * configure.in: Bumped version number because of new GClosure APIs * bonobo/bonoob-item-handler.c: finalization fixes * bonobo/bonobo-marshal-main.c: Include <gobject/gboxed.h> to avoid compile-time warnings * bonobo/bonobo-moniker-simple.h: cleanup, privatization Maybe next time someone creates a new Bonobo object they can make it privatized form the beginning... grr... * bonobo/bonobo-shlib-factory.h: cleanup * bonobo/bonobo-generic-factory.h: cleanup * bonobo/bonobo-property-bag.c: Completely privatized BonoboPoperty plus GClosure-ization * bonobo/bonobo-marshal.list: Added new signature for PropertyBag, MonikerSimple and ItemHandler callbacks * bonobo/bonobo-item-handler.c: Privatization, GClosure-ization 2001-07-30 Michael Meeks <michael@ximian.com> * bonobo/bonobo-exception.c (bonobo_exception_get_text): re-instate nice oaf exception reporting, should be a hashed handler though. * bonobo/bonobo-types.c (bonobo_value_get_corba_exception, bonobo_value_get_corba_object), (bonobo_value_get_corba_any, bonobo_value_get_unknown): impl. * bonobo/bonobo-moniker-simple.c (bonobo_moniker_simple_new): upd. (bonobo_moniker_simple_new_gc): impl. (bonobo_moniker_simple_construct): upd. (simple_finalize): impl. (bonobo_moniker_simple_class_init): hook up. (simple_resolve): upd - use invoke. 2001-07-30 Dietmar Maurer <dietmar@ximian.com> * tests/test-moniker.c (check_parse_name): impl. (main): added more tests. * monikers/bonobo-moniker-query.c: this is now a simple moniker, since we have fixed moniker separators # and ! (no customisation possible) * idl/Bonobo_Moniker.idl: renamed getDisplayName to getName, renamed parseDisplayName to setName, added getParent/setParent instead of a parent attribute. * bonobo/bonobo-moniker-util.c (bonobo_moniker_util_parse_name): impl. (bonobo_moniker_util_get_parent_name): ev is now optional (bonobo_moniker_client_new_from_name): implemented right to left moniker name parsing. This ensures the correct loading of shlib style monikers. (bonobo_moniker_client_get_name): ev is now optional (bonobo_moniker_client_resolve_default): ev is now optional (bonobo_get_object): ev is now optional (bonobo_url_register): added check for ev != NULL (bonobo_url_unregister): added check for ev != NULL (bonobo_url_lookup): added check for ev != NULL * bonobo/bonobo-moniker.c (bonobo_moniker_set_parent): ev is now optional (bonobo_moniker_get_parent): ev is now optional (bonobo_moniker_default_set_name): impl. * bonobo_moniker_util_new_from_name_full: removed, use bonobo_moniker_client_new_from_name instead. * bonobo/bonobo-activation-context.c (impl_Bonobo_ActivationContext_createFromName): removed createWithParent * idl/Bonobo_Context.idl: removed createWithParent 2001-07-30 Michael Meeks <michael@ximian.com> * bonobo/bonobo-types.c (bonobo_closure_invoke_va_list): reset the Value's type to 0. * bonobo/bonobo-marshal.list: add STRING,ENUM,STRING. * bonobo/bonobo-event-source.c (create_listener_id): kill. (impl_Bonobo_EventSource_addListenerWithMask): upd. (impl_Bonobo_EventSource_removeListener): remove by equivalence and fix heinous bug. (bonobo_event_source_client_add_listener_gc): upd. (bonobo_event_source_client_add_listener): upd. * bonobo/bonobo-event-source.h: remove Id crufty. * idl/Bonobo_Listener.idl: re-vamp to fit a modern understanding of CORBA_Object_is_equivalent. 2001-07-30 ERDI Gergo <cactus@cactus.rulez.org> * bonobo/bonobo-generic-factory.c (bonobo_generic_factory_new): impl. (bonobo_generic_factory_new_gc): switch to gclosure. (bonobo_generic_factory_new_generic): update invocation mechanism. * bonobo/bonobo-event-source.c (bonobo_event_source_client_add_listener): gclosurize. (bonobo_event_source_client_add_listener_gc): move body here. * bonobo/bonobo-listener.c (impl_Bonobo_Listener_event): upd. (bonobo_listener_new): impl. (bonobo_listener_new_gc): move here. * bonobo/bonobo-shlib-factory.c (bonobo_shlib_factory_new): impl. (bonobo_shlib_factory_new_gc): impl. 2001-07-30 ERDI Gergo <cactus@cactus.rulez.org> Checked in Bonobo_Clipboard (now for real:) 2001-07-30 Jamil Geor <geor@ihug.co.nz> * bonobo/bonobo-stream-client.c (bonobo_stream_client_get_length): update to make exception environment optional. 2001-07-29 Maciej Stachowiak <mjs@noisehavoc.org> * bonobo/Makefile.am: Remove references to Bonobo_Clipboard.idl since it appears to be missing. * idl/Bonobo.idl: Ditto. * idl/Makefile.am: Ditto. 2001-07-29 ERDI Gergo <cactus@cactus.rulez.org> * configure.in: bumped version number (depend on 1.99.0 if you want to access the Clipboard) * idl/Bonobo_Clipboard.idl: Moved here from bonobo-clipboard (the implementation still resides there) 2001-07-29 Michael Meeks <michael@ximian.com> * bonobo/bonobo-types.c (bonobo_closure_invoke): impl. (bonobo_closure_invoke_va_list): impl. 2001-07-28 ERDI Gergo <cactus@cactus.rulez.org> * bonobo/bonobo-generic-factory.c: removed bonobo_generic_factory_set * monikers/bonobo-moniker-std.c: Changed BONOBO_OAF_SHLIB_FACTORY_MULTI to BONOBO_OAF_SHLIB_FACTORY * configure.in: bumped version number because of BonoboGenericFactory API change * bonobo/bonobo-generic-factory.[ch]: Removed single/multi factory ambiguity. If you use a single factory, you will have to migrate to the multi factory setting (this should be very easy, just add a const char* argument to your factory callback function). Moved instance data to a private structure for more flexibility. * bonobo/bonobo-shlib-factory.[ch]: ditto 2001-07-28 Jamil Geor <geor@ihug.co.nz> * bonobo/bonobo-object.c (bonobo_object_query_interface), (bonobo_unknown_ping): add opt_evs (bonobo_object_dup_ref): document opt ev as optional. (bonobo_object_release_unref): ditto. * bonobo/bonobo-moniker-extender.c (bonobo_moniker_find_extender): make ev optional. (bonobo_moniker_use_extender): ditto. * changes.txt: update. 2001-07-28 Michael Meeks <michael@ximian.com> * bonobo/bonobo-object.c (bonobo_object_unref): special case imortal objects. (bonobo_object_trace_refs): ditto. (bonobo_object_set_imortal): impl. 2001-07-28 Michael Meeks <michael@ximian.com> * bonobo/bonobo-object.c (bonobo_object_dummy_destroy): impl to make chaining easier. (bonobo_object_class_init): hook up. 2001-07-27 Laszlo Peter <laca@ireland.sun.com> * bonobo/bonobo-arg.h: fix BONOBO_ARG_SET_GENERAL for non-GNU C compilers. 2001-07-27 Michael Meeks <michael@ximian.com> * bonobo/bonobo-object.c (bonobo_object_destroy): fire a DESTROY signal, not a glib internal dispose signal ! (bonobo_object_dispose): kill. (bonobo_object_class_init): unhook dispose. * bonobo/bonobo-moniker-util.c: update the table of builtin monikers. * monikers/Bonobo_Moniker_std.oaf.in.in: remove stale file & extender mis-information. 2001-07-26 Darin Adler <darin@bentspoon.com> * tests/.cvsignore: Add test-storage-mem. 2001-07-26 ERDI Gergo <cactus@cactus.rulez.org> * bonobo/bonobo-storage-memory.h: Virtualized implementations to make subclassing possible * bonobo/bonobo-persist-client.h: Client-side utility functions dealing with persistancy 2001-07-26 Michael Meeks <michael@ximian.com> * bonobo/Makefile.am (libbonobo_2_la_SOURCES): update for new ORBit2 orbit-idl '--imodule' flag. 2001-07-26 Michael Meeks <michael@ximian.com> * idl/Bonobo_UI.idl: add the setAttr / getAttr stuff... 2001-07-25 ERDI Gergo <cactus@cactus.rulez.org> * bonobo/bonobo-stream-memory.h: Removed #define BonoboStorageMem that makes no sense now that we have a real thing 2001-07-24 ERDI Gergo <cactus@cactus.rulez.org> * tests/test-storage-mem.c: Regression test for BonoboStorageMem * bonobo/bonobo-storage-memory.[ch]: New in-memory Bonobo::Storage implementation 2001-07-24 Martin Baulig <martin@gnome.org> * bonobo/Makefile.am: Compile Bonobo_imodule.c into Bonobo_module.la and install it into $(prefix)/lib/orbit/. 2001-07-23 Martin Baulig <martin@gnome.org> * bonobo/bonobo-moniker-util.c (url_to_name): Implemented this for ORBit2. 2001-07-09 Lutz Müller <urc8@rz.uni-karlsruhe.de> * bonobo/bonobo-stream-memory.[c,h]: Make mem_[get,set]_info functional. 2001-07-22 Mike Kestner <mkestner@speakeasy.net> Added tag BEFORE_DOC_REWRITE prior to this commit. * bonobo/Makefile.am : remove Bonobo_ClientSite.idl from build. * bonobo/bonobo-exception.c : kill Bonobo_Embeddable exception strings * idl/Bonobo.idl : remove Bonobo_ClientSite.idl. * idl/Bonobo_Embeddable.idl : kill View, ViewFrame, and get Embeddable. Add the new CanvasComponentFactory and ControlFactory interfaces. * idl/Bonobo_ClientSite.idl : kill. * idl/Makefile.am : remove Bonobo_ClientSite.idl from build. 2001-07-21 ERDI Gergo <cactus@cactus.rulez.org> * changes.txt (Bonobo_Persist): Added note about new getIId method 2001-07-21 Mike Kestner <mkestner@speakeasy.net> * changes.txt : Added blurb about isDirty changes. * bonobo/bonobo-persist.[ch] (impl_Bonobo_Persist_isDirty): new. (bonobo_persist_class_init): hook in the new method. (bonobo_persist_set_dirty): new accessor. * bonobo/bonobo-persist-stream.[ch] : kill isDirty * bonobo/bonobo-presist-file.[ch] : kill isDirty * idl/Bonobo_Persist.idl : Promote isDirty into the Persist base interface. 2001-07-19 ERDI Gergo <cactus@cactus.rulez.org> * tests/Makefile.am (TESTS): Added test-stream-mem * tests/test-stream-mem.c: New test to see if BonoboStreamMem works (currently, it looks like it doesn't) 2001-07-19 Michael Meeks <michael@ximian.com> * bonobo/bonobo-types.c (BONOBO_TYPE_CORBA_OBJECT_IMPL): fix redundant '##'s. * bonobo/bonobo-object.c: remove bonobo-object-directory include * bonobo/bonobo-object-directory.[ch]: remove. 2001-07-18 Michael Meeks <michael@ximian.com> * bonobo/Makefile.am (libbonoboinclude_HEADERS): don't install / build bonobo-object-directory - it's horribly stale and old. 2001-07-18 Martin Baulig <martin@gnome.org> * bonobo/bonobo-types.[ch]: New files. * bonobo/bonobo-object.h (BonoboObjectClass): Made "query_interface" a virtual method, not a signal. 2001-07-17 Michael Meeks <michael@ximian.com> * bonobo/Makefile.am (libbonoboinclude_HEADERS): don't install bonobo-simple-source.h it's incredibly old and stale. 2001-07-17 Michael Meeks <michael@ximian.com> * bonobo/bonobo-main.c (bonobo_x_error_handler): kill, (bonobo_setup_x_error_handler): kill - in libbonoboui now. * bonobo/bonobo-object.c: s/bonobo_object_finalize_real/bonobo_object_finalize_gobject/ s/bonobo_object_finalize/bonobo_object_finalize_internal/ (bonobo_object_corba_deactivate): don't poa_fini_fn & split from (bonobo_object_finalize_gobject): here, prune corba deactivate. s/do_corba_hacks/do_corba_setup/ (bonobo_object_instance_init): add a g_object ref here. (bonobo_type_setup): register servant finalization. (bonobo_object_finalize_servant): impl. (bonobo_object_slist_unref_all): actualy impl. 2001-07-14 Martin Baulig <martin@gnome.org> * bonobo/libbonobo-2.0.pc.in (idldir): New variable. * configure.in: Require autoconf 2.50b and use PKG_CHECK_MODULES. 2001-07-13 Darin Adler <darin@bentspoon.com> * bonobo/bonobo-arg.h: * bonobo/bonobo-arg.c: (bonobo_arg_is_equal): Take const BonoboArg *. * configure.in: Elminate redundant macros. 2001-07-12 Michael Meeks <michael@ximian.com> * bonobo/bonobo-generic-factory.c (init_generic_factory_corba_class): remove, unroll into (bonobo_generic_factory_class_init): here, setup the _base_epv. 2001-07-12 Martin Baulig <martin@gnome.org> * bonobo/bonobo-marshal.list: Added `VOID:POINTER,STRING' and `VOID:STRING,INT,STRING'. 2001-07-11 Martin Baulig <martin@gnome.org> * bonobo/bonobo-generic-factory.c (init_generic_factory_corba_class): Initialize `bonobo_generic_factory_vepv._base_epv'. 2001-07-05 Tim Mooney <mooney@dogbert.cc.ndsu.NoDak.edu> * bonobo/bonobo-exception.h (bonobo_return_if_fail, bonobo_return_val_if_fail): change __PRETTY_FUNCTION__ hold-over to glib-provided G_GNUC_PRETTY_FUNCTION. * doc/api/bonobo-decl.txt: same. 2001-07-11 Michael Meeks <michael@ximian.com> * tests/test-object.c (main): expand to try and catch nasties - no joy. * bonobo/bonobo-moniker.c (bonobo_moniker_init): init the prefix to NULL. 2001-07-11 Michael Meeks <michael@ximian.com> * bonobo/bonobo-object.c (bonobo_object_dump_interfaces), (bonobo_type_setup): prune ENABLE_ORBIT2 paths. * bonobo/bonobo-arg.c (bonobo_arg_new): ditto. * bonobo/Makefile.am: don't build / install bonobo-transient, not used & complicates our transition to a new system. 2001-07-10 Michael Meeks <michael@ximian.com> * configure.in: always define ENABLE_ORBIT2 bump version to 1.97.0, require ORBit2 - from CVS. 2001-07-10 Michael Meeks <michael@ximian.com> * tests/Makefile.am: remove test-storage - it's inside libgnome now. * bonobo/Makefile.am: remove bonobo-storage-plugin.[ch] * bonobo/bonobo-storage.h: horribly savage. * bonobo/bonobo-storage.c: remove all deprecated crud, except std. bonobo_storage_copy_to impl. * changes.txt: document the fun. 2001-07-09 Michael Meeks <michael@ximian.com> * monikers/Makefile.am (libmoniker_std_la_SOURCES): remove bonobo-moniker-extender-file, bonobo-moniker-file: now in libgnome where they have a gnome-vfs dependency. * monikers/bonobo-moniker-std.c (bonobo_std_moniker_factory): remove file bits & re-enable query moniker. * monikers/bonobo-moniker-std.h: ditto. 2001-07-06 Michael Meeks <michael@ximian.com> * tests/test-properties-client.c (create_bag_client): add call to bonobo_pbclient_set. * bonobo/bonobo-property-bag-client.c (bonobo_pbclient_set, bonobo_pbclient_get): impl. (bonobo_pbclient_getv): update to take typesafe name / type / value triplets instead of unsafe name / value pairs. (bonobo_pbclient_setv): ditto & bail when we hit an exception. 2001-07-06 Christian Rose <menthos@menthos.com> * configure.in: Added sv to ALL_LINGUAS. 2001-07-02 Dietmar Maurer <dietmar@ximian.com> * bonobo/bonobo-shlib-factory.c (bonobo_shlib_factory_track_object): s/g_signal_connectc/g_signal_connect/ * bonobo/bonobo-running-context.c (bonobo_running_context_class_init): s/g_signal_newc/g_signal_new/ s/g_signal_connectc/g_signal_connect/ * bonobo/bonobo-listener.c (bonobo_listener_class_init): s/g_signal_newc/g_signal_new/ * bonobo/bonobo-item-container.c: s/g_signal_newc/g_signal_new/ * idl/Bonobo_Property.idl: added flags to addDatabase * bonobo/bonobo-object.c: s/shutdown/dispose/ s/g_signal_newc/g_signal_new/ Sat Jun 30 14:53:52 2001 Jonathan Blandford <jrb@redhat.com> * tests/test-properties-server.c (main): Change to reflect new g_signal_connect_data signature. * bonobo/bonobo-main.c (bonobo_init_full): change to reflect new g_type_init () signature. 2001-06-28 Dietmar Maurer <dietmar@ximian.com> * bonobo/bonobo-property-bag-client.c: bug fix: cast to CORBA_boolean intead of gboolean. 2001-06-28 Michael Meeks <michael@ximian.com> [ also by Laszlo PETER <Laszlo.Peter@ireland.sun.com> ] * bonobo/bonobo-object.h: update for new glib paths, we require HEAD glib now. * bonobo/bonobo-main.c: ditto. * libbonobo.h: upd. * *.c: add more string.h includes. 2001-06-27 Michael Meeks <michael@ximian.com> * bonobo/Makefile.am: add bonobo-storage / stream plugin. * tests/test-storage.c (main): don't test efs. 2001-06-26 Michael Meeks <michael@ximian.com> * configure.in: add --enable-orbit2=[yes/no] * orbit2-convert.pl: fix some buglets. * bonobo/bonobo-arg.c (bonobo_arg_new): port to new DynamicAny conditionaly. * bonobo/bonobo-async.c: disable for ORBit2. * bonobo/bonobo-moniker-util.c (bonobo_string_to_CosNaming_Name): impl for ORBit2 case. (url_to_name): trash for ORBit2 - FIXME. * bonobo/bonobo-object.c (bonobo_object_dump_interfaces): upd. (bonobo_type_setup): init base_epv for ORBit2. * bonobo/bonobo-object.h: Add PortableServer_ServantBase__epv for both cases - only used in ORBit2 version. * bonobo/bonobo-property-bag-client.c: renamed all TC_ duffness. * bonobo/bonobo-transient.c: disabled for ORBit2 - not used anyway. * *.c: added lots of missing string.h includes. 2001-06-26 Fatih Demir <kabalak@gtranslator.org> * configure.in: Added ta to the languages list. 2001-06-21 ERDI Gergo <cactus@cactus.rulez.org> * idl/Bonobo_Persist.idl: Added new getIId method to Bonobo::Persist * bonobo/bonobo-persist.[ch]: * bonobo/bonobo-persist-file.[ch]: * bonobo/bonobo-persist-stream.[ch]: Added code to support Bonobo::Persist::getIID * bonobo/bonobo-persist-stream.[ch]: Since new arguments are added to _new and _construct, I removed the legacy dummy argument 2001-06-19 Peter Williams <peterw@ximian.com> * bonobo/bonobo-property-bag.c (bonobo_property_bag_add_gtk_args): Update to match new GObject property retrieval API. 2001-06-19 Héctor García Álvarez <hector@scouts-es.org> * configure.in: added "es" for Spanish to $ALL_LINGUAS 2001-06-15 Dietmar Maurer <dietmar@ximian.com> * monikers/bonobo-stream-cache.c (cache_setInfo): return void * bonobo/bonobo-property-bag.c (bonobo_property_bag_add): return void * bonobo/bonobo-moniker.c (impl_set_parent): don't return a value, because function is void. 2001-06-13 Stanislav Visnovsky <visnovsky@nenya.ms.mff.cuni.cz> * configure.in: added "sk" for Slovak to $ALL_LINGUAS 2001-06-07 Pablo Saratxaga <pablo@mandrakesoft.com> * configure.in: added "az", and Norwegian to $ALL_LINGUAS 2001-06-06 Dietmar Maurer <dietmar@ximian.com> * bonobo/Makefile.am ($(CORBA_SOURCE)): removed --small option * idl/Bonobo_Property.idl: removed that unused filter_path 2001-06-05 Dietmar Maurer <dietmar@ximian.com> * bonobo/bonobo-event-source.c (bonobo_event_source_client_remove_listener): removed Bonobo_Property_ code 2001-06-04 Peter Williams <peterw@ximian.com> * configure.in (OAF_IDL_DIR): Grab oaf's IDL directory for use with orbit-idl later. (utility_conditional): Remove a duplicate of the "utility conditional" * bonobo/Makefile.am (idl_flags): Use OAF_IDL_DIR here. 2001-06-01 Michael Meeks <michael@ximian.com> * bonobo/bonobo-event-source.c (bonobo_event_source_destroy): make it cope with the list changing under it. (impl_Bonobo_EventSource_removeListener): fix heinous g_slist usage issues - gack. 2001-05-30 Christophe Merlet <redfox@eikonex.org> * configure.in: added fr to $ALL_LINGUAS 2001-05-30 Dietmar Maurer <dietmar@ximian.com> * bonobo/bonobo-property-bag-client.c (unref_default_bag): added a mutex to make it thread save. 2001-05-28 Dietmar Maurer <dietmar@ximian.com> * bonobo/bonobo-property-bag-client.c (get_default_bag): impl. we can pass CORBA_OBJECT_NIL to all bonobo_pbclient_* functions (and we use the default property bag in that case). 2001-05-19 Martin Baulig <martin@gnome.org> * bonobo/bonobo-generic-factory.h (BONOBO_OAF_FACTORY, BONOBO_OAF_FACTORY_MULTI): Make this actually work. * bonobo/bonobo-main.c (bonobo_init_full): Call oaf_init(), not oaf_orb_init() so that oaf gets the command line arguments. 2001-05-15 Martin Baulig <martin@gnome.org> * bonobo/Makefile.am (ORBIT_IDL): Use @ORBIT_IDL@ rather than hardcoding `orbit-idl'. 2001-05-04 Dietmar Maurer <dietmar@ximian.com> * bonobo/bonobo-xobject.h: use G_BEGIN/END_DECLS 2001-05-03 Dietmar Maurer <dietmar@ximian.com> * bonobo/bonobo-property-bag-client.[ch]: complete new code. * idl/Bonobo_Property.idl: rewrote the idl. * bonobo/bonobo-event-source.c (bonobo_event_source_client_remove_listener): we dont have Property object anymore - removed that code. (bonobo_event_source_client_add_listener): removed Property code. * bonobo/bonobo-property-bag.[ch]: new implementation. * idl/Bonobo_ConfigDatabase.idl: removed, we use the new PropertyBag instead 2001-05-03 Michael Meeks <michael@ximian.com> * monikers/bonobo-stream-cache.[ch]: port to HEAD. * bonobo/bonobo-stream-memory.c (bonobo_stream_mem_get_type): fix class size buglet * monikers/bonobo-stream-cache.c (create_stream_cache_server): kill. 2001-05-02 Michael Meeks <michael@ximian.com> * tests/Makefile.am: add test-object * tests/test-object.c: add from HEAD bonobo test-xobject 2001-05-02 Michael Meeks <michael@ximian.com> * Serious cruft cleaning - kill unused things. * bonobo/bonobo-persist-stream.c (impl_get_size_max): kill. (bonobo_persist_stream_class_init): kill. (bonobo_persist_stream_size_unknown): kill. (bonobo_persist_stream_new), (bonobo_persist_stream_construct): upd. * idl/Makefile.am: kill Bonobo/Advise, Bonobo/ProgressiveDataSink, Bonobo/DesktopWindow 2001-05-02 Michael Meeks <michael@ximian.com> * bonobo/Makefile.am: remove bonobo-object-io.[ch], bonobo-object-client.[ch] * libbonobo.h: remove bonobo-object-client.h * bonobo-object-client.[ch]: kill totaly. * bonobo/bonobo-moniker-util.c (bonobo_moniker_client_resolve_client_default): removed 2001-05-01 Michael Meeks <michael@ximian.com> * bonobo/Makefile.am: improve IDL compilation dependency code. 2001-05-01 Martin Baulig <martin@gnome.org> * bonobo/Makefile.am (libbonobo_2_la_SOURCES): Added bonobo-object-directory.c. * bonobo/bonobo-object-directory.c (bonobo_directory_find_for_file): #ifdef FIXME this whole function. 2001-04-23 Michael Meeks <michael@ximian.com> * bonobo/bonobo-generic-factory.h: Remove redundant environments 2001-04-24 Martin Baulig <martin@gnome.org> * bonobo/bonobo-marshal.list: Added `VOID:STRING,BOOLEAN' and `VOID:POINTER,INT,POINTER' (for libbonoboui). 2001-04-23 Martin Baulig <martin@gnome.org> * bonobo/bonobo-generic-factory.h (BonoboGenericFactory): Added `GNOME_ObjectFactory corba_objref'. (bonobo_generic_factory_corba_objref): New global function. (bonobo_generic_factory_corba_object_create): Changed return type from CORBA_Object to GNOME_ObjectFactory. (bonobo_generic_factory_construct): Changed type of the `corba_factory' argument from CORBA_Object to GNOME_ObjectFactory. * bonobo/bonobo-generic-factory.c: Make this actually work. * bonobo/bonobo-shlib-factory.c: Likewise. 2001-04-20 Martin Baulig <martin@gnome.org> * configure.in, Makefile.am: Added idl/ directory. 2001-04-20 Michael Meeks <michael@ximian.com> * bonobo/Makefile.am: add bonobo-config-database.[ch] * bonobo/bonobo-config-database.[ch]: add from bonobo-conf * idl/Makefile.am: add Bonobo_ConfigDatabase.idl * idl/Bonobo_ConfigDatabase.idl: add. 2001-04-19 Michael Meeks <michael@ximian.com> * bonobo/Makefile.am: don't install the old no-inst headers. 2001-04-18 Michael Meeks <michael@ximian.com> * bonobo/Makefile.am: remove bonobo-defs.h - unneccessary. remove half cocked libbonoboh. * bonobo/libbonobo.h: remove. * *.[ch] [ except bonobo-xobject.h - for compat ] s/bonobo_x_object/bonobo_object/g; s/BONOBO_X_/BONOBO_/g; s/BonoboXObject/BonoboObject/g; s/BEGIN_BONOBO_DECLS/G_BEGIN_DECLS/g; s/END_BONOBO_DECLS/G_END_DECLS/g; s/\#include[ \t]*<bonobo\/bonobo-defs.h>//; s/bonobo-xobject/bonobo-object/g; 2001-04-18 Michael Meeks <michael@ximian.com> * tests/*.c: update initializations. * bonobo/bonobo-main.c (bonobo_init): add g_type_init. (bonobo_init): add oaf_orb_init, update sig. rename to (bonobo_init_full): this and add (bonobo_init). 2001-04-18 Michael Meeks <michael@ximian.com> * bonobo/bonobo-main.c (bonobo_init): guard against double initialization. 2001-04-18 Michael Meeks <michael@ximian.com> * bonobo/bonobo-object.c (bonobo_object_destroy): remove destroy_id fiddling. (bonobo_object_usage_error): remove for now. * bonobo/bonobo-transient.c (bonobo_transient_get_type): use sizeof (BonoboTransientClass) for the class data. 2001-04-18 Martin Baulig <martin@gnome.org> * configure.in: Removed one of the two GNOME_COMPILE_WARNINGS macros; we only need it once. 2001-04-18 Michael Meeks <michael@ximian.com> * bonobo/bonobo-stream.h: add back to build for compat, include bonobo-storage.h * bonobo/bonobo-running-context.c (bonobo_running_context_new): connect to final_unref. * bonobo/bonobo-object.c (bonobo_object_instance_init): fix thinko. (bonobo_object_class_init): add more useful assertions and add "destroy" signal - this sucks but is very compatible. (bonobo_object_shutdown): impl. 2001-04-18 Michael Meeks <michael@ximian.com> * tests/test-storage.c (stream_copy_tests): prune copyTo test. 2001-04-18 Martin Baulig <martin@gnome.org> * bonobo/*.[ch]: Use <bonobo/bonobo-defs.h> and <bonobo/bonobo-i18n.h> instead of the libgnomebase ones. * bonobo/bonobo-main.c (bonobo_setup_x_error_handler): #ifdef'ed this out. * bonobo/bonobo-defs.h, bonobo/bonobo-i18n.h: New files. * bonobo/libbonobo-init.[ch]: Removed. * configure.in: Don't depend on libgnomebase. 2001-04-18 Martin Baulig <martin@gnome.org> * configure.in: Depend on ORBit-CosNaming-2 and include it in the ORBit check. * bonobo/libbonobo-2.0.pc.in: Added ORBit-CosNaming-2 to the dependency list. 2001-04-17 Michael Meeks <michael@ximian.com> * bonobo/Makefile.am (libbonobo_2_la_SOURCES): add bonobo-property-bag-xml.c * Makefile.am: add libbonobo.h 2001-04-17 Michael Meeks <michael@ximian.com> * bonobo/bonobo-property-bag-xml.h: include bonobo-node.h * bonobo/bonobo-node.[ch]: create from bonobo-ui-node, renaming to suit. (do_strip): Adapt for libxml2. * tests/*: fixup. 2001-04-18 Martin Baulig <martin@gnome.org> * bonobo/bonobo-item-container.[ch]: Ported to GObject. * bonobo/bonobo-marshal.list: Added `POINTER:POINTER,BOOLEAN,POINTER' and `BOOLEAN:POINTER'. 2001-04-17 Michael Meeks <michael@ximian.com> * bonobo/bonobo-generic-factory.c (bonobo_generic_factory_corba_object_create): upd. (activate_servant): drag in from old bonobo-object. (bonobo_generic_factory_corba_object_create): upd. 2001-04-17 Michael Meeks <michael@ximian.com> * bonobo/bonobo-object.c (bonobo_object): impl. (bonobo_object_finalize_real): upd. (do_corba_hacks): move from bonobo_xobject.c (bonobo_object_get_refs): kill. * bonobo/Makefile.am: remove bonobo-xobject.c, leave only the header for compat. * bonobo/bonobo-object.c (bonobo_object_get_epv): kill. (bonobo_object_construct, bonobo_object_new_from_servant), (bonobo_object_bind_to_servant, bonobo_object_activate_servant), (bonobo_object_activate_servant_full): kill. 2001-04-17 Michael Meeks <michael@ximian.com> * idl/Bonobo_Storage.idl: kill copyTo - its Broken! * bonobo/bonobo-stream-memory.c (bonobo_stream_mem_class_init): fill epv. (bonobo_stream_mem_create): upd. (bonobo_stream_mem_get_type): we're a BonoboXObject. (bonobo_stream_mem_construct): upd. * bonobo/bonobo-stream.c (bonobo_stream_open): kill (bonobo_stream_open_full): rename to (bonobo_stream_open): this. * changes.txt: add doc on changes between Bonobo 1.0 and 2.0 2001-04-17 Michael Meeks <michael@ximian.com> * autogen.sh: fixup so we configure, always dump the message of doom. * message-of-doom: make more explicit and doomful. 2001-04-17 Martin Baulig <martin@gnome.org> * tests/Makefile.am: New file; this is almost empty at the moment. 2001-04-17 Martin Baulig <martin@gnome.org> * bonobo/*.[ch]: Ported to GObject. * bonobo/bonobo-exception.h (BONOBO_EX_REPOID): New macro. * bonobo/bonobo-marshal-main.c: New file. * bonobo/bonobo-marshal.list: New file. * bonobo/libbonobo-init.c: New file. * bonobo/libbonobo-init.h: New public header file; you only need to include this to get the module initialization stuff. * bonobo/libbonobo.h: New public header file; if you're only using libbonobo (and not libbonoboui), use <bonobo/libbonobo.h> instead of <bonobo/bonobo.h>. There'll also be <bonobo/libbonoboui.h> in libbonoboui - and <bonobo/bonobo.h> will include both of them. * bonobo/bonobo-main.c (bonobo_main_quit): New function. 2001-04-17 Martin Baulig <martin@gnome.org> * configure.in: Check for gobject and gthread. 2001-04-15 Martin Baulig <martin@gnome.org> * configure.in: Added check for dladdr() from bonobo/configure.in and require libgnomebase. 2001-04-13 Martin Baulig <martin@gnome.org> * bonobo/Makefile.am: Added simple Makefile.am. * bonobo/libbonobo-2.0.pc.in: New file. 2001-04-13 Martin Baulig <martin@gnome.org> * AUTHORS, DEPENDS, HACKING, MAINTAINERS, NEWS, COPYING.LIB, README, TODO, TRANSLATABLE_FILES, USERS, OChangeLog-2000-12-11: Copied here from bonobo. * OChangeLog-2001-04-13: Copied here from bonobo/ChangeLog. ��������������������libbonobo-2.32.1/samples/���������������������������������������������������������������������������0000775�0000764�0000764�00000000000�11546334244�012231� 5����������������������������������������������������������������������������������������������������������������������������������������������������������������������������0000000�0000000������������������������������������������������������������������������������������������������������������������������������������������������������������������������libbonobo-2.32.1/samples/Makefile.am����������������������������������������������������������������0000644�0000764�0000764�00000000016�11173072711�014172� �����������������������������������������������������������������������������������������������������������������������������������������������������������������������������0000000�0000000������������������������������������������������������������������������������������������������������������������������������������������������������������������������SUBDIRS = echo������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������libbonobo-2.32.1/samples/echo/����������������������������������������������������������������������0000775�0000764�0000764�00000000000�11546334244�013147� 5����������������������������������������������������������������������������������������������������������������������������������������������������������������������������0000000�0000000������������������������������������������������������������������������������������������������������������������������������������������������������������������������libbonobo-2.32.1/samples/echo/Bonobo_Sample_Echo.idl������������������������������������������������0000644�0000764�0000764�00000000333�11173072711�017225� �����������������������������������������������������������������������������������������������������������������������������������������������������������������������������0000000�0000000������������������������������������������������������������������������������������������������������������������������������������������������������������������������/* * Sample file that demostrates how to create new * Bonobo interfaces. */ #include <Bonobo.idl> module Bonobo { module Sample { interface Echo : Bonobo::Unknown { void echo (in string message); }; }; }; �����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������libbonobo-2.32.1/samples/echo/echo.c����������������������������������������������������������������0000644�0000764�0000764�00000003722�11173072711�014145� �����������������������������������������������������������������������������������������������������������������������������������������������������������������������������0000000�0000000������������������������������������������������������������������������������������������������������������������������������������������������������������������������/* * echo.c: Implements a Bonobo Echo server * * Author: * Miguel de Icaza (miguel@ximian.com) * * This file is here to show what are the basic steps * neccessary to create a Bonobo Component. */ #include <config.h> #include <libbonobo.h> /* * This pulls the CORBA definitions for the Demo::Echo server */ #include "Bonobo_Sample_Echo.h" /* * This pulls the definition for the BonoboObject (Gtk Type) */ #include "echo.h" /* * A pointer to our parent object class */ static GObjectClass *echo_parent_class; /* * Implemented GObject::finalize */ static void echo_object_finalize (GObject *object) { Echo *echo = ECHO (object); g_free (echo->instance_data); echo_parent_class->finalize (object); } /* * CORBA Demo::Echo::echo method implementation */ static void impl_demo_echo_echo (PortableServer_Servant servant, const CORBA_char *string, CORBA_Environment *ev) { Echo *echo = ECHO (bonobo_object (servant)); /* activation-server-main.c redirects fd 2 to the bit bucket * 2, so we need to freopen stdout if we want the below output * to show up. Try the controlling terminal. */ if (freopen ( #ifdef G_OS_WIN32 "CONOUT$", #else "/dev/tty", #endif "w", stdout)) printf ("Echo message received: %s (echo instance data: %s)\n", string, echo->instance_data); } static void echo_class_init (EchoClass *klass) { GObjectClass *object_class = (GObjectClass *) klass; POA_Bonobo_Sample_Echo__epv *epv = &klass->epv; echo_parent_class = g_type_class_peek_parent (klass); object_class->finalize = echo_object_finalize; epv->echo = impl_demo_echo_echo; } static void echo_init (Echo *echo) { static int i = 0; echo->instance_data = g_strdup_printf ("Hello %d!", i++); } BONOBO_TYPE_FUNC_FULL ( Echo, /* Glib class name */ Bonobo_Sample_Echo, /* CORBA interface name */ BONOBO_TYPE_OBJECT, /* parent type */ echo) /* local prefix ie. 'echo'_class_init */ ����������������������������������������������libbonobo-2.32.1/samples/echo/Bonobo_Sample_Echo.h��������������������������������������������������0000664�0000764�0000764�00000007742�11432275563�016731� �����������������������������������������������������������������������������������������������������������������������������������������������������������������������������0000000�0000000������������������������������������������������������������������������������������������������������������������������������������������������������������������������/* * This file was generated by orbit-idl-2 - DO NOT EDIT! */ #ifndef Bonobo_Sample_Echo_H #define Bonobo_Sample_Echo_H 1 #include <glib.h> #define ORBIT_IDL_SERIAL 20 #include <orbit/orbit-types.h> #ifdef __cplusplus extern "C" { #endif /* __cplusplus */ /** typedefs **/ #include <bonobo/Bonobo.h> #if !defined(ORBIT_DECL_Bonobo_Sample_Echo) && !defined(_Bonobo_Sample_Echo_defined) #define ORBIT_DECL_Bonobo_Sample_Echo 1 #define _Bonobo_Sample_Echo_defined 1 #define Bonobo_Sample_Echo__freekids CORBA_Object__freekids typedef CORBA_Object Bonobo_Sample_Echo; extern CORBA_unsigned_long Bonobo_Sample_Echo__classid; #if !defined(TC_IMPL_TC_Bonobo_Sample_Echo_0) #define TC_IMPL_TC_Bonobo_Sample_Echo_0 'B' #define TC_IMPL_TC_Bonobo_Sample_Echo_1 'o' #define TC_IMPL_TC_Bonobo_Sample_Echo_2 'n' #define TC_IMPL_TC_Bonobo_Sample_Echo_3 'o' #define TC_IMPL_TC_Bonobo_Sample_Echo_4 'b' #define TC_IMPL_TC_Bonobo_Sample_Echo_5 'o' #define TC_IMPL_TC_Bonobo_Sample_Echo_6 '_' #define TC_IMPL_TC_Bonobo_Sample_Echo_7 'S' #define TC_IMPL_TC_Bonobo_Sample_Echo_8 'a' #define TC_IMPL_TC_Bonobo_Sample_Echo_9 'm' #define TC_IMPL_TC_Bonobo_Sample_Echo_10 'p' #define TC_IMPL_TC_Bonobo_Sample_Echo_11 'l' #define TC_IMPL_TC_Bonobo_Sample_Echo_12 'e' #define TC_IMPL_TC_Bonobo_Sample_Echo_13 '_' #define TC_IMPL_TC_Bonobo_Sample_Echo_14 'E' #define TC_IMPL_TC_Bonobo_Sample_Echo_15 'c' #define TC_IMPL_TC_Bonobo_Sample_Echo_16 'h' #define TC_IMPL_TC_Bonobo_Sample_Echo_17 'o' #ifdef ORBIT_IDL_C_IMODULE_Bonobo_Sample_Echo static #else extern #endif ORBIT2_MAYBE_CONST struct CORBA_TypeCode_struct TC_Bonobo_Sample_Echo_struct; #define TC_Bonobo_Sample_Echo ((CORBA_TypeCode)&TC_Bonobo_Sample_Echo_struct) #endif #endif /** POA structures **/ #ifndef _defined_POA_Bonobo_Sample_Echo #define _defined_POA_Bonobo_Sample_Echo 1 typedef struct { void *_private; void (*echo)(PortableServer_Servant _servant, const CORBA_char * message, CORBA_Environment *ev); } POA_Bonobo_Sample_Echo__epv; typedef struct { PortableServer_ServantBase__epv *_base_epv; POA_Bonobo_Unknown__epv *Bonobo_Unknown_epv; POA_Bonobo_Sample_Echo__epv *Bonobo_Sample_Echo_epv; } POA_Bonobo_Sample_Echo__vepv; typedef struct { void *_private; POA_Bonobo_Sample_Echo__vepv *vepv; } POA_Bonobo_Sample_Echo; extern void POA_Bonobo_Sample_Echo__init(PortableServer_Servant servant, CORBA_Environment *ev); extern void POA_Bonobo_Sample_Echo__fini(PortableServer_Servant servant, CORBA_Environment *ev); #endif /* _defined_POA_Bonobo_Sample_Echo */ /** skel prototypes **/ void _ORBIT_skel_small_Bonobo_Sample_Echo_echo(POA_Bonobo_Sample_Echo *_ORBIT_servant, gpointer _ORBIT_retval, gpointer *_ORBIT_args, CORBA_Context ctx,CORBA_Environment *ev, void (*_impl_echo)(PortableServer_Servant _servant, const CORBA_char * message, CORBA_Environment *ev)); /** stub prototypes **/ #define Bonobo_Sample_Echo_ref Bonobo_Unknown_ref #define Bonobo_Sample_Echo_unref Bonobo_Unknown_unref #define Bonobo_Sample_Echo_queryInterface Bonobo_Unknown_queryInterface void Bonobo_Sample_Echo_echo(Bonobo_Sample_Echo _obj, const CORBA_char * message, CORBA_Environment *ev); #include <orbit/orb-core/orbit-interface.h> #ifdef ORBIT_IDL_C_IMODULE_Bonobo_Sample_Echo static #else extern #endif ORBit_IInterface Bonobo_Sample_Echo__iinterface; #define Bonobo_Sample_Echo_IMETHODS_LEN 1 #ifdef ORBIT_IDL_C_IMODULE_Bonobo_Sample_Echo static #else extern #endif ORBit_IMethod Bonobo_Sample_Echo__imethods[Bonobo_Sample_Echo_IMETHODS_LEN]; /** IMethods index */ #ifndef __Bonobo_Sample_Echo__imethods_index #define __Bonobo_Sample_Echo__imethods_index typedef enum { Bonobo_Sample_Echo_echo__imethods_index } Bonobo_Sample_Echo__imethods_index; #endif /* __Bonobo_Sample_Echo__imethods_index */ #ifndef __ORBIT_IMETHODS_INDEX #define __ORBIT_IMETHODS_INDEX #define ORBIT_IMETHODS_INDEX(m) (m ## __imethods_index) #endif /* __ORBIT_IMETHODS_INDEX */ #ifdef __cplusplus } #endif /* __cplusplus */ #ifndef EXCLUDE_ORBIT_H #include <orbit/orbit.h> #endif /* EXCLUDE_ORBIT_H */ #endif #undef ORBIT_IDL_SERIAL ������������������������������libbonobo-2.32.1/samples/echo/Bonobo_Sample_Echo.server.in.in���������������������������������������0000644�0000764�0000764�00000001467�11173072711�021006� �����������������������������������������������������������������������������������������������������������������������������������������������������������������������������0000000�0000000������������������������������������������������������������������������������������������������������������������������������������������������������������������������<oaf_info> <oaf_server iid="OAFIID:Bonobo_Sample_Echo_Factory" type="exe" location="@prefix@/lib/bonobo-2.0/samples/bonobo-echo-2"> <oaf_attribute name="repo_ids" type="stringv"> <item value="IDL:GNOME/ObjectFactory:1.0"/> </oaf_attribute> <oaf_attribute name="name" type="string" _value="Echo component factory"/> <oaf_attribute name="description" type="string" _value="Bonobo Echo server factory"/> </oaf_server> <oaf_server iid="OAFIID:Bonobo_Sample_Echo" type="factory" location="OAFIID:Bonobo_Sample_Echo_Factory"> <oaf_attribute name="repo_ids" type="stringv"> <item value="IDL:Demo/Echo:1.0"/> </oaf_attribute> <oaf_attribute name="name" type="string" _value="Echo component"/> <oaf_attribute name="description" type="string" _value="Bonobo Echo server sample program"/> </oaf_server> </oaf_info> ���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������libbonobo-2.32.1/samples/echo/Makefile.am�����������������������������������������������������������0000664�0000764�0000764�00000003025�11433015514�015112� �����������������������������������������������������������������������������������������������������������������������������������������������������������������������������0000000�0000000������������������������������������������������������������������������������������������������������������������������������������������������������������������������# # Makefile for the sample Echo server/client Bonobo components. # server_dot_in=Bonobo_Sample_Echo.server.in $(server_dot_in): $(server_dot_in).in $(AM_V_GEN) $(SED) -e "s|\@prefix\@|$(prefix)|" $< > $@ samplesdir = $(libdir)/bonobo-2.0/samples samples_PROGRAMS = bonobo-echo-2 bin_PROGRAMS = echo-client-2 noinst_LIBRARIES = libEcho.a bonobo_echo_2_SOURCES = \ main.c \ echo.c \ echo.h bonobo_echo_2_LDADD = \ libEcho.a \ $(top_builddir)/bonobo/libbonobo-2.la \ $(LIBBONOBO_LIBS) \ $(INTLLIBS) echo_client_2_SOURCES = echo-client.c echo_client_2_LDADD = \ libEcho.a \ $(top_builddir)/bonobo/libbonobo-2.la \ $(LIBBONOBO_LIBS) \ $(INTLLIBS) ECHO_CORBA_GENERATED = \ Bonobo_Sample_Echo-common.c \ Bonobo_Sample_Echo-skels.c \ Bonobo_Sample_Echo-stubs.c \ Bonobo_Sample_Echo.h libEcho_a_SOURCES = $(ECHO_CORBA_GENERATED) $(ECHO_CORBA_GENERATED): Bonobo_Sample_Echo.idl $(ORBIT_IDL) $(AM_V_GEN) $(ORBIT_IDL) -I$(top_srcdir)/idl $(srcdir)/Bonobo_Sample_Echo.idl serverdir = $(libdir)/bonobo/servers server_in_files = $(server_dot_in) server_DATA = $(server_in_files:.server.in=.server) @INTLTOOL_SERVER_RULE@ idldir = $(datadir)/idl/bonobo-2.0 idl_DATA = Bonobo_Sample_Echo.idl EXTRA_DIST = $(server_DATA) $(idl_DATA) $(server_dot_in).in INCLUDES = \ -DGNOMELOCALEDIR=\""$(datadir)/locale"\" \ -DG_LOG_DOMAIN=\"Echo\" \ -I$(top_srcdir) \ $(LIBBONOBO_CFLAGS) \ $(DISABLE_DEPRECATED_CFLAGS) \ $(WARN_CFLAGS) CLEANFILES = $(server_dot_in) $(server_DATA) �����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������libbonobo-2.32.1/samples/echo/echo-client.c���������������������������������������������������������0000644�0000764�0000764�00000002250�11173072711�015414� �����������������������������������������������������������������������������������������������������������������������������������������������������������������������������0000000�0000000������������������������������������������������������������������������������������������������������������������������������������������������������������������������/* * Sample user for the Echo Bonobo component * * Author: * Miguel de Icaza (miguel@helixcode.com) */ #include <config.h> #include <glib/gi18n.h> #include <libbonobo.h> #include "Bonobo_Sample_Echo.h" int main (int argc, char *argv []) { Bonobo_Sample_Echo echo_server; CORBA_Environment ev; /* * Initialize bonobo. */ if (!bonobo_init (&argc, argv)) g_error (_("I could not initialize Bonobo")); /* * Enable CORBA/Bonobo to start processing requests */ bonobo_activate (); echo_server = bonobo_get_object ("OAFIID:Bonobo_Sample_Echo", "Bonobo/Sample/Echo", NULL); if (echo_server == CORBA_OBJECT_NIL) { g_warning (_("Could not create an instance of the sample echo component")); return bonobo_debug_shutdown (); } /* Send a message */ CORBA_exception_init (&ev); Bonobo_Sample_Echo_echo (echo_server, "This is the message from the client\n", &ev); /* Check for exceptions */ if (BONOBO_EX (&ev)) { char *err = bonobo_exception_get_text (&ev); g_warning (_("An exception occurred '%s'"), err); g_free (err); } CORBA_exception_free (&ev); bonobo_object_release_unref (echo_server, NULL); return bonobo_debug_shutdown (); } ��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������libbonobo-2.32.1/samples/echo/Bonobo_Sample_Echo-common.c�������������������������������������������0000664�0000764�0000764�00000005441�11432275563�020204� �����������������������������������������������������������������������������������������������������������������������������������������������������������������������������0000000�0000000������������������������������������������������������������������������������������������������������������������������������������������������������������������������/* * This file was generated by orbit-idl-2 - DO NOT EDIT! */ #include <string.h> #define ORBIT2_STUBS_API #define ORBIT_IDL_C_COMMON #define Bonobo_Sample_Echo_COMMON #include "Bonobo_Sample_Echo.h" static const CORBA_unsigned_long ORBit_zero_int = 0; #ifndef ORBIT_IDL_C_IMODULE_Bonobo_Sample_Echo void _ORBIT_skel_small_Bonobo_Sample_Echo_echo(POA_Bonobo_Sample_Echo *_o_servant, gpointer _o_retval,gpointer *_o_args,CORBA_Context _o_ctx,CORBA_Environment *_o_ev, void (*_impl_echo)(PortableServer_Servant _servant, const CORBA_char * message, CORBA_Environment *ev)) { _impl_echo (_o_servant, *(const CORBA_char * *)_o_args[0], _o_ev); } #endif #if ( (TC_IMPL_TC_Bonobo_Sample_Echo_0 == 'B') \ && (TC_IMPL_TC_Bonobo_Sample_Echo_1 == 'o') \ && (TC_IMPL_TC_Bonobo_Sample_Echo_2 == 'n') \ && (TC_IMPL_TC_Bonobo_Sample_Echo_3 == 'o') \ && (TC_IMPL_TC_Bonobo_Sample_Echo_4 == 'b') \ && (TC_IMPL_TC_Bonobo_Sample_Echo_5 == 'o') \ && (TC_IMPL_TC_Bonobo_Sample_Echo_6 == '_') \ && (TC_IMPL_TC_Bonobo_Sample_Echo_7 == 'S') \ && (TC_IMPL_TC_Bonobo_Sample_Echo_8 == 'a') \ && (TC_IMPL_TC_Bonobo_Sample_Echo_9 == 'm') \ && (TC_IMPL_TC_Bonobo_Sample_Echo_10 == 'p') \ && (TC_IMPL_TC_Bonobo_Sample_Echo_11 == 'l') \ && (TC_IMPL_TC_Bonobo_Sample_Echo_12 == 'e') \ && (TC_IMPL_TC_Bonobo_Sample_Echo_13 == '_') \ && (TC_IMPL_TC_Bonobo_Sample_Echo_14 == 'E') \ && (TC_IMPL_TC_Bonobo_Sample_Echo_15 == 'c') \ && (TC_IMPL_TC_Bonobo_Sample_Echo_16 == 'h') \ && (TC_IMPL_TC_Bonobo_Sample_Echo_17 == 'o') \ ) && !defined(TC_DEF_TC_Bonobo_Sample_Echo) #define TC_DEF_TC_Bonobo_Sample_Echo 1 #ifdef ORBIT_IDL_C_IMODULE_Bonobo_Sample_Echo static #endif ORBIT2_MAYBE_CONST struct CORBA_TypeCode_struct TC_Bonobo_Sample_Echo_struct = { {&ORBit_TypeCode_epv, ORBIT_REFCOUNT_STATIC}, CORBA_tk_objref, 0, 0, ORBIT_ALIGNOF_CORBA_POINTER, 0, 0 , NULL, CORBA_OBJECT_NIL, (char *)"Echo", (char *)"IDL:Bonobo/Sample/Echo:1.0", NULL, NULL, -1, 0, 0, 0 }; #endif #ifndef ORBIT_IDL_C_IMODULE_Bonobo_Sample_Echo CORBA_unsigned_long Bonobo_Sample_Echo__classid = 0; #endif /* Interface type data */ static ORBit_IArg Bonobo_Sample_Echo_echo__arginfo [] = { { TC_CORBA_string, ORBit_I_ARG_IN , (char *)"message" } }; #ifdef ORBIT_IDL_C_IMODULE_Bonobo_Sample_Echo static #endif ORBit_IMethod Bonobo_Sample_Echo__imethods [] = { { { 1, 1, Bonobo_Sample_Echo_echo__arginfo, FALSE }, { 0, 0, NULL, FALSE }, { 0, 0, NULL, FALSE }, TC_void, (char *)"echo", 4, 0 } }; static CORBA_string Bonobo_Sample_Echo__base_itypes[] = { (char *)"IDL:Bonobo/Unknown:1.0", (char *)"IDL:omg.org/CORBA/Object:1.0" }; #ifdef ORBIT_IDL_C_IMODULE_Bonobo_Sample_Echo static #endif ORBit_IInterface Bonobo_Sample_Echo__iinterface = { TC_Bonobo_Sample_Echo,{1, 1, Bonobo_Sample_Echo__imethods, FALSE}, {2, 2, Bonobo_Sample_Echo__base_itypes, FALSE} }; �������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������libbonobo-2.32.1/samples/echo/README����������������������������������������������������������������0000644�0000764�0000764�00000000353�11173072711�013740� �����������������������������������������������������������������������������������������������������������������������������������������������������������������������������0000000�0000000������������������������������������������������������������������������������������������������������������������������������������������������������������������������This directory contains a sample to demonstrate how to create Bonobo component. The Echo Bonobo Component is a full implementation of a simple Bonobo component, with an Echo Server factory that will create Echo servers on demand. �������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������libbonobo-2.32.1/samples/echo/echo.h����������������������������������������������������������������0000644�0000764�0000764�00000001465�11173072711�014154� �����������������������������������������������������������������������������������������������������������������������������������������������������������������������������0000000�0000000������������������������������������������������������������������������������������������������������������������������������������������������������������������������/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ #ifndef _ECHO_H_ #define _ECHO_H_ #include <bonobo/bonobo-object.h> G_BEGIN_DECLS #define ECHO_TYPE (echo_get_type ()) #define ECHO(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), ECHO_TYPE, Echo)) #define ECHO_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), ECHO_TYPE, EchoClass)) #define ECHO_IS_OBJECT(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), ECHO_TYPE)) #define ECHO_IS_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), ECHO_TYPE)) #define ECHO_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), ECHO_TYPE, EchoClass)) typedef struct { BonoboObject parent; char *instance_data; } Echo; typedef struct { BonoboObjectClass parent_class; POA_Bonobo_Sample_Echo__epv epv; } EchoClass; GType echo_get_type (void); G_END_DECLS #endif /* _ECHO_H_ */ �����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������libbonobo-2.32.1/samples/echo/Bonobo_Sample_Echo-stubs.c��������������������������������������������0000664�0000764�0000764�00000001037�11432275563�020051� �����������������������������������������������������������������������������������������������������������������������������������������������������������������������������0000000�0000000������������������������������������������������������������������������������������������������������������������������������������������������������������������������/* * This file was generated by orbit-idl-2 - DO NOT EDIT! */ #include <string.h> #define ORBIT2_STUBS_API #include "Bonobo_Sample_Echo.h" void Bonobo_Sample_Echo_echo(Bonobo_Sample_Echo _obj, const CORBA_char * message, CORBA_Environment *ev){ gpointer _args[1]; _args[0] = (gpointer)&message; ORBit_c_stub_invoke (_obj, &Bonobo_Sample_Echo__iinterface.methods, 0, NULL, _args, NULL, ev, Bonobo_Sample_Echo__classid, G_STRUCT_OFFSET (POA_Bonobo_Sample_Echo__epv, echo), (ORBitSmallSkeleton) _ORBIT_skel_small_Bonobo_Sample_Echo_echo); } �������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������libbonobo-2.32.1/samples/echo/Makefile.in�����������������������������������������������������������0000664�0000764�0000764�00000064030�11546333030�015127� �����������������������������������������������������������������������������������������������������������������������������������������������������������������������������0000000�0000000������������������������������������������������������������������������������������������������������������������������������������������������������������������������# Makefile.in generated by automake 1.11.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008, 2009 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@ # # Makefile for the sample Echo server/client Bonobo components. # VPATH = @srcdir@ 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@ samples_PROGRAMS = bonobo-echo-2$(EXEEXT) bin_PROGRAMS = echo-client-2$(EXEEXT) subdir = samples/echo DIST_COMMON = README $(srcdir)/Makefile.am $(srcdir)/Makefile.in \ ChangeLog ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.in 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 = LIBRARIES = $(noinst_LIBRARIES) ARFLAGS = cru AM_V_AR = $(am__v_AR_$(V)) am__v_AR_ = $(am__v_AR_$(AM_DEFAULT_VERBOSITY)) am__v_AR_0 = @echo " AR " $@; AM_V_at = $(am__v_at_$(V)) am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) am__v_at_0 = @ libEcho_a_AR = $(AR) $(ARFLAGS) libEcho_a_LIBADD = am__objects_1 = Bonobo_Sample_Echo-common.$(OBJEXT) \ Bonobo_Sample_Echo-skels.$(OBJEXT) \ Bonobo_Sample_Echo-stubs.$(OBJEXT) am_libEcho_a_OBJECTS = $(am__objects_1) libEcho_a_OBJECTS = $(am_libEcho_a_OBJECTS) am__installdirs = "$(DESTDIR)$(bindir)" "$(DESTDIR)$(samplesdir)" \ "$(DESTDIR)$(idldir)" "$(DESTDIR)$(serverdir)" PROGRAMS = $(bin_PROGRAMS) $(samples_PROGRAMS) am_bonobo_echo_2_OBJECTS = main.$(OBJEXT) echo.$(OBJEXT) bonobo_echo_2_OBJECTS = $(am_bonobo_echo_2_OBJECTS) am__DEPENDENCIES_1 = bonobo_echo_2_DEPENDENCIES = libEcho.a \ $(top_builddir)/bonobo/libbonobo-2.la $(am__DEPENDENCIES_1) \ $(am__DEPENDENCIES_1) AM_V_lt = $(am__v_lt_$(V)) am__v_lt_ = $(am__v_lt_$(AM_DEFAULT_VERBOSITY)) am__v_lt_0 = --silent am_echo_client_2_OBJECTS = echo-client.$(OBJEXT) echo_client_2_OBJECTS = $(am_echo_client_2_OBJECTS) echo_client_2_DEPENDENCIES = libEcho.a \ $(top_builddir)/bonobo/libbonobo-2.la $(am__DEPENDENCIES_1) \ $(am__DEPENDENCIES_1) 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_$(V)) am__v_CC_ = $(am__v_CC_$(AM_DEFAULT_VERBOSITY)) 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_$(V)) am__v_CCLD_ = $(am__v_CCLD_$(AM_DEFAULT_VERBOSITY)) am__v_CCLD_0 = @echo " CCLD " $@; AM_V_GEN = $(am__v_GEN_$(V)) am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) am__v_GEN_0 = @echo " GEN " $@; SOURCES = $(libEcho_a_SOURCES) $(bonobo_echo_2_SOURCES) \ $(echo_client_2_SOURCES) DIST_SOURCES = $(libEcho_a_SOURCES) $(bonobo_echo_2_SOURCES) \ $(echo_client_2_SOURCES) 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' DATA = $(idl_DATA) $(server_DATA) ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ AR = @AR@ AS = @AS@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ BONOBO_ACTIVATION_LT_VERSION_INFO = @BONOBO_ACTIVATION_LT_VERSION_INFO@ BONOBO_MAJOR_VERSION = @BONOBO_MAJOR_VERSION@ BONOBO_MICRO_VERSION = @BONOBO_MICRO_VERSION@ BONOBO_MINOR_VERSION = @BONOBO_MINOR_VERSION@ BONOBO_SLAY = @BONOBO_SLAY@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DISABLE_DEPRECATED_CFLAGS = @DISABLE_DEPRECATED_CFLAGS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GREP = @GREP@ GTHREAD_CFLAGS = @GTHREAD_CFLAGS@ GTHREAD_LIBS = @GTHREAD_LIBS@ GTKDOC_CHECK = @GTKDOC_CHECK@ GTKDOC_MKPDF = @GTKDOC_MKPDF@ GTKDOC_REBASE = @GTKDOC_REBASE@ HTML_DIR = @HTML_DIR@ IF_BSD_PS = @IF_BSD_PS@ IF_CYGWIN_PS = @IF_CYGWIN_PS@ IF_POSIX_PS = @IF_POSIX_PS@ 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@ LD = @LD@ LDFLAGS = @LDFLAGS@ LEX = @LEX@ LEXLIB = @LEXLIB@ LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ LFLAGS = @LFLAGS@ LIBBONOBO_CFLAGS = @LIBBONOBO_CFLAGS@ LIBBONOBO_LIBS = @LIBBONOBO_LIBS@ LIBBONOBO_LT_VERSION_INFO = @LIBBONOBO_LT_VERSION_INFO@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIPO = @LIPO@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ NM = @NM@ NMEDIT = @NMEDIT@ OBJDUMP = @OBJDUMP@ OBJEXT = @OBJEXT@ ORBIT_IDL = @ORBIT_IDL@ OTOOL = @OTOOL@ OTOOL64 = @OTOOL64@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PERL_PATH = @PERL_PATH@ PKG_CONFIG = @PKG_CONFIG@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ PS_PATH = @PS_PATH@ RANLIB = @RANLIB@ SEARCHPATHSEP = @SEARCHPATHSEP@ SED = @SED@ SERVER_CFLAGS = @SERVER_CFLAGS@ SERVER_LIBS = @SERVER_LIBS@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SOPREFIX = @SOPREFIX@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ WARN_CFLAGS = @WARN_CFLAGS@ XGETTEXT = @XGETTEXT@ YACC = @YACC@ YFLAGS = @YFLAGS@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ 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@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ lt_ECHO = @lt_ECHO@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ 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@ server_dot_in = Bonobo_Sample_Echo.server.in samplesdir = $(libdir)/bonobo-2.0/samples noinst_LIBRARIES = libEcho.a bonobo_echo_2_SOURCES = \ main.c \ echo.c \ echo.h bonobo_echo_2_LDADD = \ libEcho.a \ $(top_builddir)/bonobo/libbonobo-2.la \ $(LIBBONOBO_LIBS) \ $(INTLLIBS) echo_client_2_SOURCES = echo-client.c echo_client_2_LDADD = \ libEcho.a \ $(top_builddir)/bonobo/libbonobo-2.la \ $(LIBBONOBO_LIBS) \ $(INTLLIBS) ECHO_CORBA_GENERATED = \ Bonobo_Sample_Echo-common.c \ Bonobo_Sample_Echo-skels.c \ Bonobo_Sample_Echo-stubs.c \ Bonobo_Sample_Echo.h libEcho_a_SOURCES = $(ECHO_CORBA_GENERATED) serverdir = $(libdir)/bonobo/servers server_in_files = $(server_dot_in) server_DATA = $(server_in_files:.server.in=.server) idldir = $(datadir)/idl/bonobo-2.0 idl_DATA = Bonobo_Sample_Echo.idl EXTRA_DIST = $(server_DATA) $(idl_DATA) $(server_dot_in).in INCLUDES = \ -DGNOMELOCALEDIR=\""$(datadir)/locale"\" \ -DG_LOG_DOMAIN=\"Echo\" \ -I$(top_srcdir) \ $(LIBBONOBO_CFLAGS) \ $(DISABLE_DEPRECATED_CFLAGS) \ $(WARN_CFLAGS) CLEANFILES = $(server_dot_in) $(server_DATA) 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) --foreign samples/echo/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --foreign samples/echo/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-noinstLIBRARIES: -test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES) libEcho.a: $(libEcho_a_OBJECTS) $(libEcho_a_DEPENDENCIES) $(AM_V_at)-rm -f libEcho.a $(AM_V_AR)$(libEcho_a_AR) libEcho.a $(libEcho_a_OBJECTS) $(libEcho_a_LIBADD) $(AM_V_at)$(RANLIB) libEcho.a install-binPROGRAMS: $(bin_PROGRAMS) @$(NORMAL_INSTALL) test -z "$(bindir)" || $(MKDIR_P) "$(DESTDIR)$(bindir)" @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \ 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)$(bindir)$$dir'"; \ $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(bindir)$$dir" || exit $$?; \ } \ ; done uninstall-binPROGRAMS: @$(NORMAL_UNINSTALL) @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || 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)$(bindir)' && rm -f" $$files ")"; \ cd "$(DESTDIR)$(bindir)" && rm -f $$files clean-binPROGRAMS: @list='$(bin_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 install-samplesPROGRAMS: $(samples_PROGRAMS) @$(NORMAL_INSTALL) test -z "$(samplesdir)" || $(MKDIR_P) "$(DESTDIR)$(samplesdir)" @list='$(samples_PROGRAMS)'; test -n "$(samplesdir)" || list=; \ 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)$(samplesdir)$$dir'"; \ $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(samplesdir)$$dir" || exit $$?; \ } \ ; done uninstall-samplesPROGRAMS: @$(NORMAL_UNINSTALL) @list='$(samples_PROGRAMS)'; test -n "$(samplesdir)" || 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)$(samplesdir)' && rm -f" $$files ")"; \ cd "$(DESTDIR)$(samplesdir)" && rm -f $$files clean-samplesPROGRAMS: @list='$(samples_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 bonobo-echo-2$(EXEEXT): $(bonobo_echo_2_OBJECTS) $(bonobo_echo_2_DEPENDENCIES) @rm -f bonobo-echo-2$(EXEEXT) $(AM_V_CCLD)$(LINK) $(bonobo_echo_2_OBJECTS) $(bonobo_echo_2_LDADD) $(LIBS) echo-client-2$(EXEEXT): $(echo_client_2_OBJECTS) $(echo_client_2_DEPENDENCIES) @rm -f echo-client-2$(EXEEXT) $(AM_V_CCLD)$(LINK) $(echo_client_2_OBJECTS) $(echo_client_2_LDADD) $(LIBS) mostlyclean-compile: -rm -f *.$(OBJEXT) distclean-compile: -rm -f *.tab.c @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Bonobo_Sample_Echo-common.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Bonobo_Sample_Echo-skels.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Bonobo_Sample_Echo-stubs.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/echo-client.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/echo.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/main.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 @am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(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 @am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(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 @am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $< mostlyclean-libtool: -rm -f *.lo clean-libtool: -rm -rf .libs _libs install-idlDATA: $(idl_DATA) @$(NORMAL_INSTALL) test -z "$(idldir)" || $(MKDIR_P) "$(DESTDIR)$(idldir)" @list='$(idl_DATA)'; test -n "$(idldir)" || list=; \ 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)$(idldir)'"; \ $(INSTALL_DATA) $$files "$(DESTDIR)$(idldir)" || exit $$?; \ done uninstall-idlDATA: @$(NORMAL_UNINSTALL) @list='$(idl_DATA)'; test -n "$(idldir)" || list=; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ test -n "$$files" || exit 0; \ echo " ( cd '$(DESTDIR)$(idldir)' && rm -f" $$files ")"; \ cd "$(DESTDIR)$(idldir)" && rm -f $$files install-serverDATA: $(server_DATA) @$(NORMAL_INSTALL) test -z "$(serverdir)" || $(MKDIR_P) "$(DESTDIR)$(serverdir)" @list='$(server_DATA)'; test -n "$(serverdir)" || list=; \ 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)$(serverdir)'"; \ $(INSTALL_DATA) $$files "$(DESTDIR)$(serverdir)" || exit $$?; \ done uninstall-serverDATA: @$(NORMAL_UNINSTALL) @list='$(server_DATA)'; test -n "$(serverdir)" || list=; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ test -n "$$files" || exit 0; \ echo " ( cd '$(DESTDIR)$(serverdir)' && rm -f" $$files ")"; \ cd "$(DESTDIR)$(serverdir)" && rm -f $$files 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: check-am all-am: Makefile $(LIBRARIES) $(PROGRAMS) $(DATA) installdirs: for dir in "$(DESTDIR)$(bindir)" "$(DESTDIR)$(samplesdir)" "$(DESTDIR)$(idldir)" "$(DESTDIR)$(serverdir)"; 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: $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install 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-binPROGRAMS clean-generic clean-libtool \ clean-noinstLIBRARIES clean-samplesPROGRAMS 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-idlDATA install-samplesPROGRAMS \ install-serverDATA install-dvi: install-dvi-am install-dvi-am: install-exec-am: install-binPROGRAMS 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-binPROGRAMS uninstall-idlDATA \ uninstall-samplesPROGRAMS uninstall-serverDATA .MAKE: install-am install-strip .PHONY: CTAGS GTAGS all all-am check check-am clean clean-binPROGRAMS \ clean-generic clean-libtool clean-noinstLIBRARIES \ clean-samplesPROGRAMS ctags distclean distclean-compile \ distclean-generic distclean-libtool distclean-tags distdir dvi \ dvi-am html html-am info info-am install install-am \ install-binPROGRAMS install-data install-data-am install-dvi \ install-dvi-am install-exec install-exec-am install-html \ install-html-am install-idlDATA install-info install-info-am \ install-man install-pdf install-pdf-am install-ps \ install-ps-am install-samplesPROGRAMS install-serverDATA \ 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-binPROGRAMS uninstall-idlDATA \ uninstall-samplesPROGRAMS uninstall-serverDATA $(server_dot_in): $(server_dot_in).in $(AM_V_GEN) $(SED) -e "s|\@prefix\@|$(prefix)|" $< > $@ $(ECHO_CORBA_GENERATED): Bonobo_Sample_Echo.idl $(ORBIT_IDL) $(AM_V_GEN) $(ORBIT_IDL) -I$(top_srcdir)/idl $(srcdir)/Bonobo_Sample_Echo.idl @INTLTOOL_SERVER_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: ��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������libbonobo-2.32.1/samples/echo/Bonobo_Sample_Echo.server���������������������������������������������0000664�0000764�0000764�00000076736�11546333044�020014� �����������������������������������������������������������������������������������������������������������������������������������������������������������������������������0000000�0000000������������������������������������������������������������������������������������������������������������������������������������������������������������������������<oaf_info> <oaf_server iid="OAFIID:Bonobo_Sample_Echo_Factory" type="exe" location="/opt/gnome/lib/bonobo-2.0/samples/bonobo-echo-2"> <oaf_attribute name="repo_ids" type="stringv"> <item value="IDL:GNOME/ObjectFactory:1.0"/> </oaf_attribute> <oaf_attribute name="name" type="string" value="Echo component factory"/> <oaf_attribute name="name-ar" type="string" value="مصنع لمكون الصدى"/> <oaf_attribute name="name-as" type="string" value="Echo বস্তুৰ ফ্যাক্টৰি"/> <oaf_attribute name="name-ast" type="string" value="Fábrica del componente echo (eco)"/> <oaf_attribute name="name-az" type="string" value="Əks-səda hissə fabrika"/> <oaf_attribute name="name-be" type="string" value="Вытворчасьць кампанэнты Echo"/> <oaf_attribute name="name-bg" type="string" value="Фабрика на компонента „Ехо“"/> <oaf_attribute name="name-bn" type="string" value="ইকো কম্পোনেন্টের ফ্যাক্টরি"/> <oaf_attribute name="name-bn_IN" type="string" value="Echo বস্তুর ফ্যাক্টরি"/> <oaf_attribute name="name-br" type="string" value="Stal elfenn Echo"/> <oaf_attribute name="name-bs" type="string" value="Tvornica Echo komponenti"/> <oaf_attribute name="name-ca" type="string" value="Fàbrica de component d'eco"/> <oaf_attribute name="name-ca@valencia" type="string" value="Fàbrica de component d'eco"/> <oaf_attribute name="name-cs" type="string" value="Generátor komponenty Echo"/> <oaf_attribute name="name-cy" type="string" value="ffatri cydran Echo"/> <oaf_attribute name="name-da" type="string" value="Ekkokomponentfabrik"/> <oaf_attribute name="name-de" type="string" value="Echo-Komponentenfabrik"/> <oaf_attribute name="name-dz" type="string" value="བྲག་ཆའི་ཆ་ཤས་འཕྲུལ་ཁང༌།"/> <oaf_attribute name="name-el" type="string" value="Εργοστάσιο συστατικού ηχούς"/> <oaf_attribute name="name-en@shaw" type="string" value="𐑧𐑒𐑴 𐑒𐑩𐑥𐑐𐑴𐑯𐑩𐑯𐑑 𐑓𐑨𐑒𐑑𐑼𐑦"/> <oaf_attribute name="name-en_CA" type="string" value="Echo component factory"/> <oaf_attribute name="name-en_GB" type="string" value="Echo component factory"/> <oaf_attribute name="name-eo" type="string" value="Fabrikejo de Echo-a komponanto"/> <oaf_attribute name="name-es" type="string" value="Fábrica del componente echo (eco)"/> <oaf_attribute name="name-et" type="string" value="Kajakomponendi factory"/> <oaf_attribute name="name-eu" type="string" value="Echo osagai-fabrika"/> <oaf_attribute name="name-fi" type="string" value="Kaikukomponenttitehdas"/> <oaf_attribute name="name-fr" type="string" value="Fabrique de composant Echo"/> <oaf_attribute name="name-gl" type="string" value="Factoría de compoñente Echo"/> <oaf_attribute name="name-gu" type="string" value="ઈકોના ભાગોનું કારખાનું"/> <oaf_attribute name="name-he" type="string" value="Echo component factory"/> <oaf_attribute name="name-hi" type="string" value="इको अवयव फैक्ट्री"/> <oaf_attribute name="name-hr" type="string" value="Tvornica Echo komponenti"/> <oaf_attribute name="name-hu" type="string" value="Echo komponens factory"/> <oaf_attribute name="name-hy" type="string" value="Echo բաղադրիչի ֆաբրիկա"/> <oaf_attribute name="name-id" type="string" value="Pabrik komponen Echo"/> <oaf_attribute name="name-is" type="string" value="Echo íhlutaverksmiðja"/> <oaf_attribute name="name-it" type="string" value="Fabbrica componente Echo"/> <oaf_attribute name="name-ja" type="string" value="Echo コンポーネント・ファクトリ"/> <oaf_attribute name="name-ka" type="string" value="ექოს კომპონენტის საწარმო"/> <oaf_attribute name="name-kn" type="string" value="Echo ಘಟಕದ ಫ್ಯಾಕ್ಟರಿ"/> <oaf_attribute name="name-ko" type="string" value="메아리 컴포넌트 팩토리"/> <oaf_attribute name="name-li" type="string" value="Echo komponènt febrik"/> <oaf_attribute name="name-lt" type="string" value="Aido komponento gamykla"/> <oaf_attribute name="name-lv" type="string" value="Echo komponentes ražotne"/> <oaf_attribute name="name-mai" type="string" value="इको अवयव फैक्ट्री"/> <oaf_attribute name="name-mg" type="string" value="Toerana fanamboarana ny singan'ny Echo"/> <oaf_attribute name="name-mk" type="string" value="Фабрика за ехо компоненти"/> <oaf_attribute name="name-ml" type="string" value="Echo ഘടകം ശാല"/> <oaf_attribute name="name-mn" type="string" value="Echo-бүрэлдхүүний үйлдвэр"/> <oaf_attribute name="name-mr" type="string" value="Echo भाग फॅक्ट्री"/> <oaf_attribute name="name-ms" type="string" value="Kilang komponen Echo"/> <oaf_attribute name="name-nb" type="string" value="Factory for Ekko-komponent"/> <oaf_attribute name="name-ne" type="string" value="प्रतिध्वनि अवयव कारखाना"/> <oaf_attribute name="name-nl" type="string" value="Echo component fabriek"/> <oaf_attribute name="name-nn" type="string" value="Ekkokomponent fabrikk"/> <oaf_attribute name="name-or" type="string" value="ପ୍ରତିଧ୍ବନି ଯନ୍ତ୍ରାଂଶ କାରଖାନା"/> <oaf_attribute name="name-pa" type="string" value="ਈਚੋ ਭਾਗ ਫੈਕਟਰੀ"/> <oaf_attribute name="name-pl" type="string" value="Generator komponentów Echo"/> <oaf_attribute name="name-pt" type="string" value="Fábrica de componente Echo"/> <oaf_attribute name="name-pt_BR" type="string" value="Fábrica de componente do Echo"/> <oaf_attribute name="name-ro" type="string" value="Fabrica componentei Echo"/> <oaf_attribute name="name-ru" type="string" value="Фабрика компонента Эхо"/> <oaf_attribute name="name-sk" type="string" value="Továreň komponentu echo"/> <oaf_attribute name="name-sl" type="string" value="Tovarna sestavine odmevov"/> <oaf_attribute name="name-sq" type="string" value="Fabrika e përbërësit Echo"/> <oaf_attribute name="name-sr" type="string" value="Творница Echo компоненте"/> <oaf_attribute name="name-sr@latin" type="string" value="Tvornica Echo komponente"/> <oaf_attribute name="name-sv" type="string" value="Ekokomponentfabrik"/> <oaf_attribute name="name-ta" type="string" value="எதிரளிப்பு கூறு தொழிற்சாலை"/> <oaf_attribute name="name-te" type="string" value="Echo ములకము ఫాక్టరీ"/> <oaf_attribute name="name-th" type="string" value="โรงงานองค์ประกอบ Echo"/> <oaf_attribute name="name-tr" type="string" value="Echo içerik üreticisi"/> <oaf_attribute name="name-ug" type="string" value="Echo بۆلەك زاۋۇتى"/> <oaf_attribute name="name-uk" type="string" value="Фабрика компонентів відлуння"/> <oaf_attribute name="name-vi" type="string" value="Bộ tạo thành phần vọng"/> <oaf_attribute name="name-xh" type="string" value="Ifektri yelungu lentlokoma"/> <oaf_attribute name="name-yi" type="string" value="װידערקול־קאָמפּאָנענט פֿאַבריק"/> <oaf_attribute name="name-zh_CN" type="string" value="Echo 部件车间"/> <oaf_attribute name="name-zh_HK" type="string" value="Echo 元件工廠"/> <oaf_attribute name="name-zh_TW" type="string" value="Echo 元件工廠"/> <oaf_attribute name="description" type="string" value="Bonobo Echo server factory"/> <oaf_attribute name="description-ar" type="string" value="مصنع خادوم صدى بونوبو"/> <oaf_attribute name="description-as" type="string" value="Bonobo Echo সেৱক ফ্যাক্টৰি"/> <oaf_attribute name="description-ast" type="string" value="Fábrica del sirvidor Bonobo Echo (eco)"/> <oaf_attribute name="description-az" type="string" value="Bonobo Əks-səda verici fabrika"/> <oaf_attribute name="description-be" type="string" value="Вытворчасьць паслужніку Bonobo Echo"/> <oaf_attribute name="description-bg" type="string" value="Сървърна фабрика за ехо на Bonobo"/> <oaf_attribute name="description-bn" type="string" value="বোনোবো ইকো সার্ভার ফ্যাক্টরি"/> <oaf_attribute name="description-bn_IN" type="string" value="Bonobo Echo সার্ভার ফ্যাক্টরি"/> <oaf_attribute name="description-br" type="string" value="Stal server Bonobo Echo"/> <oaf_attribute name="description-bs" type="string" value="Bonobo tvornica Echo servera"/> <oaf_attribute name="description-ca" type="string" value="Fàbrica del servidor d'eco del Bonobo"/> <oaf_attribute name="description-ca@valencia" type="string" value="Fàbrica del servidor d'eco del Bonobo"/> <oaf_attribute name="description-cs" type="string" value="Generátor serveru Bonobo Echo"/> <oaf_attribute name="description-cy" type="string" value="ffatri gweinydd Echo Bonobo"/> <oaf_attribute name="description-da" type="string" value="Bonobo-ekkoserverfabrik"/> <oaf_attribute name="description-de" type="string" value="Bonobo-Echo-Server-Fabrik"/> <oaf_attribute name="description-dz" type="string" value="བཱོ་ནོ་བཱོ་ བྲག་ཅའི་སར་བར་འཕྲུལ་ཁང༌།"/> <oaf_attribute name="description-el" type="string" value="Εργοστάσιο εξυπηρετητή Ηχούς Bonobo"/> <oaf_attribute name="description-en@shaw" type="string" value="·𐑚𐑭𐑯𐑭𐑚𐑴 𐑧𐑒𐑴 𐑕𐑻𐑝𐑼 𐑓𐑨𐑒𐑑𐑼𐑦"/> <oaf_attribute name="description-en_CA" type="string" value="Bonobo Echo server factory"/> <oaf_attribute name="description-en_GB" type="string" value="Bonobo Echo server factory"/> <oaf_attribute name="description-eo" type="string" value="Fabrikejo de Bonobo-Echo-servilo"/> <oaf_attribute name="description-es" type="string" value="Fábrica del servidor Bonobo Echo (eco)"/> <oaf_attribute name="description-et" type="string" value="Bonobo Kajaserveri factory"/> <oaf_attribute name="description-eu" type="string" value="Bonobo Echo zerbitzari-fabrika"/> <oaf_attribute name="description-fi" type="string" value="Bonobo-kaikupalvelintehdas"/> <oaf_attribute name="description-fr" type="string" value="Fabrique de serveur Bonobo Echo"/> <oaf_attribute name="description-gl" type="string" value="Factoría de servidor do Bonobo Echo"/> <oaf_attribute name="description-gu" type="string" value="બોનાેબો ઈકો સર્વર કારખાનું"/> <oaf_attribute name="description-he" type="string" value="Bonobo Echo server factory"/> <oaf_attribute name="description-hi" type="string" value="बोनोबो इको सर्वर फैक्ट्री"/> <oaf_attribute name="description-hr" type="string" value="Tvornica poslužitelja Bonobo Echo-a"/> <oaf_attribute name="description-hu" type="string" value="Bonobo Echo-kiszolgáló factory"/> <oaf_attribute name="description-hy" type="string" value="Bonobo Echo համակարգային ֆաբրիկա"/> <oaf_attribute name="description-id" type="string" value="Pabrik server Echo Bonobo"/> <oaf_attribute name="description-is" type="string" value="Bonobo Echo þjónn"/> <oaf_attribute name="description-it" type="string" value="Fabbrica per il server bonobo Echo"/> <oaf_attribute name="description-ja" type="string" value="Bonobo Echo サーバ・ファクトリ"/> <oaf_attribute name="description-ka" type="string" value="Bonobo ექო სერვერის საწარმო"/> <oaf_attribute name="description-kn" type="string" value="Bonobo Echo ಪರಿಚಾರಕದ ಫ್ಯಾಕ್ಟರಿ"/> <oaf_attribute name="description-ko" type="string" value="보노보 메아리 서버 팩토리"/> <oaf_attribute name="description-li" type="string" value="Bonobo Echo-server febrik"/> <oaf_attribute name="description-lt" type="string" value="Bonobo Aido serverio gamykla"/> <oaf_attribute name="description-lv" type="string" value="Bonobo Echo servera ražotne"/> <oaf_attribute name="description-mai" type="string" value="बोनोबो इको सर्वर फैक्ट्री"/> <oaf_attribute name="description-mg" type="string" value="Toerana fanamboarana ny mpizaran'ny Bonobo Echo"/> <oaf_attribute name="description-mk" type="string" value="Bonobo ехо сервер фабрика"/> <oaf_attribute name="description-ml" type="string" value="Bonobo Echo സര്‍വര്‍ ശാല"/> <oaf_attribute name="description-mn" type="string" value="Bonobo Echo серверийн үйлдвэр"/> <oaf_attribute name="description-mr" type="string" value="Bonobo Echo सर्वर फॅक्ट्री"/> <oaf_attribute name="description-ms" type="string" value="Kilang pelayan Echo Bonobo"/> <oaf_attribute name="description-nb" type="string" value="Bonobo factory for ekkotjener"/> <oaf_attribute name="description-ne" type="string" value="बोनोबो प्रतिध्वनि सर्भर कारखाना"/> <oaf_attribute name="description-nl" type="string" value="Bonobo Echo-server factory"/> <oaf_attribute name="description-nn" type="string" value="Bonobo Ekko-tenar fabrikk"/> <oaf_attribute name="description-or" type="string" value="ବନୋବୋ ପ୍ରତିଧ୍ବନି ସେବକ କାରଖାନା"/> <oaf_attribute name="description-pa" type="string" value="ਬੋਨਬੋ ਈਚੋ ਸਰਵਰ ਫੈਕਟਰੀ"/> <oaf_attribute name="description-pl" type="string" value="generator serwera Bonobo Echo"/> <oaf_attribute name="description-pt" type="string" value="Fábrica de servidor Echo Bonobo"/> <oaf_attribute name="description-pt_BR" type="string" value="Fábrica do servidor Bonobo Echo"/> <oaf_attribute name="description-ro" type="string" value="Fabrică server Bonobo Echo"/> <oaf_attribute name="description-ru" type="string" value="Фабрика эхо-сервера Bonobo"/> <oaf_attribute name="description-sk" type="string" value="Bonobo továreň servera echo"/> <oaf_attribute name="description-sl" type="string" value="Tovarna strežnika bonobo odmevov"/> <oaf_attribute name="description-sq" type="string" value="Fabrikë për server-in Bonobo Echo"/> <oaf_attribute name="description-sr" type="string" value="Бонобо творница Echo сервера"/> <oaf_attribute name="description-sr@latin" type="string" value="Bonobo tvornica Echo servera"/> <oaf_attribute name="description-sv" type="string" value="Fabrik för Bonobo-ekoserver"/> <oaf_attribute name="description-ta" type="string" value="Bonobo Echo சேவையக தொழிற்சாலை"/> <oaf_attribute name="description-te" type="string" value="బోనోబో Echo సేవిక ఫాక్టరి"/> <oaf_attribute name="description-th" type="string" value="โรงงานผู้ให้บริการ Echo แบบ Bonobo"/> <oaf_attribute name="description-tr" type="string" value="Bonobo Echo sunucu üreticisi"/> <oaf_attribute name="description-ug" type="string" value="Bonobo Echo مۇلازىمېتىر زاۋۇتى"/> <oaf_attribute name="description-uk" type="string" value="Фабрика серверів відлуння Bonobo"/> <oaf_attribute name="description-vi" type="string" value="Bộ tạo trình phục vụ Vọng Bonobo"/> <oaf_attribute name="description-xh" type="string" value="Ifektri yeBonobo Echo server"/> <oaf_attribute name="description-yi" type="string" value="באָנאָבאָ װידערקול־סערװירער פֿאַבריק"/> <oaf_attribute name="description-zh_CN" type="string" value="Bonobo Echo server factory"/> <oaf_attribute name="description-zh_HK" type="string" value="Bonobo Echo 伺服器工廠"/> <oaf_attribute name="description-zh_TW" type="string" value="Bonobo Echo 伺服器工廠"/> </oaf_server> <oaf_server iid="OAFIID:Bonobo_Sample_Echo" type="factory" location="OAFIID:Bonobo_Sample_Echo_Factory"> <oaf_attribute name="repo_ids" type="stringv"> <item value="IDL:Demo/Echo:1.0"/> </oaf_attribute> <oaf_attribute name="name" type="string" value="Echo component"/> <oaf_attribute name="name-ar" type="string" value="مكون صدى"/> <oaf_attribute name="name-as" type="string" value="Echo'ৰ বস্তু"/> <oaf_attribute name="name-ast" type="string" value="Componente eco"/> <oaf_attribute name="name-az" type="string" value="Əks-səda hissəsi"/> <oaf_attribute name="name-be" type="string" value="Кампанэнт Echo"/> <oaf_attribute name="name-bg" type="string" value="Компонент „Ехо“"/> <oaf_attribute name="name-bn" type="string" value="ইকোর কম্পোনেন্ট"/> <oaf_attribute name="name-bn_IN" type="string" value="Echo'র বস্তু"/> <oaf_attribute name="name-br" type="string" value="Elfenn Echo"/> <oaf_attribute name="name-bs" type="string" value="Echo komponenta"/> <oaf_attribute name="name-ca" type="string" value="Component d'eco"/> <oaf_attribute name="name-ca@valencia" type="string" value="Component d'eco"/> <oaf_attribute name="name-cs" type="string" value="Komponenta Echo"/> <oaf_attribute name="name-cy" type="string" value="cydran Echo"/> <oaf_attribute name="name-da" type="string" value="Ekkokomponent"/> <oaf_attribute name="name-de" type="string" value="Echo-Komponente"/> <oaf_attribute name="name-dz" type="string" value="བྲག་ཅའི་ཆ་ཤས།"/> <oaf_attribute name="name-el" type="string" value="Συστατικό Ηχούς"/> <oaf_attribute name="name-en@shaw" type="string" value="𐑧𐑒𐑴 𐑒𐑩𐑥𐑐𐑴𐑯𐑩𐑯𐑑"/> <oaf_attribute name="name-en_CA" type="string" value="Echo component"/> <oaf_attribute name="name-en_GB" type="string" value="Echo component"/> <oaf_attribute name="name-eo" type="string" value="Echo-a komponanto"/> <oaf_attribute name="name-es" type="string" value="Componente eco"/> <oaf_attribute name="name-et" type="string" value="Kaja komponent"/> <oaf_attribute name="name-eu" type="string" value="Echo osagaia"/> <oaf_attribute name="name-fi" type="string" value="Kaikukomponentti"/> <oaf_attribute name="name-fr" type="string" value="Composant Echo"/> <oaf_attribute name="name-gl" type="string" value="Compoñente Echo"/> <oaf_attribute name="name-gu" type="string" value="ઈકોના ભાગો"/> <oaf_attribute name="name-he" type="string" value="Echo component"/> <oaf_attribute name="name-hi" type="string" value="इको अवयव"/> <oaf_attribute name="name-hr" type="string" value="Echo komponenta"/> <oaf_attribute name="name-hu" type="string" value="Echo komponens"/> <oaf_attribute name="name-hy" type="string" value="Echo բաղադրիչ"/> <oaf_attribute name="name-id" type="string" value="Komponen Echo"/> <oaf_attribute name="name-is" type="string" value="Echo íhlutur"/> <oaf_attribute name="name-it" type="string" value="Componente Echo"/> <oaf_attribute name="name-ja" type="string" value="Echo コンポーネント"/> <oaf_attribute name="name-ka" type="string" value="ექოს კომპონენტი"/> <oaf_attribute name="name-kn" type="string" value="Echo ಘಟಕ"/> <oaf_attribute name="name-ko" type="string" value="메아리 컴포넌트"/> <oaf_attribute name="name-li" type="string" value="Echo komponènt"/> <oaf_attribute name="name-lt" type="string" value="Aido komponentas"/> <oaf_attribute name="name-lv" type="string" value="Echo komponente"/> <oaf_attribute name="name-mai" type="string" value="इको अवयव"/> <oaf_attribute name="name-mg" type="string" value="Singan'ny Echo"/> <oaf_attribute name="name-mk" type="string" value="Ехо компонента"/> <oaf_attribute name="name-ml" type="string" value="Echo ഘടകം"/> <oaf_attribute name="name-mn" type="string" value="Echo-бүрэлдхүүн"/> <oaf_attribute name="name-mr" type="string" value="Echo भाग"/> <oaf_attribute name="name-ms" type="string" value="Komponen Echo"/> <oaf_attribute name="name-nb" type="string" value="Ekko-komponent"/> <oaf_attribute name="name-ne" type="string" value="प्रतिध्वनि अवयव"/> <oaf_attribute name="name-nl" type="string" value="Echo component"/> <oaf_attribute name="name-nn" type="string" value="Ekkokomponent"/> <oaf_attribute name="name-or" type="string" value="ପ୍ରତିଧ୍ବନି ଯନ୍ତ୍ରାଂଶ"/> <oaf_attribute name="name-pa" type="string" value="ਈਚੋ ਭਾਗ"/> <oaf_attribute name="name-pl" type="string" value="Komponent echo"/> <oaf_attribute name="name-pt" type="string" value="Componente Echo"/> <oaf_attribute name="name-pt_BR" type="string" value="Componente do Echo"/> <oaf_attribute name="name-ro" type="string" value="Componentă Echo"/> <oaf_attribute name="name-ru" type="string" value="Компонент Эхо"/> <oaf_attribute name="name-sk" type="string" value="Komponent echo"/> <oaf_attribute name="name-sl" type="string" value="Sestavina odmeva"/> <oaf_attribute name="name-sq" type="string" value="Përbërësi Echo"/> <oaf_attribute name="name-sr" type="string" value="Echo компонента"/> <oaf_attribute name="name-sr@latin" type="string" value="Echo komponenta"/> <oaf_attribute name="name-sv" type="string" value="Ekokomponent"/> <oaf_attribute name="name-ta" type="string" value="எதிரளிப்பு கூறு"/> <oaf_attribute name="name-te" type="string" value="Echo మూలకము"/> <oaf_attribute name="name-th" type="string" value="องค์ประกอบ Echo"/> <oaf_attribute name="name-tr" type="string" value="Echo içeriği"/> <oaf_attribute name="name-ug" type="string" value="Echo بۆلەك"/> <oaf_attribute name="name-uk" type="string" value="Компонент відлуння"/> <oaf_attribute name="name-vi" type="string" value="Thành phần vọng"/> <oaf_attribute name="name-xh" type="string" value="Ilungu lentlokoma"/> <oaf_attribute name="name-yi" type="string" value="װידערקול־קאָמפּאָנענט"/> <oaf_attribute name="name-zh_CN" type="string" value="Echo 部件"/> <oaf_attribute name="name-zh_HK" type="string" value="Echo 元件"/> <oaf_attribute name="name-zh_TW" type="string" value="Echo 元件"/> <oaf_attribute name="description" type="string" value="Bonobo Echo server sample program"/> <oaf_attribute name="description-ar" type="string" value="برنامج مثالي لخادوم صدى بونوبو"/> <oaf_attribute name="description-as" type="string" value="Bonobo Echo সেৱকৰ নমুনা প্ৰোগ্ৰাম"/> <oaf_attribute name="description-ast" type="string" value="Programa d'exemplu del sirvidor Bonobo Echo (eco)"/> <oaf_attribute name="description-az" type="string" value="Bonobo Əks-səda nünumə proqram"/> <oaf_attribute name="description-be" type="string" value="Узор праграмы паслужніку Bonobo Echo"/> <oaf_attribute name="description-bg" type="string" value="Примерна програма „Ехо“ на Bonobo"/> <oaf_attribute name="description-bn" type="string" value="বোনোবো ইকো সার্ভারের নমুনা প্রোগ্রাম"/> <oaf_attribute name="description-bn_IN" type="string" value="Bonobo Echo সার্ভারের নমুনা প্রোগ্রাম"/> <oaf_attribute name="description-br" type="string" value="Rolladur skouer Bonobo Echo server"/> <oaf_attribute name="description-bs" type="string" value="Uzorak programa Bonobo Echo servera"/> <oaf_attribute name="description-ca" type="string" value="Programa d'exemple de servidor d'eco del Bonobo"/> <oaf_attribute name="description-ca@valencia" type="string" value="Programa d'exemple de servidor d'eco del Bonobo"/> <oaf_attribute name="description-cs" type="string" value="Server vzorového programu Bonobo Echo"/> <oaf_attribute name="description-cy" type="string" value="rhaglen sampl gweinydd Echo Bonobo"/> <oaf_attribute name="description-da" type="string" value="Bonobo-ekkoserver-eksempelprogram"/> <oaf_attribute name="description-de" type="string" value="Bonobo-Echo-Server-Beispielprogramm"/> <oaf_attribute name="description-dz" type="string" value="བཱོ་ནོ་བཱོ་ བྲག་ཅ་སར་བར་གྱི་ དཔེ་ཚད་ལས་རིམ།"/> <oaf_attribute name="description-el" type="string" value="Πρόγραμμα-δείγμα εξυπηρετητή Ηχούς Bonobo"/> <oaf_attribute name="description-en@shaw" type="string" value="·𐑚𐑭𐑯𐑭𐑚𐑴 𐑧𐑒𐑴 𐑕𐑻𐑝𐑼 𐑕𐑭𐑥𐑐𐑩𐑤 𐑐𐑮𐑴𐑜𐑮𐑨𐑥"/> <oaf_attribute name="description-en_CA" type="string" value="Bonobo Echo server sample program"/> <oaf_attribute name="description-en_GB" type="string" value="Bonobo Echo server sample program"/> <oaf_attribute name="description-eo" type="string" value="Ekzemplo-programo de Bonobo-Echo-servilo"/> <oaf_attribute name="description-es" type="string" value="Programa de ejemplo del servidor Bonobo Echo (eco)"/> <oaf_attribute name="description-et" type="string" value="Bonobo Kajaserveri näidisprogramm"/> <oaf_attribute name="description-eu" type="string" value="Bonobo Echo zerbitzariaren programa-lagina"/> <oaf_attribute name="description-fi" type="string" value="Bonobo-kaikupalvelinesimerkkiohjelma"/> <oaf_attribute name="description-fr" type="string" value="Programme d'exemple du serveur Bonobo Echo"/> <oaf_attribute name="description-gl" type="string" value="Programa de mostra do servidor do Bonobo Echo"/> <oaf_attribute name="description-gu" type="string" value="બોનાેબો ઈકો સર્વર નમૂનો કાર્યક્રમ"/> <oaf_attribute name="description-he" type="string" value="Bonobo Echo server sample program"/> <oaf_attribute name="description-hi" type="string" value="बोनोबो इको सर्वर नमूना प्रोग्राम"/> <oaf_attribute name="description-hr" type="string" value="Primjer programa poslužitelja Bonobo Echo-a"/> <oaf_attribute name="description-hu" type="string" value="Bonobo Echo-kiszolgáló példaprogram"/> <oaf_attribute name="description-hy" type="string" value="Bonobo Echo համակարգի ծրագրի օրինակ"/> <oaf_attribute name="description-id" type="string" value="Program contoh untuk server Echo Bonobo"/> <oaf_attribute name="description-is" type="string" value="Bonobo Echo sýnishorn"/> <oaf_attribute name="description-it" type="string" value="Programma di esempio per il server Bonobo Echo"/> <oaf_attribute name="description-ja" type="string" value="Bonobo Echo サーバ・サンプル・プログラム"/> <oaf_attribute name="description-ka" type="string" value="Bonobo ექო სერვერის სანიმუშო პროგრამა"/> <oaf_attribute name="description-kn" type="string" value="Bonobo Echo ಪರಿಚಾರಕದ ನಮೂನೆ ಪ್ರೋಗ್ರಾಮ್"/> <oaf_attribute name="description-ko" type="string" value="보노보 메아리 서버 예제 프로그램"/> <oaf_attribute name="description-li" type="string" value="Bonobo Echo-server veurbildprogram"/> <oaf_attribute name="description-lt" type="string" value="Bonobo Aido serverio pavyzdinė programa"/> <oaf_attribute name="description-lv" type="string" value="Bonobo Echo servera parauga programma"/> <oaf_attribute name="description-mai" type="string" value="बोनोबो इको सर्वर नमूना प्रोग्राम"/> <oaf_attribute name="description-mg" type="string" value="Santionan-drindranasan'ny mpizaran'ny Bonobo Echo"/> <oaf_attribute name="description-mk" type="string" value="Bonobo ехо сервер пример програма"/> <oaf_attribute name="description-ml" type="string" value="Bonobo Echo സര്‍വര്‍ ഉദാഹരണ പ്രോഗ്രാം"/> <oaf_attribute name="description-mn" type="string" value="Bonobo Echo-сервер жишээ программ"/> <oaf_attribute name="description-mr" type="string" value="Bonobo Echo सर्वर चाचणीजोगी कार्यक्रम"/> <oaf_attribute name="description-ms" type="string" value="Contoh program pelayan Echo Bonobo"/> <oaf_attribute name="description-nb" type="string" value="Eksempelprogram for Bonobo ekkotjener"/> <oaf_attribute name="description-ne" type="string" value="बोनोबो प्रतिध्वनि सर्भर नमूना कार्यक्रम"/> <oaf_attribute name="description-nl" type="string" value="Bonobo Echo-server voorbeeldprogramma"/> <oaf_attribute name="description-nn" type="string" value="Bonobo ekkotenar eksempelprogram"/> <oaf_attribute name="description-or" type="string" value="ବନୋବୋ ପ୍ରତିଧ୍ବନି ସେବକ କାରିକାର ନମୁନା"/> <oaf_attribute name="description-pa" type="string" value="ਬੋਨਬੋ ਈਚੋ ਸਰਵਰ ਸਧਾਰਨ ਪਰੋਗਰਾਮ"/> <oaf_attribute name="description-pl" type="string" value="Przykładowy program serwera Bonobo Echo"/> <oaf_attribute name="description-pt" type="string" value="Aplicação de exemplo de servidor Echo Bonobo"/> <oaf_attribute name="description-pt_BR" type="string" value="Programa exemplo do servidor Bonobo Echo"/> <oaf_attribute name="description-ro" type="string" value="Program-exemplu server Bonobo Echo"/> <oaf_attribute name="description-ru" type="string" value="Образец программы эхо-сервера Bonobo"/> <oaf_attribute name="description-sk" type="string" value="Ukážkový program bonobo servera echo"/> <oaf_attribute name="description-sl" type="string" value="Preizkusni program bonobo strežnika odmevov"/> <oaf_attribute name="description-sq" type="string" value="Program si shembull për server-in Bonobo Echo"/> <oaf_attribute name="description-sr" type="string" value="Пример Бонобо Echo сервер програма"/> <oaf_attribute name="description-sr@latin" type="string" value="Primer Bonobo Echo server programa"/> <oaf_attribute name="description-sv" type="string" value="Testprogram för Bonobo-ekoserver"/> <oaf_attribute name="description-ta" type="string" value="Bonobo Echo சேவையகத்தின் மாதிரி நிரல்"/> <oaf_attribute name="description-te" type="string" value="బోనోబో Echo సేవిక మాదిరి ప్రోగ్రామ్"/> <oaf_attribute name="description-th" type="string" value="โปรแกรมตัวอย่างผู้ให้บริการ Echo แบบ Bonobo"/> <oaf_attribute name="description-tr" type="string" value="Bonobo Echo sunucu örnek programı"/> <oaf_attribute name="description-ug" type="string" value="Bonobo Echo مۇلازىمېتىر ئۈلگە پروگراممىسى"/> <oaf_attribute name="description-uk" type="string" value="Зразок програми сервера відлуння"/> <oaf_attribute name="description-vi" type="string" value="Chương trình mẫu trình phục vụ Vọng Bonobo"/> <oaf_attribute name="description-xh" type="string" value="Umzekelo wenkqubo yeBonobo Echo server"/> <oaf_attribute name="description-yi" type="string" value="באָנאָבאָ װידערקול־סערװירער מוסטער־פּראָגראַם"/> <oaf_attribute name="description-zh_CN" type="string" value="Bonobo Echo server 示例程序"/> <oaf_attribute name="description-zh_HK" type="string" value="Bonobo Echo 伺服器樣本程式"/> <oaf_attribute name="description-zh_TW" type="string" value="Bonobo Echo 伺服器樣本程式"/> </oaf_server> </oaf_info> ����������������������������������libbonobo-2.32.1/samples/echo/ChangeLog�������������������������������������������������������������0000644�0000764�0000764�00000006660�11173072711�014641� �����������������������������������������������������������������������������������������������������������������������������������������������������������������������������0000000�0000000������������������������������������������������������������������������������������������������������������������������������������������������������������������������========================= 2.24.1 ===================== 2008-10-17 Cosimo Cecchi <cosimoc@gnome.org> * Makefile.am: Enforce single GLib includes. ========================= 2.24.0 ===================== ========================= 2.23.1 ===================== 2007-02-26 Kjartan Maraas <kmaraas@gnome.org> * echo-client.c: 2003-04-14 Michael Meeks <michael@ximian.com> * Makefile.am: bin the activation IDL path stuff. 2001-12-17 Darin Adler <darin@bentspoon.com> * .cvsignore: Ignore the .server.in file. 2001-12-10 jacob berkman <jacob@ximian.com> * Makefile.am: dist the .server.in.in file 2001-10-29 jacob berkman <jacob@ximian.com> * Makefile.am: s/XML_I18N_TOOLS/INTLTOOL/ 2001-10-29 Seth Nickell <snickell@stanford.edu> * echo.c: 2001-10-20 Michael Meeks <michael@ximian.com> * echo.c: simplify using BONOBO_TYPE_FUNC_FULL. 2001-10-18 Mark McLoughlin <mark@skynet.ie> * Makefile.am (ECHO_CORBA_GENERATED): depend on $(ORBIT_IDL). 2001-10-11 Abel Cheung <maddog@linux.org.hk> * Makefile.am: idl file now goes into $(datadir)/idl/bonobo-2.0. 2001-10-05 Abel Cheung <maddog@linux.org.hk> * Bonobo_Sample_Echo.server.in: Rename bonobo-echo -> bonobo-echo-2 and echo-client -> echo-client-2 to avoid conflict with bonobo 1.0.x * Makefile.am: Ditto. 2001-08-31 Gustavo J A M Carneiro <ee96090@fe.up.pt> * echo.c (echo_get_type): fixup GTypeInfo structure. 2001-08-18 Darin Adler <darin@bentspoon.com> * Makefile.am: Remove extra -I directives. 2001-08-14 Michael Meeks <michael@ximian.com> * Makefile.am: s/oaf/server, update install dir. 2001-08-01 Michael Meeks <michael@ximian.com> * echo-client.c (init_bonobo): prune crud. * main.c (main): ditto. 2001-02-21 Michael Meeks <michael@ximian.com> * main.c (main): expand the macro so we don't quit - this defeats the point. * echo-client.c (usage): add runtime help text. (main): upd. * echo.c (echo_get_epv): move into (echo_class_init): here & upd. (init_echo_corba_class): kill. (echo_construct): kill. (echo_init): impl. (echo_construct): kill. (create_echo): kill. (echo_new): prune contents. 2001-01-25 Michael Meeks <michael@helixcode.com> * main.c: fix include. 2001-01-25 Michael Meeks <michael@helixcode.com> * Bonobo_Sample_Echo.idl: re-namespace. * Makefile.am (idl_DATA): upd. * echo-client.c: re-namespace * echo.c: re-namespace. 2001-01-18 Dietmar Maurer <dietmar@ximian.com> * main.c: use the new factory macros * Bonobo_Sample_Echo.oaf.in: changed the oaf IIDs to OAFIID:Bonobo_Sample_Echo_Factory and OAFIID:Bonobo_Sample_Echo 2000-10-31 Michael Meeks <michael@helixcode.com> * Makefile.am: get idl includes the right way round. 2000-07-23 Michael Meeks <michael@helixcode.com> * echo-client.c (main): fix severe ref-counting brokenness. 2000-07-22 Michael Meeks <michael@helixcode.com> * echo-client.c (main): cleanings. (init_bonobo): handle orb correctly. 2000-07-12 Michael Meeks <michael@helixcode.com> * echo.c (echo_new): Kill gtk_object_destroy. 2000-05-26 Michael Meeks <michael@helixcode.com> * echo.oafinfo: fix misuse of IDL:Empty that was screwing an oaf test. 2000-03-26 Miguel de Icaza <miguel@helixcode.com> * README: add. 2000-04-01 Timur Bakeyev <timur@gnu.org> * Makefile.am: Add missed -I$(top_srcdir)/bonobo to the INCLUDES. 2000-03-26 Miguel de Icaza <miguel@helixcode.com> * New directory. Contains a sample skeleton for creating Bonobo components. ��������������������������������������������������������������������������������libbonobo-2.32.1/samples/echo/main.c����������������������������������������������������������������0000644�0000764�0000764�00000001125�11173072711�014146� �����������������������������������������������������������������������������������������������������������������������������������������������������������������������������0000000�0000000������������������������������������������������������������������������������������������������������������������������������������������������������������������������/* * main.c: Startup code for the Echo Bonobo Component. * * Author: * Miguel de Icaza (miguel@ximian.com) * * (C) 1999, 2001 Ximian, Inc. http://www.ximian.com */ #include <config.h> #include <libbonobo.h> #include "Bonobo_Sample_Echo.h" #include "echo.h" static BonoboObject * echo_factory (BonoboGenericFactory *this_factory, const char *iid, gpointer user_data) { return g_object_new (ECHO_TYPE, NULL); } BONOBO_ACTIVATION_FACTORY ("OAFIID:Bonobo_Sample_Echo_Factory", "Sample Echo component factory", "1.0", echo_factory, NULL); �������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������libbonobo-2.32.1/samples/echo/Bonobo_Sample_Echo-skels.c��������������������������������������������0000664�0000764�0000764�00000004716�11432275563�020041� �����������������������������������������������������������������������������������������������������������������������������������������������������������������������������0000000�0000000������������������������������������������������������������������������������������������������������������������������������������������������������������������������/* * This file was generated by orbit-idl-2 - DO NOT EDIT! */ #include <string.h> #define ORBIT2_STUBS_API #include "Bonobo_Sample_Echo.h" static ORBitSmallSkeleton get_skel_small_Bonobo_Sample_Echo(POA_Bonobo_Sample_Echo *servant, const char *opname,gpointer *m_data, gpointer *impl) { switch(opname[0]) { case 'e': if(strcmp((opname + 1), "cho")) break; *impl = (gpointer)servant->vepv->Bonobo_Sample_Echo_epv->echo; {ORBit_IInterface *volatile _t_=&Bonobo_Sample_Echo__iinterface;*m_data = (gpointer)&_t_->methods._buffer [0];} return (ORBitSmallSkeleton)_ORBIT_skel_small_Bonobo_Sample_Echo_echo; break; case 'q': if(strcmp((opname + 1), "ueryInterface")) break; *impl = (gpointer)servant->vepv->Bonobo_Unknown_epv->queryInterface; {ORBit_IInterface *volatile _t_=&Bonobo_Unknown__iinterface;*m_data = (gpointer)&_t_->methods._buffer [2];} return (ORBitSmallSkeleton)_ORBIT_skel_small_Bonobo_Unknown_queryInterface; break; case 'r': if(strcmp((opname + 1), "ef")) break; *impl = (gpointer)servant->vepv->Bonobo_Unknown_epv->ref; {ORBit_IInterface *volatile _t_=&Bonobo_Unknown__iinterface;*m_data = (gpointer)&_t_->methods._buffer [0];} return (ORBitSmallSkeleton)_ORBIT_skel_small_Bonobo_Unknown_ref; break; case 'u': if(strcmp((opname + 1), "nref")) break; *impl = (gpointer)servant->vepv->Bonobo_Unknown_epv->unref; {ORBit_IInterface *volatile _t_=&Bonobo_Unknown__iinterface;*m_data = (gpointer)&_t_->methods._buffer [1];} return (ORBitSmallSkeleton)_ORBIT_skel_small_Bonobo_Unknown_unref; break; default: break; } return NULL; } void POA_Bonobo_Sample_Echo__init(PortableServer_Servant servant, CORBA_Environment *env) { static PortableServer_ClassInfo class_info = {NULL, (ORBit_small_impl_finder)&get_skel_small_Bonobo_Sample_Echo, "IDL:Bonobo/Sample/Echo:1.0", &Bonobo_Sample_Echo__classid, NULL, &Bonobo_Sample_Echo__iinterface}; PortableServer_ServantBase__init ( ((PortableServer_ServantBase *)servant), env); POA_Bonobo_Unknown__init(servant, env); ORBit_skel_class_register (&class_info, (PortableServer_ServantBase *)servant, POA_Bonobo_Sample_Echo__fini, ORBIT_VEPV_OFFSET (POA_Bonobo_Sample_Echo__vepv, Bonobo_Sample_Echo_epv), (CORBA_unsigned_long) Bonobo_Unknown__classid, ORBIT_VEPV_OFFSET (POA_Bonobo_Sample_Echo__vepv, Bonobo_Unknown_epv), (CORBA_unsigned_long) 0);} void POA_Bonobo_Sample_Echo__fini(PortableServer_Servant servant, CORBA_Environment *env) { POA_Bonobo_Unknown__fini(servant, env); PortableServer_ServantBase__fini(servant, env); } ��������������������������������������������������libbonobo-2.32.1/samples/Makefile.in����������������������������������������������������������������0000664�0000764�0000764�00000044336�11546333030�014220� �����������������������������������������������������������������������������������������������������������������������������������������������������������������������������0000000�0000000������������������������������������������������������������������������������������������������������������������������������������������������������������������������# Makefile.in generated by automake 1.11.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008, 2009 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@ VPATH = @srcdir@ 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 = samples DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.in 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_$(V)) am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) am__v_GEN_0 = @echo " GEN " $@; AM_V_at = $(am__v_at_$(V)) am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) 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 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@ ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ AR = @AR@ AS = @AS@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ BONOBO_ACTIVATION_LT_VERSION_INFO = @BONOBO_ACTIVATION_LT_VERSION_INFO@ BONOBO_MAJOR_VERSION = @BONOBO_MAJOR_VERSION@ BONOBO_MICRO_VERSION = @BONOBO_MICRO_VERSION@ BONOBO_MINOR_VERSION = @BONOBO_MINOR_VERSION@ BONOBO_SLAY = @BONOBO_SLAY@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DISABLE_DEPRECATED_CFLAGS = @DISABLE_DEPRECATED_CFLAGS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GREP = @GREP@ GTHREAD_CFLAGS = @GTHREAD_CFLAGS@ GTHREAD_LIBS = @GTHREAD_LIBS@ GTKDOC_CHECK = @GTKDOC_CHECK@ GTKDOC_MKPDF = @GTKDOC_MKPDF@ GTKDOC_REBASE = @GTKDOC_REBASE@ HTML_DIR = @HTML_DIR@ IF_BSD_PS = @IF_BSD_PS@ IF_CYGWIN_PS = @IF_CYGWIN_PS@ IF_POSIX_PS = @IF_POSIX_PS@ 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@ LD = @LD@ LDFLAGS = @LDFLAGS@ LEX = @LEX@ LEXLIB = @LEXLIB@ LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ LFLAGS = @LFLAGS@ LIBBONOBO_CFLAGS = @LIBBONOBO_CFLAGS@ LIBBONOBO_LIBS = @LIBBONOBO_LIBS@ LIBBONOBO_LT_VERSION_INFO = @LIBBONOBO_LT_VERSION_INFO@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIPO = @LIPO@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ NM = @NM@ NMEDIT = @NMEDIT@ OBJDUMP = @OBJDUMP@ OBJEXT = @OBJEXT@ ORBIT_IDL = @ORBIT_IDL@ OTOOL = @OTOOL@ OTOOL64 = @OTOOL64@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PERL_PATH = @PERL_PATH@ PKG_CONFIG = @PKG_CONFIG@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ PS_PATH = @PS_PATH@ RANLIB = @RANLIB@ SEARCHPATHSEP = @SEARCHPATHSEP@ SED = @SED@ SERVER_CFLAGS = @SERVER_CFLAGS@ SERVER_LIBS = @SERVER_LIBS@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SOPREFIX = @SOPREFIX@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ WARN_CFLAGS = @WARN_CFLAGS@ XGETTEXT = @XGETTEXT@ YACC = @YACC@ YFLAGS = @YFLAGS@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ 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@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ lt_ECHO = @lt_ECHO@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ 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 = echo 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) --foreign samples/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --foreign samples/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 \ test -d "$(distdir)/$$subdir" \ || $(MKDIR_P) "$(distdir)/$$subdir" \ || exit 1; \ fi; \ done @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ 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: $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install 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: ��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������libbonobo-2.32.1/utils/�����������������������������������������������������������������������������0000775�0000764�0000764�00000000000�11546334244�011725� 5����������������������������������������������������������������������������������������������������������������������������������������������������������������������������0000000�0000000������������������������������������������������������������������������������������������������������������������������������������������������������������������������libbonobo-2.32.1/utils/Makefile.am������������������������������������������������������������������0000644�0000764�0000764�00000000733�11173072711�013674� �����������������������������������������������������������������������������������������������������������������������������������������������������������������������������0000000�0000000������������������������������������������������������������������������������������������������������������������������������������������������������������������������bin_SCRIPTS = $(BONOBO_SLAY) EXTRA_SCRIPTS = bonobo-slay.in sbin_PROGRAMS = bonobo-activation-sysconf bonobo_activation_sysconf_SOURCES = \ bonobo-activation-sysconf.c INCLUDES = \ $(SERVER_CFLAGS) \ $(WARN_CFLAGS) \ -I$(top_srcdir) \ -DSERVER_LOCALEDIR=\""$(datadir)/locale"\" \ -DSERVER_CONFDIR=\"$(sysconfdir)\" bonobo_activation_sysconf_LDADD = \ $(SERVER_LIBS) \ $(top_builddir)/bonobo-activation/libbonobo-activation.la \ $(INTLLIBS) �������������������������������������libbonobo-2.32.1/utils/bonobo-slay.in���������������������������������������������������������������0000644�0000764�0000764�00000012516�11173072711�014416� �����������������������������������������������������������������������������������������������������������������������������������������������������������������������������0000000�0000000������������������������������������������������������������������������������������������������������������������������������������������������������������������������#!@PERL_PATH@ # # bonobo-slay # # Kills bonobo processes # # Return code of -1 (255) returned if usage error. # Return code of 1 indicates bonobo processes were running # when script was run. # Return code of 0 indicates no bonobo processes were # running when script was run. # use Getopt::Long; Getopt::Long::Configure( "no_auto_abbrev" ); Getopt::Long::Configure( "bundling" ); $usage_error = 0; $opt_h = 0, $opt_i = 0, $opt_l = 0, $opt_s = 0; $rc = GetOptions("help" => \$usage_error, "h" => \$opt_h, "i" => \$opt_i, "l" => \$opt_l, "s" => \$opt_s); # Usage errors # if ($rc != 1) { $usage_error = 1; } if ($opt_l && $opt_s) { $usage_error = 1; } if ($ARGV[0]) { $regexp = $ARGV[0]; } # Print usage if necessary. # if ($usage_error == 1 || $opt_h) { print "\n"; print "Usage : bonobo-slay [-hls] [regexp]\n"; print "\tKill Bonobo processes still running.\n"; print "\t -h,--help Print this help message.\n"; print "\t -i Ask before killing the processes.\n"; print "\t -l List processes running, but do not kill them. Not valid with -s\n"; print "\t -s Silent. Kill processes quietly\n"; print "\t [regexp] only kill proccesses matching this\n"; print "\n"; exit(-1); } # Build ps command. # $username = $ENV{USER} || $ENV{LOGNAME} || `logname`; chomp($username); @IF_POSIX_PS@ $ps_cmd = "@PS_PATH@ -U $username -opid,args"; @IF_BSD_PS@ $ps_cmd = "@PS_PATH@ -U $username -xww -opid,command"; @IF_CYGWIN_PS@ $ps_cmd = "@PS_PATH@ -s -u $username | awk '{print \$1 \" \" \$4}'"; # get Bonobo files # @bonobo_dirs = ( "@prefix@/lib/bonobo/servers" ); foreach $dir (split(':', $ENV{'BONOBO_ACTIVATION_INFO_PATH'})) { if (-d $dir) { push @bonobo_dirs, $dir; } } foreach $dir (split(':', $ENV{'GNOME2_PATH'})) { if (-d "$dir/lib/bonobo/servers") { push @bonobo_dirs, "$dir/lib/bonobo/servers"; } } foreach $dir (@bonobo_dirs) { opendir(DIR, $dir) || die "\nCan not open directory $dir\n\t$!\n\n"; push @bonobo_files, map ("$dir/$_", readdir(DIR)); closedir DIR; } # Initialize variables # $process_exists = 0; $first_time = 1; # Loop until no more processes are found. This typically loops only once, # but if an Bonobo process is launched while this script is running an Bonobo # process can be left behind and be caught on the second loop, etc. # do { # Initialize variables. # @files = @bonobo_files; @list_array = (); @process_pids = (); @file_process = (); $index = 0; # Get process list. # @ps_result = `$ps_cmd`; # Loop through files, and see if any Bonobo processes are running. If # so, then build the @list_array and @process_pids arrays. # @list_array contains the process names # @process_pids contains the process IDs # while ($fname = shift(@files)) { if ("$fname" =~ /\.server$/) { open(FILE, $fname); while (<FILE>) { $line = $_; if ($line =~m/location[ \t]*\=/ && !($line =~m/type=\"shlib\"/)) { $line =~s/.*location[ \t]*\="//; $line =~s/".*//; chomp($line); $line =~s/\.\///; # bonobo-activation-server needs to be last. # if ($line ne "bonobo-activation-server" and not ($line =~m/^OAFIID:/) and ($regexp and $line =~m/$regexp/) or (not $regexp)) { push @file_process, $line; } } #end while(<FILE>) } close(FILE); } } # Add bonobo-activation-server so that it is last, # but only if we're killing without a regexp if (not $regexp) { push @file_process, "bonobo-activation-server"; } foreach $filep (@file_process) { # Search through @ps_result and look for matches # foreach $el (@ps_result) { chomp $el; @ps_array = split(' ', $el, 3); if ($ps_array[1] =~m/(\A|\/)$filep$/ ) { $list_array[$index]=$ps_array[0]."\t".$ps_array[1]."\n"; $process_pids[$index]=$ps_array[0]."\n"; $index++; } } } # Do the killing. # if ($#list_array != -1) { # Print output if -s (silent) argument is not specified. # if(!$opt_s) { if ($first_time == 1) { print "\n"; print "The following processes are still running on the system.\n"; if (!$opt_l) { print "These processes will be terminated.\n"; print "\n"; print "NOTE: Killing these processes may affect other applications\n"; print "on the system that use bonobo.\n"; } print "\n"; $first_time = 0; } else { # Just some feedback to indicate it had to loop... # print "...and...\n"; } # Print list of processes... # print @list_array; print "\n"; } # Kill if the -l argument is not specified. # if(!$opt_l) { if($opt_i) { print "Do you really want to continue (y/N) ? "; $_=<STDIN>; chomp; if(not /^[Yy]$/) { exit(-1); } } $killall = "/bin/kill"; $kill_params = ' -9 '; foreach $proc (@process_pids) { chomp $proc; if($proc =~m/\d+/) { $cmd = $killall.$kill_params.$proc." 2>/dev/null"; system($cmd); } } } $process_exists = 1; } # Only loop once if opt_l is used, otherwise loop until # no more processes are killed # } while ($#list_array != -1 && !opt_l); # Exit # if ($process_exists == 0) { # Show feedback if -l argument is used # if ($opt_l) { print "\n"; print "No processes.\n"; print "\n"; } exit 1; } else { exit 0; } ����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������libbonobo-2.32.1/utils/bonobo-activation-sysconf.c��������������������������������������������������0000644�0000764�0000764�00000024744�11173072711�017113� �����������������������������������������������������������������������������������������������������������������������������������������������������������������������������0000000�0000000������������������������������������������������������������������������������������������������������������������������������������������������������������������������/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ /* * bonobo-activation-sysconf: a simple utility to manipulate * activation configuration files. * * Copyright (C) 2000 Eazel, Inc. * * This library 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 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 * General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this library; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * * Authors: Mathieu Lacage <mathieu@eazel.com> * */ #include "config.h" #include <string.h> #include <locale.h> #include <glib.h> #include <libxml/tree.h> #include <libxml/parser.h> #include <libxml/xmlmemory.h> #include <glib/gi18n.h> #include <bonobo-activation/bonobo-activation.h> #include "activation-server/object-directory-config-file.h" #ifdef G_OS_WIN32 #include "bonobo-activation/bonobo-activation-private.h" #undef SERVER_LOCALEDIR #define SERVER_LOCALEDIR _bonobo_activation_win32_get_localedir () #undef SERVER_CONFDIR #define SERVER_CONFDIR _bonobo_activation_win32_get_server_confdir () #endif static xmlDocPtr open_file (void) { char *config_file; xmlDocPtr doc = NULL; config_file = g_strconcat ( SERVER_CONFDIR, SERVER_CONFIG_FILE, NULL); #ifdef G_OS_WIN32 { gchar *contents; gsize length; if (g_file_get_contents (config_file, &contents, &length, NULL)) { doc = xmlParseMemory (contents, length); g_free (contents); } } #else doc = xmlParseFile (config_file); #endif return doc; } static void save_file (xmlDocPtr doc) { char *config_file; config_file = g_strconcat ( SERVER_CONFDIR, SERVER_CONFIG_FILE, NULL); if (xmlSaveFile (config_file, doc) == -1) { g_print (_("Could not save configuration file.\n")); g_print (_("Please, make sure you have permissions to write " "to '%s'.\n"), config_file); } else { g_print (_("Successfully wrote configuration file.\n")); } g_free (config_file); } static gboolean display_config_path (const gchar *option_name, const gchar *value, gpointer data, GError **error) { char *config_file; config_file = g_strconcat ( SERVER_CONFDIR, SERVER_CONFIG_FILE, NULL); g_print (_("configuration file is:\n %s\n"), config_file); g_free (config_file); return TRUE; } static xmlNodePtr get_root_first_child (xmlDocPtr doc) { if (doc == NULL) return NULL; if (doc->xmlRootNode == NULL) return NULL; return doc->xmlRootNode->xmlChildrenNode; } static gboolean add_directory (const gchar *option_name, const gchar *directory, gpointer data, GError **error) { xmlDocPtr doc; xmlNodePtr search_node; gboolean is_already_there; is_already_there = FALSE; doc = open_file (); /* make sure the directory we want to add is not already in the config file */ search_node = get_root_first_child (doc); while (search_node != NULL) { if (strcmp (search_node->name, "searchpath") == 0) { xmlNodePtr item_node; item_node = search_node->xmlChildrenNode; while (item_node != NULL) { if (strcmp (item_node->name, "item") == 0) { char *dir_path; dir_path = xmlNodeGetContent (item_node); if (strcmp (dir_path, directory) == 0) { is_already_there = TRUE; g_print (_("%s already in configuration file\n"), directory); } xmlFree (dir_path); } item_node = item_node->next; } } search_node = search_node->next; } if (!is_already_there) { xmlNodePtr new_node; /* add the directory to the config file */ search_node = get_root_first_child (doc); if (search_node == NULL) g_print (_("there is not a properly structured configuration file\n")); else { /* go to the first searchpath node */ while (strcmp (search_node->name, "searchpath") != 0) { search_node = search_node->next; } new_node = xmlNewDocNode (doc, NULL, "item", directory); xmlAddChild (search_node, new_node); save_file (doc); } } xmlFreeDoc (doc); return TRUE; } static gboolean remove_directory (const gchar *option_name, const gchar *directory, gpointer data, GError **error) { xmlDocPtr doc; xmlNodePtr search_node; doc = open_file (); search_node = get_root_first_child (doc); while (search_node != NULL) { if (strcmp (search_node->name, "searchpath") == 0) { xmlNodePtr item_node; item_node = search_node->xmlChildrenNode; while (item_node != NULL) { if (strcmp (item_node->name, "item") == 0) { char *dir_path; dir_path = xmlNodeGetContent (item_node); if (strcmp (dir_path, directory) == 0) { if (strcmp (dir_path, directory) == 0) { xmlDocPtr doc; doc = item_node->doc; xmlUnlinkNode (item_node); xmlFreeNode (item_node); save_file (doc); xmlFree (dir_path); return TRUE; } } xmlFree (dir_path); } item_node = item_node->next; } } search_node = search_node->next; } xmlFreeDoc (doc); return TRUE; } static gboolean display_directories (const gchar *option_name, const gchar *value, gpointer data, GError **error) { xmlDocPtr doc; xmlNodePtr search_node; doc = open_file (); g_print (_("Bonobo-activation configuration file contains:\n")); search_node = get_root_first_child (doc); while (search_node != NULL) { if (strcmp (search_node->name, "searchpath") == 0) { xmlNodePtr item_node; item_node = search_node->xmlChildrenNode; while (item_node != NULL) { if (strcmp (item_node->name, "item") == 0) { char *dir_path; dir_path = xmlNodeGetContent (item_node); g_print (" %s\n", dir_path); xmlFree (dir_path); } item_node = item_node->next; } } search_node = search_node->next; } xmlFreeDoc (doc); return TRUE; } static const GOptionEntry oaf_sysconf_goption_options[] = { /* add- and remove-directory could be marked as FILENAMEs, but they are just added directly to the XML file, so we leave them as UTF-8. */ {"remove-directory", '\0', 0, G_OPTION_ARG_CALLBACK, remove_directory, N_("Directory to remove from configuration file"), N_("PATH")}, {"add-directory", '\0', 0, G_OPTION_ARG_CALLBACK, add_directory, N_("Directory to add to configuration file"), N_("PATH")}, {"display-directories", '\0', G_OPTION_FLAG_NO_ARG, G_OPTION_ARG_CALLBACK, display_directories, N_("Display directories in configuration file"), NULL}, {"config-file-path", '\0', G_OPTION_FLAG_NO_ARG, G_OPTION_ARG_CALLBACK, display_config_path, N_("Display path to configuration file"), NULL}, {NULL} }; int main (int argc, char **argv) { GOptionContext *context; GError *error = NULL; gboolean do_usage_exit = FALSE; setlocale (LC_ALL, ""); /* init nls */ bindtextdomain (GETTEXT_PACKAGE, SERVER_LOCALEDIR); textdomain (GETTEXT_PACKAGE); #ifdef HAVE_BIND_TEXTDOMAIN_CODESET bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8"); #endif /* init goption */ g_set_prgname ("bonobo-activation-sysconf"); context = g_option_context_new (NULL); g_option_context_add_main_entries (context, oaf_sysconf_goption_options, GETTEXT_PACKAGE); if (!g_option_context_parse (context, &argc, &argv, &error)) { g_printerr ("%s\n", error->message); g_error_free (error); do_usage_exit = TRUE; } g_option_context_free (context); if (do_usage_exit) { g_printerr (_("Run '%s --help' to see a full list of available command line options.\n"), g_get_prgname ()); exit (1); } return 0; } ����������������������������libbonobo-2.32.1/utils/Makefile.in������������������������������������������������������������������0000664�0000764�0000764�00000052473�11546333030�013715� �����������������������������������������������������������������������������������������������������������������������������������������������������������������������������0000000�0000000������������������������������������������������������������������������������������������������������������������������������������������������������������������������# Makefile.in generated by automake 1.11.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008, 2009 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@ VPATH = @srcdir@ 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@ sbin_PROGRAMS = bonobo-activation-sysconf$(EXEEXT) subdir = utils DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \ $(srcdir)/bonobo-slay.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.in 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 = bonobo-slay CONFIG_CLEAN_VPATH_FILES = am__installdirs = "$(DESTDIR)$(sbindir)" "$(DESTDIR)$(bindir)" PROGRAMS = $(sbin_PROGRAMS) am_bonobo_activation_sysconf_OBJECTS = \ bonobo-activation-sysconf.$(OBJEXT) bonobo_activation_sysconf_OBJECTS = \ $(am_bonobo_activation_sysconf_OBJECTS) am__DEPENDENCIES_1 = bonobo_activation_sysconf_DEPENDENCIES = $(am__DEPENDENCIES_1) \ $(top_builddir)/bonobo-activation/libbonobo-activation.la \ $(am__DEPENDENCIES_1) AM_V_lt = $(am__v_lt_$(V)) am__v_lt_ = $(am__v_lt_$(AM_DEFAULT_VERBOSITY)) am__v_lt_0 = --silent 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' SCRIPTS = $(bin_SCRIPTS) 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_$(V)) am__v_CC_ = $(am__v_CC_$(AM_DEFAULT_VERBOSITY)) am__v_CC_0 = @echo " CC " $@; AM_V_at = $(am__v_at_$(V)) am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) 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_$(V)) am__v_CCLD_ = $(am__v_CCLD_$(AM_DEFAULT_VERBOSITY)) am__v_CCLD_0 = @echo " CCLD " $@; AM_V_GEN = $(am__v_GEN_$(V)) am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) am__v_GEN_0 = @echo " GEN " $@; SOURCES = $(bonobo_activation_sysconf_SOURCES) DIST_SOURCES = $(bonobo_activation_sysconf_SOURCES) ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ AR = @AR@ AS = @AS@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ BONOBO_ACTIVATION_LT_VERSION_INFO = @BONOBO_ACTIVATION_LT_VERSION_INFO@ BONOBO_MAJOR_VERSION = @BONOBO_MAJOR_VERSION@ BONOBO_MICRO_VERSION = @BONOBO_MICRO_VERSION@ BONOBO_MINOR_VERSION = @BONOBO_MINOR_VERSION@ BONOBO_SLAY = @BONOBO_SLAY@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DISABLE_DEPRECATED_CFLAGS = @DISABLE_DEPRECATED_CFLAGS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GREP = @GREP@ GTHREAD_CFLAGS = @GTHREAD_CFLAGS@ GTHREAD_LIBS = @GTHREAD_LIBS@ GTKDOC_CHECK = @GTKDOC_CHECK@ GTKDOC_MKPDF = @GTKDOC_MKPDF@ GTKDOC_REBASE = @GTKDOC_REBASE@ HTML_DIR = @HTML_DIR@ IF_BSD_PS = @IF_BSD_PS@ IF_CYGWIN_PS = @IF_CYGWIN_PS@ IF_POSIX_PS = @IF_POSIX_PS@ 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@ LD = @LD@ LDFLAGS = @LDFLAGS@ LEX = @LEX@ LEXLIB = @LEXLIB@ LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ LFLAGS = @LFLAGS@ LIBBONOBO_CFLAGS = @LIBBONOBO_CFLAGS@ LIBBONOBO_LIBS = @LIBBONOBO_LIBS@ LIBBONOBO_LT_VERSION_INFO = @LIBBONOBO_LT_VERSION_INFO@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIPO = @LIPO@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ NM = @NM@ NMEDIT = @NMEDIT@ OBJDUMP = @OBJDUMP@ OBJEXT = @OBJEXT@ ORBIT_IDL = @ORBIT_IDL@ OTOOL = @OTOOL@ OTOOL64 = @OTOOL64@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PERL_PATH = @PERL_PATH@ PKG_CONFIG = @PKG_CONFIG@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ PS_PATH = @PS_PATH@ RANLIB = @RANLIB@ SEARCHPATHSEP = @SEARCHPATHSEP@ SED = @SED@ SERVER_CFLAGS = @SERVER_CFLAGS@ SERVER_LIBS = @SERVER_LIBS@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SOPREFIX = @SOPREFIX@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ WARN_CFLAGS = @WARN_CFLAGS@ XGETTEXT = @XGETTEXT@ YACC = @YACC@ YFLAGS = @YFLAGS@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ 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@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ lt_ECHO = @lt_ECHO@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ 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@ bin_SCRIPTS = $(BONOBO_SLAY) EXTRA_SCRIPTS = bonobo-slay.in bonobo_activation_sysconf_SOURCES = \ bonobo-activation-sysconf.c INCLUDES = \ $(SERVER_CFLAGS) \ $(WARN_CFLAGS) \ -I$(top_srcdir) \ -DSERVER_LOCALEDIR=\""$(datadir)/locale"\" \ -DSERVER_CONFDIR=\"$(sysconfdir)\" bonobo_activation_sysconf_LDADD = \ $(SERVER_LIBS) \ $(top_builddir)/bonobo-activation/libbonobo-activation.la \ $(INTLLIBS) 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) --foreign utils/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --foreign utils/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): bonobo-slay: $(top_builddir)/config.status $(srcdir)/bonobo-slay.in cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ install-sbinPROGRAMS: $(sbin_PROGRAMS) @$(NORMAL_INSTALL) test -z "$(sbindir)" || $(MKDIR_P) "$(DESTDIR)$(sbindir)" @list='$(sbin_PROGRAMS)'; test -n "$(sbindir)" || list=; \ 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)$(sbindir)$$dir'"; \ $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(sbindir)$$dir" || exit $$?; \ } \ ; done uninstall-sbinPROGRAMS: @$(NORMAL_UNINSTALL) @list='$(sbin_PROGRAMS)'; test -n "$(sbindir)" || 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)$(sbindir)' && rm -f" $$files ")"; \ cd "$(DESTDIR)$(sbindir)" && rm -f $$files clean-sbinPROGRAMS: @list='$(sbin_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 bonobo-activation-sysconf$(EXEEXT): $(bonobo_activation_sysconf_OBJECTS) $(bonobo_activation_sysconf_DEPENDENCIES) @rm -f bonobo-activation-sysconf$(EXEEXT) $(AM_V_CCLD)$(LINK) $(bonobo_activation_sysconf_OBJECTS) $(bonobo_activation_sysconf_LDADD) $(LIBS) install-binSCRIPTS: $(bin_SCRIPTS) @$(NORMAL_INSTALL) test -z "$(bindir)" || $(MKDIR_P) "$(DESTDIR)$(bindir)" @list='$(bin_SCRIPTS)'; test -n "$(bindir)" || list=; \ 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)$(bindir)$$dir'"; \ $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(bindir)$$dir" || exit $$?; \ } \ ; done uninstall-binSCRIPTS: @$(NORMAL_UNINSTALL) @list='$(bin_SCRIPTS)'; test -n "$(bindir)" || exit 0; \ files=`for p in $$list; do echo "$$p"; done | \ sed -e 's,.*/,,;$(transform)'`; \ test -n "$$list" || exit 0; \ echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \ cd "$(DESTDIR)$(bindir)" && rm -f $$files mostlyclean-compile: -rm -f *.$(OBJEXT) distclean-compile: -rm -f *.tab.c @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-activation-sysconf.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 @am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(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 @am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(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 @am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $< mostlyclean-libtool: -rm -f *.lo clean-libtool: -rm -rf .libs _libs 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: check-am all-am: Makefile $(PROGRAMS) $(SCRIPTS) installdirs: for dir in "$(DESTDIR)$(sbindir)" "$(DESTDIR)$(bindir)"; 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: $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install 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-sbinPROGRAMS \ 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-dvi: install-dvi-am install-dvi-am: install-exec-am: install-binSCRIPTS install-sbinPROGRAMS 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-binSCRIPTS uninstall-sbinPROGRAMS .MAKE: install-am install-strip .PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \ clean-libtool clean-sbinPROGRAMS ctags distclean \ distclean-compile distclean-generic distclean-libtool \ distclean-tags distdir dvi dvi-am html html-am info info-am \ install install-am install-binSCRIPTS 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-sbinPROGRAMS 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-binSCRIPTS \ uninstall-sbinPROGRAMS # 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: �����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������libbonobo-2.32.1/aclocal.m4�������������������������������������������������������������������������0000664�0000764�0000764�00001270106�11546333024�012347� �����������������������������������������������������������������������������������������������������������������������������������������������������������������������������0000000�0000000������������������������������������������������������������������������������������������������������������������������������������������������������������������������# generated automatically by aclocal 1.11.1 -*- Autoconf -*- # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, # 2005, 2006, 2007, 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. # 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.65],, [m4_warning([this file was generated for autoconf 2.65. 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) 2002, 2003, 2005, 2006, 2007, 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. # 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.1], [], [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.1])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 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets # $ac_aux_dir to `$srcdir/foo'. In other projects, it is set to # `$srcdir', `$srcdir/..', or `$srcdir/../..'. # # Of course, Automake must honor this variable whenever it calls a # tool from the auxiliary directory. The problem is that $srcdir (and # therefore $ac_aux_dir as well) can be either absolute or relative, # depending on how configure is run. This is pretty annoying, since # it makes $ac_aux_dir quite unusable in subdirectories: in the top # source directory, any form will work fine, but in subdirectories a # relative path needs to be adjusted first. # # $ac_aux_dir/missing # fails when called from a subdirectory if $ac_aux_dir is relative # $top_srcdir/$ac_aux_dir/missing # fails if $ac_aux_dir is absolute, # fails when called from a subdirectory in a VPATH build with # a relative $ac_aux_dir # # The reason of the latter failure is that $top_srcdir and $ac_aux_dir # are both prefixed by $srcdir. In an in-source build this is usually # harmless because $srcdir is `.', but things will broke when you # start a VPATH build or use an absolute $srcdir. # # So we could use something similar to $top_srcdir/$ac_aux_dir/missing, # iff we strip the leading $srcdir from $ac_aux_dir. That would be: # am_aux_dir='\$(top_srcdir)/'`expr "$ac_aux_dir" : "$srcdir//*\(.*\)"` # and then we would define $MISSING as # MISSING="\${SHELL} $am_aux_dir/missing" # This will work as long as MISSING is not called from configure, because # unfortunately $(top_srcdir) has no meaning in configure. # However there are other variables, like CC, which are often used in # configure, and could therefore not use this "fixed" $ac_aux_dir. # # Another solution, used here, is to always expand $ac_aux_dir to an # absolute PATH. The drawback is that using absolute paths prevent a # configured tree to be moved without reconfiguration. AC_DEFUN([AM_AUX_DIR_EXPAND], [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 # 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 10 # 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'. 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 ;; 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='\' fi AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno]) AC_SUBST([AMDEPBACKSLASH])dnl _AM_SUBST_NOTMAKE([AMDEPBACKSLASH])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 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # AM_PROG_INSTALL_SH # ------------------ # Define $install_sh. AC_DEFUN([AM_PROG_INSTALL_SH], [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl if test x"${install_sh}" != 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])]) # Copyright (C) 1998, 1999, 2000, 2001, 2002, 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 5 # AM_PROG_LEX # ----------- # Autoconf leaves LEX=: if lex or flex can't be found. Change that to a # "missing" invocation, for better error output. AC_DEFUN([AM_PROG_LEX], [AC_PREREQ(2.50)dnl AC_REQUIRE([AM_MISSING_HAS_RUN])dnl AC_REQUIRE([AC_PROG_LEX])dnl if test "$LEX" = :; then LEX=${am_missing_run}flex fi]) # Add --enable-maintainer-mode option to configure. -*- Autoconf -*- # From Jim Meyering # Copyright (C) 1996, 1998, 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_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 am_maintainer_other 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 ]) # 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 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # AM_PROG_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 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_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])]) # 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 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_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 AC_SUBST([AM_DEFAULT_VERBOSITY])dnl AM_BACKSLASH='\' AC_SUBST([AM_BACKSLASH])dnl _AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl ]) # Copyright (C) 2001, 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. # 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 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_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 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. AM_MISSING_PROG([AMTAR], [tar]) m4_if([$1], [v7], [am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} 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 <conftest.tar]) grep GrepMe conftest.dir/file >/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 # gnome-common.m4 # dnl GNOME_COMMON_INIT AC_DEFUN([GNOME_COMMON_INIT], [ dnl this macro should come after AC_CONFIG_MACRO_DIR AC_BEFORE([AC_CONFIG_MACRO_DIR], [$0]) dnl ensure that when the Automake generated makefile calls aclocal, dnl it honours the $ACLOCAL_FLAGS environment variable ACLOCAL_AMFLAGS="\${ACLOCAL_FLAGS}" if test -n "$ac_macro_dir"; then ACLOCAL_AMFLAGS="-I $ac_macro_dir $ACLOCAL_AMFLAGS" fi AC_SUBST([ACLOCAL_AMFLAGS]) ]) AC_DEFUN([GNOME_DEBUG_CHECK], [ AC_ARG_ENABLE([debug], AC_HELP_STRING([--enable-debug], [turn on debugging]),, [enable_debug=no]) if test x$enable_debug = xyes ; then AC_DEFINE(GNOME_ENABLE_DEBUG, 1, [Enable additional debugging at the expense of performance and size]) fi ]) dnl GNOME_MAINTAINER_MODE_DEFINES () dnl define DISABLE_DEPRECATED dnl AC_DEFUN([GNOME_MAINTAINER_MODE_DEFINES], [ AC_REQUIRE([AM_MAINTAINER_MODE]) DISABLE_DEPRECATED="" if test $USE_MAINTAINER_MODE = yes; then DOMAINS="G ATK PANGO GDK GDK_PIXBUF GTK GCONF BONOBO BONOBO_UI GNOME LIBGLADE VTE GNOME_VFS WNCK LIBSOUP" for DOMAIN in $DOMAINS; do DISABLE_DEPRECATED="$DISABLE_DEPRECATED -D${DOMAIN}_DISABLE_DEPRECATED -D${DOMAIN}_DISABLE_SINGLE_INCLUDES" done fi AC_SUBST(DISABLE_DEPRECATED) ]) dnl GNOME_COMPILE_WARNINGS dnl Turn on many useful compiler warnings dnl For now, only works on GCC AC_DEFUN([GNOME_COMPILE_WARNINGS],[ dnl ****************************** dnl More compiler warnings dnl ****************************** AC_ARG_ENABLE(compile-warnings, AC_HELP_STRING([--enable-compile-warnings=@<:@no/minimum/yes/maximum/error@:>@], [Turn on compiler warnings]),, [enable_compile_warnings="m4_default([$1],[yes])"]) warnCFLAGS= if test "x$GCC" != xyes; then enable_compile_warnings=no fi warning_flags= realsave_CFLAGS="$CFLAGS" case "$enable_compile_warnings" in no) warning_flags= ;; minimum) warning_flags="-Wall" ;; yes) warning_flags="-Wall -Wmissing-prototypes" ;; maximum|error) warning_flags="-Wall -Wmissing-prototypes -Wnested-externs -Wpointer-arith" CFLAGS="$warning_flags $CFLAGS" for option in -Wno-sign-compare; do SAVE_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS $option" AC_MSG_CHECKING([whether gcc understands $option]) AC_TRY_COMPILE([], [], has_option=yes, has_option=no,) CFLAGS="$SAVE_CFLAGS" AC_MSG_RESULT($has_option) if test $has_option = yes; then warning_flags="$warning_flags $option" fi unset has_option unset SAVE_CFLAGS done unset option if test "$enable_compile_warnings" = "error" ; then warning_flags="$warning_flags -Werror" fi ;; *) AC_MSG_ERROR(Unknown argument '$enable_compile_warnings' to --enable-compile-warnings) ;; esac CFLAGS="$realsave_CFLAGS" AC_MSG_CHECKING(what warning flags to pass to the C compiler) AC_MSG_RESULT($warning_flags) AC_ARG_ENABLE(iso-c, AC_HELP_STRING([--enable-iso-c], [Try to warn if code is not ISO C ]),, [enable_iso_c=no]) AC_MSG_CHECKING(what language compliance flags to pass to the C compiler) complCFLAGS= if test "x$enable_iso_c" != "xno"; then if test "x$GCC" = "xyes"; then case " $CFLAGS " in *[\ \ ]-ansi[\ \ ]*) ;; *) complCFLAGS="$complCFLAGS -ansi" ;; esac case " $CFLAGS " in *[\ \ ]-pedantic[\ \ ]*) ;; *) complCFLAGS="$complCFLAGS -pedantic" ;; esac fi fi AC_MSG_RESULT($complCFLAGS) WARN_CFLAGS="$warning_flags $complCFLAGS" AC_SUBST(WARN_CFLAGS) ]) dnl For C++, do basically the same thing. AC_DEFUN([GNOME_CXX_WARNINGS],[ AC_ARG_ENABLE(cxx-warnings, AC_HELP_STRING([--enable-cxx-warnings=@<:@no/minimum/yes@:>@] [Turn on compiler warnings.]),, [enable_cxx_warnings="m4_default([$1],[minimum])"]) AC_MSG_CHECKING(what warning flags to pass to the C++ compiler) warnCXXFLAGS= if test "x$GXX" != xyes; then enable_cxx_warnings=no fi if test "x$enable_cxx_warnings" != "xno"; then if test "x$GXX" = "xyes"; then case " $CXXFLAGS " in *[\ \ ]-Wall[\ \ ]*) ;; *) warnCXXFLAGS="-Wall -Wno-unused" ;; esac ## -W is not all that useful. And it cannot be controlled ## with individual -Wno-xxx flags, unlike -Wall if test "x$enable_cxx_warnings" = "xyes"; then warnCXXFLAGS="$warnCXXFLAGS -Wshadow -Woverloaded-virtual" fi fi fi AC_MSG_RESULT($warnCXXFLAGS) AC_ARG_ENABLE(iso-cxx, AC_HELP_STRING([--enable-iso-cxx], [Try to warn if code is not ISO C++ ]),, [enable_iso_cxx=no]) AC_MSG_CHECKING(what language compliance flags to pass to the C++ compiler) complCXXFLAGS= if test "x$enable_iso_cxx" != "xno"; then if test "x$GXX" = "xyes"; then case " $CXXFLAGS " in *[\ \ ]-ansi[\ \ ]*) ;; *) complCXXFLAGS="$complCXXFLAGS -ansi" ;; esac case " $CXXFLAGS " in *[\ \ ]-pedantic[\ \ ]*) ;; *) complCXXFLAGS="$complCXXFLAGS -pedantic" ;; esac fi fi AC_MSG_RESULT($complCXXFLAGS) WARN_CXXFLAGS="$CXXFLAGS $warnCXXFLAGS $complCXXFLAGS" AC_SUBST(WARN_CXXFLAGS) ]) dnl IT_PROG_INTLTOOL([MINIMUM-VERSION], [no-xml]) # serial 40 IT_PROG_INTLTOOL AC_DEFUN([IT_PROG_INTLTOOL], [ AC_PREREQ([2.50])dnl AC_REQUIRE([AM_NLS])dnl case "$am__api_version" in 1.[01234]) AC_MSG_ERROR([Automake 1.5 or newer is required to use intltool]) ;; *) ;; esac if test -n "$1"; then AC_MSG_CHECKING([for intltool >= $1]) INTLTOOL_REQUIRED_VERSION_AS_INT=`echo $1 | awk -F. '{ print $ 1 * 1000 + $ 2 * 100 + $ 3; }'` INTLTOOL_APPLIED_VERSION=`intltool-update --version | head -1 | cut -d" " -f3` [INTLTOOL_APPLIED_VERSION_AS_INT=`echo $INTLTOOL_APPLIED_VERSION | awk -F. '{ print $ 1 * 1000 + $ 2 * 100 + $ 3; }'` ] AC_MSG_RESULT([$INTLTOOL_APPLIED_VERSION found]) test "$INTLTOOL_APPLIED_VERSION_AS_INT" -ge "$INTLTOOL_REQUIRED_VERSION_AS_INT" || AC_MSG_ERROR([Your intltool is too old. You need intltool $1 or later.]) fi AC_PATH_PROG(INTLTOOL_UPDATE, [intltool-update]) AC_PATH_PROG(INTLTOOL_MERGE, [intltool-merge]) AC_PATH_PROG(INTLTOOL_EXTRACT, [intltool-extract]) if test -z "$INTLTOOL_UPDATE" -o -z "$INTLTOOL_MERGE" -o -z "$INTLTOOL_EXTRACT"; then AC_MSG_ERROR([The intltool scripts were not found. Please install intltool.]) fi INTLTOOL_DESKTOP_RULE='%.desktop: %.desktop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_DIRECTORY_RULE='%.directory: %.directory.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_KEYS_RULE='%.keys: %.keys.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -k -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_PROP_RULE='%.prop: %.prop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_OAF_RULE='%.oaf: %.oaf.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -o -p $(top_srcdir)/po $< [$]@' INTLTOOL_PONG_RULE='%.pong: %.pong.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_SERVER_RULE='%.server: %.server.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -o -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_SHEET_RULE='%.sheet: %.sheet.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_SOUNDLIST_RULE='%.soundlist: %.soundlist.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_UI_RULE='%.ui: %.ui.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_XML_RULE='%.xml: %.xml.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_XML_NOMERGE_RULE='%.xml: %.xml.in $(INTLTOOL_MERGE) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u /tmp $< [$]@' INTLTOOL_XAM_RULE='%.xam: %.xml.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_KBD_RULE='%.kbd: %.kbd.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -m -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_CAVES_RULE='%.caves: %.caves.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_SCHEMAS_RULE='%.schemas: %.schemas.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -s -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_THEME_RULE='%.theme: %.theme.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_SERVICE_RULE='%.service: %.service.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_POLICY_RULE='%.policy: %.policy.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' _IT_SUBST(INTLTOOL_DESKTOP_RULE) _IT_SUBST(INTLTOOL_DIRECTORY_RULE) _IT_SUBST(INTLTOOL_KEYS_RULE) _IT_SUBST(INTLTOOL_PROP_RULE) _IT_SUBST(INTLTOOL_OAF_RULE) _IT_SUBST(INTLTOOL_PONG_RULE) _IT_SUBST(INTLTOOL_SERVER_RULE) _IT_SUBST(INTLTOOL_SHEET_RULE) _IT_SUBST(INTLTOOL_SOUNDLIST_RULE) _IT_SUBST(INTLTOOL_UI_RULE) _IT_SUBST(INTLTOOL_XAM_RULE) _IT_SUBST(INTLTOOL_KBD_RULE) _IT_SUBST(INTLTOOL_XML_RULE) _IT_SUBST(INTLTOOL_XML_NOMERGE_RULE) _IT_SUBST(INTLTOOL_CAVES_RULE) _IT_SUBST(INTLTOOL_SCHEMAS_RULE) _IT_SUBST(INTLTOOL_THEME_RULE) _IT_SUBST(INTLTOOL_SERVICE_RULE) _IT_SUBST(INTLTOOL_POLICY_RULE) # Check the gettext tools to make sure they are GNU AC_PATH_PROG(XGETTEXT, xgettext) AC_PATH_PROG(MSGMERGE, msgmerge) AC_PATH_PROG(MSGFMT, msgfmt) AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT) if test -z "$XGETTEXT" -o -z "$MSGMERGE" -o -z "$MSGFMT"; then AC_MSG_ERROR([GNU gettext tools not found; required for intltool]) fi xgversion="`$XGETTEXT --version|grep '(GNU ' 2> /dev/null`" mmversion="`$MSGMERGE --version|grep '(GNU ' 2> /dev/null`" mfversion="`$MSGFMT --version|grep '(GNU ' 2> /dev/null`" if test -z "$xgversion" -o -z "$mmversion" -o -z "$mfversion"; then AC_MSG_ERROR([GNU gettext tools not found; required for intltool]) fi AC_PATH_PROG(INTLTOOL_PERL, perl) if test -z "$INTLTOOL_PERL"; then AC_MSG_ERROR([perl not found]) fi AC_MSG_CHECKING([for perl >= 5.8.1]) $INTLTOOL_PERL -e "use 5.8.1;" > /dev/null 2>&1 if test $? -ne 0; then AC_MSG_ERROR([perl 5.8.1 is required for intltool]) else IT_PERL_VERSION="`$INTLTOOL_PERL -e \"printf '%vd', $^V\"`" AC_MSG_RESULT([$IT_PERL_VERSION]) fi if test "x$2" != "xno-xml"; then AC_MSG_CHECKING([for XML::Parser]) if `$INTLTOOL_PERL -e "require XML::Parser" 2>/dev/null`; then AC_MSG_RESULT([ok]) else AC_MSG_ERROR([XML::Parser perl module is required for intltool]) fi fi # Substitute ALL_LINGUAS so we can use it in po/Makefile AC_SUBST(ALL_LINGUAS) # Set DATADIRNAME correctly if it is not set yet # (copied from glib-gettext.m4) if test -z "$DATADIRNAME"; then AC_LINK_IFELSE( [AC_LANG_PROGRAM([[]], [[extern int _nl_msg_cat_cntr; return _nl_msg_cat_cntr]])], [DATADIRNAME=share], [case $host in *-*-solaris*) dnl On Solaris, if bind_textdomain_codeset is in libc, dnl GNU format message catalog is always supported, dnl since both are added to the libc all together. dnl Hence, we'd like to go with DATADIRNAME=share dnl in this case. AC_CHECK_FUNC(bind_textdomain_codeset, [DATADIRNAME=share], [DATADIRNAME=lib]) ;; *) [DATADIRNAME=lib] ;; esac]) fi AC_SUBST(DATADIRNAME) IT_PO_SUBDIR([po]) ]) # IT_PO_SUBDIR(DIRNAME) # --------------------- # All po subdirs have to be declared with this macro; the subdir "po" is # declared by IT_PROG_INTLTOOL. # AC_DEFUN([IT_PO_SUBDIR], [AC_PREREQ([2.53])dnl We use ac_top_srcdir inside AC_CONFIG_COMMANDS. dnl dnl The following CONFIG_COMMANDS should be executed at the very end dnl of config.status. AC_CONFIG_COMMANDS_PRE([ AC_CONFIG_COMMANDS([$1/stamp-it], [ if [ ! grep "^# INTLTOOL_MAKEFILE$" "$1/Makefile.in" > /dev/null ]; then AC_MSG_ERROR([$1/Makefile.in.in was not created by intltoolize.]) fi rm -f "$1/stamp-it" "$1/stamp-it.tmp" "$1/POTFILES" "$1/Makefile.tmp" >"$1/stamp-it.tmp" [sed '/^#/d s/^[[].*] *// /^[ ]*$/d '"s|^| $ac_top_srcdir/|" \ "$srcdir/$1/POTFILES.in" | sed '$!s/$/ \\/' >"$1/POTFILES" ] [sed '/^POTFILES =/,/[^\\]$/ { /^POTFILES =/!d r $1/POTFILES } ' "$1/Makefile.in" >"$1/Makefile"] rm -f "$1/Makefile.tmp" mv "$1/stamp-it.tmp" "$1/stamp-it" ]) ])dnl ]) # _IT_SUBST(VARIABLE) # ------------------- # Abstract macro to do either _AM_SUBST_NOTMAKE or AC_SUBST # AC_DEFUN([_IT_SUBST], [ AC_SUBST([$1]) m4_ifdef([_AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE([$1])]) ] ) # deprecated macros AU_ALIAS([AC_PROG_INTLTOOL], [IT_PROG_INTLTOOL]) # A hint is needed for aclocal from Automake <= 1.9.4: # AC_DEFUN([AC_PROG_INTLTOOL], ...) # libtool.m4 - Configure libtool for the host system. -*-Autoconf-*- # # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, # 2006, 2007, 2008 Free Software Foundation, Inc. # Written by Gordon Matzigkeit, 1996 # # This file is free software; the Free Software Foundation gives # unlimited permission to copy and/or distribute it, with or without # modifications, as long as this notice is preserved. m4_define([_LT_COPYING], [dnl # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, # 2006, 2007, 2008 Free Software Foundation, Inc. # Written by Gordon Matzigkeit, 1996 # # This file is part of GNU Libtool. # # GNU Libtool is free software; you can redistribute it and/or # modify it under the terms of the GNU General Public License as # published by the Free Software Foundation; either version 2 of # the License, or (at your option) any later version. # # As a special exception to the GNU General Public License, # if you distribute this file as part of a program or library that # is built using GNU Libtool, you may include this file under the # same distribution terms that you use for the rest of that program. # # GNU Libtool is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with GNU Libtool; see the file COPYING. If not, a copy # can be downloaded from http://www.gnu.org/licenses/gpl.html, or # obtained by writing to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. ]) # serial 56 LT_INIT # LT_PREREQ(VERSION) # ------------------ # Complain and exit if this libtool version is less that VERSION. m4_defun([LT_PREREQ], [m4_if(m4_version_compare(m4_defn([LT_PACKAGE_VERSION]), [$1]), -1, [m4_default([$3], [m4_fatal([Libtool version $1 or higher is required], 63)])], [$2])]) # _LT_CHECK_BUILDDIR # ------------------ # Complain if the absolute build directory name contains unusual characters m4_defun([_LT_CHECK_BUILDDIR], [case `pwd` in *\ * | *\ *) AC_MSG_WARN([Libtool does not cope well with whitespace in `pwd`]) ;; esac ]) # LT_INIT([OPTIONS]) # ------------------ AC_DEFUN([LT_INIT], [AC_PREREQ([2.58])dnl We use AC_INCLUDES_DEFAULT AC_BEFORE([$0], [LT_LANG])dnl AC_BEFORE([$0], [LT_OUTPUT])dnl AC_BEFORE([$0], [LTDL_INIT])dnl m4_require([_LT_CHECK_BUILDDIR])dnl dnl Autoconf doesn't catch unexpanded LT_ macros by default: m4_pattern_forbid([^_?LT_[A-Z_]+$])dnl m4_pattern_allow([^(_LT_EOF|LT_DLGLOBAL|LT_DLLAZY_OR_NOW|LT_MULTI_MODULE)$])dnl dnl aclocal doesn't pull ltoptions.m4, ltsugar.m4, or ltversion.m4 dnl unless we require an AC_DEFUNed macro: AC_REQUIRE([LTOPTIONS_VERSION])dnl AC_REQUIRE([LTSUGAR_VERSION])dnl AC_REQUIRE([LTVERSION_VERSION])dnl AC_REQUIRE([LTOBSOLETE_VERSION])dnl m4_require([_LT_PROG_LTMAIN])dnl dnl Parse OPTIONS _LT_SET_OPTIONS([$0], [$1]) # This can be used to rebuild libtool when needed LIBTOOL_DEPS="$ltmain" # Always use our own libtool. LIBTOOL='$(SHELL) $(top_builddir)/libtool' AC_SUBST(LIBTOOL)dnl _LT_SETUP # Only expand once: m4_define([LT_INIT]) ])# LT_INIT # Old names: AU_ALIAS([AC_PROG_LIBTOOL], [LT_INIT]) AU_ALIAS([AM_PROG_LIBTOOL], [LT_INIT]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AC_PROG_LIBTOOL], []) dnl AC_DEFUN([AM_PROG_LIBTOOL], []) # _LT_CC_BASENAME(CC) # ------------------- # Calculate cc_basename. Skip known compiler wrappers and cross-prefix. m4_defun([_LT_CC_BASENAME], [for cc_temp in $1""; do case $cc_temp in compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;; distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;; \-*) ;; *) break;; esac done cc_basename=`$ECHO "X$cc_temp" | $Xsed -e 's%.*/%%' -e "s%^$host_alias-%%"` ]) # _LT_FILEUTILS_DEFAULTS # ---------------------- # It is okay to use these file commands and assume they have been set # sensibly after `m4_require([_LT_FILEUTILS_DEFAULTS])'. m4_defun([_LT_FILEUTILS_DEFAULTS], [: ${CP="cp -f"} : ${MV="mv -f"} : ${RM="rm -f"} ])# _LT_FILEUTILS_DEFAULTS # _LT_SETUP # --------- m4_defun([_LT_SETUP], [AC_REQUIRE([AC_CANONICAL_HOST])dnl AC_REQUIRE([AC_CANONICAL_BUILD])dnl _LT_DECL([], [host_alias], [0], [The host system])dnl _LT_DECL([], [host], [0])dnl _LT_DECL([], [host_os], [0])dnl dnl _LT_DECL([], [build_alias], [0], [The build system])dnl _LT_DECL([], [build], [0])dnl _LT_DECL([], [build_os], [0])dnl dnl AC_REQUIRE([AC_PROG_CC])dnl AC_REQUIRE([LT_PATH_LD])dnl AC_REQUIRE([LT_PATH_NM])dnl dnl AC_REQUIRE([AC_PROG_LN_S])dnl test -z "$LN_S" && LN_S="ln -s" _LT_DECL([], [LN_S], [1], [Whether we need soft or hard links])dnl dnl AC_REQUIRE([LT_CMD_MAX_LEN])dnl _LT_DECL([objext], [ac_objext], [0], [Object file suffix (normally "o")])dnl _LT_DECL([], [exeext], [0], [Executable file suffix (normally "")])dnl dnl m4_require([_LT_FILEUTILS_DEFAULTS])dnl m4_require([_LT_CHECK_SHELL_FEATURES])dnl m4_require([_LT_CMD_RELOAD])dnl m4_require([_LT_CHECK_MAGIC_METHOD])dnl m4_require([_LT_CMD_OLD_ARCHIVE])dnl m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl _LT_CONFIG_LIBTOOL_INIT([ # See if we are running on zsh, and set the options which allow our # commands through without removal of \ escapes INIT. if test -n "\${ZSH_VERSION+set}" ; then setopt NO_GLOB_SUBST fi ]) if test -n "${ZSH_VERSION+set}" ; then setopt NO_GLOB_SUBST fi _LT_CHECK_OBJDIR m4_require([_LT_TAG_COMPILER])dnl _LT_PROG_ECHO_BACKSLASH case $host_os in aix3*) # AIX sometimes has problems with the GCC collect2 program. For some # reason, if we set the COLLECT_NAMES environment variable, the problems # vanish in a puff of smoke. if test "X${COLLECT_NAMES+set}" != Xset; then COLLECT_NAMES= export COLLECT_NAMES fi ;; esac # Sed substitution that helps us do robust quoting. It backslashifies # metacharacters that are still active within double-quoted strings. sed_quote_subst='s/\([["`$\\]]\)/\\\1/g' # Same as above, but do not quote variable references. double_quote_subst='s/\([["`\\]]\)/\\\1/g' # Sed substitution to delay expansion of an escaped shell variable in a # double_quote_subst'ed string. delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g' # Sed substitution to delay expansion of an escaped single quote. delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g' # Sed substitution to avoid accidental globbing in evaled expressions no_glob_subst='s/\*/\\\*/g' # Global variables: ofile=libtool can_build_shared=yes # All known linkers require a `.a' archive for static linking (except MSVC, # which needs '.lib'). libext=a with_gnu_ld="$lt_cv_prog_gnu_ld" old_CC="$CC" old_CFLAGS="$CFLAGS" # Set sane defaults for various variables test -z "$CC" && CC=cc test -z "$LTCC" && LTCC=$CC test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS test -z "$LD" && LD=ld test -z "$ac_objext" && ac_objext=o _LT_CC_BASENAME([$compiler]) # Only perform the check for file, if the check method requires it test -z "$MAGIC_CMD" && MAGIC_CMD=file case $deplibs_check_method in file_magic*) if test "$file_magic_cmd" = '$MAGIC_CMD'; then _LT_PATH_MAGIC fi ;; esac # Use C for the default configuration in the libtool script LT_SUPPORTED_TAG([CC]) _LT_LANG_C_CONFIG _LT_LANG_DEFAULT_CONFIG _LT_CONFIG_COMMANDS ])# _LT_SETUP # _LT_PROG_LTMAIN # --------------- # Note that this code is called both from `configure', and `config.status' # now that we use AC_CONFIG_COMMANDS to generate libtool. Notably, # `config.status' has no value for ac_aux_dir unless we are using Automake, # so we pass a copy along to make sure it has a sensible value anyway. m4_defun([_LT_PROG_LTMAIN], [m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([ltmain.sh])])dnl _LT_CONFIG_LIBTOOL_INIT([ac_aux_dir='$ac_aux_dir']) ltmain="$ac_aux_dir/ltmain.sh" ])# _LT_PROG_LTMAIN # So that we can recreate a full libtool script including additional # tags, we accumulate the chunks of code to send to AC_CONFIG_COMMANDS # in macros and then make a single call at the end using the `libtool' # label. # _LT_CONFIG_LIBTOOL_INIT([INIT-COMMANDS]) # ---------------------------------------- # Register INIT-COMMANDS to be passed to AC_CONFIG_COMMANDS later. m4_define([_LT_CONFIG_LIBTOOL_INIT], [m4_ifval([$1], [m4_append([_LT_OUTPUT_LIBTOOL_INIT], [$1 ])])]) # Initialize. m4_define([_LT_OUTPUT_LIBTOOL_INIT]) # _LT_CONFIG_LIBTOOL([COMMANDS]) # ------------------------------ # Register COMMANDS to be passed to AC_CONFIG_COMMANDS later. m4_define([_LT_CONFIG_LIBTOOL], [m4_ifval([$1], [m4_append([_LT_OUTPUT_LIBTOOL_COMMANDS], [$1 ])])]) # Initialize. m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS]) # _LT_CONFIG_SAVE_COMMANDS([COMMANDS], [INIT_COMMANDS]) # ----------------------------------------------------- m4_defun([_LT_CONFIG_SAVE_COMMANDS], [_LT_CONFIG_LIBTOOL([$1]) _LT_CONFIG_LIBTOOL_INIT([$2]) ]) # _LT_FORMAT_COMMENT([COMMENT]) # ----------------------------- # Add leading comment marks to the start of each line, and a trailing # full-stop to the whole comment if one is not present already. m4_define([_LT_FORMAT_COMMENT], [m4_ifval([$1], [ m4_bpatsubst([m4_bpatsubst([$1], [^ *], [# ])], [['`$\]], [\\\&])]m4_bmatch([$1], [[!?.]$], [], [.]) )]) # _LT_DECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION], [IS-TAGGED?]) # ------------------------------------------------------------------- # CONFIGNAME is the name given to the value in the libtool script. # VARNAME is the (base) name used in the configure script. # VALUE may be 0, 1 or 2 for a computed quote escaped value based on # VARNAME. Any other value will be used directly. m4_define([_LT_DECL], [lt_if_append_uniq([lt_decl_varnames], [$2], [, ], [lt_dict_add_subkey([lt_decl_dict], [$2], [libtool_name], [m4_ifval([$1], [$1], [$2])]) lt_dict_add_subkey([lt_decl_dict], [$2], [value], [$3]) m4_ifval([$4], [lt_dict_add_subkey([lt_decl_dict], [$2], [description], [$4])]) lt_dict_add_subkey([lt_decl_dict], [$2], [tagged?], [m4_ifval([$5], [yes], [no])])]) ]) # _LT_TAGDECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION]) # -------------------------------------------------------- m4_define([_LT_TAGDECL], [_LT_DECL([$1], [$2], [$3], [$4], [yes])]) # lt_decl_tag_varnames([SEPARATOR], [VARNAME1...]) # ------------------------------------------------ m4_define([lt_decl_tag_varnames], [_lt_decl_filter([tagged?], [yes], $@)]) # _lt_decl_filter(SUBKEY, VALUE, [SEPARATOR], [VARNAME1..]) # --------------------------------------------------------- m4_define([_lt_decl_filter], [m4_case([$#], [0], [m4_fatal([$0: too few arguments: $#])], [1], [m4_fatal([$0: too few arguments: $#: $1])], [2], [lt_dict_filter([lt_decl_dict], [$1], [$2], [], lt_decl_varnames)], [3], [lt_dict_filter([lt_decl_dict], [$1], [$2], [$3], lt_decl_varnames)], [lt_dict_filter([lt_decl_dict], $@)])[]dnl ]) # lt_decl_quote_varnames([SEPARATOR], [VARNAME1...]) # -------------------------------------------------- m4_define([lt_decl_quote_varnames], [_lt_decl_filter([value], [1], $@)]) # lt_decl_dquote_varnames([SEPARATOR], [VARNAME1...]) # --------------------------------------------------- m4_define([lt_decl_dquote_varnames], [_lt_decl_filter([value], [2], $@)]) # lt_decl_varnames_tagged([SEPARATOR], [VARNAME1...]) # --------------------------------------------------- m4_define([lt_decl_varnames_tagged], [m4_assert([$# <= 2])dnl _$0(m4_quote(m4_default([$1], [[, ]])), m4_ifval([$2], [[$2]], [m4_dquote(lt_decl_tag_varnames)]), m4_split(m4_normalize(m4_quote(_LT_TAGS)), [ ]))]) m4_define([_lt_decl_varnames_tagged], [m4_ifval([$3], [lt_combine([$1], [$2], [_], $3)])]) # lt_decl_all_varnames([SEPARATOR], [VARNAME1...]) # ------------------------------------------------ m4_define([lt_decl_all_varnames], [_$0(m4_quote(m4_default([$1], [[, ]])), m4_if([$2], [], m4_quote(lt_decl_varnames), m4_quote(m4_shift($@))))[]dnl ]) m4_define([_lt_decl_all_varnames], [lt_join($@, lt_decl_varnames_tagged([$1], lt_decl_tag_varnames([[, ]], m4_shift($@))))dnl ]) # _LT_CONFIG_STATUS_DECLARE([VARNAME]) # ------------------------------------ # Quote a variable value, and forward it to `config.status' so that its # declaration there will have the same value as in `configure'. VARNAME # must have a single quote delimited value for this to work. m4_define([_LT_CONFIG_STATUS_DECLARE], [$1='`$ECHO "X$][$1" | $Xsed -e "$delay_single_quote_subst"`']) # _LT_CONFIG_STATUS_DECLARATIONS # ------------------------------ # We delimit libtool config variables with single quotes, so when # we write them to config.status, we have to be sure to quote all # embedded single quotes properly. In configure, this macro expands # each variable declared with _LT_DECL (and _LT_TAGDECL) into: # # <var>='`$ECHO "X$<var>" | $Xsed -e "$delay_single_quote_subst"`' m4_defun([_LT_CONFIG_STATUS_DECLARATIONS], [m4_foreach([_lt_var], m4_quote(lt_decl_all_varnames), [m4_n([_LT_CONFIG_STATUS_DECLARE(_lt_var)])])]) # _LT_LIBTOOL_TAGS # ---------------- # Output comment and list of tags supported by the script m4_defun([_LT_LIBTOOL_TAGS], [_LT_FORMAT_COMMENT([The names of the tagged configurations supported by this script])dnl available_tags="_LT_TAGS"dnl ]) # _LT_LIBTOOL_DECLARE(VARNAME, [TAG]) # ----------------------------------- # Extract the dictionary values for VARNAME (optionally with TAG) and # expand to a commented shell variable setting: # # # Some comment about what VAR is for. # visible_name=$lt_internal_name m4_define([_LT_LIBTOOL_DECLARE], [_LT_FORMAT_COMMENT(m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [description])))[]dnl m4_pushdef([_libtool_name], m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [libtool_name])))[]dnl m4_case(m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [value])), [0], [_libtool_name=[$]$1], [1], [_libtool_name=$lt_[]$1], [2], [_libtool_name=$lt_[]$1], [_libtool_name=lt_dict_fetch([lt_decl_dict], [$1], [value])])[]dnl m4_ifval([$2], [_$2])[]m4_popdef([_libtool_name])[]dnl ]) # _LT_LIBTOOL_CONFIG_VARS # ----------------------- # Produce commented declarations of non-tagged libtool config variables # suitable for insertion in the LIBTOOL CONFIG section of the `libtool' # script. Tagged libtool config variables (even for the LIBTOOL CONFIG # section) are produced by _LT_LIBTOOL_TAG_VARS. m4_defun([_LT_LIBTOOL_CONFIG_VARS], [m4_foreach([_lt_var], m4_quote(_lt_decl_filter([tagged?], [no], [], lt_decl_varnames)), [m4_n([_LT_LIBTOOL_DECLARE(_lt_var)])])]) # _LT_LIBTOOL_TAG_VARS(TAG) # ------------------------- m4_define([_LT_LIBTOOL_TAG_VARS], [m4_foreach([_lt_var], m4_quote(lt_decl_tag_varnames), [m4_n([_LT_LIBTOOL_DECLARE(_lt_var, [$1])])])]) # _LT_TAGVAR(VARNAME, [TAGNAME]) # ------------------------------ m4_define([_LT_TAGVAR], [m4_ifval([$2], [$1_$2], [$1])]) # _LT_CONFIG_COMMANDS # ------------------- # Send accumulated output to $CONFIG_STATUS. Thanks to the lists of # variables for single and double quote escaping we saved from calls # to _LT_DECL, we can put quote escaped variables declarations # into `config.status', and then the shell code to quote escape them in # for loops in `config.status'. Finally, any additional code accumulated # from calls to _LT_CONFIG_LIBTOOL_INIT is expanded. m4_defun([_LT_CONFIG_COMMANDS], [AC_PROVIDE_IFELSE([LT_OUTPUT], dnl If the libtool generation code has been placed in $CONFIG_LT, dnl instead of duplicating it all over again into config.status, dnl then we will have config.status run $CONFIG_LT later, so it dnl needs to know what name is stored there: [AC_CONFIG_COMMANDS([libtool], [$SHELL $CONFIG_LT || AS_EXIT(1)], [CONFIG_LT='$CONFIG_LT'])], dnl If the libtool generation code is destined for config.status, dnl expand the accumulated commands and init code now: [AC_CONFIG_COMMANDS([libtool], [_LT_OUTPUT_LIBTOOL_COMMANDS], [_LT_OUTPUT_LIBTOOL_COMMANDS_INIT])]) ])#_LT_CONFIG_COMMANDS # Initialize. m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS_INIT], [ # The HP-UX ksh and POSIX shell print the target directory to stdout # if CDPATH is set. (unset CDPATH) >/dev/null 2>&1 && unset CDPATH sed_quote_subst='$sed_quote_subst' double_quote_subst='$double_quote_subst' delay_variable_subst='$delay_variable_subst' _LT_CONFIG_STATUS_DECLARATIONS LTCC='$LTCC' LTCFLAGS='$LTCFLAGS' compiler='$compiler_DEFAULT' # Quote evaled strings. for var in lt_decl_all_varnames([[ \ ]], lt_decl_quote_varnames); do case \`eval \\\\\$ECHO "X\\\\\$\$var"\` in *[[\\\\\\\`\\"\\\$]]*) eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"X\\\$\$var\\" | \\\$Xsed -e \\"\\\$sed_quote_subst\\"\\\`\\\\\\"" ;; *) eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\"" ;; esac done # Double-quote double-evaled strings. for var in lt_decl_all_varnames([[ \ ]], lt_decl_dquote_varnames); do case \`eval \\\\\$ECHO "X\\\\\$\$var"\` in *[[\\\\\\\`\\"\\\$]]*) eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"X\\\$\$var\\" | \\\$Xsed -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\"" ;; *) eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\"" ;; esac done # Fix-up fallback echo if it was mangled by the above quoting rules. case \$lt_ECHO in *'\\\[$]0 --fallback-echo"')dnl " lt_ECHO=\`\$ECHO "X\$lt_ECHO" | \$Xsed -e 's/\\\\\\\\\\\\\\\[$]0 --fallback-echo"\[$]/\[$]0 --fallback-echo"/'\` ;; esac _LT_OUTPUT_LIBTOOL_INIT ]) # LT_OUTPUT # --------- # This macro allows early generation of the libtool script (before # AC_OUTPUT is called), incase it is used in configure for compilation # tests. AC_DEFUN([LT_OUTPUT], [: ${CONFIG_LT=./config.lt} AC_MSG_NOTICE([creating $CONFIG_LT]) cat >"$CONFIG_LT" <<_LTEOF #! $SHELL # Generated by $as_me. # Run this file to recreate a libtool stub with the current configuration. lt_cl_silent=false SHELL=\${CONFIG_SHELL-$SHELL} _LTEOF cat >>"$CONFIG_LT" <<\_LTEOF AS_SHELL_SANITIZE _AS_PREPARE exec AS_MESSAGE_FD>&1 exec AS_MESSAGE_LOG_FD>>config.log { echo AS_BOX([Running $as_me.]) } >&AS_MESSAGE_LOG_FD lt_cl_help="\ \`$as_me' creates a local libtool stub from the current configuration, for use in further configure time tests before the real libtool is generated. Usage: $[0] [[OPTIONS]] -h, --help print this help, then exit -V, --version print version number, then exit -q, --quiet do not print progress messages -d, --debug don't remove temporary files Report bugs to <bug-libtool@gnu.org>." lt_cl_version="\ m4_ifset([AC_PACKAGE_NAME], [AC_PACKAGE_NAME ])config.lt[]dnl m4_ifset([AC_PACKAGE_VERSION], [ AC_PACKAGE_VERSION]) configured by $[0], generated by m4_PACKAGE_STRING. Copyright (C) 2008 Free Software Foundation, Inc. This config.lt script is free software; the Free Software Foundation gives unlimited permision to copy, distribute and modify it." while test $[#] != 0 do case $[1] in --version | --v* | -V ) echo "$lt_cl_version"; exit 0 ;; --help | --h* | -h ) echo "$lt_cl_help"; exit 0 ;; --debug | --d* | -d ) debug=: ;; --quiet | --q* | --silent | --s* | -q ) lt_cl_silent=: ;; -*) AC_MSG_ERROR([unrecognized option: $[1] Try \`$[0] --help' for more information.]) ;; *) AC_MSG_ERROR([unrecognized argument: $[1] Try \`$[0] --help' for more information.]) ;; esac shift done if $lt_cl_silent; then exec AS_MESSAGE_FD>/dev/null fi _LTEOF cat >>"$CONFIG_LT" <<_LTEOF _LT_OUTPUT_LIBTOOL_COMMANDS_INIT _LTEOF cat >>"$CONFIG_LT" <<\_LTEOF AC_MSG_NOTICE([creating $ofile]) _LT_OUTPUT_LIBTOOL_COMMANDS AS_EXIT(0) _LTEOF chmod +x "$CONFIG_LT" # configure is writing to config.log, but config.lt does its own redirection, # appending to config.log, which fails on DOS, as config.log is still kept # open by configure. Here we exec the FD to /dev/null, effectively closing # config.log, so it can be properly (re)opened and appended to by config.lt. if test "$no_create" != yes; then lt_cl_success=: test "$silent" = yes && lt_config_lt_args="$lt_config_lt_args --quiet" exec AS_MESSAGE_LOG_FD>/dev/null $SHELL "$CONFIG_LT" $lt_config_lt_args || lt_cl_success=false exec AS_MESSAGE_LOG_FD>>config.log $lt_cl_success || AS_EXIT(1) fi ])# LT_OUTPUT # _LT_CONFIG(TAG) # --------------- # If TAG is the built-in tag, create an initial libtool script with a # default configuration from the untagged config vars. Otherwise add code # to config.status for appending the configuration named by TAG from the # matching tagged config vars. m4_defun([_LT_CONFIG], [m4_require([_LT_FILEUTILS_DEFAULTS])dnl _LT_CONFIG_SAVE_COMMANDS([ m4_define([_LT_TAG], m4_if([$1], [], [C], [$1]))dnl m4_if(_LT_TAG, [C], [ # See if we are running on zsh, and set the options which allow our # commands through without removal of \ escapes. if test -n "${ZSH_VERSION+set}" ; then setopt NO_GLOB_SUBST fi cfgfile="${ofile}T" trap "$RM \"$cfgfile\"; exit 1" 1 2 15 $RM "$cfgfile" cat <<_LT_EOF >> "$cfgfile" #! $SHELL # `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services. # Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION # Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`: # NOTE: Changes made to this file will be lost: look at ltmain.sh. # _LT_COPYING _LT_LIBTOOL_TAGS # ### BEGIN LIBTOOL CONFIG _LT_LIBTOOL_CONFIG_VARS _LT_LIBTOOL_TAG_VARS # ### END LIBTOOL CONFIG _LT_EOF case $host_os in aix3*) cat <<\_LT_EOF >> "$cfgfile" # AIX sometimes has problems with the GCC collect2 program. For some # reason, if we set the COLLECT_NAMES environment variable, the problems # vanish in a puff of smoke. if test "X${COLLECT_NAMES+set}" != Xset; then COLLECT_NAMES= export COLLECT_NAMES fi _LT_EOF ;; esac _LT_PROG_LTMAIN # We use sed instead of cat because bash on DJGPP gets confused if # if finds mixed CR/LF and LF-only lines. Since sed operates in # text mode, it properly converts lines to CR/LF. This bash problem # is reportedly fixed, but why not run on old versions too? sed '/^# Generated shell functions inserted here/q' "$ltmain" >> "$cfgfile" \ || (rm -f "$cfgfile"; exit 1) _LT_PROG_XSI_SHELLFNS sed -n '/^# Generated shell functions inserted here/,$p' "$ltmain" >> "$cfgfile" \ || (rm -f "$cfgfile"; exit 1) mv -f "$cfgfile" "$ofile" || (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile") chmod +x "$ofile" ], [cat <<_LT_EOF >> "$ofile" dnl Unfortunately we have to use $1 here, since _LT_TAG is not expanded dnl in a comment (ie after a #). # ### BEGIN LIBTOOL TAG CONFIG: $1 _LT_LIBTOOL_TAG_VARS(_LT_TAG) # ### END LIBTOOL TAG CONFIG: $1 _LT_EOF ])dnl /m4_if ], [m4_if([$1], [], [ PACKAGE='$PACKAGE' VERSION='$VERSION' TIMESTAMP='$TIMESTAMP' RM='$RM' ofile='$ofile'], []) ])dnl /_LT_CONFIG_SAVE_COMMANDS ])# _LT_CONFIG # LT_SUPPORTED_TAG(TAG) # --------------------- # Trace this macro to discover what tags are supported by the libtool # --tag option, using: # autoconf --trace 'LT_SUPPORTED_TAG:$1' AC_DEFUN([LT_SUPPORTED_TAG], []) # C support is built-in for now m4_define([_LT_LANG_C_enabled], []) m4_define([_LT_TAGS], []) # LT_LANG(LANG) # ------------- # Enable libtool support for the given language if not already enabled. AC_DEFUN([LT_LANG], [AC_BEFORE([$0], [LT_OUTPUT])dnl m4_case([$1], [C], [_LT_LANG(C)], [C++], [_LT_LANG(CXX)], [Java], [_LT_LANG(GCJ)], [Fortran 77], [_LT_LANG(F77)], [Fortran], [_LT_LANG(FC)], [Windows Resource], [_LT_LANG(RC)], [m4_ifdef([_LT_LANG_]$1[_CONFIG], [_LT_LANG($1)], [m4_fatal([$0: unsupported language: "$1"])])])dnl ])# LT_LANG # _LT_LANG(LANGNAME) # ------------------ m4_defun([_LT_LANG], [m4_ifdef([_LT_LANG_]$1[_enabled], [], [LT_SUPPORTED_TAG([$1])dnl m4_append([_LT_TAGS], [$1 ])dnl m4_define([_LT_LANG_]$1[_enabled], [])dnl _LT_LANG_$1_CONFIG($1)])dnl ])# _LT_LANG # _LT_LANG_DEFAULT_CONFIG # ----------------------- m4_defun([_LT_LANG_DEFAULT_CONFIG], [AC_PROVIDE_IFELSE([AC_PROG_CXX], [LT_LANG(CXX)], [m4_define([AC_PROG_CXX], defn([AC_PROG_CXX])[LT_LANG(CXX)])]) AC_PROVIDE_IFELSE([AC_PROG_F77], [LT_LANG(F77)], [m4_define([AC_PROG_F77], defn([AC_PROG_F77])[LT_LANG(F77)])]) AC_PROVIDE_IFELSE([AC_PROG_FC], [LT_LANG(FC)], [m4_define([AC_PROG_FC], defn([AC_PROG_FC])[LT_LANG(FC)])]) dnl The call to [A][M_PROG_GCJ] is quoted like that to stop aclocal dnl pulling things in needlessly. AC_PROVIDE_IFELSE([AC_PROG_GCJ], [LT_LANG(GCJ)], [AC_PROVIDE_IFELSE([A][M_PROG_GCJ], [LT_LANG(GCJ)], [AC_PROVIDE_IFELSE([LT_PROG_GCJ], [LT_LANG(GCJ)], [m4_ifdef([AC_PROG_GCJ], [m4_define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[LT_LANG(GCJ)])]) m4_ifdef([A][M_PROG_GCJ], [m4_define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[LT_LANG(GCJ)])]) m4_ifdef([LT_PROG_GCJ], [m4_define([LT_PROG_GCJ], defn([LT_PROG_GCJ])[LT_LANG(GCJ)])])])])]) AC_PROVIDE_IFELSE([LT_PROG_RC], [LT_LANG(RC)], [m4_define([LT_PROG_RC], defn([LT_PROG_RC])[LT_LANG(RC)])]) ])# _LT_LANG_DEFAULT_CONFIG # Obsolete macros: AU_DEFUN([AC_LIBTOOL_CXX], [LT_LANG(C++)]) AU_DEFUN([AC_LIBTOOL_F77], [LT_LANG(Fortran 77)]) AU_DEFUN([AC_LIBTOOL_FC], [LT_LANG(Fortran)]) AU_DEFUN([AC_LIBTOOL_GCJ], [LT_LANG(Java)]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AC_LIBTOOL_CXX], []) dnl AC_DEFUN([AC_LIBTOOL_F77], []) dnl AC_DEFUN([AC_LIBTOOL_FC], []) dnl AC_DEFUN([AC_LIBTOOL_GCJ], []) # _LT_TAG_COMPILER # ---------------- m4_defun([_LT_TAG_COMPILER], [AC_REQUIRE([AC_PROG_CC])dnl _LT_DECL([LTCC], [CC], [1], [A C compiler])dnl _LT_DECL([LTCFLAGS], [CFLAGS], [1], [LTCC compiler flags])dnl _LT_TAGDECL([CC], [compiler], [1], [A language specific compiler])dnl _LT_TAGDECL([with_gcc], [GCC], [0], [Is the compiler the GNU compiler?])dnl # If no C compiler was specified, use CC. LTCC=${LTCC-"$CC"} # If no C compiler flags were specified, use CFLAGS. LTCFLAGS=${LTCFLAGS-"$CFLAGS"} # Allow CC to be a program name with arguments. compiler=$CC ])# _LT_TAG_COMPILER # _LT_COMPILER_BOILERPLATE # ------------------------ # Check for compiler boilerplate output or warnings with # the simple compiler test code. m4_defun([_LT_COMPILER_BOILERPLATE], [m4_require([_LT_DECL_SED])dnl ac_outfile=conftest.$ac_objext echo "$lt_simple_compile_test_code" >conftest.$ac_ext eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err _lt_compiler_boilerplate=`cat conftest.err` $RM conftest* ])# _LT_COMPILER_BOILERPLATE # _LT_LINKER_BOILERPLATE # ---------------------- # Check for linker boilerplate output or warnings with # the simple link test code. m4_defun([_LT_LINKER_BOILERPLATE], [m4_require([_LT_DECL_SED])dnl ac_outfile=conftest.$ac_objext echo "$lt_simple_link_test_code" >conftest.$ac_ext eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err _lt_linker_boilerplate=`cat conftest.err` $RM -r conftest* ])# _LT_LINKER_BOILERPLATE # _LT_REQUIRED_DARWIN_CHECKS # ------------------------- m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[ case $host_os in rhapsody* | darwin*) AC_CHECK_TOOL([DSYMUTIL], [dsymutil], [:]) AC_CHECK_TOOL([NMEDIT], [nmedit], [:]) AC_CHECK_TOOL([LIPO], [lipo], [:]) AC_CHECK_TOOL([OTOOL], [otool], [:]) AC_CHECK_TOOL([OTOOL64], [otool64], [:]) _LT_DECL([], [DSYMUTIL], [1], [Tool to manipulate archived DWARF debug symbol files on Mac OS X]) _LT_DECL([], [NMEDIT], [1], [Tool to change global to local symbols on Mac OS X]) _LT_DECL([], [LIPO], [1], [Tool to manipulate fat objects and archives on Mac OS X]) _LT_DECL([], [OTOOL], [1], [ldd/readelf like tool for Mach-O binaries on Mac OS X]) _LT_DECL([], [OTOOL64], [1], [ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4]) AC_CACHE_CHECK([for -single_module linker flag],[lt_cv_apple_cc_single_mod], [lt_cv_apple_cc_single_mod=no if test -z "${LT_MULTI_MODULE}"; then # By default we will add the -single_module flag. You can override # by either setting the environment variable LT_MULTI_MODULE # non-empty at configure time, or by adding -multi_module to the # link flags. rm -rf libconftest.dylib* echo "int foo(void){return 1;}" > conftest.c echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \ -dynamiclib -Wl,-single_module conftest.c" >&AS_MESSAGE_LOG_FD $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \ -dynamiclib -Wl,-single_module conftest.c 2>conftest.err _lt_result=$? if test -f libconftest.dylib && test ! -s conftest.err && test $_lt_result = 0; then lt_cv_apple_cc_single_mod=yes else cat conftest.err >&AS_MESSAGE_LOG_FD fi rm -rf libconftest.dylib* rm -f conftest.* fi]) AC_CACHE_CHECK([for -exported_symbols_list linker flag], [lt_cv_ld_exported_symbols_list], [lt_cv_ld_exported_symbols_list=no save_LDFLAGS=$LDFLAGS echo "_main" > conftest.sym LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym" AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])], [lt_cv_ld_exported_symbols_list=yes], [lt_cv_ld_exported_symbols_list=no]) LDFLAGS="$save_LDFLAGS" ]) case $host_os in rhapsody* | darwin1.[[012]]) _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;; darwin1.*) _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;; darwin*) # darwin 5.x on # if running on 10.5 or later, the deployment target defaults # to the OS version, if on x86, and 10.4, the deployment # target defaults to 10.4. Don't you love it? case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in 10.0,*86*-darwin8*|10.0,*-darwin[[91]]*) _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;; 10.[[012]]*) _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;; 10.*) _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;; esac ;; esac if test "$lt_cv_apple_cc_single_mod" = "yes"; then _lt_dar_single_mod='$single_module' fi if test "$lt_cv_ld_exported_symbols_list" = "yes"; then _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym' else _lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}' fi if test "$DSYMUTIL" != ":"; then _lt_dsymutil='~$DSYMUTIL $lib || :' else _lt_dsymutil= fi ;; esac ]) # _LT_DARWIN_LINKER_FEATURES # -------------------------- # Checks for linker and compiler features on darwin m4_defun([_LT_DARWIN_LINKER_FEATURES], [ m4_require([_LT_REQUIRED_DARWIN_CHECKS]) _LT_TAGVAR(archive_cmds_need_lc, $1)=no _LT_TAGVAR(hardcode_direct, $1)=no _LT_TAGVAR(hardcode_automatic, $1)=yes _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported _LT_TAGVAR(whole_archive_flag_spec, $1)='' _LT_TAGVAR(link_all_deplibs, $1)=yes _LT_TAGVAR(allow_undefined_flag, $1)="$_lt_dar_allow_undefined" case $cc_basename in ifort*) _lt_dar_can_shared=yes ;; *) _lt_dar_can_shared=$GCC ;; esac if test "$_lt_dar_can_shared" = "yes"; then output_verbose_link_cmd=echo _LT_TAGVAR(archive_cmds, $1)="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}" _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}" _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}" _LT_TAGVAR(module_expsym_cmds, $1)="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}" m4_if([$1], [CXX], [ if test "$lt_cv_apple_cc_single_mod" != "yes"; then _LT_TAGVAR(archive_cmds, $1)="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dsymutil}" _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dar_export_syms}${_lt_dsymutil}" fi ],[]) else _LT_TAGVAR(ld_shlibs, $1)=no fi ]) # _LT_SYS_MODULE_PATH_AIX # ----------------------- # Links a minimal program and checks the executable # for the system default hardcoded library path. In most cases, # this is /usr/lib:/lib, but when the MPI compilers are used # the location of the communication and MPI libs are included too. # If we don't find anything, use the default library path according # to the aix ld manual. m4_defun([_LT_SYS_MODULE_PATH_AIX], [m4_require([_LT_DECL_SED])dnl AC_LINK_IFELSE(AC_LANG_PROGRAM,[ lt_aix_libpath_sed=' /Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/ p } }' aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` # Check for a 64-bit object if we didn't find anything. if test -z "$aix_libpath"; then aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` fi],[]) if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi ])# _LT_SYS_MODULE_PATH_AIX # _LT_SHELL_INIT(ARG) # ------------------- m4_define([_LT_SHELL_INIT], [ifdef([AC_DIVERSION_NOTICE], [AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)], [AC_DIVERT_PUSH(NOTICE)]) $1 AC_DIVERT_POP ])# _LT_SHELL_INIT # _LT_PROG_ECHO_BACKSLASH # ----------------------- # Add some code to the start of the generated configure script which # will find an echo command which doesn't interpret backslashes. m4_defun([_LT_PROG_ECHO_BACKSLASH], [_LT_SHELL_INIT([ # Check that we are running under the correct shell. SHELL=${CONFIG_SHELL-/bin/sh} case X$lt_ECHO in X*--fallback-echo) # Remove one level of quotation (which was required for Make). ECHO=`echo "$lt_ECHO" | sed 's,\\\\\[$]\\[$]0,'[$]0','` ;; esac ECHO=${lt_ECHO-echo} if test "X[$]1" = X--no-reexec; then # Discard the --no-reexec flag, and continue. shift elif test "X[$]1" = X--fallback-echo; then # Avoid inline document here, it may be left over : elif test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' ; then # Yippee, $ECHO works! : else # Restart under the correct shell. exec $SHELL "[$]0" --no-reexec ${1+"[$]@"} fi if test "X[$]1" = X--fallback-echo; then # used as fallback echo shift cat <<_LT_EOF [$]* _LT_EOF exit 0 fi # The HP-UX ksh and POSIX shell print the target directory to stdout # if CDPATH is set. (unset CDPATH) >/dev/null 2>&1 && unset CDPATH if test -z "$lt_ECHO"; then if test "X${echo_test_string+set}" != Xset; then # find a string as large as possible, as long as the shell can cope with it for cmd in 'sed 50q "[$]0"' 'sed 20q "[$]0"' 'sed 10q "[$]0"' 'sed 2q "[$]0"' 'echo test'; do # expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ... if { echo_test_string=`eval $cmd`; } 2>/dev/null && { test "X$echo_test_string" = "X$echo_test_string"; } 2>/dev/null then break fi done fi if test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' && echo_testing_string=`{ $ECHO "$echo_test_string"; } 2>/dev/null` && test "X$echo_testing_string" = "X$echo_test_string"; then : else # The Solaris, AIX, and Digital Unix default echo programs unquote # backslashes. This makes it impossible to quote backslashes using # echo "$something" | sed 's/\\/\\\\/g' # # So, first we look for a working echo in the user's PATH. lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR for dir in $PATH /usr/ucb; do IFS="$lt_save_ifs" if (test -f $dir/echo || test -f $dir/echo$ac_exeext) && test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' && echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` && test "X$echo_testing_string" = "X$echo_test_string"; then ECHO="$dir/echo" break fi done IFS="$lt_save_ifs" if test "X$ECHO" = Xecho; then # We didn't find a better echo, so look for alternatives. if test "X`{ print -r '\t'; } 2>/dev/null`" = 'X\t' && echo_testing_string=`{ print -r "$echo_test_string"; } 2>/dev/null` && test "X$echo_testing_string" = "X$echo_test_string"; then # This shell has a builtin print -r that does the trick. ECHO='print -r' elif { test -f /bin/ksh || test -f /bin/ksh$ac_exeext; } && test "X$CONFIG_SHELL" != X/bin/ksh; then # If we have ksh, try running configure again with it. ORIGINAL_CONFIG_SHELL=${CONFIG_SHELL-/bin/sh} export ORIGINAL_CONFIG_SHELL CONFIG_SHELL=/bin/ksh export CONFIG_SHELL exec $CONFIG_SHELL "[$]0" --no-reexec ${1+"[$]@"} else # Try using printf. ECHO='printf %s\n' if test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' && echo_testing_string=`{ $ECHO "$echo_test_string"; } 2>/dev/null` && test "X$echo_testing_string" = "X$echo_test_string"; then # Cool, printf works : elif echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` && test "X$echo_testing_string" = 'X\t' && echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` && test "X$echo_testing_string" = "X$echo_test_string"; then CONFIG_SHELL=$ORIGINAL_CONFIG_SHELL export CONFIG_SHELL SHELL="$CONFIG_SHELL" export SHELL ECHO="$CONFIG_SHELL [$]0 --fallback-echo" elif echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` && test "X$echo_testing_string" = 'X\t' && echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` && test "X$echo_testing_string" = "X$echo_test_string"; then ECHO="$CONFIG_SHELL [$]0 --fallback-echo" else # maybe with a smaller string... prev=: for cmd in 'echo test' 'sed 2q "[$]0"' 'sed 10q "[$]0"' 'sed 20q "[$]0"' 'sed 50q "[$]0"'; do if { test "X$echo_test_string" = "X`eval $cmd`"; } 2>/dev/null then break fi prev="$cmd" done if test "$prev" != 'sed 50q "[$]0"'; then echo_test_string=`eval $prev` export echo_test_string exec ${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}} "[$]0" ${1+"[$]@"} else # Oops. We lost completely, so just stick with echo. ECHO=echo fi fi fi fi fi fi # Copy echo and quote the copy suitably for passing to libtool from # the Makefile, instead of quoting the original, which is used later. lt_ECHO=$ECHO if test "X$lt_ECHO" = "X$CONFIG_SHELL [$]0 --fallback-echo"; then lt_ECHO="$CONFIG_SHELL \\\$\[$]0 --fallback-echo" fi AC_SUBST(lt_ECHO) ]) _LT_DECL([], [SHELL], [1], [Shell to use when invoking shell scripts]) _LT_DECL([], [ECHO], [1], [An echo program that does not interpret backslashes]) ])# _LT_PROG_ECHO_BACKSLASH # _LT_ENABLE_LOCK # --------------- m4_defun([_LT_ENABLE_LOCK], [AC_ARG_ENABLE([libtool-lock], [AS_HELP_STRING([--disable-libtool-lock], [avoid locking (might break parallel builds)])]) test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes # Some flags need to be propagated to the compiler or linker for good # libtool support. case $host in ia64-*-hpux*) # Find out which ABI we are using. echo 'int i;' > conftest.$ac_ext if AC_TRY_EVAL(ac_compile); then case `/usr/bin/file conftest.$ac_objext` in *ELF-32*) HPUX_IA64_MODE="32" ;; *ELF-64*) HPUX_IA64_MODE="64" ;; esac fi rm -rf conftest* ;; *-*-irix6*) # Find out which ABI we are using. echo '[#]line __oline__ "configure"' > conftest.$ac_ext if AC_TRY_EVAL(ac_compile); then if test "$lt_cv_prog_gnu_ld" = yes; then case `/usr/bin/file conftest.$ac_objext` in *32-bit*) LD="${LD-ld} -melf32bsmip" ;; *N32*) LD="${LD-ld} -melf32bmipn32" ;; *64-bit*) LD="${LD-ld} -melf64bmip" ;; esac else case `/usr/bin/file conftest.$ac_objext` in *32-bit*) LD="${LD-ld} -32" ;; *N32*) LD="${LD-ld} -n32" ;; *64-bit*) LD="${LD-ld} -64" ;; esac fi fi rm -rf conftest* ;; x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \ s390*-*linux*|s390*-*tpf*|sparc*-*linux*) # Find out which ABI we are using. echo 'int i;' > conftest.$ac_ext if AC_TRY_EVAL(ac_compile); then case `/usr/bin/file conftest.o` in *32-bit*) case $host in x86_64-*kfreebsd*-gnu) LD="${LD-ld} -m elf_i386_fbsd" ;; x86_64-*linux*) LD="${LD-ld} -m elf_i386" ;; ppc64-*linux*|powerpc64-*linux*) LD="${LD-ld} -m elf32ppclinux" ;; s390x-*linux*) LD="${LD-ld} -m elf_s390" ;; sparc64-*linux*) LD="${LD-ld} -m elf32_sparc" ;; esac ;; *64-bit*) case $host in x86_64-*kfreebsd*-gnu) LD="${LD-ld} -m elf_x86_64_fbsd" ;; x86_64-*linux*) LD="${LD-ld} -m elf_x86_64" ;; ppc*-*linux*|powerpc*-*linux*) LD="${LD-ld} -m elf64ppc" ;; s390*-*linux*|s390*-*tpf*) LD="${LD-ld} -m elf64_s390" ;; sparc*-*linux*) LD="${LD-ld} -m elf64_sparc" ;; esac ;; esac fi rm -rf conftest* ;; *-*-sco3.2v5*) # On SCO OpenServer 5, we need -belf to get full-featured binaries. SAVE_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS -belf" AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf, [AC_LANG_PUSH(C) AC_LINK_IFELSE([AC_LANG_PROGRAM([[]],[[]])],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no]) AC_LANG_POP]) if test x"$lt_cv_cc_needs_belf" != x"yes"; then # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf CFLAGS="$SAVE_CFLAGS" fi ;; sparc*-*solaris*) # Find out which ABI we are using. echo 'int i;' > conftest.$ac_ext if AC_TRY_EVAL(ac_compile); then case `/usr/bin/file conftest.o` in *64-bit*) case $lt_cv_prog_gnu_ld in yes*) LD="${LD-ld} -m elf64_sparc" ;; *) if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then LD="${LD-ld} -64" fi ;; esac ;; esac fi rm -rf conftest* ;; esac need_locks="$enable_libtool_lock" ])# _LT_ENABLE_LOCK # _LT_CMD_OLD_ARCHIVE # ------------------- m4_defun([_LT_CMD_OLD_ARCHIVE], [AC_CHECK_TOOL(AR, ar, false) test -z "$AR" && AR=ar test -z "$AR_FLAGS" && AR_FLAGS=cru _LT_DECL([], [AR], [1], [The archiver]) _LT_DECL([], [AR_FLAGS], [1]) AC_CHECK_TOOL(STRIP, strip, :) test -z "$STRIP" && STRIP=: _LT_DECL([], [STRIP], [1], [A symbol stripping program]) AC_CHECK_TOOL(RANLIB, ranlib, :) test -z "$RANLIB" && RANLIB=: _LT_DECL([], [RANLIB], [1], [Commands used to install an old-style archive]) # Determine commands to create old-style static archives. old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs' old_postinstall_cmds='chmod 644 $oldlib' old_postuninstall_cmds= if test -n "$RANLIB"; then case $host_os in openbsd*) old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$oldlib" ;; *) old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$oldlib" ;; esac old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib" fi _LT_DECL([], [old_postinstall_cmds], [2]) _LT_DECL([], [old_postuninstall_cmds], [2]) _LT_TAGDECL([], [old_archive_cmds], [2], [Commands used to build an old-style archive]) ])# _LT_CMD_OLD_ARCHIVE # _LT_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS, # [OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE]) # ---------------------------------------------------------------- # Check whether the given compiler option works AC_DEFUN([_LT_COMPILER_OPTION], [m4_require([_LT_FILEUTILS_DEFAULTS])dnl m4_require([_LT_DECL_SED])dnl AC_CACHE_CHECK([$1], [$2], [$2=no m4_if([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4]) echo "$lt_simple_compile_test_code" > conftest.$ac_ext lt_compiler_flag="$3" # Insert the option either (1) after the last *FLAGS variable, or # (2) before a word containing "conftest.", or (3) at the end. # Note that $ac_compile itself does not contain backslashes and begins # with a dollar sign (not a hyphen), so the echo should work correctly. # The option is referenced via a variable to avoid confusing sed. lt_compile=`echo "$ac_compile" | $SED \ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&AS_MESSAGE_LOG_FD) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&AS_MESSAGE_LOG_FD echo "$as_me:__oline__: \$? = $ac_status" >&AS_MESSAGE_LOG_FD if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' >conftest.exp $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then $2=yes fi fi $RM conftest* ]) if test x"[$]$2" = xyes; then m4_if([$5], , :, [$5]) else m4_if([$6], , :, [$6]) fi ])# _LT_COMPILER_OPTION # Old name: AU_ALIAS([AC_LIBTOOL_COMPILER_OPTION], [_LT_COMPILER_OPTION]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], []) # _LT_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS, # [ACTION-SUCCESS], [ACTION-FAILURE]) # ---------------------------------------------------- # Check whether the given linker option works AC_DEFUN([_LT_LINKER_OPTION], [m4_require([_LT_FILEUTILS_DEFAULTS])dnl m4_require([_LT_DECL_SED])dnl AC_CACHE_CHECK([$1], [$2], [$2=no save_LDFLAGS="$LDFLAGS" LDFLAGS="$LDFLAGS $3" echo "$lt_simple_link_test_code" > conftest.$ac_ext if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then # The linker can only warn and ignore the option if not recognized # So say no if there are warnings if test -s conftest.err; then # Append any errors to the config.log. cat conftest.err 1>&AS_MESSAGE_LOG_FD $ECHO "X$_lt_linker_boilerplate" | $Xsed -e '/^$/d' > conftest.exp $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 if diff conftest.exp conftest.er2 >/dev/null; then $2=yes fi else $2=yes fi fi $RM -r conftest* LDFLAGS="$save_LDFLAGS" ]) if test x"[$]$2" = xyes; then m4_if([$4], , :, [$4]) else m4_if([$5], , :, [$5]) fi ])# _LT_LINKER_OPTION # Old name: AU_ALIAS([AC_LIBTOOL_LINKER_OPTION], [_LT_LINKER_OPTION]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AC_LIBTOOL_LINKER_OPTION], []) # LT_CMD_MAX_LEN #--------------- AC_DEFUN([LT_CMD_MAX_LEN], [AC_REQUIRE([AC_CANONICAL_HOST])dnl # find the maximum length of command line arguments AC_MSG_CHECKING([the maximum length of command line arguments]) AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl i=0 teststring="ABCD" case $build_os in msdosdjgpp*) # On DJGPP, this test can blow up pretty badly due to problems in libc # (any single argument exceeding 2000 bytes causes a buffer overrun # during glob expansion). Even if it were fixed, the result of this # check would be larger than it should be. lt_cv_sys_max_cmd_len=12288; # 12K is about right ;; gnu*) # Under GNU Hurd, this test is not required because there is # no limit to the length of command line arguments. # Libtool will interpret -1 as no limit whatsoever lt_cv_sys_max_cmd_len=-1; ;; cygwin* | mingw* | cegcc*) # On Win9x/ME, this test blows up -- it succeeds, but takes # about 5 minutes as the teststring grows exponentially. # Worse, since 9x/ME are not pre-emptively multitasking, # you end up with a "frozen" computer, even though with patience # the test eventually succeeds (with a max line length of 256k). # Instead, let's just punt: use the minimum linelength reported by # all of the supported platforms: 8192 (on NT/2K/XP). lt_cv_sys_max_cmd_len=8192; ;; amigaos*) # On AmigaOS with pdksh, this test takes hours, literally. # So we just punt and use a minimum line length of 8192. lt_cv_sys_max_cmd_len=8192; ;; netbsd* | freebsd* | openbsd* | darwin* | dragonfly*) # This has been around since 386BSD, at least. Likely further. if test -x /sbin/sysctl; then lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax` elif test -x /usr/sbin/sysctl; then lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax` else lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs fi # And add a safety zone lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4` lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3` ;; interix*) # We know the value 262144 and hardcode it with a safety zone (like BSD) lt_cv_sys_max_cmd_len=196608 ;; osf*) # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not # nice to cause kernel panics so lets avoid the loop below. # First set a reasonable default. lt_cv_sys_max_cmd_len=16384 # if test -x /sbin/sysconfig; then case `/sbin/sysconfig -q proc exec_disable_arg_limit` in *1*) lt_cv_sys_max_cmd_len=-1 ;; esac fi ;; sco3.2v5*) lt_cv_sys_max_cmd_len=102400 ;; sysv5* | sco5v6* | sysv4.2uw2*) kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null` if test -n "$kargmax"; then lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[[ ]]//'` else lt_cv_sys_max_cmd_len=32768 fi ;; *) lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null` if test -n "$lt_cv_sys_max_cmd_len"; then lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4` lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3` else # Make teststring a little bigger before we do anything with it. # a 1K string should be a reasonable start. for i in 1 2 3 4 5 6 7 8 ; do teststring=$teststring$teststring done SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}} # If test is not a shell built-in, we'll probably end up computing a # maximum length that is only half of the actual maximum length, but # we can't tell. while { test "X"`$SHELL [$]0 --fallback-echo "X$teststring$teststring" 2>/dev/null` \ = "XX$teststring$teststring"; } >/dev/null 2>&1 && test $i != 17 # 1/2 MB should be enough do i=`expr $i + 1` teststring=$teststring$teststring done # Only check the string length outside the loop. lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1` teststring= # Add a significant safety factor because C++ compilers can tack on # massive amounts of additional arguments before passing them to the # linker. It appears as though 1/2 is a usable value. lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2` fi ;; esac ]) if test -n $lt_cv_sys_max_cmd_len ; then AC_MSG_RESULT($lt_cv_sys_max_cmd_len) else AC_MSG_RESULT(none) fi max_cmd_len=$lt_cv_sys_max_cmd_len _LT_DECL([], [max_cmd_len], [0], [What is the maximum length of a command?]) ])# LT_CMD_MAX_LEN # Old name: AU_ALIAS([AC_LIBTOOL_SYS_MAX_CMD_LEN], [LT_CMD_MAX_LEN]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN], []) # _LT_HEADER_DLFCN # ---------------- m4_defun([_LT_HEADER_DLFCN], [AC_CHECK_HEADERS([dlfcn.h], [], [], [AC_INCLUDES_DEFAULT])dnl ])# _LT_HEADER_DLFCN # _LT_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE, # ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING) # ---------------------------------------------------------------- m4_defun([_LT_TRY_DLOPEN_SELF], [m4_require([_LT_HEADER_DLFCN])dnl if test "$cross_compiling" = yes; then : [$4] else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF [#line __oline__ "configure" #include "confdefs.h" #if HAVE_DLFCN_H #include <dlfcn.h> #endif #include <stdio.h> #ifdef RTLD_GLOBAL # define LT_DLGLOBAL RTLD_GLOBAL #else # ifdef DL_GLOBAL # define LT_DLGLOBAL DL_GLOBAL # else # define LT_DLGLOBAL 0 # endif #endif /* We may have to define LT_DLLAZY_OR_NOW in the command line if we find out it does not work in some platform. */ #ifndef LT_DLLAZY_OR_NOW # ifdef RTLD_LAZY # define LT_DLLAZY_OR_NOW RTLD_LAZY # else # ifdef DL_LAZY # define LT_DLLAZY_OR_NOW DL_LAZY # else # ifdef RTLD_NOW # define LT_DLLAZY_OR_NOW RTLD_NOW # else # ifdef DL_NOW # define LT_DLLAZY_OR_NOW DL_NOW # else # define LT_DLLAZY_OR_NOW 0 # endif # endif # endif # endif #endif void fnord() { int i=42;} int main () { void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW); int status = $lt_dlunknown; if (self) { if (dlsym (self,"fnord")) status = $lt_dlno_uscore; else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; /* dlclose (self); */ } else puts (dlerror ()); return status; }] _LT_EOF if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then (./conftest; exit; ) >&AS_MESSAGE_LOG_FD 2>/dev/null lt_status=$? case x$lt_status in x$lt_dlno_uscore) $1 ;; x$lt_dlneed_uscore) $2 ;; x$lt_dlunknown|x*) $3 ;; esac else : # compilation failed $3 fi fi rm -fr conftest* ])# _LT_TRY_DLOPEN_SELF # LT_SYS_DLOPEN_SELF # ------------------ AC_DEFUN([LT_SYS_DLOPEN_SELF], [m4_require([_LT_HEADER_DLFCN])dnl if test "x$enable_dlopen" != xyes; then enable_dlopen=unknown enable_dlopen_self=unknown enable_dlopen_self_static=unknown else lt_cv_dlopen=no lt_cv_dlopen_libs= case $host_os in beos*) lt_cv_dlopen="load_add_on" lt_cv_dlopen_libs= lt_cv_dlopen_self=yes ;; mingw* | pw32* | cegcc*) lt_cv_dlopen="LoadLibrary" lt_cv_dlopen_libs= ;; cygwin*) lt_cv_dlopen="dlopen" lt_cv_dlopen_libs= ;; darwin*) # if libdl is installed we need to link against it AC_CHECK_LIB([dl], [dlopen], [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],[ lt_cv_dlopen="dyld" lt_cv_dlopen_libs= lt_cv_dlopen_self=yes ]) ;; *) AC_CHECK_FUNC([shl_load], [lt_cv_dlopen="shl_load"], [AC_CHECK_LIB([dld], [shl_load], [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"], [AC_CHECK_FUNC([dlopen], [lt_cv_dlopen="dlopen"], [AC_CHECK_LIB([dl], [dlopen], [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"], [AC_CHECK_LIB([svld], [dlopen], [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"], [AC_CHECK_LIB([dld], [dld_link], [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"]) ]) ]) ]) ]) ]) ;; esac if test "x$lt_cv_dlopen" != xno; then enable_dlopen=yes else enable_dlopen=no fi case $lt_cv_dlopen in dlopen) save_CPPFLAGS="$CPPFLAGS" test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H" save_LDFLAGS="$LDFLAGS" wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\" save_LIBS="$LIBS" LIBS="$lt_cv_dlopen_libs $LIBS" AC_CACHE_CHECK([whether a program can dlopen itself], lt_cv_dlopen_self, [dnl _LT_TRY_DLOPEN_SELF( lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes, lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross) ]) if test "x$lt_cv_dlopen_self" = xyes; then wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\" AC_CACHE_CHECK([whether a statically linked program can dlopen itself], lt_cv_dlopen_self_static, [dnl _LT_TRY_DLOPEN_SELF( lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=no, lt_cv_dlopen_self_static=cross) ]) fi CPPFLAGS="$save_CPPFLAGS" LDFLAGS="$save_LDFLAGS" LIBS="$save_LIBS" ;; esac case $lt_cv_dlopen_self in yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;; *) enable_dlopen_self=unknown ;; esac case $lt_cv_dlopen_self_static in yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;; *) enable_dlopen_self_static=unknown ;; esac fi _LT_DECL([dlopen_support], [enable_dlopen], [0], [Whether dlopen is supported]) _LT_DECL([dlopen_self], [enable_dlopen_self], [0], [Whether dlopen of programs is supported]) _LT_DECL([dlopen_self_static], [enable_dlopen_self_static], [0], [Whether dlopen of statically linked programs is supported]) ])# LT_SYS_DLOPEN_SELF # Old name: AU_ALIAS([AC_LIBTOOL_DLOPEN_SELF], [LT_SYS_DLOPEN_SELF]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], []) # _LT_COMPILER_C_O([TAGNAME]) # --------------------------- # Check to see if options -c and -o are simultaneously supported by compiler. # This macro does not hard code the compiler like AC_PROG_CC_C_O. m4_defun([_LT_COMPILER_C_O], [m4_require([_LT_DECL_SED])dnl m4_require([_LT_FILEUTILS_DEFAULTS])dnl m4_require([_LT_TAG_COMPILER])dnl AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext], [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)], [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no $RM -r conftest 2>/dev/null mkdir conftest cd conftest mkdir out echo "$lt_simple_compile_test_code" > conftest.$ac_ext lt_compiler_flag="-o out/conftest2.$ac_objext" # Insert the option either (1) after the last *FLAGS variable, or # (2) before a word containing "conftest.", or (3) at the end. # Note that $ac_compile itself does not contain backslashes and begins # with a dollar sign (not a hyphen), so the echo should work correctly. lt_compile=`echo "$ac_compile" | $SED \ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&AS_MESSAGE_LOG_FD) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&AS_MESSAGE_LOG_FD echo "$as_me:__oline__: \$? = $ac_status" >&AS_MESSAGE_LOG_FD if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' > out/conftest.exp $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2 if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes fi fi chmod u+w . 2>&AS_MESSAGE_LOG_FD $RM conftest* # SGI C++ compiler will create directory out/ii_files/ for # template instantiation test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files $RM out/* && rmdir out cd .. $RM -r conftest $RM conftest* ]) _LT_TAGDECL([compiler_c_o], [lt_cv_prog_compiler_c_o], [1], [Does compiler simultaneously support -c and -o options?]) ])# _LT_COMPILER_C_O # _LT_COMPILER_FILE_LOCKS([TAGNAME]) # ---------------------------------- # Check to see if we can do hard links to lock some files if needed m4_defun([_LT_COMPILER_FILE_LOCKS], [m4_require([_LT_ENABLE_LOCK])dnl m4_require([_LT_FILEUTILS_DEFAULTS])dnl _LT_COMPILER_C_O([$1]) hard_links="nottested" if test "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" = no && test "$need_locks" != no; then # do not overwrite the value of need_locks provided by the user AC_MSG_CHECKING([if we can lock with hard links]) hard_links=yes $RM conftest* ln conftest.a conftest.b 2>/dev/null && hard_links=no touch conftest.a ln conftest.a conftest.b 2>&5 || hard_links=no ln conftest.a conftest.b 2>/dev/null && hard_links=no AC_MSG_RESULT([$hard_links]) if test "$hard_links" = no; then AC_MSG_WARN([`$CC' does not support `-c -o', so `make -j' may be unsafe]) need_locks=warn fi else need_locks=no fi _LT_DECL([], [need_locks], [1], [Must we lock files when doing compilation?]) ])# _LT_COMPILER_FILE_LOCKS # _LT_CHECK_OBJDIR # ---------------- m4_defun([_LT_CHECK_OBJDIR], [AC_CACHE_CHECK([for objdir], [lt_cv_objdir], [rm -f .libs 2>/dev/null mkdir .libs 2>/dev/null if test -d .libs; then lt_cv_objdir=.libs else # MS-DOS does not allow filenames that begin with a dot. lt_cv_objdir=_libs fi rmdir .libs 2>/dev/null]) objdir=$lt_cv_objdir _LT_DECL([], [objdir], [0], [The name of the directory that contains temporary libtool files])dnl m4_pattern_allow([LT_OBJDIR])dnl AC_DEFINE_UNQUOTED(LT_OBJDIR, "$lt_cv_objdir/", [Define to the sub-directory in which libtool stores uninstalled libraries.]) ])# _LT_CHECK_OBJDIR # _LT_LINKER_HARDCODE_LIBPATH([TAGNAME]) # -------------------------------------- # Check hardcoding attributes. m4_defun([_LT_LINKER_HARDCODE_LIBPATH], [AC_MSG_CHECKING([how to hardcode library paths into programs]) _LT_TAGVAR(hardcode_action, $1)= if test -n "$_LT_TAGVAR(hardcode_libdir_flag_spec, $1)" || test -n "$_LT_TAGVAR(runpath_var, $1)" || test "X$_LT_TAGVAR(hardcode_automatic, $1)" = "Xyes" ; then # We can hardcode non-existent directories. if test "$_LT_TAGVAR(hardcode_direct, $1)" != no && # If the only mechanism to avoid hardcoding is shlibpath_var, we # have to relink, otherwise we might link with an installed library # when we should be linking with a yet-to-be-installed one ## test "$_LT_TAGVAR(hardcode_shlibpath_var, $1)" != no && test "$_LT_TAGVAR(hardcode_minus_L, $1)" != no; then # Linking always hardcodes the temporary library directory. _LT_TAGVAR(hardcode_action, $1)=relink else # We can link without hardcoding, and we can hardcode nonexisting dirs. _LT_TAGVAR(hardcode_action, $1)=immediate fi else # We cannot hardcode anything, or else we can only hardcode existing # directories. _LT_TAGVAR(hardcode_action, $1)=unsupported fi AC_MSG_RESULT([$_LT_TAGVAR(hardcode_action, $1)]) if test "$_LT_TAGVAR(hardcode_action, $1)" = relink || test "$_LT_TAGVAR(inherit_rpath, $1)" = yes; then # Fast installation is not supported enable_fast_install=no elif test "$shlibpath_overrides_runpath" = yes || test "$enable_shared" = no; then # Fast installation is not necessary enable_fast_install=needless fi _LT_TAGDECL([], [hardcode_action], [0], [How to hardcode a shared library path into an executable]) ])# _LT_LINKER_HARDCODE_LIBPATH # _LT_CMD_STRIPLIB # ---------------- m4_defun([_LT_CMD_STRIPLIB], [m4_require([_LT_DECL_EGREP]) striplib= old_striplib= AC_MSG_CHECKING([whether stripping libraries is possible]) if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then test -z "$old_striplib" && old_striplib="$STRIP --strip-debug" test -z "$striplib" && striplib="$STRIP --strip-unneeded" AC_MSG_RESULT([yes]) else # FIXME - insert some real tests, host_os isn't really good enough case $host_os in darwin*) if test -n "$STRIP" ; then striplib="$STRIP -x" old_striplib="$STRIP -S" AC_MSG_RESULT([yes]) else AC_MSG_RESULT([no]) fi ;; *) AC_MSG_RESULT([no]) ;; esac fi _LT_DECL([], [old_striplib], [1], [Commands to strip libraries]) _LT_DECL([], [striplib], [1]) ])# _LT_CMD_STRIPLIB # _LT_SYS_DYNAMIC_LINKER([TAG]) # ----------------------------- # PORTME Fill in your ld.so characteristics m4_defun([_LT_SYS_DYNAMIC_LINKER], [AC_REQUIRE([AC_CANONICAL_HOST])dnl m4_require([_LT_DECL_EGREP])dnl m4_require([_LT_FILEUTILS_DEFAULTS])dnl m4_require([_LT_DECL_OBJDUMP])dnl m4_require([_LT_DECL_SED])dnl AC_MSG_CHECKING([dynamic linker characteristics]) m4_if([$1], [], [ if test "$GCC" = yes; then case $host_os in darwin*) lt_awk_arg="/^libraries:/,/LR/" ;; *) lt_awk_arg="/^libraries:/" ;; esac lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e "s,=/,/,g"` if $ECHO "$lt_search_path_spec" | $GREP ';' >/dev/null ; then # if the path contains ";" then we assume it to be the separator # otherwise default to the standard path separator (i.e. ":") - it is # assumed that no part of a normal pathname contains ";" but that should # okay in the real world where ";" in dirpaths is itself problematic. lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED -e 's/;/ /g'` else lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` fi # Ok, now we have the path, separated by spaces, we can step through it # and add multilib dir if necessary. lt_tmp_lt_search_path_spec= lt_multi_os_dir=`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null` for lt_sys_path in $lt_search_path_spec; do if test -d "$lt_sys_path/$lt_multi_os_dir"; then lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path/$lt_multi_os_dir" else test -d "$lt_sys_path" && \ lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path" fi done lt_search_path_spec=`$ECHO $lt_tmp_lt_search_path_spec | awk ' BEGIN {RS=" "; FS="/|\n";} { lt_foo=""; lt_count=0; for (lt_i = NF; lt_i > 0; lt_i--) { if ($lt_i != "" && $lt_i != ".") { if ($lt_i == "..") { lt_count++; } else { if (lt_count == 0) { lt_foo="/" $lt_i lt_foo; } else { lt_count--; } } } } if (lt_foo != "") { lt_freq[[lt_foo]]++; } if (lt_freq[[lt_foo]] == 1) { print lt_foo; } }'` sys_lib_search_path_spec=`$ECHO $lt_search_path_spec` else sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" fi]) library_names_spec= libname_spec='lib$name' soname_spec= shrext_cmds=".so" postinstall_cmds= postuninstall_cmds= finish_cmds= finish_eval= shlibpath_var= shlibpath_overrides_runpath=unknown version_type=none dynamic_linker="$host_os ld.so" sys_lib_dlsearch_path_spec="/lib /usr/lib" need_lib_prefix=unknown hardcode_into_libs=no # when you set need_version to no, make sure it does not cause -set_version # flags to be left without arguments need_version=unknown case $host_os in aix3*) version_type=linux library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a' shlibpath_var=LIBPATH # AIX 3 has no versioning support, so we append a major version to the name. soname_spec='${libname}${release}${shared_ext}$major' ;; aix[[4-9]]*) version_type=linux need_lib_prefix=no need_version=no hardcode_into_libs=yes if test "$host_cpu" = ia64; then # AIX 5 supports IA64 library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}' shlibpath_var=LD_LIBRARY_PATH else # With GCC up to 2.95.x, collect2 would create an import file # for dependence libraries. The import file would start with # the line `#! .'. This would cause the generated library to # depend on `.', always an invalid library. This was fixed in # development snapshots of GCC prior to 3.0. case $host_os in aix4 | aix4.[[01]] | aix4.[[01]].*) if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)' echo ' yes ' echo '#endif'; } | ${CC} -E - | $GREP yes > /dev/null; then : else can_build_shared=no fi ;; esac # AIX (on Power*) has no versioning support, so currently we can not hardcode correct # soname into executable. Probably we can add versioning support to # collect2, so additional links can be useful in future. if test "$aix_use_runtimelinking" = yes; then # If using run time linking (on AIX 4.2 or later) use lib<name>.so # instead of lib<name>.a to let people know that these are not # typical AIX shared libraries. library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' else # We preserve .a as extension for shared libraries through AIX4.2 # and later when we are not doing run time linking. library_names_spec='${libname}${release}.a $libname.a' soname_spec='${libname}${release}${shared_ext}$major' fi shlibpath_var=LIBPATH fi ;; amigaos*) case $host_cpu in powerpc) # Since July 2007 AmigaOS4 officially supports .so libraries. # When compiling the executable, add -use-dynld -Lsobjs: to the compileline. library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' ;; m68k) library_names_spec='$libname.ixlibrary $libname.a' # Create ${libname}_ixlibrary.a entries in /sys/libs. finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$ECHO "X$lib" | $Xsed -e '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done' ;; esac ;; beos*) library_names_spec='${libname}${shared_ext}' dynamic_linker="$host_os ld.so" shlibpath_var=LIBRARY_PATH ;; bsdi[[45]]*) version_type=linux need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir' shlibpath_var=LD_LIBRARY_PATH sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib" sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib" # the default ld.so.conf also contains /usr/contrib/lib and # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow # libtool to hard-code these into programs ;; cygwin* | mingw* | pw32* | cegcc*) version_type=windows shrext_cmds=".dll" need_version=no need_lib_prefix=no case $GCC,$host_os in yes,cygwin* | yes,mingw* | yes,pw32* | yes,cegcc*) library_names_spec='$libname.dll.a' # DLL is installed to $(libdir)/../bin by postinstall_cmds postinstall_cmds='base_file=`basename \${file}`~ dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~ dldir=$destdir/`dirname \$dlpath`~ test -d \$dldir || mkdir -p \$dldir~ $install_prog $dir/$dlname \$dldir/$dlname~ chmod a+x \$dldir/$dlname~ if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then eval '\''$striplib \$dldir/$dlname'\'' || exit \$?; fi' postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~ dlpath=$dir/\$dldll~ $RM \$dlpath' shlibpath_overrides_runpath=yes case $host_os in cygwin*) # Cygwin DLLs use 'cyg' prefix rather than 'lib' soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}' sys_lib_search_path_spec="/usr/lib /lib/w32api /lib /usr/local/lib" ;; mingw* | cegcc*) # MinGW DLLs use traditional 'lib' prefix soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}' sys_lib_search_path_spec=`$CC -print-search-dirs | $GREP "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"` if $ECHO "$sys_lib_search_path_spec" | [$GREP ';[c-zC-Z]:/' >/dev/null]; then # It is most probably a Windows format PATH printed by # mingw gcc, but we are running on Cygwin. Gcc prints its search # path with ; separators, and with drive letters. We can handle the # drive letters (cygwin fileutils understands them), so leave them, # especially as we might pass files found there to a mingw objdump, # which wouldn't understand a cygwinified path. Ahh. sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'` else sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` fi ;; pw32*) # pw32 DLLs use 'pw' prefix rather than 'lib' library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}' ;; esac ;; *) library_names_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext} $libname.lib' ;; esac dynamic_linker='Win32 ld.exe' # FIXME: first we should search . and the directory the executable is in shlibpath_var=PATH ;; darwin* | rhapsody*) dynamic_linker="$host_os dyld" version_type=darwin need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${major}$shared_ext ${libname}$shared_ext' soname_spec='${libname}${release}${major}$shared_ext' shlibpath_overrides_runpath=yes shlibpath_var=DYLD_LIBRARY_PATH shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`' m4_if([$1], [],[ sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"]) sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib' ;; dgux*) version_type=linux need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext' soname_spec='${libname}${release}${shared_ext}$major' shlibpath_var=LD_LIBRARY_PATH ;; freebsd1*) dynamic_linker=no ;; freebsd* | dragonfly*) # DragonFly does not have aout. When/if they implement a new # versioning mechanism, adjust this. if test -x /usr/bin/objformat; then objformat=`/usr/bin/objformat` else case $host_os in freebsd[[123]]*) objformat=aout ;; *) objformat=elf ;; esac fi version_type=freebsd-$objformat case $version_type in freebsd-elf*) library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}' need_version=no need_lib_prefix=no ;; freebsd-*) library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix' need_version=yes ;; esac shlibpath_var=LD_LIBRARY_PATH case $host_os in freebsd2*) shlibpath_overrides_runpath=yes ;; freebsd3.[[01]]* | freebsdelf3.[[01]]*) shlibpath_overrides_runpath=yes hardcode_into_libs=yes ;; freebsd3.[[2-9]]* | freebsdelf3.[[2-9]]* | \ freebsd4.[[0-5]] | freebsdelf4.[[0-5]] | freebsd4.1.1 | freebsdelf4.1.1) shlibpath_overrides_runpath=no hardcode_into_libs=yes ;; *) # from 4.6 on, and DragonFly shlibpath_overrides_runpath=yes hardcode_into_libs=yes ;; esac ;; gnu*) version_type=linux need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' shlibpath_var=LD_LIBRARY_PATH hardcode_into_libs=yes ;; hpux9* | hpux10* | hpux11*) # Give a soname corresponding to the major version so that dld.sl refuses to # link against other versions. version_type=sunos need_lib_prefix=no need_version=no case $host_cpu in ia64*) shrext_cmds='.so' hardcode_into_libs=yes dynamic_linker="$host_os dld.so" shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' if test "X$HPUX_IA64_MODE" = X32; then sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib" else sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64" fi sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec ;; hppa*64*) shrext_cmds='.sl' hardcode_into_libs=yes dynamic_linker="$host_os dld.sl" shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64" sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec ;; *) shrext_cmds='.sl' dynamic_linker="$host_os dld.sl" shlibpath_var=SHLIB_PATH shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' ;; esac # HP-UX runs *really* slowly unless shared libraries are mode 555. postinstall_cmds='chmod 555 $lib' ;; interix[[3-9]]*) version_type=linux need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=no hardcode_into_libs=yes ;; irix5* | irix6* | nonstopux*) case $host_os in nonstopux*) version_type=nonstopux ;; *) if test "$lt_cv_prog_gnu_ld" = yes; then version_type=linux else version_type=irix fi ;; esac need_lib_prefix=no need_version=no soname_spec='${libname}${release}${shared_ext}$major' library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}' case $host_os in irix5* | nonstopux*) libsuff= shlibsuff= ;; *) case $LD in # libtool.m4 will add one of these switches to LD *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ") libsuff= shlibsuff= libmagic=32-bit;; *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ") libsuff=32 shlibsuff=N32 libmagic=N32;; *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ") libsuff=64 shlibsuff=64 libmagic=64-bit;; *) libsuff= shlibsuff= libmagic=never-match;; esac ;; esac shlibpath_var=LD_LIBRARY${shlibsuff}_PATH shlibpath_overrides_runpath=no sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}" sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}" hardcode_into_libs=yes ;; # No shared lib support for Linux oldld, aout, or coff. linux*oldld* | linux*aout* | linux*coff*) dynamic_linker=no ;; # This must be Linux ELF. linux* | k*bsd*-gnu) version_type=linux need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=no # Some binutils ld are patched to set DT_RUNPATH save_LDFLAGS=$LDFLAGS save_libdir=$libdir eval "libdir=/foo; wl=\"$_LT_TAGVAR(lt_prog_compiler_wl, $1)\"; \ LDFLAGS=\"\$LDFLAGS $_LT_TAGVAR(hardcode_libdir_flag_spec, $1)\"" AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])], [AS_IF([ ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null], [shlibpath_overrides_runpath=yes])]) LDFLAGS=$save_LDFLAGS libdir=$save_libdir # This implies no fast_install, which is unacceptable. # Some rework will be needed to allow for fast_install # before this can be enabled. hardcode_into_libs=yes # 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;/^$/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 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes ;; *nto* | *qnx*) version_type=qnx need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=no hardcode_into_libs=yes dynamic_linker='ldqnx.so' ;; openbsd*) version_type=sunos sys_lib_dlsearch_path_spec="/usr/lib" need_lib_prefix=no # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs. case $host_os in openbsd3.3 | openbsd3.3.*) need_version=yes ;; *) need_version=no ;; esac library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' shlibpath_var=LD_LIBRARY_PATH if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then case $host_os in openbsd2.[[89]] | openbsd2.[[89]].*) shlibpath_overrides_runpath=no ;; *) shlibpath_overrides_runpath=yes ;; esac else shlibpath_overrides_runpath=yes fi ;; os2*) libname_spec='$name' shrext_cmds=".dll" need_lib_prefix=no library_names_spec='$libname${shared_ext} $libname.a' dynamic_linker='OS/2 ld.exe' shlibpath_var=LIBPATH ;; osf3* | osf4* | osf5*) version_type=osf need_lib_prefix=no need_version=no soname_spec='${libname}${release}${shared_ext}$major' library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' shlibpath_var=LD_LIBRARY_PATH sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib" sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec" ;; rdos*) dynamic_linker=no ;; solaris*) version_type=linux need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes hardcode_into_libs=yes # ldd complains unless libraries are executable postinstall_cmds='chmod +x $lib' ;; sunos4*) version_type=sunos library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes if test "$with_gnu_ld" = yes; then need_lib_prefix=no fi need_version=yes ;; sysv4 | sysv4.3*) version_type=linux library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' shlibpath_var=LD_LIBRARY_PATH case $host_vendor in sni) shlibpath_overrides_runpath=no need_lib_prefix=no runpath_var=LD_RUN_PATH ;; siemens) need_lib_prefix=no ;; motorola) need_lib_prefix=no need_version=no shlibpath_overrides_runpath=no sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib' ;; esac ;; sysv4*MP*) if test -d /usr/nec ;then version_type=linux library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}' soname_spec='$libname${shared_ext}.$major' shlibpath_var=LD_LIBRARY_PATH fi ;; sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) version_type=freebsd-elf need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes hardcode_into_libs=yes if test "$with_gnu_ld" = yes; then sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib' else sys_lib_search_path_spec='/usr/ccs/lib /usr/lib' case $host_os in sco3.2v5*) sys_lib_search_path_spec="$sys_lib_search_path_spec /lib" ;; esac fi sys_lib_dlsearch_path_spec='/usr/lib' ;; tpf*) # TPF is a cross-target only. Preferred cross-host = GNU/Linux. version_type=linux need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=no hardcode_into_libs=yes ;; uts4*) version_type=linux library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' shlibpath_var=LD_LIBRARY_PATH ;; *) dynamic_linker=no ;; esac AC_MSG_RESULT([$dynamic_linker]) test "$dynamic_linker" = no && can_build_shared=no variables_saved_for_relink="PATH $shlibpath_var $runpath_var" if test "$GCC" = yes; then variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" fi if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec" fi if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec" fi _LT_DECL([], [variables_saved_for_relink], [1], [Variables whose values should be saved in libtool wrapper scripts and restored at link time]) _LT_DECL([], [need_lib_prefix], [0], [Do we need the "lib" prefix for modules?]) _LT_DECL([], [need_version], [0], [Do we need a version for libraries?]) _LT_DECL([], [version_type], [0], [Library versioning type]) _LT_DECL([], [runpath_var], [0], [Shared library runtime path variable]) _LT_DECL([], [shlibpath_var], [0],[Shared library path variable]) _LT_DECL([], [shlibpath_overrides_runpath], [0], [Is shlibpath searched before the hard-coded library search path?]) _LT_DECL([], [libname_spec], [1], [Format of library name prefix]) _LT_DECL([], [library_names_spec], [1], [[List of archive names. First name is the real one, the rest are links. The last name is the one that the linker finds with -lNAME]]) _LT_DECL([], [soname_spec], [1], [[The coded name of the library, if different from the real name]]) _LT_DECL([], [postinstall_cmds], [2], [Command to use after installation of a shared archive]) _LT_DECL([], [postuninstall_cmds], [2], [Command to use after uninstallation of a shared archive]) _LT_DECL([], [finish_cmds], [2], [Commands used to finish a libtool library installation in a directory]) _LT_DECL([], [finish_eval], [1], [[As "finish_cmds", except a single script fragment to be evaled but not shown]]) _LT_DECL([], [hardcode_into_libs], [0], [Whether we should hardcode library paths into libraries]) _LT_DECL([], [sys_lib_search_path_spec], [2], [Compile-time system search path for libraries]) _LT_DECL([], [sys_lib_dlsearch_path_spec], [2], [Run-time system search path for libraries]) ])# _LT_SYS_DYNAMIC_LINKER # _LT_PATH_TOOL_PREFIX(TOOL) # -------------------------- # find a file program which can recognize shared library AC_DEFUN([_LT_PATH_TOOL_PREFIX], [m4_require([_LT_DECL_EGREP])dnl AC_MSG_CHECKING([for $1]) AC_CACHE_VAL(lt_cv_path_MAGIC_CMD, [case $MAGIC_CMD in [[\\/*] | ?:[\\/]*]) lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path. ;; *) lt_save_MAGIC_CMD="$MAGIC_CMD" lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR dnl $ac_dummy forces splitting on constant user-supplied paths. dnl POSIX.2 word splitting is done only on the output of word expansions, dnl not every word. This closes a longstanding sh security hole. ac_dummy="m4_if([$2], , $PATH, [$2])" for ac_dir in $ac_dummy; do IFS="$lt_save_ifs" test -z "$ac_dir" && ac_dir=. if test -f $ac_dir/$1; then lt_cv_path_MAGIC_CMD="$ac_dir/$1" if test -n "$file_magic_test_file"; then case $deplibs_check_method in "file_magic "*) file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"` MAGIC_CMD="$lt_cv_path_MAGIC_CMD" if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | $EGREP "$file_magic_regex" > /dev/null; then : else cat <<_LT_EOF 1>&2 *** Warning: the command libtool uses to detect shared libraries, *** $file_magic_cmd, produces output that libtool cannot recognize. *** The result is that libtool may fail to recognize shared libraries *** as such. This will affect the creation of libtool libraries that *** depend on shared libraries, but programs linked with such libtool *** libraries will work regardless of this problem. Nevertheless, you *** may want to report the problem to your system manager and/or to *** bug-libtool@gnu.org _LT_EOF fi ;; esac fi break fi done IFS="$lt_save_ifs" MAGIC_CMD="$lt_save_MAGIC_CMD" ;; esac]) MAGIC_CMD="$lt_cv_path_MAGIC_CMD" if test -n "$MAGIC_CMD"; then AC_MSG_RESULT($MAGIC_CMD) else AC_MSG_RESULT(no) fi _LT_DECL([], [MAGIC_CMD], [0], [Used to examine libraries when file_magic_cmd begins with "file"])dnl ])# _LT_PATH_TOOL_PREFIX # Old name: AU_ALIAS([AC_PATH_TOOL_PREFIX], [_LT_PATH_TOOL_PREFIX]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AC_PATH_TOOL_PREFIX], []) # _LT_PATH_MAGIC # -------------- # find a file program which can recognize a shared library m4_defun([_LT_PATH_MAGIC], [_LT_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH) if test -z "$lt_cv_path_MAGIC_CMD"; then if test -n "$ac_tool_prefix"; then _LT_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH) else MAGIC_CMD=: fi fi ])# _LT_PATH_MAGIC # LT_PATH_LD # ---------- # find the pathname to the GNU or non-GNU linker AC_DEFUN([LT_PATH_LD], [AC_REQUIRE([AC_PROG_CC])dnl AC_REQUIRE([AC_CANONICAL_HOST])dnl AC_REQUIRE([AC_CANONICAL_BUILD])dnl m4_require([_LT_DECL_SED])dnl m4_require([_LT_DECL_EGREP])dnl AC_ARG_WITH([gnu-ld], [AS_HELP_STRING([--with-gnu-ld], [assume the C compiler uses GNU ld @<:@default=no@:>@])], [test "$withval" = no || with_gnu_ld=yes], [with_gnu_ld=no])dnl ac_prog=ld if test "$GCC" = yes; then # Check if gcc -print-prog-name=ld gives a path. AC_MSG_CHECKING([for ld used by $CC]) case $host in *-*-mingw*) # gcc leaves a trailing carriage return which upsets mingw ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; *) ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; esac case $ac_prog in # Accept absolute paths. [[\\/]]* | ?:[[\\/]]*) re_direlt='/[[^/]][[^/]]*/\.\./' # Canonicalize the pathname of ld ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'` while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"` done test -z "$LD" && LD="$ac_prog" ;; "") # If it fails, then pretend we aren't using GCC. ac_prog=ld ;; *) # If it is relative, then search for the first ld in PATH. with_gnu_ld=unknown ;; esac elif test "$with_gnu_ld" = yes; then AC_MSG_CHECKING([for GNU ld]) else AC_MSG_CHECKING([for non-GNU ld]) fi AC_CACHE_VAL(lt_cv_path_LD, [if test -z "$LD"; then lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR for ac_dir in $PATH; do IFS="$lt_save_ifs" test -z "$ac_dir" && ac_dir=. if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then lt_cv_path_LD="$ac_dir/$ac_prog" # Check to see if the program is GNU ld. I'd rather use --version, # but apparently some variants of GNU ld only accept -v. # Break only if it was the GNU/non-GNU ld that we prefer. case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in *GNU* | *'with BFD'*) test "$with_gnu_ld" != no && break ;; *) test "$with_gnu_ld" != yes && break ;; esac fi done IFS="$lt_save_ifs" else lt_cv_path_LD="$LD" # Let the user override the test with a path. fi]) LD="$lt_cv_path_LD" if test -n "$LD"; then AC_MSG_RESULT($LD) else AC_MSG_RESULT(no) fi test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH]) _LT_PATH_LD_GNU AC_SUBST([LD]) _LT_TAGDECL([], [LD], [1], [The linker used to build libraries]) ])# LT_PATH_LD # Old names: AU_ALIAS([AM_PROG_LD], [LT_PATH_LD]) AU_ALIAS([AC_PROG_LD], [LT_PATH_LD]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AM_PROG_LD], []) dnl AC_DEFUN([AC_PROG_LD], []) # _LT_PATH_LD_GNU #- -------------- m4_defun([_LT_PATH_LD_GNU], [AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld, [# I'd rather use --version here, but apparently some GNU lds only accept -v. case `$LD -v 2>&1 </dev/null` in *GNU* | *'with BFD'*) lt_cv_prog_gnu_ld=yes ;; *) lt_cv_prog_gnu_ld=no ;; esac]) with_gnu_ld=$lt_cv_prog_gnu_ld ])# _LT_PATH_LD_GNU # _LT_CMD_RELOAD # -------------- # find reload flag for linker # -- PORTME Some linkers may need a different reload flag. m4_defun([_LT_CMD_RELOAD], [AC_CACHE_CHECK([for $LD option to reload object files], lt_cv_ld_reload_flag, [lt_cv_ld_reload_flag='-r']) reload_flag=$lt_cv_ld_reload_flag case $reload_flag in "" | " "*) ;; *) reload_flag=" $reload_flag" ;; esac reload_cmds='$LD$reload_flag -o $output$reload_objs' case $host_os in darwin*) if test "$GCC" = yes; then reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs' else reload_cmds='$LD$reload_flag -o $output$reload_objs' fi ;; esac _LT_DECL([], [reload_flag], [1], [How to create reloadable object files])dnl _LT_DECL([], [reload_cmds], [2])dnl ])# _LT_CMD_RELOAD # _LT_CHECK_MAGIC_METHOD # ---------------------- # how to check for library dependencies # -- PORTME fill in with the dynamic library characteristics m4_defun([_LT_CHECK_MAGIC_METHOD], [m4_require([_LT_DECL_EGREP]) m4_require([_LT_DECL_OBJDUMP]) AC_CACHE_CHECK([how to recognize dependent libraries], lt_cv_deplibs_check_method, [lt_cv_file_magic_cmd='$MAGIC_CMD' lt_cv_file_magic_test_file= lt_cv_deplibs_check_method='unknown' # Need to set the preceding variable on all platforms that support # interlibrary dependencies. # 'none' -- dependencies not supported. # `unknown' -- same as none, but documents that we really don't know. # 'pass_all' -- all dependencies passed with no checks. # 'test_compile' -- check by making test program. # 'file_magic [[regex]]' -- check by looking for files in library path # which responds to the $file_magic_cmd with a given extended regex. # If you have `file' or equivalent on your system and you're not sure # whether `pass_all' will *always* work, you probably want this one. case $host_os in aix[[4-9]]*) lt_cv_deplibs_check_method=pass_all ;; beos*) lt_cv_deplibs_check_method=pass_all ;; bsdi[[45]]*) lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)' lt_cv_file_magic_cmd='/usr/bin/file -L' lt_cv_file_magic_test_file=/shlib/libc.so ;; cygwin*) # func_win32_libid is a shell function defined in ltmain.sh lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL' lt_cv_file_magic_cmd='func_win32_libid' ;; mingw* | pw32*) # Base MSYS/MinGW do not provide the 'file' command needed by # func_win32_libid shell function, so use a weaker test based on 'objdump', # unless we find 'file', for example because we are cross-compiling. if ( file / ) >/dev/null 2>&1; then lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL' lt_cv_file_magic_cmd='func_win32_libid' else lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?' lt_cv_file_magic_cmd='$OBJDUMP -f' fi ;; cegcc) # use the weaker test based on 'objdump'. See mingw*. lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?' lt_cv_file_magic_cmd='$OBJDUMP -f' ;; darwin* | rhapsody*) lt_cv_deplibs_check_method=pass_all ;; freebsd* | dragonfly*) if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then case $host_cpu in i*86 ) # Not sure whether the presence of OpenBSD here was a mistake. # Let's accept both of them until this is cleared up. lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[[3-9]]86 (compact )?demand paged shared library' lt_cv_file_magic_cmd=/usr/bin/file lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` ;; esac else lt_cv_deplibs_check_method=pass_all fi ;; gnu*) lt_cv_deplibs_check_method=pass_all ;; hpux10.20* | hpux11*) lt_cv_file_magic_cmd=/usr/bin/file case $host_cpu in ia64*) lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64' lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so ;; hppa*64*) [lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - PA-RISC [0-9].[0-9]'] lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl ;; *) lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]].[[0-9]]) shared library' lt_cv_file_magic_test_file=/usr/lib/libc.sl ;; esac ;; interix[[3-9]]*) # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|\.a)$' ;; irix5* | irix6* | nonstopux*) case $LD in *-32|*"-32 ") libmagic=32-bit;; *-n32|*"-n32 ") libmagic=N32;; *-64|*"-64 ") libmagic=64-bit;; *) libmagic=never-match;; esac lt_cv_deplibs_check_method=pass_all ;; # This must be Linux ELF. linux* | k*bsd*-gnu) 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_cmd=$lt_cv_file_magic_cmd deplibs_check_method=$lt_cv_deplibs_check_method test -z "$deplibs_check_method" && deplibs_check_method=unknown _LT_DECL([], [deplibs_check_method], [1], [Method to check whether dependent libraries are shared objects]) _LT_DECL([], [file_magic_cmd], [1], [Command to use when deplibs_check_method == "file_magic"]) ])# _LT_CHECK_MAGIC_METHOD # LT_PATH_NM # ---------- # find the pathname to a BSD- or MS-compatible name lister AC_DEFUN([LT_PATH_NM], [AC_REQUIRE([AC_PROG_CC])dnl AC_CACHE_CHECK([for BSD- or MS-compatible name lister (nm)], lt_cv_path_NM, [if test -n "$NM"; then # Let the user override the test. lt_cv_path_NM="$NM" else lt_nm_to_check="${ac_tool_prefix}nm" if test -n "$ac_tool_prefix" && test "$build" = "$host"; then lt_nm_to_check="$lt_nm_to_check nm" fi for lt_tmp_nm in $lt_nm_to_check; do lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do IFS="$lt_save_ifs" test -z "$ac_dir" && ac_dir=. tmp_nm="$ac_dir/$lt_tmp_nm" if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then # Check to see if the nm accepts a BSD-compat flag. # Adding the `sed 1q' prevents false positives on HP-UX, which says: # nm: unknown option "B" ignored # Tru64's nm complains that /dev/null is an invalid object file case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in */dev/null* | *'Invalid file or object type'*) lt_cv_path_NM="$tmp_nm -B" break ;; *) case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in */dev/null*) lt_cv_path_NM="$tmp_nm -p" break ;; *) lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but continue # so that we can try to find one that supports BSD flags ;; esac ;; esac fi done IFS="$lt_save_ifs" done : ${lt_cv_path_NM=no} fi]) if test "$lt_cv_path_NM" != "no"; then NM="$lt_cv_path_NM" else # Didn't find any BSD compatible name lister, look for dumpbin. AC_CHECK_TOOLS(DUMPBIN, ["dumpbin -symbols" "link -dump -symbols"], :) AC_SUBST([DUMPBIN]) if test "$DUMPBIN" != ":"; then NM="$DUMPBIN" fi fi test -z "$NM" && NM=nm AC_SUBST([NM]) _LT_DECL([], [NM], [1], [A BSD- or MS-compatible name lister])dnl AC_CACHE_CHECK([the name lister ($NM) interface], [lt_cv_nm_interface], [lt_cv_nm_interface="BSD nm" echo "int some_variable = 0;" > conftest.$ac_ext (eval echo "\"\$as_me:__oline__: $ac_compile\"" >&AS_MESSAGE_LOG_FD) (eval "$ac_compile" 2>conftest.err) cat conftest.err >&AS_MESSAGE_LOG_FD (eval echo "\"\$as_me:__oline__: $NM \\\"conftest.$ac_objext\\\"\"" >&AS_MESSAGE_LOG_FD) (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out) cat conftest.err >&AS_MESSAGE_LOG_FD (eval echo "\"\$as_me:__oline__: output\"" >&AS_MESSAGE_LOG_FD) cat conftest.out >&AS_MESSAGE_LOG_FD if $GREP 'External.*some_variable' conftest.out > /dev/null; then lt_cv_nm_interface="MS dumpbin" fi rm -f conftest*]) ])# LT_PATH_NM # Old names: AU_ALIAS([AM_PROG_NM], [LT_PATH_NM]) AU_ALIAS([AC_PROG_NM], [LT_PATH_NM]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AM_PROG_NM], []) dnl AC_DEFUN([AC_PROG_NM], []) # LT_LIB_M # -------- # check for math library AC_DEFUN([LT_LIB_M], [AC_REQUIRE([AC_CANONICAL_HOST])dnl LIBM= case $host in *-*-beos* | *-*-cygwin* | *-*-pw32* | *-*-darwin*) # These system don't have libm, or don't need it ;; *-ncr-sysv4.3*) AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw") AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm") ;; *) AC_CHECK_LIB(m, cos, LIBM="-lm") ;; esac AC_SUBST([LIBM]) ])# LT_LIB_M # Old name: AU_ALIAS([AC_CHECK_LIBM], [LT_LIB_M]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AC_CHECK_LIBM], []) # _LT_COMPILER_NO_RTTI([TAGNAME]) # ------------------------------- m4_defun([_LT_COMPILER_NO_RTTI], [m4_require([_LT_TAG_COMPILER])dnl _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)= if test "$GCC" = yes; then _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' _LT_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions], lt_cv_prog_compiler_rtti_exceptions, [-fno-rtti -fno-exceptions], [], [_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)="$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) -fno-rtti -fno-exceptions"]) fi _LT_TAGDECL([no_builtin_flag], [lt_prog_compiler_no_builtin_flag], [1], [Compiler flag to turn off builtin functions]) ])# _LT_COMPILER_NO_RTTI # _LT_CMD_GLOBAL_SYMBOLS # ---------------------- m4_defun([_LT_CMD_GLOBAL_SYMBOLS], [AC_REQUIRE([AC_CANONICAL_HOST])dnl AC_REQUIRE([AC_PROG_CC])dnl AC_REQUIRE([LT_PATH_NM])dnl AC_REQUIRE([LT_PATH_LD])dnl m4_require([_LT_DECL_SED])dnl m4_require([_LT_DECL_EGREP])dnl m4_require([_LT_TAG_COMPILER])dnl # Check for command to grab the raw symbol name followed by C symbol from nm. AC_MSG_CHECKING([command to parse $NM output from $compiler object]) AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe], [ # These are sane defaults that work on at least a few old systems. # [They come from Ultrix. What could be older than Ultrix?!! ;)] # Character class describing NM global symbol codes. symcode='[[BCDEGRST]]' # Regexp to match symbols that can be accessed directly from C. sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)' # Define system-specific variables. case $host_os in aix*) symcode='[[BCDT]]' ;; cygwin* | mingw* | pw32* | cegcc*) symcode='[[ABCDGISTW]]' ;; hpux*) if test "$host_cpu" = ia64; then symcode='[[ABCDEGRST]]' fi ;; irix* | nonstopux*) symcode='[[BCDEGRST]]' ;; osf*) symcode='[[BCDEGQRST]]' ;; solaris*) symcode='[[BDRT]]' ;; sco3.2v5*) symcode='[[DT]]' ;; sysv4.2uw2*) symcode='[[DT]]' ;; sysv5* | sco5v6* | unixware* | OpenUNIX*) symcode='[[ABDT]]' ;; sysv4) symcode='[[DFNSTU]]' ;; esac # If we're using GNU nm, then use its standard symbol codes. case `$NM -V 2>&1` in *GNU* | *'with BFD'*) symcode='[[ABCDGIRSTW]]' ;; esac # Transform an extracted symbol line into a proper C declaration. # Some systems (esp. on ia64) link data and code symbols differently, # so use this general approach. lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'" # Transform an extracted symbol line into symbol name and symbol address lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (void *) \&\2},/p'" lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \(lib[[^ ]]*\)$/ {\"\2\", (void *) \&\2},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"lib\2\", (void *) \&\2},/p'" # Handle CRLF in mingw tool chain opt_cr= case $build_os in mingw*) opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp ;; esac # Try without a prefix underscore, then with it. for ac_symprfx in "" "_"; do # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol. symxfrm="\\1 $ac_symprfx\\2 \\2" # Write the raw and C identifiers. if test "$lt_cv_nm_interface" = "MS dumpbin"; then # Fake it for dumpbin and say T for any non-static function # and D for any global variable. # Also find C++ and __fastcall symbols from MSVC++, # which start with @ or ?. lt_cv_sys_global_symbol_pipe="$AWK ['"\ " {last_section=section; section=\$ 3};"\ " /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\ " \$ 0!~/External *\|/{next};"\ " / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\ " {if(hide[section]) next};"\ " {f=0}; \$ 0~/\(\).*\|/{f=1}; {printf f ? \"T \" : \"D \"};"\ " {split(\$ 0, a, /\||\r/); split(a[2], s)};"\ " s[1]~/^[@?]/{print s[1], s[1]; next};"\ " s[1]~prfx {split(s[1],t,\"@\"); print t[1], substr(t[1],length(prfx))}"\ " ' prfx=^$ac_symprfx]" else lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'" fi # Check to see that the pipe works correctly. pipe_works=no rm -f conftest* cat > conftest.$ac_ext <<_LT_EOF #ifdef __cplusplus extern "C" { #endif char nm_test_var; void nm_test_func(void); void nm_test_func(void){} #ifdef __cplusplus } #endif int main(){nm_test_var='a';nm_test_func();return(0);} _LT_EOF if AC_TRY_EVAL(ac_compile); then # Now try to grab the symbols. nlist=conftest.nm if AC_TRY_EVAL(NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist) && test -s "$nlist"; then # Try sorting and uniquifying the output. if sort "$nlist" | uniq > "$nlist"T; then mv -f "$nlist"T "$nlist" else rm -f "$nlist"T fi # Make sure that we snagged all the symbols we need. if $GREP ' nm_test_var$' "$nlist" >/dev/null; then if $GREP ' nm_test_func$' "$nlist" >/dev/null; then cat <<_LT_EOF > conftest.$ac_ext #ifdef __cplusplus extern "C" { #endif _LT_EOF # Now generate the symbol file. eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext' cat <<_LT_EOF >> conftest.$ac_ext /* The mapping between symbol names and symbols. */ const struct { const char *name; void *address; } lt__PROGRAM__LTX_preloaded_symbols[[]] = { { "@PROGRAM@", (void *) 0 }, _LT_EOF $SED "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (void *) \&\2},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext cat <<\_LT_EOF >> conftest.$ac_ext {0, (void *) 0} }; /* This works around a problem in FreeBSD linker */ #ifdef FREEBSD_WORKAROUND static const void *lt_preloaded_setup() { return lt__PROGRAM__LTX_preloaded_symbols; } #endif #ifdef __cplusplus } #endif _LT_EOF # Now try linking the two files. mv conftest.$ac_objext conftstm.$ac_objext lt_save_LIBS="$LIBS" lt_save_CFLAGS="$CFLAGS" LIBS="conftstm.$ac_objext" CFLAGS="$CFLAGS$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)" if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext}; then pipe_works=yes fi LIBS="$lt_save_LIBS" CFLAGS="$lt_save_CFLAGS" else echo "cannot find nm_test_func in $nlist" >&AS_MESSAGE_LOG_FD fi else echo "cannot find nm_test_var in $nlist" >&AS_MESSAGE_LOG_FD fi else echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AS_MESSAGE_LOG_FD fi else echo "$progname: failed program was:" >&AS_MESSAGE_LOG_FD cat conftest.$ac_ext >&5 fi rm -rf conftest* conftst* # Do not use the global_symbol_pipe unless it works. if test "$pipe_works" = yes; then break else lt_cv_sys_global_symbol_pipe= fi done ]) if test -z "$lt_cv_sys_global_symbol_pipe"; then lt_cv_sys_global_symbol_to_cdecl= fi if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then AC_MSG_RESULT(failed) else AC_MSG_RESULT(ok) fi _LT_DECL([global_symbol_pipe], [lt_cv_sys_global_symbol_pipe], [1], [Take the output of nm and produce a listing of raw symbols and C names]) _LT_DECL([global_symbol_to_cdecl], [lt_cv_sys_global_symbol_to_cdecl], [1], [Transform the output of nm in a proper C declaration]) _LT_DECL([global_symbol_to_c_name_address], [lt_cv_sys_global_symbol_to_c_name_address], [1], [Transform the output of nm in a C name address pair]) _LT_DECL([global_symbol_to_c_name_address_lib_prefix], [lt_cv_sys_global_symbol_to_c_name_address_lib_prefix], [1], [Transform the output of nm in a C name address pair when lib prefix is needed]) ]) # _LT_CMD_GLOBAL_SYMBOLS # _LT_COMPILER_PIC([TAGNAME]) # --------------------------- m4_defun([_LT_COMPILER_PIC], [m4_require([_LT_TAG_COMPILER])dnl _LT_TAGVAR(lt_prog_compiler_wl, $1)= _LT_TAGVAR(lt_prog_compiler_pic, $1)= _LT_TAGVAR(lt_prog_compiler_static, $1)= AC_MSG_CHECKING([for $compiler option to produce PIC]) m4_if([$1], [CXX], [ # C++ specific cases for pic, static, wl, etc. if test "$GXX" = yes; then _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' case $host_os in aix*) # All AIX code is PIC. if test "$host_cpu" = ia64; then # AIX 5 now supports IA64 processor _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' fi ;; amigaos*) case $host_cpu in powerpc) # see comment about AmigaOS4 .so support _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' ;; m68k) # FIXME: we need at least 68020 code to build shared libraries, but # adding the `-m68020' flag to GCC prevents building anything better, # like `-m68040'. _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4' ;; esac ;; beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) # PIC is the default for these OSes. ;; mingw* | cygwin* | os2* | pw32* | cegcc*) # This hack is so that the source file can tell whether it is being # built for inclusion in a dll (and should export symbols for example). # Although the cygwin gcc ignores -fPIC, still need this for old-style # (--disable-auto-import) libraries m4_if([$1], [GCJ], [], [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT']) ;; darwin* | rhapsody*) # PIC is the default on this platform # Common symbols not allowed in MH_DYLIB files _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common' ;; *djgpp*) # DJGPP does not support shared libraries at all _LT_TAGVAR(lt_prog_compiler_pic, $1)= ;; interix[[3-9]]*) # Interix 3.x gcc -fpic/-fPIC options generate broken code. # Instead, we relocate shared libraries at runtime. ;; sysv4*MP*) if test -d /usr/nec; then _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic fi ;; hpux*) # PIC is the default for 64-bit PA HP-UX, but not for 32-bit # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag # sets the default TLS model and affects inlining. case $host_cpu in hppa*64*) ;; *) _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' ;; esac ;; *qnx* | *nto*) # QNX uses GNU C++, but need to define -shared option too, otherwise # it will coredump. _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared' ;; *) _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' ;; esac else case $host_os in aix[[4-9]]*) # All AIX code is PIC. if test "$host_cpu" = ia64; then # AIX 5 now supports IA64 processor _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' else _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp' fi ;; chorus*) case $cc_basename in cxch68*) # Green Hills C++ Compiler # _LT_TAGVAR(lt_prog_compiler_static, $1)="--no_auto_instantiation -u __main -u __premain -u _abort -r $COOL_DIR/lib/libOrb.a $MVME_DIR/lib/CC/libC.a $MVME_DIR/lib/classix/libcx.s.a" ;; esac ;; dgux*) case $cc_basename in ec++*) _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' ;; ghcx*) # Green Hills C++ Compiler _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' ;; *) ;; esac ;; freebsd* | dragonfly*) # FreeBSD uses GNU C++ ;; hpux9* | hpux10* | hpux11*) case $cc_basename in CC*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive' if test "$host_cpu" != ia64; then _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z' fi ;; aCC*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive' case $host_cpu in hppa*64*|ia64*) # +Z the default ;; *) _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z' ;; esac ;; *) ;; esac ;; interix*) # This is c89, which is MS Visual C++ (no shared libs) # Anyone wants to do a port? ;; irix5* | irix6* | nonstopux*) case $cc_basename in CC*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' # CC pic flag -KPIC is the default. ;; *) ;; esac ;; linux* | k*bsd*-gnu) case $cc_basename in KCC*) # KAI C++ Compiler _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' ;; ecpc* ) # old Intel C++ for x86_64 which still supported -KPIC. _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' ;; icpc* ) # Intel C++, used to be incompatible with GCC. # ICC 10 doesn't accept -KPIC any more. _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' ;; pgCC* | pgcpp*) # Portland Group C++ compiler _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' ;; cxx*) # Compaq C++ # Make sure the PIC flag is empty. It appears that all Alpha # Linux and Compaq Tru64 Unix objects are PIC. _LT_TAGVAR(lt_prog_compiler_pic, $1)= _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' ;; xlc* | xlC*) # IBM XL 8.0 on PPC _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic' _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink' ;; *) case `$CC -V 2>&1 | sed 5q` in *Sun\ C*) # Sun C++ 5.9 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' ;; esac ;; esac ;; lynxos*) ;; m88k*) ;; mvs*) case $cc_basename in cxx*) _LT_TAGVAR(lt_prog_compiler_pic, $1)='-W c,exportall' ;; *) ;; esac ;; netbsd*) ;; *qnx* | *nto*) # QNX uses GNU C++, but need to define -shared option too, otherwise # it will coredump. _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared' ;; osf3* | osf4* | osf5*) case $cc_basename in KCC*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,' ;; RCC*) # Rational C++ 2.4.1 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' ;; cxx*) # Digital/Compaq C++ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' # Make sure the PIC flag is empty. It appears that all Alpha # Linux and Compaq Tru64 Unix objects are PIC. _LT_TAGVAR(lt_prog_compiler_pic, $1)= _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' ;; *) ;; esac ;; psos*) ;; solaris*) case $cc_basename in CC*) # Sun C++ 4.2, 5.x and Centerline C++ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' ;; gcx*) # Green Hills C++ Compiler _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC' ;; *) ;; esac ;; sunos4*) case $cc_basename in CC*) # Sun C++ 4.x _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' ;; lcc*) # Lucid _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' ;; *) ;; esac ;; sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*) case $cc_basename in CC*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' ;; esac ;; tandem*) case $cc_basename in NCC*) # NonStop-UX NCC 3.20 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' ;; *) ;; esac ;; vxworks*) ;; *) _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no ;; esac fi ], [ if test "$GCC" = yes; then _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' case $host_os in aix*) # All AIX code is PIC. if test "$host_cpu" = ia64; then # AIX 5 now supports IA64 processor _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' fi ;; amigaos*) case $host_cpu in powerpc) # see comment about AmigaOS4 .so support _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' ;; m68k) # FIXME: we need at least 68020 code to build shared libraries, but # adding the `-m68020' flag to GCC prevents building anything better, # like `-m68040'. _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4' ;; esac ;; beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) # PIC is the default for these OSes. ;; mingw* | cygwin* | pw32* | os2* | cegcc*) # This hack is so that the source file can tell whether it is being # built for inclusion in a dll (and should export symbols for example). # Although the cygwin gcc ignores -fPIC, still need this for old-style # (--disable-auto-import) libraries m4_if([$1], [GCJ], [], [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT']) ;; darwin* | rhapsody*) # PIC is the default on this platform # Common symbols not allowed in MH_DYLIB files _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common' ;; hpux*) # PIC is the default for 64-bit PA HP-UX, but not for 32-bit # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag # sets the default TLS model and affects inlining. case $host_cpu in hppa*64*) # +Z the default ;; *) _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' ;; esac ;; interix[[3-9]]*) # Interix 3.x gcc -fpic/-fPIC options generate broken code. # Instead, we relocate shared libraries at runtime. ;; msdosdjgpp*) # Just because we use GCC doesn't mean we suddenly get shared libraries # on systems that don't support them. _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no enable_shared=no ;; *nto* | *qnx*) # QNX uses GNU C++, but need to define -shared option too, otherwise # it will coredump. _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared' ;; sysv4*MP*) if test -d /usr/nec; then _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic fi ;; *) _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' ;; esac else # PORTME Check for flag to pass linker flags through the system compiler. case $host_os in aix*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' if test "$host_cpu" = ia64; then # AIX 5 now supports IA64 processor _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' else _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp' fi ;; mingw* | cygwin* | pw32* | os2* | cegcc*) # This hack is so that the source file can tell whether it is being # built for inclusion in a dll (and should export symbols for example). m4_if([$1], [GCJ], [], [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT']) ;; hpux9* | hpux10* | hpux11*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but # not for PA HP-UX. case $host_cpu in hppa*64*|ia64*) # +Z the default ;; *) _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z' ;; esac # Is there a better lt_prog_compiler_static that works with the bundled CC? _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive' ;; irix5* | irix6* | nonstopux*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' # PIC (with -KPIC) is the default. _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' ;; linux* | k*bsd*-gnu) case $cc_basename in # old Intel for x86_64 which still supported -KPIC. ecc*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' ;; # icc used to be incompatible with GCC. # ICC 10 doesn't accept -KPIC any more. icc* | ifort*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' ;; # Lahey Fortran 8.1. lf95*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='--shared' _LT_TAGVAR(lt_prog_compiler_static, $1)='--static' ;; pgcc* | pgf77* | pgf90* | pgf95*) # Portland Group compilers (*not* the Pentium gcc compiler, # which looks to be a dead project) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' ;; ccc*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' # All Alpha code is PIC. _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' ;; xl*) # IBM XL C 8.0/Fortran 10.1 on PPC _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic' _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink' ;; *) case `$CC -V 2>&1 | sed 5q` in *Sun\ C*) # Sun C 5.9 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' ;; *Sun\ F*) # Sun Fortran 8.3 passes all unrecognized flags to the linker _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' _LT_TAGVAR(lt_prog_compiler_wl, $1)='' ;; esac ;; esac ;; newsos6) _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' ;; *nto* | *qnx*) # QNX uses GNU C++, but need to define -shared option too, otherwise # it will coredump. _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared' ;; osf3* | osf4* | osf5*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' # All OSF/1 code is PIC. _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' ;; rdos*) _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' ;; solaris*) _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' case $cc_basename in f77* | f90* | f95*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ';; *) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,';; esac ;; sunos4*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' ;; sysv4 | sysv4.2uw2* | sysv4.3*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' ;; sysv4*MP*) if test -d /usr/nec ;then _LT_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' fi ;; sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' ;; unicos*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no ;; uts4*) _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' ;; *) _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no ;; esac fi ]) case $host_os in # For platforms which do not support PIC, -DPIC is meaningless: *djgpp*) _LT_TAGVAR(lt_prog_compiler_pic, $1)= ;; *) _LT_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])" ;; esac AC_MSG_RESULT([$_LT_TAGVAR(lt_prog_compiler_pic, $1)]) _LT_TAGDECL([wl], [lt_prog_compiler_wl], [1], [How to pass a linker flag through the compiler]) # # Check to make sure the PIC flag actually works. # if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then _LT_COMPILER_OPTION([if $compiler PIC flag $_LT_TAGVAR(lt_prog_compiler_pic, $1) works], [_LT_TAGVAR(lt_cv_prog_compiler_pic_works, $1)], [$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])], [], [case $_LT_TAGVAR(lt_prog_compiler_pic, $1) in "" | " "*) ;; *) _LT_TAGVAR(lt_prog_compiler_pic, $1)=" $_LT_TAGVAR(lt_prog_compiler_pic, $1)" ;; esac], [_LT_TAGVAR(lt_prog_compiler_pic, $1)= _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no]) fi _LT_TAGDECL([pic_flag], [lt_prog_compiler_pic], [1], [Additional compiler flags for building library objects]) # # Check to make sure the static flag actually works. # wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) eval lt_tmp_static_flag=\"$_LT_TAGVAR(lt_prog_compiler_static, $1)\" _LT_LINKER_OPTION([if $compiler static flag $lt_tmp_static_flag works], _LT_TAGVAR(lt_cv_prog_compiler_static_works, $1), $lt_tmp_static_flag, [], [_LT_TAGVAR(lt_prog_compiler_static, $1)=]) _LT_TAGDECL([link_static_flag], [lt_prog_compiler_static], [1], [Compiler flag to prevent dynamic linking]) ])# _LT_COMPILER_PIC # _LT_LINKER_SHLIBS([TAGNAME]) # ---------------------------- # See if the linker supports building shared libraries. m4_defun([_LT_LINKER_SHLIBS], [AC_REQUIRE([LT_PATH_LD])dnl AC_REQUIRE([LT_PATH_NM])dnl m4_require([_LT_FILEUTILS_DEFAULTS])dnl m4_require([_LT_DECL_EGREP])dnl m4_require([_LT_DECL_SED])dnl m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl m4_require([_LT_TAG_COMPILER])dnl AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries]) m4_if([$1], [CXX], [ _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' case $host_os in aix[[4-9]]*) # If we're using GNU nm, then we don't want the "-C" option. # -C means demangle to AIX nm, but means don't demangle with GNU nm if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols' else _LT_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols' fi ;; pw32*) _LT_TAGVAR(export_symbols_cmds, $1)="$ltdll_cmds" ;; cygwin* | mingw* | cegcc*) _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/;/^.*[[ ]]__nm__/s/^.*[[ ]]__nm__\([[^ ]]*\)[[ ]][[^ ]]*/\1 DATA/;/^I[[ ]]/d;/^[[AITW]][[ ]]/s/.* //'\'' | sort | uniq > $export_symbols' ;; *) _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' ;; esac _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'] ], [ runpath_var= _LT_TAGVAR(allow_undefined_flag, $1)= _LT_TAGVAR(always_export_symbols, $1)=no _LT_TAGVAR(archive_cmds, $1)= _LT_TAGVAR(archive_expsym_cmds, $1)= _LT_TAGVAR(compiler_needs_object, $1)=no _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no _LT_TAGVAR(export_dynamic_flag_spec, $1)= _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' _LT_TAGVAR(hardcode_automatic, $1)=no _LT_TAGVAR(hardcode_direct, $1)=no _LT_TAGVAR(hardcode_direct_absolute, $1)=no _LT_TAGVAR(hardcode_libdir_flag_spec, $1)= _LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)= _LT_TAGVAR(hardcode_libdir_separator, $1)= _LT_TAGVAR(hardcode_minus_L, $1)=no _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported _LT_TAGVAR(inherit_rpath, $1)=no _LT_TAGVAR(link_all_deplibs, $1)=unknown _LT_TAGVAR(module_cmds, $1)= _LT_TAGVAR(module_expsym_cmds, $1)= _LT_TAGVAR(old_archive_from_new_cmds, $1)= _LT_TAGVAR(old_archive_from_expsyms_cmds, $1)= _LT_TAGVAR(thread_safe_flag_spec, $1)= _LT_TAGVAR(whole_archive_flag_spec, $1)= # include_expsyms should be a list of space-separated symbols to be *always* # included in the symbol list _LT_TAGVAR(include_expsyms, $1)= # exclude_expsyms can be an extended regexp of symbols to exclude # it will be wrapped by ` (' and `)$', so one must not match beginning or # end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc', # as well as any symbol that contains `d'. _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'] # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out # platforms (ab)use it in PIC code, but their linkers get confused if # the symbol is explicitly referenced. Since portable code cannot # rely on this symbol name, it's probably fine to never include it in # preloaded symbol tables. # Exclude shared library initialization/finalization symbols. dnl Note also adjust exclude_expsyms for C++ above. extract_expsyms_cmds= case $host_os in cygwin* | mingw* | pw32* | cegcc*) # FIXME: the MSVC++ port hasn't been tested in a loooong time # When not using gcc, we currently assume that we are using # Microsoft Visual C++. if test "$GCC" != yes; then with_gnu_ld=no fi ;; interix*) # we just hope/assume this is gcc and not c89 (= MSVC++) with_gnu_ld=yes ;; openbsd*) with_gnu_ld=no ;; esac _LT_TAGVAR(ld_shlibs, $1)=yes if test "$with_gnu_ld" = yes; then # If archive_cmds runs LD, not CC, wlarc should be empty wlarc='${wl}' # Set some defaults for GNU ld with shared library support. These # are reset later if shared libraries are not supported. Putting them # here allows them to be overridden if necessary. runpath_var=LD_RUN_PATH _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' # ancient GNU ld didn't support --whole-archive et. al. if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' else _LT_TAGVAR(whole_archive_flag_spec, $1)= fi supports_anon_versioning=no case `$LD -v 2>&1` in *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11 *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ... *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ... *\ 2.11.*) ;; # other 2.11 versions *) supports_anon_versioning=yes ;; esac # See if GNU ld supports shared libraries. case $host_os in aix[[3-9]]*) # On AIX/PPC, the GNU linker is very broken if test "$host_cpu" != ia64; then _LT_TAGVAR(ld_shlibs, $1)=no cat <<_LT_EOF 1>&2 *** Warning: the GNU linker, at least up to release 2.9.1, is reported *** to be unable to reliably create shared libraries on AIX. *** Therefore, libtool is disabling shared libraries support. If you *** really care for shared libraries, you may want to modify your PATH *** so that a non-GNU linker is found, and then restart. _LT_EOF fi ;; amigaos*) case $host_cpu in powerpc) # see comment about AmigaOS4 .so support _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='' ;; m68k) _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' _LT_TAGVAR(hardcode_minus_L, $1)=yes ;; esac ;; beos*) if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then _LT_TAGVAR(allow_undefined_flag, $1)=unsupported # Joseph Beckenbach <jrb3@best.com> says some releases of gcc # support --undefined. This deserves some investigation. FIXME _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' else _LT_TAGVAR(ld_shlibs, $1)=no fi ;; cygwin* | mingw* | pw32* | cegcc*) # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless, # as there is no search path for DLLs. _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' _LT_TAGVAR(allow_undefined_flag, $1)=unsupported _LT_TAGVAR(always_export_symbols, $1)=no _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/'\'' | $SED -e '\''/^[[AITW]][[ ]]/s/.*[[ ]]//'\'' | sort | uniq > $export_symbols' if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' # If the export-symbols file already is a .def file (1st line # is EXPORTS), use it as is; otherwise, prepend... _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then cp $export_symbols $output_objdir/$soname.def; else echo EXPORTS > $output_objdir/$soname.def; cat $export_symbols >> $output_objdir/$soname.def; fi~ $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' else _LT_TAGVAR(ld_shlibs, $1)=no fi ;; interix[[3-9]]*) _LT_TAGVAR(hardcode_direct, $1)=no _LT_TAGVAR(hardcode_shlibpath_var, $1)=no _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc. # Instead, shared libraries are loaded at an image base (0x10000000 by # default) and relocated if they conflict, which is a slow very memory # consuming and fragmenting process. To avoid this, we pick a random, # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link # time. Moving up from 0x10000000 also allows more sbrk(2) space. _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' ;; gnu* | linux* | tpf* | k*bsd*-gnu) tmp_diet=no if test "$host_os" = linux-dietlibc; then case $cc_basename in diet\ *) tmp_diet=yes;; # linux-dietlibc with static linking (!diet-dyn) esac fi if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \ && test "$tmp_diet" = no then tmp_addflag= tmp_sharedflag='-shared' case $cc_basename,$host_cpu in pgcc*) # Portland Group C compiler _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive' tmp_addflag=' $pic_flag' ;; pgf77* | pgf90* | pgf95*) # Portland Group f77 and f90 compilers _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive' tmp_addflag=' $pic_flag -Mnomain' ;; ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64 tmp_addflag=' -i_dynamic' ;; efc*,ia64* | ifort*,ia64*) # Intel Fortran compiler on ia64 tmp_addflag=' -i_dynamic -nofor_main' ;; ifc* | ifort*) # Intel Fortran compiler tmp_addflag=' -nofor_main' ;; lf95*) # Lahey Fortran 8.1 _LT_TAGVAR(whole_archive_flag_spec, $1)= tmp_sharedflag='--shared' ;; xl[[cC]]*) # IBM XL C 8.0 on PPC (deal with xlf below) tmp_sharedflag='-qmkshrobj' tmp_addflag= ;; esac case `$CC -V 2>&1 | sed 5q` in *Sun\ C*) # Sun C 5.9 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive' _LT_TAGVAR(compiler_needs_object, $1)=yes tmp_sharedflag='-G' ;; *Sun\ F*) # Sun Fortran 8.3 tmp_sharedflag='-G' ;; esac _LT_TAGVAR(archive_cmds, $1)='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' if test "x$supports_anon_versioning" = xyes; then _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~ cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ echo "local: *; };" >> $output_objdir/$libname.ver~ $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib' fi case $cc_basename in xlf*) # IBM XL Fortran 10.1 on PPC cannot create shared libs itself _LT_TAGVAR(whole_archive_flag_spec, $1)='--whole-archive$convenience --no-whole-archive' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)= _LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='-rpath $libdir' _LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $compiler_flags -soname $soname -o $lib' if test "x$supports_anon_versioning" = xyes; then _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~ cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ echo "local: *; };" >> $output_objdir/$libname.ver~ $LD -shared $libobjs $deplibs $compiler_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib' fi ;; esac else _LT_TAGVAR(ld_shlibs, $1)=no fi ;; netbsd*) if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' wlarc= else _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' fi ;; solaris*) if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then _LT_TAGVAR(ld_shlibs, $1)=no cat <<_LT_EOF 1>&2 *** Warning: The releases 2.8.* of the GNU linker cannot reliably *** create shared libraries on Solaris systems. Therefore, libtool *** is disabling shared libraries support. We urge you to upgrade GNU *** binutils to release 2.9.1 or newer. Another option is to modify *** your PATH or compiler configuration so that the native linker is *** used, and then restart. _LT_EOF elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' else _LT_TAGVAR(ld_shlibs, $1)=no fi ;; sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*) case `$LD -v 2>&1` in *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.1[[0-5]].*) _LT_TAGVAR(ld_shlibs, $1)=no cat <<_LT_EOF 1>&2 *** Warning: Releases of the GNU linker prior to 2.16.91.0.3 can not *** reliably create shared libraries on SCO systems. Therefore, libtool *** is disabling shared libraries support. We urge you to upgrade GNU *** binutils to release 2.16.91.0.3 or newer. Another option is to modify *** your PATH or compiler configuration so that the native linker is *** used, and then restart. _LT_EOF ;; *) # For security reasons, it is highly recommended that you always # use absolute paths for naming shared libraries, and exclude the # DT_RUNPATH tag from executables and libraries. But doing so # requires that you compile everything twice, which is a pain. if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' else _LT_TAGVAR(ld_shlibs, $1)=no fi ;; esac ;; sunos4*) _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags' wlarc= _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_shlibpath_var, $1)=no ;; *) if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' else _LT_TAGVAR(ld_shlibs, $1)=no fi ;; esac if test "$_LT_TAGVAR(ld_shlibs, $1)" = no; then runpath_var= _LT_TAGVAR(hardcode_libdir_flag_spec, $1)= _LT_TAGVAR(export_dynamic_flag_spec, $1)= _LT_TAGVAR(whole_archive_flag_spec, $1)= fi else # PORTME fill in a description of your system's linker (not GNU ld) case $host_os in aix3*) _LT_TAGVAR(allow_undefined_flag, $1)=unsupported _LT_TAGVAR(always_export_symbols, $1)=yes _LT_TAGVAR(archive_expsym_cmds, $1)='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname' # Note: this linker hardcodes the directories in LIBPATH if there # are no directories specified by -L. _LT_TAGVAR(hardcode_minus_L, $1)=yes if test "$GCC" = yes && test -z "$lt_prog_compiler_static"; then # Neither direct hardcoding nor static linking is supported with a # broken collect2. _LT_TAGVAR(hardcode_direct, $1)=unsupported fi ;; aix[[4-9]]*) if test "$host_cpu" = ia64; then # On IA64, the linker does run time linking by default, so we don't # have to do anything special. aix_use_runtimelinking=no exp_sym_flag='-Bexport' no_entry_flag="" else # If we're using GNU nm, then we don't want the "-C" option. # -C means demangle to AIX nm, but means don't demangle with GNU nm if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols' else _LT_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols' fi aix_use_runtimelinking=no # Test if we are trying to use run time linking or normal # AIX style linking. If -brtl is somewhere in LDFLAGS, we # need to do runtime linking. case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*) for ld_flag in $LDFLAGS; do if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then aix_use_runtimelinking=yes break fi done ;; esac exp_sym_flag='-bexport' no_entry_flag='-bnoentry' fi # When large executables or shared objects are built, AIX ld can # have problems creating the table of contents. If linking a library # or program results in "error TOC overflow" add -mminimal-toc to # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. _LT_TAGVAR(archive_cmds, $1)='' _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_direct_absolute, $1)=yes _LT_TAGVAR(hardcode_libdir_separator, $1)=':' _LT_TAGVAR(link_all_deplibs, $1)=yes _LT_TAGVAR(file_list_spec, $1)='${wl}-f,' if test "$GCC" = yes; then case $host_os in aix4.[[012]]|aix4.[[012]].*) # We only want to do this on AIX 4.2 and lower, the check # below for broken collect2 doesn't work under 4.3+ collect2name=`${CC} -print-prog-name=collect2` if test -f "$collect2name" && strings "$collect2name" | $GREP resolve_lib_name >/dev/null then # We have reworked collect2 : else # We have old collect2 _LT_TAGVAR(hardcode_direct, $1)=unsupported # It fails to find uninstalled libraries when the uninstalled # path is not listed in the libpath. Setting hardcode_minus_L # to unsupported forces relinking _LT_TAGVAR(hardcode_minus_L, $1)=yes _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)= fi ;; esac shared_flag='-shared' if test "$aix_use_runtimelinking" = yes; then shared_flag="$shared_flag "'${wl}-G' fi else # not using gcc if test "$host_cpu" = ia64; then # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release # chokes on -Wl,-G. The following line is correct: shared_flag='-G' else if test "$aix_use_runtimelinking" = yes; then shared_flag='${wl}-G' else shared_flag='${wl}-bM:SRE' fi fi fi _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall' # It seems that -bexpall does not export symbols beginning with # underscore (_), so it is better to generate a list of symbols to export. _LT_TAGVAR(always_export_symbols, $1)=yes if test "$aix_use_runtimelinking" = yes; then # Warning - without using the other runtime loading flags (-brtl), # -berok will link without error, but may produce a broken library. _LT_TAGVAR(allow_undefined_flag, $1)='-berok' # Determine the default libpath from the value encoded in an # empty executable. _LT_SYS_MODULE_PATH_AIX _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then $ECHO "X${wl}${allow_undefined_flag}" | $Xsed; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag" else if test "$host_cpu" = ia64; then _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib' _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs" _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols" else # Determine the default libpath from the value encoded in an # empty executable. _LT_SYS_MODULE_PATH_AIX _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" # Warning - without using the other run time loading flags, # -berok will link without error, but may produce a broken library. _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok' _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok' # Exported symbols can be pulled into shared objects from archives _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience' _LT_TAGVAR(archive_cmds_need_lc, $1)=yes # This is similar to how AIX traditionally builds its shared libraries. _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname' fi fi ;; amigaos*) case $host_cpu in powerpc) # see comment about AmigaOS4 .so support _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='' ;; m68k) _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' _LT_TAGVAR(hardcode_minus_L, $1)=yes ;; esac ;; bsdi[[45]]*) _LT_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic ;; cygwin* | mingw* | pw32* | cegcc*) # When not using gcc, we currently assume that we are using # Microsoft Visual C++. # hardcode_libdir_flag_spec is actually meaningless, as there is # no search path for DLLs. _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' ' _LT_TAGVAR(allow_undefined_flag, $1)=unsupported # Tell ltmain to make .lib files, not .a files. libext=lib # Tell ltmain to make .dll files, not .so files. shrext_cmds=".dll" # FIXME: Setting linknames here is a bad hack. _LT_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags `$ECHO "X$deplibs" | $Xsed -e '\''s/ -lc$//'\''` -link -dll~linknames=' # The linker will automatically build a .lib file if we build a DLL. _LT_TAGVAR(old_archive_from_new_cmds, $1)='true' # FIXME: Should let the user specify the lib program. _LT_TAGVAR(old_archive_cmds, $1)='lib -OUT:$oldlib$oldobjs$old_deplibs' _LT_TAGVAR(fix_srcfile_path, $1)='`cygpath -w "$srcfile"`' _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes ;; darwin* | rhapsody*) _LT_DARWIN_LINKER_FEATURES($1) ;; dgux*) _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' _LT_TAGVAR(hardcode_shlibpath_var, $1)=no ;; freebsd1*) _LT_TAGVAR(ld_shlibs, $1)=no ;; # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor # support. Future versions do this automatically, but an explicit c++rt0.o # does not break anything, and helps significantly (at the cost of a little # extra space). freebsd2.2*) _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_shlibpath_var, $1)=no ;; # Unfortunately, older versions of FreeBSD 2 do not have this feature. freebsd2*) _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_minus_L, $1)=yes _LT_TAGVAR(hardcode_shlibpath_var, $1)=no ;; # FreeBSD 3 and greater uses gcc -shared to do shared libraries. freebsd* | dragonfly*) _LT_TAGVAR(archive_cmds, $1)='$CC -shared -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_shlibpath_var, $1)=no ;; hpux9*) if test "$GCC" = yes; then _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' else _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' fi _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: _LT_TAGVAR(hardcode_direct, $1)=yes # hardcode_minus_L: Not really in the search PATH, # but as the default location of the library. _LT_TAGVAR(hardcode_minus_L, $1)=yes _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' ;; hpux10*) if test "$GCC" = yes -a "$with_gnu_ld" = no; then _LT_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags' else _LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' fi if test "$with_gnu_ld" = no; then _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' _LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='+b $libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_direct_absolute, $1)=yes _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' # hardcode_minus_L: Not really in the search PATH, # but as the default location of the library. _LT_TAGVAR(hardcode_minus_L, $1)=yes fi ;; hpux11*) if test "$GCC" = yes -a "$with_gnu_ld" = no; then case $host_cpu in hppa*64*) _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' ;; ia64*) _LT_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' ;; *) _LT_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags' ;; esac else case $host_cpu in hppa*64*) _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' ;; ia64*) _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' ;; *) _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags' ;; esac fi if test "$with_gnu_ld" = no; then _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: case $host_cpu in hppa*64*|ia64*) _LT_TAGVAR(hardcode_direct, $1)=no _LT_TAGVAR(hardcode_shlibpath_var, $1)=no ;; *) _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_direct_absolute, $1)=yes _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' # hardcode_minus_L: Not really in the search PATH, # but as the default location of the library. _LT_TAGVAR(hardcode_minus_L, $1)=yes ;; esac fi ;; irix5* | irix6* | nonstopux*) if test "$GCC" = yes; then _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' # Try to use the -exported_symbol ld option, if it does not # work, assume that -exports_file does not work either and # implicitly export all symbols. save_LDFLAGS="$LDFLAGS" LDFLAGS="$LDFLAGS -shared ${wl}-exported_symbol ${wl}foo ${wl}-update_registry ${wl}/dev/null" AC_LINK_IFELSE(int foo(void) {}, _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations ${wl}-exports_file ${wl}$export_symbols -o $lib' ) LDFLAGS="$save_LDFLAGS" else _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib' fi _LT_TAGVAR(archive_cmds_need_lc, $1)='no' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: _LT_TAGVAR(inherit_rpath, $1)=yes _LT_TAGVAR(link_all_deplibs, $1)=yes ;; netbsd*) if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out else _LT_TAGVAR(archive_cmds, $1)='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF fi _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_shlibpath_var, $1)=no ;; newsos6) _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: _LT_TAGVAR(hardcode_shlibpath_var, $1)=no ;; *nto* | *qnx*) ;; openbsd*) if test -f /usr/libexec/ld.so; then _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_shlibpath_var, $1)=no _LT_TAGVAR(hardcode_direct_absolute, $1)=yes if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' else case $host_os in openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*) _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' ;; *) _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' ;; esac fi else _LT_TAGVAR(ld_shlibs, $1)=no fi ;; os2*) _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' _LT_TAGVAR(hardcode_minus_L, $1)=yes _LT_TAGVAR(allow_undefined_flag, $1)=unsupported _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~$ECHO DATA >> $output_objdir/$libname.def~$ECHO " SINGLE NONSHARED" >> $output_objdir/$libname.def~$ECHO EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def' _LT_TAGVAR(old_archive_from_new_cmds, $1)='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def' ;; osf3*) if test "$GCC" = yes; then _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' else _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib' fi _LT_TAGVAR(archive_cmds_need_lc, $1)='no' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: ;; osf4* | osf5*) # as osf3* with the addition of -msym flag if test "$GCC" = yes; then _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' else _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; printf "%s\\n" "-hidden">> $lib.exp~ $CC -shared${allow_undefined_flag} ${wl}-input ${wl}$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib~$RM $lib.exp' # Both c and cxx compiler support -rpath directly _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' fi _LT_TAGVAR(archive_cmds_need_lc, $1)='no' _LT_TAGVAR(hardcode_libdir_separator, $1)=: ;; solaris*) _LT_TAGVAR(no_undefined_flag, $1)=' -z defs' if test "$GCC" = yes; then wlarc='${wl}' _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-z ${wl}text ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ $CC -shared ${wl}-z ${wl}text ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp' else case `$CC -V 2>&1` in *"Compilers 5.0"*) wlarc='' _LT_TAGVAR(archive_cmds, $1)='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp' ;; *) wlarc='${wl}' _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ $CC -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp' ;; esac fi _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' _LT_TAGVAR(hardcode_shlibpath_var, $1)=no case $host_os in solaris2.[[0-5]] | solaris2.[[0-5]].*) ;; *) # The compiler driver will combine and reorder linker options, # but understands `-z linker_flag'. GCC discards it without `$wl', # but is careful enough not to reorder. # Supported since Solaris 2.6 (maybe 2.5.1?) if test "$GCC" = yes; then _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract' else _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract' fi ;; esac _LT_TAGVAR(link_all_deplibs, $1)=yes ;; sunos4*) if test "x$host_vendor" = xsequent; then # Use $CC to link under sequent, because it throws in some extra .o # files that make .init and .fini sections work. _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags' else _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags' fi _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_minus_L, $1)=yes _LT_TAGVAR(hardcode_shlibpath_var, $1)=no ;; sysv4) case $host_vendor in sni) _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' _LT_TAGVAR(hardcode_direct, $1)=yes # is this really true??? ;; siemens) ## LD is ld it makes a PLAMLIB ## CC just makes a GrossModule. _LT_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags' _LT_TAGVAR(reload_cmds, $1)='$CC -r -o $output$reload_objs' _LT_TAGVAR(hardcode_direct, $1)=no ;; motorola) _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' _LT_TAGVAR(hardcode_direct, $1)=no #Motorola manual says yes, but my tests say they lie ;; esac runpath_var='LD_RUN_PATH' _LT_TAGVAR(hardcode_shlibpath_var, $1)=no ;; sysv4.3*) _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' _LT_TAGVAR(hardcode_shlibpath_var, $1)=no _LT_TAGVAR(export_dynamic_flag_spec, $1)='-Bexport' ;; sysv4*MP*) if test -d /usr/nec; then _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' _LT_TAGVAR(hardcode_shlibpath_var, $1)=no runpath_var=LD_RUN_PATH hardcode_runpath_var=yes _LT_TAGVAR(ld_shlibs, $1)=yes fi ;; sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*) _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text' _LT_TAGVAR(archive_cmds_need_lc, $1)=no _LT_TAGVAR(hardcode_shlibpath_var, $1)=no runpath_var='LD_RUN_PATH' if test "$GCC" = yes; then _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' else _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' fi ;; sysv5* | sco3.2v5* | sco5v6*) # Note: We can NOT use -z defs as we might desire, because we do not # link with -lc, and that would cause any symbols used from libc to # always be unresolved, which means just about no library would # ever link correctly. If we're not using GNU ld we use -z text # though, which does catch some bad symbols but isn't as heavy-handed # as -z defs. _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text' _LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs' _LT_TAGVAR(archive_cmds_need_lc, $1)=no _LT_TAGVAR(hardcode_shlibpath_var, $1)=no _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=':' _LT_TAGVAR(link_all_deplibs, $1)=yes _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport' runpath_var='LD_RUN_PATH' if test "$GCC" = yes; then _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' else _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' fi ;; uts4*) _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' _LT_TAGVAR(hardcode_shlibpath_var, $1)=no ;; *) _LT_TAGVAR(ld_shlibs, $1)=no ;; esac if test x$host_vendor = xsni; then case $host in sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Blargedynsym' ;; esac fi fi ]) AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)]) test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no _LT_TAGVAR(with_gnu_ld, $1)=$with_gnu_ld _LT_DECL([], [libext], [0], [Old archive suffix (normally "a")])dnl _LT_DECL([], [shrext_cmds], [1], [Shared library suffix (normally ".so")])dnl _LT_DECL([], [extract_expsyms_cmds], [2], [The commands to extract the exported symbol list from a shared archive]) # # Do we need to explicitly link libc? # case "x$_LT_TAGVAR(archive_cmds_need_lc, $1)" in x|xyes) # Assume -lc should be added _LT_TAGVAR(archive_cmds_need_lc, $1)=yes if test "$enable_shared" = yes && test "$GCC" = yes; then case $_LT_TAGVAR(archive_cmds, $1) in *'~'*) # FIXME: we may have to deal with multi-command sequences. ;; '$CC '*) # Test whether the compiler implicitly links with -lc since on some # systems, -lgcc has to come before -lc. If gcc already passes -lc # to ld, don't add -lc before -lgcc. AC_MSG_CHECKING([whether -lc should be explicitly linked in]) $RM conftest* echo "$lt_simple_compile_test_code" > conftest.$ac_ext if AC_TRY_EVAL(ac_compile) 2>conftest.err; then soname=conftest lib=conftest libobjs=conftest.$ac_objext deplibs= wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) pic_flag=$_LT_TAGVAR(lt_prog_compiler_pic, $1) compiler_flags=-v linker_flags=-v verstring= output_objdir=. libname=conftest lt_save_allow_undefined_flag=$_LT_TAGVAR(allow_undefined_flag, $1) _LT_TAGVAR(allow_undefined_flag, $1)= if AC_TRY_EVAL(_LT_TAGVAR(archive_cmds, $1) 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1) then _LT_TAGVAR(archive_cmds_need_lc, $1)=no else _LT_TAGVAR(archive_cmds_need_lc, $1)=yes fi _LT_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag else cat conftest.err 1>&5 fi $RM conftest* AC_MSG_RESULT([$_LT_TAGVAR(archive_cmds_need_lc, $1)]) ;; esac fi ;; esac _LT_TAGDECL([build_libtool_need_lc], [archive_cmds_need_lc], [0], [Whether or not to add -lc for building shared libraries]) _LT_TAGDECL([allow_libtool_libs_with_static_runtimes], [enable_shared_with_static_runtimes], [0], [Whether or not to disallow shared libs when runtime libs are static]) _LT_TAGDECL([], [export_dynamic_flag_spec], [1], [Compiler flag to allow reflexive dlopens]) _LT_TAGDECL([], [whole_archive_flag_spec], [1], [Compiler flag to generate shared objects directly from archives]) _LT_TAGDECL([], [compiler_needs_object], [1], [Whether the compiler copes with passing no objects directly]) _LT_TAGDECL([], [old_archive_from_new_cmds], [2], [Create an old-style archive from a shared archive]) _LT_TAGDECL([], [old_archive_from_expsyms_cmds], [2], [Create a temporary old-style archive to link instead of a shared archive]) _LT_TAGDECL([], [archive_cmds], [2], [Commands used to build a shared archive]) _LT_TAGDECL([], [archive_expsym_cmds], [2]) _LT_TAGDECL([], [module_cmds], [2], [Commands used to build a loadable module if different from building a shared archive.]) _LT_TAGDECL([], [module_expsym_cmds], [2]) _LT_TAGDECL([], [with_gnu_ld], [1], [Whether we are building with GNU ld or not]) _LT_TAGDECL([], [allow_undefined_flag], [1], [Flag that allows shared libraries with undefined symbols to be built]) _LT_TAGDECL([], [no_undefined_flag], [1], [Flag that enforces no undefined symbols]) _LT_TAGDECL([], [hardcode_libdir_flag_spec], [1], [Flag to hardcode $libdir into a binary during linking. This must work even if $libdir does not exist]) _LT_TAGDECL([], [hardcode_libdir_flag_spec_ld], [1], [[If ld is used when linking, flag to hardcode $libdir into a binary during linking. This must work even if $libdir does not exist]]) _LT_TAGDECL([], [hardcode_libdir_separator], [1], [Whether we need a single "-rpath" flag with a separated argument]) _LT_TAGDECL([], [hardcode_direct], [0], [Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes DIR into the resulting binary]) _LT_TAGDECL([], [hardcode_direct_absolute], [0], [Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes DIR into the resulting binary and the resulting library dependency is "absolute", i.e impossible to change by setting ${shlibpath_var} if the library is relocated]) _LT_TAGDECL([], [hardcode_minus_L], [0], [Set to "yes" if using the -LDIR flag during linking hardcodes DIR into the resulting binary]) _LT_TAGDECL([], [hardcode_shlibpath_var], [0], [Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into the resulting binary]) _LT_TAGDECL([], [hardcode_automatic], [0], [Set to "yes" if building a shared library automatically hardcodes DIR into the library and all subsequent libraries and executables linked against it]) _LT_TAGDECL([], [inherit_rpath], [0], [Set to yes if linker adds runtime paths of dependent libraries to runtime path list]) _LT_TAGDECL([], [link_all_deplibs], [0], [Whether libtool must link a program against all its dependency libraries]) _LT_TAGDECL([], [fix_srcfile_path], [1], [Fix the shell variable $srcfile for the compiler]) _LT_TAGDECL([], [always_export_symbols], [0], [Set to "yes" if exported symbols are required]) _LT_TAGDECL([], [export_symbols_cmds], [2], [The commands to list exported symbols]) _LT_TAGDECL([], [exclude_expsyms], [1], [Symbols that should not be listed in the preloaded symbols]) _LT_TAGDECL([], [include_expsyms], [1], [Symbols that must always be exported]) _LT_TAGDECL([], [prelink_cmds], [2], [Commands necessary for linking programs (against libraries) with templates]) _LT_TAGDECL([], [file_list_spec], [1], [Specify filename containing input files]) dnl FIXME: Not yet implemented dnl _LT_TAGDECL([], [thread_safe_flag_spec], [1], dnl [Compiler flag to generate thread safe objects]) ])# _LT_LINKER_SHLIBS # _LT_LANG_C_CONFIG([TAG]) # ------------------------ # Ensure that the configuration variables for a C compiler are suitably # defined. These variables are subsequently used by _LT_CONFIG to write # the compiler configuration to `libtool'. m4_defun([_LT_LANG_C_CONFIG], [m4_require([_LT_DECL_EGREP])dnl lt_save_CC="$CC" AC_LANG_PUSH(C) # Source file extension for C test sources. ac_ext=c # Object file extension for compiled C test sources. objext=o _LT_TAGVAR(objext, $1)=$objext # Code to be used in simple compile tests lt_simple_compile_test_code="int some_variable = 0;" # Code to be used in simple link tests lt_simple_link_test_code='int main(){return(0);}' _LT_TAG_COMPILER # Save the default compiler, since it gets overwritten when the other # tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP. compiler_DEFAULT=$CC # save warnings/boilerplate of simple test code _LT_COMPILER_BOILERPLATE _LT_LINKER_BOILERPLATE if test -n "$compiler"; then _LT_COMPILER_NO_RTTI($1) _LT_COMPILER_PIC($1) _LT_COMPILER_C_O($1) _LT_COMPILER_FILE_LOCKS($1) _LT_LINKER_SHLIBS($1) _LT_SYS_DYNAMIC_LINKER($1) _LT_LINKER_HARDCODE_LIBPATH($1) LT_SYS_DLOPEN_SELF _LT_CMD_STRIPLIB # Report which library types will actually be built AC_MSG_CHECKING([if libtool supports shared libraries]) AC_MSG_RESULT([$can_build_shared]) AC_MSG_CHECKING([whether to build shared libraries]) test "$can_build_shared" = "no" && enable_shared=no # On AIX, shared libraries and static libraries use the same namespace, and # are all built from PIC. case $host_os in aix3*) test "$enable_shared" = yes && enable_static=no if test -n "$RANLIB"; then archive_cmds="$archive_cmds~\$RANLIB \$lib" postinstall_cmds='$RANLIB $lib' fi ;; aix[[4-9]]*) if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then test "$enable_shared" = yes && enable_static=no fi ;; esac AC_MSG_RESULT([$enable_shared]) AC_MSG_CHECKING([whether to build static libraries]) # Make sure either enable_shared or enable_static is yes. test "$enable_shared" = yes || enable_static=yes AC_MSG_RESULT([$enable_static]) _LT_CONFIG($1) fi AC_LANG_POP CC="$lt_save_CC" ])# _LT_LANG_C_CONFIG # _LT_PROG_CXX # ------------ # Since AC_PROG_CXX is broken, in that it returns g++ if there is no c++ # compiler, we have our own version here. m4_defun([_LT_PROG_CXX], [ pushdef([AC_MSG_ERROR], [_lt_caught_CXX_error=yes]) AC_PROG_CXX if test -n "$CXX" && ( test "X$CXX" != "Xno" && ( (test "X$CXX" = "Xg++" && `g++ -v >/dev/null 2>&1` ) || (test "X$CXX" != "Xg++"))) ; then AC_PROG_CXXCPP else _lt_caught_CXX_error=yes fi popdef([AC_MSG_ERROR]) ])# _LT_PROG_CXX dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([_LT_PROG_CXX], []) # _LT_LANG_CXX_CONFIG([TAG]) # -------------------------- # Ensure that the configuration variables for a C++ compiler are suitably # defined. These variables are subsequently used by _LT_CONFIG to write # the compiler configuration to `libtool'. m4_defun([_LT_LANG_CXX_CONFIG], [AC_REQUIRE([_LT_PROG_CXX])dnl m4_require([_LT_FILEUTILS_DEFAULTS])dnl m4_require([_LT_DECL_EGREP])dnl AC_LANG_PUSH(C++) _LT_TAGVAR(archive_cmds_need_lc, $1)=no _LT_TAGVAR(allow_undefined_flag, $1)= _LT_TAGVAR(always_export_symbols, $1)=no _LT_TAGVAR(archive_expsym_cmds, $1)= _LT_TAGVAR(compiler_needs_object, $1)=no _LT_TAGVAR(export_dynamic_flag_spec, $1)= _LT_TAGVAR(hardcode_direct, $1)=no _LT_TAGVAR(hardcode_direct_absolute, $1)=no _LT_TAGVAR(hardcode_libdir_flag_spec, $1)= _LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)= _LT_TAGVAR(hardcode_libdir_separator, $1)= _LT_TAGVAR(hardcode_minus_L, $1)=no _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported _LT_TAGVAR(hardcode_automatic, $1)=no _LT_TAGVAR(inherit_rpath, $1)=no _LT_TAGVAR(module_cmds, $1)= _LT_TAGVAR(module_expsym_cmds, $1)= _LT_TAGVAR(link_all_deplibs, $1)=unknown _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds _LT_TAGVAR(no_undefined_flag, $1)= _LT_TAGVAR(whole_archive_flag_spec, $1)= _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no # Source file extension for C++ test sources. ac_ext=cpp # Object file extension for compiled C++ test sources. objext=o _LT_TAGVAR(objext, $1)=$objext # No sense in running all these tests if we already determined that # the CXX compiler isn't working. Some variables (like enable_shared) # are currently assumed to apply to all compilers on this platform, # and will be corrupted by setting them based on a non-working compiler. if test "$_lt_caught_CXX_error" != yes; then # Code to be used in simple compile tests lt_simple_compile_test_code="int some_variable = 0;" # Code to be used in simple link tests lt_simple_link_test_code='int main(int, char *[[]]) { return(0); }' # ltmain only uses $CC for tagged configurations so make sure $CC is set. _LT_TAG_COMPILER # save warnings/boilerplate of simple test code _LT_COMPILER_BOILERPLATE _LT_LINKER_BOILERPLATE # Allow CC to be a program name with arguments. lt_save_CC=$CC lt_save_LD=$LD lt_save_GCC=$GCC GCC=$GXX lt_save_with_gnu_ld=$with_gnu_ld lt_save_path_LD=$lt_cv_path_LD if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx else $as_unset lt_cv_prog_gnu_ld fi if test -n "${lt_cv_path_LDCXX+set}"; then lt_cv_path_LD=$lt_cv_path_LDCXX else $as_unset lt_cv_path_LD fi test -z "${LDCXX+set}" || LD=$LDCXX CC=${CXX-"c++"} compiler=$CC _LT_TAGVAR(compiler, $1)=$CC _LT_CC_BASENAME([$compiler]) if test -n "$compiler"; then # We don't want -fno-exception when compiling C++ code, so set the # no_builtin_flag separately if test "$GXX" = yes; then _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' else _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)= fi if test "$GXX" = yes; then # Set up default GNU C++ configuration LT_PATH_LD # Check if GNU C++ uses GNU ld as the underlying linker, since the # archiving commands below assume that GNU ld is being used. if test "$with_gnu_ld" = yes; then _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' # If archive_cmds runs LD, not CC, wlarc should be empty # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to # investigate it a little bit more. (MM) wlarc='${wl}' # ancient GNU ld didn't support --whole-archive et. al. if eval "`$CC -print-prog-name=ld` --help 2>&1" | $GREP 'no-whole-archive' > /dev/null; then _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' else _LT_TAGVAR(whole_archive_flag_spec, $1)= fi else with_gnu_ld=no wlarc= # A generic and very simple default shared library creation # command for GNU C++ for the case where it uses the native # linker, instead of GNU ld. If possible, this setting should # overridden to take advantage of the native linker features on # the platform it is being used on. _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib' fi # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when # linking a shared library. output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"' else GXX=no with_gnu_ld=no wlarc= fi # PORTME: fill in a description of your system's C++ link characteristics AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries]) _LT_TAGVAR(ld_shlibs, $1)=yes case $host_os in aix3*) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; aix[[4-9]]*) if test "$host_cpu" = ia64; then # On IA64, the linker does run time linking by default, so we don't # have to do anything special. aix_use_runtimelinking=no exp_sym_flag='-Bexport' no_entry_flag="" else aix_use_runtimelinking=no # Test if we are trying to use run time linking or normal # AIX style linking. If -brtl is somewhere in LDFLAGS, we # need to do runtime linking. case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*) for ld_flag in $LDFLAGS; do case $ld_flag in *-brtl*) aix_use_runtimelinking=yes break ;; esac done ;; esac exp_sym_flag='-bexport' no_entry_flag='-bnoentry' fi # When large executables or shared objects are built, AIX ld can # have problems creating the table of contents. If linking a library # or program results in "error TOC overflow" add -mminimal-toc to # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. _LT_TAGVAR(archive_cmds, $1)='' _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_direct_absolute, $1)=yes _LT_TAGVAR(hardcode_libdir_separator, $1)=':' _LT_TAGVAR(link_all_deplibs, $1)=yes _LT_TAGVAR(file_list_spec, $1)='${wl}-f,' if test "$GXX" = yes; then case $host_os in aix4.[[012]]|aix4.[[012]].*) # We only want to do this on AIX 4.2 and lower, the check # below for broken collect2 doesn't work under 4.3+ collect2name=`${CC} -print-prog-name=collect2` if test -f "$collect2name" && strings "$collect2name" | $GREP resolve_lib_name >/dev/null then # We have reworked collect2 : else # We have old collect2 _LT_TAGVAR(hardcode_direct, $1)=unsupported # It fails to find uninstalled libraries when the uninstalled # path is not listed in the libpath. Setting hardcode_minus_L # to unsupported forces relinking _LT_TAGVAR(hardcode_minus_L, $1)=yes _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)= fi esac shared_flag='-shared' if test "$aix_use_runtimelinking" = yes; then shared_flag="$shared_flag "'${wl}-G' fi else # not using gcc if test "$host_cpu" = ia64; then # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release # chokes on -Wl,-G. The following line is correct: shared_flag='-G' else if test "$aix_use_runtimelinking" = yes; then shared_flag='${wl}-G' else shared_flag='${wl}-bM:SRE' fi fi fi _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall' # It seems that -bexpall does not export symbols beginning with # underscore (_), so it is better to generate a list of symbols to # export. _LT_TAGVAR(always_export_symbols, $1)=yes if test "$aix_use_runtimelinking" = yes; then # Warning - without using the other runtime loading flags (-brtl), # -berok will link without error, but may produce a broken library. _LT_TAGVAR(allow_undefined_flag, $1)='-berok' # Determine the default libpath from the value encoded in an empty # executable. _LT_SYS_MODULE_PATH_AIX _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then $ECHO "X${wl}${allow_undefined_flag}" | $Xsed; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag" else if test "$host_cpu" = ia64; then _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib' _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs" _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols" else # Determine the default libpath from the value encoded in an # empty executable. _LT_SYS_MODULE_PATH_AIX _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" # Warning - without using the other run time loading flags, # -berok will link without error, but may produce a broken library. _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok' _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok' # Exported symbols can be pulled into shared objects from archives _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience' _LT_TAGVAR(archive_cmds_need_lc, $1)=yes # This is similar to how AIX traditionally builds its shared # libraries. _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname' fi fi ;; beos*) if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then _LT_TAGVAR(allow_undefined_flag, $1)=unsupported # Joseph Beckenbach <jrb3@best.com> says some releases of gcc # support --undefined. This deserves some investigation. FIXME _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' else _LT_TAGVAR(ld_shlibs, $1)=no fi ;; chorus*) case $cc_basename in *) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; esac ;; cygwin* | mingw* | pw32* | cegcc*) # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless, # as there is no search path for DLLs. _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' _LT_TAGVAR(allow_undefined_flag, $1)=unsupported _LT_TAGVAR(always_export_symbols, $1)=no _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' # If the export-symbols file already is a .def file (1st line # is EXPORTS), use it as is; otherwise, prepend... _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then cp $export_symbols $output_objdir/$soname.def; else echo EXPORTS > $output_objdir/$soname.def; cat $export_symbols >> $output_objdir/$soname.def; fi~ $CC -shared -nostdlib $output_objdir/$soname.def $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' else _LT_TAGVAR(ld_shlibs, $1)=no fi ;; darwin* | rhapsody*) _LT_DARWIN_LINKER_FEATURES($1) ;; dgux*) case $cc_basename in ec++*) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; ghcx*) # Green Hills C++ Compiler # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; *) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; esac ;; freebsd[[12]]*) # C++ shared libraries reported to be fairly broken before # switch to ELF _LT_TAGVAR(ld_shlibs, $1)=no ;; freebsd-elf*) _LT_TAGVAR(archive_cmds_need_lc, $1)=no ;; freebsd* | dragonfly*) # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF # conventions _LT_TAGVAR(ld_shlibs, $1)=yes ;; gnu*) ;; hpux9*) _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH, # but as the default # location of the library. case $cc_basename in CC*) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; aCC*) _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -b ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when # linking a shared library. # # There doesn't appear to be a way to prevent this compiler from # explicitly linking system object files so we need to strip them # from the output so that they don't get included in the library # dependencies. output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $EGREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed' ;; *) if test "$GXX" = yes; then _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared -nostdlib -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' else # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no fi ;; esac ;; hpux10*|hpux11*) if test $with_gnu_ld = no; then _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: case $host_cpu in hppa*64*|ia64*) ;; *) _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' ;; esac fi case $host_cpu in hppa*64*|ia64*) _LT_TAGVAR(hardcode_direct, $1)=no _LT_TAGVAR(hardcode_shlibpath_var, $1)=no ;; *) _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_direct_absolute, $1)=yes _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH, # but as the default # location of the library. ;; esac case $cc_basename in CC*) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; aCC*) case $host_cpu in hppa*64*) _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' ;; ia64*) _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' ;; *) _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' ;; esac # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when # linking a shared library. # # There doesn't appear to be a way to prevent this compiler from # explicitly linking system object files so we need to strip them # from the output so that they don't get included in the library # dependencies. output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $GREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed' ;; *) if test "$GXX" = yes; then if test $with_gnu_ld = no; then case $host_cpu in hppa*64*) _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' ;; ia64*) _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' ;; *) _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' ;; esac fi else # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no fi ;; esac ;; interix[[3-9]]*) _LT_TAGVAR(hardcode_direct, $1)=no _LT_TAGVAR(hardcode_shlibpath_var, $1)=no _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc. # Instead, shared libraries are loaded at an image base (0x10000000 by # default) and relocated if they conflict, which is a slow very memory # consuming and fragmenting process. To avoid this, we pick a random, # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link # time. Moving up from 0x10000000 also allows more sbrk(2) space. _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' ;; irix5* | irix6*) case $cc_basename in CC*) # SGI C++ _LT_TAGVAR(archive_cmds, $1)='$CC -shared -all -multigot $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib' # Archives containing C++ object files must be created using # "CC -ar", where "CC" is the IRIX C++ compiler. This is # necessary to make sure instantiated templates are included # in the archive. _LT_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs' ;; *) if test "$GXX" = yes; then if test "$with_gnu_ld" = no; then _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' else _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` -o $lib' fi fi _LT_TAGVAR(link_all_deplibs, $1)=yes ;; esac _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: _LT_TAGVAR(inherit_rpath, $1)=yes ;; linux* | k*bsd*-gnu) case $cc_basename in KCC*) # Kuck and Associates, Inc. (KAI) C++ Compiler # KCC will only create a shared library if the output file # ends with ".so" (or ".sl" for HP-UX), so rename the library # to its proper name (with version) after linking. _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib ${wl}-retain-symbols-file,$export_symbols; mv \$templib $lib' # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when # linking a shared library. # # There doesn't appear to be a way to prevent this compiler from # explicitly linking system object files so we need to strip them # from the output so that they don't get included in the library # dependencies. output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 | $GREP "ld"`; rm -f libconftest$shared_ext; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' # Archives containing C++ object files must be created using # "CC -Bstatic", where "CC" is the KAI C++ compiler. _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' ;; icpc* | ecpc* ) # Intel C++ with_gnu_ld=yes # version 8.0 and above of icpc choke on multiply defined symbols # if we add $predep_objects and $postdep_objects, however 7.1 and # earlier do not add the objects themselves. case `$CC -V 2>&1` in *"Version 7."*) _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' ;; *) # Version 8.0 or newer tmp_idyn= case $host_cpu in ia64*) tmp_idyn=' -i_dynamic';; esac _LT_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' ;; esac _LT_TAGVAR(archive_cmds_need_lc, $1)=no _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive' ;; pgCC* | pgcpp*) # Portland Group C++ compiler case `$CC -V` in *pgCC\ [[1-5]]* | *pgcpp\ [[1-5]]*) _LT_TAGVAR(prelink_cmds, $1)='tpldir=Template.dir~ rm -rf $tpldir~ $CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~ compile_command="$compile_command `find $tpldir -name \*.o | $NL2SP`"' _LT_TAGVAR(old_archive_cmds, $1)='tpldir=Template.dir~ rm -rf $tpldir~ $CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~ $AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | $NL2SP`~ $RANLIB $oldlib' _LT_TAGVAR(archive_cmds, $1)='tpldir=Template.dir~ rm -rf $tpldir~ $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~ $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='tpldir=Template.dir~ rm -rf $tpldir~ $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~ $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib' ;; *) # Version 6 will use weak symbols _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib' ;; esac _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir' _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive' ;; cxx*) # Compaq C++ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib ${wl}-retain-symbols-file $wl$export_symbols' runpath_var=LD_RUN_PATH _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when # linking a shared library. # # There doesn't appear to be a way to prevent this compiler from # explicitly linking system object files so we need to strip them # from the output so that they don't get included in the library # dependencies. output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld"`; templist=`$ECHO "X$templist" | $Xsed -e "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed' ;; xl*) # IBM XL 8.0 on PPC, with GNU ld _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' _LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' if test "x$supports_anon_versioning" = xyes; then _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~ cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ echo "local: *; };" >> $output_objdir/$libname.ver~ $CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib' fi ;; *) case `$CC -V 2>&1 | sed 5q` in *Sun\ C*) # Sun C++ 5.9 _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs' _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file ${wl}$export_symbols' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive' _LT_TAGVAR(compiler_needs_object, $1)=yes # Not sure whether something based on # $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 # would be better. output_verbose_link_cmd='echo' # Archives containing C++ object files must be created using # "CC -xar", where "CC" is the Sun C++ compiler. This is # necessary to make sure instantiated templates are included # in the archive. _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs' ;; esac ;; esac ;; lynxos*) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; m88k*) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; mvs*) case $cc_basename in cxx*) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; *) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; esac ;; netbsd*) if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags' wlarc= _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_shlibpath_var, $1)=no fi # Workaround some broken pre-1.5 toolchains output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"' ;; *nto* | *qnx*) _LT_TAGVAR(ld_shlibs, $1)=yes ;; openbsd2*) # C++ shared libraries are fairly broken _LT_TAGVAR(ld_shlibs, $1)=no ;; openbsd*) if test -f /usr/libexec/ld.so; then _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_shlibpath_var, $1)=no _LT_TAGVAR(hardcode_direct_absolute, $1)=yes _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file,$export_symbols -o $lib' _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' fi output_verbose_link_cmd=echo else _LT_TAGVAR(ld_shlibs, $1)=no fi ;; osf3* | osf4* | osf5*) case $cc_basename in KCC*) # Kuck and Associates, Inc. (KAI) C++ Compiler # KCC will only create a shared library if the output file # ends with ".so" (or ".sl" for HP-UX), so rename the library # to its proper name (with version) after linking. _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo "$lib" | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: # Archives containing C++ object files must be created using # the KAI C++ compiler. case $host in osf3*) _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' ;; *) _LT_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs' ;; esac ;; RCC*) # Rational C++ 2.4.1 # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; cxx*) case $host in osf3*) _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $soname `test -n "$verstring" && $ECHO "X${wl}-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' ;; *) _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~ echo "-hidden">> $lib.exp~ $CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname ${wl}-input ${wl}$lib.exp `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib~ $RM $lib.exp' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' ;; esac _LT_TAGVAR(hardcode_libdir_separator, $1)=: # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when # linking a shared library. # # There doesn't appear to be a way to prevent this compiler from # explicitly linking system object files so we need to strip them # from the output so that they don't get included in the library # dependencies. output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld" | $GREP -v "ld:"`; templist=`$ECHO "X$templist" | $Xsed -e "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed' ;; *) if test "$GXX" = yes && test "$with_gnu_ld" = no; then _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' case $host in osf3*) _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' ;; *) _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' ;; esac _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when # linking a shared library. output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"' else # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no fi ;; esac ;; psos*) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; sunos4*) case $cc_basename in CC*) # Sun C++ 4.x # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; lcc*) # Lucid # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; *) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; esac ;; solaris*) case $cc_basename in CC*) # Sun C++ 4.2, 5.x and Centerline C++ _LT_TAGVAR(archive_cmds_need_lc,$1)=yes _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs' _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ $CC -G${allow_undefined_flag} ${wl}-M ${wl}$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' _LT_TAGVAR(hardcode_shlibpath_var, $1)=no case $host_os in solaris2.[[0-5]] | solaris2.[[0-5]].*) ;; *) # The compiler driver will combine and reorder linker options, # but understands `-z linker_flag'. # Supported since Solaris 2.6 (maybe 2.5.1?) _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract' ;; esac _LT_TAGVAR(link_all_deplibs, $1)=yes output_verbose_link_cmd='echo' # Archives containing C++ object files must be created using # "CC -xar", where "CC" is the Sun C++ compiler. This is # necessary to make sure instantiated templates are included # in the archive. _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs' ;; gcx*) # Green Hills C++ Compiler _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib' # The C++ compiler must be used to create the archive. _LT_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs' ;; *) # GNU C++ compiler with Solaris linker if test "$GXX" = yes && test "$with_gnu_ld" = no; then _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-z ${wl}defs' if $CC --version | $GREP -v '^2\.7' > /dev/null; then _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ $CC -shared -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp' # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when # linking a shared library. output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"' else # g++ 2.7 appears to require `-G' NOT `-shared' on this # platform. _LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ $CC -G -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp' # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when # linking a shared library. output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"' fi _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $wl$libdir' case $host_os in solaris2.[[0-5]] | solaris2.[[0-5]].*) ;; *) _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract' ;; esac fi ;; esac ;; sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*) _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text' _LT_TAGVAR(archive_cmds_need_lc, $1)=no _LT_TAGVAR(hardcode_shlibpath_var, $1)=no runpath_var='LD_RUN_PATH' case $cc_basename in CC*) _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' ;; *) _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' ;; esac ;; sysv5* | sco3.2v5* | sco5v6*) # Note: We can NOT use -z defs as we might desire, because we do not # link with -lc, and that would cause any symbols used from libc to # always be unresolved, which means just about no library would # ever link correctly. If we're not using GNU ld we use -z text # though, which does catch some bad symbols but isn't as heavy-handed # as -z defs. _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text' _LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs' _LT_TAGVAR(archive_cmds_need_lc, $1)=no _LT_TAGVAR(hardcode_shlibpath_var, $1)=no _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=':' _LT_TAGVAR(link_all_deplibs, $1)=yes _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport' runpath_var='LD_RUN_PATH' case $cc_basename in CC*) _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' ;; *) _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' ;; esac ;; tandem*) case $cc_basename in NCC*) # NonStop-UX NCC 3.20 # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; *) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; esac ;; vxworks*) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; *) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; esac AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)]) test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no _LT_TAGVAR(GCC, $1)="$GXX" _LT_TAGVAR(LD, $1)="$LD" ## CAVEAT EMPTOR: ## There is no encapsulation within the following macros, do not change ## the running order or otherwise move them around unless you know exactly ## what you are doing... _LT_SYS_HIDDEN_LIBDEPS($1) _LT_COMPILER_PIC($1) _LT_COMPILER_C_O($1) _LT_COMPILER_FILE_LOCKS($1) _LT_LINKER_SHLIBS($1) _LT_SYS_DYNAMIC_LINKER($1) _LT_LINKER_HARDCODE_LIBPATH($1) _LT_CONFIG($1) fi # test -n "$compiler" CC=$lt_save_CC LDCXX=$LD LD=$lt_save_LD GCC=$lt_save_GCC with_gnu_ld=$lt_save_with_gnu_ld lt_cv_path_LDCXX=$lt_cv_path_LD lt_cv_path_LD=$lt_save_path_LD lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld fi # test "$_lt_caught_CXX_error" != yes AC_LANG_POP ])# _LT_LANG_CXX_CONFIG # _LT_SYS_HIDDEN_LIBDEPS([TAGNAME]) # --------------------------------- # Figure out "hidden" library dependencies from verbose # compiler output when linking a shared library. # Parse the compiler output and extract the necessary # objects, libraries and library flags. m4_defun([_LT_SYS_HIDDEN_LIBDEPS], [m4_require([_LT_FILEUTILS_DEFAULTS])dnl # Dependencies to place before and after the object being linked: _LT_TAGVAR(predep_objects, $1)= _LT_TAGVAR(postdep_objects, $1)= _LT_TAGVAR(predeps, $1)= _LT_TAGVAR(postdeps, $1)= _LT_TAGVAR(compiler_lib_search_path, $1)= dnl we can't use the lt_simple_compile_test_code here, dnl because it contains code intended for an executable, dnl not a library. It's possible we should let each dnl tag define a new lt_????_link_test_code variable, dnl but it's only used here... m4_if([$1], [], [cat > conftest.$ac_ext <<_LT_EOF int a; void foo (void) { a = 0; } _LT_EOF ], [$1], [CXX], [cat > conftest.$ac_ext <<_LT_EOF class Foo { public: Foo (void) { a = 0; } private: int a; }; _LT_EOF ], [$1], [F77], [cat > conftest.$ac_ext <<_LT_EOF subroutine foo implicit none integer*4 a a=0 return end _LT_EOF ], [$1], [FC], [cat > conftest.$ac_ext <<_LT_EOF subroutine foo implicit none integer a a=0 return end _LT_EOF ], [$1], [GCJ], [cat > conftest.$ac_ext <<_LT_EOF public class foo { private int a; public void bar (void) { a = 0; } }; _LT_EOF ]) dnl Parse the compiler output and extract the necessary dnl objects, libraries and library flags. if AC_TRY_EVAL(ac_compile); then # Parse the compiler output and extract the necessary # objects, libraries and library flags. # Sentinel used to keep track of whether or not we are before # the conftest object file. pre_test_object_deps_done=no for p in `eval "$output_verbose_link_cmd"`; do case $p in -L* | -R* | -l*) # Some compilers place space between "-{L,R}" and the path. # Remove the space. if test $p = "-L" || test $p = "-R"; then prev=$p continue else prev= fi if test "$pre_test_object_deps_done" = no; then case $p in -L* | -R*) # Internal compiler library paths should come after those # provided the user. The postdeps already come after the # user supplied libs so there is no need to process them. if test -z "$_LT_TAGVAR(compiler_lib_search_path, $1)"; then _LT_TAGVAR(compiler_lib_search_path, $1)="${prev}${p}" else _LT_TAGVAR(compiler_lib_search_path, $1)="${_LT_TAGVAR(compiler_lib_search_path, $1)} ${prev}${p}" fi ;; # The "-l" case would never come before the object being # linked, so don't bother handling this case. esac else if test -z "$_LT_TAGVAR(postdeps, $1)"; then _LT_TAGVAR(postdeps, $1)="${prev}${p}" else _LT_TAGVAR(postdeps, $1)="${_LT_TAGVAR(postdeps, $1)} ${prev}${p}" fi fi ;; *.$objext) # This assumes that the test object file only shows up # once in the compiler output. if test "$p" = "conftest.$objext"; then pre_test_object_deps_done=yes continue fi if test "$pre_test_object_deps_done" = no; then if test -z "$_LT_TAGVAR(predep_objects, $1)"; then _LT_TAGVAR(predep_objects, $1)="$p" else _LT_TAGVAR(predep_objects, $1)="$_LT_TAGVAR(predep_objects, $1) $p" fi else if test -z "$_LT_TAGVAR(postdep_objects, $1)"; then _LT_TAGVAR(postdep_objects, $1)="$p" else _LT_TAGVAR(postdep_objects, $1)="$_LT_TAGVAR(postdep_objects, $1) $p" fi fi ;; *) ;; # Ignore the rest. esac done # Clean up. rm -f a.out a.exe else echo "libtool.m4: error: problem compiling $1 test program" fi $RM -f confest.$objext # PORTME: override above test on systems where it is broken m4_if([$1], [CXX], [case $host_os in interix[[3-9]]*) # Interix 3.5 installs completely hosed .la files for C++, so rather than # hack all around it, let's just trust "g++" to DTRT. _LT_TAGVAR(predep_objects,$1)= _LT_TAGVAR(postdep_objects,$1)= _LT_TAGVAR(postdeps,$1)= ;; linux*) case `$CC -V 2>&1 | sed 5q` in *Sun\ C*) # Sun C++ 5.9 # The more standards-conforming stlport4 library is # incompatible with the Cstd library. Avoid specifying # it if it's in CXXFLAGS. Ignore libCrun as # -library=stlport4 depends on it. case " $CXX $CXXFLAGS " in *" -library=stlport4 "*) solaris_use_stlport4=yes ;; esac if test "$solaris_use_stlport4" != yes; then _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun' fi ;; esac ;; solaris*) case $cc_basename in CC*) # The more standards-conforming stlport4 library is # incompatible with the Cstd library. Avoid specifying # it if it's in CXXFLAGS. Ignore libCrun as # -library=stlport4 depends on it. case " $CXX $CXXFLAGS " in *" -library=stlport4 "*) solaris_use_stlport4=yes ;; esac # Adding this requires a known-good setup of shared libraries for # Sun compiler versions before 5.6, else PIC objects from an old # archive will be linked into the output, leading to subtle bugs. if test "$solaris_use_stlport4" != yes; then _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun' fi ;; esac ;; esac ]) case " $_LT_TAGVAR(postdeps, $1) " in *" -lc "*) _LT_TAGVAR(archive_cmds_need_lc, $1)=no ;; esac _LT_TAGVAR(compiler_lib_search_dirs, $1)= if test -n "${_LT_TAGVAR(compiler_lib_search_path, $1)}"; then _LT_TAGVAR(compiler_lib_search_dirs, $1)=`echo " ${_LT_TAGVAR(compiler_lib_search_path, $1)}" | ${SED} -e 's! -L! !g' -e 's!^ !!'` fi _LT_TAGDECL([], [compiler_lib_search_dirs], [1], [The directories searched by this compiler when creating a shared library]) _LT_TAGDECL([], [predep_objects], [1], [Dependencies to place before and after the objects being linked to create a shared library]) _LT_TAGDECL([], [postdep_objects], [1]) _LT_TAGDECL([], [predeps], [1]) _LT_TAGDECL([], [postdeps], [1]) _LT_TAGDECL([], [compiler_lib_search_path], [1], [The library search path used internally by the compiler when linking a shared library]) ])# _LT_SYS_HIDDEN_LIBDEPS # _LT_PROG_F77 # ------------ # Since AC_PROG_F77 is broken, in that it returns the empty string # if there is no fortran compiler, we have our own version here. m4_defun([_LT_PROG_F77], [ pushdef([AC_MSG_ERROR], [_lt_disable_F77=yes]) AC_PROG_F77 if test -z "$F77" || test "X$F77" = "Xno"; then _lt_disable_F77=yes fi popdef([AC_MSG_ERROR]) ])# _LT_PROG_F77 dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([_LT_PROG_F77], []) # _LT_LANG_F77_CONFIG([TAG]) # -------------------------- # Ensure that the configuration variables for a Fortran 77 compiler are # suitably defined. These variables are subsequently used by _LT_CONFIG # to write the compiler configuration to `libtool'. m4_defun([_LT_LANG_F77_CONFIG], [AC_REQUIRE([_LT_PROG_F77])dnl AC_LANG_PUSH(Fortran 77) _LT_TAGVAR(archive_cmds_need_lc, $1)=no _LT_TAGVAR(allow_undefined_flag, $1)= _LT_TAGVAR(always_export_symbols, $1)=no _LT_TAGVAR(archive_expsym_cmds, $1)= _LT_TAGVAR(export_dynamic_flag_spec, $1)= _LT_TAGVAR(hardcode_direct, $1)=no _LT_TAGVAR(hardcode_direct_absolute, $1)=no _LT_TAGVAR(hardcode_libdir_flag_spec, $1)= _LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)= _LT_TAGVAR(hardcode_libdir_separator, $1)= _LT_TAGVAR(hardcode_minus_L, $1)=no _LT_TAGVAR(hardcode_automatic, $1)=no _LT_TAGVAR(inherit_rpath, $1)=no _LT_TAGVAR(module_cmds, $1)= _LT_TAGVAR(module_expsym_cmds, $1)= _LT_TAGVAR(link_all_deplibs, $1)=unknown _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds _LT_TAGVAR(no_undefined_flag, $1)= _LT_TAGVAR(whole_archive_flag_spec, $1)= _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no # Source file extension for f77 test sources. ac_ext=f # Object file extension for compiled f77 test sources. objext=o _LT_TAGVAR(objext, $1)=$objext # No sense in running all these tests if we already determined that # the F77 compiler isn't working. Some variables (like enable_shared) # are currently assumed to apply to all compilers on this platform, # and will be corrupted by setting them based on a non-working compiler. if test "$_lt_disable_F77" != yes; then # Code to be used in simple compile tests lt_simple_compile_test_code="\ subroutine t return end " # Code to be used in simple link tests lt_simple_link_test_code="\ program t end " # ltmain only uses $CC for tagged configurations so make sure $CC is set. _LT_TAG_COMPILER # save warnings/boilerplate of simple test code _LT_COMPILER_BOILERPLATE _LT_LINKER_BOILERPLATE # Allow CC to be a program name with arguments. lt_save_CC="$CC" lt_save_GCC=$GCC CC=${F77-"f77"} compiler=$CC _LT_TAGVAR(compiler, $1)=$CC _LT_CC_BASENAME([$compiler]) GCC=$G77 if test -n "$compiler"; then AC_MSG_CHECKING([if libtool supports shared libraries]) AC_MSG_RESULT([$can_build_shared]) AC_MSG_CHECKING([whether to build shared libraries]) test "$can_build_shared" = "no" && enable_shared=no # On AIX, shared libraries and static libraries use the same namespace, and # are all built from PIC. case $host_os in aix3*) test "$enable_shared" = yes && enable_static=no if test -n "$RANLIB"; then archive_cmds="$archive_cmds~\$RANLIB \$lib" postinstall_cmds='$RANLIB $lib' fi ;; aix[[4-9]]*) if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then test "$enable_shared" = yes && enable_static=no fi ;; esac AC_MSG_RESULT([$enable_shared]) AC_MSG_CHECKING([whether to build static libraries]) # Make sure either enable_shared or enable_static is yes. test "$enable_shared" = yes || enable_static=yes AC_MSG_RESULT([$enable_static]) _LT_TAGVAR(GCC, $1)="$G77" _LT_TAGVAR(LD, $1)="$LD" ## CAVEAT EMPTOR: ## There is no encapsulation within the following macros, do not change ## the running order or otherwise move them around unless you know exactly ## what you are doing... _LT_COMPILER_PIC($1) _LT_COMPILER_C_O($1) _LT_COMPILER_FILE_LOCKS($1) _LT_LINKER_SHLIBS($1) _LT_SYS_DYNAMIC_LINKER($1) _LT_LINKER_HARDCODE_LIBPATH($1) _LT_CONFIG($1) fi # test -n "$compiler" GCC=$lt_save_GCC CC="$lt_save_CC" fi # test "$_lt_disable_F77" != yes AC_LANG_POP ])# _LT_LANG_F77_CONFIG # _LT_PROG_FC # ----------- # Since AC_PROG_FC is broken, in that it returns the empty string # if there is no fortran compiler, we have our own version here. m4_defun([_LT_PROG_FC], [ pushdef([AC_MSG_ERROR], [_lt_disable_FC=yes]) AC_PROG_FC if test -z "$FC" || test "X$FC" = "Xno"; then _lt_disable_FC=yes fi popdef([AC_MSG_ERROR]) ])# _LT_PROG_FC dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([_LT_PROG_FC], []) # _LT_LANG_FC_CONFIG([TAG]) # ------------------------- # Ensure that the configuration variables for a Fortran compiler are # suitably defined. These variables are subsequently used by _LT_CONFIG # to write the compiler configuration to `libtool'. m4_defun([_LT_LANG_FC_CONFIG], [AC_REQUIRE([_LT_PROG_FC])dnl AC_LANG_PUSH(Fortran) _LT_TAGVAR(archive_cmds_need_lc, $1)=no _LT_TAGVAR(allow_undefined_flag, $1)= _LT_TAGVAR(always_export_symbols, $1)=no _LT_TAGVAR(archive_expsym_cmds, $1)= _LT_TAGVAR(export_dynamic_flag_spec, $1)= _LT_TAGVAR(hardcode_direct, $1)=no _LT_TAGVAR(hardcode_direct_absolute, $1)=no _LT_TAGVAR(hardcode_libdir_flag_spec, $1)= _LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)= _LT_TAGVAR(hardcode_libdir_separator, $1)= _LT_TAGVAR(hardcode_minus_L, $1)=no _LT_TAGVAR(hardcode_automatic, $1)=no _LT_TAGVAR(inherit_rpath, $1)=no _LT_TAGVAR(module_cmds, $1)= _LT_TAGVAR(module_expsym_cmds, $1)= _LT_TAGVAR(link_all_deplibs, $1)=unknown _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds _LT_TAGVAR(no_undefined_flag, $1)= _LT_TAGVAR(whole_archive_flag_spec, $1)= _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no # Source file extension for fc test sources. ac_ext=${ac_fc_srcext-f} # Object file extension for compiled fc test sources. objext=o _LT_TAGVAR(objext, $1)=$objext # No sense in running all these tests if we already determined that # the FC compiler isn't working. Some variables (like enable_shared) # are currently assumed to apply to all compilers on this platform, # and will be corrupted by setting them based on a non-working compiler. if test "$_lt_disable_FC" != yes; then # Code to be used in simple compile tests lt_simple_compile_test_code="\ subroutine t return end " # Code to be used in simple link tests lt_simple_link_test_code="\ program t end " # ltmain only uses $CC for tagged configurations so make sure $CC is set. _LT_TAG_COMPILER # save warnings/boilerplate of simple test code _LT_COMPILER_BOILERPLATE _LT_LINKER_BOILERPLATE # Allow CC to be a program name with arguments. lt_save_CC="$CC" lt_save_GCC=$GCC CC=${FC-"f95"} compiler=$CC GCC=$ac_cv_fc_compiler_gnu _LT_TAGVAR(compiler, $1)=$CC _LT_CC_BASENAME([$compiler]) if test -n "$compiler"; then AC_MSG_CHECKING([if libtool supports shared libraries]) AC_MSG_RESULT([$can_build_shared]) AC_MSG_CHECKING([whether to build shared libraries]) test "$can_build_shared" = "no" && enable_shared=no # On AIX, shared libraries and static libraries use the same namespace, and # are all built from PIC. case $host_os in aix3*) test "$enable_shared" = yes && enable_static=no if test -n "$RANLIB"; then archive_cmds="$archive_cmds~\$RANLIB \$lib" postinstall_cmds='$RANLIB $lib' fi ;; aix[[4-9]]*) if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then test "$enable_shared" = yes && enable_static=no fi ;; esac AC_MSG_RESULT([$enable_shared]) AC_MSG_CHECKING([whether to build static libraries]) # Make sure either enable_shared or enable_static is yes. test "$enable_shared" = yes || enable_static=yes AC_MSG_RESULT([$enable_static]) _LT_TAGVAR(GCC, $1)="$ac_cv_fc_compiler_gnu" _LT_TAGVAR(LD, $1)="$LD" ## CAVEAT EMPTOR: ## There is no encapsulation within the following macros, do not change ## the running order or otherwise move them around unless you know exactly ## what you are doing... _LT_SYS_HIDDEN_LIBDEPS($1) _LT_COMPILER_PIC($1) _LT_COMPILER_C_O($1) _LT_COMPILER_FILE_LOCKS($1) _LT_LINKER_SHLIBS($1) _LT_SYS_DYNAMIC_LINKER($1) _LT_LINKER_HARDCODE_LIBPATH($1) _LT_CONFIG($1) fi # test -n "$compiler" GCC=$lt_save_GCC CC="$lt_save_CC" fi # test "$_lt_disable_FC" != yes AC_LANG_POP ])# _LT_LANG_FC_CONFIG # _LT_LANG_GCJ_CONFIG([TAG]) # -------------------------- # Ensure that the configuration variables for the GNU Java Compiler compiler # are suitably defined. These variables are subsequently used by _LT_CONFIG # to write the compiler configuration to `libtool'. m4_defun([_LT_LANG_GCJ_CONFIG], [AC_REQUIRE([LT_PROG_GCJ])dnl AC_LANG_SAVE # Source file extension for Java test sources. ac_ext=java # Object file extension for compiled Java test sources. objext=o _LT_TAGVAR(objext, $1)=$objext # Code to be used in simple compile tests lt_simple_compile_test_code="class foo {}" # Code to be used in simple link tests lt_simple_link_test_code='public class conftest { public static void main(String[[]] argv) {}; }' # ltmain only uses $CC for tagged configurations so make sure $CC is set. _LT_TAG_COMPILER # save warnings/boilerplate of simple test code _LT_COMPILER_BOILERPLATE _LT_LINKER_BOILERPLATE # Allow CC to be a program name with arguments. lt_save_CC="$CC" lt_save_GCC=$GCC GCC=yes CC=${GCJ-"gcj"} compiler=$CC _LT_TAGVAR(compiler, $1)=$CC _LT_TAGVAR(LD, $1)="$LD" _LT_CC_BASENAME([$compiler]) # GCJ did not exist at the time GCC didn't implicitly link libc in. _LT_TAGVAR(archive_cmds_need_lc, $1)=no _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds if test -n "$compiler"; then _LT_COMPILER_NO_RTTI($1) _LT_COMPILER_PIC($1) _LT_COMPILER_C_O($1) _LT_COMPILER_FILE_LOCKS($1) _LT_LINKER_SHLIBS($1) _LT_LINKER_HARDCODE_LIBPATH($1) _LT_CONFIG($1) fi AC_LANG_RESTORE GCC=$lt_save_GCC CC="$lt_save_CC" ])# _LT_LANG_GCJ_CONFIG # _LT_LANG_RC_CONFIG([TAG]) # ------------------------- # Ensure that the configuration variables for the Windows resource compiler # are suitably defined. These variables are subsequently used by _LT_CONFIG # to write the compiler configuration to `libtool'. m4_defun([_LT_LANG_RC_CONFIG], [AC_REQUIRE([LT_PROG_RC])dnl AC_LANG_SAVE # Source file extension for RC test sources. ac_ext=rc # Object file extension for compiled RC test sources. objext=o _LT_TAGVAR(objext, $1)=$objext # Code to be used in simple compile tests lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }' # Code to be used in simple link tests lt_simple_link_test_code="$lt_simple_compile_test_code" # ltmain only uses $CC for tagged configurations so make sure $CC is set. _LT_TAG_COMPILER # save warnings/boilerplate of simple test code _LT_COMPILER_BOILERPLATE _LT_LINKER_BOILERPLATE # Allow CC to be a program name with arguments. lt_save_CC="$CC" lt_save_GCC=$GCC GCC= CC=${RC-"windres"} compiler=$CC _LT_TAGVAR(compiler, $1)=$CC _LT_CC_BASENAME([$compiler]) _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes if test -n "$compiler"; then : _LT_CONFIG($1) fi GCC=$lt_save_GCC AC_LANG_RESTORE CC="$lt_save_CC" ])# _LT_LANG_RC_CONFIG # LT_PROG_GCJ # ----------- AC_DEFUN([LT_PROG_GCJ], [m4_ifdef([AC_PROG_GCJ], [AC_PROG_GCJ], [m4_ifdef([A][M_PROG_GCJ], [A][M_PROG_GCJ], [AC_CHECK_TOOL(GCJ, gcj,) test "x${GCJFLAGS+set}" = xset || GCJFLAGS="-g -O2" AC_SUBST(GCJFLAGS)])])[]dnl ]) # Old name: AU_ALIAS([LT_AC_PROG_GCJ], [LT_PROG_GCJ]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([LT_AC_PROG_GCJ], []) # LT_PROG_RC # ---------- AC_DEFUN([LT_PROG_RC], [AC_CHECK_TOOL(RC, windres,) ]) # Old name: AU_ALIAS([LT_AC_PROG_RC], [LT_PROG_RC]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([LT_AC_PROG_RC], []) # _LT_DECL_EGREP # -------------- # If we don't have a new enough Autoconf to choose the best grep # available, choose the one first in the user's PATH. m4_defun([_LT_DECL_EGREP], [AC_REQUIRE([AC_PROG_EGREP])dnl AC_REQUIRE([AC_PROG_FGREP])dnl test -z "$GREP" && GREP=grep _LT_DECL([], [GREP], [1], [A grep program that handles long lines]) _LT_DECL([], [EGREP], [1], [An ERE matcher]) _LT_DECL([], [FGREP], [1], [A literal string matcher]) dnl Non-bleeding-edge autoconf doesn't subst GREP, so do it here too AC_SUBST([GREP]) ]) # _LT_DECL_OBJDUMP # -------------- # If we don't have a new enough Autoconf to choose the best objdump # available, choose the one first in the user's PATH. m4_defun([_LT_DECL_OBJDUMP], [AC_CHECK_TOOL(OBJDUMP, objdump, false) test -z "$OBJDUMP" && OBJDUMP=objdump _LT_DECL([], [OBJDUMP], [1], [An object symbol dumper]) AC_SUBST([OBJDUMP]) ]) # _LT_DECL_SED # ------------ # Check for a fully-functional sed program, that truncates # as few characters as possible. Prefer GNU sed if found. m4_defun([_LT_DECL_SED], [AC_PROG_SED test -z "$SED" && SED=sed Xsed="$SED -e 1s/^X//" _LT_DECL([], [SED], [1], [A sed program that does not truncate output]) _LT_DECL([], [Xsed], ["\$SED -e 1s/^X//"], [Sed that helps us avoid accidentally triggering echo(1) options like -n]) ])# _LT_DECL_SED m4_ifndef([AC_PROG_SED], [ # NOTE: This macro has been submitted for inclusion into # # GNU Autoconf as AC_PROG_SED. When it is available in # # a released version of Autoconf we should remove this # # macro and use it instead. # m4_defun([AC_PROG_SED], [AC_MSG_CHECKING([for a sed that does not truncate output]) AC_CACHE_VAL(lt_cv_path_SED, [# Loop through the user's path and test for sed and gsed. # Then use that list of sed's as ones to test for truncation. as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for lt_ac_prog in sed gsed; do for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$lt_ac_prog$ac_exec_ext"; then lt_ac_sed_list="$lt_ac_sed_list $as_dir/$lt_ac_prog$ac_exec_ext" fi done done done IFS=$as_save_IFS lt_ac_max=0 lt_ac_count=0 # Add /usr/xpg4/bin/sed as it is typically found on Solaris # along with /bin/sed that truncates output. for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do test ! -f $lt_ac_sed && continue cat /dev/null > conftest.in lt_ac_count=0 echo $ECHO_N "0123456789$ECHO_C" >conftest.in # Check for GNU sed and select it if it is found. if "$lt_ac_sed" --version 2>&1 < /dev/null | grep 'GNU' > /dev/null; then lt_cv_path_SED=$lt_ac_sed break fi while true; do cat conftest.in conftest.in >conftest.tmp mv conftest.tmp conftest.in cp conftest.in conftest.nl echo >>conftest.nl $lt_ac_sed -e 's/a$//' < conftest.nl >conftest.out || break cmp -s conftest.out conftest.nl || break # 10000 chars as input seems more than enough test $lt_ac_count -gt 10 && break lt_ac_count=`expr $lt_ac_count + 1` if test $lt_ac_count -gt $lt_ac_max; then lt_ac_max=$lt_ac_count lt_cv_path_SED=$lt_ac_sed fi done done ]) SED=$lt_cv_path_SED AC_SUBST([SED]) AC_MSG_RESULT([$SED]) ])#AC_PROG_SED ])#m4_ifndef # Old name: AU_ALIAS([LT_AC_PROG_SED], [AC_PROG_SED]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([LT_AC_PROG_SED], []) # _LT_CHECK_SHELL_FEATURES # ------------------------ # Find out whether the shell is Bourne or XSI compatible, # or has some other useful features. m4_defun([_LT_CHECK_SHELL_FEATURES], [AC_MSG_CHECKING([whether the shell understands some XSI constructs]) # Try some XSI features xsi_shell=no ( _lt_dummy="a/b/c" test "${_lt_dummy##*/},${_lt_dummy%/*},"${_lt_dummy%"$_lt_dummy"}, \ = c,a/b,, \ && eval 'test $(( 1 + 1 )) -eq 2 \ && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \ && xsi_shell=yes AC_MSG_RESULT([$xsi_shell]) _LT_CONFIG_LIBTOOL_INIT([xsi_shell='$xsi_shell']) AC_MSG_CHECKING([whether the shell understands "+="]) lt_shell_append=no ( foo=bar; set foo baz; eval "$[1]+=\$[2]" && test "$foo" = barbaz ) \ >/dev/null 2>&1 \ && lt_shell_append=yes AC_MSG_RESULT([$lt_shell_append]) _LT_CONFIG_LIBTOOL_INIT([lt_shell_append='$lt_shell_append']) if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then lt_unset=unset else lt_unset=false fi _LT_DECL([], [lt_unset], [0], [whether the shell understands "unset"])dnl # test EBCDIC or ASCII case `echo X|tr X '\101'` in A) # ASCII based system # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr lt_SP2NL='tr \040 \012' lt_NL2SP='tr \015\012 \040\040' ;; *) # EBCDIC based system lt_SP2NL='tr \100 \n' lt_NL2SP='tr \r\n \100\100' ;; esac _LT_DECL([SP2NL], [lt_SP2NL], [1], [turn spaces into newlines])dnl _LT_DECL([NL2SP], [lt_NL2SP], [1], [turn newlines into spaces])dnl ])# _LT_CHECK_SHELL_FEATURES # _LT_PROG_XSI_SHELLFNS # --------------------- # Bourne and XSI compatible variants of some useful shell functions. m4_defun([_LT_PROG_XSI_SHELLFNS], [case $xsi_shell in yes) cat << \_LT_EOF >> "$cfgfile" # func_dirname file append nondir_replacement # Compute the dirname of FILE. If nonempty, add APPEND to the result, # otherwise set result to NONDIR_REPLACEMENT. func_dirname () { case ${1} in */*) func_dirname_result="${1%/*}${2}" ;; * ) func_dirname_result="${3}" ;; esac } # func_basename file func_basename () { func_basename_result="${1##*/}" } # func_dirname_and_basename file append nondir_replacement # perform func_basename and func_dirname in a single function # call: # dirname: Compute the dirname of FILE. If nonempty, # add APPEND to the result, otherwise set result # to NONDIR_REPLACEMENT. # value returned in "$func_dirname_result" # basename: Compute filename of FILE. # value retuned in "$func_basename_result" # Implementation must be kept synchronized with func_dirname # and func_basename. For efficiency, we do not delegate to # those functions but instead duplicate the functionality here. func_dirname_and_basename () { case ${1} in */*) func_dirname_result="${1%/*}${2}" ;; * ) func_dirname_result="${3}" ;; esac func_basename_result="${1##*/}" } # func_stripname prefix suffix name # strip PREFIX and SUFFIX off of NAME. # PREFIX and SUFFIX must not contain globbing or regex special # characters, hashes, percent signs, but SUFFIX may contain a leading # dot (in which case that matches only a dot). func_stripname () { # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are # positional parameters, so assign one to ordinary parameter first. func_stripname_result=${3} func_stripname_result=${func_stripname_result#"${1}"} func_stripname_result=${func_stripname_result%"${2}"} } # func_opt_split func_opt_split () { func_opt_split_opt=${1%%=*} func_opt_split_arg=${1#*=} } # func_lo2o object func_lo2o () { case ${1} in *.lo) func_lo2o_result=${1%.lo}.${objext} ;; *) func_lo2o_result=${1} ;; esac } # func_xform libobj-or-source func_xform () { func_xform_result=${1%.*}.lo } # func_arith arithmetic-term... func_arith () { func_arith_result=$(( $[*] )) } # func_len string # STRING may not start with a hyphen. func_len () { func_len_result=${#1} } _LT_EOF ;; *) # Bourne compatible functions. cat << \_LT_EOF >> "$cfgfile" # func_dirname file append nondir_replacement # Compute the dirname of FILE. If nonempty, add APPEND to the result, # otherwise set result to NONDIR_REPLACEMENT. func_dirname () { # Extract subdirectory from the argument. func_dirname_result=`$ECHO "X${1}" | $Xsed -e "$dirname"` if test "X$func_dirname_result" = "X${1}"; then func_dirname_result="${3}" else func_dirname_result="$func_dirname_result${2}" fi } # func_basename file func_basename () { func_basename_result=`$ECHO "X${1}" | $Xsed -e "$basename"` } dnl func_dirname_and_basename dnl A portable version of this function is already defined in general.m4sh dnl so there is no need for it here. # func_stripname prefix suffix name # strip PREFIX and SUFFIX off of NAME. # PREFIX and SUFFIX must not contain globbing or regex special # characters, hashes, percent signs, but SUFFIX may contain a leading # dot (in which case that matches only a dot). # func_strip_suffix prefix name func_stripname () { case ${2} in .*) func_stripname_result=`$ECHO "X${3}" \ | $Xsed -e "s%^${1}%%" -e "s%\\\\${2}\$%%"`;; *) func_stripname_result=`$ECHO "X${3}" \ | $Xsed -e "s%^${1}%%" -e "s%${2}\$%%"`;; esac } # sed scripts: my_sed_long_opt='1s/^\(-[[^=]]*\)=.*/\1/;q' my_sed_long_arg='1s/^-[[^=]]*=//' # func_opt_split func_opt_split () { func_opt_split_opt=`$ECHO "X${1}" | $Xsed -e "$my_sed_long_opt"` func_opt_split_arg=`$ECHO "X${1}" | $Xsed -e "$my_sed_long_arg"` } # func_lo2o object func_lo2o () { func_lo2o_result=`$ECHO "X${1}" | $Xsed -e "$lo2o"` } # func_xform libobj-or-source func_xform () { func_xform_result=`$ECHO "X${1}" | $Xsed -e 's/\.[[^.]]*$/.lo/'` } # func_arith arithmetic-term... func_arith () { func_arith_result=`expr "$[@]"` } # func_len string # STRING may not start with a hyphen. func_len () { func_len_result=`expr "$[1]" : ".*" 2>/dev/null || echo $max_cmd_len` } _LT_EOF esac case $lt_shell_append in yes) cat << \_LT_EOF >> "$cfgfile" # func_append var value # Append VALUE to the end of shell variable VAR. func_append () { eval "$[1]+=\$[2]" } _LT_EOF ;; *) cat << \_LT_EOF >> "$cfgfile" # func_append var value # Append VALUE to the end of shell variable VAR. func_append () { eval "$[1]=\$$[1]\$[2]" } _LT_EOF ;; esac ]) # Helper functions for option handling. -*- Autoconf -*- # # Copyright (C) 2004, 2005, 2007, 2008 Free Software Foundation, Inc. # Written by Gary V. Vaughan, 2004 # # This file is free software; the Free Software Foundation gives # unlimited permission to copy and/or distribute it, with or without # modifications, as long as this notice is preserved. # serial 6 ltoptions.m4 # This is to help aclocal find these macros, as it can't see m4_define. AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])]) # _LT_MANGLE_OPTION(MACRO-NAME, OPTION-NAME) # ------------------------------------------ m4_define([_LT_MANGLE_OPTION], [[_LT_OPTION_]m4_bpatsubst($1__$2, [[^a-zA-Z0-9_]], [_])]) # _LT_SET_OPTION(MACRO-NAME, OPTION-NAME) # --------------------------------------- # Set option OPTION-NAME for macro MACRO-NAME, and if there is a # matching handler defined, dispatch to it. Other OPTION-NAMEs are # saved as a flag. m4_define([_LT_SET_OPTION], [m4_define(_LT_MANGLE_OPTION([$1], [$2]))dnl m4_ifdef(_LT_MANGLE_DEFUN([$1], [$2]), _LT_MANGLE_DEFUN([$1], [$2]), [m4_warning([Unknown $1 option `$2'])])[]dnl ]) # _LT_IF_OPTION(MACRO-NAME, OPTION-NAME, IF-SET, [IF-NOT-SET]) # ------------------------------------------------------------ # Execute IF-SET if OPTION is set, IF-NOT-SET otherwise. m4_define([_LT_IF_OPTION], [m4_ifdef(_LT_MANGLE_OPTION([$1], [$2]), [$3], [$4])]) # _LT_UNLESS_OPTIONS(MACRO-NAME, OPTION-LIST, IF-NOT-SET) # ------------------------------------------------------- # Execute IF-NOT-SET unless all options in OPTION-LIST for MACRO-NAME # are set. m4_define([_LT_UNLESS_OPTIONS], [m4_foreach([_LT_Option], m4_split(m4_normalize([$2])), [m4_ifdef(_LT_MANGLE_OPTION([$1], _LT_Option), [m4_define([$0_found])])])[]dnl m4_ifdef([$0_found], [m4_undefine([$0_found])], [$3 ])[]dnl ]) # _LT_SET_OPTIONS(MACRO-NAME, OPTION-LIST) # ---------------------------------------- # OPTION-LIST is a space-separated list of Libtool options associated # with MACRO-NAME. If any OPTION has a matching handler declared with # LT_OPTION_DEFINE, dispatch to that macro; otherwise complain about # the unknown option and exit. m4_defun([_LT_SET_OPTIONS], [# Set options m4_foreach([_LT_Option], m4_split(m4_normalize([$2])), [_LT_SET_OPTION([$1], _LT_Option)]) m4_if([$1],[LT_INIT],[ dnl dnl Simply set some default values (i.e off) if boolean options were not dnl specified: _LT_UNLESS_OPTIONS([LT_INIT], [dlopen], [enable_dlopen=no ]) _LT_UNLESS_OPTIONS([LT_INIT], [win32-dll], [enable_win32_dll=no ]) dnl dnl If no reference was made to various pairs of opposing options, then dnl we run the default mode handler for the pair. For example, if neither dnl `shared' nor `disable-shared' was passed, we enable building of shared dnl archives by default: _LT_UNLESS_OPTIONS([LT_INIT], [shared disable-shared], [_LT_ENABLE_SHARED]) _LT_UNLESS_OPTIONS([LT_INIT], [static disable-static], [_LT_ENABLE_STATIC]) _LT_UNLESS_OPTIONS([LT_INIT], [pic-only no-pic], [_LT_WITH_PIC]) _LT_UNLESS_OPTIONS([LT_INIT], [fast-install disable-fast-install], [_LT_ENABLE_FAST_INSTALL]) ]) ])# _LT_SET_OPTIONS # _LT_MANGLE_DEFUN(MACRO-NAME, OPTION-NAME) # ----------------------------------------- m4_define([_LT_MANGLE_DEFUN], [[_LT_OPTION_DEFUN_]m4_bpatsubst(m4_toupper([$1__$2]), [[^A-Z0-9_]], [_])]) # LT_OPTION_DEFINE(MACRO-NAME, OPTION-NAME, CODE) # ----------------------------------------------- m4_define([LT_OPTION_DEFINE], [m4_define(_LT_MANGLE_DEFUN([$1], [$2]), [$3])[]dnl ])# LT_OPTION_DEFINE # dlopen # ------ LT_OPTION_DEFINE([LT_INIT], [dlopen], [enable_dlopen=yes ]) AU_DEFUN([AC_LIBTOOL_DLOPEN], [_LT_SET_OPTION([LT_INIT], [dlopen]) AC_DIAGNOSE([obsolete], [$0: Remove this warning and the call to _LT_SET_OPTION when you put the `dlopen' option into LT_INIT's first parameter.]) ]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AC_LIBTOOL_DLOPEN], []) # win32-dll # --------- # Declare package support for building win32 dll's. LT_OPTION_DEFINE([LT_INIT], [win32-dll], [enable_win32_dll=yes case $host in *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-cegcc*) AC_CHECK_TOOL(AS, as, false) AC_CHECK_TOOL(DLLTOOL, dlltool, false) AC_CHECK_TOOL(OBJDUMP, objdump, false) ;; esac test -z "$AS" && AS=as _LT_DECL([], [AS], [0], [Assembler program])dnl test -z "$DLLTOOL" && DLLTOOL=dlltool _LT_DECL([], [DLLTOOL], [0], [DLL creation program])dnl test -z "$OBJDUMP" && OBJDUMP=objdump _LT_DECL([], [OBJDUMP], [0], [Object dumper program])dnl ])# win32-dll AU_DEFUN([AC_LIBTOOL_WIN32_DLL], [AC_REQUIRE([AC_CANONICAL_HOST])dnl _LT_SET_OPTION([LT_INIT], [win32-dll]) AC_DIAGNOSE([obsolete], [$0: Remove this warning and the call to _LT_SET_OPTION when you put the `win32-dll' option into LT_INIT's first parameter.]) ]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AC_LIBTOOL_WIN32_DLL], []) # _LT_ENABLE_SHARED([DEFAULT]) # ---------------------------- # implement the --enable-shared flag, and supports the `shared' and # `disable-shared' LT_INIT options. # DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'. m4_define([_LT_ENABLE_SHARED], [m4_define([_LT_ENABLE_SHARED_DEFAULT], [m4_if($1, no, no, yes)])dnl AC_ARG_ENABLE([shared], [AS_HELP_STRING([--enable-shared@<:@=PKGS@:>@], [build shared libraries @<:@default=]_LT_ENABLE_SHARED_DEFAULT[@:>@])], [p=${PACKAGE-default} case $enableval in yes) enable_shared=yes ;; no) enable_shared=no ;; *) enable_shared=no # Look at the argument we got. We use all the common list separators. lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," for pkg in $enableval; do IFS="$lt_save_ifs" if test "X$pkg" = "X$p"; then enable_shared=yes fi done IFS="$lt_save_ifs" ;; esac], [enable_shared=]_LT_ENABLE_SHARED_DEFAULT) _LT_DECL([build_libtool_libs], [enable_shared], [0], [Whether or not to build shared libraries]) ])# _LT_ENABLE_SHARED LT_OPTION_DEFINE([LT_INIT], [shared], [_LT_ENABLE_SHARED([yes])]) LT_OPTION_DEFINE([LT_INIT], [disable-shared], [_LT_ENABLE_SHARED([no])]) # Old names: AC_DEFUN([AC_ENABLE_SHARED], [_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[shared]) ]) AC_DEFUN([AC_DISABLE_SHARED], [_LT_SET_OPTION([LT_INIT], [disable-shared]) ]) AU_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)]) AU_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AM_ENABLE_SHARED], []) dnl AC_DEFUN([AM_DISABLE_SHARED], []) # _LT_ENABLE_STATIC([DEFAULT]) # ---------------------------- # implement the --enable-static flag, and support the `static' and # `disable-static' LT_INIT options. # DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'. m4_define([_LT_ENABLE_STATIC], [m4_define([_LT_ENABLE_STATIC_DEFAULT], [m4_if($1, no, no, yes)])dnl AC_ARG_ENABLE([static], [AS_HELP_STRING([--enable-static@<:@=PKGS@:>@], [build static libraries @<:@default=]_LT_ENABLE_STATIC_DEFAULT[@:>@])], [p=${PACKAGE-default} case $enableval in yes) enable_static=yes ;; no) enable_static=no ;; *) enable_static=no # Look at the argument we got. We use all the common list separators. lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," for pkg in $enableval; do IFS="$lt_save_ifs" if test "X$pkg" = "X$p"; then enable_static=yes fi done IFS="$lt_save_ifs" ;; esac], [enable_static=]_LT_ENABLE_STATIC_DEFAULT) _LT_DECL([build_old_libs], [enable_static], [0], [Whether or not to build static libraries]) ])# _LT_ENABLE_STATIC LT_OPTION_DEFINE([LT_INIT], [static], [_LT_ENABLE_STATIC([yes])]) LT_OPTION_DEFINE([LT_INIT], [disable-static], [_LT_ENABLE_STATIC([no])]) # Old names: AC_DEFUN([AC_ENABLE_STATIC], [_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[static]) ]) AC_DEFUN([AC_DISABLE_STATIC], [_LT_SET_OPTION([LT_INIT], [disable-static]) ]) AU_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)]) AU_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AM_ENABLE_STATIC], []) dnl AC_DEFUN([AM_DISABLE_STATIC], []) # _LT_ENABLE_FAST_INSTALL([DEFAULT]) # ---------------------------------- # implement the --enable-fast-install flag, and support the `fast-install' # and `disable-fast-install' LT_INIT options. # DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'. m4_define([_LT_ENABLE_FAST_INSTALL], [m4_define([_LT_ENABLE_FAST_INSTALL_DEFAULT], [m4_if($1, no, no, yes)])dnl AC_ARG_ENABLE([fast-install], [AS_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@], [optimize for fast installation @<:@default=]_LT_ENABLE_FAST_INSTALL_DEFAULT[@:>@])], [p=${PACKAGE-default} case $enableval in yes) enable_fast_install=yes ;; no) enable_fast_install=no ;; *) enable_fast_install=no # Look at the argument we got. We use all the common list separators. lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," for pkg in $enableval; do IFS="$lt_save_ifs" if test "X$pkg" = "X$p"; then enable_fast_install=yes fi done IFS="$lt_save_ifs" ;; esac], [enable_fast_install=]_LT_ENABLE_FAST_INSTALL_DEFAULT) _LT_DECL([fast_install], [enable_fast_install], [0], [Whether or not to optimize for fast installation])dnl ])# _LT_ENABLE_FAST_INSTALL LT_OPTION_DEFINE([LT_INIT], [fast-install], [_LT_ENABLE_FAST_INSTALL([yes])]) LT_OPTION_DEFINE([LT_INIT], [disable-fast-install], [_LT_ENABLE_FAST_INSTALL([no])]) # Old names: AU_DEFUN([AC_ENABLE_FAST_INSTALL], [_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install]) AC_DIAGNOSE([obsolete], [$0: Remove this warning and the call to _LT_SET_OPTION when you put the `fast-install' option into LT_INIT's first parameter.]) ]) AU_DEFUN([AC_DISABLE_FAST_INSTALL], [_LT_SET_OPTION([LT_INIT], [disable-fast-install]) AC_DIAGNOSE([obsolete], [$0: Remove this warning and the call to _LT_SET_OPTION when you put the `disable-fast-install' option into LT_INIT's first parameter.]) ]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AC_ENABLE_FAST_INSTALL], []) dnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], []) # _LT_WITH_PIC([MODE]) # -------------------- # implement the --with-pic flag, and support the `pic-only' and `no-pic' # LT_INIT options. # MODE is either `yes' or `no'. If omitted, it defaults to `both'. m4_define([_LT_WITH_PIC], [AC_ARG_WITH([pic], [AS_HELP_STRING([--with-pic], [try to use only PIC/non-PIC objects @<:@default=use both@:>@])], [pic_mode="$withval"], [pic_mode=default]) test -z "$pic_mode" && pic_mode=m4_default([$1], [default]) _LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl ])# _LT_WITH_PIC LT_OPTION_DEFINE([LT_INIT], [pic-only], [_LT_WITH_PIC([yes])]) LT_OPTION_DEFINE([LT_INIT], [no-pic], [_LT_WITH_PIC([no])]) # Old name: AU_DEFUN([AC_LIBTOOL_PICMODE], [_LT_SET_OPTION([LT_INIT], [pic-only]) AC_DIAGNOSE([obsolete], [$0: Remove this warning and the call to _LT_SET_OPTION when you put the `pic-only' option into LT_INIT's first parameter.]) ]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AC_LIBTOOL_PICMODE], []) m4_define([_LTDL_MODE], []) LT_OPTION_DEFINE([LTDL_INIT], [nonrecursive], [m4_define([_LTDL_MODE], [nonrecursive])]) LT_OPTION_DEFINE([LTDL_INIT], [recursive], [m4_define([_LTDL_MODE], [recursive])]) LT_OPTION_DEFINE([LTDL_INIT], [subproject], [m4_define([_LTDL_MODE], [subproject])]) m4_define([_LTDL_TYPE], []) LT_OPTION_DEFINE([LTDL_INIT], [installable], [m4_define([_LTDL_TYPE], [installable])]) LT_OPTION_DEFINE([LTDL_INIT], [convenience], [m4_define([_LTDL_TYPE], [convenience])]) # ltsugar.m4 -- libtool m4 base layer. -*-Autoconf-*- # # Copyright (C) 2004, 2005, 2007, 2008 Free Software Foundation, Inc. # Written by Gary V. Vaughan, 2004 # # This file is free software; the Free Software Foundation gives # unlimited permission to copy and/or distribute it, with or without # modifications, as long as this notice is preserved. # serial 6 ltsugar.m4 # This is to help aclocal find these macros, as it can't see m4_define. AC_DEFUN([LTSUGAR_VERSION], [m4_if([0.1])]) # lt_join(SEP, ARG1, [ARG2...]) # ----------------------------- # Produce ARG1SEPARG2...SEPARGn, omitting [] arguments and their # associated separator. # Needed until we can rely on m4_join from Autoconf 2.62, since all earlier # versions in m4sugar had bugs. m4_define([lt_join], [m4_if([$#], [1], [], [$#], [2], [[$2]], [m4_if([$2], [], [], [[$2]_])$0([$1], m4_shift(m4_shift($@)))])]) m4_define([_lt_join], [m4_if([$#$2], [2], [], [m4_if([$2], [], [], [[$1$2]])$0([$1], m4_shift(m4_shift($@)))])]) # lt_car(LIST) # lt_cdr(LIST) # ------------ # Manipulate m4 lists. # These macros are necessary as long as will still need to support # Autoconf-2.59 which quotes differently. m4_define([lt_car], [[$1]]) m4_define([lt_cdr], [m4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])], [$#], 1, [], [m4_dquote(m4_shift($@))])]) m4_define([lt_unquote], $1) # lt_append(MACRO-NAME, STRING, [SEPARATOR]) # ------------------------------------------ # Redefine MACRO-NAME to hold its former content plus `SEPARATOR'`STRING'. # Note that neither SEPARATOR nor STRING are expanded; they are appended # to MACRO-NAME as is (leaving the expansion for when MACRO-NAME is invoked). # No SEPARATOR is output if MACRO-NAME was previously undefined (different # than defined and empty). # # This macro is needed until we can rely on Autoconf 2.62, since earlier # versions of m4sugar mistakenly expanded SEPARATOR but not STRING. m4_define([lt_append], [m4_define([$1], m4_ifdef([$1], [m4_defn([$1])[$3]])[$2])]) # lt_combine(SEP, PREFIX-LIST, INFIX, SUFFIX1, [SUFFIX2...]) # ---------------------------------------------------------- # Produce a SEP delimited list of all paired combinations of elements of # PREFIX-LIST with SUFFIX1 through SUFFIXn. Each element of the list # has the form PREFIXmINFIXSUFFIXn. # Needed until we can rely on m4_combine added in Autoconf 2.62. m4_define([lt_combine], [m4_if(m4_eval([$# > 3]), [1], [m4_pushdef([_Lt_sep], [m4_define([_Lt_sep], m4_defn([lt_car]))])]]dnl [[m4_foreach([_Lt_prefix], [$2], [m4_foreach([_Lt_suffix], ]m4_dquote(m4_dquote(m4_shift(m4_shift(m4_shift($@)))))[, [_Lt_sep([$1])[]m4_defn([_Lt_prefix])[$3]m4_defn([_Lt_suffix])])])])]) # lt_if_append_uniq(MACRO-NAME, VARNAME, [SEPARATOR], [UNIQ], [NOT-UNIQ]) # ----------------------------------------------------------------------- # Iff MACRO-NAME does not yet contain VARNAME, then append it (delimited # by SEPARATOR if supplied) and expand UNIQ, else NOT-UNIQ. m4_define([lt_if_append_uniq], [m4_ifdef([$1], [m4_if(m4_index([$3]m4_defn([$1])[$3], [$3$2$3]), [-1], [lt_append([$1], [$2], [$3])$4], [$5])], [lt_append([$1], [$2], [$3])$4])]) # lt_dict_add(DICT, KEY, VALUE) # ----------------------------- m4_define([lt_dict_add], [m4_define([$1($2)], [$3])]) # lt_dict_add_subkey(DICT, KEY, SUBKEY, VALUE) # -------------------------------------------- m4_define([lt_dict_add_subkey], [m4_define([$1($2:$3)], [$4])]) # lt_dict_fetch(DICT, KEY, [SUBKEY]) # ---------------------------------- m4_define([lt_dict_fetch], [m4_ifval([$3], m4_ifdef([$1($2:$3)], [m4_defn([$1($2:$3)])]), m4_ifdef([$1($2)], [m4_defn([$1($2)])]))]) # lt_if_dict_fetch(DICT, KEY, [SUBKEY], VALUE, IF-TRUE, [IF-FALSE]) # ----------------------------------------------------------------- m4_define([lt_if_dict_fetch], [m4_if(lt_dict_fetch([$1], [$2], [$3]), [$4], [$5], [$6])]) # lt_dict_filter(DICT, [SUBKEY], VALUE, [SEPARATOR], KEY, [...]) # -------------------------------------------------------------- m4_define([lt_dict_filter], [m4_if([$5], [], [], [lt_join(m4_quote(m4_default([$4], [[, ]])), lt_unquote(m4_split(m4_normalize(m4_foreach(_Lt_key, lt_car([m4_shiftn(4, $@)]), [lt_if_dict_fetch([$1], _Lt_key, [$2], [$3], [_Lt_key ])])))))])[]dnl ]) # ltversion.m4 -- version numbers -*- Autoconf -*- # # Copyright (C) 2004 Free Software Foundation, Inc. # Written by Scott James Remnant, 2004 # # This file is free software; the Free Software Foundation gives # unlimited permission to copy and/or distribute it, with or without # modifications, as long as this notice is preserved. # Generated from ltversion.in. # serial 3017 ltversion.m4 # This file is part of GNU Libtool m4_define([LT_PACKAGE_VERSION], [2.2.6b]) m4_define([LT_PACKAGE_REVISION], [1.3017]) AC_DEFUN([LTVERSION_VERSION], [macro_version='2.2.6b' macro_revision='1.3017' _LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?]) _LT_DECL(, macro_revision, 0) ]) # lt~obsolete.m4 -- aclocal satisfying obsolete definitions. -*-Autoconf-*- # # Copyright (C) 2004, 2005, 2007 Free Software Foundation, Inc. # Written by Scott James Remnant, 2004. # # This file is free software; the Free Software Foundation gives # unlimited permission to copy and/or distribute it, with or without # modifications, as long as this notice is preserved. # serial 4 lt~obsolete.m4 # These exist entirely to fool aclocal when bootstrapping libtool. # # In the past libtool.m4 has provided macros via AC_DEFUN (or AU_DEFUN) # which have later been changed to m4_define as they aren't part of the # exported API, or moved to Autoconf or Automake where they belong. # # The trouble is, aclocal is a bit thick. It'll see the old AC_DEFUN # in /usr/share/aclocal/libtool.m4 and remember it, then when it sees us # using a macro with the same name in our local m4/libtool.m4 it'll # pull the old libtool.m4 in (it doesn't see our shiny new m4_define # and doesn't know about Autoconf macros at all.) # # So we provide this file, which has a silly filename so it's always # included after everything else. This provides aclocal with the # AC_DEFUNs it wants, but when m4 processes it, it doesn't do anything # because those macros already exist, or will be overwritten later. # We use AC_DEFUN over AU_DEFUN for compatibility with aclocal-1.6. # # Anytime we withdraw an AC_DEFUN or AU_DEFUN, remember to add it here. # Yes, that means every name once taken will need to remain here until # we give up compatibility with versions before 1.7, at which point # we need to keep only those names which we still refer to. # This is to help aclocal find these macros, as it can't see m4_define. AC_DEFUN([LTOBSOLETE_VERSION], [m4_if([1])]) m4_ifndef([AC_LIBTOOL_LINKER_OPTION], [AC_DEFUN([AC_LIBTOOL_LINKER_OPTION])]) m4_ifndef([AC_PROG_EGREP], [AC_DEFUN([AC_PROG_EGREP])]) m4_ifndef([_LT_AC_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH])]) m4_ifndef([_LT_AC_SHELL_INIT], [AC_DEFUN([_LT_AC_SHELL_INIT])]) m4_ifndef([_LT_AC_SYS_LIBPATH_AIX], [AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX])]) m4_ifndef([_LT_PROG_LTMAIN], [AC_DEFUN([_LT_PROG_LTMAIN])]) m4_ifndef([_LT_AC_TAGVAR], [AC_DEFUN([_LT_AC_TAGVAR])]) m4_ifndef([AC_LTDL_ENABLE_INSTALL], [AC_DEFUN([AC_LTDL_ENABLE_INSTALL])]) m4_ifndef([AC_LTDL_PREOPEN], [AC_DEFUN([AC_LTDL_PREOPEN])]) m4_ifndef([_LT_AC_SYS_COMPILER], [AC_DEFUN([_LT_AC_SYS_COMPILER])]) m4_ifndef([_LT_AC_LOCK], [AC_DEFUN([_LT_AC_LOCK])]) m4_ifndef([AC_LIBTOOL_SYS_OLD_ARCHIVE], [AC_DEFUN([AC_LIBTOOL_SYS_OLD_ARCHIVE])]) m4_ifndef([_LT_AC_TRY_DLOPEN_SELF], [AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF])]) m4_ifndef([AC_LIBTOOL_PROG_CC_C_O], [AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O])]) m4_ifndef([AC_LIBTOOL_SYS_HARD_LINK_LOCKS], [AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS])]) m4_ifndef([AC_LIBTOOL_OBJDIR], [AC_DEFUN([AC_LIBTOOL_OBJDIR])]) m4_ifndef([AC_LTDL_OBJDIR], [AC_DEFUN([AC_LTDL_OBJDIR])]) m4_ifndef([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH], [AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH])]) m4_ifndef([AC_LIBTOOL_SYS_LIB_STRIP], [AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP])]) m4_ifndef([AC_PATH_MAGIC], [AC_DEFUN([AC_PATH_MAGIC])]) m4_ifndef([AC_PROG_LD_GNU], [AC_DEFUN([AC_PROG_LD_GNU])]) m4_ifndef([AC_PROG_LD_RELOAD_FLAG], [AC_DEFUN([AC_PROG_LD_RELOAD_FLAG])]) m4_ifndef([AC_DEPLIBS_CHECK_METHOD], [AC_DEFUN([AC_DEPLIBS_CHECK_METHOD])]) m4_ifndef([AC_LIBTOOL_PROG_COMPILER_NO_RTTI], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI])]) m4_ifndef([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], [AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])]) m4_ifndef([AC_LIBTOOL_PROG_COMPILER_PIC], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC])]) m4_ifndef([AC_LIBTOOL_PROG_LD_SHLIBS], [AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS])]) m4_ifndef([AC_LIBTOOL_POSTDEP_PREDEP], [AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP])]) m4_ifndef([LT_AC_PROG_EGREP], [AC_DEFUN([LT_AC_PROG_EGREP])]) m4_ifndef([LT_AC_PROG_SED], [AC_DEFUN([LT_AC_PROG_SED])]) m4_ifndef([_LT_CC_BASENAME], [AC_DEFUN([_LT_CC_BASENAME])]) m4_ifndef([_LT_COMPILER_BOILERPLATE], [AC_DEFUN([_LT_COMPILER_BOILERPLATE])]) m4_ifndef([_LT_LINKER_BOILERPLATE], [AC_DEFUN([_LT_LINKER_BOILERPLATE])]) m4_ifndef([_AC_PROG_LIBTOOL], [AC_DEFUN([_AC_PROG_LIBTOOL])]) m4_ifndef([AC_LIBTOOL_SETUP], [AC_DEFUN([AC_LIBTOOL_SETUP])]) m4_ifndef([_LT_AC_CHECK_DLFCN], [AC_DEFUN([_LT_AC_CHECK_DLFCN])]) m4_ifndef([AC_LIBTOOL_SYS_DYNAMIC_LINKER], [AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER])]) m4_ifndef([_LT_AC_TAGCONFIG], [AC_DEFUN([_LT_AC_TAGCONFIG])]) m4_ifndef([AC_DISABLE_FAST_INSTALL], [AC_DEFUN([AC_DISABLE_FAST_INSTALL])]) m4_ifndef([_LT_AC_LANG_CXX], [AC_DEFUN([_LT_AC_LANG_CXX])]) m4_ifndef([_LT_AC_LANG_F77], [AC_DEFUN([_LT_AC_LANG_F77])]) m4_ifndef([_LT_AC_LANG_GCJ], [AC_DEFUN([_LT_AC_LANG_GCJ])]) m4_ifndef([AC_LIBTOOL_RC], [AC_DEFUN([AC_LIBTOOL_RC])]) m4_ifndef([AC_LIBTOOL_LANG_C_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG])]) m4_ifndef([_LT_AC_LANG_C_CONFIG], [AC_DEFUN([_LT_AC_LANG_C_CONFIG])]) m4_ifndef([AC_LIBTOOL_LANG_CXX_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG])]) m4_ifndef([_LT_AC_LANG_CXX_CONFIG], [AC_DEFUN([_LT_AC_LANG_CXX_CONFIG])]) m4_ifndef([AC_LIBTOOL_LANG_F77_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_F77_CONFIG])]) m4_ifndef([_LT_AC_LANG_F77_CONFIG], [AC_DEFUN([_LT_AC_LANG_F77_CONFIG])]) m4_ifndef([AC_LIBTOOL_LANG_GCJ_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_GCJ_CONFIG])]) m4_ifndef([_LT_AC_LANG_GCJ_CONFIG], [AC_DEFUN([_LT_AC_LANG_GCJ_CONFIG])]) m4_ifndef([AC_LIBTOOL_LANG_RC_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_RC_CONFIG])]) m4_ifndef([_LT_AC_LANG_RC_CONFIG], [AC_DEFUN([_LT_AC_LANG_RC_CONFIG])]) m4_ifndef([AC_LIBTOOL_CONFIG], [AC_DEFUN([AC_LIBTOOL_CONFIG])]) m4_ifndef([_LT_AC_FILE_LTDLL_C], [AC_DEFUN([_LT_AC_FILE_LTDLL_C])]) # nls.m4 serial 5 (gettext-0.18) dnl Copyright (C) 1995-2003, 2005-2006, 2008-2010 Free Software Foundation, dnl Inc. 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 <drepper@cygnus.com>, 1995-2000. dnl Bruno Haible <haible@clisp.cons.org>, 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 -*- # # Copyright © 2004 Scott James Remnant <scott@netsplit.com>. # # 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])dnl 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. # # # Similar to PKG_CHECK_MODULES, make sure that the first instance of # this or PKG_CHECK_MODULES is called, or make sure 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_ifval([$2], [$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 _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 ifelse([$4], , [AC_MSG_ERROR(dnl [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 ])], [AC_MSG_RESULT([no]) $4]) elif test $pkg_failed = untried; then ifelse([$4], , [AC_MSG_FAILURE(dnl [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 <http://pkg-config.freedesktop.org/>.])], [$4]) else $1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS $1[]_LIBS=$pkg_cv_[]$1[]_LIBS AC_MSG_RESULT([yes]) ifelse([$3], , :, [$3]) fi[]dnl ])# PKG_CHECK_MODULES # 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 <drepper@cygnus.com>, 1995, 1996 # # Modified to never use included libintl. # Owen Taylor <otaylor@redhat.com>, 12/15/1998 # # Major rework to remove unused code # Owen Taylor <otaylor@redhat.com>, 12/11/2002 # # Added better handling of ALL_LINGUAS from GNU gettext version # written by Bruno Haible, Owen Taylor <otaylor.redhat.com> 5/30/3002 # # Modified to require ngettext # Matthias Clasen <mclasen@redhat.com> 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 <locale.h>], [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 <locale.h> 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 <libintl.h> ], [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 <libintl.h> ], [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 <foo@bar.xx>\n" "Language-Team: C <LL@li.org>\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]) ;; *) 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]) dnl -*- mode: autoconf -*- # serial 1 dnl Usage: dnl GTK_DOC_CHECK([minimum-gtk-doc-version]) AC_DEFUN([GTK_DOC_CHECK], [ AC_BEFORE([AC_PROG_LIBTOOL],[$0])dnl setup libtool first AC_BEFORE([AM_PROG_LIBTOOL],[$0])dnl setup libtool first dnl check for tools we added during development AC_PATH_PROG([GTKDOC_CHECK],[gtkdoc-check]) AC_PATH_PROGS([GTKDOC_REBASE],[gtkdoc-rebase],[true]) AC_PATH_PROG([GTKDOC_MKPDF],[gtkdoc-mkpdf]) dnl for overriding the documentation installation directory AC_ARG_WITH([html-dir], AS_HELP_STRING([--with-html-dir=PATH], [path to installed docs]),, [with_html_dir='${datadir}/gtk-doc/html']) HTML_DIR="$with_html_dir" AC_SUBST([HTML_DIR]) dnl enable/disable documentation building AC_ARG_ENABLE([gtk-doc], AS_HELP_STRING([--enable-gtk-doc], [use gtk-doc to build documentation [[default=no]]]),, [enable_gtk_doc=no]) if test x$enable_gtk_doc = xyes; then ifelse([$1],[], [PKG_CHECK_EXISTS([gtk-doc],, AC_MSG_ERROR([gtk-doc not installed and --enable-gtk-doc requested]))], [PKG_CHECK_EXISTS([gtk-doc >= $1],, AC_MSG_ERROR([You need to have gtk-doc >= $1 installed to build $PACKAGE_NAME]))]) fi AC_MSG_CHECKING([whether to build gtk-doc documentation]) AC_MSG_RESULT($enable_gtk_doc) dnl enable/disable output formats AC_ARG_ENABLE([gtk-doc-html], AS_HELP_STRING([--enable-gtk-doc-html], [build documentation in html format [[default=yes]]]),, [enable_gtk_doc_html=yes]) AC_ARG_ENABLE([gtk-doc-pdf], AS_HELP_STRING([--enable-gtk-doc-pdf], [build documentation in pdf format [[default=no]]]),, [enable_gtk_doc_pdf=no]) if test -z "$GTKDOC_MKPDF"; then enable_gtk_doc_pdf=no fi AM_CONDITIONAL([ENABLE_GTK_DOC], [test x$enable_gtk_doc = xyes]) AM_CONDITIONAL([GTK_DOC_BUILD_HTML], [test x$enable_gtk_doc_html = xyes]) AM_CONDITIONAL([GTK_DOC_BUILD_PDF], [test x$enable_gtk_doc_pdf = xyes]) AM_CONDITIONAL([GTK_DOC_USE_LIBTOOL], [test -n "$LIBTOOL"]) AM_CONDITIONAL([GTK_DOC_USE_REBASE], [test -n "$GTKDOC_REBASE"]) ]) ����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������