From: Jinkun Jang Date: Wed, 13 Mar 2013 00:00:30 +0000 (+0900) Subject: sync X-Git-Tag: 2.1b_release^0 X-Git-Url: http://review.tizen.org/git/?p=platform%2Fupstream%2Fglib2.0.git;a=commitdiff_plain;h=f3755f9a6dffd8757beb73462e73d7ca3b7dd116 sync --- diff --git a/MAINTAINERS b/MAINTAINERS deleted file mode 100644 index 0bb46dc..0000000 --- a/MAINTAINERS +++ /dev/null @@ -1,12 +0,0 @@ -Matthias Clasen -E-mail: mclasen@redhat.com -Userid: matthiasc - -Tim Janik -E-mail: timj@gtk.org -Userid: timj - -Note that a lot of people are contributing to GLib, and some parts of it -are technically maintained by others. The email addresses listed above are -meant as contacts for administrative questions such as cvs accounts. Other -questions are best directed to the mailing list gtk-devel-list@gnome.org. diff --git a/configure.in b/configure.in deleted file mode 100644 index 3e2f677..0000000 --- a/configure.in +++ /dev/null @@ -1,3585 +0,0 @@ -# Process this file with autoconf to produce a configure script. -# require autoconf 2.54 -AC_PREREQ(2.54) - -dnl *********************************** -dnl *** include special GLib macros *** -dnl *********************************** - -m4_define(glib_configure_in) - -# -# The following version number definitions apply to GLib, GModule, GObject, -# GThread and GIO as a whole, so if changes occurred in any of them, they are -# all treated with the same interface and binary age. -# -# Making releases: -# glib_micro_version += 1; -# glib_interface_age += 1; -# glib_binary_age += 1; -# if any functions have been added, set glib_interface_age to 0. -# if backwards compatibility has been broken, -# set glib_binary_age _and_ glib_interface_age to 0. -# -m4_define([glib_major_version], [2]) -m4_define([glib_minor_version], [24]) -m4_define([glib_micro_version], [0]) -m4_define([glib_interface_age], [0]) -m4_define([glib_binary_age], - [m4_eval(100 * glib_minor_version + glib_micro_version)]) -m4_define([glib_version], - [glib_major_version.glib_minor_version.glib_micro_version]) - -# libtool version related macros -m4_define([glib_lt_release], [glib_major_version.glib_minor_version]) -m4_define([glib_lt_current], - [m4_eval(100 * glib_minor_version + glib_micro_version - glib_interface_age)]) -m4_define([glib_lt_revision], [glib_interface_age]) -m4_define([glib_lt_age], [m4_eval(glib_binary_age - glib_interface_age)]) -m4_define([glib_lt_current_minus_age], - [m4_eval(glib_lt_current - glib_lt_age)]) - -# if the minor version number is odd, then we want debugging. Otherwise -# we only want minimal debugging support. -m4_define([glib_debug_default], - [m4_if(m4_eval(glib_minor_version % 2), [1], [yes], [minimum])])dnl - - -AC_INIT(glib, [glib_version], - [http://bugzilla.gnome.org/enter_bug.cgi?product=glib]) - -AC_CONFIG_SRCDIR([glib/glib.h]) - -# Save this value here, since automake will set cflags later -cflags_set=${CFLAGS+set} - -AM_INIT_AUTOMAKE([no-define]) - -# Specify a configuration file -AM_CONFIG_HEADER([config.h]) - -# Support silent build rules, requires at least automake-1.11. Enable -# by either passing --enable-silent-rules to configure or passing V=0 -# to make -m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([no])]) - -GLIB_MAJOR_VERSION=glib_major_version -GLIB_MINOR_VERSION=glib_minor_version -GLIB_MICRO_VERSION=glib_micro_version -GLIB_INTERFACE_AGE=glib_interface_age -GLIB_BINARY_AGE=glib_binary_age -GLIB_VERSION=glib_version - -AC_SUBST(GLIB_MAJOR_VERSION) -AC_SUBST(GLIB_MINOR_VERSION) -AC_SUBST(GLIB_MICRO_VERSION) -AC_SUBST(GLIB_VERSION) -AC_SUBST(GLIB_INTERFACE_AGE) -AC_SUBST(GLIB_BINARY_AGE) - -AC_DEFINE(GLIB_MAJOR_VERSION, [glib_major_version], - [Define to the GLIB major version]) -AC_DEFINE(GLIB_MINOR_VERSION, [glib_minor_version], - [Define to the GLIB minor version]) -AC_DEFINE(GLIB_MICRO_VERSION, [glib_micro_version], - [Define to the GLIB micro version]) -AC_DEFINE(GLIB_INTERFACE_AGE, [glib_interface_age], - [Define to the GLIB interface age]) -AC_DEFINE(GLIB_BINARY_AGE, [glib_binary_age], - [Define to the GLIB binary age]) - -# libtool versioning -LT_RELEASE=glib_lt_release -LT_CURRENT=glib_lt_current -LT_REVISION=glib_lt_revision -LT_AGE=glib_lt_age -LT_CURRENT_MINUS_AGE=glib_lt_current_minus_age -AC_SUBST(LT_RELEASE) -AC_SUBST(LT_CURRENT) -AC_SUBST(LT_REVISION) -AC_SUBST(LT_AGE) -AC_SUBST(LT_CURRENT_MINUS_AGE) - -dnl Initialize maintainer mode -AM_MAINTAINER_MODE - -AC_CANONICAL_HOST - -AC_MSG_CHECKING([for the BeOS]) -case $host in - *-*-beos*) - glib_native_beos="yes" - ;; - *) - glib_native_beos="no" - ;; -esac -AC_MSG_RESULT([$glib_native_beos]) - -dnl - -AC_MSG_CHECKING([for Win32]) -LIB_EXE_MACHINE_FLAG=X86 -case "$host" in - *-*-mingw*) - glib_native_win32=yes - glib_pid_type='void *' - glib_cv_stack_grows=no - # Unfortunately the mingw implementations of C99-style snprintf and vsnprintf - # don't seem to be quite good enough, at least not in mingw-runtime-3.14. - # (Sorry, I don't know exactly what is the problem, but it is related to - # floating point formatting and decimal point vs. comma.) - # The simple tests in AC_FUNC_VSNPRINTF_C99 and AC_FUNC_SNPRINTF_C99 aren't - # rigorous enough to notice, though. - # So preset the autoconf cache variables. - ac_cv_func_vsnprintf_c99=no - ac_cv_func_snprintf_c99=no - case "$host" in - x86_64-*-*) - LIB_EXE_MACHINE_FLAG=X64 - ;; - esac - ;; - *) - glib_native_win32=no - glib_pid_type=int - ;; -esac -case $host in - *-*-linux*) - glib_os_linux=yes - ;; -esac - -AC_MSG_RESULT([$glib_native_win32]) - -AC_SUBST(LIB_EXE_MACHINE_FLAG) - -glib_have_carbon=no -AC_MSG_CHECKING([for Mac OS X Carbon support]) -AC_TRY_CPP([ -#include -#include -], glib_have_carbon=yes) - -AC_MSG_RESULT([$glib_have_carbon]) - -AM_CONDITIONAL(OS_WIN32, [test "$glib_native_win32" = "yes"]) -AM_CONDITIONAL(OS_WIN32_X64, [test "$LIB_EXE_MACHINE_FLAG" = "X64"]) -AM_CONDITIONAL(OS_UNIX, [test "$glib_native_win32" != "yes"]) -AM_CONDITIONAL(OS_LINUX, [test "$glib_os_linux" = "yes"]) -AM_CONDITIONAL(OS_CARBON, [test "$glib_have_carbon" = "yes"]) - -if test "$glib_native_win32" = "yes"; then - AC_CHECK_TOOL(WINDRES, windres, no) - if test "$WINDRES" = no; then - AC_MSG_ERROR([*** Could not find an implementation of windres in your PATH.]) - fi - AC_CHECK_TOOL(NM, nm, no) - if test "$NM" = no; then - AC_MSG_ERROR([*** Could not find an implementation of nm in your PATH.]) - fi - AC_CHECK_TOOL(RANLIB, ranlib, :) - AC_CHECK_PROG(ms_librarian, [lib.exe], [yes], [no]) -fi -AM_CONDITIONAL(MS_LIB_AVAILABLE, [test x$ms_librarian = xyes]) - -if test "$glib_native_win32" != yes; then - # libtool option to control which symbols are exported - # right now, symbols starting with _ are not exported - LIBTOOL_EXPORT_OPTIONS='-export-symbols-regex "^g.*"' -else - # We currently use .def files on Windows - LIBTOOL_EXPORT_OPTIONS= -fi -AC_SUBST(LIBTOOL_EXPORT_OPTIONS) - -if test "x$glib_have_carbon" = "xyes"; then - AC_DEFINE(HAVE_CARBON, 1, [define to 1 if Carbon is available]) - LDFLAGS="$LDFLAGS -framework Carbon" -fi - - -dnl declare --enable-* args and collect ac_help strings -AC_ARG_ENABLE(debug, - AC_HELP_STRING([--enable-debug=@<:@no/minimum/yes@:>@], - [turn on debugging @<:@default=glib_debug_default@:>@]),, - enable_debug=glib_debug_default) - -AC_ARG_ENABLE(gc_friendly, - [AC_HELP_STRING([--enable-gc-friendly], - [turn on garbage collector friendliness [default=no]])],, - [enable_gc_friendly=no]) -AC_ARG_ENABLE(mem_pools, - [AC_HELP_STRING([--disable-mem-pools], - [disable all glib memory pools])],, - [disable_mem_pools=no]) -AC_ARG_ENABLE(threads, - [AC_HELP_STRING([--enable-threads], - [turn on basic thread support [default=yes] -([=no] will override --with-threads)])],, - [enable_threads=yes]) -AC_ARG_ENABLE(rebuilds, - [AC_HELP_STRING([--disable-rebuilds], - [disable all source autogeneration rules])],, - [enable_rebuilds=yes]) -AC_ARG_ENABLE(visibility, - [AC_HELP_STRING([--disable-visibility], - [don't use ELF visibility attributes])],, - [enable_visibility=yes]) - -if test "x$enable_threads" != "xyes"; then - enable_threads=no -fi - -AC_MSG_CHECKING([whether to enable garbage collector friendliness]) -if test "x$enable_gc_friendly" = "xyes"; then - AC_DEFINE(ENABLE_GC_FRIENDLY_DEFAULT, 1, [Whether to enable GC friendliness by default]) - AC_MSG_RESULT([yes]) -else - AC_MSG_RESULT([no]) -fi - -AC_MSG_CHECKING([whether to disable memory pools]) -if test "x$disable_mem_pools" = "xno"; then - AC_MSG_RESULT([no]) -else - AC_DEFINE(DISABLE_MEM_POOLS, [1], [Whether to disable memory pools]) - AC_SUBST(DISABLE_MEM_POOLS) - AC_MSG_RESULT([yes]) -fi - -dnl location to install runtime libraries, e.g. ../../lib to install -dnl to /lib if libdir is /usr/lib -AC_ARG_WITH(runtime-libdir, - [AC_HELP_STRING([--with-runtime-libdir=RELPATH], - [Install runtime libraries relative to libdir])], - [], - [with_runtime_libdir=""]) -GLIB_RUNTIME_LIBDIR="$with_runtime_libdir" -ABS_GLIB_RUNTIME_LIBDIR="`readlink -f $libdir/$with_runtime_libdir`" -AC_SUBST(GLIB_RUNTIME_LIBDIR) -AC_SUBST(ABS_GLIB_RUNTIME_LIBDIR) -AM_CONDITIONAL(HAVE_GLIB_RUNTIME_LIBDIR, [test "x$with_runtime_libdir" != "x"]) - -dnl Checks for programs. -AC_PROG_CC -AC_PROG_CPP - -dnl Check for a working C++ compiler, but do not bail out, if none is found. -AC_CHECK_TOOLS(CXX, [$CCC c++ g++ gcc CC cxx cc++ cl], [gcc]) -AC_LANG_SAVE -AC_LANG_CPLUSPLUS -AC_TRY_COMPILE(,[class a { int b; } c;], ,CXX=) -AM_CONDITIONAL(HAVE_CXX, [test "$CXX" != ""]) -AC_LANG_RESTORE - -AM_PROG_CC_STDC -AM_PROG_CC_C_O -AC_PROG_INSTALL - -AC_SYS_LARGEFILE - -# -# Find pkg-config -# -AC_PATH_PROG(PKG_CONFIG, [pkg-config], [no]) -if test x$PKG_CONFIG = xno ; then - AC_MSG_ERROR([*** pkg-config not found. See http://www.freedesktop.org/software/pkgconfig/]) -fi - -if $PKG_CONFIG --atleast-pkgconfig-version 0.16 ; then - : -else - AC_MSG_ERROR([*** pkg-config too old; version 0.16 or better required.]) -fi - -if test "x$enable_debug" = "xyes"; then - if test x$cflags_set != xset ; then - case " $CFLAGS " in - *[[\ \ ]]-g[[\ \ ]]*) ;; - *) CFLAGS="$CFLAGS -g" ;; - esac - fi - - GLIB_DEBUG_FLAGS="-DG_ENABLE_DEBUG" -else - GLIB_DEBUG_FLAGS="-DG_DISABLE_CAST_CHECKS" - - if test "x$enable_debug" = "xno"; then - GLIB_DEBUG_FLAGS="$GLIB_DEBUG_FLAGS -DG_DISABLE_ASSERT -DG_DISABLE_CHECKS" - fi -fi - -if test "x$enable_visibility" = "xno"; then - GLIB_DEBUG_FLAGS="$GLIB_DEBUG_FLAGS -DDISABLE_VISIBILITY" -fi - -# Ensure MSVC-compatible struct packing convention is used when -# compiling for Win32 with gcc. -# What flag to depends on gcc version: gcc3 uses "-mms-bitfields", while -# gcc2 uses "-fnative-struct". -if test x"$glib_native_win32" = xyes; then - if test x"$GCC" = xyes; then - msnative_struct='' - AC_MSG_CHECKING([how to get MSVC-compatible struct packing]) - if test -z "$ac_cv_prog_CC"; then - our_gcc="$CC" - else - our_gcc="$ac_cv_prog_CC" - fi - case `$our_gcc --version | sed -e 's,\..*,.,' -e q` in - 2.) - if $our_gcc -v --help 2>/dev/null | grep fnative-struct >/dev/null; then - msnative_struct='-fnative-struct' - fi - ;; - *) - if $our_gcc -v --help 2>/dev/null | grep ms-bitfields >/dev/null; then - msnative_struct='-mms-bitfields' - fi - ;; - esac - if test x"$msnative_struct" = x ; then - AC_MSG_RESULT([no way]) - AC_MSG_WARN([produced libraries might be incompatible with MSVC-compiled code]) - else - CFLAGS="$CFLAGS $msnative_struct" - AC_MSG_RESULT([${msnative_struct}]) - fi - fi -fi -GLIB_EXTRA_CFLAGS="${msnative_struct}" -AC_SUBST(GLIB_EXTRA_CFLAGS) - -AC_EXEEXT - -# define a MAINT-like variable REBUILD which is set if Perl -# and awk are found, so autogenerated sources can be rebuilt -AC_PROG_AWK -AC_CHECK_PROGS(PERL, [perl5 perl]) -# We would like indent, but don't require it. -AC_CHECK_PROG(INDENT, indent, indent) -REBUILD=\# -if test "x$enable_rebuilds" = "xyes" && \ - test -n "$PERL" && \ - $PERL -e 'exit !($] >= 5.002)' > /dev/null 2>&1 && \ - test -n "$AWK" ; then - REBUILD= -fi -AC_SUBST(REBUILD) - -# Need full path to Perl for glib-mkenums -# -if test "x$PERL" != x ; then - AC_PATH_PROG(PERL_PATH, [$PERL]) -fi -if test "x$PERL_PATH" = x ; then - PERL_PATH="/usr/bin/env perl" -fi -AC_SUBST(PERL_PATH) - -# Need suitable python path for greport -AM_PATH_PYTHON(2.4,,PYTHON="/usr/bin/env python2.4") - - -dnl *********************** -dnl *** Tests for iconv *** -dnl *********************** -dnl -dnl We do this before the gettext checks, to avoid distortion - -dnl On Windows we use a native implementation - -if test x"$glib_native_win32" = xyes; then - with_libiconv=native -else - AC_ARG_WITH(libiconv, - [AC_HELP_STRING([--with-libiconv=@<:@no/gnu/native@:>@], - [use the libiconv library])],, - [with_libiconv=maybe]) - - found_iconv=no - case $with_libiconv in - maybe) - # Check in the C library first - AC_CHECK_FUNC(iconv_open, [with_libiconv=no; found_iconv=yes]) - # Check if we have GNU libiconv - if test $found_iconv = "no"; then - AC_CHECK_LIB(iconv, libiconv_open, [with_libiconv=gnu; found_iconv=yes]) - fi - # Check if we have a iconv in -liconv, possibly from vendor - if test $found_iconv = "no"; then - AC_CHECK_LIB(iconv, iconv_open, [with_libiconv=native; found_iconv=yes]) - fi - ;; - no) - AC_CHECK_FUNC(iconv_open, [with_libiconv=no; found_iconv=yes]) - ;; - gnu|yes) - AC_CHECK_LIB(iconv, libiconv_open, [with_libiconv=gnu; found_iconv=yes]) - ;; - native) - AC_CHECK_LIB(iconv, iconv_open, [with_libiconv=native; found_iconv=yes]) - ;; - esac - - if test "x$found_iconv" = "xno" ; then - AC_MSG_ERROR([*** No iconv() implementation found in C library or libiconv]) - fi -fi - -gl_GLIBC21 -AC_ARG_ENABLE(iconv-cache, - [AC_HELP_STRING([--enable-iconv-cache=@<:@yes/no/auto@:>@], - [cache iconv descriptors [default=auto]])],, - [enable_iconv_cache=auto]) - -AC_MSG_CHECKING([Whether to cache iconv descriptors]) -case $enable_iconv_cache in - auto) - if test $ac_cv_gnu_library_2_1 = yes; then - enable_iconv_cache=no - else - enable_iconv_cache=yes - fi - ;; - yes|no) - ;; - *) AC_MSG_ERROR([Value given to --enable-iconv-cache must be one of yes, no or auto]) - ;; -esac - -if test $enable_iconv_cache = yes; then - AC_DEFINE(NEED_ICONV_CACHE,1,[Do we cache iconv descriptors]) -fi - -AC_MSG_RESULT($enable_iconv_cache) - - -dnl -dnl zlib support -dnl -found_zlib=no -AC_CHECK_LIB(z, inflate, [AC_CHECK_HEADER(zlib.h, found_zlib=yes)]) - -if test "x$found_zlib" = "xno" ; then - AC_MSG_ERROR([*** Working zlib library and headers not found ***]) -fi -ZLIB_LIBS='-lz' -AC_SUBST(ZLIB_LIBS) -dnl -dnl gettext support -dnl - -ALL_LINGUAS="`grep -v '^#' "$srcdir/po/LINGUAS" | tr '\n' ' '`" -AC_SUBST([CONFIG_STATUS_DEPENDENCIES],['$(top_srcdir)/po/LINGUAS']) -GLIB_GNU_GETTEXT - -if test "$gt_cv_have_gettext" != "yes" ; then - AC_MSG_ERROR([ -*** You must have either have gettext support in your C library, or use the -*** GNU gettext library. (http://www.gnu.org/software/gettext/gettext.html -]) -fi - -LIBS="$INTLLIBS $LIBS" - -GETTEXT_PACKAGE=glib20 -AC_SUBST(GETTEXT_PACKAGE) -AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE, ["$GETTEXT_PACKAGE"], - [Define the gettext package to be used]) - -GLIB_DEFINE_LOCALEDIR(GLIB_LOCALE_DIR) - -dnl -dnl Now we are done with gettext checks, figure out ICONV_LIBS -dnl - -if test x"$glib_native_win32" != xyes; then - if test x$with_libiconv != xno ; then - case " $INTLLIBS " in - *[[\ \ ]]-liconv[[\ \ ]]*) ;; - *) ICONV_LIBS="-liconv" ;; - esac - fi -fi -AC_SUBST(ICONV_LIBS) - -case $with_libiconv in - gnu) - AC_DEFINE(USE_LIBICONV_GNU, 1, [Using GNU libiconv]) - ;; - native) - AC_DEFINE(USE_LIBICONV_NATIVE, 1, [Using a native implementation of iconv in a separate library]) - ;; -esac - -dnl Initialize libtool -AM_DISABLE_STATIC -AC_LIBTOOL_WIN32_DLL -AM_PROG_LIBTOOL -dnl when using libtool 2.x create libtool early, because it's used in configure -m4_ifdef([LT_OUTPUT], [LT_OUTPUT]) - - -if test "x$GCC" = "xyes"; then - case " $CFLAGS " in - *[[\ \ ]]-Wall[[\ \ ]]*) ;; - *) CFLAGS="$CFLAGS -Wall" ;; - esac -fi - -CPPFLAGS="$CPPFLAGS -DG_DISABLE_SINGLE_INCLUDES" - -if test "$glib_native_win32" = "yes"; then - if test x$enable_static = xyes -a x$enable_shared = xyes; then - AC_MSG_ERROR([Can not build both shared and static at the same time on Windows.]) - fi - if test x$enable_static = xyes; then - glib_win32_static_compilation=yes - GLIB_WIN32_STATIC_COMPILATION_DEFINE="#define GLIB_STATIC_COMPILATION 1 -#define GOBJECT_STATIC_COMPILATION 1" - AC_SUBST(GLIB_WIN32_STATIC_COMPILATION_DEFINE) - fi -fi -AM_CONDITIONAL(OS_WIN32_AND_DLL_COMPILATION, [test x$glib_native_win32 = xyes -a x$glib_win32_static_compilation != xyes]) - -dnl -dnl DU4 native cc currently needs -std1 for ANSI mode (instead of K&R) -dnl -if test $cross_compiling != yes ; then - AC_MSG_CHECKING([for extra flags to get ANSI library prototypes]) - glib_save_LIBS=$LIBS - LIBS="$LIBS -lm" - AC_TRY_RUN([#include - int main (void) { return (log(1) != log(1.)); }], - AC_MSG_RESULT(none needed), - glib_save_CFLAGS=$CFLAGS - CFLAGS="$CFLAGS -std1" - AC_TRY_RUN([#include - int main (void) { return (log(1) != log(1.)); }], - AC_MSG_RESULT(-std1), - AC_MSG_RESULT() - CFLAGS=$glib_save_CFLAGS - AC_MSG_WARN( - [No ANSI prototypes found in library. (-std1 didn't work.)]) - ) - ) - LIBS=$glib_save_LIBS -fi - -dnl NeXTStep cc seems to need this -AC_MSG_CHECKING([for extra flags for POSIX compliance]) -AC_TRY_COMPILE([#include ], [DIR *dir;], - AC_MSG_RESULT(none needed), - glib_save_CFLAGS=$CFLAGS - CFLAGS="$CFLAGS -posix" - AC_TRY_COMPILE([#include ], [DIR *dir;], - AC_MSG_RESULT(-posix), - AC_MSG_RESULT() - CFLAGS=$glib_save_CFLAGS - AC_MSG_WARN([Could not determine POSIX flag. (-posix didn't work.)]))) - -# Checks for header files. -AC_HEADER_STDC - -# Checks for library functions. -AC_FUNC_VPRINTF -AC_FUNC_ALLOCA -AC_CHECK_FUNCS(mmap posix_memalign memalign valloc fsync pipe2) -AC_CHECK_FUNCS(atexit on_exit timegm gmtime_r) - -AC_CHECK_SIZEOF(char) -AC_CHECK_SIZEOF(short) -AC_CHECK_SIZEOF(long) -AC_CHECK_SIZEOF(int) -AC_CHECK_SIZEOF(void *) -AC_CHECK_SIZEOF(long long) -AC_CHECK_SIZEOF(__int64) - -if test x$ac_cv_sizeof_long = x8 || test x$ac_cv_sizeof_long_long = x8 || test x$ac_cv_sizeof___int64 = x8 ; then - : -else - AC_MSG_ERROR([ -*** GLib requires a 64 bit type. You might want to consider -*** using the GNU C compiler. -]) -fi - -if test x$glib_native_win32 != xyes && test x$ac_cv_sizeof_long_long = x8; then - # long long is a 64 bit integer. - AC_MSG_CHECKING(for format to printf and scanf a guint64) - AC_CACHE_VAL(glib_cv_long_long_format,[ - for format in ll q I64; do - AC_TRY_RUN([#include - int main() - { - long long b, a = -0x3AFAFAFAFAFAFAFALL; - char buffer[1000]; - sprintf (buffer, "%${format}u", a); - sscanf (buffer, "%${format}u", &b); - exit (b!=a); - } - ], - [glib_cv_long_long_format=${format} - break], - [],[:]) - done]) - if test -n "$glib_cv_long_long_format"; then - AC_MSG_RESULT(%${glib_cv_long_long_format}u) - AC_DEFINE(HAVE_LONG_LONG_FORMAT,1,[define if system printf can print long long]) - if test x"$glib_cv_long_long_format" = xI64; then - AC_DEFINE(HAVE_INT64_AND_I64,1,[define to support printing 64-bit integers with format I64]) - fi - else - AC_MSG_RESULT(none) - fi -elif test x$ac_cv_sizeof___int64 = x8; then - # __int64 is a 64 bit integer. - AC_MSG_CHECKING(for format to printf and scanf a guint64) - # We know this is MSVCRT.DLL, and what the formats are - glib_cv_long_long_format=I64 - AC_MSG_RESULT(%${glib_cv_long_long_format}u) - AC_DEFINE(HAVE_LONG_LONG_FORMAT,1,[define if system printf can print long long]) - AC_DEFINE(HAVE_INT64_AND_I64,1,[define to support printing 64-bit integers with format I64]) -fi - -dnl long doubles were not used, and a portability problem -dnl AC_C_LONG_DOUBLE -AC_C_CONST - -dnl ok, here we try to check whether the systems prototypes for -dnl malloc and friends actually match the prototypes provided -dnl by gmem.h (keep in sync). i currently only know how to check -dnl this reliably with gcc (-Werror), improvements for other -dnl compilers are apprechiated. -SANE_MALLOC_PROTOS=no -AC_MSG_CHECKING([if malloc() and friends prototypes are gmem.h compatible]) -glib_save_CFLAGS=$CFLAGS -if test "x$GCC" = "xyes"; then - CFLAGS="$CFLAGS -Werror" - AC_TRY_COMPILE([#include ], [ - void* (*my_calloc_p) (size_t, size_t) = calloc; - void* (*my_malloc_p) (size_t) = malloc; - void (*my_free_p) (void*) = free; - void* (*my_realloc_p) (void*, size_t) = realloc; - my_calloc_p = 0; - my_malloc_p = 0; - my_free_p = 0; - my_realloc_p = 0; - ], - AC_DEFINE(SANE_MALLOC_PROTOS, 1, - [Define if you have correct malloc prototypes]) - SANE_MALLOC_PROTOS=yes) -fi -AC_MSG_RESULT($SANE_MALLOC_PROTOS) -CFLAGS=$glib_save_CFLAGS - -dnl -dnl check in which direction the stack grows -dnl -AC_CACHE_CHECK([for growing stack pointer],glib_cv_stack_grows,[ - AC_TRY_RUN([ - volatile int *a = 0, *b = 0; - void foo (void); - int main () { volatile int y = 7; a = &y; foo (); return b > a; } - void foo (void) { volatile int x = 5; b = &x; } - ], - glib_cv_stack_grows=no - , - glib_cv_stack_grows=yes - ,) -]) - -dnl AC_C_INLINE is useless to us since it bails out too early, we need to -dnl truely know which ones of `inline', `__inline' and `__inline__' are -dnl actually supported. -AC_CACHE_CHECK([for __inline],glib_cv_has__inline,[ - AC_COMPILE_IFELSE([ - __inline int foo () { return 0; } - int main () { return foo (); } - ], - glib_cv_has__inline=yes - , - glib_cv_has__inline=no - ,) -]) -case x$glib_cv_has__inline in -xyes) AC_DEFINE(G_HAVE___INLINE,1,[Have __inline keyword]) -esac -AC_CACHE_CHECK([for __inline__],glib_cv_has__inline__,[ - AC_COMPILE_IFELSE([ - __inline__ int foo () { return 0; } - int main () { return foo (); } - ], - glib_cv_has__inline__=yes - , - glib_cv_has__inline__=no - ,) -]) -case x$glib_cv_has__inline__ in -xyes) AC_DEFINE(G_HAVE___INLINE__,1,[Have __inline__ keyword]) -esac -AC_CACHE_CHECK([for inline], glib_cv_hasinline,[ - AC_COMPILE_IFELSE([ - #undef inline - inline int foo () { return 0; } - int main () { return foo (); } - ], - glib_cv_hasinline=yes - , - glib_cv_hasinline=no - ,) -]) -case x$glib_cv_hasinline in -xyes) AC_DEFINE(G_HAVE_INLINE,1,[Have inline keyword]) -esac - -# if we can use inline functions in headers -AC_MSG_CHECKING(if inline functions in headers work) -AC_LINK_IFELSE([ -#if defined (G_HAVE_INLINE) && defined (__GNUC__) && defined (__STRICT_ANSI__) -# undef inline -# define inline __inline__ -#elif !defined (G_HAVE_INLINE) -# undef inline -# if defined (G_HAVE___INLINE__) -# define inline __inline__ -# elif defined (G_HAVE___INLINE) -# define inline __inline -# endif -#endif - -int glib_test_func2 (int); - -static inline int -glib_test_func1 (void) { - return glib_test_func2 (1); -} - -int -main (void) { - int i = 1; -}],[g_can_inline=yes],[g_can_inline=no]) -AC_MSG_RESULT($g_can_inline) - -dnl *** check for working do while(0) macros *** -AC_CACHE_CHECK([for working do while(0) macros], g_cv_support_dowhile_macros, [ - AC_TRY_COMPILE([],[ - #define STMT_START do - #define STMT_END while(0) - #define STMT_TEST STMT_START { i = 0; } STMT_END - int main(void) { int i = 1; STMT_TEST; return i; }], - [g_cv_support_dowhile_macros=yes], - [g_cv_support_dowhile_macros=no], - [g_cv_support_dowhile_macros=yes]) -]) -if test x$g_cv_support_dowhile_macros = xyes; then - AC_DEFINE(HAVE_DOWHILE_MACROS, 1, [define for working do while(0) macros]) -fi - -# check for flavours of varargs macros -AC_MSG_CHECKING(for ISO C99 varargs macros in C) -AC_TRY_COMPILE([],[ -int a(int p1, int p2, int p3); -#define call_a(...) a(1,__VA_ARGS__) -call_a(2,3); -],g_have_iso_c_varargs=yes,g_have_iso_c_varargs=no) -AC_MSG_RESULT($g_have_iso_c_varargs) - -AC_MSG_CHECKING(for ISO C99 varargs macros in C++) -if test "$CXX" = ""; then -dnl No C++ compiler - g_have_iso_cxx_varargs=no -else - AC_LANG_CPLUSPLUS - AC_TRY_COMPILE([],[ -int a(int p1, int p2, int p3); -#define call_a(...) a(1,__VA_ARGS__) -call_a(2,3); -],g_have_iso_cxx_varargs=yes,g_have_iso_cxx_varargs=no) - AC_LANG_C -fi -AC_MSG_RESULT($g_have_iso_cxx_varargs) - -AC_MSG_CHECKING(for GNUC varargs macros) -AC_TRY_COMPILE([],[ -int a(int p1, int p2, int p3); -#define call_a(params...) a(1,params) -call_a(2,3); -],g_have_gnuc_varargs=yes,g_have_gnuc_varargs=no) -AC_MSG_RESULT($g_have_gnuc_varargs) - -# check for GNUC visibility support -AC_MSG_CHECKING(for GNUC visibility attribute) -GLIB_CHECK_COMPILE_WARNINGS([ -void -__attribute__ ((visibility ("hidden"))) - f_hidden (void) -{ -} -void -__attribute__ ((visibility ("internal"))) - f_internal (void) -{ -} -void -__attribute__ ((visibility ("protected"))) - f_protected (void) -{ -} -void -__attribute__ ((visibility ("default"))) - f_default (void) -{ -} -int main (int argc, char **argv) -{ - f_hidden(); - f_internal(); - f_protected(); - f_default(); - return 0; -} -],g_have_gnuc_visibility=yes,g_have_gnuc_visibility=no) -AC_MSG_RESULT($g_have_gnuc_visibility) -AM_CONDITIONAL(HAVE_GNUC_VISIBILITY, [test x$g_have_gnuc_visibility = xyes]) - -AC_MSG_CHECKING([whether using Sun Studio C compiler]) -AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#if defined(__SUNPRO_C) || (__SUNPRO_C >= 0x550) -#else -# include "error: this is not Sun Studio." -#endif -]], [[]])], [ g_have_sunstudio_visibility=yes ], [ g_have_sunstudio_visibility=no ]) -AC_MSG_RESULT($g_have_sunstudio_visibility) -AM_CONDITIONAL(HAVE_SUNSTUDIO_VISIBILITY, [test x$g_have_sunstudio_visibility = xyes]) - -# check for bytesex stuff -AC_C_BIGENDIAN -if test x$ac_cv_c_bigendian = xuniversal ; then -AC_TRY_COMPILE([#include ], [#if __BYTE_ORDER == __BIG_ENDIAN -#else -#error Not a big endian. -#endif], - ac_cv_c_bigendian=yes - ,AC_TRY_COMPILE([#include ], [#if __BYTE_ORDER == __LITTLE_ENDIAN -#else -#error Not a little endian. -#endif], - ac_cv_c_bigendian=no - ,AC_MSG_WARN([Could not determine endianness.]))) -fi - - -# check for header files -AC_CHECK_HEADERS([dirent.h float.h limits.h pwd.h grp.h sys/param.h sys/poll.h sys/resource.h]) -AC_CHECK_HEADERS([sys/time.h sys/times.h sys/wait.h unistd.h values.h]) -AC_CHECK_HEADERS([sys/select.h sys/types.h stdint.h inttypes.h sched.h malloc.h]) -AC_CHECK_HEADERS([sys/vfs.h sys/mount.h sys/vmount.h sys/statfs.h sys/statvfs.h]) -AC_CHECK_HEADERS([mntent.h sys/mnttab.h sys/vfstab.h sys/mntctl.h sys/sysctl.h fstab.h]) -AC_CHECK_HEADERS([sys/uio.h]) - -# check for structure fields -AC_CHECK_MEMBERS([struct stat.st_mtimensec, struct stat.st_mtim.tv_nsec, struct stat.st_atimensec, struct stat.st_atim.tv_nsec, struct stat.st_ctimensec, struct stat.st_ctim.tv_nsec]) -AC_CHECK_MEMBERS([struct stat.st_blksize, struct stat.st_blocks, struct statfs.f_fstypename, struct statfs.f_bavail],,, [#include -#include -#include -#ifdef HAVE_SYS_STATFS_H -#include -#endif -#ifdef HAVE_SYS_PARAM_H -#include -#endif -#ifdef HAVE_SYS_MOUNT_H -#include -#endif]) -# struct statvfs.f_basetype is available on Solaris but not for Linux. -AC_CHECK_MEMBERS([struct statvfs.f_basetype],,, [#include ]) - -# Checks for libcharset -AM_LANGINFO_CODESET -gl_GLIBC21 -AC_CHECK_HEADERS([stddef.h stdlib.h string.h]) -AC_CHECK_FUNCS(setlocale) - -# check additional type sizes -AC_CHECK_SIZEOF(size_t) - -dnl Try to figure out whether gsize, gssize should be long or int -AC_MSG_CHECKING([for the appropriate definition for size_t]) - -case $ac_cv_sizeof_size_t in - $ac_cv_sizeof_short) - glib_size_type=short - ;; - $ac_cv_sizeof_int) - glib_size_type=int - ;; - $ac_cv_sizeof_long) - glib_size_type=long - ;; - $ac_cv_sizeof_long_long) - glib_size_type='long long' - ;; - $ac_cv_sizeof__int64) - glib_size_type='__int64' - ;; - *) AC_MSG_ERROR([No type matching size_t in size]) - ;; -esac - -dnl If int/long are the same size, we see which one produces -dnl warnings when used in the location as size_t. (This matters -dnl on AIX with xlc) -dnl -if test $ac_cv_sizeof_size_t = $ac_cv_sizeof_int && - test $ac_cv_sizeof_size_t = $ac_cv_sizeof_long ; then - GLIB_CHECK_COMPILE_WARNINGS([ -#if defined(_AIX) && !defined(__GNUC__) -#pragma options langlvl=stdc89 -#endif -#include -int main () -{ - size_t s = 1; - unsigned int *size_int = &s; - return (int)*size_int; -} - ],glib_size_type=int, - [GLIB_CHECK_COMPILE_WARNINGS([ -#if defined(_AIX) && !defined(__GNUC__) -#pragma options langlvl=stdc89 -#endif -#include -int main () -{ - size_t s = 1; - unsigned long *size_long = &s; - return (int)*size_long; -} - ],glib_size_type=long)]) -fi - -AC_MSG_RESULT(unsigned $glib_size_type) - -# Check for some functions -AC_CHECK_FUNCS(lstat strerror strsignal memmove vsnprintf stpcpy strcasecmp strncasecmp poll getcwd vasprintf setenv unsetenv getc_unlocked readlink symlink fdwalk) -AC_CHECK_FUNCS(chown lchmod lchown fchmod fchown link statvfs statfs utimes getgrgid getpwuid) -AC_CHECK_FUNCS(getmntent_r setmntent endmntent hasmntopt getmntinfo) -# Check for high-resolution sleep functions -AC_CHECK_FUNCS(nanosleep nsleep) -AC_CHECK_FUNCS(splice) - -AC_CHECK_HEADERS(crt_externs.h) -AC_CHECK_FUNCS(_NSGetEnviron) - -AC_FUNC_VSNPRINTF_C99 -AC_FUNC_PRINTF_UNIX98 - -# Internet address families -if test $glib_native_win32 = yes; then - glib_inet_includes=[" -#include - "] -else - glib_inet_includes=[" -#include -#include - "] -fi - -glib_failed=false -GLIB_CHECK_VALUE(AF_INET, $glib_inet_includes, glib_failed=true) -GLIB_CHECK_VALUE(AF_INET6, $glib_inet_includes, glib_failed=true) -# winsock defines this even though it doesn't support it -GLIB_CHECK_VALUE(AF_UNIX, $glib_inet_includes, glib_failed=true) -if $glib_failed ; then - AC_MSG_ERROR([Could not determine values for AF_INET* constants]) -fi - -glib_failed=false -GLIB_CHECK_VALUE(MSG_PEEK, $glib_inet_includes, glib_failed=true) -GLIB_CHECK_VALUE(MSG_OOB, $glib_inet_includes, glib_failed=true) -GLIB_CHECK_VALUE(MSG_DONTROUTE, $glib_inet_includes, glib_failed=true) -if $glib_failed ; then - AC_MSG_ERROR([Could not determine values for MSG_* constants]) -fi - -AC_CHECK_FUNCS(getprotobyname_r endservent) -AC_CHECK_HEADERS([netdb.h wspiapi.h]) - -# For gio/libasyncns -if test $glib_native_win32 = no; then - AC_CHECK_FUNCS(strndup setresuid setreuid) - AC_CHECK_HEADERS(sys/prctl.h arpa/nameser_compat.h) - - # We can't just use AC_CHECK_FUNC/AC_CHECK_LIB here. Bug 586150 - AC_MSG_CHECKING([for res_query]) - AC_TRY_LINK([#include -#include -#include -#include ], - [res_query("test", 0, 0, (void *)0, 0);], - [AC_MSG_RESULT([yes])], - [save_libs="$LIBS" - LIBS="-lresolv $LIBS" - AC_TRY_LINK([#include -#include -#include -#include ], - [res_query("test", 0, 0, (void *)0, 0);], - [AC_MSG_RESULT([in -lresolv]) - LIBASYNCNS_LIBADD="-lresolv"], - [LIBS="-lbind $save_libs" - AC_TRY_LINK([#include ], - [res_query("test", 0, 0, (void *)0, 0);], - [AC_MSG_RESULT([in -lbind]) - LIBASYNCNS_LIBADD="-lbind"], - [AC_MSG_ERROR(not found)])]) - LIBS="$save_libs"]) - AC_SUBST(LIBASYNCNS_LIBADD) -fi - -case $host in - *-*-solaris* ) - AC_DEFINE(_XOPEN_SOURCE_EXTENDED, 1, Needed to get declarations for msg_control and msg_controllen on Solaris) - AC_DEFINE(_XOPEN_SOURCE, 2, Needed to get declarations for msg_control and msg_controllen on Solaris) - AC_DEFINE(__EXTENSIONS__, 1, Needed to get declarations for msg_control and msg_controllen on Solaris) - ;; -esac - -dnl -dnl if statfs() takes 2 arguments (Posix) or 4 (Solaris) -dnl -if test "$ac_cv_func_statfs" = yes ; then - AC_MSG_CHECKING([number of arguments to statfs()]) - AC_TRY_COMPILE([#include - #ifdef HAVE_SYS_PARAM_H - #include - #endif - #ifdef HAVE_SYS_VFS_H - #include - #endif - #ifdef HAVE_SYS_MOUNT_H - #include - #endif - #ifdef HAVE_SYS_STATFS_H - #include - #endif], [struct statfs st; - statfs(NULL, &st);],[ - AC_MSG_RESULT([2]) - AC_DEFINE(STATFS_ARGS, 2, [Number of arguments to statfs()])],[ - AC_TRY_COMPILE([#include - #ifdef HAVE_SYS_PARAM_H - #include - #endif - #ifdef HAVE_SYS_VFS_H - #include - #endif - #ifdef HAVE_SYS_MOUNT_H - #include - #endif - #ifdef HAVE_SYS_STATFS_H - #include - #endif], [struct statfs st; - statfs(NULL, &st, sizeof (st), 0);],[ - AC_MSG_RESULT([4]) - AC_DEFINE(STATFS_ARGS, 4, [Number of arguments to statfs()])],[ - AC_MSG_RESULT(unknown) - AC_MSG_ERROR([unable to determine number of arguments to statfs()])])]) -fi - -# -# Check whether to use an included printf -# - -AC_ARG_ENABLE(included-printf, - [AC_HELP_STRING([--enable-included-printf], - [use included printf [default=auto]])], - enable_included_printf="$enableval") - -need_included_printf=no -if test "x$enable_included_printf" = "xyes" ; then - need_included_printf=yes -fi -if test "$ac_cv_func_vsnprintf_c99" != "yes" ; then - need_included_printf=yes -fi -if test "$ac_cv_func_printf_unix98" != "yes" ; then - need_included_printf=yes -fi -if test "x$ac_cv_sizeof_long_long" = "x8" && - test -z "$glib_cv_long_long_format" ; then - need_included_printf=yes -fi - -if test "x$enable_included_printf" = "xno" && - test "x$need_included_printf" = "xyes" ; then - AC_MSG_ERROR([ -*** Your C library's printf doesn't appear to have the features that -*** GLib needs, but you specified --enable-included-printf=no.]) -fi - -enable_included_printf=$need_included_printf - -AM_CONDITIONAL(HAVE_GOOD_PRINTF, test "$enable_included_printf" != "yes") -if test "$enable_included_printf" != "yes" ; then - AC_DEFINE(HAVE_GOOD_PRINTF,1,[define to use system printf]) -else - if test -z "$glib_cv_long_long_format" ; then - glib_cv_long_long_format="ll" - fi - AC_DEFINE(HAVE_VASPRINTF,1) -fi - -# Checks needed for gnulib vasnprintf -bh_C_SIGNED -jm_AC_TYPE_LONG_LONG -gt_TYPE_LONGDOUBLE -gt_TYPE_WCHAR_T -gt_TYPE_WINT_T -AC_TYPE_SIZE_T -AC_CHECK_TYPES(ptrdiff_t) -jm_AC_TYPE_INTMAX_T -AC_CHECK_FUNCS([snprintf wcslen]) -AC_FUNC_SNPRINTF_C99 - -# Check if bcopy can be used for overlapping copies, if memmove isn't found. -# The check is borrowed from the PERL Configure script. -if test "$ac_cv_func_memmove" != "yes"; then - AC_CACHE_CHECK(whether bcopy can handle overlapping copies, - glib_cv_working_bcopy,[AC_TRY_RUN([ - int main() { - char buf[128], abc[128], *b; - int len, off, align; - bcopy("abcdefghijklmnopqrstuvwxyz0123456789", abc, 36); - for (align = 7; align >= 0; align--) { - for (len = 36; len; len--) { - b = buf+align; bcopy(abc, b, len); - for (off = 1; off <= len; off++) { - bcopy(b, b+off, len); bcopy(b+off, b, len); - if (bcmp(b, abc, len)) return(1); - } - } - } - return(0); - }],glib_cv_working_bcopy=yes,glib_cv_working_bcopy=no)]) - - GLIB_ASSERT_SET(glib_cv_working_bcopy) - if test "$glib_cv_working_bcopy" = "yes"; then - AC_DEFINE(HAVE_WORKING_BCOPY,1,[Have a working bcopy]) - fi -fi - -# Check for sys_errlist -AC_MSG_CHECKING(for sys_errlist) -AC_TRY_LINK(, [ -extern char *sys_errlist[]; -extern int sys_nerr; -sys_errlist[sys_nerr-1][0] = 0; -], glib_ok=yes, glib_ok=no) -AC_MSG_RESULT($glib_ok) -if test "$glib_ok" = "no"; then - AC_DEFINE(NO_SYS_ERRLIST,1,[global 'sys_errlist' not found]) -fi - -# Check for sys_siglist -AC_MSG_CHECKING(for sys_siglist) -AC_TRY_LINK(, [ -extern char *sys_siglist[]; -exit (sys_siglist[0]); -], glib_ok=yes, glib_ok=no) -AC_MSG_RESULT($glib_ok) -if test "$glib_ok" = "no"; then - AC_DEFINE(NO_SYS_SIGLIST,1,[global 'sys_siglist' not found]) -fi - -# Check for sys_siglist decl (see Tue Jan 19 00:44:24 1999 in changelog) -AC_MSG_CHECKING(for sys_siglist declaration) -AC_TRY_COMPILE([#include ], [ -strlen (sys_siglist[0]); -], glib_ok=yes, glib_ok=no) -AC_MSG_RESULT($glib_ok) -if test "$glib_ok" = "no"; then - AC_DEFINE(NO_SYS_SIGLIST_DECL,1,[global 'sys_siglist' not declared]) -fi - -# Check if needs to be included for fd_set -AC_MSG_CHECKING([for fd_set]) -AC_TRY_COMPILE([#include ], - [fd_set readMask, writeMask;], gtk_ok=yes, gtk_ok=no) -if test "$gtk_ok" = "yes"; then - AC_MSG_RESULT([yes, found in sys/types.h]) -else - AC_EGREP_HEADER(fd_set, sys/select.h, gtk_ok=yes) - if test "$gtk_ok" = "yes"; then - # *** FIXME: give it a different name - AC_DEFINE(HAVE_SYS_SELECT_H,1,[found fd_set in sys/select.h]) - AC_MSG_RESULT([yes, found in sys/select.h]) - else - AC_DEFINE(NO_FD_SET,1,[didn't find fd_set]) - AC_MSG_RESULT(no) - fi -fi - -dnl *** check for sane realloc() *** -AC_CACHE_CHECK([whether realloc (NULL,) will work],glib_cv_sane_realloc,[ - AC_TRY_RUN([#include - int main() { - return realloc (0, sizeof (int)) == 0; - }], - [glib_cv_sane_realloc=yes], - [glib_cv_sane_realloc=no], - [glib_cv_sane_realloc=yes]) -]) -if test x$glib_cv_sane_realloc = xyes; then - AC_DEFINE(REALLOC_0_WORKS,1,[whether realloc (NULL,) works]) -fi - -dnl Check for nl_langinfo and CODESET -AC_CACHE_CHECK([for nl_langinfo (CODESET)],glib_cv_langinfo_codeset,[ - AC_TRY_COMPILE([#include ], - [char *codeset = nl_langinfo (CODESET);], - [glib_cv_langinfo_codeset=yes], - [glib_cv_langinfo_codeset=no])]) -if test x$glib_cv_langinfo_codeset = xyes; then - AC_DEFINE(HAVE_CODESET,1,[Have nl_langinfo (CODESET)]) -fi - -dnl **************************************** -dnl *** posix_memalign *** -dnl **************************************** -AC_MSG_CHECKING(for a compliant posix_memalign() implementation) -AC_CACHE_VAL(glib_cv_compliant_posix_memalign,[ - glib_cv_compliant_posix_memalign=0 - if test "$ac_cv_func_posix_memalign" = "yes" ; then - AC_TRY_RUN([ - #define _XOPEN_SOURCE 600 - #include /* posix_memalign() should be defined here */ - /* some systems break if #include used */ - static void test_memalign (size_t boundary, size_t size) { - void *mem = 0; - if (posix_memalign (&mem, boundary, size) != 0 || !mem) - exit (1); - else - free (mem); - } - int main() { - test_memalign ( 128, 128 - 2 * sizeof (void*)); - test_memalign ( 256, 256 - 2 * sizeof (void*)); - test_memalign ( 512, 512 - 2 * sizeof (void*)); - test_memalign ( 1024, 1024 - 2 * sizeof (void*)); - test_memalign ( 2048, 2048 - 2 * sizeof (void*)); - test_memalign ( 4096, 4096 - 2 * sizeof (void*)); - test_memalign ( 8192, 8192 - 2 * sizeof (void*)); - test_memalign (16384, 16384 - 2 * sizeof (void*)); - test_memalign (32768, 32768 - 2 * sizeof (void*)); - exit (0); /* success */ - } - ], - [glib_cv_compliant_posix_memalign=1], [], [:]) - : - fi - ]) -if test "$glib_cv_compliant_posix_memalign" = "1"; then - AC_MSG_RESULT(yes) - AC_DEFINE(POSIX_MEMALIGN_WITH_COMPLIANT_ALLOCS, 1, [define if posix_memalign() can allocate any size]) -else - AC_MSG_RESULT(no) -fi - - -dnl **************************************** -dnl *** strlcpy/strlcat *** -dnl **************************************** -# Check for strlcpy -AC_CACHE_CHECK([for OpenBSD strlcpy/strlcat],glib_cv_have_strlcpy,[ -AC_TRY_RUN([#include -#include -int main() { - char p[10]; - (void) strlcpy (p, "hi", 10); - if (strlcat (p, "bye", 0) != 3) - return 1; - return 0; -}], glib_cv_have_strlcpy=yes, - glib_cv_have_strlcpy=no, - glib_cv_have_strlcpy=no)]) -if test "$glib_cv_have_strlcpy" = "yes"; then - AC_DEFINE(HAVE_STRLCPY,1,[Have functions strlcpy and strlcat]) -fi - - -dnl ********************** -dnl *** va_copy checks *** -dnl ********************** -dnl we currently check for all three va_copy possibilities, so we get -dnl all results in config.log for bug reports. -AC_CACHE_CHECK([for an implementation of va_copy()],glib_cv_va_copy,[ - AC_LINK_IFELSE([#include -#include - void f (int i, ...) { - va_list args1, args2; - va_start (args1, i); - va_copy (args2, args1); - if (va_arg (args2, int) != 42 || va_arg (args1, int) != 42) - exit (1); - va_end (args1); va_end (args2); - } - int main() { - f (0, 42); - return 0; - }], - [glib_cv_va_copy=yes], - [glib_cv_va_copy=no]) -]) -AC_CACHE_CHECK([for an implementation of __va_copy()],glib_cv___va_copy,[ - AC_LINK_IFELSE([#include -#include - void f (int i, ...) { - va_list args1, args2; - va_start (args1, i); - __va_copy (args2, args1); - if (va_arg (args2, int) != 42 || va_arg (args1, int) != 42) - exit (1); - va_end (args1); va_end (args2); - } - int main() { - f (0, 42); - return 0; - }], - [glib_cv___va_copy=yes], - [glib_cv___va_copy=no]) -]) - -if test "x$glib_cv_va_copy" = "xyes"; then - g_va_copy_func=va_copy -else if test "x$glib_cv___va_copy" = "xyes"; then - g_va_copy_func=__va_copy -fi -fi - -if test -n "$g_va_copy_func"; then - AC_DEFINE_UNQUOTED(G_VA_COPY,$g_va_copy_func,[A 'va_copy' style function]) -fi - -AC_CACHE_CHECK([whether va_lists can be copied by value],glib_cv_va_val_copy,[ - AC_TRY_RUN([#include -#include - void f (int i, ...) { - va_list args1, args2; - va_start (args1, i); - args2 = args1; - if (va_arg (args2, int) != 42 || va_arg (args1, int) != 42) - exit (1); - va_end (args1); va_end (args2); - } - int main() { - f (0, 42); - return 0; - }], - [glib_cv_va_val_copy=yes], - [glib_cv_va_val_copy=no], - [glib_cv_va_val_copy=yes]) -]) - -if test "x$glib_cv_va_val_copy" = "xno"; then - AC_DEFINE(G_VA_COPY_AS_ARRAY,1, ['va_lists' cannot be copies as values]) -fi - -dnl *********************** -dnl *** g_module checks *** -dnl *********************** -G_MODULE_LIBS= -G_MODULE_LIBS_EXTRA= -G_MODULE_PLUGIN_LIBS= -if test x"$glib_native_win32" = xyes; then - dnl No use for this on Win32 - G_MODULE_LDFLAGS= -else - export SED - G_MODULE_LDFLAGS=`(./libtool --config; echo eval echo \\$export_dynamic_flag_spec) | sh` -fi -dnl G_MODULE_IMPL= don't reset, so cmd-line can override -G_MODULE_NEED_USCORE=0 -G_MODULE_BROKEN_RTLD_GLOBAL=0 -G_MODULE_HAVE_DLERROR=0 -dnl *** force native WIN32 shared lib loader -if test -z "$G_MODULE_IMPL"; then - case "$host" in - *-*-mingw*|*-*-cygwin*) G_MODULE_IMPL=G_MODULE_IMPL_WIN32 ;; - esac -fi -dnl *** force native AIX library loader -dnl *** dlopen() filepath must be of the form /path/libname.a(libname.so) -if test -z "$G_MODULE_IMPL"; then - case "$host" in - *-*-aix*) G_MODULE_IMPL=G_MODULE_IMPL_AR ;; - esac -fi -dnl *** dlopen() and dlsym() in system libraries -if test -z "$G_MODULE_IMPL"; then - AC_CHECK_FUNC(dlopen, - [AC_CHECK_FUNC(dlsym, - [G_MODULE_IMPL=G_MODULE_IMPL_DL],[])], - []) -fi -dnl *** load_image (BeOS) -if test -z "$G_MODULE_IMPL" && test "x$glib_native_beos" = "xyes"; then - AC_CHECK_LIB(root, load_image, - [G_MODULE_LIBS="-lbe -lroot -lglib-2.0 " - G_MODULE_LIBS_EXTRA="-L\$(top_builddir_full)/.libs" - G_MODULE_PLUGIN_LIBS="-L\$(top_builddir_full)/gmodule/.libs -lgmodule" - G_MODULE_IMPL=G_MODULE_IMPL_BEOS], - []) -fi -dnl *** NSLinkModule (dyld) in system libraries (Darwin) -if test -z "$G_MODULE_IMPL"; then - AC_CHECK_FUNC(NSLinkModule, - [G_MODULE_IMPL=G_MODULE_IMPL_DYLD - G_MODULE_NEED_USCORE=1], - []) -fi -dnl *** dlopen() and dlsym() in libdl -if test -z "$G_MODULE_IMPL"; then - AC_CHECK_LIB(dl, dlopen, - [AC_CHECK_LIB(dl, dlsym, - [G_MODULE_LIBS=-ldl - G_MODULE_IMPL=G_MODULE_IMPL_DL],[])], - []) -fi -dnl *** shl_load() in libdld (HP-UX) -if test -z "$G_MODULE_IMPL"; then - AC_CHECK_LIB(dld, shl_load, - [G_MODULE_LIBS=-ldld - G_MODULE_IMPL=G_MODULE_IMPL_DLD], - []) -fi -dnl *** additional checks for G_MODULE_IMPL_DL -if test "$G_MODULE_IMPL" = "G_MODULE_IMPL_DL"; then - LIBS_orig="$LIBS" - LDFLAGS_orig="$LDFLAGS" - LIBS="$G_MODULE_LIBS $LIBS" - LDFLAGS="$LDFLAGS $G_MODULE_LDFLAGS" -dnl *** check for OSF1/5.0 RTLD_GLOBAL brokenness - echo "void glib_plugin_test(void) { }" > plugin.c - ${SHELL} ./libtool --mode=compile ${CC} -shared \ - -export-dynamic -o plugin.o plugin.c 2>&1 >/dev/null - AC_CACHE_CHECK([for RTLD_GLOBAL brokenness], - glib_cv_rtldglobal_broken,[ - AC_TRY_RUN([ -#include -#ifndef RTLD_GLOBAL -# define RTLD_GLOBAL 0 -#endif -#ifndef RTLD_LAZY -# define RTLD_LAZY 0 -#endif -int glib_plugin_test; -int main () { - void *handle, *global, *local; - global = &glib_plugin_test; - handle = dlopen ("./.libs/plugin.o", RTLD_GLOBAL | RTLD_LAZY); - if (!handle) return 0; - local = dlsym (handle, "glib_plugin_test"); - return global == local; -} ], - [glib_cv_rtldglobal_broken=no], - [glib_cv_rtldglobal_broken=yes], - [glib_cv_rtldglobal_broken=no]) - rm -f plugin.c plugin.o plugin.lo .libs/plugin.o - rmdir .libs 2>/dev/null - ]) - if test "x$glib_cv_rtldglobal_broken" = "xyes"; then - G_MODULE_BROKEN_RTLD_GLOBAL=1 - else - G_MODULE_BROKEN_RTLD_GLOBAL=0 - fi -dnl *** check whether we need preceeding underscores - AC_CACHE_CHECK([for preceeding underscore in symbols], - glib_cv_uscore,[ - AC_TRY_RUN([#include - int glib_underscore_test (void) { return 42; } - int main() { - void *f1 = (void*)0, *f2 = (void*)0, *handle; - handle = dlopen ((void*)0, 0); - if (handle) { - f1 = dlsym (handle, "glib_underscore_test"); - f2 = dlsym (handle, "_glib_underscore_test"); - } return (!f2 || f1); - }], - [glib_cv_uscore=yes], - [glib_cv_uscore=no], - []) - rm -f plugin.c plugin.$ac_objext plugin.lo - ]) - GLIB_ASSERT_SET(glib_cv_uscore) - if test "x$glib_cv_uscore" = "xyes"; then - G_MODULE_NEED_USCORE=1 - else - G_MODULE_NEED_USCORE=0 - fi - - LDFLAGS="$LDFLAGS_orig" -dnl *** check for having dlerror() - AC_CHECK_FUNC(dlerror, - [G_MODULE_HAVE_DLERROR=1], - [G_MODULE_HAVE_DLERROR=0]) - LIBS="$LIBS_orig" -fi -dnl *** done, have we got an implementation? -if test -z "$G_MODULE_IMPL"; then - G_MODULE_IMPL=0 - G_MODULE_SUPPORTED=false -else - G_MODULE_SUPPORTED=true -fi - -AC_MSG_CHECKING(for the suffix of module shared libraries) -export SED -shrext_cmds=`./libtool --config | grep '^shrext_cmds='` -eval $shrext_cmds -module=yes eval std_shrext=$shrext_cmds -# chop the initial dot -glib_gmodule_suffix=`echo $std_shrext | sed 's/^\.//'` -AC_MSG_RESULT(.$glib_gmodule_suffix) -# any reason it may fail? -if test "x$glib_gmodule_suffix" = x; then - AC_MSG_ERROR(Cannot determine shared library suffix from libtool) -fi - -AC_SUBST(G_MODULE_SUPPORTED) -AC_SUBST(G_MODULE_IMPL) -AC_SUBST(G_MODULE_LIBS) -AC_SUBST(G_MODULE_LIBS_EXTRA) -AC_SUBST(G_MODULE_PLUGIN_LIBS) -AC_SUBST(G_MODULE_LDFLAGS) -AC_SUBST(G_MODULE_HAVE_DLERROR) -AC_SUBST(G_MODULE_BROKEN_RTLD_GLOBAL) -AC_SUBST(G_MODULE_NEED_USCORE) -AC_SUBST(GLIB_DEBUG_FLAGS) - -dnl ********************** -dnl *** g_spawn checks *** -dnl ********************** - -AC_MSG_CHECKING(for gspawn implementation) -case "$host" in - *-*-mingw*) - GSPAWN=gspawn-win32.lo - ;; - *) - GSPAWN=gspawn.lo - ;; -esac -AC_MSG_RESULT($GSPAWN) -AC_SUBST(GSPAWN) - -dnl ************************* -dnl *** GIOChannel checks *** -dnl ************************* - -AC_MSG_CHECKING(for GIOChannel implementation) -case "$host" in - *-*-mingw*) - GIO=giowin32.lo - ;; - *) - GIO=giounix.lo - ;; -esac -AC_MSG_RESULT($GIO) -AC_SUBST(GIO) - -dnl ********************************* -dnl *** Directory for GIO modules *** -dnl ********************************* - -AC_ARG_WITH(gio-module-dir, - [AC_HELP_STRING([--with-gio-module-dir=PATH], - [Load gio modules from this directory [LIBDIR/gio/modules]])], - [], - [with_gio_module_dir='${libdir}/gio/modules']) -GIO_MODULE_DIR=$with_gio_module_dir -AC_SUBST(GIO_MODULE_DIR) - -dnl ********************************** -dnl *** Check for libselinux (GIO) *** -dnl ********************************** -AC_ARG_ENABLE(selinux, [ --disable-selinux build without selinux support]) -msg_selinux=no -SELINUX_LIBS= -if test "x$enable_selinux" != "xno"; then - - AC_CHECK_LIB(selinux, is_selinux_enabled, - [AC_CHECK_HEADERS(selinux/selinux.h, - [AC_CHECK_LIB(selinux, lgetfilecon_raw, - [AC_DEFINE(HAVE_SELINUX, 1, [Define to 1 if libselinux is available]) - SELINUX_LIBS="-lselinux" - msg_selinux=yes]) - ]) - ]) -fi -AC_SUBST(SELINUX_LIBS) - -dnl ***************************** -dnl ** Check for inotify (GIO) ** -dnl ***************************** -inotify_support=no -AC_CHECK_HEADERS([sys/inotify.h], -[ - inotify_support=yes - AC_CHECK_FUNCS(inotify_init1) -]) - -AM_CONDITIONAL(HAVE_INOTIFY, [test "$inotify_support" = "yes"]) - -dnl ********************************* -dnl ** Check for Solaris FEN (GIO) ** -dnl ********************************* -fen_support=no -AC_COMPILE_IFELSE([ -#include -#ifndef PORT_SOURCE_FILE -#error "Please upgrade to Nevada 72 or above to suppoert FEN" -#endif -int main() { return 0; } ], -[ - fen_support=yes -],) - -AM_CONDITIONAL(HAVE_FEN, [test "$fen_support" = "yes"]) - -dnl **************************** -dnl *** Checks for FAM (GIO) *** -dnl **************************** - -should_disable_fam=no - -AC_ARG_ENABLE(fam, [ --disable-fam build without enabling fam for file system monitoring], - [ - if test "x$enable_fam" = "xno"; then - should_disable_fam=yes - echo "Not building FAM support" - fi - ] - ) -fam_support=no -FAM_LIBS= -if test "x$should_disable_fam" = "xno"; then -AC_CHECK_LIB(fam, FAMOpen, - [AC_CHECK_HEADERS(fam.h, - [AC_DEFINE(HAVE_FAM, [], [Define if we have FAM]) - AC_CHECK_LIB(fam, FAMNoExists, - AC_DEFINE(HAVE_FAM_NO_EXISTS, [], [Define if we have FAMNoExists in fam])) - FAM_LIBS="-lfam"] - fam_support=yes, - AC_MSG_WARN(*** FAM support will not be built (header files not found) ***))], - AC_MSG_WARN(*** FAM support will not be built (FAM library not found) ***)) -AC_SUBST(FAM_LIBS) -fi -AM_CONDITIONAL(HAVE_FAM, [test "$fam_support" = "yes"]) - - -dnl ***************************** -dnl *** Check for xattr (GIO) *** -dnl ***************************** -AC_ARG_ENABLE(xattr, [ --disable-xattr build without xattr support]) -msg_xattr=no -XATTR_LIBS= -if test "x$enable_xattr" != "xno"; then - -dnl either glibc or libattr can provide xattr support - -dnl for both of them, we check for getxattr being in -dnl the library and a valid xattr header. - -dnl try glibc - AC_CHECK_LIB(c, getxattr, - [AC_CHECK_HEADERS(sys/xattr.h, - [AC_DEFINE(HAVE_XATTR, 1, [Define to 1 if xattr is available]) - msg_xattr=yes]) - ]) - - if test "x$msg_xattr" != "xyes"; then -dnl failure. try libattr - AC_CHECK_LIB(attr, getxattr, - [AC_CHECK_HEADERS(attr/xattr.h, - [AC_DEFINE(HAVE_XATTR, 1, [Define to 1 if xattr is available]) - XATTR_LIBS="-lattr" - msg_xattr=yes]) - ]) - fi - - if test "x$msg_xattr" = "xyes"; then - AC_MSG_CHECKING([for XATTR_NOFOLLOW]) - AC_TRY_COMPILE([ - #include - #ifdef HAVE_SYS_TYPES_H - #include - #endif - #ifdef HAVE_SYS_XATTR_H - #include - #elif HAVE_ATTR_XATTR_H - #include - #endif - ], - [ssize_t len = getxattr("", "", NULL, 0, 0, XATTR_NOFOLLOW);], - [ - AC_DEFINE([HAVE_XATTR_NOFOLLOW], [1], [Define to 1 if xattr API uses XATTR_NOFOLLOW]) - AC_MSG_RESULT([yes]) - ], - [AC_MSG_RESULT([no])] - ) - fi - -fi -AC_SUBST(XATTR_LIBS) - -dnl **************************************** -dnl *** platform dependent source checks *** -dnl **************************************** - -AC_MSG_CHECKING(for platform-dependent source) -case "$host" in - *-*-cygwin*|*-*-mingw*) - PLATFORMDEP=gwin32.lo - ;; - *) - PLATFORMDEP= - ;; -esac -AC_MSG_RESULT($PLATFORMDEP) -AC_SUBST(PLATFORMDEP) - -AC_MSG_CHECKING([whether to compile timeloop]) -case "$host" in - *-*-cygwin*|*-*-mingw*|*-*-minix) - enable_timeloop=no - ;; - *) - enable_timeloop=yes - ;; -esac -AC_MSG_RESULT($enable_timeloop) -AM_CONDITIONAL(ENABLE_TIMELOOP, test x$enable_timeloop = xyes) - -AC_MSG_CHECKING([if building for some Win32 platform]) -case "$host" in - *-*-mingw*|*-*-cygwin*) - platform_win32=yes - ;; - *) - platform_win32=no - ;; -esac -AC_MSG_RESULT($platform_win32) -AM_CONDITIONAL(PLATFORM_WIN32, test x$platform_win32 = xyes) - -dnl *********************** -dnl *** g_thread checks *** -dnl *********************** - -AC_ARG_WITH(threads, - [AC_HELP_STRING([--with-threads=@<:@none/posix/dce/win32@:>@], - [specify a thread implementation to use])], - [if test "x$with_threads" = x; then - want_threads=yes - else - want_threads=$with_threads - fi], - [want_threads=yes]) -if test "x$enable_threads" = "xno"; then - want_threads=no -fi - -dnl error and warning message -dnl ************************* - -THREAD_NO_IMPLEMENTATION="You do not have any known thread system on your - computer. GLib will not have a default thread implementation." - -FLAG_DOES_NOT_WORK="I can't find the MACRO to enable thread safety on your - platform (normally it's "_REENTRANT"). I'll not use any flag on - compilation now, but then your programs might not work. - Please provide information on how it is done on your system." - -LIBS_NOT_FOUND_1="I can't find the libraries for the thread implementation - " - -LIBS_NOT_FOUND_2=". Please choose another thread implementation or - provide information on your thread implementation. - You can also run 'configure --disable-threads' - to compile without thread support." - -FUNC_NO_GETPWUID_R="the 'g_get_(user_name|real_name|home_dir|tmp_dir)' - functions will not be MT-safe during their first call because - there is no working 'getpwuid_r' on your system." - -FUNC_NO_LOCALTIME_R="the 'g_date_set_time' function will not be MT-safe - because there is no 'localtime_r' on your system." - -POSIX_NO_YIELD="I can not find a yield functions for your platform. A rather - crude surrogate will be used. If you happen to know a - yield function for your system, please inform the GLib - developers." - -POSIX_NO_PRIORITIES="I can not find the minimal and maximal priorities for - threads on your system. Thus threads can only have the default - priority. If you happen to know these main/max - priorities, please inform the GLib developers." - -AIX_COMPILE_INFO="AIX's C compiler needs to be called by a different name, when - linking threaded applications. As GLib cannot do that - automatically, you will get an linkg error everytime you are - not using the right compiler. In that case you have to relink - with the right compiler. Ususally just '_r' is appended - to the compiler name." - -dnl determination of thread implementation -dnl *************************************** - -# have_threads=no means no thread support -# have_threads=none means no default thread implementation - -have_threads=no -if test "x$want_threads" = xyes || test "x$want_threads" = xposix \ - || test "x$want_threads" = xdce; then - # -D_POSIX4_DRAFT_SOURCE -D_POSIX4A_DRAFT10_SOURCE is for DG/UX - # -U_OSF_SOURCE is for Digital UNIX 4.0d - GTHREAD_COMPILE_IMPL_DEFINES="-D_POSIX4_DRAFT_SOURCE -D_POSIX4A_DRAFT10_SOURCE -U_OSF_SOURCE" - glib_save_CPPFLAGS="$CPPFLAGS" - CPPFLAGS="$CPPFLAGS $GTHREAD_COMPILE_IMPL_DEFINES" - if test "x$have_threads" = xno; then - AC_TRY_COMPILE([#include ], - [pthread_mutex_t m = PTHREAD_MUTEX_INITIALIZER;], - have_threads=posix) - fi - if test "x$have_threads" = xno; then - AC_TRY_COMPILE([#include ], - [pthread_mutex_t m; - pthread_mutex_init (&m, pthread_mutexattr_default);], - have_threads=dce) - fi - # Tru64Unix requires -pthread to find pthread.h. See #103020 - CPPFLAGS="$CPPFLAGS -pthread" - if test "x$have_threads" = xno; then - AC_TRY_COMPILE([#include ], - [pthread_mutex_t m = PTHREAD_MUTEX_INITIALIZER;], - have_threads=posix) - fi - CPPFLAGS="$glib_save_CPPFLAGS" -fi -if test "x$want_threads" = xyes || test "x$want_threads" = xwin32; then - case $host in - *-*-mingw*) - have_threads=win32 - ;; - esac -fi -if test "x$want_threads" = xnone; then - have_threads=none -fi - -AC_MSG_CHECKING(for thread implementation) - -if test "x$have_threads" = xno && test "x$want_threads" != xno; then - AC_MSG_RESULT(none available) - AC_MSG_WARN($THREAD_NO_IMPLEMENTATION) -else - AC_MSG_RESULT($have_threads) -fi - - -dnl determination of G_THREAD_CFLAGS -dnl ******************************** - -G_THREAD_LIBS= -G_THREAD_LIBS_EXTRA= -G_THREAD_CFLAGS= - -dnl -dnl Test program for basic POSIX threads functionality -dnl -m4_define([glib_thread_test],[ -#include -int check_me = 0; -void* func(void* data) {check_me = 42; return &check_me;} -int main() - { pthread_t t; - void *ret; - pthread_create (&t, $1, func, 0); - pthread_join (t, &ret); - return (check_me != 42 || ret != &check_me); -}]) - -dnl -dnl Test program for sched_get_priority_min() -dnl -m4_define([glib_sched_priority_test],[ -#include -#include -int main() { - errno = 0; - return sched_get_priority_min(SCHED_OTHER)==-1 - && errno != 0; -}]) - -if test x"$have_threads" != xno; then - - if test x"$have_threads" = xposix; then - # First we test for posix, whether -pthread or -pthreads do the trick as - # both CPPFLAG and LIBS. - # One of them does for most gcc versions and some other platforms/compilers - # too and could be considered as the canonical way to go. - case $host in - *-*-cygwin*|*-*-darwin*) - # skip cygwin and darwin -pthread or -pthreads test - ;; - *-solaris*) - # These compiler/linker flags work with both Sun Studio and gcc - # Sun Studio expands -mt to -D_REENTRANT and -lthread - # gcc expands -pthreads to -D_REENTRANT -D_PTHREADS -lpthread - G_THREAD_CFLAGS="-D_REENTRANT -D_PTHREADS" - G_THREAD_LIBS="-lpthread -lthread" - ;; - *) - for flag in pthread pthreads mt; do - glib_save_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS -$flag" - AC_TRY_RUN(glib_thread_test(0), - glib_flag_works=yes, - glib_flag_works=no, - [AC_LINK_IFELSE(glib_thread_test(0), - glib_flag_works=yes, - glib_flag_works=no)]) - CFLAGS="$glib_save_CFLAGS" - if test $glib_flag_works = yes ; then - G_THREAD_CFLAGS=-$flag - G_THREAD_LIBS=-$flag - break; - fi - done - ;; - esac - fi - - if test x"$G_THREAD_CFLAGS" = x; then - - # The canonical -pthread[s] does not work. Try something different. - - case $host in - *-aix*) - if test x"$GCC" = xyes; then - # GCC 3.0 and above needs -pthread. - # Should be coverd by the case above. - # GCC 2.x and below needs -mthreads - G_THREAD_CFLAGS="-mthreads" - G_THREAD_LIBS=$G_THREAD_CFLAGS - else - # We are probably using the aix compiler. Normaly a - # program would have to be compiled with the _r variant - # of the corresponding compiler, but we as GLib cannot - # do that: but the good news is that for compiling the - # only difference is the added -D_THREAD_SAFE compile - # option. This is according to the "C for AIX User's - # Guide". - G_THREAD_CFLAGS="-D_THREAD_SAFE" - fi - ;; - *-dg-dgux*) # DG/UX - G_THREAD_CFLAGS="-D_REENTRANT -D_POSIX4A_DRAFT10_SOURCE" - ;; - *-osf*) - # So we are using dce threads. posix threads are already - # catched above. - G_THREAD_CFLAGS="-threads" - G_THREAD_LIBS=$G_THREAD_CFLAGS - ;; - *-sysv5uw7*) # UnixWare 7 - # We are not using gcc with -pthread. Catched above. - G_THREAD_CFLAGS="-Kthread" - G_THREAD_LIBS=$G_THREAD_CFLAGS - ;; - *-mingw*) - # No flag needed when using MSVCRT.DLL - G_THREAD_CFLAGS="" - ;; - *) - G_THREAD_CFLAGS="-D_REENTRANT" # good default guess otherwise - ;; - esac - - fi - - # if we are not finding the localtime_r function, then we probably are - # not using the proper multithread flag - - glib_save_CPPFLAGS="$CPPFLAGS" - CPPFLAGS="$CPPFLAGS $G_THREAD_CFLAGS" - - # First we test, whether localtime_r is declared in time.h - # directly. Then we test whether a macro localtime_r exists, in - # which case localtime_r in the test program is replaced and thus - # if we still find localtime_r in the output, it is not defined as - # a macro. - - AC_EGREP_CPP([[^a-zA-Z1-9_]localtime_r[^a-zA-Z1-9_]], [#include ], , - [AC_EGREP_CPP([[^a-zA-Z1-9_]localtime_r[^a-zA-Z1-9_]], [#include - localtime_r(a,b)], - AC_MSG_WARN($FLAG_DOES_NOT_WORK))]) - - CPPFLAGS="$glib_save_CPPFLAGS" - - AC_MSG_CHECKING(thread related cflags) - AC_MSG_RESULT($G_THREAD_CFLAGS) - CPPFLAGS="$CPPFLAGS $G_THREAD_CFLAGS" -fi - -dnl determination of G_THREAD_LIBS -dnl ****************************** - -mutex_has_default=no -case $have_threads in - posix|dce) - glib_save_CPPFLAGS="$CPPFLAGS" - CPPFLAGS="$CPPFLAGS $GTHREAD_COMPILE_IMPL_DEFINES" - if test x"$G_THREAD_LIBS" = x; then - case $host in - *-aix*) - # We are not using gcc (would have set G_THREAD_LIBS) and thus - # probably using the aix compiler. - AC_MSG_WARN($AIX_COMPILE_INFO) - ;; - *) - G_THREAD_LIBS=error - glib_save_LIBS="$LIBS" - for thread_lib in "" pthread pthread32 pthreads thread dce; do - if test x"$thread_lib" = x; then - add_thread_lib="" - IN="" - else - add_thread_lib="-l$thread_lib" - IN=" in -l$thread_lib" - fi - if test x"$have_threads" = xposix; then - defattr=0 - else - defattr=pthread_attr_default - fi - - LIBS="$add_thread_lib $glib_save_LIBS" - - AC_MSG_CHECKING(for pthread_create/pthread_join$IN) - AC_TRY_RUN(glib_thread_test($defattr), - glib_result=yes, - glib_result=no, - [AC_LINK_IFELSE(glib_thread_test($defattr), - glib_result=yes, - glib_result=no)]) - AC_MSG_RESULT($glib_result) - - if test "$glib_result" = "yes" ; then - G_THREAD_LIBS="$add_thread_lib" - break - fi - done - if test "x$G_THREAD_LIBS" = xerror; then - AC_MSG_ERROR($LIBS_NOT_FOUND_1$have_threads$LIBS_NOT_FOUND_2) - fi - LIBS="$glib_save_LIBS" - ;; - esac - fi - - glib_save_LIBS="$LIBS" - for thread_lib in "" rt rte; do - if test x"$thread_lib" = x; then - add_thread_lib="" - IN="" - else - add_thread_lib="-l$thread_lib" - IN=" in -l$thread_lib" - fi - LIBS="$add_thread_lib $glib_save_LIBS" - - AC_MSG_CHECKING(for sched_get_priority_min$IN) - AC_TRY_RUN(glib_sched_priority_test, - glib_result=yes, - glib_result=no, - [AC_LINK_IFELSE(glib_sched_priority_test, - glib_result=yes, - glib_result=no)]) - AC_MSG_RESULT($glib_result) - - if test "$glib_result" = "yes" ; then - G_THREAD_LIBS="$G_THREAD_LIBS $add_thread_lib" - posix_priority_min="sched_get_priority_min(SCHED_OTHER)" - posix_priority_max="sched_get_priority_max(SCHED_OTHER)" - break - fi - done - LIBS="$glib_save_LIBS" - mutex_has_default=yes - mutex_default_type='pthread_mutex_t' - mutex_default_init='PTHREAD_MUTEX_INITIALIZER' - mutex_header_file='pthread.h' - if test "x$have_threads" = "xposix"; then - g_threads_impl="POSIX" - else - g_threads_impl="DCE" - have_threads="posix" - fi - AC_SUBST(GTHREAD_COMPILE_IMPL_DEFINES) - CPPFLAGS="$glib_save_CPPFLAGS" - ;; - win32) - g_threads_impl="WIN32" - ;; - none|no) - g_threads_impl="NONE" - ;; - *) - g_threads_impl="NONE" - G_THREAD_LIBS=error - ;; -esac - -if test "x$G_THREAD_LIBS" = xerror; then - AC_MSG_ERROR($LIBS_NOT_FOUND_1$have_threads$LIBS_NOT_FOUND_2) -fi - -case $host in - *-*-beos*) - G_THREAD_LIBS="-lbe -lroot -lglib-2.0 " - G_THREAD_LIBS_EXTRA="-L\$(top_builddir_full)/.libs" - ;; - *) - ;; -esac - -AC_MSG_CHECKING(thread related libraries) -AC_MSG_RESULT($G_THREAD_LIBS) - -dnl check for mt safe function variants and some posix functions -dnl ************************************************************ - -if test x"$have_threads" != xno; then - glib_save_LIBS="$LIBS" - # we are not doing the following for now, as this might require glib - # to always be linked with the thread libs on some platforms. - # LIBS="$LIBS $G_THREAD_LIBS" - AC_CHECK_FUNCS(localtime_r gmtime_r) - if test "$ac_cv_header_pwd_h" = "yes"; then - AC_CACHE_CHECK([for posix getpwuid_r], - ac_cv_func_posix_getpwuid_r, - [AC_TRY_RUN([ -#include -#include -int main () { - char buffer[10000]; - struct passwd pwd, *pwptr = &pwd; - int error; - errno = 0; - error = getpwuid_r (0, &pwd, buffer, - sizeof (buffer), &pwptr); - return (error < 0 && errno == ENOSYS) - || error == ENOSYS; -} ], - [ac_cv_func_posix_getpwuid_r=yes], - [ac_cv_func_posix_getpwuid_r=no])]) - GLIB_ASSERT_SET(ac_cv_func_posix_getpwuid_r) - if test "$ac_cv_func_posix_getpwuid_r" = yes; then - AC_DEFINE(HAVE_POSIX_GETPWUID_R,1, - [Have POSIX function getpwuid_r]) - else - AC_CACHE_CHECK([for nonposix getpwuid_r], - ac_cv_func_nonposix_getpwuid_r, - [AC_TRY_LINK([#include ], - [char buffer[10000]; - struct passwd pwd; - getpwuid_r (0, &pwd, buffer, - sizeof (buffer));], - [ac_cv_func_nonposix_getpwuid_r=yes], - [ac_cv_func_nonposix_getpwuid_r=no])]) - GLIB_ASSERT_SET(ac_cv_func_nonposix_getpwuid_r) - if test "$ac_cv_func_nonposix_getpwuid_r" = yes; then - AC_DEFINE(HAVE_NONPOSIX_GETPWUID_R,1, - [Have non-POSIX function getpwuid_r]) - fi - fi - fi - if test "$ac_cv_header_grp_h" = "yes"; then - AC_CACHE_CHECK([for posix getgrgid_r], - ac_cv_func_posix_getgrgid_r, - [AC_TRY_RUN([ -#include -#include -int main () { - char buffer[10000]; - struct group grp, *grpptr = &grp; - int error; - errno = 0; - error = getgrgid_r (0, &grp, buffer, - sizeof (buffer), &grpptr); - return (error < 0 && errno == ENOSYS) - || error == ENOSYS; -} ], - [ac_cv_func_posix_getgrgid_r=yes], - [ac_cv_func_posix_getgrgid_r=no])]) - GLIB_ASSERT_SET(ac_cv_func_posix_getgrgid_r) - if test "$ac_cv_func_posix_getgrgid_r" = yes; then - AC_DEFINE(HAVE_POSIX_GETGRGID_R,1, - [Have POSIX function getgrgid_r]) - else - AC_CACHE_CHECK([for nonposix getgrgid_r], - ac_cv_func_nonposix_getgrgid_r, - [AC_TRY_LINK([#include ], - [char buffer[10000]; - struct group grp; - getgrgid_r (0, &grp, buffer, - sizeof (buffer));], - [ac_cv_func_nonposix_getgrgid_r=yes], - [ac_cv_func_nonposix_getgrgid_r=no])]) - GLIB_ASSERT_SET(ac_cv_func_nonposix_getgrgid_r) - if test "$ac_cv_func_nonposix_getgrgid_r" = yes; then - AC_DEFINE(HAVE_NONPOSIX_GETGRGID_R,1, - [Have non-POSIX function getgrgid_r]) - fi - fi - fi - LIBS="$G_THREAD_LIBS $LIBS" - if test x"$have_threads" = xposix; then - glib_save_CPPFLAGS="$CPPFLAGS" - CPPFLAGS="$CPPFLAGS $GTHREAD_COMPILE_IMPL_DEFINES" - dnl we might grow sizeof(pthread_t) later on, so use a dummy name here - GLIB_SIZEOF([#include ], pthread_t, system_thread) - # This is not AC_CHECK_FUNC to also work with function - # name mangling in header files. - AC_MSG_CHECKING(for pthread_attr_setstacksize) - AC_TRY_LINK([#include ], - [pthread_attr_t t; pthread_attr_setstacksize(&t,0)], - [AC_MSG_RESULT(yes) - AC_DEFINE(HAVE_PTHREAD_ATTR_SETSTACKSIZE,1, - [Have function pthread_attr_setstacksize])], - [AC_MSG_RESULT(no)]) - AC_MSG_CHECKING(for minimal/maximal thread priority) - if test x"$posix_priority_min" = x; then - AC_EGREP_CPP(PX_PRIO_MIN,[#include - PX_PRIO_MIN],,[ - posix_priority_min=PX_PRIO_MIN - posix_priority_max=PX_PRIO_MAX]) - fi - if test x"$posix_priority_min" = x; then - # AIX - AC_EGREP_CPP(PTHREAD_PRIO_MIN,[#include - PTHREAD_PRIO_MIN],,[ - posix_priority_min=PTHREAD_PRIO_MIN - posix_priority_max=PTHREAD_PRIO_MAX]) - fi - if test x"$posix_priority_min" = x; then - AC_EGREP_CPP(PRI_OTHER_MIN,[#include - PRI_OTHER_MIN],,[ - posix_priority_min=PRI_OTHER_MIN - posix_priority_max=PRI_OTHER_MAX]) - fi - if test x"$posix_priority_min" = x; then - AC_MSG_RESULT(none found) - AC_MSG_WARN($POSIX_NO_PRIORITIES) - posix_priority_min=-1 - posix_priority_max=-1 - else - AC_MSG_RESULT($posix_priority_min/$posix_priority_max) - AC_MSG_CHECKING(for pthread_setschedparam) - AC_TRY_LINK([#include ], - [pthread_t t; pthread_setschedparam(t, 0, NULL)], - [AC_MSG_RESULT(yes) - AC_DEFINE_UNQUOTED(POSIX_MIN_PRIORITY,$posix_priority_min,[Minimum POSIX RT priority]) - AC_DEFINE_UNQUOTED(POSIX_MAX_PRIORITY,$posix_priority_max,[Maximum POSIX RT priority])], - [AC_MSG_RESULT(no) - AC_MSG_WARN($POSIX_NO_PRIORITIES)]) - fi - posix_yield_func=none - AC_MSG_CHECKING(for posix yield function) - for yield_func in sched_yield pthread_yield_np pthread_yield \ - thr_yield; do - AC_TRY_LINK([#include ], - [$yield_func()], - [posix_yield_func="$yield_func" - break]) - done - if test x"$posix_yield_func" = xnone; then - AC_MSG_RESULT(none found) - AC_MSG_WARN($POSIX_NO_YIELD) - posix_yield_func="g_usleep(1000)" - else - AC_MSG_RESULT($posix_yield_func) - posix_yield_func="$posix_yield_func()" - fi - AC_DEFINE_UNQUOTED(POSIX_YIELD_FUNC,$posix_yield_func,[The POSIX RT yield function]) - CPPFLAGS="$glib_save_CPPFLAGS" - - elif test x"$have_threads" = xwin32; then - # It's a pointer to a private struct - GLIB_SIZEOF(,struct _GThreadData *, system_thread) - fi - - LIBS="$glib_save_LIBS" - - # now spit out all the warnings. - if test "$ac_cv_func_posix_getpwuid_r" != "yes" && - test "$ac_cv_func_nonposix_getpwuid_r" != "yes"; then - AC_MSG_WARN($FUNC_NO_GETPWUID_R) - fi - if test "$ac_cv_func_localtime_r" != "yes"; then - AC_MSG_WARN($FUNC_NO_LOCALTIME_R) - fi -fi - -if test x"$glib_cv_sizeof_system_thread" = x; then - # use a pointer as a fallback. - GLIB_SIZEOF(,void *, system_thread) -fi - -# -# Hack to deal with: -# -# a) GCC < 3.3 for Linux doesn't include -lpthread when -# building shared libraries with linux. -# b) FreeBSD doesn't do this either. -# -case $host in - *-*-freebsd*|*-*-linux*) - G_THREAD_LIBS_FOR_GTHREAD="`echo $G_THREAD_LIBS | sed s/-pthread/-lpthread/`" - ;; - *) - G_THREAD_LIBS_FOR_GTHREAD="$G_THREAD_LIBS" - ;; -esac - -AM_CONDITIONAL(HAVE_THREADS, [test "$have_threads" != "none"]) -AC_DEFINE_UNQUOTED(G_THREAD_SOURCE,"gthread-$have_threads.c", - [Source file containing theread implementation]) -AC_SUBST(G_THREAD_CFLAGS) -AC_SUBST(G_THREAD_LIBS) -AC_SUBST(G_THREAD_LIBS_FOR_GTHREAD) -AC_SUBST(G_THREAD_LIBS_EXTRA) - -dnl ********************************************** -dnl *** GDefaultMutex setup and initialization *** -dnl ********************************************** -dnl -dnl if mutex_has_default = yes, we also got -dnl mutex_default_type, mutex_default_init and mutex_header_file -if test $mutex_has_default = yes ; then - glib_save_CPPFLAGS="$CPPFLAGS" - glib_save_LIBS="$LIBS" - LIBS="$G_THREAD_LIBS $LIBS" - CPPFLAGS="$CPPFLAGS $GTHREAD_COMPILE_IMPL_DEFINES" - GLIB_SIZEOF([#include <$mutex_header_file>], - $mutex_default_type, - gmutex) - GLIB_BYTE_CONTENTS([#include <$mutex_header_file>], - $mutex_default_type, - gmutex, - $glib_cv_sizeof_gmutex, - $mutex_default_init) - if test x"$glib_cv_byte_contents_gmutex" = xno; then - mutex_has_default=no - fi - CPPFLAGS="$glib_save_CPPFLAGS" - LIBS="$glib_save_LIBS" -fi - -AC_CHECK_FUNCS(clock_gettime, [], [ - AC_CHECK_LIB(rt, clock_gettime, [ - AC_DEFINE(HAVE_CLOCK_GETTIME, 1) - G_THREAD_LIBS="$G_THREAD_LIBS -lrt" - G_THREAD_LIBS_FOR_GTHREAD="$G_THREAD_LIBS_FOR_GTHREAD -lrt" - ]) -]) - -AC_CACHE_CHECK(for monotonic clocks, - glib_cv_monotonic_clock,AC_COMPILE_IFELSE([AC_LANG_SOURCE([[ -#include -#include -int main() { -#if !(defined(_POSIX_MONOTONIC_CLOCK) && _POSIX_MONOTONIC_CLOCK >= 0 && defined(CLOCK_MONOTONIC)) - #error No monotonic clock -#endif - return 0; -} -]])],glib_cv_monotonic_clock=yes,glib_cv_monotonic_clock=no)) -if test "$glib_cv_monotonic_clock" = "yes"; then - AC_DEFINE(HAVE_MONOTONIC_CLOCK,1,[Have a monotonic clock]) -fi - - -dnl ******************************** -dnl *** g_atomic_* tests for gcc *** -dnl ******************************** - -AC_MSG_CHECKING([whether to use assembler code for atomic operations]) - -glib_cv_gcc_has_builtin_atomic_operations=no -if test x"$GCC" = xyes; then - AC_MSG_CHECKING([whether GCC supports build-in atomic intrinsics]) - AC_TRY_LINK([], - [int i; - __sync_synchronize (); - __sync_bool_compare_and_swap (&i, 0, 1); - __sync_fetch_and_add (&i, 1); - ], - [glib_cv_gcc_has_builtin_atomic_operations=yes], - [glib_cv_gcc_has_builtin_atomic_operations=no]) - - AC_MSG_RESULT($glib_cv_gcc_has_builtin_atomic_operations) - if test $glib_cv_gcc_has_builtin_atomic_operations = yes; then - glib_memory_barrier_needed=yes - else - case $host_cpu in - i386) - AC_MSG_RESULT([none]) - glib_memory_barrier_needed=no - ;; - i?86) - AC_MSG_RESULT([i486]) - AC_DEFINE_UNQUOTED(G_ATOMIC_I486, 1, - [i486 atomic implementation]) - glib_memory_barrier_needed=no - ;; - sparc*) - SPARCV9_WARNING="Try to rerun configure with CFLAGS='-mcpu=v9', - when you are using a sparc with v9 instruction set (most - sparcs nowadays). This will make the code for atomic - operations much faster. The resulting code will not run - on very old sparcs though." - - AC_LINK_IFELSE([[ - main () - { - int tmp1, tmp2, tmp3; - __asm__ __volatile__("casx [%2], %0, %1" - : "=&r" (tmp1), "=&r" (tmp2) : "r" (&tmp3)); - }]], - AC_MSG_RESULT([sparcv9]) - AC_DEFINE_UNQUOTED(G_ATOMIC_SPARCV9, 1, - [sparcv9 atomic implementation]), - AC_MSG_RESULT([no]) - AC_MSG_WARN([[$SPARCV9_WARNING]])) - glib_memory_barrier_needed=yes - ;; - alpha*) - AC_MSG_RESULT([alpha]) - AC_DEFINE_UNQUOTED(G_ATOMIC_ALPHA, 1, - [alpha atomic implementation]) - glib_memory_barrier_needed=yes - ;; - x86_64) - AC_MSG_RESULT([x86_64]) - AC_DEFINE_UNQUOTED(G_ATOMIC_X86_64, 1, - [x86_64 atomic implementation]) - glib_memory_barrier_needed=no - ;; - powerpc*) - AC_MSG_RESULT([powerpc]) - AC_DEFINE_UNQUOTED(G_ATOMIC_POWERPC, 1, - [powerpc atomic implementation]) - glib_memory_barrier_needed=yes - AC_MSG_CHECKING([whether asm supports numbered local labels]) - AC_TRY_COMPILE( - ,[ - __asm__ __volatile__ ("1: nop\n" - " bne- 1b") - ],[ - AC_DEFINE_UNQUOTED(ASM_NUMERIC_LABELS, 1, [define if asm blocks can use numeric local labels]) - AC_MSG_RESULT([yes]) - ],[ - AC_MSG_RESULT([no]) - ]) - ;; - ia64) - AC_MSG_RESULT([ia64]) - AC_DEFINE_UNQUOTED(G_ATOMIC_IA64, 1, - [ia64 atomic implementation]) - glib_memory_barrier_needed=yes - ;; - s390|s390x) - AC_MSG_RESULT([s390]) - AC_DEFINE_UNQUOTED(G_ATOMIC_S390, 1, - [s390 atomic implementation]) - glib_memory_barrier_needed=no - ;; - arm*) - AC_MSG_RESULT([arm]) - AC_DEFINE_UNQUOTED(G_ATOMIC_ARM, 1, - [arm atomic implementation]) - glib_memory_barrier_needed=no - ;; - crisv32*|etraxfs*) - AC_MSG_RESULT([crisv32]) - AC_DEFINE_UNQUOTED(G_ATOMIC_CRISV32, 1, - [crisv32 atomic implementation]) - glib_memory_barrier_needed=no - ;; - cris*|etrax*) - AC_MSG_RESULT([cris]) - AC_DEFINE_UNQUOTED(G_ATOMIC_CRIS, 1, - [cris atomic implementation]) - glib_memory_barrier_needed=no - ;; - *) - AC_MSG_RESULT([none]) - glib_memory_barrier_needed=yes - ;; - esac - fi -else - if test $glib_native_win32 = yes; then - # For Windows but not using gcc. No barriers needed then either. - glib_memory_barrier_needed=no - fi -fi - -AM_CONDITIONAL(HAVE_GCC_BUILTINS_FOR_ATOMIC_OPERATIONS, - [test $glib_cv_gcc_has_builtin_atomic_operations = yes]) - -dnl ************************ -dnl ** Check for futex(2) ** -dnl ************************ -AC_MSG_CHECKING([for futex(2) system call]) -AC_COMPILE_IFELSE([ -#include -#include -#include - -int -main (void) -{ - /* it's not like this actually runs or anything... */ - syscall (SYS_futex, NULL, FUTEX_WAKE, FUTEX_WAIT); - return 0; -} -], -[ - AC_MSG_RESULT(yes) - AC_DEFINE(HAVE_FUTEX, [test "$have_futex" = "yes"], - [we have the futex(2) system call]) -], -[ - AC_MSG_RESULT(no) -]) - -dnl **************************************** -dnl *** GLib POLL* compatibility defines *** -dnl **************************************** - -glib_poll_includes=[" -#include -#include -"] - -if test $ac_cv_header_sys_types_h = yes && - test $ac_cv_header_sys_poll_h = yes ; then - glib_failed=false - GLIB_CHECK_VALUE(POLLIN, $glib_poll_includes, glib_failed=true) - GLIB_CHECK_VALUE(POLLOUT, $glib_poll_includes, glib_failed=true) - GLIB_CHECK_VALUE(POLLPRI, $glib_poll_includes, glib_failed=true) - GLIB_CHECK_VALUE(POLLERR, $glib_poll_includes, glib_failed=true) - GLIB_CHECK_VALUE(POLLHUP, $glib_poll_includes, glib_failed=true) - GLIB_CHECK_VALUE(POLLNVAL, $glib_poll_includes, glib_failed=true) - if $glib_failed ; then - AC_MSG_ERROR([Could not determine values for POLL* constants]) - fi -else - glib_cv_value_POLLIN=1 - glib_cv_value_POLLOUT=4 - glib_cv_value_POLLPRI=2 - glib_cv_value_POLLERR=8 - glib_cv_value_POLLHUP=16 - glib_cv_value_POLLNVAL=32 -fi - -AC_MSG_CHECKING([for broken poll]) -AC_RUN_IFELSE([AC_LANG_SOURCE([[ - #include - #include - #include - #ifdef HAVE_SYS_POLL_H - #include - #endif - int main(void) { - struct pollfd fds[1]; - int fd; - fd = open("/dev/null", 1); - fds[0].fd = fd; - fds[0].events = POLLIN; - fds[0].revents = 0; - if (poll(fds, 1, 0) < 0 || (fds[0].revents & POLLNVAL) != 0) { - exit(1); /* Does not work for devices -- fail */ - } - exit(0); - }]])], - [broken_poll=no], - [broken_poll=yes - AC_DEFINE(BROKEN_POLL,1,[poll doesn't work on devices])], - [broken_poll="no (cross compiling)"]) -AC_MSG_RESULT($broken_poll) - -dnl ********************* -dnl *** GRegex checks *** -dnl ********************* -PCRE_REQUIRED_VERSION=7.2 - -# Check if we should compile GRegex -AC_ARG_ENABLE(regex, AC_HELP_STRING([--disable-regex], - [disable the compilation of GRegex]), -[case "${enableval}" in - yes) enable_regex=true ;; - no) enable_regex=false ;; - *) AC_MSG_ERROR(bad value ${enableval} for --enable-regex) ;; -esac], -[enable_regex=true]) - -AM_CONDITIONAL(ENABLE_REGEX, $enable_regex) - -if test x$enable_regex = xtrue; then - AC_DEFINE(ENABLE_REGEX, [], [include GRegex]) - # Check if we should use the internal or the system-supplied pcre - AC_ARG_WITH(pcre, - [AC_HELP_STRING([--with-pcre=@<:@internal/system@:>@], - [specify whether to use the internal or the - system-supplied PCRE library])]) - - AM_CONDITIONAL(USE_SYSTEM_PCRE, [test "x$with_pcre" = xsystem]) - - if test "x$with_pcre" = xsystem; then - PKG_CHECK_MODULES(PCRE, - libpcre >= $PCRE_REQUIRED_VERSION) - AC_CACHE_CHECK([for Unicode support in PCRE],glib_cv_pcre_has_unicode,[ - glib_save_CFLAGS="$CFLAGS" - glib_save_LIBS="$LIBS" - CFLAGS="$CFLAGS $PCRE_CFLAGS" LIBS="$PCRE_LIBS" - AC_TRY_RUN([#include - int main () { - int support; - pcre_config (PCRE_CONFIG_UTF8, &support); - if (!support) - return 1; - pcre_config (PCRE_CONFIG_UNICODE_PROPERTIES, &support); - if (!support) - return 1; - return 0; - }], - glib_cv_pcre_has_unicode=yes, - glib_cv_pcre_has_unicode=no, - glib_cv_pcre_has_unicode=yes) - CFLAGS="$glib_save_CFLAGS" - LIBS="$glib_save_LIBS" - ]) - if test "$glib_cv_pcre_has_unicode" = "no"; then - AC_MSG_ERROR([*** The system-supplied PCRE does not support Unicode properties or UTF-8.]) - fi - AC_SUBST(PCRE_CFLAGS) - AC_SUBST(PCRE_LIBS) - AC_DEFINE(USE_SYSTEM_PCRE, [], [using the system-supplied PCRE library]) - PCRE_REQUIRES=libpcre - AC_SUBST(PCRE_REQUIRES) - else - # If using gcc 4 pass -Wno-pointer-sign when compiling the internal PCRE - if test x"$GCC" = xyes; then - AC_MSG_CHECKING([whether compiler understands -Wno-pointer-sign]) - save_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS -Wno-pointer-sign" - AC_TRY_COMPILE([],[],[PCRE_WARN_CFLAGS="$PCRE_WARN_CFLAGS -Wno-pointer-sign" - AC_MSG_RESULT(yes)],[AC_MSG_RESULT(no)]) - CFLAGS="$save_CFLAGS" - fi - fi - AC_SUBST(PCRE_WARN_CFLAGS) -else - AM_CONDITIONAL(USE_SYSTEM_PCRE, false]) -fi - -dnl ********************** -dnl *** Win32 API libs *** -dnl ********************** - -case $host in - *-*-cygwin*) - G_LIBS_EXTRA="-luser32 -lkernel32" - ;; - *-*-mingw*) - G_LIBS_EXTRA="-lws2_32 -lole32" - ;; - *) - G_LIBS_EXTRA="" - ;; -esac -AC_SUBST(G_LIBS_EXTRA) - -dnl If the system doesn't define EILSEQ, we should define EILSEQ ourselves -dnl since we need it for g_iconv() - -AC_MSG_CHECKING([for EILSEQ]) -AC_TRY_COMPILE([ -#include -], -[ -int error = EILSEQ; -], have_eilseq=yes, have_eilseq=no); -AC_MSG_RESULT($have_eilseq) - -dnl ****************************************************************** -dnl *** Look for glib-genmarshal in PATH if we are cross-compiling *** -dnl ****************************************************************** - -AM_CONDITIONAL(CROSS_COMPILING, test $cross_compiling = yes) - -if test $cross_compiling = yes; then - AC_PATH_PROG(GLIB_GENMARSHAL, glib-genmarshal, no) - if test x$GLIB_GENMARSHAL = xno; then - AC_MSG_ERROR(Could not find a glib-genmarshal in your PATH) - fi -fi - -dnl ************************** -dnl *** Checks for gtk-doc *** -dnl ************************** - -GTK_DOC_CHECK([1.11]) - -AC_ARG_ENABLE(man, - [AC_HELP_STRING([--enable-man], - [regenerate man pages from Docbook [default=no]])],enable_man=yes, - enable_man=no) - -if test "${enable_man}" != no; then -dnl -dnl Check for xsltproc -dnl -AC_PATH_PROG([XSLTPROC], [xsltproc]) - if test -z "$XSLTPROC"; then - enable_man=no - fi - - dnl check for DocBook DTD and stylesheets in the local catalog. - JH_CHECK_XML_CATALOG([-//OASIS//DTD DocBook XML V4.1.2//EN], - [DocBook XML DTD V4.1.2],,enable_man=no) - JH_CHECK_XML_CATALOG([http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl], - [DocBook XSL Stylesheets],,enable_man=no) -fi - -AM_CONDITIONAL(ENABLE_MAN, test x$enable_man != xno) - -dnl ****************************** -dnl *** output the whole stuff *** -dnl ****************************** - -dnl this section will only be run if config.status is invoked with no -dnl arguments, or with "glibconfig.h" as an argument. -AC_CONFIG_COMMANDS([glibconfig.h], -[ - outfile=glibconfig.h-tmp - cat > $outfile <<\_______EOF -/* glibconfig.h - * - * This is a generated file. Please modify 'configure.in' - */ - -#ifndef __G_LIBCONFIG_H__ -#define __G_LIBCONFIG_H__ - -#include - -_______EOF - - if test x$glib_limits_h = xyes; then - echo '#include ' >> $outfile - fi - if test x$glib_float_h = xyes; then - echo '#include ' >> $outfile - fi - if test x$glib_values_h = xyes; then - echo '#include ' >> $outfile - fi - if test "$glib_header_alloca_h" = "yes"; then - echo '#define GLIB_HAVE_ALLOCA_H' >> $outfile - fi - if test x$glib_sys_poll_h = xyes; then - echo '#define GLIB_HAVE_SYS_POLL_H' >> $outfile - fi - if test x$glib_included_printf != xyes; then - echo " -/* Specifies that GLib's g_print*() functions wrap the - * system printf functions. This is useful to know, for example, - * when using glibc's register_printf_function(). - */" >> $outfile - echo '#define GLIB_USING_SYSTEM_PRINTF' >> $outfile - fi - - cat >> $outfile <<_______EOF - -G_BEGIN_DECLS - -#define G_MINFLOAT $glib_mf -#define G_MAXFLOAT $glib_Mf -#define G_MINDOUBLE $glib_md -#define G_MAXDOUBLE $glib_Md -#define G_MINSHORT $glib_ms -#define G_MAXSHORT $glib_Ms -#define G_MAXUSHORT $glib_Mus -#define G_MININT $glib_mi -#define G_MAXINT $glib_Mi -#define G_MAXUINT $glib_Mui -#define G_MINLONG $glib_ml -#define G_MAXLONG $glib_Ml -#define G_MAXULONG $glib_Mul - -_______EOF - - - ### this should always be true in a modern C/C++ compiler - cat >>$outfile <<_______EOF -typedef signed char gint8; -typedef unsigned char guint8; -_______EOF - - - if test -n "$gint16"; then - cat >>$outfile <<_______EOF -typedef signed $gint16 gint16; -typedef unsigned $gint16 guint16; -#define G_GINT16_MODIFIER $gint16_modifier -#define G_GINT16_FORMAT $gint16_format -#define G_GUINT16_FORMAT $guint16_format -_______EOF - fi - - - if test -n "$gint32"; then - cat >>$outfile <<_______EOF -typedef signed $gint32 gint32; -typedef unsigned $gint32 guint32; -#define G_GINT32_MODIFIER $gint32_modifier -#define G_GINT32_FORMAT $gint32_format -#define G_GUINT32_FORMAT $guint32_format -_______EOF - fi - - cat >>$outfile <<_______EOF -#define G_HAVE_GINT64 1 /* deprecated, always true */ - -${glib_extension}typedef signed $gint64 gint64; -${glib_extension}typedef unsigned $gint64 guint64; - -#define G_GINT64_CONSTANT(val) $gint64_constant -#define G_GUINT64_CONSTANT(val) $guint64_constant -_______EOF - - if test x$gint64_format != x ; then - cat >>$outfile <<_______EOF -#define G_GINT64_MODIFIER $gint64_modifier -#define G_GINT64_FORMAT $gint64_format -#define G_GUINT64_FORMAT $guint64_format -_______EOF - else - cat >>$outfile <<_______EOF -#undef G_GINT64_MODIFIER -#undef G_GINT64_FORMAT -#undef G_GUINT64_FORMAT -_______EOF - fi - - cat >>$outfile <<_______EOF - -#define GLIB_SIZEOF_VOID_P $glib_void_p -#define GLIB_SIZEOF_LONG $glib_long -#define GLIB_SIZEOF_SIZE_T $glib_size_t - -_______EOF - - cat >>$outfile <<_______EOF -typedef signed $glib_size_type_define gssize; -typedef unsigned $glib_size_type_define gsize; -#define G_GSIZE_MODIFIER $gsize_modifier -#define G_GSSIZE_FORMAT $gssize_format -#define G_GSIZE_FORMAT $gsize_format - -#define G_MAXSIZE G_MAXU$glib_msize_type -#define G_MINSSIZE G_MIN$glib_msize_type -#define G_MAXSSIZE G_MAX$glib_msize_type - -typedef gint64 goffset; -#define G_MINOFFSET G_MININT64 -#define G_MAXOFFSET G_MAXINT64 - -#define G_GOFFSET_MODIFIER G_GINT64_MODIFIER -#define G_GOFFSET_FORMAT G_GINT64_FORMAT -#define G_GOFFSET_CONSTANT(val) G_GINT64_CONSTANT(val) - -_______EOF - - if test -z "$glib_unknown_void_p"; then - cat >>$outfile <<_______EOF - -#define GPOINTER_TO_INT(p) ((gint) ${glib_gpi_cast} (p)) -#define GPOINTER_TO_UINT(p) ((guint) ${glib_gpui_cast} (p)) - -#define GINT_TO_POINTER(i) ((gpointer) ${glib_gpi_cast} (i)) -#define GUINT_TO_POINTER(u) ((gpointer) ${glib_gpui_cast} (u)) - -typedef signed $glib_intptr_type_define gintptr; -typedef unsigned $glib_intptr_type_define guintptr; - -#define G_GINTPTR_MODIFIER $gintptr_modifier -#define G_GINTPTR_FORMAT $gintptr_format -#define G_GUINTPTR_FORMAT $guintptr_format -_______EOF - else - echo '#error SIZEOF_VOID_P unknown - This should never happen' >>$outfile - fi - - - - cat >>$outfile <<_______EOF -$glib_atexit -$glib_memmove -$glib_defines -$glib_os -$glib_static_compilation - -$glib_vacopy - -#ifdef __cplusplus -#define G_HAVE_INLINE 1 -#else /* !__cplusplus */ -$glib_inline -#endif /* !__cplusplus */ - -#ifdef __cplusplus -#define G_CAN_INLINE 1 -_______EOF - - if test x$g_can_inline = xyes ; then - cat >>$outfile <<_______EOF -#else /* !__cplusplus */ -#define G_CAN_INLINE 1 -_______EOF - fi - - cat >>$outfile <<_______EOF -#endif - -_______EOF - - if test x$g_have_iso_c_varargs = xyes ; then - cat >>$outfile <<_______EOF -#ifndef __cplusplus -# define G_HAVE_ISO_VARARGS 1 -#endif -_______EOF - fi - if test x$g_have_iso_cxx_varargs = xyes ; then - cat >>$outfile <<_______EOF -#ifdef __cplusplus -# define G_HAVE_ISO_VARARGS 1 -#endif -_______EOF - fi - if test x$g_have_gnuc_varargs = xyes ; then - cat >>$outfile <<_______EOF - -/* gcc-2.95.x supports both gnu style and ISO varargs, but if -ansi - * is passed ISO vararg support is turned off, and there is no work - * around to turn it on, so we unconditionally turn it off. - */ -#if __GNUC__ == 2 && __GNUC_MINOR__ == 95 -# undef G_HAVE_ISO_VARARGS -#endif - -#define G_HAVE_GNUC_VARARGS 1 -_______EOF - fi - - case x$g_stack_grows in - xyes) echo "#define G_HAVE_GROWING_STACK 1" >>$outfile ;; - *) echo "#define G_HAVE_GROWING_STACK 0" >>$outfile ;; - esac - - - echo >>$outfile - if test x$g_have_eilseq = xno; then - cat >>$outfile <<_______EOF -#ifndef EILSEQ -/* On some systems, like SunOS and NetBSD, EILSEQ is not defined. - * The correspondence between this and the corresponding definition - * in libiconv is essential. - */ -# define EILSEQ ENOENT -#endif -_______EOF - - fi - - if test x$g_have_gnuc_visibility = xyes; then - cat >>$outfile <<_______EOF -#define G_HAVE_GNUC_VISIBILITY 1 -_______EOF - fi - cat >>$outfile <<_______EOF -#if defined(__SUNPRO_C) && (__SUNPRO_C >= 0x590) -#define G_GNUC_INTERNAL __attribute__((visibility("hidden"))) -#elif defined(__SUNPRO_C) && (__SUNPRO_C >= 0x550) -#define G_GNUC_INTERNAL __hidden -#elif defined (__GNUC__) && defined (G_HAVE_GNUC_VISIBILITY) -#define G_GNUC_INTERNAL __attribute__((visibility("hidden"))) -#else -#define G_GNUC_INTERNAL -#endif -_______EOF - - - echo >>$outfile - if test x$g_mutex_has_default = xyes; then - cat >>$outfile <<_______EOF -$g_enable_threads_def G_THREADS_ENABLED -#define G_THREADS_IMPL_$g_threads_impl_def -typedef struct _GStaticMutex GStaticMutex; -struct _GStaticMutex -{ - struct _GMutex *runtime_mutex; - union { - char pad[[$g_mutex_sizeof]]; - double dummy_double; - void *dummy_pointer; - long dummy_long; - } static_mutex; -}; -#define G_STATIC_MUTEX_INIT { NULL, { { $g_mutex_contents} } } -#define g_static_mutex_get_mutex(mutex) \\ - (g_thread_use_default_impl ? ((GMutex*)(gpointer) ((mutex)->static_mutex.pad)) : \\ - g_static_mutex_get_mutex_impl_shortcut (&((mutex)->runtime_mutex))) -_______EOF - else - cat >>$outfile <<_______EOF -$g_enable_threads_def G_THREADS_ENABLED -#define G_THREADS_IMPL_$g_threads_impl_def -typedef struct _GMutex* GStaticMutex; -#define G_STATIC_MUTEX_INIT NULL -#define g_static_mutex_get_mutex(mutex) \\ - (g_static_mutex_get_mutex_impl_shortcut (mutex)) -_______EOF - fi - - cat >>$outfile <<_______EOF -/* This represents a system thread as used by the implementation. An - * alien implementaion, as loaded by g_thread_init can only count on - * "sizeof (gpointer)" bytes to store their info. We however need more - * for some of our native implementations. */ -typedef union _GSystemThread GSystemThread; -union _GSystemThread -{ - char data[[$g_system_thread_sizeof]]; - double dummy_double; - void *dummy_pointer; - long dummy_long; -}; -_______EOF - if test x"$g_memory_barrier_needed" != xno; then - echo >>$outfile - echo "#define G_ATOMIC_OP_MEMORY_BARRIER_NEEDED 1" >>$outfile - fi - - echo >>$outfile - g_bit_sizes="16 32 64" - for bits in $g_bit_sizes; do - cat >>$outfile <<_______EOF -#define GINT${bits}_TO_${g_bs_native}(val) ((gint${bits}) (val)) -#define GUINT${bits}_TO_${g_bs_native}(val) ((guint${bits}) (val)) -#define GINT${bits}_TO_${g_bs_alien}(val) ((gint${bits}) GUINT${bits}_SWAP_LE_BE (val)) -#define GUINT${bits}_TO_${g_bs_alien}(val) (GUINT${bits}_SWAP_LE_BE (val)) -_______EOF - done - - cat >>$outfile <<_______EOF -#define GLONG_TO_LE(val) ((glong) GINT${glongbits}_TO_LE (val)) -#define GULONG_TO_LE(val) ((gulong) GUINT${glongbits}_TO_LE (val)) -#define GLONG_TO_BE(val) ((glong) GINT${glongbits}_TO_BE (val)) -#define GULONG_TO_BE(val) ((gulong) GUINT${glongbits}_TO_BE (val)) -#define GINT_TO_LE(val) ((gint) GINT${gintbits}_TO_LE (val)) -#define GUINT_TO_LE(val) ((guint) GUINT${gintbits}_TO_LE (val)) -#define GINT_TO_BE(val) ((gint) GINT${gintbits}_TO_BE (val)) -#define GUINT_TO_BE(val) ((guint) GUINT${gintbits}_TO_BE (val)) -#define GSIZE_TO_LE(val) ((gsize) GUINT${gsizebits}_TO_LE (val)) -#define GSSIZE_TO_LE(val) ((gssize) GINT${gsizebits}_TO_LE (val)) -#define GSIZE_TO_BE(val) ((gsize) GUINT${gsizebits}_TO_BE (val)) -#define GSSIZE_TO_BE(val) ((gssize) GINT${gsizebits}_TO_BE (val)) -#define G_BYTE_ORDER $g_byte_order - -#define GLIB_SYSDEF_POLLIN =$g_pollin -#define GLIB_SYSDEF_POLLOUT =$g_pollout -#define GLIB_SYSDEF_POLLPRI =$g_pollpri -#define GLIB_SYSDEF_POLLHUP =$g_pollhup -#define GLIB_SYSDEF_POLLERR =$g_pollerr -#define GLIB_SYSDEF_POLLNVAL =$g_pollnval - -#define G_MODULE_SUFFIX "$g_module_suffix" - -/* A GPid is an abstraction for a process "handle". It is *not* an - * abstraction for a process identifier in general. GPid is used in - * GLib only for descendant processes spawned with the g_spawn* - * functions. On POSIX there is no "process handle" concept as such, - * but on Windows a GPid is a handle to a process, a kind of pointer, - * not a process identifier. - */ -typedef $g_pid_type GPid; - -#define GLIB_SYSDEF_AF_UNIX $g_af_unix -#define GLIB_SYSDEF_AF_INET $g_af_inet -#define GLIB_SYSDEF_AF_INET6 $g_af_inet6 - -#define GLIB_SYSDEF_MSG_OOB $g_msg_oob -#define GLIB_SYSDEF_MSG_PEEK $g_msg_peek -#define GLIB_SYSDEF_MSG_DONTROUTE $g_msg_dontroute - -G_END_DECLS - -#endif /* GLIBCONFIG_H */ -_______EOF - - - if cmp -s $outfile glibconfig.h; then - AC_MSG_NOTICE([glibconfig.h is unchanged]) - rm -f $outfile - else - mv $outfile glibconfig.h - fi -],[ - -# Note that if two cases are the same, case goes with the first one. -# Note also that this is inside an AC_OUTPUT_COMMAND. We do not depend -# on variable expansion in case labels. Look at the generated config.status -# for a hint. - -if test "x${ac_cv_working_alloca_h+set}" = xset ; then - glib_header_alloca_h="$ac_cv_working_alloca_h" -else - glib_header_alloca_h="$ac_cv_header_alloca_h" -fi - -case xyes in -x$ac_cv_header_float_h) - glib_float_h=yes - glib_mf=FLT_MIN glib_Mf=FLT_MAX - glib_md=DBL_MIN glib_Md=DBL_MAX - ;; -x$ac_cv_header_values_h) - glib_values_h=yes - glib_mf=MINFLOAT glib_Mf=MAXFLOAT - glib_md=MINDOUBLE glib_Md=MAXDOUBLE - ;; -esac - -case xyes in -x$ac_cv_header_limits_h) - glib_limits_h=yes - glib_ms=SHRT_MIN glib_Ms=SHRT_MAX glib_Mus=USHRT_MAX - glib_mi=INT_MIN glib_Mi=INT_MAX glib_Mui=UINT_MAX - glib_ml=LONG_MIN glib_Ml=LONG_MAX glib_Mul=ULONG_MAX - ;; -x$ac_cv_header_values_h) - glib_values_h=yes - glib_ms=MINSHORT glib_Ms=MAXSHORT glib_Mus="(((gushort)G_MAXSHORT)*2+1)" - glib_mi=MININT glib_Mi=MAXINT glib_Mui="(((guint)G_MAXINT)*2+1)" - glib_ml=MINLONG glib_Ml=MAXLONG glib_Mul="(((gulong)G_MAXLONG)*2+1)" - ;; -esac - -if test x$ac_cv_header_sys_poll_h = xyes ; then - glib_sys_poll_h=yes -fi - -if test x$enable_included_printf = xyes ; then - glib_included_printf=yes -fi - -case 2 in -$ac_cv_sizeof_short) - gint16=short - gint16_modifier='"h"' - gint16_format='"hi"' - guint16_format='"hu"' - ;; -$ac_cv_sizeof_int) - gint16=int - gint16_modifier='""' - gint16_format='"i"' - guint16_format='"u"' - ;; -esac -case 4 in -$ac_cv_sizeof_short) - gint32=short - gint32_modifier='"h"' - gint32_format='"hi"' - guint32_format='"hu"' - ;; -$ac_cv_sizeof_int) - gint32=int - gint32_modifier='""' - gint32_format='"i"' - guint32_format='"u"' - ;; -$ac_cv_sizeof_long) - gint32=long - gint32_modifier='"l"' - gint32_format='"li"' - guint32_format='"lu"' - ;; -esac -case 8 in -$ac_cv_sizeof_int) - gint64=int - gint64_modifier='""' - gint64_format='"i"' - guint64_format='"u"' - glib_extension= - gint64_constant='(val)' - guint64_constant='(val)' - ;; -$ac_cv_sizeof_long) - gint64=long - gint64_modifier='"l"' - gint64_format='"li"' - guint64_format='"lu"' - glib_extension= - gint64_constant='(val##L)' - guint64_constant='(val##UL)' - ;; -$ac_cv_sizeof_long_long) - gint64='long long' - if test -n "$glib_cv_long_long_format"; then - gint64_modifier='"'$glib_cv_long_long_format'"' - gint64_format='"'$glib_cv_long_long_format'i"' - guint64_format='"'$glib_cv_long_long_format'u"' - fi - glib_extension='G_GNUC_EXTENSION ' - gint64_constant='(G_GNUC_EXTENSION (val##LL))' - guint64_constant='(G_GNUC_EXTENSION (val##ULL))' - ;; -$ac_cv_sizeof___int64) - gint64='__int64' - if test -n "$glib_cv_long_long_format"; then - gint64_modifier='"'$glib_cv_long_long_format'"' - gint64_format='"'$glib_cv_long_long_format'i"' - guint64_format='"'$glib_cv_long_long_format'u"' - fi - glib_extension= - gint64_constant='(val##i64)' - guint64_constant='(val##ui64)' - ;; -esac -glib_size_t=$ac_cv_sizeof_size_t -glib_size_type_define="$glib_size_type" -glib_void_p=$ac_cv_sizeof_void_p -glib_long=$ac_cv_sizeof_long - -case "$glib_size_type" in -short) - gsize_modifier='"h"' - gsize_format='"hu"' - gssize_format='"hi"' - glib_msize_type='SHRT' - ;; -int) - gsize_modifier='""' - gsize_format='"u"' - gssize_format='"i"' - glib_msize_type='INT' - ;; -long) - gsize_modifier='"l"' - gsize_format='"lu"' - gssize_format='"li"' - glib_msize_type='LONG' - ;; -"long long"|__int64) - gsize_modifier='"I64"' - gsize_format='"I64u"' - gssize_format='"I64i"' - glib_msize_type='INT64' - ;; -esac - -gintbits=`expr $ac_cv_sizeof_int \* 8` -glongbits=`expr $ac_cv_sizeof_long \* 8` -gsizebits=`expr $ac_cv_sizeof_size_t \* 8` - -case $ac_cv_sizeof_void_p in -$ac_cv_sizeof_int) - glib_intptr_type_define=int - gintptr_modifier='""' - gintptr_format='"i"' - guintptr_format='"u"' - glib_gpi_cast='' - glib_gpui_cast='' - ;; -$ac_cv_sizeof_long) - glib_intptr_type_define=long - gintptr_modifier='"l"' - gintptr_format='"li"' - guintptr_format='"lu"' - glib_gpi_cast='(glong)' - glib_gpui_cast='(gulong)' - ;; -$ac_cv_sizeof_long_long) - glib_intptr_type_define='long long' - gintptr_modifier='"I64"' - gintptr_format='"I64i"' - guintptr_format='"I64u"' - glib_gpi_cast='(gint64)' - glib_gpui_cast='(guint64)' - ;; -$ac_cv_sizeof___int64) - glib_intptr_type_define=__int64 - gintptr_modifier='"I64"' - gintptr_format='"I64i"' - guintptr_format='"I64u"' - glib_gpi_cast='(gint64)' - glib_gpui_cast='(guint64)' - ;; -*) - glib_unknown_void_p=yes - ;; -esac - - -case xyes in -x$ac_cv_func_atexit) - glib_atexit=" -#ifdef NeXT /* @#%@! NeXTStep */ -# define g_ATEXIT(proc) (!atexit (proc)) -#else -# define g_ATEXIT(proc) (atexit (proc)) -#endif" - ;; -x$ac_cv_func_on_exit) - glib_atexit=" -#define g_ATEXIT(proc) (on_exit ((void (*)(int, void*))(proc), NULL))" - ;; -esac - -case xyes in -x$ac_cv_func_memmove) - glib_memmove=' -#define g_memmove(dest,src,len) G_STMT_START { memmove ((dest), (src), (len)); } G_STMT_END' - ;; -x$glib_cv_working_bcopy) - glib_memmove=" -/* memmove isn't available, but bcopy can copy overlapping memory regions */ -#define g_memmove(d,s,n) G_STMT_START { bcopy ((s), (d), (n)); } G_STMT_END" - ;; -*) - glib_memmove=" -/* memmove isn't found and bcopy can't copy overlapping memory regions, - * so we have to roll our own copy routine. */ -void g_memmove (void* dest, const void * src, unsigned long len);" - ;; -esac - -glib_defines=" -#define GLIB_MAJOR_VERSION $GLIB_MAJOR_VERSION -#define GLIB_MINOR_VERSION $GLIB_MINOR_VERSION -#define GLIB_MICRO_VERSION $GLIB_MICRO_VERSION -" - -case xyes in -x$glib_cv_va_copy) glib_vacopy='#define G_VA_COPY va_copy' ;; -x$glib_cv___va_copy) glib_vacopy='#define G_VA_COPY __va_copy' ;; -*) glib_vacopy='' -esac - -if test x$glib_cv_va_val_copy = xno; then - glib_vacopy="\$glib_vacopy -#define G_VA_COPY_AS_ARRAY 1" -fi - -if test x$glib_cv_hasinline = xyes; then - glib_inline='#define G_HAVE_INLINE 1' -fi -if test x$glib_cv_has__inline = xyes; then - glib_inline="\$glib_inline -#define G_HAVE___INLINE 1" -fi -if test x$glib_cv_has__inline__ = xyes; then - glib_inline="\$glib_inline -#define G_HAVE___INLINE__ 1" -fi - -g_have_gnuc_varargs=$g_have_gnuc_varargs -g_have_iso_c_varargs=$g_have_iso_c_varargs -g_have_iso_cxx_varargs=$g_have_iso_cxx_varargs - -g_can_inline=$g_can_inline -g_have_gnuc_visibility=$g_have_gnuc_visibility -g_have_sunstudio_visibility=$g_have_sunstudio_visibility - -if test x$ac_cv_c_bigendian = xyes; then - g_byte_order=G_BIG_ENDIAN - g_bs_native=BE - g_bs_alien=LE -else - g_byte_order=G_LITTLE_ENDIAN - g_bs_native=LE - g_bs_alien=BE -fi - -g_pollin=$glib_cv_value_POLLIN -g_pollout=$glib_cv_value_POLLOUT -g_pollpri=$glib_cv_value_POLLPRI -g_pollhup=$glib_cv_value_POLLHUP -g_pollerr=$glib_cv_value_POLLERR -g_pollnval=$glib_cv_value_POLLNVAL - -g_af_unix=$glib_cv_value_AF_UNIX -g_af_inet=$glib_cv_value_AF_INET -g_af_inet6=$glib_cv_value_AF_INET6 - -g_msg_peek=$glib_cv_value_MSG_PEEK -g_msg_oob=$glib_cv_value_MSG_OOB -g_msg_dontroute=$glib_cv_value_MSG_DONTROUTE - -g_stack_grows=$glib_cv_stack_grows - -g_have_eilseq=$have_eilseq - -case x$have_threads in -xno) g_enable_threads_def="#undef";; -*) g_enable_threads_def="#define";; -esac - -g_threads_impl_def=$g_threads_impl - -g_mutex_has_default="$mutex_has_default" -g_mutex_sizeof="$glib_cv_sizeof_gmutex" -g_system_thread_sizeof="$glib_cv_sizeof_system_thread" -g_mutex_contents="$glib_cv_byte_contents_gmutex" - -g_memory_barrier_needed="$glib_memory_barrier_needed" - -g_module_suffix="$glib_gmodule_suffix" - -g_pid_type="$glib_pid_type" -case $host in - *-*-beos*) - glib_os="#define G_OS_BEOS" - ;; - *-*-cygwin*) - glib_os="#define G_OS_UNIX -#define G_PLATFORM_WIN32 -#define G_WITH_CYGWIN" - ;; - *-*-mingw*) - glib_os="#define G_OS_WIN32 -#define G_PLATFORM_WIN32" - ;; - *) - glib_os="#define G_OS_UNIX" - ;; -esac -glib_static_compilation="" -if test x$glib_win32_static_compilation = xyes; then - glib_static_compilation="#define GLIB_STATIC_COMPILATION 1 -#define GOBJECT_STATIC_COMPILATION 1" -fi -]) - -AC_CONFIG_FILES([ -glib-2.0.pc -glib-2.0-uninstalled.pc -gmodule-2.0.pc -gmodule-export-2.0.pc -gmodule-no-export-2.0.pc -gmodule-2.0-uninstalled.pc -gmodule-no-export-2.0-uninstalled.pc -gthread-2.0.pc -gthread-2.0-uninstalled.pc -gobject-2.0.pc -gobject-2.0-uninstalled.pc -gio-2.0.pc -gio-unix-2.0.pc -gio-2.0-uninstalled.pc -gio-unix-2.0-uninstalled.pc -glib-zip -glib-gettextize -Makefile -build/Makefile -build/win32/Makefile -build/win32/dirent/Makefile -build/win32/vs9/Makefile -glib/Makefile -glib/libcharset/Makefile -glib/gnulib/Makefile -glib/pcre/Makefile -glib/update-pcre/Makefile -glib/tests/Makefile -gmodule/Makefile -gmodule/gmoduleconf.h -gobject/Makefile -gobject/glib-mkenums -gobject/tests/Makefile -gthread/Makefile -gthread/tests/Makefile -gio/Makefile -gio/xdgmime/Makefile -gio/inotify/Makefile -gio/libasyncns/Makefile -gio/fen/Makefile -gio/fam/Makefile -gio/win32/Makefile -gio/tests/Makefile -po/Makefile.in -docs/Makefile -docs/reference/Makefile -docs/reference/glib/Makefile -docs/reference/glib/version.xml -docs/reference/gobject/Makefile -docs/reference/gobject/version.xml -docs/reference/gio/Makefile -docs/reference/gio/version.xml -tests/Makefile -tests/gobject/Makefile -tests/refcount/Makefile -m4macros/Makefile -]) - -AC_CONFIG_COMMANDS([chmod-scripts], -[chmod 0755 glib-zip -chmod 0755 glib-gettextize -chmod 0755 gobject/glib-mkenums]) - -# we want to invoke this macro solely so that the config.status script -# and automake generated makefiles know about these generated files. -# They are only needed to distcheck the package -if false; then - AC_CONFIG_FILES([ - INSTALL - README - config.h.win32 - glibconfig.h.win32 - glib/makefile.msc - glib/glib.rc - gmodule/makefile.msc - gmodule/gmodule.rc - gobject/makefile.msc - gobject/gobject.rc - gthread/makefile.msc - gthread/gthread.rc - gio/gio.rc - tests/makefile.msc - ]) -fi - -AC_OUTPUT diff --git a/debian/changelog b/debian/changelog deleted file mode 100644 index 0b21d7d..0000000 --- a/debian/changelog +++ /dev/null @@ -1,1523 +0,0 @@ -glib2.0 (2.24.0-3slp2) unstable; urgency=low - - * Remove udeb from debian/control file - - -- Eunok Kim Fri, 11 Jun 2010 22:26:36 +0900 - -glib2.0 (2.24.0-2slp2) unstable; urgency=low - - * Package version update - - -- Eunok Kim Fri, 11 Jun 2010 10:41:29 +0900 - -glib2.0 (2.24.0-1slp2) unstable; urgency=low - - * Update glib2.0 to 2.24.0 - - -- Eunok Kim Thu, 10 Jun 2010 15:45:32 +0900 - -glib2.0 (2.22.3-3slp2) unstable; urgency=low - - * Changing verion naming rul - - -- Boram Park Wed, 24 Mar 2010 21:33:16 +0900 - -glib2.0 (2.22.3-2) unstable; urgency=low - - * Change debian/control.in, debian/rules, debian/libglib2.0-0.install and - debian/libglib2.0-dev.links files. - - -- Doyoun Kang Thu, 10 Dec 2009 16:41:27 +0900 - -glib2.0 (2.22.3-1) unstable; urgency=low - - [ Loïc Minier ] - * -refdbg package is section/prio debug/extra. - * Add note to NOT use -Wl,--as-needed as it might drop a critical -lpthread - link in gio (which dlopen()s gvfs); see - mid:<1257999019.21780.15.camel@marzipan>. - - [ Sebastian Dröge ] - * New upstream bugfix release: - + debian/patches/90_mimetype-sorting.patch: - - Dropped, merged upstream. - - -- Sebastian Dröge Tue, 01 Dec 2009 16:36:30 +0100 - -glib2.0 (2.22.2-2) unstable; urgency=low - - * debian/patches/90_mimetype-sorting.patch: - + Fix sorting of mimetypes by weight. Highest weight means most - important, not the other way around. Patch from upstream GIT. - - -- Sebastian Dröge Thu, 08 Oct 2009 18:34:23 +0200 - -glib2.0 (2.22.2-1) unstable; urgency=low - - [ Emilio Pozuelo Monfort ] - * Move libglib2.0-data to section libs. Closes: #549079. - - [ Sebastian Dröge ] - * New upstream bugfix release. - - -- Sebastian Dröge Thu, 08 Oct 2009 12:48:51 +0200 - -glib2.0 (2.22.1-1) unstable; urgency=low - - * New upstream bugfix release: - + debian/patches/10_inotify_init1.patch, - debian/patches/30_metadata_symlinks.patch: - - Dropped, merged upstream. - - -- Sebastian Dröge Wed, 30 Sep 2009 08:17:57 +0200 - -glib2.0 (2.22.0-2) unstable; urgency=low - - * Don’t install Python GDB macros for now, they only work with an - experimental GDB branch. - * 30_metadata_symlinks.patch: stolen upstream. Get metadata to work - with symbolic links. Closes: #548142. - - -- Josselin Mouette Wed, 30 Sep 2009 01:02:11 +0200 - -glib2.0 (2.22.0-1) unstable; urgency=low - - [ Josselin Mouette ] - * Move libglib-2.0.so.0 to /lib so that DeviceKit (and other potential - sources) can work without having /usr mounted. - * 11_chmod_symlinks.patch: new patch. Fix potential security issue - when manipulating symlink permissions. Thanks Arand Nash for the - heads up. - - [ Sebastian Dröge ] - * New upstream stable release: - + debian/patches/11_chmod_symlinks.patch: - - Dropped, merged upstream. - + debian/libglib2.0-0.symbols, - debian/rules: - - Update for the new version. - - -- Sebastian Dröge Wed, 23 Sep 2009 05:04:37 +0200 - -glib2.0 (2.21.6-1) experimental; urgency=low - - [ Josselin Mouette ] - * 10_inotify_init1.patch: fall back on inotify_init when inotify_init1 - does not work, as happens with kernel versions < 2.6.27. - Closes: #544354. - - [ Sebastian Dröge ] - * New upstream development release: - + debian/libglib2.0-0.symbols: - - Update for the new version. - + debian/rules: - - Update SHVER to 2.21.6. - * debian/control.in: - + Updated Standards-Version to 3.8.3, no additional changes needed. - - -- Sebastian Dröge Sat, 05 Sep 2009 07:15:58 +0200 - -glib2.0 (2.21.5-1) experimental; urgency=low - - * New upstream development release: - + debian/libglib2.0-0.symbols: - - Update for the new version. - + debian/rules: - - Update SHVER to 2.21.5. - * debian/control.in: - + Updated Standards-Version to 3.8.2, no additional changes needed. - - -- Sebastian Dröge Tue, 25 Aug 2009 18:38:51 +0200 - -glib2.0 (2.21.4-1) experimental; urgency=low - - * New upstream development release: - + debian/rules: - - Include check-dist.mk to prevent accidental uploads to unstable. - - Update shlib version to 2.21.4. - + debian/libglib2.0-0.symbols: - - Update for the API additions. - * debian/control.in: - + Updated Standards-Version to 3.8.1, no additional changes needed. - - -- Sebastian Dröge Tue, 21 Jul 2009 09:35:33 +0200 - -glib2.0 (2.20.4-1) unstable; urgency=low - - * New upstream bugfix release. - - -- Sebastian Dröge Sat, 27 Jun 2009 09:56:08 +0200 - -glib2.0 (2.20.3-1) unstable; urgency=low - - [ Josselin Mouette ] - * Only build the libgio-fam package for hurd and kfreebsd, it is - totally useless under Linux. - * Make it recommend gamin for kqueue support. - * Make libgamin-dev the primary build-dependency. Closes: #526219. - - [ Sebastian Dröge ] - * New upstream bugfix release. - - -- Sebastian Dröge Mon, 01 Jun 2009 15:35:40 +0200 - -glib2.0 (2.20.1-2) unstable; urgency=low - - * Add refdbg package: libglib2.0-0-refdbg. (Closes: #525915) - - -- Jonny Lamb Tue, 28 Apr 2009 15:11:27 +0100 - -glib2.0 (2.20.1-1) unstable; urgency=low - - * New upstream bugfix release: - + 10_log_valist.patch, dropped. - - -- Sebastian Dröge Sat, 11 Apr 2009 17:00:43 +0200 - -glib2.0 (2.20.0-3) unstable; urgency=low - - * Fix debug package section. - * 10_log_valist.patch: new patch, stolen upstream. Copy a va_list - before using it twice. Closes: #520484. - - -- Josselin Mouette Thu, 09 Apr 2009 20:11:52 +0200 - -glib2.0 (2.20.0-2) unstable; urgency=low - - * Remove 02_usr_share_gnome_applications.patch, now gnome-session sets - XDG_DATA_DIRS accordingly. - - -- Josselin Mouette Thu, 19 Mar 2009 22:59:34 +0100 - -glib2.0 (2.20.0-1) unstable; urgency=low - - * New upstream stable release. - * Upload to unstable, remove check-dist include. - This won't block any transitions because of symbol files. - * debian/libglib2.0-0.symbols, - debian/rules: - + Update for the API changes. - - -- Sebastian Dröge Sat, 14 Mar 2009 10:53:26 +0100 - -glib2.0 (2.19.10-1) experimental; urgency=low - - * New upstream development release. - - -- Sebastian Dröge Mon, 02 Mar 2009 16:04:08 +0100 - -glib2.0 (2.19.8-2) experimental; urgency=low - - * debian/patches/01_gettext-desktopfiles.patch, - debian/patches/02_gettext-desktopfiles-ubuntu.patch: - + Updated from the Ubuntu package, thanks to Martin Pitt for the changes: - - 01_gettext-desktopfiles.patch: Merge OpenSUSE's and our patch: - - Now prefers inline translations over gettext translations, which - fixes a few corner cases (like renaming .desktop files on the - user's desktop), is more in line with the recent gconf patch, - and more palatable for upstream inclusion. - - Use X-GNOME-Gettext-Domain, for preparing upstream inclusion. - - Forwarded upstream now. - - Add 02_gettext-desktopfiles-ubuntu.patch: Provide backwards - compatibility for 01_gettext-desktopfiles.patch for - X-{Debian,Ubuntu}-Gettext-Domain. The latter was changed to use - X-GNOME-, so this is necessary until all our .desktop files are - converted. - - -- Sebastian Dröge Tue, 24 Feb 2009 16:08:05 +0100 - -glib2.0 (2.19.8-1) experimental; urgency=low - - * New upstream development release. - - -- Sebastian Dröge Fri, 20 Feb 2009 10:38:44 +0100 - -glib2.0 (2.19.7-1) experimental; urgency=low - - * New development release - - -- Gustavo Noronha Silva Tue, 17 Feb 2009 01:43:04 -0300 - -glib2.0 (2.19.6-1) experimental; urgency=low - - * New development release - * debian/libglib2.0-0.symbols: - - updated with new symbols - - -- Gustavo Noronha Silva Sun, 15 Feb 2009 23:58:22 -0300 - -glib2.0 (2.18.4-2) unstable; urgency=low - - * Release to unstable - * debian/rules: - - bump SHVER, since we are already forcing a 2.18.0 dependecy on the - symbols introduced in the development versions - * debian/control.in: - - added Homepage and Vcs-* control fields - - -- Gustavo Noronha Silva Sun, 15 Feb 2009 13:00:43 -0300 - -glib2.0 (2.18.4-1) experimental; urgency=low - - [ Josselin Mouette ] - * 04_homedir_env.patch: new patch. Handle the G_HOME environment - variable, to override the passwd entry. This will allow to fix - various kinds of build failures due to restricted build - environments. - - [ Sebastian Dröge ] - * New upstream bugfix release. - - -- Sebastian Dröge Sat, 10 Jan 2009 14:21:55 +0100 - -glib2.0 (2.18.3-1) experimental; urgency=low - - * New upstream bugfix release. - - -- Sebastian Dröge Mon, 24 Nov 2008 10:07:47 +0100 - -glib2.0 (2.18.2-1) experimental; urgency=low - - [ Loic Minier ] - * Suffix the Debian specific pcre bdep with "~" to allow backports and make - lintian happy. - * Update doc-base entries for new doc-base secttions: use Programming/C - instead of Apps/Programming. - * Use uppercase GNOME in doc-base description of glib. - * Recommend shared-mime-info for content-type guessing API; see - GNOME #554563. - * Pass -k to make check. - - [ Sebastian Dröge ] - * New upstream bugfix release. - - -- Sebastian Dröge Sun, 19 Oct 2008 13:26:48 +0200 - -glib2.0 (2.18.1-1) experimental; urgency=low - - * New upstream bugfix release. - * debian/libglib2.0-0.symbols: - + Updated all 2.17 symbols to 2.18.0 to get dependencies on the stable - versions. - - -- Sebastian Dröge Sun, 21 Sep 2008 15:31:15 +0200 - -glib2.0 (2.18.0-1) experimental; urgency=low - - * New upstream stable release, with API addition. - - Update symbols file for new g_object_get_type() symbol and drop - g_slice_debug_tree_statistics() which shouldn't have been exported in - the first place. - - Refresh patches 01_gettext-desktopfiles, - 02_usr_share_gnome_applications, and 03_blacklist-directories to apply - cleanly. - - -- Loic Minier Wed, 03 Sep 2008 00:51:29 +0200 - -glib2.0 (2.17.7-1) experimental; urgency=low - - * New upstream development release, the new API might still change: - + debian/rules, - debian/libglib2.0-0.symbols: - - Updated for the new symbols. - - -- Sebastian Dröge Mon, 18 Aug 2008 16:04:30 +0200 - -glib2.0 (2.17.6-1) experimental; urgency=low - - * New upstream development release, the new API might still change: - + debian/rules, - debian/libglib2.0-0.symbols: - - Updated for the new symbols. - - -- Sebastian Dröge Mon, 04 Aug 2008 19:54:44 +0200 - -glib2.0 (2.17.4-1) experimental; urgency=low - - [ Loic Minier ] - * List back m68k in arches where we could make the testsuite fatal, - following the update on GNOME #481575. - * Document why testsuite is currently completely disabled (fails when - there's no writable $HOME). - - [ Sebastian Dröge ] - * New upstream development release, the new API might still change: - + debian/rules, - debian/libglib2.0-0.symbols: - - Updated for the new symbols. - + debian/patches/90_gio-nautilus-crash.patch: - - Dropped, merged upstream. - - -- Sebastian Dröge Tue, 22 Jul 2008 11:17:05 +0200 - -glib2.0 (2.17.3-2) experimental; urgency=low - - * debian/patches/90_gio-nautilus-crash.patch: - + Patch from upstream SVN to fix a crash in nautilus 2.22. - - -- Sebastian Dröge Sat, 05 Jul 2008 16:57:05 +0200 - -glib2.0 (2.17.3-1) experimental; urgency=low - - * New upstream development release, the new API might still change: - + debian/rules, - debian/libglib2.0-0.symbols: - - Updated for the new symbols. - * debian/control.in: - + Updated Standards-Version to 3.8.0, no additional changes needed. - - -- Sebastian Dröge Thu, 03 Jul 2008 11:21:17 +0200 - -glib2.0 (2.17.2-1) experimental; urgency=low - - * New upstream development release, the new API might still change: - + debian/rules, - debian/libglib2.0-0.symbols: - - Updated for the new symbols. - - -- Sebastian Dröge Tue, 17 Jun 2008 09:18:10 +0200 - -glib2.0 (2.17.0-1) experimental; urgency=low - - [ Josselin Mouette ] - * debian/rules: don't compress .sgml and .devhelp files. - - [ Loic Minier ] - * Fix broken second dh_strip invocation which was not only acting on the - udeb but also on binary packages (-s -pUDEB should have been -pUDEB). - - [ Sebastian Dröge ] - * New upstream development release, the new API might still change. - * debian/rules: - + Include check-dist.mk to prevent accidental uploads to unstable. - + Bump SHVER to 2.17.0. - + Pass -c4 to dh_makeshlibs. - * debian/libglib2.0-0.symbols: - + Update symbols. - - -- Sebastian Dröge Wed, 28 May 2008 10:40:30 +0200 - -glib2.0 (2.16.3-2) unstable; urgency=low - - * debian/rules: Don't add the debug symbols of the udeb in the -dbg package. - Makes the debugging info actually usefull again (Closes: #468093) - - -- Sjoerd Simons Fri, 11 Apr 2008 22:58:03 +0200 - -glib2.0 (2.16.3-1) unstable; urgency=low - - [ Sjoerd Simons ] - * debian/patches/70_g_timeout_seconds_fix.patch - + Added. Fix a rare case where a timeout from g_timeout_add_seconds() is - never triggered. See http://bugzilla.gnome.org/show_bug.cgi?id=448943 - - [ Sebastian Dröge ] - * New upstream bugfix release: - + debian/patches/70_g_timeout_seconds_fix.patch: - - Dropped, merged upstream. - - -- Sebastian Dröge Tue, 08 Apr 2008 12:02:07 +0200 - -glib2.0 (2.16.2-1) unstable; urgency=low - - [ Loic Minier ] - * Drop nautilus conflicts as it triggers a bug in the APT resolver on - dist-upgrade. - * Update patch 01_gettext-desktopfiles with a newer version taken from the - Ubuntu package. - * Update and enable patch 01_gettext-desktopfiles to also look for - X-Debian-Gettext-Domain if X-Ubuntu-Gettext-Domain isn't present. - - [ Sebastian Dröge ] - * New upstream bugfix release: - + Fixes FTBFS on hurd/i386 (Closes: #472129). - + debian/patches/04_nfs4.patch, - debian/patches/80_static-mutex-aliasing-warnings.patch, - debian/patches/81_c99-inline-warnings.patch: - - Dropped, merged upstream. - - -- Sebastian Dröge Tue, 01 Apr 2008 07:40:48 +0200 - -glib2.0 (2.16.1-2) unstable; urgency=low - - [ Josselin Mouette ] - * 02_usr_share_gnome_applications.patch: ported from GnomeVFS. Use - /usr/share/gnome/applications/defaults.list to obtain the defaults - for MIME mapping. Currently this file is still shipped by GnomeVFS. - Closes: #469504. - * 03_blacklist-directories.patch: ported from GnomeVFS. Blacklist more - FHS directories that are commonly found as Unix mount points, - including those necessary for live-initramfs. - * 04_nfs4.patch: ported from GnomeVFS. Support for nfs4 filesystems. - - [ Sebastian Dröge ] - * 80_static-mutex-aliasing-warnings.patch: Prevent warnings about - breaking strict-aliasing rules when using G_LOCK(). - See http://bugzilla.gnome.org/show_bug.cgi?id=316221 - * 81_c99-inline-warnings.patch: Fix warnings when using G_INLINE_FUNC - in C99 mode (Closes: #470796). - See http://bugzilla.gnome.org/show_bug.cgi?id=522292 - * Don't ship the old changelogs and news to save some space. - - -- Sebastian Dröge Fri, 14 Mar 2008 10:13:09 +0100 - -glib2.0 (2.16.1-1) unstable; urgency=low - - * New upstream bugfix release. - - -- Sebastian Dröge Tue, 11 Mar 2008 04:41:30 +0100 - -glib2.0 (2.16.0-1) unstable; urgency=low - - * New upstream stable release: - + debian/rules: - - Update shlibs version to 2.16.0. - - Drop check-dist include, upload to unstable. - + debian/libglib2.0-0.symbols: - - Updated symbols for the new version. - - -- Sebastian Dröge Mon, 10 Mar 2008 19:23:55 +0100 - -glib2.0 (2.15.6-1) experimental; urgency=low - - * New upstream release: - + debian/rules: - - Update shlibs version to 2.15.6. - + debian/libglib2.0-0.symbols: - - Updated symbols for the new version. - - -- Sebastian Dröge Tue, 26 Feb 2008 06:22:28 +0100 - -glib2.0 (2.15.5-1) experimental; urgency=low - - * New upstream release: - + debian/patches/02_fam-helper.patch: - - Dropped, merged upstream. - + debian/patches/60_wait-longer-for-threads-to-die.patch: - - Updated to apply cleanly again. - + debian/libglib2.0-0.symbols: - - Update symbols for 2.15.5. - - -- Sebastian Dröge Tue, 12 Feb 2008 06:08:39 +0100 - -glib2.0 (2.15.4-1) experimental; urgency=low - - [ Loic Minier ] - * Add a gio gtk-doc symlink. - * Add a doc-base file for gio. - - [ Sebastian Dröge ] - * New upstream release: - + debian/libglib2.0-0.symbols: - - Update symbols for 2.15.4. - + debian/rules: - - Update API version to 2.15.4. - * debian/patches/02_fam-helper.patch: - + Fix build failure when building with FAM and not gamin. See BGO #509419 - and BGO #512384 for more details. - - -- Sebastian Dröge Tue, 29 Jan 2008 12:14:08 +0100 - -glib2.0 (2.15.3-1) experimental; urgency=low - - * New upstream release. - * debian/rules, - debian/libglib2.0-0.symbols: - + Update shlibs and all unstable symbols to 2.15.3. - - -- Sebastian Dröge Tue, 22 Jan 2008 11:54:42 +0100 - -glib2.0 (2.15.2-3) experimental; urgency=low - - [ Loic Minier ] - * Bump up dpkg-dev build-dep to >= 1.14.13 for Build-Depends-Package; thanks - Raphaël Hertzog. - * Drop duplicate dpkg-dev bdep. - * Let libglib2.0-dev depends on ${shlibs:Depends}; thanks Niko Tyni. - - [ Sebastian Dröge ] - * debian/libgio-fam.install: - + Fix path where we install the GIO FAM plugin. It shouldn't be - /usr/lib/gio/gio but /usr/lib/gio. Thanks to Sedat Dilek for reporting. - - -- Sebastian Dröge Mon, 21 Jan 2008 08:58:33 +0100 - -glib2.0 (2.15.2-2) experimental; urgency=low - - * debian/rules: - + Disable selinux for the udeb until we have a libselinux1 udeb. - - -- Sebastian Dröge Thu, 17 Jan 2008 11:50:11 +0100 - -glib2.0 (2.15.2-1) experimental; urgency=low - - [ Sebastian Dröge ] - * New upstream development release, the new API may still change - incompatibly; API additions: - + Drop patch 67_gcc43-inline.patch, merged upstream. - * Include check-dist again to prevent accidental uploads to unstable. - * Disable testsuite for now. - * Bump shlibs to 2.15.2. - * Add build dependencies for GIO and add libgio-fam package that contains - a GIO file/directory monitoring module that uses fam. - * debian/rules, - debian/libglib2.0-0.symbols, - debian/control.in: - + Add a symbol file for GLib, generated from 2.12.4, 2.14.3, 2.15.2. - This is handled by dh_makeshlibs. Require dpkg-dev (>= 1.14.8) for this. - * debian/control.in: - + Recommend python on the -dev package for the gtester-report utility. - * debian/shlibs.local: - + Dropped as pcre is fixed now since 7.4-1 (Closes: #450796). - - [ Loic Minier ] - * Build-dep on gtk-doc-tools to prevent a spurious warning from - gtk-doc.make: "/bin/sh: line 11: test: !=: unary operator expected". - * Build udeb against system pcre again (now that it provides an udeb); bump - up libpcre build-dep to >= 7.4-1 (Closes: #443067). - - -- Sebastian Dröge Tue, 15 Jan 2008 15:30:20 +0100 - -glib2.0 (2.14.4-2) unstable; urgency=low - - * debian/rules: - + Make testsuite failures on sparc non-fatal too as the - threadpool-test fails there too, most probably of some - timing related bug. See BGO #481573. - - -- Sebastian Dröge Thu, 29 Nov 2007 11:45:57 +0100 - -glib2.0 (2.14.4-1) unstable; urgency=low - - [ Loic Minier ] - * Fix disabled patch name 01_gettext-desktopfiles in series. - - [ Josselin Mouette ] - * Conflict against nautilus < 2.20 according to - http://bugzilla.gnome.org/show_bug.cgi?id=440988#c182 - - [ Sebastian Dröge ] - * New upstream bugfix release. - - -- Sebastian Dröge Sun, 25 Nov 2007 14:37:34 +0100 - -glib2.0 (2.14.3-1) unstable; urgency=high - - [ Sebastian Dröge ] - * debian/shlibs.local: - + Override libpcre3's shlibs to require at least pcre 7.2 (See: #449289). - - [ Loic Minier ] - * New upstream stable release; bug fixes and security update. - - SECURITY: Update the internal copy of PCRE to 7.4, fixes CVE-2007-4767; - the internal copy is used for the udeb. - - Drop relibtoolizing patch, 70_relibtoolize, as upstream prepared this - tarball with libtool 1.5.24. - - -- Loic Minier Sat, 10 Nov 2007 19:59:04 +0100 - -glib2.0 (2.14.2-1) unstable; urgency=low - - * Add GNOME bug id to 70_relibtoolize. - * New upstream stable release; no API change. - * Add lpia to the list of arches on which testsuite failures are fatal. - - -- Loic Minier Wed, 17 Oct 2007 17:19:16 +0200 - -glib2.0 (2.14.1-5) unstable; urgency=low - - * Add a relibtoolizing patch, 70_relibtoolize, to get some hurd-i386 fixes - in libtool; see Debian #445001. - - -- Loic Minier Sun, 07 Oct 2007 16:52:44 +0200 - -glib2.0 (2.14.1-4) unstable; urgency=low - - * Document that testsuite failure aren't fatal on m68k due to GNOME #481575. - * Disable testsuite on arm, mips, powerpc; see GNOME #481573; mipsel was - already disabled because its testsuite results were unknown in - experimental. - * Document that testsuite failure is disabled on hppa, hurd, kfreebsd-amd64, - kfreebsd-i386 due to Debian #428674. - - -- Loic Minier Sat, 29 Sep 2007 13:56:18 +0200 - -glib2.0 (2.14.1-3) unstable; urgency=medium - - * Only build the standards debs against the system PCRE, i.e. build the udeb - against the builtin PCRE until pcre3 provides an udeb. - - -- Loic Minier Tue, 18 Sep 2007 21:35:30 +0200 - -glib2.0 (2.14.1-2) unstable; urgency=low - - * debian/control.in, - debian/rules: - + Build against the system PCRE instead of the supplied one. - - -- Sebastian Dröge Mon, 17 Sep 2007 09:41:48 +0200 - -glib2.0 (2.14.1-1) unstable; urgency=low - - [ Loic Minier ] - * Mention I added 90_fix-abi-check-with-debug in 2.14.0-1 - - [ Sebastian Dröge ] - * New upstream major stable release, without API changes. - * debian/patches/90_fix-abi-check-with-debug.patch: - + Dropped, merged upstream. - - -- Sebastian Dröge Mon, 17 Sep 2007 06:35:29 +0200 - -glib2.0 (2.14.0-2) unstable; urgency=low - - * Upload to unstable; drop check-dist include. - - -- Loic Minier Tue, 21 Aug 2007 09:05:30 +0200 - -glib2.0 (2.14.0-1) experimental; urgency=low - - * Fix double --host/--build flags to configure. - * Update patch 67_gcc43-inline to also fix the headers for GCC 4.2. - * New upstream major stable release; API additions. - - Bump up shlibs to >= 2.14.0. - - Drop patch 90_from_svn_fix_missing_pointer_casting, merged upstream. - - New patch, 90_fix-abi-check-with-debug, fixes build of testsuite in - debug mode; from SVN. - - -- Loic Minier Mon, 20 Aug 2007 21:54:07 +0200 - -glib2.0 (2.13.7-3) experimental; urgency=low - - * debian/patches/90_from_svn_fix_missing_pointer_casting.patch: - - patch from SVN, "fixed missing pointer casts when using atomic ops." - (Closes: #434853) - - -- Sebastien Bacher Fri, 27 Jul 2007 16:14:13 +0200 - -glib2.0 (2.13.7-2) experimental; urgency=low - - * Bump shlibs to 2.13.7. - - -- Loic Minier Wed, 25 Jul 2007 16:09:27 +0200 - -glib2.0 (2.13.7-1) experimental; urgency=low - - * Drop "libtool_is_fool" snippet patching hardcode_libdir_flag_spec and - archive_cmds which is probably dangerous with newer libtools. - * Fix flavor name in a comment of debian/rules. - * Use -s instead of -a in arch-specific dh_* calls. - * New upstream development release; some API additions. - - Drop patch 60_output-lines-during-tests, merged upstream. - * New patch, 60_wait-longer-for-threads-to-die, to wait 5 seconds instead of - one for threads to die in the threadpool test; hopefully fixes hppa and - kfreebsd testsuite failures; see #428674 and #431720. - * Don't make testsuite failures fatal on hppa; closes: #431720. - - -- Loic Minier Thu, 12 Jul 2007 21:37:47 +0200 - -glib2.0 (2.13.6-1) experimental; urgency=low - - * Don't pass -L to dh_shlibdeps as the shlibs.local trick is enough and this - can result in duplicate deps; closes: #317461. - * Set myself as maintainer. - * Cleanups. - * Make the testsuite failures fatal on arches which passed the testsuite - with 2.13.5 in experimental (currently: alpha amd64 arm hppa i386 ia64 - mips powerpc s390); closes: #291486. - * Don't run the testsuite when cross-compiling. - * New upstream development release; only API change is to change back the - definition of GType for C++ to be gulong. - - -- Loic Minier Mon, 02 Jul 2007 10:21:34 +0200 - -glib2.0 (2.13.5-1) experimental; urgency=low - - * New upstream release - - Bump shlibs to >= 2.13.5, as the API was changed - - -- Marc 'HE' Brockschmidt Tue, 19 Jun 2007 16:14:16 +0200 - -glib2.0 (2.13.4-2) experimental; urgency=low - - * New patch, 67_gcc43-inline, fixes FTBFS of apps using glib with GCC 4.3 - which uses C99 where the meaning of "inline" changed; patch was adapted - from patches in GNOME #315437 and Gentoo #156475; closes: #416863. - - -- Loic Minier Sat, 16 Jun 2007 18:49:57 +0200 - -glib2.0 (2.13.4-1) experimental; urgency=low - - * Also honor parallel=n in DEB_BUILD_OPTIONS. - * New upstream release series; these are development releases, the new API - may still change incompatibly. - - Target at experimental; include check-dist. - - Bump up shlibs to >= 2.13.4. - * New patch but disabled, 01_gettext-desktopfiles, permits overriding the - gettext domain when desktop files have such a field; found in the Ubuntu - package. - - -- Loic Minier Wed, 13 Jun 2007 10:52:27 +0200 - -glib2.0 (2.12.12-1) unstable; urgency=low - - * Fix description of the -dbg package. - * New upstream release. - - -- Loic Minier Thu, 03 May 2007 19:14:33 +0200 - -glib2.0 (2.12.11-3) unstable; urgency=medium - - * Initialize CFLAGS to -Wall -g; pass debian/rules' CFLAGS and LDFLAGS to - configure, doh! - * Track all stable versions in watch file. - * Wrap build-deps and deps. - * Add ${misc:Depends}. - * New patch 60_output-lines-during-tests, outputs newlines after thousand - iterations of the inner-loop of the closures test to avoid the timeout on - mips and mipsel buildds. - - -- Loic Minier Thu, 12 Apr 2007 16:13:46 +0200 - -glib2.0 (2.12.11-2) unstable; urgency=low - - * Run "make check" test suite for the deb flavor except if DEB_BUILD_OPTIONS - contains the "nocheck" keyword; ignore failures. - * Include the new uploaders.mk from gnome-pkg-tools instead of duplicating - its logic; build-dep on gnome-pkg-tools >= 0.11. - * Drop useless version computations. - * Add support for DEB_BUILD_OPTIONS_PARALLEL. - * Upload to unstable; drop check-dist include. - - -- Loic Minier Wed, 11 Apr 2007 10:35:43 +0200 - -glib2.0 (2.12.11-1) experimental; urgency=medium - - * New upstream release; no API change. - - -- Loic Minier Fri, 9 Mar 2007 22:02:25 +0100 - -glib2.0 (2.12.10-1) experimental; urgency=low - - * Include the new check-dist Makefile to prevent accidental uploads to - unstable; bump build-dep on gnome-pkg-tools to >= 0.10. - * New upstream release; no API change. - - Rewrite and cleanup the build-system completely to build a set of - flavors; drop obsolete targets; drop obsolete files; switch from - tar-in-tar and sys-build to regular source and quilt patching; - build-depend on quilt; drop DEB_USE_DBS_TARBALL_LAYOUT; create stampdir - when necessary; switch from dh_movefiles and dh_installdirs to - dh_install. - - Drop patch 000_glib-link; merged upstream. - * Bump up Debhelper compatibility level to 5. - * Only ship README.Debian in libglib2.0-dev. - * Empty dependency_libs in the *.la files of libglib2.0-dev. - * Override shlibs for the inter-shlibdeps before computing them. - * Use >= ${source:Version} and ${binary:Version} for inder-deps; build-dep - on dpkg-dev >= 1.13.19. - * Fix --dbg-package name. - * Use make vars for package names. - * Tune udeb description. - * Clean /usr/share/doc symlinks generation and move to dh_link generated - links. - * Cleanup list of invoked dh_* commands. - - -- Loic Minier Thu, 8 Mar 2007 18:51:27 +0100 - -glib2.0 (2.12.9-2) experimental; urgency=low - - * Bump shlibs to >= 2.12.9. - * Avoir overwriting the *.la files of the main build with the *.la files of - the udeb build; fixes "old_library" in *.la files; thanks Tim Dijkstra; - closes: #297741. - - -- Loic Minier Sat, 20 Jan 2007 09:13:40 +0100 - -glib2.0 (2.12.9-1) experimental; urgency=low - - * Add a get-orig-source target to retrieve the upstream tarball. - * New upstream releases; no API change. - - Fixes documentation of g_key_file_set_string_list(); closes: #405028. - - Avoids spewing warnings with gcc 2.95; closes: #303124. - - Drop patch 009_accept-space-in-key-names; merged and adapted upstream. - - -- Loic Minier Wed, 17 Jan 2007 08:55:27 +0100 - -glib2.0 (2.12.7-1) experimental; urgency=low - - * New upstream release; no API change; translation updates, bug fixes, - build fixes. - - Target at experimental for now. - - Drop patch 010_restore-old-key-file-syntax-support, merged and adapted - upstream. - - -- Loic Minier Fri, 5 Jan 2007 12:24:38 +0100 - -glib2.0 (2.12.6-2) unstable; urgency=medium - - * New patch, 010_restore-old-key-file-syntax-support, reverts strict group - names and key names checks introduced between glib 2.12.4 and 2.12.6; - instead of failing, critical warnings are output; updates the relevant - tests as well; closes: #404888. - * New patch, 009_accept-space-in-key-names, adds support for space in key - names (independently of 010_restore-old-key-file-syntax-support); updates - and add relevant tests as well; closes: #404888 as well. - - -- Loic Minier Sun, 31 Dec 2006 20:43:23 +0100 - -glib2.0 (2.12.6-1) unstable; urgency=low - - * New upstream release; no API or ABI change. - - Fixes file-type detection in nautilus; closes: #404015. - - -- Loic Minier Thu, 21 Dec 2006 09:46:30 +0100 - -glib2.0 (2.12.5-3) unstable; urgency=low - - * Upload to unstable. - - -- Loic Minier Wed, 20 Dec 2006 17:27:25 +0100 - -glib2.0 (2.12.5-2) experimental; urgency=low - - * Upload to unstable. - - -- Loic Minier Wed, 20 Dec 2006 08:50:56 +0100 - -glib2.0 (2.12.5-1) experimental; urgency=low - - * Add cross-reference in 2.12.4-2. - * New upstream release; no API or ABI change. - - Target at experimental for now. - - Drop patch 011_glib-gettext-datarootdir, merged upstream. - * Drop patch 010_glib2.0.kfreebsd-amd64, is not needed anymore and seems to - have been at the wrong level anyway. - * Review and comment on the usefulness of patch 000_glib-link. - - -- Loic Minier Tue, 19 Dec 2006 08:52:26 +0100 - -glib2.0 (2.12.4-2) unstable; urgency=low - - * New patch, 011_glib-gettext-datarootdir, to compute datarootdir - appropriately for AM_GLIB_DEFINE_LOCALEDIR; GNOME #343825; - closes: #370282. - - -- Loic Minier Thu, 16 Nov 2006 10:14:52 +0100 - -glib2.0 (2.12.4-1) unstable; urgency=low - - * New upstream release; no API changes. - - -- Loic Minier Mon, 2 Oct 2006 10:39:57 +0200 - -glib2.0 (2.12.3-2) unstable; urgency=low - - * Upload to unstable - - [ Loic Minier] - * Merge 2.10.3-3. - - -- Sebastien Bacher Wed, 13 Sep 2006 13:16:29 +0200 - -glib2.0 (2.12.3-1) experimental; urgency=low - - * New upstream release; no public API changes. - * Broaden the -data dep on the lib to permit bin NMUs. - - -- Loic Minier Wed, 30 Aug 2006 22:12:02 +0200 - -glib2.0 (2.12.2-1) experimental; urgency=low - - * New upstream release; no API changes. - - -- Loic Minier Mon, 21 Aug 2006 12:30:24 +0200 - -glib2.0 (2.12.1-1) experimental; urgency=low - - * New upstream release. - * Sync with overrides and set udeb's Priority to optional instead of extra. - * Bump up Standards-Version to 3.7.2. - - -- Loic Minier Mon, 7 Aug 2006 22:08:21 +0200 - -glib2.0 (2.12.0-1) experimental; urgency=low - - * New upstream version: - Major new features include: - * The Unicode support has been updated to Unicode 5. - * GBookmarkFile: a parser for files containing bookmarks - stored using the Desktop Bookmark specification - * Base64 encoding support - * debian/rules: - - updated shver number - * debian/watch: - - updated - - -- Sebastien Bacher Mon, 3 Jul 2006 10:46:21 +0200 - -glib2.0 (2.10.3-3) unstable; urgency=low - - * debian/patches/999_ia64_atomic_ops_broken.patch: - - dropped, it's not required with the new gcc and it was breaking the build - (Closes: #376260) - - [ Loic Minier ] - * Sync with overrides and set udeb's Priority to optional instead of extra. - - -- Sebastien Bacher Wed, 12 Jul 2006 19:09:21 +0200 - -glib2.0 (2.10.3-2) unstable; urgency=medium - - * Re-add changes from 2.10.2-2 that were lost in the wild - (closes: #361697). - - -- Josselin Mouette Mon, 26 Jun 2006 19:54:17 +0200 - -glib2.0 (2.10.3-1) unstable; urgency=low - - * New upstream version: - Bugs fixed: - - g_completion_complete_utf8 crashes when NULL is passed to it - - update-desktop-database doesn't handle duplicate entries - (Closes: #298668) - - Dereferencing NULL value in g_key_file_get_group_comment - - GKeyFile set_string_list invalid memory reads - - The GObject tutorial say g_object_(un)ref is _not_ thread-safe - - Fix a memory leak in GOption - - -- Sebastien Bacher Sat, 27 May 2006 12:54:17 +0200 - -glib2.0 (2.10.2-2) unstable; urgency=low - - * debian/control.in, debian/rules: - - patch by Frans Pop - - Add support for udeb dependency resolution in shlibs file - (Closes: #361697). - - Simplify debian/rules by making use of udeb support in debhelper. - * debian/control.in: - - clarify the description for the -data package (Closes: #362316), - change suggested Robert Bihlmeyer - - -- Sebastien Bacher Fri, 28 Apr 2006 00:03:41 +0200 - -glib2.0 (2.10.2-1) unstable; urgency=low - - * New upstream version: - - Missing check for .dylib - - Segmentation Fault when %llu is passed to vasnprintf and HAVE_SNPRINTF - is not defined - - Add support for write FDs to GIOChannel - - Memleak in goption.c::parse_short_option - - g_parse_debug_string reads beyond buffer - - g_option_context_parse() should not set program name to '' if - it is already set - - g_main_context_unref calls g_source_destroy_internal with incorrect - arguments - - Slight performance gains (GList, GAsyncQueue) - - Use of unitialised memory in g_mem_profile - - make check FAIL: threadpool-test - - g_option_context_new parameter lacks better explanation - - Some breakages with GThreadPool - - gthread/gthread-win32.c: IsDebuggerPresent needs - '#define _WIN32_WINDOWS 0x0401' - - dlerror() portability issue causes crash on (old) a.out NetBSD platform - - g_timer_elapsed docs should mention that microseconds may be NULL - - goption + error out params - - Documentation should not reference G_HAVE_GINT64, as it's deprecated. - * debian/patches/010_glib2.0.kfreebsd-amd64.patch: - - patch by Aurelien Jarno , fix build on kfreebsd-amd64 - (Closes: #355953) - * debian/rules: - - use "-g" for CFLAGS, makes -dbg package useful again - change by Fabio M. Di Nitto on the Ubuntu package: - * Make sure to pass CFLAGS to configure. - * Generalize DEB_BUILD_ARCH. - - -- Sebastien Bacher Fri, 7 Apr 2006 23:23:14 +0200 - -glib2.0 (2.10.1-2) unstable; urgency=low - - [ Sjoerd Simons ] - * Upload to unstable - * Document udeb changes that Josselin did in an earlier experimental - package. - * debian/patches/999_ia64_atomic_ops_broken.patch - + Added. Uses atomic builtins that gcc-4.0 know on ia64, instead of those - for gcc-4.1. (Patch by LaMont Jones from the ubuntu package) - * Updated debian/watch to use download.gnome.org - - [ Josselin Mouette ] - * Set the conflict with pango < 1.11, that's where the breakage lies. - * Add a XC-Package-Type header to the udeb and set the priority to extra. - [debian/control.in] - - -- Sjoerd Simons Sun, 19 Mar 2006 12:41:21 +0100 - -glib2.0 (2.10.1-1) experimental; urgency=low - - * New upstream release (bugfixes, translation updates). - * [debian/rules] Bring priority parameter for dpkg-distaddfile for the udeb - in line with control.in . - - Josselin Mouette : - * Conflict with pango < 1.10 to avoid breakage caused by the unicode - changes. - - -- J.H.M. Dassen (Ray) Sat, 11 Mar 2006 13:53:16 +0100 - -glib2.0 (2.10.0-1) experimental; urgency=low - - * New upstream release. - - -- Josselin Mouette Mon, 6 Mar 2006 00:32:27 +0100 - -glib2.0 (2.8.6-1) unstable; urgency=medium - - * New upstream release (bugfixes, translation updates). - - -- J.H.M. Dassen (Ray) Wed, 18 Jan 2006 20:30:26 +0100 - -glib2.0 (2.8.5-1) unstable; urgency=low - - * New upstream release (bugfixes, translation updates, - g_object_compat_control() added). - * [debian/rules] Bumped shver to 2.8.5 to reflect the API change. - - -- J.H.M. Dassen (Ray) Thu, 5 Jan 2006 21:22:36 +0100 - -glib2.0 (2.8.4-2) unstable; urgency=high - - * Fix shlibs deps that crept in the amd64 package, thanks Kurt Roeckx for - all the fish. (Closes: #339685) - - Cleanup and clarify upstream version calculations. - - Drop dh_makeshlibs -a call as only one package ships shlibs and already - has a separate call. - - Drop useless shlibs.local generation. - - Call dh_shlibdeps with cleaner arguments. - [debian/rules] - * Fix "fakeroot debian/rules clean" by following find calls with a .svn - filter. - [debian/scripts/lib] - * Fix quoting of unfix.source.patch:START and FAILED messages. - [debian/scripts/messages] - * Clarify Copyright versus License and update upstream URL. - [debian/copyright] - - -- Loic Minier Sun, 20 Nov 2005 10:36:26 +0100 - -glib2.0 (2.8.4-1) unstable; urgency=low - - * New upstream version. - - -- Sebastien Bacher Tue, 15 Nov 2005 16:22:08 +0100 - -glib2.0 (2.8.3-1) unstable; urgency=medium - - * New upstream release (fix an error that crept in with a change to - glib-mkenums in 2.8.2, documentation improvements, translation updates). - - -- J.H.M. Dassen (Ray) Mon, 3 Oct 2005 20:52:26 +0200 - -glib2.0 (2.8.2-1) unstable; urgency=medium - - * New upstream release (bug fixes, documentation improvements, translation - updates). - - -- J.H.M. Dassen (Ray) Sun, 2 Oct 2005 09:31:27 +0200 - -glib2.0 (2.8.1-1) unstable; urgency=medium - - * New (for Debian) upstream version (bug fixes, documentation improvements, - translation updates). - * [debian/control.in] Bumped Standards-Version. - * [debian/copyright] Updated FSF's address. - - -- J.H.M. Dassen (Ray) Sat, 24 Sep 2005 13:45:47 +0200 - -glib2.0 (2.8.1-0ubuntu1) breezy; urgency=low - - * New upstream version. - * debian/watch: - - updated. - - -- Sebastien Bacher Tue, 23 Aug 2005 12:05:20 +0200 - -glib2.0 (2.8.0-1) unstable; urgency=low - - * New upstream version. - * debian/rules: - - updated the shlibs. - - -- Sebastien Bacher Sat, 13 Aug 2005 14:14:00 +0200 - -glib2.0 (2.7.3-1) experimental; urgency=low - - * New upstream version. - - -- Sebastien Bacher Fri, 15 Jul 2005 23:42:37 +0200 - -glib2.0 (2.7.2-1) experimental; urgency=low - - * New upstream version. - - -- Sebastien Bacher Fri, 8 Jul 2005 22:07:59 +0200 - -glib2.0 (2.7.1-1) experimental; urgency=low - - * New upstream version. - * debian/rules: - - updated the shlib. - - -- Sebastien Bacher Fri, 1 Jul 2005 19:43:05 +0200 - -glib2.0 (2.7.0-1) experimental; urgency=low - - * New upstream version: - * GKeyFile: - - add unit tests. - - accept \r\n as line end. - - don't interpret leading zeros as octal numbers. - - make key and group removal work. - * GOption: - - improve formatting of --help output. - - accept -?. - - warn about duplicate main groups. - - treat '-' as non-option argument. - - report missing arguments as errors. - - add a boxed type for GDate. - * GTree: - - g_tree_remove() and g_tree_steal() return status information. - * Stdio wrappers: - - work regardless of large file support. - - add g_access(), g_chmod(), g_creat(), g_chdir. - * GObject: - - implement "toggle references" to help language bindings. - - allow to mark names, nicks and blurbs of pspecs as static. - - make pspec lookup a bit faster. - * add g_listenv() to list all set environment variables. - * add g_file_set_contents() to atomically write a file. - * add g_try_malloc(), g_try_new(), g_try_new0() and g_try_renew(). - * add g_utf8_collate_key_for_filename() to sort filenames taking - extensions and numeric suffixes into account. - * add G_GNUC_NULL_TERMINATED to mark varargs function with - NULL-terminated argument lists. - * documentation improvements. - * new and updated translations. - * debian/rules: - - updated the shlibs. - * debian/watch: - - updated. - - -- Sebastien Bacher Tue, 21 Jun 2005 12:15:47 +0200 - -glib2.0 (2.6.5-1) unstable; urgency=low - - * New upstream release again bringing a number of bugfixes, improved - documentation and updated translations, including - gthread-posix.c (g_thread_create_posix_impl): Allow setstacksize to - fail. (GNOME #304790, Michael Banck) (Closes: #312382) - * [debian/patches/000_glib-link.patch] Updated. - - -- J.H.M. Dassen (Ray) Fri, 10 Jun 2005 21:14:42 +0200 - -glib2.0 (2.6.4-1) unstable; urgency=low - - * New upstream release bringing a number of bugfixes, improved - documentation and updated translations. - - -- J.H.M. Dassen (Ray) Wed, 6 Apr 2005 22:16:44 +0200 - -glib2.0 (2.6.3-1) unstable; urgency=low - - * New upstream release. - - -- Sebastien Bacher Mon, 28 Feb 2005 09:38:38 +0100 - -glib2.0 (2.6.2-1) unstable; urgency=low - - * New upstream release. - - -- Sebastien Bacher Sat, 5 Feb 2005 19:23:59 +0100 - -glib2.0 (2.6.1-3) unstable; urgency=low - - * debian/rules: - - use "-plibglib$(apiver)-udeb", fix the libglib2.0-0-dbg package. - - -- Sebastien Bacher Sun, 23 Jan 2005 22:24:21 +0100 - -glib2.0 (2.6.1-2) unstable; urgency=low - - * Upload to unstable. - * debian/control.in: - - rename libglib2.0-dbg to libglib2.0-0-dbg. - - set myself as maintainer. - * debian/rules: - - use dh_strip to make the debug package. - - -- Sebastien Bacher Sun, 16 Jan 2005 12:59:21 +0100 - -glib2.0 (2.6.1-1) experimental; urgency=low - - * New upstream release. - - -- Sebastien Bacher Sat, 8 Jan 2005 14:44:05 +0100 - -glib2.0 (2.6.0-1) experimental; urgency=low - - * New upstream release. - * debian/rules: - - updated the shlibs. - * debian/watch: - - updated. - - -- Sebastien Bacher Mon, 27 Dec 2004 16:15:36 +0100 - -glib2.0 (2.4.8-1) unstable; urgency=medium - - * New upstream bugfix release. - - -- J.H.M. Dassen (Ray) Sat, 4 Dec 2004 18:52:44 +0100 - -glib2.0 (2.4.7-1) unstable; urgency=medium - - * New upstream bugfix release. - * [debian/patches/000_glib-link.patch] Updated. - * [debian/patches/001_translations.patch] Dropped. - - -- J.H.M. Dassen (Ray) Fri, 8 Oct 2004 22:27:49 +0200 - -glib2.0 (2.4.6-4) unstable; urgency=medium - - * [debian/patches/001_translations.patch] Updated translations from CVS and - relibtoolise to use new translations. - * [debian/rules] Fixed udeb naming on Hurd. - - -- J.H.M. Dassen (Ray) Fri, 8 Oct 2004 12:43:09 +0200 - -glib2.0 (2.4.6-3) unstable; urgency=medium - - Colin Watson : (Closes: #274053) - * [debian/rules] binary-arch depends on binary-arch-udeb. - * [debian/rules] Strip udeb! - - -- J.H.M. Dassen (Ray) Wed, 29 Sep 2004 19:39:22 +0200 - -glib2.0 (2.4.6-2) unstable; urgency=medium - - * [debian/patches/001_translations.patch] Updated translations from CVS. - * [debian/rules] Tightened "shver" to tighten shlibs, as some - incompatibilities with older versions turned up with gconf. - (Closes: #265659) - - -- J.H.M. Dassen (Ray) Tue, 24 Aug 2004 18:50:04 +0200 - -glib2.0 (2.4.6-1) unstable; urgency=medium - - * New upstream bugfix release. - - -- J.H.M. Dassen (Ray) Sun, 15 Aug 2004 18:34:27 +0200 - -glib2.0 (2.4.5-2) unstable; urgency=low - - * debian/patches/000_glib-link.patch: - - patch from Jurij Smakov to link with all the libs - (Closes: #263130). - - -- Sebastien Bacher Tue, 3 Aug 2004 18:03:53 +0200 - -glib2.0 (2.4.5-1) unstable; urgency=low - - * New upstream release. - - -- Sebastien Bacher Sun, 1 Aug 2004 17:31:43 +0200 - -glib2.0 (2.4.4-1) unstable; urgency=low - - * New upstream release. - - remove spaces before "#pragma alloca" (Closes: #250667). - - -- Sebastien Bacher Fri, 16 Jul 2004 18:44:31 +0200 - -glib2.0 (2.4.2-1) unstable; urgency=low - - * New upstream release. - - -- Sebastien Bacher Sat, 5 Jun 2004 00:51:01 +0200 - -glib2.0 (2.4.1-2) unstable; urgency=low - - * Upload in unstable. - * GNOME Team Upload. - * J.H.M. Dassen (Ray) : - + [debian/rules] Make the linker work a bit harder so dynamic loading can - be done faster; safety measure: ensure the build aborts when the library - still has references to undefined symbols. - - -- Sebastien Bacher Sat, 22 May 2004 14:18:23 +0200 - -glib2.0 (2.4.1-1) experimental; urgency=low - - * New upstream release. - * GNOME Team Upload. - * debian/rules: - - updated shlib version to 2.4.1. - - -- Sebastien Bacher Sun, 2 May 2004 12:47:25 +0200 - -glib2.0 (2.4.0-2) experimental; urgency=low - - * Akira TAGOH - - debian/rules: - - bumped shlib version to 2.4.0. - - -- Akira TAGOH Wed, 24 Mar 2004 09:12:31 +0900 - -glib2.0 (2.4.0-1) experimental; urgency=low - - * New upstream release. - * debian/rules: - - doh. don't claim the newer shlibs. - * debian/control: - - added Uploaders to maintain as team. - - added gnome-pkg-tools to Build-Depends. - * debian/docs: - - added old ChangeLog and NEWS files. - - -- Akira TAGOH Wed, 17 Mar 2004 21:18:00 +0900 - -glib2.0 (2.2.3-1) unstable; urgency=low - - * "Welcome back my laptop PC!" release. - * New upstream release. - * debian/control: - - bumped Standards-Version to 3.6.1.0. - - -- Akira TAGOH Mon, 1 Sep 2003 02:29:14 +0900 - -glib2.0 (2.2.2-1) unstable; urgency=low - - * New upstream release. - - Fix portability problems with G_MIN/MAX_INT64 (closes: Bug#195302) - * debian/control: - - bumped Standards-Version to 3.5.10.0. - - changed the sections for libglib2.0-dev and libglib2.0-dbg to libdevel. - * debian/compat: - - use it instead of DH_COMPAT. - - -- Akira TAGOH Tue, 10 Jun 2003 18:44:01 +0900 - -glib2.0 (2.2.1-3) unstable; urgency=low - - * debian/control: - - rename libglib2.0-0-udeb to libglib2.0-udeb. - - delete Recommends line from libglib2.0-udeb. (closes: Bug#183749) - - add Provides: libglib2.0-0 for libglib2.0-udeb. - * debian/libglib2.0-udeb.files: - - contain the libraries and locale data. - - -- Akira TAGOH Sat, 8 Mar 2003 02:46:19 +0900 - -glib2.0 (2.2.1-2) unstable; urgency=low - - * debian/rules: - - create the symlinks on /usr/share/gtk-doc/html. (closes: Bug#183504) - - changed DH_COMPAT to 4. - * debian/control: - - add libglib2.0-0-udeb package for debian-installer. - - -- Akira TAGOH Thu, 6 Mar 2003 01:14:44 +0900 - -glib2.0 (2.2.1-1) unstable; urgency=low - - * New upstream release. - * debian/control: - - needed pkg-config (>= 0.14.0). - - add autotools-dev to Build-Depends. - - -- Akira TAGOH Tue, 4 Feb 2003 01:02:20 +0900 - -glib2.0 (2.2.0-2) unstable; urgency=low - - * close to be fixed in the upstream release. (closes: Bug#173508) - - -- Akira TAGOH Tue, 7 Jan 2003 17:22:20 +0900 - -glib2.0 (2.2.0-1) unstable; urgency=low - - * New upstream release. - * debian/control: - bumped Standards-Version to 3.5.8. - - -- Akira TAGOH Wed, 25 Dec 2002 13:46:08 +0900 - -glib2.0 (2.0.7-1) unstable; urgency=low - - * New upstream release. - * debian/control: - - changed libc6-dev to libc6-dev | libc-dev in -dev's Depends. - - bumped Standards-Version and depends debhelper (>> 4). - - add libgtk2.0-doc to Suggests for -doc. - * debian/rules: - - add symlink to fix the missing symlink for gtk. but this release doesn't - include the hyperlink for gtk+ (closes: Bug#162845) - - support noopt option for DEB_BUILD_OPTIONS. - - -- Akira TAGOH Tue, 5 Nov 2002 17:06:50 +0900 - -glib2.0 (2.0.6-1) unstable; urgency=low - - * New upstream release. - * debian/rules: removed --enable-debug option. conform to the default value - now. (closes: Bug#151815) - * debian/patches/000_glib2.0-garray.patch: removed because it's merged by - the upstream. - - -- Akira TAGOH Sun, 4 Aug 2002 16:05:03 +0900 - -glib2.0 (2.0.4-3) unstable; urgency=low - - * debian/patches/000_glib2.0-garray.patch: - applied to fix g_ptr_array_index() macro. (closes: Bug#150521) - - -- Akira TAGOH Sat, 29 Jun 2002 19:46:51 +0900 - -glib2.0 (2.0.4-2) unstable; urgency=low - - * debian/libglib2.0-doc.doc-base.gobject: fix the dupplicated title. - (closes: Bug#150040) - - -- Akira TAGOH Sun, 16 Jun 2002 23:27:38 +0900 - -glib2.0 (2.0.4-1) unstable; urgency=low - - * New upstream release. - - -- Akira TAGOH Sun, 16 Jun 2002 03:33:22 +0900 - -glib2.0 (2.0.3-1) unstable; urgency=low - - * New upstream release. - - -- Akira TAGOH Wed, 29 May 2002 00:49:56 +0900 - -glib2.0 (2.0.1-2) unstable; urgency=low - - * debian/scripts/vars.build: fix bashism. - * debian/README.Debian: add static link issue. - * debian/rules: add --enable-static. (closes: Bug#142198) - - -- Akira TAGOH Thu, 11 Apr 2002 19:25:17 +0900 - -glib2.0 (2.0.1-1) unstable; urgency=low - - * New upstream release. - - -- Akira TAGOH Sat, 30 Mar 2002 16:23:54 +0900 - -glib2.0 (2.0.0-1) unstable; urgency=low - - * Initial Release. - - -- Akira TAGOH Tue, 12 Mar 2002 02:32:11 +0900 - diff --git a/debian/compat b/debian/compat deleted file mode 100644 index 7ed6ff8..0000000 --- a/debian/compat +++ /dev/null @@ -1 +0,0 @@ -5 diff --git a/debian/control b/debian/control deleted file mode 100644 index 3530d82..0000000 --- a/debian/control +++ /dev/null @@ -1,121 +0,0 @@ -Source: glib2.0 -Section: libs -Priority: optional -Maintainer: Sanghyun Park , Wonsik Jung , Boram Park , Eunok Kim -Build-Depends: debhelper (>> 5.0.22), - pkg-config (>= 0.14.0), - gettext, - autotools-dev, - gnome-pkg-tools (>= 0.11), - quilt, - zlib1g-dev, - gtk-doc-tools -Standards-Version: 3.8.3 - -Package: libglib2.0-0 -Section: libs -Architecture: any -Depends: ${misc:Depends}, - ${shlibs:Depends}, - zlib1g -Recommends: libglib2.0-data, - shared-mime-info -Conflicts: libpango1.0-0 (<< 1.11) -Description: The GLib library of C routines - GLib is a library containing many useful C routines for things such - as trees, hashes, lists, and strings. It is a useful general-purpose - C library used by projects such as GTK+, GIMP, and GNOME. - . - This package contains the shared libraries. - -Package: libglib2.0-dev -Section: libdevel -Architecture: any -Depends: ${misc:Depends}, - ${shlibs:Depends}, - libglib2.0-0 (= ${binary:Version}), - zlib1g-dev, - pkg-config (>= 0.14.0) -Recommends: python -Suggests: libglib2.0-doc -Replaces: libglib1.3-dev -Conflicts: libglib1.3-dev -Description: Development files for the GLib library - GLib is a library containing many useful C routines for things such - as trees, hashes, lists, and strings. It is a useful general-purpose - C library used by projects such as GTK+, GIMP, and GNOME. - . - This package is needed to compile programs against libglib2.0-0, - as only it includes the header files and static libraries (optionally) - needed for compiling. - -Package: libglib2.0-0-dbg -Section: debug -Priority: extra -Architecture: any -Depends: ${misc:Depends}, - libglib2.0-0 (= ${binary:Version}) -Conflicts: libglib2.0-dbg -Replaces: libglib2.0-dbg -Description: The GLib libraries and debugging symbols - GLib is a library containing many useful C routines for things such - as trees, hashes, lists, and strings. It is a useful general-purpose - C library used by projects such as GTK+, GIMP, and GNOME. - . - This package contains detached debugging symbols. - . - Most people will not need this package. - -Package: libglib2.0-data -Architecture: all -Depends: ${misc:Depends}, - libglib2.0-0 (>= ${source:Version}) -Replaces: libglib1.3, - libglib1.3-data -Conflicts: libglib1.3-data -Description: Common files for GLib library - GLib is a library containing many useful C routines for things such - as trees, hashes, lists, and strings. It is a useful general-purpose - C library used by projects such as GTK+, GIMP, and GNOME. - . - This package is needed for the runtime libraries to display messages in - languages other than English. - -Package: libglib2.0-doc -Section: doc -Architecture: all -Depends: ${misc:Depends} -Replaces: libglib1.3-doc -Conflicts: libglib1.3-doc -Suggests: libgtk2.0-doc -Description: Documentation files for the GLib library - GLib is a library containing many useful C routines for things such - as trees, hashes, lists, and strings. It is a useful general-purpose - C library used by projects such as GTK+, GIMP, and GNOME. - . - This package contains the HTML documentation for the GLib library - in /usr/share/doc/libglib2.0-doc/ . - -Package: libgio-fam -Architecture: hurd-i386 kfreebsd-i386 kfreebsd-amd64 -Depends: ${shlibs:Depends} -Recommends: gamin -Description: GLib Input, Output and Streaming Library (fam module) - GIO is the input, output and streaming API of GLib. This package - provides a fam file and directory monitoring backend for it. - -Package: libglib2.0-0-refdbg -Section: debug -Priority: extra -Architecture: any -Depends: ${misc:Depends}, - ${shlibs:Depends}, - libglib2.0-0 (= ${binary:Version}) -Description: The GLib library of C routines - refdbg library - GLib is a library containing many useful C routines for things such - as trees, hashes, lists, and strings. It is a useful general-purpose - C library used by projects such as GTK+, GIMP, and GNOME. - . - This package contains the shared library built with - --disable-visibility so that it can be used with refdbg, a GObject - refcount debugger. diff --git a/debian/control.in b/debian/control.in deleted file mode 100644 index 9f60970..0000000 --- a/debian/control.in +++ /dev/null @@ -1,121 +0,0 @@ -Source: glib@APIVER@ -Section: libs -Priority: optional -Maintainer: Sanghyun Park , Wonsik Jung , Boram Park , Eunok Kim -Build-Depends: debhelper (>> 5.0.22), - pkg-config (>= 0.14.0), - gettext, - autotools-dev, - gnome-pkg-tools (>= 0.11), - quilt, - zlib1g-dev, - gtk-doc-tools -Standards-Version: 3.8.3 - -Package: @SHARED_PKG@ -Section: libs -Architecture: any -Depends: ${misc:Depends}, - ${shlibs:Depends}, - zlib1g -Recommends: @DATA_PKG@, - shared-mime-info -Conflicts: libpango1.0-0 (<< 1.11) -Description: The GLib library of C routines - GLib is a library containing many useful C routines for things such - as trees, hashes, lists, and strings. It is a useful general-purpose - C library used by projects such as GTK+, GIMP, and GNOME. - . - This package contains the shared libraries. - -Package: @DEV_PKG@ -Section: libdevel -Architecture: any -Depends: ${misc:Depends}, - ${shlibs:Depends}, - @SHARED_PKG@ (= ${binary:Version}), - zlib1g-dev, - pkg-config (>= 0.14.0) -Recommends: python -Suggests: @DOC_PKG@ -Replaces: libglib1.3-dev -Conflicts: libglib1.3-dev -Description: Development files for the GLib library - GLib is a library containing many useful C routines for things such - as trees, hashes, lists, and strings. It is a useful general-purpose - C library used by projects such as GTK+, GIMP, and GNOME. - . - This package is needed to compile programs against @SHARED_PKG@, - as only it includes the header files and static libraries (optionally) - needed for compiling. - -Package: @DEBUG_PKG@ -Section: debug -Priority: extra -Architecture: any -Depends: ${misc:Depends}, - @SHARED_PKG@ (= ${binary:Version}) -Conflicts: libglib2.0-dbg -Replaces: libglib2.0-dbg -Description: The GLib libraries and debugging symbols - GLib is a library containing many useful C routines for things such - as trees, hashes, lists, and strings. It is a useful general-purpose - C library used by projects such as GTK+, GIMP, and GNOME. - . - This package contains detached debugging symbols. - . - Most people will not need this package. - -Package: @DATA_PKG@ -Architecture: all -Depends: ${misc:Depends}, - @SHARED_PKG@ (>= ${source:Version}) -Replaces: libglib1.3, - libglib1.3-data -Conflicts: libglib1.3-data -Description: Common files for GLib library - GLib is a library containing many useful C routines for things such - as trees, hashes, lists, and strings. It is a useful general-purpose - C library used by projects such as GTK+, GIMP, and GNOME. - . - This package is needed for the runtime libraries to display messages in - languages other than English. - -Package: @DOC_PKG@ -Section: doc -Architecture: all -Depends: ${misc:Depends} -Replaces: libglib1.3-doc -Conflicts: libglib1.3-doc -Suggests: libgtk2.0-doc -Description: Documentation files for the GLib library - GLib is a library containing many useful C routines for things such - as trees, hashes, lists, and strings. It is a useful general-purpose - C library used by projects such as GTK+, GIMP, and GNOME. - . - This package contains the HTML documentation for the GLib library - in /usr/share/doc/@DOC_PKG@/ . - -Package: libgio-fam -Architecture: hurd-i386 kfreebsd-i386 kfreebsd-amd64 -Depends: ${shlibs:Depends} -Recommends: gamin -Description: GLib Input, Output and Streaming Library (fam module) - GIO is the input, output and streaming API of GLib. This package - provides a fam file and directory monitoring backend for it. - -Package: @REFDBG_PKG@ -Section: debug -Priority: extra -Architecture: any -Depends: ${misc:Depends}, - ${shlibs:Depends}, - @SHARED_PKG@ (= ${binary:Version}) -Description: The GLib library of C routines - refdbg library - GLib is a library containing many useful C routines for things such - as trees, hashes, lists, and strings. It is a useful general-purpose - C library used by projects such as GTK+, GIMP, and GNOME. - . - This package contains the shared library built with - --disable-visibility so that it can be used with refdbg, a GObject - refcount debugger. diff --git a/debian/copyright b/debian/copyright deleted file mode 100644 index cc56b18..0000000 --- a/debian/copyright +++ /dev/null @@ -1,52 +0,0 @@ -This package was debianized by Akira TAGOH on -Thu, 7 Mar 2002 01:05:25 +0900. - -It was downloaded from . - -Original Authors ----------------- -Peter Mattis -Spencer Kimball -Josh MacDonald - -Please do not mail the original authors asking questions about this -version of GLib. - -GLib Team ---------- -Shawn T. Amundson -Jeff Garzik -Raja R Harinath -Tim Janik -Elliot Lee -Tor Lillqvist -Paolo Molaro -Havoc Pennington -Manish Singh -Owen Taylor -Sebastian Wilhelmi - -The random number generator "Mersenne Twister", which is used by GLib, -was developed and originally coded by: -Makoto Matsumoto -Takuji Nishimura - -License: - - This package 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 package 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 package; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - -On Debian systems, the complete text of the GNU Lesser General -Public License can be found in `/usr/share/common-licenses/LGPL'. - diff --git a/debian/docs b/debian/docs deleted file mode 100644 index f7891b8..0000000 --- a/debian/docs +++ /dev/null @@ -1,6 +0,0 @@ -NEWS -NEWS.pre-1-3 -README -ChangeLog.pre-1-2 -ChangeLog.pre-2-0 -ChangeLog.pre-2-2 diff --git a/debian/libgio-fam.install b/debian/libgio-fam.install deleted file mode 100644 index 8838850..0000000 --- a/debian/libgio-fam.install +++ /dev/null @@ -1 +0,0 @@ -debian/install/deb/usr/lib/gio usr/lib diff --git a/debian/libglib2.0-0-dbg.links b/debian/libglib2.0-0-dbg.links deleted file mode 100644 index 77caf81..0000000 --- a/debian/libglib2.0-0-dbg.links +++ /dev/null @@ -1 +0,0 @@ -usr/share/doc/libglib2.0-0 usr/share/doc/libglib2.0-0-dbg diff --git a/debian/libglib2.0-0-refdbg.install b/debian/libglib2.0-0-refdbg.install deleted file mode 100644 index bc30077..0000000 --- a/debian/libglib2.0-0-refdbg.install +++ /dev/null @@ -1,2 +0,0 @@ -debian/install/refdbg/usr/lib/libgobject*.so* usr/lib/refdbg -debian/lintian-overrides/libglib2.0-0-refdbg usr/share/lintian/overrides diff --git a/debian/libglib2.0-0.install b/debian/libglib2.0-0.install deleted file mode 100755 index 130e371..0000000 --- a/debian/libglib2.0-0.install +++ /dev/null @@ -1,2 +0,0 @@ -debian/install/deb/usr/lib/libglib-*.so.* usr/lib -debian/install/deb/usr/lib/libg{object,module,thread,io}-*.so.* usr/lib diff --git a/debian/libglib2.0-0.symbols b/debian/libglib2.0-0.symbols deleted file mode 100644 index af20599..0000000 --- a/debian/libglib2.0-0.symbols +++ /dev/null @@ -1,2387 +0,0 @@ -libgio-2.0.so.0 libglib2.0-0 #MINVER# -* Build-Depends-Package: libglib2.0-dev - g_app_info_add_supports_type@Base 2.16.0 - g_app_info_can_delete@Base 2.20.0 - g_app_info_can_remove_supports_type@Base 2.16.0 - g_app_info_create_flags_get_type@Base 2.16.0 - g_app_info_create_from_commandline@Base 2.16.0 - g_app_info_delete@Base 2.20.0 - g_app_info_dup@Base 2.16.0 - g_app_info_equal@Base 2.16.0 - g_app_info_get_all@Base 2.16.0 - g_app_info_get_all_for_type@Base 2.16.0 - g_app_info_get_commandline@Base 2.20.0 - g_app_info_get_default_for_type@Base 2.16.0 - g_app_info_get_default_for_uri_scheme@Base 2.16.0 - g_app_info_get_description@Base 2.16.0 - g_app_info_get_executable@Base 2.16.0 - g_app_info_get_icon@Base 2.16.0 - g_app_info_get_id@Base 2.16.0 - g_app_info_get_name@Base 2.16.0 - g_app_info_get_type@Base 2.16.0 - g_app_info_launch@Base 2.16.0 - g_app_info_launch_default_for_uri@Base 2.16.0 - g_app_info_launch_uris@Base 2.16.0 - g_app_info_remove_supports_type@Base 2.16.0 - g_app_info_reset_type_associations@Base 2.20.0 - g_app_info_set_as_default_for_extension@Base 2.16.0 - g_app_info_set_as_default_for_type@Base 2.16.0 - g_app_info_should_show@Base 2.16.0 - g_app_info_supports_files@Base 2.16.0 - g_app_info_supports_uris@Base 2.16.0 - g_app_launch_context_get_display@Base 2.16.0 - g_app_launch_context_get_startup_notify_id@Base 2.16.0 - g_app_launch_context_get_type@Base 2.16.0 - g_app_launch_context_launch_failed@Base 2.16.0 - g_app_launch_context_new@Base 2.16.0 - g_ask_password_flags_get_type@Base 2.16.0 - g_async_initable_get_type@Base 2.22.0 - g_async_initable_init_async@Base 2.22.0 - g_async_initable_init_finish@Base 2.22.0 - g_async_initable_new_async@Base 2.22.0 - g_async_initable_new_finish@Base 2.22.0 - g_async_initable_new_valist_async@Base 2.22.0 - g_async_initable_newv_async@Base 2.22.0 - g_async_result_get_source_object@Base 2.16.0 - g_async_result_get_type@Base 2.16.0 - g_async_result_get_user_data@Base 2.16.0 - g_buffered_input_stream_fill@Base 2.16.0 - g_buffered_input_stream_fill_async@Base 2.16.0 - g_buffered_input_stream_fill_finish@Base 2.16.0 - g_buffered_input_stream_get_available@Base 2.16.0 - g_buffered_input_stream_get_buffer_size@Base 2.16.0 - g_buffered_input_stream_get_type@Base 2.16.0 - g_buffered_input_stream_new@Base 2.16.0 - g_buffered_input_stream_new_sized@Base 2.16.0 - g_buffered_input_stream_peek@Base 2.16.0 - g_buffered_input_stream_peek_buffer@Base 2.16.0 - g_buffered_input_stream_read_byte@Base 2.16.0 - g_buffered_input_stream_set_buffer_size@Base 2.16.0 - g_buffered_output_stream_get_auto_grow@Base 2.16.0 - g_buffered_output_stream_get_buffer_size@Base 2.16.0 - g_buffered_output_stream_get_type@Base 2.16.0 - g_buffered_output_stream_new@Base 2.16.0 - g_buffered_output_stream_new_sized@Base 2.16.0 - g_buffered_output_stream_set_auto_grow@Base 2.16.0 - g_buffered_output_stream_set_buffer_size@Base 2.16.0 - g_cancellable_cancel@Base 2.16.0 - g_cancellable_connect@Base 2.22.0 - g_cancellable_disconnect@Base 2.22.0 - g_cancellable_get_current@Base 2.16.0 - g_cancellable_get_fd@Base 2.16.0 - g_cancellable_get_type@Base 2.16.0 - g_cancellable_is_cancelled@Base 2.16.0 - g_cancellable_make_pollfd@Base 2.22.0 - g_cancellable_new@Base 2.16.0 - g_cancellable_pop_current@Base 2.16.0 - g_cancellable_push_current@Base 2.16.0 - g_cancellable_release_fd@Base 2.22.0 - g_cancellable_reset@Base 2.16.0 - g_cancellable_set_error_if_cancelled@Base 2.16.0 - g_content_type_can_be_executable@Base 2.16.0 - g_content_type_equals@Base 2.16.0 - g_content_type_from_mime_type@Base 2.18.0 - g_content_type_get_description@Base 2.16.0 - g_content_type_get_icon@Base 2.16.0 - g_content_type_get_mime_type@Base 2.16.0 - g_content_type_guess@Base 2.16.0 - g_content_type_guess_for_tree@Base 2.18.0 - g_content_type_is_a@Base 2.16.0 - g_content_type_is_unknown@Base 2.16.0 - g_content_types_get_registered@Base 2.16.0 - g_data_input_stream_get_byte_order@Base 2.16.0 - g_data_input_stream_get_newline_type@Base 2.16.0 - g_data_input_stream_get_type@Base 2.16.0 - g_data_input_stream_new@Base 2.16.0 - g_data_input_stream_read_byte@Base 2.16.0 - g_data_input_stream_read_int16@Base 2.16.0 - g_data_input_stream_read_int32@Base 2.16.0 - g_data_input_stream_read_int64@Base 2.16.0 - g_data_input_stream_read_line@Base 2.16.0 - g_data_input_stream_read_line_async@Base 2.20.0 - g_data_input_stream_read_line_finish@Base 2.20.0 - g_data_input_stream_read_uint16@Base 2.16.0 - g_data_input_stream_read_uint32@Base 2.16.0 - g_data_input_stream_read_uint64@Base 2.16.0 - g_data_input_stream_read_until@Base 2.16.0 - g_data_input_stream_read_until_async@Base 2.20.0 - g_data_input_stream_read_until_finish@Base 2.20.0 - g_data_input_stream_set_byte_order@Base 2.16.0 - g_data_input_stream_set_newline_type@Base 2.16.0 - g_data_output_stream_get_byte_order@Base 2.16.0 - g_data_output_stream_get_type@Base 2.16.0 - g_data_output_stream_new@Base 2.16.0 - g_data_output_stream_put_byte@Base 2.16.0 - g_data_output_stream_put_int16@Base 2.16.0 - g_data_output_stream_put_int32@Base 2.16.0 - g_data_output_stream_put_int64@Base 2.16.0 - g_data_output_stream_put_string@Base 2.16.0 - g_data_output_stream_put_uint16@Base 2.16.0 - g_data_output_stream_put_uint32@Base 2.16.0 - g_data_output_stream_put_uint64@Base 2.16.0 - g_data_output_stream_set_byte_order@Base 2.16.0 - g_data_stream_byte_order_get_type@Base 2.16.0 - g_data_stream_newline_type_get_type@Base 2.16.0 - g_desktop_app_info_get_is_hidden@Base 2.16.0 - g_desktop_app_info_get_type@Base 2.16.0 - g_desktop_app_info_lookup_get_default_for_uri_scheme@Base 2.16.0 - g_desktop_app_info_lookup_get_type@Base 2.16.0 - g_desktop_app_info_new@Base 2.16.0 - g_desktop_app_info_new_from_filename@Base 2.16.0 - g_desktop_app_info_new_from_keyfile@Base 2.18.0 - g_desktop_app_info_set_desktop_env@Base 2.16.0 - g_drive_can_eject@Base 2.16.0 - g_drive_can_poll_for_media@Base 2.16.0 - g_drive_can_start@Base 2.22.0 - g_drive_can_start_degraded@Base 2.22.0 - g_drive_can_stop@Base 2.22.0 - g_drive_eject@Base 2.16.0 - g_drive_eject_finish@Base 2.16.0 - g_drive_eject_with_operation@Base 2.22.0 - g_drive_eject_with_operation_finish@Base 2.22.0 - g_drive_enumerate_identifiers@Base 2.16.0 - g_drive_get_icon@Base 2.16.0 - g_drive_get_identifier@Base 2.16.0 - g_drive_get_name@Base 2.16.0 - g_drive_get_start_stop_type@Base 2.22.0 - g_drive_get_type@Base 2.16.0 - g_drive_get_volumes@Base 2.16.0 - g_drive_has_media@Base 2.16.0 - g_drive_has_volumes@Base 2.16.0 - g_drive_is_media_check_automatic@Base 2.16.0 - g_drive_is_media_removable@Base 2.16.0 - g_drive_poll_for_media@Base 2.16.0 - g_drive_poll_for_media_finish@Base 2.16.0 - g_drive_start@Base 2.22.0 - g_drive_start_finish@Base 2.22.0 - g_drive_start_flags_get_type@Base 2.22.0 - g_drive_start_stop_type_get_type@Base 2.22.0 - g_drive_stop@Base 2.22.0 - g_drive_stop_finish@Base 2.22.0 - g_emblem_get_icon@Base 2.18.0 - g_emblem_get_origin@Base 2.18.0 - g_emblem_get_type@Base 2.18.0 - g_emblem_new@Base 2.18.0 - g_emblem_new_with_origin@Base 2.18.0 - g_emblem_origin_get_type@Base 2.18.0 - g_emblemed_icon_add_emblem@Base 2.18.0 - g_emblemed_icon_get_emblems@Base 2.18.0 - g_emblemed_icon_get_icon@Base 2.18.0 - g_emblemed_icon_get_type@Base 2.18.0 - g_emblemed_icon_new@Base 2.18.0 - g_file_append_to@Base 2.16.0 - g_file_append_to_async@Base 2.16.0 - g_file_append_to_finish@Base 2.16.0 - g_file_attribute_info_flags_get_type@Base 2.16.0 - g_file_attribute_info_list_add@Base 2.16.0 - g_file_attribute_info_list_dup@Base 2.16.0 - g_file_attribute_info_list_get_type@Base 2.20.0 - g_file_attribute_info_list_lookup@Base 2.16.0 - g_file_attribute_info_list_new@Base 2.16.0 - g_file_attribute_info_list_ref@Base 2.16.0 - g_file_attribute_info_list_unref@Base 2.16.0 - g_file_attribute_matcher_enumerate_namespace@Base 2.16.0 - g_file_attribute_matcher_enumerate_next@Base 2.16.0 - g_file_attribute_matcher_matches@Base 2.16.0 - g_file_attribute_matcher_matches_only@Base 2.16.0 - g_file_attribute_matcher_new@Base 2.16.0 - g_file_attribute_matcher_ref@Base 2.16.0 - g_file_attribute_matcher_unref@Base 2.16.0 - g_file_attribute_status_get_type@Base 2.16.0 - g_file_attribute_type_get_type@Base 2.16.0 - g_file_copy@Base 2.16.0 - g_file_copy_async@Base 2.16.0 - g_file_copy_attributes@Base 2.16.0 - g_file_copy_finish@Base 2.16.0 - g_file_copy_flags_get_type@Base 2.16.0 - g_file_create@Base 2.16.0 - g_file_create_async@Base 2.16.0 - g_file_create_finish@Base 2.16.0 - g_file_create_flags_get_type@Base 2.16.0 - g_file_create_readwrite@Base 2.22.0 - g_file_create_readwrite_async@Base 2.22.0 - g_file_create_readwrite_finish@Base 2.22.0 - g_file_delete@Base 2.16.0 - g_file_dup@Base 2.16.0 - g_file_eject_mountable@Base 2.16.0 - g_file_eject_mountable_finish@Base 2.16.0 - g_file_eject_mountable_with_operation@Base 2.22.0 - g_file_eject_mountable_with_operation_finish@Base 2.22.0 - g_file_enumerate_children@Base 2.16.0 - g_file_enumerate_children_async@Base 2.16.0 - g_file_enumerate_children_finish@Base 2.16.0 - g_file_enumerator_close@Base 2.16.0 - g_file_enumerator_close_async@Base 2.16.0 - g_file_enumerator_close_finish@Base 2.16.0 - g_file_enumerator_get_container@Base 2.18.0 - g_file_enumerator_get_type@Base 2.16.0 - g_file_enumerator_has_pending@Base 2.16.0 - g_file_enumerator_is_closed@Base 2.16.0 - g_file_enumerator_next_file@Base 2.16.0 - g_file_enumerator_next_files_async@Base 2.16.0 - g_file_enumerator_next_files_finish@Base 2.16.0 - g_file_enumerator_set_pending@Base 2.16.0 - g_file_equal@Base 2.16.0 - g_file_find_enclosing_mount@Base 2.16.0 - g_file_find_enclosing_mount_async@Base 2.16.0 - g_file_find_enclosing_mount_finish@Base 2.16.0 - g_file_get_basename@Base 2.16.0 - g_file_get_child@Base 2.16.0 - g_file_get_child_for_display_name@Base 2.16.0 - g_file_get_parent@Base 2.16.0 - g_file_get_parse_name@Base 2.16.0 - g_file_get_path@Base 2.16.0 - g_file_get_relative_path@Base 2.16.0 - g_file_get_type@Base 2.16.0 - g_file_get_uri@Base 2.16.0 - g_file_get_uri_scheme@Base 2.16.0 - g_file_has_prefix@Base 2.16.0 - g_file_has_uri_scheme@Base 2.16.0 - g_file_hash@Base 2.16.0 - g_file_icon_get_file@Base 2.16.0 - g_file_icon_get_type@Base 2.16.0 - g_file_icon_new@Base 2.16.0 - g_file_info_clear_status@Base 2.16.0 - g_file_info_copy_into@Base 2.16.0 - g_file_info_dup@Base 2.16.0 - g_file_info_get_attribute_as_string@Base 2.16.0 - g_file_info_get_attribute_boolean@Base 2.16.0 - g_file_info_get_attribute_byte_string@Base 2.16.0 - g_file_info_get_attribute_data@Base 2.16.0 - g_file_info_get_attribute_int32@Base 2.16.0 - g_file_info_get_attribute_int64@Base 2.16.0 - g_file_info_get_attribute_object@Base 2.16.0 - g_file_info_get_attribute_status@Base 2.16.0 - g_file_info_get_attribute_string@Base 2.16.0 - g_file_info_get_attribute_stringv@Base 2.22.0 - g_file_info_get_attribute_type@Base 2.16.0 - g_file_info_get_attribute_uint32@Base 2.16.0 - g_file_info_get_attribute_uint64@Base 2.16.0 - g_file_info_get_content_type@Base 2.16.0 - g_file_info_get_display_name@Base 2.16.0 - g_file_info_get_edit_name@Base 2.16.0 - g_file_info_get_etag@Base 2.16.0 - g_file_info_get_file_type@Base 2.16.0 - g_file_info_get_icon@Base 2.16.0 - g_file_info_get_is_backup@Base 2.16.0 - g_file_info_get_is_hidden@Base 2.16.0 - g_file_info_get_is_symlink@Base 2.16.0 - g_file_info_get_modification_time@Base 2.16.0 - g_file_info_get_name@Base 2.16.0 - g_file_info_get_size@Base 2.16.0 - g_file_info_get_sort_order@Base 2.16.0 - g_file_info_get_symlink_target@Base 2.16.0 - g_file_info_get_type@Base 2.16.0 - g_file_info_has_attribute@Base 2.16.0 - g_file_info_has_namespace@Base 2.22.0 - g_file_info_list_attributes@Base 2.16.0 - g_file_info_new@Base 2.16.0 - g_file_info_remove_attribute@Base 2.16.0 - g_file_info_set_attribute@Base 2.16.0 - g_file_info_set_attribute_boolean@Base 2.16.0 - g_file_info_set_attribute_byte_string@Base 2.16.0 - g_file_info_set_attribute_int32@Base 2.16.0 - g_file_info_set_attribute_int64@Base 2.16.0 - g_file_info_set_attribute_mask@Base 2.16.0 - g_file_info_set_attribute_object@Base 2.16.0 - g_file_info_set_attribute_status@Base 2.22.0 - g_file_info_set_attribute_string@Base 2.16.0 - g_file_info_set_attribute_stringv@Base 2.22.0 - g_file_info_set_attribute_uint32@Base 2.16.0 - g_file_info_set_attribute_uint64@Base 2.16.0 - g_file_info_set_content_type@Base 2.16.0 - g_file_info_set_display_name@Base 2.16.0 - g_file_info_set_edit_name@Base 2.16.0 - g_file_info_set_file_type@Base 2.16.0 - g_file_info_set_icon@Base 2.16.0 - g_file_info_set_is_hidden@Base 2.16.0 - g_file_info_set_is_symlink@Base 2.16.0 - g_file_info_set_modification_time@Base 2.16.0 - g_file_info_set_name@Base 2.16.0 - g_file_info_set_size@Base 2.16.0 - g_file_info_set_sort_order@Base 2.16.0 - g_file_info_set_symlink_target@Base 2.16.0 - g_file_info_unset_attribute_mask@Base 2.16.0 - g_file_input_stream_get_type@Base 2.16.0 - g_file_input_stream_query_info@Base 2.16.0 - g_file_input_stream_query_info_async@Base 2.16.0 - g_file_input_stream_query_info_finish@Base 2.16.0 - g_file_io_stream_get_etag@Base 2.22.0 - g_file_io_stream_get_type@Base 2.22.0 - g_file_io_stream_query_info@Base 2.22.0 - g_file_io_stream_query_info_async@Base 2.22.0 - g_file_io_stream_query_info_finish@Base 2.22.0 - g_file_is_native@Base 2.16.0 - g_file_load_contents@Base 2.16.0 - g_file_load_contents_async@Base 2.16.0 - g_file_load_contents_finish@Base 2.16.0 - g_file_load_partial_contents_async@Base 2.16.0 - g_file_load_partial_contents_finish@Base 2.16.0 - g_file_make_directory@Base 2.16.0 - g_file_make_directory_with_parents@Base 2.18.0 - g_file_make_symbolic_link@Base 2.16.0 - g_file_monitor@Base 2.18.0 - g_file_monitor_cancel@Base 2.16.0 - g_file_monitor_directory@Base 2.16.0 - g_file_monitor_emit_event@Base 2.16.0 - g_file_monitor_event_get_type@Base 2.16.0 - g_file_monitor_file@Base 2.16.0 - g_file_monitor_flags_get_type@Base 2.16.0 - g_file_monitor_get_type@Base 2.16.0 - g_file_monitor_is_cancelled@Base 2.16.0 - g_file_monitor_set_rate_limit@Base 2.16.0 - g_file_mount_enclosing_volume@Base 2.16.0 - g_file_mount_enclosing_volume_finish@Base 2.16.0 - g_file_mount_mountable@Base 2.16.0 - g_file_mount_mountable_finish@Base 2.16.0 - g_file_move@Base 2.16.0 - g_file_new_for_commandline_arg@Base 2.16.0 - g_file_new_for_path@Base 2.16.0 - g_file_new_for_uri@Base 2.16.0 - g_file_open_readwrite@Base 2.22.0 - g_file_open_readwrite_async@Base 2.22.0 - g_file_open_readwrite_finish@Base 2.22.0 - g_file_output_stream_get_etag@Base 2.16.0 - g_file_output_stream_get_type@Base 2.16.0 - g_file_output_stream_query_info@Base 2.16.0 - g_file_output_stream_query_info_async@Base 2.16.0 - g_file_output_stream_query_info_finish@Base 2.16.0 - g_file_parse_name@Base 2.16.0 - g_file_poll_mountable@Base 2.22.0 - g_file_poll_mountable_finish@Base 2.22.0 - g_file_query_default_handler@Base 2.16.0 - g_file_query_exists@Base 2.16.0 - g_file_query_file_type@Base 2.18.0 - g_file_query_filesystem_info@Base 2.16.0 - g_file_query_filesystem_info_async@Base 2.16.0 - g_file_query_filesystem_info_finish@Base 2.16.0 - g_file_query_info@Base 2.16.0 - g_file_query_info_async@Base 2.16.0 - g_file_query_info_finish@Base 2.16.0 - g_file_query_info_flags_get_type@Base 2.16.0 - g_file_query_settable_attributes@Base 2.16.0 - g_file_query_writable_namespaces@Base 2.16.0 - g_file_read@Base 2.16.0 - g_file_read_async@Base 2.16.0 - g_file_read_finish@Base 2.16.0 - g_file_replace@Base 2.16.0 - g_file_replace_async@Base 2.16.0 - g_file_replace_contents@Base 2.16.0 - g_file_replace_contents_async@Base 2.16.0 - g_file_replace_contents_finish@Base 2.16.0 - g_file_replace_finish@Base 2.16.0 - g_file_replace_readwrite@Base 2.22.0 - g_file_replace_readwrite_async@Base 2.22.0 - g_file_replace_readwrite_finish@Base 2.22.0 - g_file_resolve_relative_path@Base 2.16.0 - g_file_set_attribute@Base 2.16.0 - g_file_set_attribute_byte_string@Base 2.16.0 - g_file_set_attribute_int32@Base 2.16.0 - g_file_set_attribute_int64@Base 2.16.0 - g_file_set_attribute_string@Base 2.16.0 - g_file_set_attribute_uint32@Base 2.16.0 - g_file_set_attribute_uint64@Base 2.16.0 - g_file_set_attributes_async@Base 2.16.0 - g_file_set_attributes_finish@Base 2.16.0 - g_file_set_attributes_from_info@Base 2.16.0 - g_file_set_display_name@Base 2.16.0 - g_file_set_display_name_async@Base 2.16.0 - g_file_set_display_name_finish@Base 2.16.0 - g_file_start_mountable@Base 2.22.0 - g_file_start_mountable_finish@Base 2.22.0 - g_file_stop_mountable@Base 2.22.0 - g_file_stop_mountable_finish@Base 2.22.0 - g_file_supports_thread_contexts@Base 2.22.0 - g_file_trash@Base 2.16.0 - g_file_type_get_type@Base 2.16.0 - g_file_unmount_mountable@Base 2.16.0 - g_file_unmount_mountable_finish@Base 2.16.0 - g_file_unmount_mountable_with_operation@Base 2.22.0 - g_file_unmount_mountable_with_operation_finish@Base 2.22.0 - g_filename_completer_get_completion_suffix@Base 2.16.0 - g_filename_completer_get_completions@Base 2.16.0 - g_filename_completer_get_type@Base 2.16.0 - g_filename_completer_new@Base 2.16.0 - g_filename_completer_set_dirs_only@Base 2.16.0 - g_filesystem_preview_type_get_type@Base 2.16.0 - g_filter_input_stream_get_base_stream@Base 2.16.0 - g_filter_input_stream_get_close_base_stream@Base 2.20.0 - g_filter_input_stream_get_type@Base 2.16.0 - g_filter_input_stream_set_close_base_stream@Base 2.20.0 - g_filter_output_stream_get_base_stream@Base 2.16.0 - g_filter_output_stream_get_close_base_stream@Base 2.20.0 - g_filter_output_stream_get_type@Base 2.16.0 - g_filter_output_stream_set_close_base_stream@Base 2.20.0 - g_icon_equal@Base 2.16.0 - g_icon_get_type@Base 2.16.0 - g_icon_hash@Base 2.16.0 - g_icon_new_for_string@Base 2.20.0 - g_icon_to_string@Base 2.20.0 - g_inet_address_get_family@Base 2.22.0 - g_inet_address_get_is_any@Base 2.22.0 - g_inet_address_get_is_link_local@Base 2.22.0 - g_inet_address_get_is_loopback@Base 2.22.0 - g_inet_address_get_is_mc_global@Base 2.22.0 - g_inet_address_get_is_mc_link_local@Base 2.22.0 - g_inet_address_get_is_mc_node_local@Base 2.22.0 - g_inet_address_get_is_mc_org_local@Base 2.22.0 - g_inet_address_get_is_mc_site_local@Base 2.22.0 - g_inet_address_get_is_multicast@Base 2.22.0 - g_inet_address_get_is_site_local@Base 2.22.0 - g_inet_address_get_native_size@Base 2.22.0 - g_inet_address_get_type@Base 2.22.0 - g_inet_address_new_any@Base 2.22.0 - g_inet_address_new_from_bytes@Base 2.22.0 - g_inet_address_new_from_string@Base 2.22.0 - g_inet_address_new_loopback@Base 2.22.0 - g_inet_address_to_bytes@Base 2.22.0 - g_inet_address_to_string@Base 2.22.0 - g_inet_socket_address_get_address@Base 2.22.0 - g_inet_socket_address_get_port@Base 2.22.0 - g_inet_socket_address_get_type@Base 2.22.0 - g_inet_socket_address_new@Base 2.22.0 - g_initable_get_type@Base 2.22.0 - g_initable_init@Base 2.22.0 - g_initable_new@Base 2.22.0 - g_initable_new_valist@Base 2.22.0 - g_initable_newv@Base 2.22.0 - g_input_stream_clear_pending@Base 2.16.0 - g_input_stream_close@Base 2.16.0 - g_input_stream_close_async@Base 2.16.0 - g_input_stream_close_finish@Base 2.16.0 - g_input_stream_get_type@Base 2.16.0 - g_input_stream_has_pending@Base 2.16.0 - g_input_stream_is_closed@Base 2.16.0 - g_input_stream_read@Base 2.16.0 - g_input_stream_read_all@Base 2.16.0 - g_input_stream_read_async@Base 2.16.0 - g_input_stream_read_finish@Base 2.16.0 - g_input_stream_set_pending@Base 2.16.0 - g_input_stream_skip@Base 2.16.0 - g_input_stream_skip_async@Base 2.16.0 - g_input_stream_skip_finish@Base 2.16.0 - g_io_error_enum_get_type@Base 2.16.0 - g_io_error_from_errno@Base 2.16.0 - g_io_error_quark@Base 2.16.0 - g_io_extension_get_name@Base 2.16.0 - g_io_extension_get_priority@Base 2.16.0 - g_io_extension_get_type@Base 2.16.0 - g_io_extension_point_get_extension_by_name@Base 2.16.0 - g_io_extension_point_get_extensions@Base 2.16.0 - g_io_extension_point_get_required_type@Base 2.16.0 - g_io_extension_point_implement@Base 2.16.0 - g_io_extension_point_lookup@Base 2.16.0 - g_io_extension_point_register@Base 2.16.0 - g_io_extension_point_set_required_type@Base 2.16.0 - g_io_extension_ref_class@Base 2.16.0 - g_io_module_get_type@Base 2.16.0 - g_io_module_new@Base 2.16.0 - g_io_modules_load_all_in_directory@Base 2.16.0 - g_io_scheduler_cancel_all_jobs@Base 2.16.0 - g_io_scheduler_job_send_to_mainloop@Base 2.16.0 - g_io_scheduler_job_send_to_mainloop_async@Base 2.16.0 - g_io_scheduler_push_job@Base 2.16.0 - g_io_stream_clear_pending@Base 2.22.0 - g_io_stream_close@Base 2.22.0 - g_io_stream_close_async@Base 2.22.0 - g_io_stream_close_finish@Base 2.22.0 - g_io_stream_get_input_stream@Base 2.22.0 - g_io_stream_get_output_stream@Base 2.22.0 - g_io_stream_get_type@Base 2.22.0 - g_io_stream_has_pending@Base 2.22.0 - g_io_stream_is_closed@Base 2.22.0 - g_io_stream_set_pending@Base 2.22.0 - g_loadable_icon_get_type@Base 2.16.0 - g_loadable_icon_load@Base 2.16.0 - g_loadable_icon_load_async@Base 2.16.0 - g_loadable_icon_load_finish@Base 2.16.0 - g_local_directory_monitor_get_type@Base 2.16.0 - g_local_file_monitor_get_type@Base 2.16.0 - g_memory_input_stream_add_data@Base 2.16.0 - g_memory_input_stream_get_type@Base 2.16.0 - g_memory_input_stream_new@Base 2.16.0 - g_memory_input_stream_new_from_data@Base 2.16.0 - g_memory_output_stream_get_data@Base 2.16.0 - g_memory_output_stream_get_data_size@Base 2.18.0 - g_memory_output_stream_get_size@Base 2.16.0 - g_memory_output_stream_get_type@Base 2.16.0 - g_memory_output_stream_new@Base 2.16.0 - g_mount_can_eject@Base 2.16.0 - g_mount_can_unmount@Base 2.16.0 - g_mount_eject@Base 2.16.0 - g_mount_eject_finish@Base 2.16.0 - g_mount_eject_with_operation@Base 2.22.0 - g_mount_eject_with_operation_finish@Base 2.22.0 - g_mount_get_drive@Base 2.16.0 - g_mount_get_icon@Base 2.16.0 - g_mount_get_name@Base 2.16.0 - g_mount_get_root@Base 2.16.0 - g_mount_get_type@Base 2.16.0 - g_mount_get_uuid@Base 2.16.0 - g_mount_get_volume@Base 2.16.0 - g_mount_guess_content_type@Base 2.18.0 - g_mount_guess_content_type_finish@Base 2.18.0 - g_mount_guess_content_type_sync@Base 2.18.0 - g_mount_is_shadowed@Base 2.20.0 - g_mount_mount_flags_get_type@Base 2.16.0 - g_mount_operation_get_anonymous@Base 2.16.0 - g_mount_operation_get_choice@Base 2.16.0 - g_mount_operation_get_domain@Base 2.16.0 - g_mount_operation_get_password@Base 2.16.0 - g_mount_operation_get_password_save@Base 2.16.0 - g_mount_operation_get_type@Base 2.16.0 - g_mount_operation_get_username@Base 2.16.0 - g_mount_operation_new@Base 2.16.0 - g_mount_operation_reply@Base 2.16.0 - g_mount_operation_result_get_type@Base 2.16.0 - g_mount_operation_set_anonymous@Base 2.16.0 - g_mount_operation_set_choice@Base 2.16.0 - g_mount_operation_set_domain@Base 2.16.0 - g_mount_operation_set_password@Base 2.16.0 - g_mount_operation_set_password_save@Base 2.16.0 - g_mount_operation_set_username@Base 2.16.0 - g_mount_remount@Base 2.16.0 - g_mount_remount_finish@Base 2.16.0 - g_mount_shadow@Base 2.20.0 - g_mount_unmount@Base 2.16.0 - g_mount_unmount_finish@Base 2.16.0 - g_mount_unmount_flags_get_type@Base 2.16.0 - g_mount_unmount_with_operation@Base 2.22.0 - g_mount_unmount_with_operation_finish@Base 2.22.0 - g_mount_unshadow@Base 2.20.0 - g_native_volume_monitor_get_type@Base 2.16.0 - g_network_address_get_hostname@Base 2.22.0 - g_network_address_get_port@Base 2.22.0 - g_network_address_get_type@Base 2.22.0 - g_network_address_new@Base 2.22.0 - g_network_address_parse@Base 2.22.0 - g_network_service_get_domain@Base 2.22.0 - g_network_service_get_protocol@Base 2.22.0 - g_network_service_get_service@Base 2.22.0 - g_network_service_get_type@Base 2.22.0 - g_network_service_new@Base 2.22.0 - g_output_stream_clear_pending@Base 2.16.0 - g_output_stream_close@Base 2.16.0 - g_output_stream_close_async@Base 2.16.0 - g_output_stream_close_finish@Base 2.16.0 - g_output_stream_flush@Base 2.16.0 - g_output_stream_flush_async@Base 2.16.0 - g_output_stream_flush_finish@Base 2.16.0 - g_output_stream_get_type@Base 2.16.0 - g_output_stream_has_pending@Base 2.16.0 - g_output_stream_is_closed@Base 2.16.0 - g_output_stream_set_pending@Base 2.16.0 - g_output_stream_splice@Base 2.16.0 - g_output_stream_splice_async@Base 2.16.0 - g_output_stream_splice_finish@Base 2.16.0 - g_output_stream_splice_flags_get_type@Base 2.16.0 - g_output_stream_write@Base 2.16.0 - g_output_stream_write_all@Base 2.16.0 - g_output_stream_write_async@Base 2.16.0 - g_output_stream_write_finish@Base 2.16.0 - g_password_save_get_type@Base 2.16.0 - g_resolver_error_get_type@Base 2.22.0 - g_resolver_error_quark@Base 2.22.0 - g_resolver_free_addresses@Base 2.22.0 - g_resolver_free_targets@Base 2.22.0 - g_resolver_get_default@Base 2.22.0 - g_resolver_get_type@Base 2.22.0 - g_resolver_lookup_by_address@Base 2.22.0 - g_resolver_lookup_by_address_async@Base 2.22.0 - g_resolver_lookup_by_address_finish@Base 2.22.0 - g_resolver_lookup_by_name@Base 2.22.0 - g_resolver_lookup_by_name_async@Base 2.22.0 - g_resolver_lookup_by_name_finish@Base 2.22.0 - g_resolver_lookup_service@Base 2.22.0 - g_resolver_lookup_service_async@Base 2.22.0 - g_resolver_lookup_service_finish@Base 2.22.0 - g_resolver_set_default@Base 2.22.0 - g_seekable_can_seek@Base 2.16.0 - g_seekable_can_truncate@Base 2.16.0 - g_seekable_get_type@Base 2.16.0 - g_seekable_seek@Base 2.16.0 - g_seekable_tell@Base 2.16.0 - g_seekable_truncate@Base 2.16.0 - g_simple_async_report_error_in_idle@Base 2.16.0 - g_simple_async_report_gerror_in_idle@Base 2.16.0 - g_simple_async_result_complete@Base 2.16.0 - g_simple_async_result_complete_in_idle@Base 2.16.0 - g_simple_async_result_get_op_res_gboolean@Base 2.16.0 - g_simple_async_result_get_op_res_gpointer@Base 2.16.0 - g_simple_async_result_get_op_res_gssize@Base 2.16.0 - g_simple_async_result_get_source_tag@Base 2.16.0 - g_simple_async_result_get_type@Base 2.16.0 - g_simple_async_result_is_valid@Base 2.20.0 - g_simple_async_result_new@Base 2.16.0 - g_simple_async_result_new_error@Base 2.16.0 - g_simple_async_result_new_from_error@Base 2.16.0 - g_simple_async_result_propagate_error@Base 2.16.0 - g_simple_async_result_run_in_thread@Base 2.16.0 - g_simple_async_result_set_error@Base 2.16.0 - g_simple_async_result_set_error_va@Base 2.16.0 - g_simple_async_result_set_from_error@Base 2.16.0 - g_simple_async_result_set_handle_cancellation@Base 2.16.0 - g_simple_async_result_set_op_res_gboolean@Base 2.16.0 - g_simple_async_result_set_op_res_gpointer@Base 2.16.0 - g_simple_async_result_set_op_res_gssize@Base 2.16.0 - g_socket_accept@Base 2.22.0 - g_socket_address_enumerator_get_type@Base 2.22.0 - g_socket_address_enumerator_next@Base 2.22.0 - g_socket_address_enumerator_next_async@Base 2.22.0 - g_socket_address_enumerator_next_finish@Base 2.22.0 - g_socket_address_get_family@Base 2.22.0 - g_socket_address_get_native_size@Base 2.22.0 - g_socket_address_get_type@Base 2.22.0 - g_socket_address_new_from_native@Base 2.22.0 - g_socket_address_to_native@Base 2.22.0 - g_socket_bind@Base 2.22.0 - g_socket_check_connect_result@Base 2.22.0 - g_socket_client_connect@Base 2.22.0 - g_socket_client_connect_async@Base 2.22.0 - g_socket_client_connect_finish@Base 2.22.0 - g_socket_client_connect_to_host@Base 2.22.0 - g_socket_client_connect_to_host_async@Base 2.22.0 - g_socket_client_connect_to_host_finish@Base 2.22.0 - g_socket_client_connect_to_service@Base 2.22.0 - g_socket_client_connect_to_service_async@Base 2.22.0 - g_socket_client_connect_to_service_finish@Base 2.22.0 - g_socket_client_get_family@Base 2.22.0 - g_socket_client_get_local_address@Base 2.22.0 - g_socket_client_get_protocol@Base 2.22.0 - g_socket_client_get_socket_type@Base 2.22.0 - g_socket_client_get_type@Base 2.22.0 - g_socket_client_new@Base 2.22.0 - g_socket_client_set_family@Base 2.22.0 - g_socket_client_set_local_address@Base 2.22.0 - g_socket_client_set_protocol@Base 2.22.0 - g_socket_client_set_socket_type@Base 2.22.0 - g_socket_close@Base 2.22.0 - g_socket_condition_check@Base 2.22.0 - g_socket_condition_wait@Base 2.22.0 - g_socket_connect@Base 2.22.0 - g_socket_connectable_enumerate@Base 2.22.0 - g_socket_connectable_get_type@Base 2.22.0 - g_socket_connection_factory_create_connection@Base 2.22.0 - g_socket_connection_factory_lookup_type@Base 2.22.0 - g_socket_connection_factory_register_type@Base 2.22.0 - g_socket_connection_get_local_address@Base 2.22.0 - g_socket_connection_get_remote_address@Base 2.22.0 - g_socket_connection_get_socket@Base 2.22.0 - g_socket_connection_get_type@Base 2.22.0 - g_socket_control_message_deserialize@Base 2.22.0 - g_socket_control_message_get_level@Base 2.22.0 - g_socket_control_message_get_msg_type@Base 2.22.0 - g_socket_control_message_get_size@Base 2.22.0 - g_socket_control_message_get_type@Base 2.22.0 - g_socket_control_message_serialize@Base 2.22.0 - g_socket_create_source@Base 2.22.0 - g_socket_family_get_type@Base 2.22.0 - g_socket_get_blocking@Base 2.22.0 - g_socket_get_family@Base 2.22.0 - g_socket_get_fd@Base 2.22.0 - g_socket_get_keepalive@Base 2.22.0 - g_socket_get_listen_backlog@Base 2.22.0 - g_socket_get_local_address@Base 2.22.0 - g_socket_get_protocol@Base 2.22.0 - g_socket_get_remote_address@Base 2.22.0 - g_socket_get_socket_type@Base 2.22.0 - g_socket_get_type@Base 2.22.0 - g_socket_is_closed@Base 2.22.0 - g_socket_is_connected@Base 2.22.0 - g_socket_listen@Base 2.22.0 - g_socket_listener_accept@Base 2.22.0 - g_socket_listener_accept_async@Base 2.22.0 - g_socket_listener_accept_finish@Base 2.22.0 - g_socket_listener_accept_socket@Base 2.22.0 - g_socket_listener_accept_socket_async@Base 2.22.0 - g_socket_listener_accept_socket_finish@Base 2.22.0 - g_socket_listener_add_address@Base 2.22.0 - g_socket_listener_add_inet_port@Base 2.22.0 - g_socket_listener_add_socket@Base 2.22.0 - g_socket_listener_close@Base 2.22.0 - g_socket_listener_get_type@Base 2.22.0 - g_socket_listener_new@Base 2.22.0 - g_socket_listener_set_backlog@Base 2.22.0 - g_socket_msg_flags_get_type@Base 2.22.0 - g_socket_new@Base 2.22.0 - g_socket_new_from_fd@Base 2.22.0 - g_socket_protocol_get_type@Base 2.22.0 - g_socket_receive@Base 2.22.0 - g_socket_receive_from@Base 2.22.0 - g_socket_receive_message@Base 2.22.0 - g_socket_send@Base 2.22.0 - g_socket_send_message@Base 2.22.0 - g_socket_send_to@Base 2.22.0 - g_socket_service_get_type@Base 2.22.0 - g_socket_service_is_active@Base 2.22.0 - g_socket_service_new@Base 2.22.0 - g_socket_service_start@Base 2.22.0 - g_socket_service_stop@Base 2.22.0 - g_socket_set_blocking@Base 2.22.0 - g_socket_set_keepalive@Base 2.22.0 - g_socket_set_listen_backlog@Base 2.22.0 - g_socket_shutdown@Base 2.22.0 - g_socket_speaks_ipv4@Base 2.22.0 - g_socket_type_get_type@Base 2.22.0 - g_srv_target_copy@Base 2.22.0 - g_srv_target_free@Base 2.22.0 - g_srv_target_get_hostname@Base 2.22.0 - g_srv_target_get_port@Base 2.22.0 - g_srv_target_get_priority@Base 2.22.0 - g_srv_target_get_type@Base 2.22.0 - g_srv_target_get_weight@Base 2.22.0 - g_srv_target_list_sort@Base 2.22.0 - g_srv_target_new@Base 2.22.0 - g_tcp_connection_get_graceful_disconnect@Base 2.22.0 - g_tcp_connection_get_type@Base 2.22.0 - g_tcp_connection_set_graceful_disconnect@Base 2.22.0 - g_themed_icon_append_name@Base 2.16.0 - g_themed_icon_get_names@Base 2.16.0 - g_themed_icon_get_type@Base 2.16.0 - g_themed_icon_new@Base 2.16.0 - g_themed_icon_new_from_names@Base 2.16.0 - g_themed_icon_new_with_default_fallbacks@Base 2.16.0 - g_themed_icon_prepend_name@Base 2.18.0 - g_threaded_resolver_get_type@Base 2.22.0 - g_threaded_socket_service_get_type@Base 2.22.0 - g_threaded_socket_service_new@Base 2.22.0 - g_unix_connection_get_type@Base 2.22.0 - g_unix_connection_receive_fd@Base 2.22.0 - g_unix_connection_send_fd@Base 2.22.0 - g_unix_fd_message_append_fd@Base 2.22.0 - g_unix_fd_message_get_type@Base 2.22.0 - g_unix_fd_message_new@Base 2.22.0 - g_unix_fd_message_steal_fds@Base 2.22.0 - g_unix_input_stream_get_close_fd@Base 2.20.0 - g_unix_input_stream_get_fd@Base 2.20.0 - g_unix_input_stream_get_type@Base 2.16.0 - g_unix_input_stream_new@Base 2.16.0 - g_unix_input_stream_set_close_fd@Base 2.20.0 - g_unix_is_mount_path_system_internal@Base 2.16.0 - g_unix_mount_at@Base 2.16.0 - g_unix_mount_compare@Base 2.16.0 - g_unix_mount_free@Base 2.16.0 - g_unix_mount_get_device_path@Base 2.16.0 - g_unix_mount_get_fs_type@Base 2.16.0 - g_unix_mount_get_mount_path@Base 2.16.0 - g_unix_mount_guess_can_eject@Base 2.16.0 - g_unix_mount_guess_icon@Base 2.16.0 - g_unix_mount_guess_name@Base 2.16.0 - g_unix_mount_guess_should_display@Base 2.16.0 - g_unix_mount_is_readonly@Base 2.16.0 - g_unix_mount_is_system_internal@Base 2.16.0 - g_unix_mount_monitor_get_type@Base 2.16.0 - g_unix_mount_monitor_new@Base 2.16.0 - g_unix_mount_monitor_set_rate_limit@Base 2.18.0 - g_unix_mount_point_compare@Base 2.16.0 - g_unix_mount_point_free@Base 2.16.0 - g_unix_mount_point_get_device_path@Base 2.16.0 - g_unix_mount_point_get_fs_type@Base 2.16.0 - g_unix_mount_point_get_mount_path@Base 2.16.0 - g_unix_mount_point_guess_can_eject@Base 2.16.0 - g_unix_mount_point_guess_icon@Base 2.16.0 - g_unix_mount_point_guess_name@Base 2.16.0 - g_unix_mount_point_is_loopback@Base 2.16.0 - g_unix_mount_point_is_readonly@Base 2.16.0 - g_unix_mount_point_is_user_mountable@Base 2.16.0 - g_unix_mount_points_changed_since@Base 2.16.0 - g_unix_mount_points_get@Base 2.16.0 - g_unix_mounts_changed_since@Base 2.16.0 - g_unix_mounts_get@Base 2.16.0 - g_unix_output_stream_get_close_fd@Base 2.20.0 - g_unix_output_stream_get_fd@Base 2.20.0 - g_unix_output_stream_get_type@Base 2.16.0 - g_unix_output_stream_new@Base 2.16.0 - g_unix_output_stream_set_close_fd@Base 2.20.0 - g_unix_resolver_get_type@Base 2.22.0 - g_unix_socket_address_abstract_names_supported@Base 2.22.0 - g_unix_socket_address_get_is_abstract@Base 2.22.0 - g_unix_socket_address_get_path@Base 2.22.0 - g_unix_socket_address_get_path_len@Base 2.22.0 - g_unix_socket_address_get_type@Base 2.22.0 - g_unix_socket_address_new@Base 2.22.0 - g_unix_socket_address_new_abstract@Base 2.22.0 - g_vfs_get_default@Base 2.16.0 - g_vfs_get_file_for_path@Base 2.16.0 - g_vfs_get_file_for_uri@Base 2.16.0 - g_vfs_get_local@Base 2.16.0 - g_vfs_get_supported_uri_schemes@Base 2.16.0 - g_vfs_get_type@Base 2.16.0 - g_vfs_is_active@Base 2.16.0 - g_vfs_parse_name@Base 2.16.0 - g_volume_can_eject@Base 2.16.0 - g_volume_can_mount@Base 2.16.0 - g_volume_eject@Base 2.16.0 - g_volume_eject_finish@Base 2.16.0 - g_volume_eject_with_operation@Base 2.22.0 - g_volume_eject_with_operation_finish@Base 2.22.0 - g_volume_enumerate_identifiers@Base 2.16.0 - g_volume_get_activation_root@Base 2.18.0 - g_volume_get_drive@Base 2.16.0 - g_volume_get_icon@Base 2.16.0 - g_volume_get_identifier@Base 2.16.0 - g_volume_get_mount@Base 2.16.0 - g_volume_get_name@Base 2.16.0 - g_volume_get_type@Base 2.16.0 - g_volume_get_uuid@Base 2.16.0 - g_volume_monitor_adopt_orphan_mount@Base 2.16.0 - g_volume_monitor_get@Base 2.16.0 - g_volume_monitor_get_connected_drives@Base 2.16.0 - g_volume_monitor_get_mount_for_uuid@Base 2.16.0 - g_volume_monitor_get_mounts@Base 2.16.0 - g_volume_monitor_get_type@Base 2.16.0 - g_volume_monitor_get_volume_for_uuid@Base 2.16.0 - g_volume_monitor_get_volumes@Base 2.16.0 - g_volume_mount@Base 2.16.0 - g_volume_mount_finish@Base 2.16.0 - g_volume_should_automount@Base 2.16.0 -libglib-2.0.so.0 libglib2.0-0 #MINVER# -* Build-Depends-Package: libglib2.0-dev - g_access@Base 2.12.0 - g_allocator_free@Base 2.12.0 - g_allocator_new@Base 2.12.0 - g_array_append_vals@Base 2.12.0 - g_array_free@Base 2.12.0 - g_array_get_element_size@Base 2.22.0 - g_array_insert_vals@Base 2.12.0 - g_array_new@Base 2.12.0 - g_array_prepend_vals@Base 2.12.0 - g_array_ref@Base 2.22.0 - g_array_remove_index@Base 2.12.0 - g_array_remove_index_fast@Base 2.12.0 - g_array_remove_range@Base 2.12.0 - g_array_set_size@Base 2.12.0 - g_array_sized_new@Base 2.12.0 - g_array_sort@Base 2.12.0 - g_array_sort_with_data@Base 2.12.0 - g_array_unref@Base 2.22.0 - g_ascii_digit_value@Base 2.12.0 - g_ascii_dtostr@Base 2.12.0 - g_ascii_formatd@Base 2.12.0 - g_ascii_strcasecmp@Base 2.12.0 - g_ascii_strdown@Base 2.12.0 - g_ascii_strncasecmp@Base 2.12.0 - g_ascii_strtod@Base 2.12.0 - g_ascii_strtoll@Base 2.12.0 - g_ascii_strtoull@Base 2.12.0 - g_ascii_strup@Base 2.12.0 - g_ascii_table@Base 2.12.0 - g_ascii_tolower@Base 2.12.0 - g_ascii_toupper@Base 2.12.0 - g_ascii_xdigit_value@Base 2.12.0 - g_assert_warning@Base 2.12.0 - g_assertion_message@Base 2.16.0 - g_assertion_message_cmpnum@Base 2.16.0 - g_assertion_message_cmpstr@Base 2.16.0 - g_assertion_message_error@Base 2.20.0 - g_assertion_message_expr@Base 2.16.0 - g_async_queue_length@Base 2.12.0 - g_async_queue_length_unlocked@Base 2.12.0 - g_async_queue_lock@Base 2.12.0 - g_async_queue_new@Base 2.12.0 - g_async_queue_new_full@Base 2.16.0 - g_async_queue_pop@Base 2.12.0 - g_async_queue_pop_unlocked@Base 2.12.0 - g_async_queue_push@Base 2.12.0 - g_async_queue_push_sorted@Base 2.12.0 - g_async_queue_push_sorted_unlocked@Base 2.12.0 - g_async_queue_push_unlocked@Base 2.12.0 - g_async_queue_ref@Base 2.12.0 - g_async_queue_ref_unlocked@Base 2.12.0 - g_async_queue_sort@Base 2.12.0 - g_async_queue_sort_unlocked@Base 2.12.0 - g_async_queue_timed_pop@Base 2.12.0 - g_async_queue_timed_pop_unlocked@Base 2.12.0 - g_async_queue_try_pop@Base 2.12.0 - g_async_queue_try_pop_unlocked@Base 2.12.0 - g_async_queue_unlock@Base 2.12.0 - g_async_queue_unref@Base 2.12.0 - g_async_queue_unref_and_unlock@Base 2.12.0 - g_atexit@Base 2.12.0 - g_atomic_int_add@Base 2.12.0 - g_atomic_int_compare_and_exchange@Base 2.12.0 - g_atomic_int_exchange_and_add@Base 2.12.0 - g_atomic_int_get@Base 2.12.0 - g_atomic_int_set@Base 2.12.0 - g_atomic_pointer_compare_and_exchange@Base 2.12.0 - g_atomic_pointer_get@Base 2.12.0 - g_atomic_pointer_set@Base 2.12.0 - g_base64_decode@Base 2.12.0 - g_base64_decode_inplace@Base 2.20.0 - g_base64_decode_step@Base 2.12.0 - g_base64_encode@Base 2.12.0 - g_base64_encode_close@Base 2.12.0 - g_base64_encode_step@Base 2.12.0 - g_basename@Base 2.12.0 - g_bit_nth_lsf@Base 2.12.0 - g_bit_nth_msf@Base 2.12.0 - g_bit_storage@Base 2.12.0 - g_blow_chunks@Base 2.12.0 - g_bookmark_file_add_application@Base 2.12.0 - g_bookmark_file_add_group@Base 2.12.0 - g_bookmark_file_error_quark@Base 2.12.0 - g_bookmark_file_free@Base 2.12.0 - g_bookmark_file_get_added@Base 2.12.0 - g_bookmark_file_get_app_info@Base 2.12.0 - g_bookmark_file_get_applications@Base 2.12.0 - g_bookmark_file_get_description@Base 2.12.0 - g_bookmark_file_get_groups@Base 2.12.0 - g_bookmark_file_get_icon@Base 2.12.0 - g_bookmark_file_get_is_private@Base 2.12.0 - g_bookmark_file_get_mime_type@Base 2.12.0 - g_bookmark_file_get_modified@Base 2.12.0 - g_bookmark_file_get_size@Base 2.12.0 - g_bookmark_file_get_title@Base 2.12.0 - g_bookmark_file_get_uris@Base 2.12.0 - g_bookmark_file_get_visited@Base 2.12.0 - g_bookmark_file_has_application@Base 2.12.0 - g_bookmark_file_has_group@Base 2.12.0 - g_bookmark_file_has_item@Base 2.12.0 - g_bookmark_file_load_from_data@Base 2.12.0 - g_bookmark_file_load_from_data_dirs@Base 2.12.0 - g_bookmark_file_load_from_file@Base 2.12.0 - g_bookmark_file_move_item@Base 2.12.0 - g_bookmark_file_new@Base 2.12.0 - g_bookmark_file_remove_application@Base 2.12.0 - g_bookmark_file_remove_group@Base 2.12.0 - g_bookmark_file_remove_item@Base 2.12.0 - g_bookmark_file_set_added@Base 2.12.0 - g_bookmark_file_set_app_info@Base 2.12.0 - g_bookmark_file_set_description@Base 2.12.0 - g_bookmark_file_set_groups@Base 2.12.0 - g_bookmark_file_set_icon@Base 2.12.0 - g_bookmark_file_set_is_private@Base 2.12.0 - g_bookmark_file_set_mime_type@Base 2.12.0 - g_bookmark_file_set_modified@Base 2.12.0 - g_bookmark_file_set_title@Base 2.12.0 - g_bookmark_file_set_visited@Base 2.12.0 - g_bookmark_file_to_data@Base 2.12.0 - g_bookmark_file_to_file@Base 2.12.0 - g_build_filename@Base 2.12.0 - g_build_filenamev@Base 2.12.0 - g_build_path@Base 2.12.0 - g_build_pathv@Base 2.12.0 - g_byte_array_append@Base 2.12.0 - g_byte_array_free@Base 2.12.0 - g_byte_array_new@Base 2.12.0 - g_byte_array_prepend@Base 2.12.0 - g_byte_array_ref@Base 2.22.0 - g_byte_array_remove_index@Base 2.12.0 - g_byte_array_remove_index_fast@Base 2.12.0 - g_byte_array_remove_range@Base 2.12.0 - g_byte_array_set_size@Base 2.12.0 - g_byte_array_sized_new@Base 2.12.0 - g_byte_array_sort@Base 2.12.0 - g_byte_array_sort_with_data@Base 2.12.0 - g_byte_array_unref@Base 2.22.0 - g_cache_destroy@Base 2.12.0 - g_cache_insert@Base 2.12.0 - g_cache_key_foreach@Base 2.12.0 - g_cache_new@Base 2.12.0 - g_cache_remove@Base 2.12.0 - g_cache_value_foreach@Base 2.12.0 - g_chdir@Base 2.12.0 - g_checksum_copy@Base 2.16.0 - g_checksum_free@Base 2.16.0 - g_checksum_get_digest@Base 2.16.0 - g_checksum_get_string@Base 2.16.0 - g_checksum_new@Base 2.16.0 - g_checksum_reset@Base 2.18.0 - g_checksum_type_get_length@Base 2.16.0 - g_checksum_update@Base 2.16.0 - g_child_watch_add@Base 2.12.0 - g_child_watch_add_full@Base 2.12.0 - g_child_watch_funcs@Base 2.12.0 - g_child_watch_source_new@Base 2.12.0 - g_chmod@Base 2.12.0 - g_clear_error@Base 2.12.0 - g_completion_add_items@Base 2.12.0 - g_completion_clear_items@Base 2.12.0 - g_completion_complete@Base 2.12.0 - g_completion_complete_utf8@Base 2.12.0 - g_completion_free@Base 2.12.0 - g_completion_new@Base 2.12.0 - g_completion_remove_items@Base 2.12.0 - g_completion_set_compare@Base 2.12.0 - g_compute_checksum_for_data@Base 2.16.0 - g_compute_checksum_for_string@Base 2.16.0 - g_convert@Base 2.12.0 - g_convert_error_quark@Base 2.12.0 - g_convert_with_fallback@Base 2.12.0 - g_convert_with_iconv@Base 2.12.0 - g_creat@Base 2.12.0 - g_datalist_clear@Base 2.12.0 - g_datalist_foreach@Base 2.12.0 - g_datalist_get_flags@Base 2.12.0 - g_datalist_id_get_data@Base 2.12.0 - g_datalist_id_remove_no_notify@Base 2.12.0 - g_datalist_id_set_data_full@Base 2.12.0 - g_datalist_init@Base 2.12.0 - g_datalist_set_flags@Base 2.12.0 - g_datalist_unset_flags@Base 2.12.0 - g_dataset_destroy@Base 2.12.0 - g_dataset_foreach@Base 2.12.0 - g_dataset_id_get_data@Base 2.12.0 - g_dataset_id_remove_no_notify@Base 2.12.0 - g_dataset_id_set_data_full@Base 2.12.0 - g_date_add_days@Base 2.12.0 - g_date_add_months@Base 2.12.0 - g_date_add_years@Base 2.12.0 - g_date_clamp@Base 2.12.0 - g_date_clear@Base 2.12.0 - g_date_compare@Base 2.12.0 - g_date_days_between@Base 2.12.0 - g_date_free@Base 2.12.0 - g_date_get_day@Base 2.12.0 - g_date_get_day_of_year@Base 2.12.0 - g_date_get_days_in_month@Base 2.12.0 - g_date_get_iso8601_week_of_year@Base 2.12.0 - g_date_get_julian@Base 2.12.0 - g_date_get_monday_week_of_year@Base 2.12.0 - g_date_get_monday_weeks_in_year@Base 2.12.0 - g_date_get_month@Base 2.12.0 - g_date_get_sunday_week_of_year@Base 2.12.0 - g_date_get_sunday_weeks_in_year@Base 2.12.0 - g_date_get_weekday@Base 2.12.0 - g_date_get_year@Base 2.12.0 - g_date_is_first_of_month@Base 2.12.0 - g_date_is_last_of_month@Base 2.12.0 - g_date_is_leap_year@Base 2.12.0 - g_date_new@Base 2.12.0 - g_date_new_dmy@Base 2.12.0 - g_date_new_julian@Base 2.12.0 - g_date_order@Base 2.12.0 - g_date_set_day@Base 2.12.0 - g_date_set_dmy@Base 2.12.0 - g_date_set_julian@Base 2.12.0 - g_date_set_month@Base 2.12.0 - g_date_set_parse@Base 2.12.0 - g_date_set_time@Base 2.12.0 - g_date_set_time_t@Base 2.12.0 - g_date_set_time_val@Base 2.12.0 - g_date_set_year@Base 2.12.0 - g_date_strftime@Base 2.12.0 - g_date_subtract_days@Base 2.12.0 - g_date_subtract_months@Base 2.12.0 - g_date_subtract_years@Base 2.12.0 - g_date_to_struct_tm@Base 2.12.0 - g_date_valid@Base 2.12.0 - g_date_valid_day@Base 2.12.0 - g_date_valid_dmy@Base 2.12.0 - g_date_valid_julian@Base 2.12.0 - g_date_valid_month@Base 2.12.0 - g_date_valid_weekday@Base 2.12.0 - g_date_valid_year@Base 2.12.0 - g_dgettext@Base 2.18.0 - g_dir_close@Base 2.12.0 - g_dir_open@Base 2.12.0 - g_dir_read_name@Base 2.12.0 - g_dir_rewind@Base 2.12.0 - g_direct_equal@Base 2.12.0 - g_direct_hash@Base 2.12.0 - g_dngettext@Base 2.18.0 - g_double_equal@Base 2.22.0 - g_double_hash@Base 2.22.0 - g_dpgettext2@Base 2.18.0 - g_dpgettext@Base 2.16.0 - g_error_copy@Base 2.12.0 - g_error_free@Base 2.12.0 - g_error_matches@Base 2.12.0 - g_error_new@Base 2.12.0 - g_error_new_literal@Base 2.12.0 - g_error_new_valist@Base 2.22.0 - g_file_error_from_errno@Base 2.12.0 - g_file_error_quark@Base 2.12.0 - g_file_get_contents@Base 2.12.0 - g_file_open_tmp@Base 2.12.0 - g_file_read_link@Base 2.12.0 - g_file_set_contents@Base 2.12.0 - g_file_test@Base 2.12.0 - g_filename_display_basename@Base 2.12.0 - g_filename_display_name@Base 2.12.0 - g_filename_from_uri@Base 2.12.0 - g_filename_from_utf8@Base 2.12.0 - g_filename_to_uri@Base 2.12.0 - g_filename_to_utf8@Base 2.12.0 - g_find_program_in_path@Base 2.12.0 - g_fopen@Base 2.12.0 - g_format_size_for_display@Base 2.16.0 - g_fprintf@Base 2.12.0 - g_free@Base 2.12.0 - g_freopen@Base 2.12.0 - g_get_application_name@Base 2.12.0 - g_get_charset@Base 2.12.0 - g_get_codeset@Base 2.12.0 - g_get_current_dir@Base 2.12.0 - g_get_current_time@Base 2.12.0 - g_get_filename_charsets@Base 2.12.0 - g_get_home_dir@Base 2.12.0 - g_get_host_name@Base 2.12.0 - g_get_language_names@Base 2.12.0 - g_get_prgname@Base 2.12.0 - g_get_real_name@Base 2.12.0 - g_get_system_config_dirs@Base 2.12.0 - g_get_system_data_dirs@Base 2.12.0 - g_get_tmp_dir@Base 2.12.0 - g_get_user_cache_dir@Base 2.12.0 - g_get_user_config_dir@Base 2.12.0 - g_get_user_data_dir@Base 2.12.0 - g_get_user_name@Base 2.12.0 - g_get_user_special_dir@Base 2.14.0 - g_getenv@Base 2.12.0 - g_hash_table_destroy@Base 2.12.0 - g_hash_table_find@Base 2.12.0 - g_hash_table_foreach@Base 2.12.0 - g_hash_table_foreach_remove@Base 2.12.0 - g_hash_table_foreach_steal@Base 2.12.0 - g_hash_table_get_keys@Base 2.14.0 - g_hash_table_get_values@Base 2.14.0 - g_hash_table_insert@Base 2.12.0 - g_hash_table_iter_get_hash_table@Base 2.16.0 - g_hash_table_iter_init@Base 2.16.0 - g_hash_table_iter_next@Base 2.16.0 - g_hash_table_iter_remove@Base 2.16.0 - g_hash_table_iter_steal@Base 2.16.0 - g_hash_table_lookup@Base 2.12.0 - g_hash_table_lookup_extended@Base 2.12.0 - g_hash_table_new@Base 2.12.0 - g_hash_table_new_full@Base 2.12.0 - g_hash_table_ref@Base 2.12.0 - g_hash_table_remove@Base 2.12.0 - g_hash_table_remove_all@Base 2.12.0 - g_hash_table_replace@Base 2.12.0 - g_hash_table_size@Base 2.12.0 - g_hash_table_steal@Base 2.12.0 - g_hash_table_steal_all@Base 2.12.0 - g_hash_table_unref@Base 2.12.0 - g_hook_alloc@Base 2.12.0 - g_hook_compare_ids@Base 2.12.0 - g_hook_destroy@Base 2.12.0 - g_hook_destroy_link@Base 2.12.0 - g_hook_find@Base 2.12.0 - g_hook_find_data@Base 2.12.0 - g_hook_find_func@Base 2.12.0 - g_hook_find_func_data@Base 2.12.0 - g_hook_first_valid@Base 2.12.0 - g_hook_free@Base 2.12.0 - g_hook_get@Base 2.12.0 - g_hook_insert_before@Base 2.12.0 - g_hook_insert_sorted@Base 2.12.0 - g_hook_list_clear@Base 2.12.0 - g_hook_list_init@Base 2.12.0 - g_hook_list_invoke@Base 2.12.0 - g_hook_list_invoke_check@Base 2.12.0 - g_hook_list_marshal@Base 2.12.0 - g_hook_list_marshal_check@Base 2.12.0 - g_hook_next_valid@Base 2.12.0 - g_hook_prepend@Base 2.12.0 - g_hook_ref@Base 2.12.0 - g_hook_unref@Base 2.12.0 - g_hostname_is_ascii_encoded@Base 2.22.0 - g_hostname_is_ip_address@Base 2.22.0 - g_hostname_is_non_ascii@Base 2.22.0 - g_hostname_to_ascii@Base 2.22.0 - g_hostname_to_unicode@Base 2.22.0 - g_iconv@Base 2.12.0 - g_iconv_close@Base 2.12.0 - g_iconv_open@Base 2.12.0 - g_idle_add@Base 2.12.0 - g_idle_add_full@Base 2.12.0 - g_idle_funcs@Base 2.12.0 - g_idle_remove_by_data@Base 2.12.0 - g_idle_source_new@Base 2.12.0 - g_int64_equal@Base 2.22.0 - g_int64_hash@Base 2.22.0 - g_int_equal@Base 2.12.0 - g_int_hash@Base 2.12.0 - g_intern_static_string@Base 2.12.0 - g_intern_string@Base 2.12.0 - g_io_add_watch@Base 2.12.0 - g_io_add_watch_full@Base 2.12.0 - g_io_channel_close@Base 2.12.0 - g_io_channel_error_from_errno@Base 2.12.0 - g_io_channel_error_quark@Base 2.12.0 - g_io_channel_flush@Base 2.12.0 - g_io_channel_get_buffer_condition@Base 2.12.0 - g_io_channel_get_buffer_size@Base 2.12.0 - g_io_channel_get_buffered@Base 2.12.0 - g_io_channel_get_close_on_unref@Base 2.12.0 - g_io_channel_get_encoding@Base 2.12.0 - g_io_channel_get_flags@Base 2.12.0 - g_io_channel_get_line_term@Base 2.12.0 - g_io_channel_init@Base 2.12.0 - g_io_channel_new_file@Base 2.12.0 - g_io_channel_read@Base 2.12.0 - g_io_channel_read_chars@Base 2.12.0 - g_io_channel_read_line@Base 2.12.0 - g_io_channel_read_line_string@Base 2.12.0 - g_io_channel_read_to_end@Base 2.12.0 - g_io_channel_read_unichar@Base 2.12.0 - g_io_channel_ref@Base 2.12.0 - g_io_channel_seek@Base 2.12.0 - g_io_channel_seek_position@Base 2.12.0 - g_io_channel_set_buffer_size@Base 2.12.0 - g_io_channel_set_buffered@Base 2.12.0 - g_io_channel_set_close_on_unref@Base 2.12.0 - g_io_channel_set_encoding@Base 2.12.0 - g_io_channel_set_flags@Base 2.12.0 - g_io_channel_set_line_term@Base 2.12.0 - g_io_channel_shutdown@Base 2.12.0 - g_io_channel_unix_get_fd@Base 2.12.0 - g_io_channel_unix_new@Base 2.12.0 - g_io_channel_unref@Base 2.12.0 - g_io_channel_write@Base 2.12.0 - g_io_channel_write_chars@Base 2.12.0 - g_io_channel_write_unichar@Base 2.12.0 - g_io_create_watch@Base 2.12.0 - g_io_watch_funcs@Base 2.12.0 - g_key_file_error_quark@Base 2.12.0 - g_key_file_free@Base 2.12.0 - g_key_file_get_boolean@Base 2.12.0 - g_key_file_get_boolean_list@Base 2.12.0 - g_key_file_get_comment@Base 2.12.0 - g_key_file_get_double@Base 2.12.0 - g_key_file_get_double_list@Base 2.12.0 - g_key_file_get_groups@Base 2.12.0 - g_key_file_get_integer@Base 2.12.0 - g_key_file_get_integer_list@Base 2.12.0 - g_key_file_get_keys@Base 2.12.0 - g_key_file_get_locale_string@Base 2.12.0 - g_key_file_get_locale_string_list@Base 2.12.0 - g_key_file_get_start_group@Base 2.12.0 - g_key_file_get_string@Base 2.12.0 - g_key_file_get_string_list@Base 2.12.0 - g_key_file_get_value@Base 2.12.0 - g_key_file_has_group@Base 2.12.0 - g_key_file_has_key@Base 2.12.0 - g_key_file_load_from_data@Base 2.12.0 - g_key_file_load_from_data_dirs@Base 2.12.0 - g_key_file_load_from_dirs@Base 2.14.0 - g_key_file_load_from_file@Base 2.12.0 - g_key_file_new@Base 2.12.0 - g_key_file_remove_comment@Base 2.12.0 - g_key_file_remove_group@Base 2.12.0 - g_key_file_remove_key@Base 2.12.0 - g_key_file_set_boolean@Base 2.12.0 - g_key_file_set_boolean_list@Base 2.12.0 - g_key_file_set_comment@Base 2.12.0 - g_key_file_set_double@Base 2.12.0 - g_key_file_set_double_list@Base 2.12.0 - g_key_file_set_integer@Base 2.12.0 - g_key_file_set_integer_list@Base 2.12.0 - g_key_file_set_list_separator@Base 2.12.0 - g_key_file_set_locale_string@Base 2.12.0 - g_key_file_set_locale_string_list@Base 2.12.0 - g_key_file_set_string@Base 2.12.0 - g_key_file_set_string_list@Base 2.12.0 - g_key_file_set_value@Base 2.12.0 - g_key_file_to_data@Base 2.12.0 - g_list_alloc@Base 2.12.0 - g_list_append@Base 2.12.0 - g_list_concat@Base 2.12.0 - g_list_copy@Base 2.12.0 - g_list_delete_link@Base 2.12.0 - g_list_find@Base 2.12.0 - g_list_find_custom@Base 2.12.0 - g_list_first@Base 2.12.0 - g_list_foreach@Base 2.12.0 - g_list_free@Base 2.12.0 - g_list_free_1@Base 2.12.0 - g_list_index@Base 2.12.0 - g_list_insert@Base 2.12.0 - g_list_insert_before@Base 2.12.0 - g_list_insert_sorted@Base 2.12.0 - g_list_insert_sorted_with_data@Base 2.12.0 - g_list_last@Base 2.12.0 - g_list_length@Base 2.12.0 - g_list_nth@Base 2.12.0 - g_list_nth_data@Base 2.12.0 - g_list_nth_prev@Base 2.12.0 - g_list_pop_allocator@Base 2.12.0 - g_list_position@Base 2.12.0 - g_list_prepend@Base 2.12.0 - g_list_push_allocator@Base 2.12.0 - g_list_remove@Base 2.12.0 - g_list_remove_all@Base 2.12.0 - g_list_remove_link@Base 2.12.0 - g_list_reverse@Base 2.12.0 - g_list_sort@Base 2.12.0 - g_list_sort_with_data@Base 2.12.0 - g_listenv@Base 2.12.0 - g_locale_from_utf8@Base 2.12.0 - g_locale_to_utf8@Base 2.12.0 - g_log@Base 2.12.0 - g_log_default_handler@Base 2.12.0 - g_log_remove_handler@Base 2.12.0 - g_log_set_always_fatal@Base 2.12.0 - g_log_set_default_handler@Base 2.12.0 - g_log_set_fatal_mask@Base 2.12.0 - g_log_set_handler@Base 2.12.0 - g_logv@Base 2.12.0 - g_lstat@Base 2.12.0 - g_main_context_acquire@Base 2.12.0 - g_main_context_add_poll@Base 2.12.0 - g_main_context_check@Base 2.12.0 - g_main_context_default@Base 2.12.0 - g_main_context_dispatch@Base 2.12.0 - g_main_context_find_source_by_funcs_user_data@Base 2.12.0 - g_main_context_find_source_by_id@Base 2.12.0 - g_main_context_find_source_by_user_data@Base 2.12.0 - g_main_context_get_poll_func@Base 2.12.0 - g_main_context_get_thread_default@Base 2.22.0 - g_main_context_is_owner@Base 2.12.0 - g_main_context_iteration@Base 2.12.0 - g_main_context_new@Base 2.12.0 - g_main_context_pending@Base 2.12.0 - g_main_context_pop_thread_default@Base 2.22.0 - g_main_context_prepare@Base 2.12.0 - g_main_context_push_thread_default@Base 2.22.0 - g_main_context_query@Base 2.12.0 - g_main_context_ref@Base 2.12.0 - g_main_context_release@Base 2.12.0 - g_main_context_remove_poll@Base 2.12.0 - g_main_context_set_poll_func@Base 2.12.0 - g_main_context_unref@Base 2.12.0 - g_main_context_wait@Base 2.12.0 - g_main_context_wakeup@Base 2.12.0 - g_main_current_source@Base 2.12.0 - g_main_depth@Base 2.12.0 - g_main_loop_get_context@Base 2.12.0 - g_main_loop_is_running@Base 2.12.0 - g_main_loop_new@Base 2.12.0 - g_main_loop_quit@Base 2.12.0 - g_main_loop_ref@Base 2.12.0 - g_main_loop_run@Base 2.12.0 - g_main_loop_unref@Base 2.12.0 - g_malloc0@Base 2.12.0 - g_malloc@Base 2.12.0 - g_mapped_file_free@Base 2.12.0 - g_mapped_file_get_contents@Base 2.12.0 - g_mapped_file_get_length@Base 2.12.0 - g_mapped_file_new@Base 2.12.0 - g_mapped_file_ref@Base 2.22.0 - g_mapped_file_unref@Base 2.22.0 - g_markup_collect_attributes@Base 2.16.0 - g_markup_error_quark@Base 2.12.0 - g_markup_escape_text@Base 2.12.0 - g_markup_parse_context_end_parse@Base 2.12.0 - g_markup_parse_context_free@Base 2.12.0 - g_markup_parse_context_get_element@Base 2.12.0 - g_markup_parse_context_get_element_stack@Base 2.16.0 - g_markup_parse_context_get_position@Base 2.12.0 - g_markup_parse_context_get_user_data@Base 2.18.0 - g_markup_parse_context_new@Base 2.12.0 - g_markup_parse_context_parse@Base 2.12.0 - g_markup_parse_context_pop@Base 2.18.0 - g_markup_parse_context_push@Base 2.18.0 - g_markup_printf_escaped@Base 2.12.0 - g_markup_vprintf_escaped@Base 2.12.0 - g_match_info_expand_references@Base 2.14.0 - g_match_info_fetch@Base 2.14.0 - g_match_info_fetch_all@Base 2.14.0 - g_match_info_fetch_named@Base 2.14.0 - g_match_info_fetch_named_pos@Base 2.14.0 - g_match_info_fetch_pos@Base 2.14.0 - g_match_info_free@Base 2.14.0 - g_match_info_get_match_count@Base 2.14.0 - g_match_info_get_regex@Base 2.14.0 - g_match_info_get_string@Base 2.14.0 - g_match_info_is_partial_match@Base 2.14.0 - g_match_info_matches@Base 2.14.0 - g_match_info_next@Base 2.14.0 - g_mem_chunk_alloc0@Base 2.12.0 - g_mem_chunk_alloc@Base 2.12.0 - g_mem_chunk_clean@Base 2.12.0 - g_mem_chunk_destroy@Base 2.12.0 - g_mem_chunk_free@Base 2.12.0 - g_mem_chunk_info@Base 2.12.0 - g_mem_chunk_new@Base 2.12.0 - g_mem_chunk_print@Base 2.12.0 - g_mem_chunk_reset@Base 2.12.0 - g_mem_gc_friendly@Base 2.12.0 - g_mem_is_system_malloc@Base 2.12.0 - g_mem_profile@Base 2.12.0 - g_mem_set_vtable@Base 2.12.0 - g_memdup@Base 2.12.0 - g_mkdir@Base 2.12.0 - g_mkdir_with_parents@Base 2.12.0 - g_mkstemp@Base 2.12.0 - g_mkstemp_full@Base 2.22.0 - g_node_child_index@Base 2.12.0 - g_node_child_position@Base 2.12.0 - g_node_children_foreach@Base 2.12.0 - g_node_copy@Base 2.12.0 - g_node_copy_deep@Base 2.12.0 - g_node_depth@Base 2.12.0 - g_node_destroy@Base 2.12.0 - g_node_find@Base 2.12.0 - g_node_find_child@Base 2.12.0 - g_node_first_sibling@Base 2.12.0 - g_node_get_root@Base 2.12.0 - g_node_insert@Base 2.12.0 - g_node_insert_after@Base 2.12.0 - g_node_insert_before@Base 2.12.0 - g_node_is_ancestor@Base 2.12.0 - g_node_last_child@Base 2.12.0 - g_node_last_sibling@Base 2.12.0 - g_node_max_height@Base 2.12.0 - g_node_n_children@Base 2.12.0 - g_node_n_nodes@Base 2.12.0 - g_node_new@Base 2.12.0 - g_node_nth_child@Base 2.12.0 - g_node_pop_allocator@Base 2.12.0 - g_node_prepend@Base 2.12.0 - g_node_push_allocator@Base 2.12.0 - g_node_reverse_children@Base 2.12.0 - g_node_traverse@Base 2.12.0 - g_node_unlink@Base 2.12.0 - g_nullify_pointer@Base 2.12.0 - g_on_error_query@Base 2.12.0 - g_on_error_stack_trace@Base 2.12.0 - g_once_impl@Base 2.12.0 - g_once_init_enter@Base 2.14.0 - g_once_init_enter_impl@Base 2.14.0 - g_once_init_leave@Base 2.14.0 - g_open@Base 2.12.0 - g_option_context_add_group@Base 2.12.0 - g_option_context_add_main_entries@Base 2.12.0 - g_option_context_free@Base 2.12.0 - g_option_context_get_description@Base 2.12.0 - g_option_context_get_help@Base 2.14.0 - g_option_context_get_help_enabled@Base 2.12.0 - g_option_context_get_ignore_unknown_options@Base 2.12.0 - g_option_context_get_main_group@Base 2.12.0 - g_option_context_get_summary@Base 2.12.0 - g_option_context_new@Base 2.12.0 - g_option_context_parse@Base 2.12.0 - g_option_context_set_description@Base 2.12.0 - g_option_context_set_help_enabled@Base 2.12.0 - g_option_context_set_ignore_unknown_options@Base 2.12.0 - g_option_context_set_main_group@Base 2.12.0 - g_option_context_set_summary@Base 2.12.0 - g_option_context_set_translate_func@Base 2.12.0 - g_option_context_set_translation_domain@Base 2.12.0 - g_option_error_quark@Base 2.12.0 - g_option_group_add_entries@Base 2.12.0 - g_option_group_free@Base 2.12.0 - g_option_group_new@Base 2.12.0 - g_option_group_set_error_hook@Base 2.12.0 - g_option_group_set_parse_hooks@Base 2.12.0 - g_option_group_set_translate_func@Base 2.12.0 - g_option_group_set_translation_domain@Base 2.12.0 - g_parse_debug_string@Base 2.12.0 - g_path_get_basename@Base 2.12.0 - g_path_get_dirname@Base 2.12.0 - g_path_is_absolute@Base 2.12.0 - g_path_skip_root@Base 2.12.0 - g_pattern_match@Base 2.12.0 - g_pattern_match_simple@Base 2.12.0 - g_pattern_match_string@Base 2.12.0 - g_pattern_spec_equal@Base 2.12.0 - g_pattern_spec_free@Base 2.12.0 - g_pattern_spec_new@Base 2.12.0 - g_poll@Base 2.20.0 - g_prefix_error@Base 2.16.0 - g_print@Base 2.12.0 - g_printerr@Base 2.12.0 - g_printf@Base 2.12.0 - g_printf_string_upper_bound@Base 2.12.0 - g_propagate_error@Base 2.12.0 - g_propagate_prefixed_error@Base 2.16.0 - g_ptr_array_add@Base 2.12.0 - g_ptr_array_foreach@Base 2.12.0 - g_ptr_array_free@Base 2.12.0 - g_ptr_array_new@Base 2.12.0 - g_ptr_array_new_with_free_func@Base 2.22.0 - g_ptr_array_ref@Base 2.22.0 - g_ptr_array_remove@Base 2.12.0 - g_ptr_array_remove_fast@Base 2.12.0 - g_ptr_array_remove_index@Base 2.12.0 - g_ptr_array_remove_index_fast@Base 2.12.0 - g_ptr_array_remove_range@Base 2.12.0 - g_ptr_array_set_free_func@Base 2.22.0 - g_ptr_array_set_size@Base 2.12.0 - g_ptr_array_sized_new@Base 2.12.0 - g_ptr_array_sort@Base 2.12.0 - g_ptr_array_sort_with_data@Base 2.12.0 - g_ptr_array_unref@Base 2.22.0 - g_qsort_with_data@Base 2.12.0 - g_quark_from_static_string@Base 2.12.0 - g_quark_from_string@Base 2.12.0 - g_quark_to_string@Base 2.12.0 - g_quark_try_string@Base 2.12.0 - g_queue_clear@Base 2.14.0 - g_queue_copy@Base 2.12.0 - g_queue_delete_link@Base 2.12.0 - g_queue_find@Base 2.12.0 - g_queue_find_custom@Base 2.12.0 - g_queue_foreach@Base 2.12.0 - g_queue_free@Base 2.12.0 - g_queue_get_length@Base 2.12.0 - g_queue_index@Base 2.12.0 - g_queue_init@Base 2.14.0 - g_queue_insert_after@Base 2.12.0 - g_queue_insert_before@Base 2.12.0 - g_queue_insert_sorted@Base 2.12.0 - g_queue_is_empty@Base 2.12.0 - g_queue_link_index@Base 2.12.0 - g_queue_new@Base 2.12.0 - g_queue_peek_head@Base 2.12.0 - g_queue_peek_head_link@Base 2.12.0 - g_queue_peek_nth@Base 2.12.0 - g_queue_peek_nth_link@Base 2.12.0 - g_queue_peek_tail@Base 2.12.0 - g_queue_peek_tail_link@Base 2.12.0 - g_queue_pop_head@Base 2.12.0 - g_queue_pop_head_link@Base 2.12.0 - g_queue_pop_nth@Base 2.12.0 - g_queue_pop_nth_link@Base 2.12.0 - g_queue_pop_tail@Base 2.12.0 - g_queue_pop_tail_link@Base 2.12.0 - g_queue_push_head@Base 2.12.0 - g_queue_push_head_link@Base 2.12.0 - g_queue_push_nth@Base 2.12.0 - g_queue_push_nth_link@Base 2.12.0 - g_queue_push_tail@Base 2.12.0 - g_queue_push_tail_link@Base 2.12.0 - g_queue_remove@Base 2.12.0 - g_queue_remove_all@Base 2.12.0 - g_queue_reverse@Base 2.12.0 - g_queue_sort@Base 2.12.0 - g_queue_unlink@Base 2.12.0 - g_rand_copy@Base 2.12.0 - g_rand_double@Base 2.12.0 - g_rand_double_range@Base 2.12.0 - g_rand_free@Base 2.12.0 - g_rand_int@Base 2.12.0 - g_rand_int_range@Base 2.12.0 - g_rand_new@Base 2.12.0 - g_rand_new_with_seed@Base 2.12.0 - g_rand_new_with_seed_array@Base 2.12.0 - g_rand_set_seed@Base 2.12.0 - g_rand_set_seed_array@Base 2.12.0 - g_random_double@Base 2.12.0 - g_random_double_range@Base 2.12.0 - g_random_int@Base 2.12.0 - g_random_int_range@Base 2.12.0 - g_random_set_seed@Base 2.12.0 - g_realloc@Base 2.12.0 - g_regex_check_replacement@Base 2.14.0 - g_regex_error_quark@Base 2.14.0 - g_regex_escape_string@Base 2.14.0 - g_regex_get_capture_count@Base 2.14.0 - g_regex_get_max_backref@Base 2.14.0 - g_regex_get_pattern@Base 2.14.0 - g_regex_get_string_number@Base 2.14.0 - g_regex_match@Base 2.14.0 - g_regex_match_all@Base 2.14.0 - g_regex_match_all_full@Base 2.14.0 - g_regex_match_full@Base 2.14.0 - g_regex_match_simple@Base 2.14.0 - g_regex_new@Base 2.14.0 - g_regex_ref@Base 2.14.0 - g_regex_replace@Base 2.14.0 - g_regex_replace_eval@Base 2.14.0 - g_regex_replace_literal@Base 2.14.0 - g_regex_split@Base 2.14.0 - g_regex_split_full@Base 2.14.0 - g_regex_split_simple@Base 2.14.0 - g_regex_unref@Base 2.14.0 - g_relation_count@Base 2.12.0 - g_relation_delete@Base 2.12.0 - g_relation_destroy@Base 2.12.0 - g_relation_exists@Base 2.12.0 - g_relation_index@Base 2.12.0 - g_relation_insert@Base 2.12.0 - g_relation_new@Base 2.12.0 - g_relation_print@Base 2.12.0 - g_relation_select@Base 2.12.0 - g_reload_user_special_dirs_cache@Base 2.22.0 - g_remove@Base 2.12.0 - g_rename@Base 2.12.0 - g_return_if_fail_warning@Base 2.12.0 - g_rmdir@Base 2.12.0 - g_scanner_cur_line@Base 2.12.0 - g_scanner_cur_position@Base 2.12.0 - g_scanner_cur_token@Base 2.12.0 - g_scanner_cur_value@Base 2.12.0 - g_scanner_destroy@Base 2.12.0 - g_scanner_eof@Base 2.12.0 - g_scanner_error@Base 2.12.0 - g_scanner_get_next_token@Base 2.12.0 - g_scanner_input_file@Base 2.12.0 - g_scanner_input_text@Base 2.12.0 - g_scanner_lookup_symbol@Base 2.12.0 - g_scanner_new@Base 2.12.0 - g_scanner_peek_next_token@Base 2.12.0 - g_scanner_scope_add_symbol@Base 2.12.0 - g_scanner_scope_foreach_symbol@Base 2.12.0 - g_scanner_scope_lookup_symbol@Base 2.12.0 - g_scanner_scope_remove_symbol@Base 2.12.0 - g_scanner_set_scope@Base 2.12.0 - g_scanner_sync_file_offset@Base 2.12.0 - g_scanner_unexp_token@Base 2.12.0 - g_scanner_warn@Base 2.12.0 - g_sequence_append@Base 2.14.0 - g_sequence_foreach@Base 2.14.0 - g_sequence_foreach_range@Base 2.14.0 - g_sequence_free@Base 2.14.0 - g_sequence_get@Base 2.14.0 - g_sequence_get_begin_iter@Base 2.14.0 - g_sequence_get_end_iter@Base 2.14.0 - g_sequence_get_iter_at_pos@Base 2.14.0 - g_sequence_get_length@Base 2.14.0 - g_sequence_insert_before@Base 2.14.0 - g_sequence_insert_sorted@Base 2.14.0 - g_sequence_insert_sorted_iter@Base 2.14.0 - g_sequence_iter_compare@Base 2.14.0 - g_sequence_iter_get_position@Base 2.14.0 - g_sequence_iter_get_sequence@Base 2.14.0 - g_sequence_iter_is_begin@Base 2.14.0 - g_sequence_iter_is_end@Base 2.14.0 - g_sequence_iter_move@Base 2.14.0 - g_sequence_iter_next@Base 2.14.0 - g_sequence_iter_prev@Base 2.14.0 - g_sequence_move@Base 2.14.0 - g_sequence_move_range@Base 2.14.0 - g_sequence_new@Base 2.14.0 - g_sequence_prepend@Base 2.14.0 - g_sequence_range_get_midpoint@Base 2.14.0 - g_sequence_remove@Base 2.14.0 - g_sequence_remove_range@Base 2.14.0 - g_sequence_search@Base 2.14.0 - g_sequence_search_iter@Base 2.14.0 - g_sequence_set@Base 2.14.0 - g_sequence_sort@Base 2.14.0 - g_sequence_sort_changed@Base 2.14.0 - g_sequence_sort_changed_iter@Base 2.14.0 - g_sequence_sort_iter@Base 2.14.0 - g_sequence_swap@Base 2.14.0 - g_set_application_name@Base 2.12.0 - g_set_error@Base 2.12.0 - g_set_error_literal@Base 2.18.0 - g_set_prgname@Base 2.12.0 - g_set_print_handler@Base 2.12.0 - g_set_printerr_handler@Base 2.12.0 - g_setenv@Base 2.12.0 - g_shell_error_quark@Base 2.12.0 - g_shell_parse_argv@Base 2.12.0 - g_shell_quote@Base 2.12.0 - g_shell_unquote@Base 2.12.0 - g_slice_alloc0@Base 2.12.0 - g_slice_alloc@Base 2.12.0 - g_slice_copy@Base 2.14.0 - g_slice_free1@Base 2.12.0 - g_slice_free_chain_with_offset@Base 2.12.0 - g_slice_get_config@Base 2.12.0 - g_slice_get_config_state@Base 2.12.0 - g_slice_set_config@Base 2.12.0 - g_slist_alloc@Base 2.12.0 - g_slist_append@Base 2.12.0 - g_slist_concat@Base 2.12.0 - g_slist_copy@Base 2.12.0 - g_slist_delete_link@Base 2.12.0 - g_slist_find@Base 2.12.0 - g_slist_find_custom@Base 2.12.0 - g_slist_foreach@Base 2.12.0 - g_slist_free@Base 2.12.0 - g_slist_free_1@Base 2.12.0 - g_slist_index@Base 2.12.0 - g_slist_insert@Base 2.12.0 - g_slist_insert_before@Base 2.12.0 - g_slist_insert_sorted@Base 2.12.0 - g_slist_insert_sorted_with_data@Base 2.12.0 - g_slist_last@Base 2.12.0 - g_slist_length@Base 2.12.0 - g_slist_nth@Base 2.12.0 - g_slist_nth_data@Base 2.12.0 - g_slist_pop_allocator@Base 2.12.0 - g_slist_position@Base 2.12.0 - g_slist_prepend@Base 2.12.0 - g_slist_push_allocator@Base 2.12.0 - g_slist_remove@Base 2.12.0 - g_slist_remove_all@Base 2.12.0 - g_slist_remove_link@Base 2.12.0 - g_slist_reverse@Base 2.12.0 - g_slist_sort@Base 2.12.0 - g_slist_sort_with_data@Base 2.12.0 - g_snprintf@Base 2.12.0 - g_source_add_poll@Base 2.12.0 - g_source_attach@Base 2.12.0 - g_source_destroy@Base 2.12.0 - g_source_get_can_recurse@Base 2.12.0 - g_source_get_context@Base 2.12.0 - g_source_get_current_time@Base 2.12.0 - g_source_get_id@Base 2.12.0 - g_source_get_priority@Base 2.12.0 - g_source_is_destroyed@Base 2.12.0 - g_source_new@Base 2.12.0 - g_source_ref@Base 2.12.0 - g_source_remove@Base 2.12.0 - g_source_remove_by_funcs_user_data@Base 2.12.0 - g_source_remove_by_user_data@Base 2.12.0 - g_source_remove_poll@Base 2.12.0 - g_source_set_callback@Base 2.12.0 - g_source_set_callback_indirect@Base 2.12.0 - g_source_set_can_recurse@Base 2.12.0 - g_source_set_funcs@Base 2.12.0 - g_source_set_priority@Base 2.12.0 - g_source_unref@Base 2.12.0 - g_spaced_primes_closest@Base 2.12.0 - g_spawn_async@Base 2.12.0 - g_spawn_async_with_pipes@Base 2.12.0 - g_spawn_close_pid@Base 2.12.0 - g_spawn_command_line_async@Base 2.12.0 - g_spawn_command_line_sync@Base 2.12.0 - g_spawn_error_quark@Base 2.12.0 - g_spawn_sync@Base 2.12.0 - g_sprintf@Base 2.12.0 - g_stat@Base 2.12.0 - g_static_mutex_free@Base 2.12.0 - g_static_mutex_get_mutex_impl@Base 2.12.0 - g_static_mutex_init@Base 2.12.0 - g_static_private_free@Base 2.12.0 - g_static_private_get@Base 2.12.0 - g_static_private_init@Base 2.12.0 - g_static_private_set@Base 2.12.0 - g_static_rec_mutex_free@Base 2.12.0 - g_static_rec_mutex_init@Base 2.12.0 - g_static_rec_mutex_lock@Base 2.12.0 - g_static_rec_mutex_lock_full@Base 2.12.0 - g_static_rec_mutex_trylock@Base 2.12.0 - g_static_rec_mutex_unlock@Base 2.12.0 - g_static_rec_mutex_unlock_full@Base 2.12.0 - g_static_rw_lock_free@Base 2.12.0 - g_static_rw_lock_init@Base 2.12.0 - g_static_rw_lock_reader_lock@Base 2.12.0 - g_static_rw_lock_reader_trylock@Base 2.12.0 - g_static_rw_lock_reader_unlock@Base 2.12.0 - g_static_rw_lock_writer_lock@Base 2.12.0 - g_static_rw_lock_writer_trylock@Base 2.12.0 - g_static_rw_lock_writer_unlock@Base 2.12.0 - g_stpcpy@Base 2.12.0 - g_str_equal@Base 2.12.0 - g_str_has_prefix@Base 2.12.0 - g_str_has_suffix@Base 2.12.0 - g_str_hash@Base 2.12.0 - g_strcanon@Base 2.12.0 - g_strcasecmp@Base 2.12.0 - g_strchomp@Base 2.12.0 - g_strchug@Base 2.12.0 - g_strcmp0@Base 2.16.0 - g_strcompress@Base 2.12.0 - g_strconcat@Base 2.12.0 - g_strdelimit@Base 2.12.0 - g_strdown@Base 2.12.0 - g_strdup@Base 2.12.0 - g_strdup_printf@Base 2.12.0 - g_strdup_vprintf@Base 2.12.0 - g_strdupv@Base 2.12.0 - g_strerror@Base 2.12.0 - g_strescape@Base 2.12.0 - g_strfreev@Base 2.12.0 - g_string_append@Base 2.12.0 - g_string_append_c@Base 2.12.0 - g_string_append_len@Base 2.12.0 - g_string_append_printf@Base 2.12.0 - g_string_append_unichar@Base 2.12.0 - g_string_append_uri_escaped@Base 2.16.0 - g_string_append_vprintf@Base 2.14.0 - g_string_ascii_down@Base 2.12.0 - g_string_ascii_up@Base 2.12.0 - g_string_assign@Base 2.12.0 - g_string_chunk_clear@Base 2.14.0 - g_string_chunk_free@Base 2.12.0 - g_string_chunk_insert@Base 2.12.0 - g_string_chunk_insert_const@Base 2.12.0 - g_string_chunk_insert_len@Base 2.12.0 - g_string_chunk_new@Base 2.12.0 - g_string_down@Base 2.12.0 - g_string_equal@Base 2.12.0 - g_string_erase@Base 2.12.0 - g_string_free@Base 2.12.0 - g_string_hash@Base 2.12.0 - g_string_insert@Base 2.12.0 - g_string_insert_c@Base 2.12.0 - g_string_insert_len@Base 2.12.0 - g_string_insert_unichar@Base 2.12.0 - g_string_new@Base 2.12.0 - g_string_new_len@Base 2.12.0 - g_string_overwrite@Base 2.14.0 - g_string_overwrite_len@Base 2.14.0 - g_string_prepend@Base 2.12.0 - g_string_prepend_c@Base 2.12.0 - g_string_prepend_len@Base 2.12.0 - g_string_prepend_unichar@Base 2.12.0 - g_string_printf@Base 2.12.0 - g_string_set_size@Base 2.12.0 - g_string_sized_new@Base 2.12.0 - g_string_truncate@Base 2.12.0 - g_string_up@Base 2.12.0 - g_string_vprintf@Base 2.14.0 - g_strip_context@Base 2.12.0 - g_strjoin@Base 2.12.0 - g_strjoinv@Base 2.12.0 - g_strlcat@Base 2.12.0 - g_strlcpy@Base 2.12.0 - g_strncasecmp@Base 2.12.0 - g_strndup@Base 2.12.0 - g_strnfill@Base 2.12.0 - g_strreverse@Base 2.12.0 - g_strrstr@Base 2.12.0 - g_strrstr_len@Base 2.12.0 - g_strsignal@Base 2.12.0 - g_strsplit@Base 2.12.0 - g_strsplit_set@Base 2.12.0 - g_strstr_len@Base 2.12.0 - g_strtod@Base 2.12.0 - g_strup@Base 2.12.0 - g_strv_length@Base 2.12.0 - g_test_add_data_func@Base 2.16.0 - g_test_add_func@Base 2.16.0 - g_test_add_vtable@Base 2.16.0 - g_test_bug@Base 2.16.0 - g_test_bug_base@Base 2.16.0 - g_test_config_vars@Base 2.16.0 - g_test_create_case@Base 2.16.0 - g_test_create_suite@Base 2.16.0 - g_test_get_root@Base 2.16.0 - g_test_init@Base 2.16.0 - g_test_log_buffer_free@Base 2.16.0 - g_test_log_buffer_new@Base 2.16.0 - g_test_log_buffer_pop@Base 2.16.0 - g_test_log_buffer_push@Base 2.16.0 - g_test_log_msg_free@Base 2.16.0 - g_test_log_set_fatal_handler@Base 2.22.0 - g_test_log_type_name@Base 2.16.0 - g_test_maximized_result@Base 2.16.0 - g_test_message@Base 2.16.0 - g_test_minimized_result@Base 2.16.0 - g_test_queue_destroy@Base 2.16.0 - g_test_queue_free@Base 2.16.0 - g_test_rand_double@Base 2.16.0 - g_test_rand_double_range@Base 2.16.0 - g_test_rand_int@Base 2.16.0 - g_test_rand_int_range@Base 2.16.0 - g_test_run@Base 2.16.0 - g_test_run_suite@Base 2.16.0 - g_test_suite_add@Base 2.16.0 - g_test_suite_add_suite@Base 2.16.0 - g_test_timer_elapsed@Base 2.16.0 - g_test_timer_last@Base 2.16.0 - g_test_timer_start@Base 2.16.0 - g_test_trap_assertions@Base 2.16.0 - g_test_trap_fork@Base 2.16.0 - g_test_trap_has_passed@Base 2.16.0 - g_test_trap_reached_timeout@Base 2.16.0 - g_thread_create_full@Base 2.12.0 - g_thread_error_quark@Base 2.12.0 - g_thread_exit@Base 2.12.0 - g_thread_foreach@Base 2.12.0 - g_thread_functions_for_glib_use@Base 2.12.0 - g_thread_get_initialized@Base 2.20.0 - g_thread_gettime@Base 2.14.0 - g_thread_init_glib@Base 2.12.0 - g_thread_join@Base 2.12.0 - g_thread_pool_free@Base 2.12.0 - g_thread_pool_get_max_idle_time@Base 2.12.0 - g_thread_pool_get_max_threads@Base 2.12.0 - g_thread_pool_get_max_unused_threads@Base 2.12.0 - g_thread_pool_get_num_threads@Base 2.12.0 - g_thread_pool_get_num_unused_threads@Base 2.12.0 - g_thread_pool_new@Base 2.12.0 - g_thread_pool_push@Base 2.12.0 - g_thread_pool_set_max_idle_time@Base 2.12.0 - g_thread_pool_set_max_threads@Base 2.12.0 - g_thread_pool_set_max_unused_threads@Base 2.12.0 - g_thread_pool_set_sort_function@Base 2.12.0 - g_thread_pool_stop_unused_threads@Base 2.12.0 - g_thread_pool_unprocessed@Base 2.12.0 - g_thread_self@Base 2.12.0 - g_thread_set_priority@Base 2.12.0 - g_thread_use_default_impl@Base 2.12.0 - g_threads_got_initialized@Base 2.12.0 - g_time_val_add@Base 2.12.0 - g_time_val_from_iso8601@Base 2.12.0 - g_time_val_to_iso8601@Base 2.12.0 - g_timeout_add@Base 2.12.0 - g_timeout_add_full@Base 2.12.0 - g_timeout_add_seconds@Base 2.14.0 - g_timeout_add_seconds_full@Base 2.14.0 - g_timeout_funcs@Base 2.12.0 - g_timeout_source_new@Base 2.12.0 - g_timeout_source_new_seconds@Base 2.14.0 - g_timer_continue@Base 2.12.0 - g_timer_destroy@Base 2.12.0 - g_timer_elapsed@Base 2.12.0 - g_timer_new@Base 2.12.0 - g_timer_reset@Base 2.12.0 - g_timer_start@Base 2.12.0 - g_timer_stop@Base 2.12.0 - g_trash_stack_height@Base 2.12.0 - g_trash_stack_peek@Base 2.12.0 - g_trash_stack_pop@Base 2.12.0 - g_trash_stack_push@Base 2.12.0 - g_tree_destroy@Base 2.12.0 - g_tree_foreach@Base 2.12.0 - g_tree_height@Base 2.12.0 - g_tree_insert@Base 2.12.0 - g_tree_lookup@Base 2.12.0 - g_tree_lookup_extended@Base 2.12.0 - g_tree_new@Base 2.12.0 - g_tree_new_full@Base 2.12.0 - g_tree_new_with_data@Base 2.12.0 - g_tree_nnodes@Base 2.12.0 - g_tree_ref@Base 2.22.0 - g_tree_remove@Base 2.12.0 - g_tree_replace@Base 2.12.0 - g_tree_search@Base 2.12.0 - g_tree_steal@Base 2.12.0 - g_tree_traverse@Base 2.12.0 - g_tree_unref@Base 2.22.0 - g_try_malloc0@Base 2.12.0 - g_try_malloc@Base 2.12.0 - g_try_realloc@Base 2.12.0 - g_tuples_destroy@Base 2.12.0 - g_tuples_index@Base 2.12.0 - g_ucs4_to_utf16@Base 2.12.0 - g_ucs4_to_utf8@Base 2.12.0 - g_unichar_break_type@Base 2.12.0 - g_unichar_combining_class@Base 2.14.0 - g_unichar_digit_value@Base 2.12.0 - g_unichar_get_mirror_char@Base 2.12.0 - g_unichar_get_script@Base 2.14.0 - g_unichar_isalnum@Base 2.12.0 - g_unichar_isalpha@Base 2.12.0 - g_unichar_iscntrl@Base 2.12.0 - g_unichar_isdefined@Base 2.12.0 - g_unichar_isdigit@Base 2.12.0 - g_unichar_isgraph@Base 2.12.0 - g_unichar_islower@Base 2.12.0 - g_unichar_ismark@Base 2.14.0 - g_unichar_isprint@Base 2.12.0 - g_unichar_ispunct@Base 2.12.0 - g_unichar_isspace@Base 2.12.0 - g_unichar_istitle@Base 2.12.0 - g_unichar_isupper@Base 2.12.0 - g_unichar_iswide@Base 2.12.0 - g_unichar_iswide_cjk@Base 2.12.0 - g_unichar_isxdigit@Base 2.12.0 - g_unichar_iszerowidth@Base 2.14.0 - g_unichar_to_utf8@Base 2.12.0 - g_unichar_tolower@Base 2.12.0 - g_unichar_totitle@Base 2.12.0 - g_unichar_toupper@Base 2.12.0 - g_unichar_type@Base 2.12.0 - g_unichar_validate@Base 2.12.0 - g_unichar_xdigit_value@Base 2.12.0 - g_unicode_canonical_decomposition@Base 2.12.0 - g_unicode_canonical_ordering@Base 2.12.0 - g_unlink@Base 2.12.0 - g_unsetenv@Base 2.12.0 - g_uri_escape_string@Base 2.16.0 - g_uri_list_extract_uris@Base 2.12.0 - g_uri_parse_scheme@Base 2.16.0 - g_uri_unescape_segment@Base 2.16.0 - g_uri_unescape_string@Base 2.16.0 - g_usleep@Base 2.12.0 - g_utf16_to_ucs4@Base 2.12.0 - g_utf16_to_utf8@Base 2.12.0 - g_utf8_casefold@Base 2.12.0 - g_utf8_collate@Base 2.12.0 - g_utf8_collate_key@Base 2.12.0 - g_utf8_collate_key_for_filename@Base 2.12.0 - g_utf8_find_next_char@Base 2.12.0 - g_utf8_find_prev_char@Base 2.12.0 - g_utf8_get_char@Base 2.12.0 - g_utf8_get_char_validated@Base 2.12.0 - g_utf8_normalize@Base 2.12.0 - g_utf8_offset_to_pointer@Base 2.12.0 - g_utf8_pointer_to_offset@Base 2.12.0 - g_utf8_prev_char@Base 2.12.0 - g_utf8_skip@Base 2.12.0 - g_utf8_strchr@Base 2.12.0 - g_utf8_strdown@Base 2.12.0 - g_utf8_strlen@Base 2.12.0 - g_utf8_strncpy@Base 2.12.0 - g_utf8_strrchr@Base 2.12.0 - g_utf8_strreverse@Base 2.12.0 - g_utf8_strup@Base 2.12.0 - g_utf8_to_ucs4@Base 2.12.0 - g_utf8_to_ucs4_fast@Base 2.12.0 - g_utf8_to_utf16@Base 2.12.0 - g_utf8_validate@Base 2.12.0 - g_utime@Base 2.18.0 - g_vasprintf@Base 2.12.0 - g_vfprintf@Base 2.12.0 - g_vprintf@Base 2.12.0 - g_vsnprintf@Base 2.12.0 - g_vsprintf@Base 2.12.0 - g_warn_message@Base 2.16.0 - glib_binary_age@Base 2.12.0 - glib_check_version@Base 2.12.0 - glib_gettext@Base 2.16.0 - glib_interface_age@Base 2.12.0 - glib_major_version@Base 2.12.0 - glib_mem_profiler_table@Base 2.12.0 - glib_micro_version@Base 2.12.0 - glib_minor_version@Base 2.12.0 - glib_on_error_halt@Base 2.12.0 -libgmodule-2.0.so.0 libglib2.0-0 #MINVER# -* Build-Depends-Package: libglib2.0-dev - g_module_build_path@Base 2.12.0 - g_module_close@Base 2.12.0 - g_module_error@Base 2.12.0 - g_module_make_resident@Base 2.12.0 - g_module_name@Base 2.12.0 - g_module_open@Base 2.12.0 - g_module_supported@Base 2.12.0 - g_module_symbol@Base 2.12.0 -libgobject-2.0.so.0 libglib2.0-0 #MINVER# -* Build-Depends-Package: libglib2.0-dev - g_array_get_type@Base 2.22.0 - g_boxed_copy@Base 2.12.0 - g_boxed_free@Base 2.12.0 - g_boxed_type_register_static@Base 2.12.0 - g_byte_array_get_type@Base 2.22.0 - g_cclosure_marshal_BOOLEAN__FLAGS@Base 2.12.0 - g_cclosure_marshal_STRING__OBJECT_POINTER@Base 2.12.0 - g_cclosure_marshal_VOID__BOOLEAN@Base 2.12.0 - g_cclosure_marshal_VOID__BOXED@Base 2.12.0 - g_cclosure_marshal_VOID__CHAR@Base 2.12.0 - g_cclosure_marshal_VOID__DOUBLE@Base 2.12.0 - g_cclosure_marshal_VOID__ENUM@Base 2.12.0 - g_cclosure_marshal_VOID__FLAGS@Base 2.12.0 - g_cclosure_marshal_VOID__FLOAT@Base 2.12.0 - g_cclosure_marshal_VOID__INT@Base 2.12.0 - g_cclosure_marshal_VOID__LONG@Base 2.12.0 - g_cclosure_marshal_VOID__OBJECT@Base 2.12.0 - g_cclosure_marshal_VOID__PARAM@Base 2.12.0 - g_cclosure_marshal_VOID__POINTER@Base 2.12.0 - g_cclosure_marshal_VOID__STRING@Base 2.12.0 - g_cclosure_marshal_VOID__UCHAR@Base 2.12.0 - g_cclosure_marshal_VOID__UINT@Base 2.12.0 - g_cclosure_marshal_VOID__UINT_POINTER@Base 2.12.0 - g_cclosure_marshal_VOID__ULONG@Base 2.12.0 - g_cclosure_marshal_VOID__VOID@Base 2.12.0 - g_cclosure_new@Base 2.12.0 - g_cclosure_new_object@Base 2.12.0 - g_cclosure_new_object_swap@Base 2.12.0 - g_cclosure_new_swap@Base 2.12.0 - g_closure_add_finalize_notifier@Base 2.12.0 - g_closure_add_invalidate_notifier@Base 2.12.0 - g_closure_add_marshal_guards@Base 2.12.0 - g_closure_get_type@Base 2.12.0 - g_closure_invalidate@Base 2.12.0 - g_closure_invoke@Base 2.12.0 - g_closure_new_object@Base 2.12.0 - g_closure_new_simple@Base 2.12.0 - g_closure_ref@Base 2.12.0 - g_closure_remove_finalize_notifier@Base 2.12.0 - g_closure_remove_invalidate_notifier@Base 2.12.0 - g_closure_set_marshal@Base 2.12.0 - g_closure_set_meta_marshal@Base 2.12.0 - g_closure_sink@Base 2.12.0 - g_closure_unref@Base 2.12.0 - g_date_get_type@Base 2.12.0 - g_enum_complete_type_info@Base 2.12.0 - g_enum_get_value@Base 2.12.0 - g_enum_get_value_by_name@Base 2.12.0 - g_enum_get_value_by_nick@Base 2.12.0 - g_enum_register_static@Base 2.12.0 - g_flags_complete_type_info@Base 2.12.0 - g_flags_get_first_value@Base 2.12.0 - g_flags_get_value_by_name@Base 2.12.0 - g_flags_get_value_by_nick@Base 2.12.0 - g_flags_register_static@Base 2.12.0 - g_gstring_get_type@Base 2.12.0 - g_gtype_get_type@Base 2.12.0 - g_hash_table_get_type@Base 2.12.0 - g_initially_unowned_get_type@Base 2.12.0 - g_io_channel_get_type@Base 2.12.0 - g_io_condition_get_type@Base 2.12.0 - g_object_add_toggle_ref@Base 2.12.0 - g_object_add_weak_pointer@Base 2.12.0 - g_object_class_find_property@Base 2.12.0 - g_object_class_install_property@Base 2.12.0 - g_object_class_list_properties@Base 2.12.0 - g_object_class_override_property@Base 2.12.0 - g_object_compat_control@Base 2.12.0 - g_object_connect@Base 2.12.0 - g_object_disconnect@Base 2.12.0 - g_object_force_floating@Base 2.12.0 - g_object_freeze_notify@Base 2.12.0 - g_object_get@Base 2.12.0 - g_object_get_data@Base 2.12.0 - g_object_get_property@Base 2.12.0 - g_object_get_qdata@Base 2.12.0 - g_object_get_type@Base 2.18.0 - g_object_get_valist@Base 2.12.0 - g_object_interface_find_property@Base 2.12.0 - g_object_interface_install_property@Base 2.12.0 - g_object_interface_list_properties@Base 2.12.0 - g_object_is_floating@Base 2.12.0 - g_object_new@Base 2.12.0 - g_object_new_valist@Base 2.12.0 - g_object_newv@Base 2.12.0 - g_object_notify@Base 2.12.0 - g_object_ref@Base 2.12.0 - g_object_ref_sink@Base 2.12.0 - g_object_remove_toggle_ref@Base 2.12.0 - g_object_remove_weak_pointer@Base 2.12.0 - g_object_run_dispose@Base 2.12.0 - g_object_set@Base 2.12.0 - g_object_set_data@Base 2.12.0 - g_object_set_data_full@Base 2.12.0 - g_object_set_property@Base 2.12.0 - g_object_set_qdata@Base 2.12.0 - g_object_set_qdata_full@Base 2.12.0 - g_object_set_valist@Base 2.12.0 - g_object_steal_data@Base 2.12.0 - g_object_steal_qdata@Base 2.12.0 - g_object_thaw_notify@Base 2.12.0 - g_object_unref@Base 2.12.0 - g_object_watch_closure@Base 2.12.0 - g_object_weak_ref@Base 2.12.0 - g_object_weak_unref@Base 2.12.0 - g_param_spec_boolean@Base 2.12.0 - g_param_spec_boxed@Base 2.12.0 - g_param_spec_char@Base 2.12.0 - g_param_spec_double@Base 2.12.0 - g_param_spec_enum@Base 2.12.0 - g_param_spec_flags@Base 2.12.0 - g_param_spec_float@Base 2.12.0 - g_param_spec_get_blurb@Base 2.12.0 - g_param_spec_get_name@Base 2.12.0 - g_param_spec_get_nick@Base 2.12.0 - g_param_spec_get_qdata@Base 2.12.0 - g_param_spec_get_redirect_target@Base 2.12.0 - g_param_spec_gtype@Base 2.12.0 - g_param_spec_int64@Base 2.12.0 - g_param_spec_int@Base 2.12.0 - g_param_spec_internal@Base 2.12.0 - g_param_spec_long@Base 2.12.0 - g_param_spec_object@Base 2.12.0 - g_param_spec_override@Base 2.12.0 - g_param_spec_param@Base 2.12.0 - g_param_spec_pointer@Base 2.12.0 - g_param_spec_pool_insert@Base 2.12.0 - g_param_spec_pool_list@Base 2.12.0 - g_param_spec_pool_list_owned@Base 2.12.0 - g_param_spec_pool_lookup@Base 2.12.0 - g_param_spec_pool_new@Base 2.12.0 - g_param_spec_pool_remove@Base 2.12.0 - g_param_spec_ref@Base 2.12.0 - g_param_spec_ref_sink@Base 2.12.0 - g_param_spec_set_qdata@Base 2.12.0 - g_param_spec_set_qdata_full@Base 2.12.0 - g_param_spec_sink@Base 2.12.0 - g_param_spec_steal_qdata@Base 2.12.0 - g_param_spec_string@Base 2.12.0 - g_param_spec_types@Base 2.12.0 - g_param_spec_uchar@Base 2.12.0 - g_param_spec_uint64@Base 2.12.0 - g_param_spec_uint@Base 2.12.0 - g_param_spec_ulong@Base 2.12.0 - g_param_spec_unichar@Base 2.12.0 - g_param_spec_unref@Base 2.12.0 - g_param_spec_value_array@Base 2.12.0 - g_param_type_register_static@Base 2.12.0 - g_param_value_convert@Base 2.12.0 - g_param_value_defaults@Base 2.12.0 - g_param_value_set_default@Base 2.12.0 - g_param_value_validate@Base 2.12.0 - g_param_values_cmp@Base 2.12.0 - g_pointer_type_register_static@Base 2.12.0 - g_ptr_array_get_type@Base 2.22.0 - g_regex_get_type@Base 2.14.0 - g_signal_accumulator_true_handled@Base 2.12.0 - g_signal_add_emission_hook@Base 2.12.0 - g_signal_chain_from_overridden@Base 2.12.0 - g_signal_chain_from_overridden_handler@Base 2.18.0 - g_signal_connect_closure@Base 2.12.0 - g_signal_connect_closure_by_id@Base 2.12.0 - g_signal_connect_data@Base 2.12.0 - g_signal_connect_object@Base 2.12.0 - g_signal_emit@Base 2.12.0 - g_signal_emit_by_name@Base 2.12.0 - g_signal_emit_valist@Base 2.12.0 - g_signal_emitv@Base 2.12.0 - g_signal_get_invocation_hint@Base 2.12.0 - g_signal_handler_block@Base 2.12.0 - g_signal_handler_disconnect@Base 2.12.0 - g_signal_handler_find@Base 2.12.0 - g_signal_handler_is_connected@Base 2.12.0 - g_signal_handler_unblock@Base 2.12.0 - g_signal_handlers_block_matched@Base 2.12.0 - g_signal_handlers_destroy@Base 2.12.0 - g_signal_handlers_disconnect_matched@Base 2.12.0 - g_signal_handlers_unblock_matched@Base 2.12.0 - g_signal_has_handler_pending@Base 2.12.0 - g_signal_list_ids@Base 2.12.0 - g_signal_lookup@Base 2.12.0 - g_signal_name@Base 2.12.0 - g_signal_new@Base 2.12.0 - g_signal_new_class_handler@Base 2.18.0 - g_signal_new_valist@Base 2.12.0 - g_signal_newv@Base 2.12.0 - g_signal_override_class_closure@Base 2.12.0 - g_signal_override_class_handler@Base 2.18.0 - g_signal_parse_name@Base 2.12.0 - g_signal_query@Base 2.12.0 - g_signal_remove_emission_hook@Base 2.12.0 - g_signal_stop_emission@Base 2.12.0 - g_signal_stop_emission_by_name@Base 2.12.0 - g_signal_type_cclosure_new@Base 2.12.0 - g_source_set_closure@Base 2.12.0 - g_strdup_value_contents@Base 2.12.0 - g_strv_get_type@Base 2.12.0 - g_type_add_class_cache_func@Base 2.12.0 - g_type_add_interface_check@Base 2.12.0 - g_type_add_interface_dynamic@Base 2.12.0 - g_type_add_interface_static@Base 2.12.0 - g_type_check_class_cast@Base 2.12.0 - g_type_check_class_is_a@Base 2.12.0 - g_type_check_instance@Base 2.12.0 - g_type_check_instance_cast@Base 2.12.0 - g_type_check_instance_is_a@Base 2.12.0 - g_type_check_is_value_type@Base 2.12.0 - g_type_check_value@Base 2.12.0 - g_type_check_value_holds@Base 2.12.0 - g_type_children@Base 2.12.0 - g_type_class_add_private@Base 2.12.0 - g_type_class_peek@Base 2.12.0 - g_type_class_peek_parent@Base 2.12.0 - g_type_class_peek_static@Base 2.12.0 - g_type_class_ref@Base 2.12.0 - g_type_class_unref@Base 2.12.0 - g_type_class_unref_uncached@Base 2.12.0 - g_type_create_instance@Base 2.12.0 - g_type_default_interface_peek@Base 2.12.0 - g_type_default_interface_ref@Base 2.12.0 - g_type_default_interface_unref@Base 2.12.0 - g_type_depth@Base 2.12.0 - g_type_free_instance@Base 2.12.0 - g_type_from_name@Base 2.12.0 - g_type_fundamental@Base 2.12.0 - g_type_fundamental_next@Base 2.12.0 - g_type_get_plugin@Base 2.12.0 - g_type_get_qdata@Base 2.12.0 - g_type_init@Base 2.12.0 - g_type_init_with_debug_flags@Base 2.12.0 - g_type_instance_get_private@Base 2.12.0 - g_type_interface_add_prerequisite@Base 2.12.0 - g_type_interface_get_plugin@Base 2.12.0 - g_type_interface_peek@Base 2.12.0 - g_type_interface_peek_parent@Base 2.12.0 - g_type_interface_prerequisites@Base 2.12.0 - g_type_interfaces@Base 2.12.0 - g_type_is_a@Base 2.12.0 - g_type_module_add_interface@Base 2.12.0 - g_type_module_get_type@Base 2.12.0 - g_type_module_register_enum@Base 2.12.0 - g_type_module_register_flags@Base 2.12.0 - g_type_module_register_type@Base 2.12.0 - g_type_module_set_name@Base 2.12.0 - g_type_module_unuse@Base 2.12.0 - g_type_module_use@Base 2.12.0 - g_type_name@Base 2.12.0 - g_type_name_from_class@Base 2.12.0 - g_type_name_from_instance@Base 2.12.0 - g_type_next_base@Base 2.12.0 - g_type_parent@Base 2.12.0 - g_type_plugin_complete_interface_info@Base 2.12.0 - g_type_plugin_complete_type_info@Base 2.12.0 - g_type_plugin_get_type@Base 2.12.0 - g_type_plugin_unuse@Base 2.12.0 - g_type_plugin_use@Base 2.12.0 - g_type_qname@Base 2.12.0 - g_type_query@Base 2.12.0 - g_type_register_dynamic@Base 2.12.0 - g_type_register_fundamental@Base 2.12.0 - g_type_register_static@Base 2.12.0 - g_type_register_static_simple@Base 2.12.0 - g_type_remove_class_cache_func@Base 2.12.0 - g_type_remove_interface_check@Base 2.12.0 - g_type_set_qdata@Base 2.12.0 - g_type_test_flags@Base 2.12.0 - g_type_value_table_peek@Base 2.12.0 - g_value_array_append@Base 2.12.0 - g_value_array_copy@Base 2.12.0 - g_value_array_free@Base 2.12.0 - g_value_array_get_nth@Base 2.12.0 - g_value_array_get_type@Base 2.12.0 - g_value_array_insert@Base 2.12.0 - g_value_array_new@Base 2.12.0 - g_value_array_prepend@Base 2.12.0 - g_value_array_remove@Base 2.12.0 - g_value_array_sort@Base 2.12.0 - g_value_array_sort_with_data@Base 2.12.0 - g_value_copy@Base 2.12.0 - g_value_dup_boxed@Base 2.12.0 - g_value_dup_object@Base 2.12.0 - g_value_dup_param@Base 2.12.0 - g_value_dup_string@Base 2.12.0 - g_value_fits_pointer@Base 2.12.0 - g_value_get_boolean@Base 2.12.0 - g_value_get_boxed@Base 2.12.0 - g_value_get_char@Base 2.12.0 - g_value_get_double@Base 2.12.0 - g_value_get_enum@Base 2.12.0 - g_value_get_flags@Base 2.12.0 - g_value_get_float@Base 2.12.0 - g_value_get_gtype@Base 2.12.0 - g_value_get_int64@Base 2.12.0 - g_value_get_int@Base 2.12.0 - g_value_get_long@Base 2.12.0 - g_value_get_object@Base 2.12.0 - g_value_get_param@Base 2.12.0 - g_value_get_pointer@Base 2.12.0 - g_value_get_string@Base 2.12.0 - g_value_get_type@Base 2.12.0 - g_value_get_uchar@Base 2.12.0 - g_value_get_uint64@Base 2.12.0 - g_value_get_uint@Base 2.12.0 - g_value_get_ulong@Base 2.12.0 - g_value_init@Base 2.12.0 - g_value_peek_pointer@Base 2.12.0 - g_value_register_transform_func@Base 2.12.0 - g_value_reset@Base 2.12.0 - g_value_set_boolean@Base 2.12.0 - g_value_set_boxed@Base 2.12.0 - g_value_set_boxed_take_ownership@Base 2.12.0 - g_value_set_char@Base 2.12.0 - g_value_set_double@Base 2.12.0 - g_value_set_enum@Base 2.12.0 - g_value_set_flags@Base 2.12.0 - g_value_set_float@Base 2.12.0 - g_value_set_gtype@Base 2.12.0 - g_value_set_instance@Base 2.12.0 - g_value_set_int64@Base 2.12.0 - g_value_set_int@Base 2.12.0 - g_value_set_long@Base 2.12.0 - g_value_set_object@Base 2.12.0 - g_value_set_object_take_ownership@Base 2.12.0 - g_value_set_param@Base 2.12.0 - g_value_set_param_take_ownership@Base 2.12.0 - g_value_set_pointer@Base 2.12.0 - g_value_set_static_boxed@Base 2.12.0 - g_value_set_static_string@Base 2.12.0 - g_value_set_string@Base 2.12.0 - g_value_set_string_take_ownership@Base 2.12.0 - g_value_set_uchar@Base 2.12.0 - g_value_set_uint64@Base 2.12.0 - g_value_set_uint@Base 2.12.0 - g_value_set_ulong@Base 2.12.0 - g_value_take_boxed@Base 2.12.0 - g_value_take_object@Base 2.12.0 - g_value_take_param@Base 2.12.0 - g_value_take_string@Base 2.12.0 - g_value_transform@Base 2.12.0 - g_value_type_compatible@Base 2.12.0 - g_value_type_transformable@Base 2.12.0 - g_value_unset@Base 2.12.0 -libgthread-2.0.so.0 libglib2.0-0 #MINVER# -* Build-Depends-Package: libglib2.0-dev - g_thread_init@Base 2.12.0 - g_thread_init_with_errorcheck_mutexes@Base 2.12.0 diff --git a/debian/libglib2.0-data.install b/debian/libglib2.0-data.install deleted file mode 100644 index 362af39..0000000 --- a/debian/libglib2.0-data.install +++ /dev/null @@ -1 +0,0 @@ -debian/install/deb/usr/share/locale usr/share diff --git a/debian/libglib2.0-data.links b/debian/libglib2.0-data.links deleted file mode 100644 index 908ece5..0000000 --- a/debian/libglib2.0-data.links +++ /dev/null @@ -1 +0,0 @@ -usr/share/doc/libglib2.0-0 usr/share/doc/libglib2.0-data diff --git a/debian/libglib2.0-dbg.install b/debian/libglib2.0-dbg.install deleted file mode 100644 index 75989d4..0000000 --- a/debian/libglib2.0-dbg.install +++ /dev/null @@ -1 +0,0 @@ -debian/install/deb/usr/lib/debug/lib*.so* usr/lib/debug diff --git a/debian/libglib2.0-dev.README.Debian b/debian/libglib2.0-dev.README.Debian deleted file mode 100644 index b36c218..0000000 --- a/debian/libglib2.0-dev.README.Debian +++ /dev/null @@ -1,15 +0,0 @@ -GLib2.0 for Debian -------------------- - -Static libraries issue: -Right now glib2.0 provides some static libraries. If your application -uses g_module* functions or other libraries uses g_module* functions and -your application link it, Please don't statically link this libraries. -You may get some strange proglem between static-linked application and -dynamic-loaded modules, g_module* provides the feature for dynamically -loading some modules. -This is well-known bug, so please don't file a bug report. - - - -- Akira TAGOH , Thu, 11 Apr 2002 19:28:50 +0900 - diff --git a/debian/libglib2.0-dev.install b/debian/libglib2.0-dev.install deleted file mode 100644 index d5b6639..0000000 --- a/debian/libglib2.0-dev.install +++ /dev/null @@ -1,12 +0,0 @@ -debian/install/deb/usr/include/* usr/include -debian/install/deb/usr/lib/lib*.{la,a} usr/lib -debian/install/deb/usr/lib/libg{object,module,thread,io}*.so usr/lib -debian/install/deb/usr/lib/glib-2.0 usr/lib -debian/install/deb/usr/lib/pkgconfig usr/lib -debian/install/deb/usr/share/aclocal usr/share -debian/install/deb/usr/share/glib-2.0/gettext usr/share/glib-2.0 -debian/install/deb/usr/share/man/man1/glib-genmarshal.1* usr/share/man/man1 -debian/install/deb/usr/share/man/man1/glib-mkenums.1* usr/share/man/man1 -debian/install/deb/usr/share/man/man1/gobject-query.1* usr/share/man/man1 -debian/install/deb/usr/share/man/man1/glib-gettextize.1* usr/share/man/man1 -debian/install/deb/usr/bin usr diff --git a/debian/libglib2.0-dev.links b/debian/libglib2.0-dev.links deleted file mode 100755 index aa0e890..0000000 --- a/debian/libglib2.0-dev.links +++ /dev/null @@ -1,2 +0,0 @@ -usr/share/doc/libglib2.0-0 usr/share/doc/libglib2.0-dev -usr/lib/libglib-2.0.so.0 usr/lib/libglib-2.0.so diff --git a/debian/libglib2.0-doc.doc-base.gio b/debian/libglib2.0-doc.doc-base.gio deleted file mode 100644 index 72ffc95..0000000 --- a/debian/libglib2.0-doc.doc-base.gio +++ /dev/null @@ -1,14 +0,0 @@ -Document: gio -Title: GIO (GLib) Reference Manual -Author: Damon Chaplin et al. -Abstract: GIO is striving to provide a modern, easy-to-use VFS API that sits at - the right level in the library stack. The goal is to overcome the shortcomings - of GnomeVFS and provide an API that is so good that developers prefer it over - raw POSIX calls. Among other things that means using GObject. It also means - not cloning the POSIX API, but providing higher-level, document-centric - interfaces. -Section: Programming/C - -Format: HTML -Index: /usr/share/doc/libglib2.0-doc/gio/index.html -Files: /usr/share/doc/libglib2.0-doc/gio/*.html diff --git a/debian/libglib2.0-doc.doc-base.glib b/debian/libglib2.0-doc.doc-base.glib deleted file mode 100644 index d611198..0000000 --- a/debian/libglib2.0-doc.doc-base.glib +++ /dev/null @@ -1,12 +0,0 @@ -Document: glib -Title: GLib Reference Manual -Author: Damon Chaplin et al. -Abstract: The GLib C library is used in GTK+ and GNOME - programs as a general-purpose set of functions for hash, tree, list, - and string operations, which C is oddly lacking whatsoever in any - of its standard libraries. -Section: Programming/C - -Format: HTML -Index: /usr/share/doc/libglib2.0-doc/glib/index.html -Files: /usr/share/doc/libglib2.0-doc/glib/*.html diff --git a/debian/libglib2.0-doc.doc-base.gobject b/debian/libglib2.0-doc.doc-base.gobject deleted file mode 100644 index adcc6f0..0000000 --- a/debian/libglib2.0-doc.doc-base.gobject +++ /dev/null @@ -1,15 +0,0 @@ -Document: gobject -Title: GObject (GLib) Reference Manual -Author: Damon Chaplin et al. -Abstract: Most modern programming languages come with their own native object - systems and additional fundamental algorithmic language constructs. - Just as GLib serves as an implementation of such fundamental - types and algorithms (linked lists, hash tables and so forth), the - GLib Object System provides the required implementations of a - flexible extensible and intentionally easy to map (into other - languages) object oriented framework for C. -Section: Programming/C - -Format: HTML -Index: /usr/share/doc/libglib2.0-doc/gobject/index.html -Files: /usr/share/doc/libglib2.0-doc/gobject/*.html diff --git a/debian/libglib2.0-doc.install b/debian/libglib2.0-doc.install deleted file mode 100644 index 19e5907..0000000 --- a/debian/libglib2.0-doc.install +++ /dev/null @@ -1 +0,0 @@ -debian/install/deb/usr/share/doc/libglib2.0-doc usr/share/doc diff --git a/debian/libglib2.0-doc.links b/debian/libglib2.0-doc.links deleted file mode 100644 index b4b66f0..0000000 --- a/debian/libglib2.0-doc.links +++ /dev/null @@ -1,4 +0,0 @@ -usr/share/doc/libgtk2.0-doc/gtk usr/share/doc/libglib2.0-doc/gtk -usr/share/doc/libglib2.0-doc/gio usr/share/gtk-doc/html/gio -usr/share/doc/libglib2.0-doc/glib usr/share/gtk-doc/html/glib -usr/share/doc/libglib2.0-doc/gobject usr/share/gtk-doc/html/gobject diff --git a/debian/libglib2.0-udeb.install b/debian/libglib2.0-udeb.install deleted file mode 100644 index e10e3e7..0000000 --- a/debian/libglib2.0-udeb.install +++ /dev/null @@ -1,2 +0,0 @@ -debian/install/udeb/usr/lib/lib*.so.* usr/lib -debian/install/udeb/usr/share/locale usr/share diff --git a/debian/lintian-overrides/libglib2.0-0-refdbg b/debian/lintian-overrides/libglib2.0-0-refdbg deleted file mode 100644 index 622f0a2..0000000 --- a/debian/lintian-overrides/libglib2.0-0-refdbg +++ /dev/null @@ -1 +0,0 @@ -libglib2.0-0-refdbg binary: unstripped-binary-or-object diff --git a/debian/patches/01_gettext-desktopfiles.patch b/debian/patches/01_gettext-desktopfiles.patch deleted file mode 100644 index 76b4ee4..0000000 --- a/debian/patches/01_gettext-desktopfiles.patch +++ /dev/null @@ -1,145 +0,0 @@ -# Description: If a .desktop file does not have inline translations, fall back to calling gettext. -# Ubuntu: https://launchpad.net/bugs/3935 -# Upstream: http://bugzilla.gnome.org/show_bug.cgi?id=569829 -Index: glib2.0-2.19.5/glib/gkeyfile.c -=================================================================== ---- glib2.0-2.19.5.orig/glib/gkeyfile.c 2009-01-30 15:34:03.000000000 +0100 -+++ glib2.0-2.19.5/glib/gkeyfile.c 2009-01-30 15:34:32.000000000 +0100 -@@ -83,6 +83,7 @@ - GKeyFileFlags flags; - - gchar **locales; -+ gchar *gettext_domain; - }; - - typedef struct _GKeyFileKeyValuePair GKeyFileKeyValuePair; -@@ -209,6 +210,7 @@ - key_file->list_separator = ';'; - key_file->flags = 0; - key_file->locales = g_strdupv ((gchar **)g_get_language_names ()); -+ key_file->gettext_domain = NULL; - } - - static void -@@ -228,6 +230,12 @@ - key_file->parse_buffer = NULL; - } - -+ if (key_file->gettext_domain) -+ { -+ g_free (key_file->gettext_domain); -+ key_file->gettext_domain = NULL; -+ } -+ - tmp = key_file->groups; - while (tmp != NULL) - { -@@ -448,6 +456,11 @@ - return FALSE; - } - -+ key_file->gettext_domain = g_key_file_get_string (key_file, -+ G_KEY_FILE_DESKTOP_GROUP, -+ G_KEY_FILE_DESKTOP_KEY_GETTEXT_DOMAIN, -+ NULL); -+ - return TRUE; - } - -@@ -554,6 +567,11 @@ - return FALSE; - } - -+ key_file->gettext_domain = g_key_file_get_string (key_file, -+ G_KEY_FILE_DESKTOP_GROUP, -+ G_KEY_FILE_DESKTOP_KEY_GETTEXT_DOMAIN, -+ NULL); -+ - return TRUE; - } - -@@ -1662,6 +1680,8 @@ - GError *key_file_error; - gchar **languages; - gboolean free_languages = FALSE; -+ gboolean try_gettext = FALSE; -+ const gchar *msg_locale; - gint i; - - g_return_val_if_fail (key_file != NULL, NULL); -@@ -1692,6 +1712,23 @@ - free_languages = FALSE; - } - -+ /* we're only interested in gettext translation if we don't have a -+ * translation in the .desktop file itself and if the key is one of the keys -+ * we know we want to translate: Name, GenericName, Comment. Blindly doing -+ * this for all keys can give strange result for the icons, since the Icon is -+ * a locale string in the spec, eg. We also only get translation in the mo -+ * file if the requested locale is the LC_MESSAGES one. Ideally, we should do -+ * more and change LC_MESSAGES to use the requested locale, but there's no -+ * guarantee it's installed on the system and it might have some -+ * side-effects. Since this is a corner case, let's ignore it. */ -+ -+ msg_locale = setlocale (LC_MESSAGES, NULL); -+ try_gettext = msg_locale && key_file->gettext_domain && -+ strcmp (group_name, G_KEY_FILE_DESKTOP_GROUP) == 0 && -+ (strcmp (key, G_KEY_FILE_DESKTOP_KEY_NAME) == 0 || -+ strcmp (key, G_KEY_FILE_DESKTOP_KEY_GENERIC_NAME) == 0 || -+ strcmp (key, G_KEY_FILE_DESKTOP_KEY_COMMENT) == 0); -+ - for (i = 0; languages[i]; i++) - { - candidate_key = g_strdup_printf ("%s[%s]", key, languages[i]); -@@ -1708,6 +1745,39 @@ - translated_value = NULL; - } - -+ /* Fallback to gettext */ -+ if (try_gettext && !translated_value) -+ { -+ gchar *orig_value = g_key_file_get_string (key_file, group_name, key, NULL); -+ -+ if (orig_value) -+ { -+ gboolean codeset_set; -+ const gchar *translated; -+ gboolean has_gettext; -+ -+ codeset_set = bind_textdomain_codeset (key_file->gettext_domain, "UTF-8") != NULL; -+ translated = NULL; -+ -+ translated = g_dgettext (key_file->gettext_domain, -+ orig_value); -+ has_gettext = translated != orig_value; -+ -+ g_free (orig_value); -+ -+ if (has_gettext) -+ { -+ if (codeset_set) -+ translated_value = g_strdup (translated); -+ else -+ translated_value = g_locale_to_utf8 (translated, -+ -1, NULL, NULL, NULL); -+ } -+ else -+ translated_value = NULL; -+ } -+ } -+ - /* Fallback to untranslated key - */ - if (!translated_value) -Index: glib2.0-2.19.5/glib/gkeyfile.h -=================================================================== ---- glib2.0-2.19.5.orig/glib/gkeyfile.h 2009-01-30 15:34:03.000000000 +0100 -+++ glib2.0-2.19.5/glib/gkeyfile.h 2009-01-30 15:34:32.000000000 +0100 -@@ -240,6 +240,7 @@ - #define G_KEY_FILE_DESKTOP_KEY_STARTUP_NOTIFY "StartupNotify" - #define G_KEY_FILE_DESKTOP_KEY_STARTUP_WM_CLASS "StartupWMClass" - #define G_KEY_FILE_DESKTOP_KEY_URL "URL" -+#define G_KEY_FILE_DESKTOP_KEY_GETTEXT_DOMAIN "X-GNOME-Gettext-Domain" - - #define G_KEY_FILE_DESKTOP_TYPE_APPLICATION "Application" - #define G_KEY_FILE_DESKTOP_TYPE_LINK "Link" diff --git a/debian/patches/02_gettext-desktopfiles-ubuntu.patch b/debian/patches/02_gettext-desktopfiles-ubuntu.patch deleted file mode 100644 index b493861..0000000 --- a/debian/patches/02_gettext-desktopfiles-ubuntu.patch +++ /dev/null @@ -1,40 +0,0 @@ -# Description: Provide backwards compatibility for 01_gettext-desktopfiles.patch for X-{Debian,Ubuntu}-Gettext-Domain -# UbuntuSpecific: 01_gettext-desktopfiles.patch was changed to use X-GNOME-, so this is necessary until all our .desktop files are converted -Index: glib2.0-2.19.5/glib/gkeyfile.c -=================================================================== ---- glib2.0-2.19.5.orig/glib/gkeyfile.c 2009-01-30 15:53:09.000000000 +0100 -+++ glib2.0-2.19.5/glib/gkeyfile.c 2009-01-30 15:55:46.000000000 +0100 -@@ -460,6 +460,16 @@ - G_KEY_FILE_DESKTOP_GROUP, - G_KEY_FILE_DESKTOP_KEY_GETTEXT_DOMAIN, - NULL); -+ if (!key_file->gettext_domain) -+ key_file->gettext_domain = g_key_file_get_string (key_file, -+ G_KEY_FILE_DESKTOP_GROUP, -+ "X-Ubuntu-Gettext-Domain", -+ NULL); -+ if (!key_file->gettext_domain) -+ key_file->gettext_domain = g_key_file_get_string (key_file, -+ G_KEY_FILE_DESKTOP_GROUP, -+ "X-Debian-Gettext-Domain", -+ NULL); - - return TRUE; - } -@@ -571,6 +581,16 @@ - G_KEY_FILE_DESKTOP_GROUP, - G_KEY_FILE_DESKTOP_KEY_GETTEXT_DOMAIN, - NULL); -+ if (!key_file->gettext_domain) -+ key_file->gettext_domain = g_key_file_get_string (key_file, -+ G_KEY_FILE_DESKTOP_GROUP, -+ "X-Ubuntu-Gettext-Domain", -+ NULL); -+ if (!key_file->gettext_domain) -+ key_file->gettext_domain = g_key_file_get_string (key_file, -+ G_KEY_FILE_DESKTOP_GROUP, -+ "X-Debian-Gettext-Domain", -+ NULL); - - return TRUE; - } diff --git a/debian/patches/03_blacklist-directories.patch b/debian/patches/03_blacklist-directories.patch deleted file mode 100644 index fb386a7..0000000 --- a/debian/patches/03_blacklist-directories.patch +++ /dev/null @@ -1,24 +0,0 @@ ---- glib2.0-2.18.0.orig/gio/gunixmounts.c 2008-09-02 17:09:19.000000000 +0200 -+++ glib2.0-2.18.0/gio/gunixmounts.c 2008-09-03 00:53:29.000000000 +0200 -@@ -221,6 +221,8 @@ - "/home", - "/lib", - "/lib64", -+ "/live/cow", -+ "/live/image", - "/media", - "/mnt", - "/opt", -@@ -231,7 +233,12 @@ - "/usr", - "/usr/local", - "/var", -+ "/var/crash", -+ "/var/local", -+ "/var/log", - "/var/log/audit", /* https://bugzilla.redhat.com/show_bug.cgi?id=333041 */ -+ "/var/mail", -+ "/var/run", - "/var/tmp", /* https://bugzilla.redhat.com/show_bug.cgi?id=335241 */ - "/proc", - "/sbin", diff --git a/debian/patches/04_homedir_env.patch b/debian/patches/04_homedir_env.patch deleted file mode 100644 index 84768a9..0000000 --- a/debian/patches/04_homedir_env.patch +++ /dev/null @@ -1,59 +0,0 @@ -Index: glib-2.18.3/docs/reference/glib/running.sgml -=================================================================== ---- glib-2.18.3.orig/docs/reference/glib/running.sgml 2008-11-26 12:01:53.559365436 +0100 -+++ glib-2.18.3/docs/reference/glib/running.sgml 2008-11-26 12:25:58.155366255 +0100 -@@ -194,6 +194,22 @@ variables like LANG, - - -+ -+ <envar>G_HOME</envar> -+ -+ -+ For various reasons, GLib applications ignore the HOME -+ environment variable on Unix systems and will use the user directory -+ as specified by the passwd entry, which is more -+ reliable. -+ -+ -+ The G_HOME environment variable will override any -+ other setting for the home directory. It is not meant for daily usage, -+ but it is useful in testing or building environments. -+ -+ -+ - - - -Index: glib-2.18.3/glib/gutils.c -=================================================================== ---- glib-2.18.3.orig/glib/gutils.c 2008-11-26 11:50:38.607861683 +0100 -+++ glib-2.18.3/glib/gutils.c 2008-11-26 12:00:29.035360081 +0100 -@@ -1520,11 +1520,14 @@ g_get_any_init_do (void) - } - #endif /* !G_OS_WIN32 */ - -+ g_home_dir = g_strdup (g_getenv ("G_HOME")); -+ - #ifdef G_OS_WIN32 - /* We check $HOME first for Win32, though it is a last resort for Unix - * where we prefer the results of getpwuid(). - */ -- g_home_dir = g_strdup (g_getenv ("HOME")); -+ if (!g_home_dir) -+ g_home_dir = g_strdup (g_getenv ("HOME")); - - /* Only believe HOME if it is an absolute path and exists */ - if (g_home_dir) -@@ -1820,6 +1823,11 @@ g_get_real_name (void) - * homedir = g_get_home_dir (); - * ]| - * -+ * However, to allow changing this value for testing and development -+ * purposes, the value of the G_HOME environment -+ * variable, if set, will override the passwd -+ * entry. -+ * - * Returns: the current user's home directory - */ - G_CONST_RETURN gchar* diff --git a/debian/patches/60_wait-longer-for-threads-to-die.patch b/debian/patches/60_wait-longer-for-threads-to-die.patch deleted file mode 100644 index 02fe9ff..0000000 --- a/debian/patches/60_wait-longer-for-threads-to-die.patch +++ /dev/null @@ -1,26 +0,0 @@ ---- glib/tests/threadpool-test.c.old 2008-02-12 06:11:21.000000000 +0100 -+++ glib/tests/threadpool-test.c 2008-02-12 06:11:52.000000000 +0100 -@@ -5,8 +5,8 @@ - - #include - --#define DEBUG_MSG(x) --/* #define DEBUG_MSG(args) g_printerr args ; g_printerr ("\n"); */ -+/* #define DEBUG_MSG(x) */ -+#define DEBUG_MSG(args) g_printerr args ; g_printerr ("\n"); - - #define WAIT 5 /* seconds */ - #define MAX_THREADS 10 -@@ -124,10 +124,10 @@ - DEBUG_MSG (("[unused] stopping unused threads")); - g_thread_pool_stop_unused_threads (); - -- DEBUG_MSG (("[unused] waiting ONE second for threads to die")); -+ DEBUG_MSG (("[unused] waiting FIVE second for threads to die")); - - /* Some time for threads to die. */ -- g_usleep (G_USEC_PER_SEC); -+ g_usleep (5 * G_USEC_PER_SEC); - - DEBUG_MSG (("[unused] stopped idle threads, %d remain, %d threads still exist", - g_thread_pool_get_num_unused_threads (), diff --git a/debian/patches/series b/debian/patches/series deleted file mode 100644 index d144e2e..0000000 --- a/debian/patches/series +++ /dev/null @@ -1,5 +0,0 @@ -01_gettext-desktopfiles.patch -02_gettext-desktopfiles-ubuntu.patch -03_blacklist-directories.patch -04_homedir_env.patch -60_wait-longer-for-threads-to-die.patch diff --git a/debian/rules b/debian/rules deleted file mode 100755 index 0523017..0000000 --- a/debian/rules +++ /dev/null @@ -1,253 +0,0 @@ -#!/usr/bin/make -f - -#DISABLE_UPDATE_UPLOADERS := 1 -#include /usr/share/gnome-pkg-tools/1/rules/uploaders.mk -#-include /usr/share/gnome-pkg-tools/1/rules/gnome-get-source.mk - -GNOME_MODULE := glib - -STAMP_DIR := debian/stampdir - -PATCH_DIR := debian/patches - -# rules in this debian/rules Makefile can be built concurrently as well as -# upstream rules in Makefile; all $(MAKE) invocations will inherit this flag, -# if you recurse into debian/rules ($(MAKE) -# -f debian/rules in rules), you need to pass a flag to avoid adding "-jX" when -# the childs encounters this line -DEB_BUILD_OPTIONS_PARALLEL ?= $(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS))) -MAKEFLAGS += $(if $(DEB_BUILD_OPTIONS_PARALLEL),-j$(DEB_BUILD_OPTIONS_PARALLEL)) - -# These are used for cross-compiling and for saving the configure script -# from having to guess our platform (since we know it already) -DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) -DEB_BUILD_GNU_TYPE = $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) -#DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) - -# Debian architectures -DEB_BUILD_ARCH ?= $(shell dpkg-architecture -qDEB_BUILD_ARCH) -DEB_HOST_ARCH ?= $(shell dpkg-architecture -qDEB_HOST_ARCH) - - -CFLAGS += -Wall -g -O$(if $(findstring noopt,$(DEB_BUILD_OPTIONS)),0,2) - -# Ensure the build aborts when there are still references to undefined -# symbols -LDFLAGS += -Wl,-z,defs - -# NB: do NOT use -Wl,--as-needed to build glib; for instance the link to -# pthread is carefully crafted to allow dlopen()ing pthread-using libs; see -# http://mid.gmane.org/1257999019.21780.15.camel@marzipan - -# Make the linker work a bit harder so dynamic loading can be done faster -LDFLAGS += -Wl,-O1 - -APIVER := 2.0 -SONAME := 0 -SHVER := 2.24.0 - -# package names -SHARED_PKG := libglib$(APIVER)-$(SONAME) -DATA_PKG := libglib$(APIVER)-data -DEV_PKG := libglib$(APIVER)-dev -UDEB_PKG := libglib$(APIVER)-udeb -DOC_PKG := libglib$(APIVER)-doc -DEBUG_PKG := $(SHARED_PKG)-dbg -REFDBG_PKG := libglib$(APIVER)-$(SONAME)-refdbg - -# list of flavors we build; each gets a builddir, a configure pass (configure -# args are defined below), a build pass, and an install pass (in two steps) -# Note: the "deb" flavor is required -FLAVORS := deb udeb refdbg - -# list of flavors to run the test suite on -CHECK_FLAVORS := $(filter deb, $(FLAVORS)) - -# list of arches on which testsuite failures are fatal -# XXX testsuite failures currently disabled as testsuite fails everywhere when -# $HOME isn't writable -CHECK_SUPPORTED_ARCHES := -# CHECK_SUPPORTED_ARCHES := alpha amd64 i386 ia64 lpia m68k s390 -# testsuite is known to fail on hppa, hurd, kfreebsd-amd64, kfreebsd-i386; see -# Debian #428674 -# testsuite is known to fail on arm, mips, mipsel, powerpc, sparc; see GNOME #481573 - -# build dir for the current flavor; this is only expanded in flavor specific -# targets -# Note: dh_clean will rm -rf debian/tmp, hence all builds -builddir = $(buildbasedir)/$* -buildbasedir = $(CURDIR)/debian/build - -# install dir for the current flavor; this is only expanded in flavor specific -# targets -installdir = $(installbasedir)/$* -installbasedir = $(CURDIR)/debian/install - -# configure flags -common_configure_flags := \ - --prefix=/usr \ - --mandir=\$${prefix}/share/man \ - --infodir=\$${prefix}/share/info \ - --with-html-dir=\$${prefix}/share/doc/$(DOC_PKG) -ifeq ($(DEB_BUILD_GNU_TYPE),$(DEB_HOST_GNU_TYPE)) - common_configure_flags += --build=$(DEB_BUILD_GNU_TYPE) -else - common_configure_flags += --build=$(DEB_BUILD_GNU_TYPE) --host=$(DEB_HOST_GNU_TYPE) -endif -deb_configure_flags := $(common_configure_flags) \ - --enable-static -udeb_configure_flags := $(common_configure_flags) \ - --disable-selinux -refdbg_configure_flags := $(common_configure_flags) \ - --disable-visibility \ - --enable-debug=yes - -$(STAMP_DIR)/patch-stamp: - dh_testdir - # backup the original files to restore them in the clean target - -test -r config.sub && cp config.sub config.sub.orig - -test -r config.guess && cp config.guess config.guess.orig - # apply patches - QUILT_PATCHES=$(PATCH_DIR) \ - quilt --quiltrc /dev/null push -a || test $$? = 2 - -test -r /usr/share/misc/config.sub && \ - cp -f /usr/share/misc/config.sub config.sub - -test -r /usr/share/misc/config.guess && \ - cp -f /usr/share/misc/config.guess config.guess - -mkdir -p $(STAMP_DIR) - touch $@ - -patch: $(STAMP_DIR)/patch-stamp - -$(STAMP_DIR)/configure-stamp-%: $(STAMP_DIR)/patch-stamp - dh_testdir - mkdir -p $(builddir) - cd $(builddir) && \ - CFLAGS="$(CFLAGS)" LDFLAGS="$(LDFLAGS)" \ - $(CURDIR)/configure $($*_configure_flags) - touch $@ - mv /usr/lib/libdl.so /usr/lib/libdl.so.tmp - ln -sf /lib/libdl.so.2 /usr/lib/libdl.so - -configure: $(addprefix $(STAMP_DIR)/configure-stamp-, $(FLAVORS)) - -$(STAMP_DIR)/build-stamp-%: $(STAMP_DIR)/configure-stamp-% - dh_testdir - LD_LIBRARY_PATH=$(builddir)/glib/.libs:$(builddir)/gmodule/.libs:$(builddir)/gobject/.libs:$(builddir)/gthread/.libs:$(LD_LIBRARY_PATH) \ - $(MAKE) -C $(builddir) - touch $@ - -build: $(addprefix $(STAMP_DIR)/build-stamp-, $(FLAVORS)) - -maybe_ignore_check_failure = $(if $(filter ,$(CHECK_SUPPORTED_ARCHES)),-) - -$(STAMP_DIR)/check-stamp-%: $(STAMP_DIR)/build-stamp-% - dh_testdir -ifeq ($(filter $(DEB_BUILD_ARCH),$(CHECK_SUPPORTED_ARCHES)),$(DEB_BUILD_ARCH)) - # testsuite failures are fatal - LD_LIBRARY_PATH=$(builddir)/glib/.libs:$(builddir)/gmodule/.libs:$(builddir)/gobject/.libs:$(builddir)/gthread/.libs:$(LD_LIBRARY_PATH) \ - $(MAKE) -k -C $(builddir) check -else - # testsuite failures are ignored - -LD_LIBRARY_PATH=$(builddir)/glib/.libs:$(builddir)/gmodule/.libs:$(builddir)/gobject/.libs:$(builddir)/gthread/.libs:$(LD_LIBRARY_PATH) \ - $(MAKE) -k -C $(builddir) check -endif - touch $@ - -check: $(addprefix $(STAMP_DIR)/check-stamp-, $(CHECK_FLAVORS)) - -$(STAMP_DIR)/install-stamp-%: $(STAMP_DIR)/build-stamp-% - mkdir -p $(installdir) - $(MAKE) -C $(builddir) install DESTDIR=$(installdir) - touch $@ - -install: $(addprefix $(STAMP_DIR)/install-stamp-, $(FLAVORS)) - -debian/control: - dh_testdir - sed \ - -e "s#@SONAME@#$(SONAME)#g" \ - -e "s#@APIVER@#$(APIVER)#g" \ - -e "s#@VERSION@#$(VERSION)#g" \ - -e "s#@SHARED_PKG@#$(SHARED_PKG)#g" \ - -e "s#@DATA_PKG@#$(DATA_PKG)#g" \ - -e "s#@DEV_PKG@#$(DEV_PKG)#g" \ - -e "s#@UDEB_PKG@#$(UDEB_PKG)#g" \ - -e "s#@DOC_PKG@#$(DOC_PKG)#g" \ - -e "s#@DEBUG_PKG@#$(DEBUG_PKG)#g" \ - -e "s#@GNOME_TEAM@#$(UPLOADERS)#g" \ - -e "s#@REFDBG_PKG@#$(REFDBG_PKG)#g" \ - $@.in >$@ - -clean: debian/control - dh_testdir - dh_testroot - # remove install and build dirs - rm -rf $(installbasedir) - rm -rf $(buildbasedir) - # restore files from backup (before unpatching) - -test -r config.sub.orig && mv -f config.sub.orig config.sub - -test -r config.guess.orig && mv -f config.guess.orig config.guess - # unapply patches, if any - QUILT_PATCHES=$(PATCH_DIR) \ - quilt --quiltrc /dev/null pop -a -R || test $$? = 2 - -rm -rf .pc - -rm -rf $(STAMP_DIR) - dh_clean - -ifeq ($(DEB_BUILD_ARCH),$(DEB_HOST_ARCH)) -maybe_check = $(if $(findstring nocheck,$(DEB_BUILD_OPTIONS)),,check) -else -# can't run the testsuite when cross-compiling -maybe_check = -endif - -maybe_check = - -binary-indep: build $(maybe_check) install - dh_testdir - dh_testroot - dh_install -i - dh_installchangelogs -i -N$(DATA_PKG) ChangeLog - dh_installdocs -N$(DATA_PKG) -i NEWS README - dh_link -i - dh_compress -i -X.sgml -X.devhelp - dh_fixperms -i - dh_installdeb -i - dh_gencontrol -i - dh_md5sums -i - dh_builddeb -i - -binary-arch: build $(maybe_check) install - dh_testdir - dh_testroot - dh_install -s - # empty the dependency_libs in the *.la files - sed -i -e "/dependency_libs/ s/'.*'/''/" debian/$(DEV_PKG)/usr/lib/*.la - dh_installchangelogs -s -N$(DEV_PKG) -N$(DEBUG_PKG) \ - ChangeLog - dh_installdocs -s -N$(DEV_PKG) -N$(DEBUG_PKG) NEWS README - dh_link -s - dh_strip -s --dbg-package=$(DEBUG_PKG) -N$(UDEB_PKG) -N$(REFDBG_PKG) - dh_strip -p$(UDEB_PKG) - dh_compress -s -X.sgml -X.devhelp - dh_fixperms -s - dh_makeshlibs -p$(SHARED_PKG) \ - -V "$(SHARED_PKG) (>= $(SHVER))" \ - --add-udeb="$(UDEB_PKG)" -- -c4 - dh_installdeb -s - # override shlibs for libraries from this source before computing - # dependencies of packages generated from this source; we already have - # inter-dependencies expressed manually in the control file, we do not - # need the shlibs to add duplicates - sed -nr -e 's/(([^ ]+: )?([^ ]+) ([^ ]+)) .*/\1/p' \ - debian/*/DEBIAN/shlibs \ - >debian/shlibs.local - dh_shlibdeps -s -ldebian/$(SHARED_PKG)/usr/lib - -rm -f debian/shlibs.local - dh_gencontrol -s - dh_md5sums -s - dh_builddeb -s - -binary: binary-indep binary-arch -.PHONY: patch configure build check install clean binary-indep binary-arch binary debian/control diff --git a/debian/watch b/debian/watch deleted file mode 100644 index 7900f46..0000000 --- a/debian/watch +++ /dev/null @@ -1,4 +0,0 @@ -version=2 -http://download.gnome.org/sources/glib/([\d\.]+)[02468]/ \ - glib-(.*)\.tar\.gz \ - debian uupdate diff --git a/docs/reference/gio/html/ch19.html b/docs/reference/gio/html/ch19.html deleted file mode 100644 index cfe83de..0000000 --- a/docs/reference/gio/html/ch19.html +++ /dev/null @@ -1,105 +0,0 @@ - - - - -Migrating from POSIX to GIO - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-

-Migrating from POSIX to GIO

-
-

Table 4. Comparison of POSIX and GIO concepts

-
---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
POSIXGIO
char *pathGFile *file
struct stat *bufGFileInfo *info
struct statvfs *bufGFileInfo *info
int fdGInputStream *in
GOutputStream *out
DIR *GFileEnumerator *enum
fstab entryGUnixMountPoint *mount_point
mtab entryGUnixMountEntry *mount_entry
-
-
-
- - - \ No newline at end of file diff --git a/docs/reference/gio/html/ch20.html b/docs/reference/gio/html/ch20.html deleted file mode 100644 index 64e754f..0000000 --- a/docs/reference/gio/html/ch20.html +++ /dev/null @@ -1,206 +0,0 @@ - - - - -Migrating from GnomeVFS to GIO - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-

-Migrating from GnomeVFS to GIO

- -
-

Table 5. Comparison of GnomeVFS and GIO concepts

-
---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
GnomeVFSGIO
GnomeVFSURIGFile
GnomeVFSFileInfoGFileInfo
GnomeVFSResultGError, with G_IO_ERROR values
GnomeVFSHandle & GnomeVFSAsyncHandleGInputStream or GOutputStream
GnomeVFSDirectoryHandleGFileEnumerator
mime typecontent type
GnomeVFSMonitorGFileMonitor
GnomeVFSVolumeMonitorGVolumeMonitor
GnomeVFSVolumeGMount
GnomeVFSDriveGVolume
-GDrive
GnomeVFSContextGCancellable
gnome_vfs_async_cancelg_cancellable_cancel
-
-
-

-Trash handling

-

- The handling of trashed files has been changed in GIO, compared - to gnome-vfs. gnome-vfs has a home-grown trash implementation that - predates the freedesktop.org Desktop Trash Can specification - that is implemented in GIO. The location for storing trashed files - has changed from $HOME/.Trash to - $HOME/.local/share/Trash (or more correctly - $XDG_DATA_HOME/Trash), which means that - there is a need for migrating files that have been trashed by - gnome-vfs to the new location. -

-

- In gnome-vfs, the trash:// scheme offering a - merged view of all trash directories was implemented in nautilus, - and trash-handling applications had to find and monitor all trash - directories themselves. With GIO, the trash:// - implementation has been moved to gvfs and applications can simply - monitor that location: -

-
-static void
-file_changed (GFileMonitor      *file_monitor,
-              GFile             *child,
-              GFile             *other_file,
-              GFileMonitorEvent  event_type,
-              gpointer           user_data)
-{
-  switch (event_type)
-  {
-  case G_FILE_MONITOR_EVENT_DELETED:
-    g_print ("'%s' removed from trash\n", g_file_get_basename (child));
-    break;
-  case G_FILE_MONITOR_EVENT_CREATED:
-    g_print ("'%s' added to trash\n", g_file_get_basename (child));
-    break;
-  default: ;
-  }
-}
-
-static void
-start_monitoring_trash (void)
-{
-  GFile *file;
-  GFileMonitor *monitor;
-
-  file = g_file_new_for_uri ("trash://");
-  monitor = g_file_monitor_directory (file, 0, NULL, NULL);
-  g_object_unref (file);
-
-  g_signal_connect (monitor, "changed", G_CALLBACK (file_changed), NULL);
-
-  /* ... */
-
-}       
-
-

- GIO exposes some useful metadata about trashed files. There are - trash::orig-path and trash::deletion-date attributes. The - standard::icon attribute of the trash:// - itself provides a suitable icon for displaying the trash can on - the desktop. If you are using this icon, make sure to monitor - this attribute for changes, since the icon may be updated to - reflect that state of the trash can. -

-

- Moving a file to the trash is much simpler with GIO. Instead of - using gnome_vfs_find_directory() with GNOME_VFS_DIRECTORY_KIND_TRASH - to find out where to move the trashed file, just use the g_file_trash() - function. -

-
-
- - - \ No newline at end of file diff --git a/docs/reference/gio/html/ch20s02.html b/docs/reference/gio/html/ch20s02.html deleted file mode 100644 index 0d9a20d..0000000 --- a/docs/reference/gio/html/ch20s02.html +++ /dev/null @@ -1,71 +0,0 @@ - - - - -Operations on multiple files - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-

-Operations on multiple files

-

- gnome-vfs has the dreaded gnome_vfs_xfer_uri_list() function which - has tons of options and offers the equivalent of cp, mv, ln, mkdir - and rm at the same time. -

-

- GIO offers a much simpler I/O scheduler functionality instead, that - lets you schedule a function to be called in a separate thread, or - if threads are not available, as an idle in the mainloop. - See g_io_scheduler_push_job(). -

-
- - - \ No newline at end of file diff --git a/docs/reference/gio/html/ch20s03.html b/docs/reference/gio/html/ch20s03.html deleted file mode 100644 index b8728f1..0000000 --- a/docs/reference/gio/html/ch20s03.html +++ /dev/null @@ -1,69 +0,0 @@ - - - - -Mime monitoring - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-

-Mime monitoring

-

- gnome-vfs offered a way to monitor the association between mime types - and default handlers for changes, with the GnomeVFSMIMEMonitor object. - GIO does not offer a replacement for this functionality at this time, - since we have not found a compelling use case where - GnomeVFSMIMEMonitor was used. If you think you have such a use - case, please report it at - bugzilla.gnome.org. -

-
- - - \ No newline at end of file diff --git a/docs/reference/gio/html/gio-GSrvTarget.html b/docs/reference/gio/html/gio-GSrvTarget.html deleted file mode 100644 index f44bf04..0000000 --- a/docs/reference/gio/html/gio-GSrvTarget.html +++ /dev/null @@ -1,333 +0,0 @@ - - - - -GSrvTarget - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-
-
- - -
-

GSrvTarget

-

GSrvTarget — DNS SRV record target

-
-
-

Synopsis

-
-#include <gio/gio.h>
-
-                    GSrvTarget;
-GSrvTarget *        g_srv_target_new                    (const gchar *hostname,
-                                                         guint16 port,
-                                                         guint16 priority,
-                                                         guint16 weight);
-GSrvTarget *        g_srv_target_copy                   (GSrvTarget *target);
-void                g_srv_target_free                   (GSrvTarget *target);
-const gchar *       g_srv_target_get_hostname           (GSrvTarget *target);
-guint16             g_srv_target_get_port               (GSrvTarget *target);
-guint16             g_srv_target_get_priority           (GSrvTarget *target);
-guint16             g_srv_target_get_weight             (GSrvTarget *target);
-GList *             g_srv_target_list_sort              (GList *targets);
-
-
-
-

Description

-

-SRV (service) records are used by some network protocols to provide -service-specific aliasing and load-balancing. For example, XMPP -(Jabber) uses SRV records to locate the XMPP server for a domain; -rather than connecting directly to "example.com" or assuming a -specific server hostname like "xmpp.example.com", an XMPP client -would look up the "xmpp-client" SRV record for "example.com", and -then connect to whatever host was pointed to by that record. -

-

-You can use g_resolver_lookup_service() or -g_resolver_lookup_service_async() to find the GSrvTargets -for a given service. However, if you are simply planning to connect -to the remote service, you can use GNetworkService's -GSocketConnectable interface and not need to worry about -GSrvTarget at all.

-
-
-

Details

-
-

GSrvTarget

-
typedef struct _GSrvTarget GSrvTarget;
-

-A single target host/port that a network service is running on.

-
-
-
-

g_srv_target_new ()

-
GSrvTarget *        g_srv_target_new                    (const gchar *hostname,
-                                                         guint16 port,
-                                                         guint16 priority,
-                                                         guint16 weight);
-

-Creates a new GSrvTarget with the given parameters. -

-

-You should not need to use this; normally GSrvTargets are -created by GResolver.

-
-- - - - - - - - - - - - - - - - - - - - - - -

hostname :

the host that the service is running on -

port :

the port that the service is running on -

priority :

the target's priority -

weight :

the target's weight -

Returns :

a new GSrvTarget. - -
-

Since 2.22

-
-
-
-

g_srv_target_copy ()

-
GSrvTarget *        g_srv_target_copy                   (GSrvTarget *target);
-

-Copies target

-
-- - - - - - - - - - -

target :

a GSrvTarget -

Returns :

a copy of target - -
-

Since 2.22

-
-
-
-

g_srv_target_free ()

-
void                g_srv_target_free                   (GSrvTarget *target);
-

-Frees target

-
-- - - - -

target :

a GSrvTarget -
-

Since 2.22

-
-
-
-

g_srv_target_get_hostname ()

-
const gchar *       g_srv_target_get_hostname           (GSrvTarget *target);
-

-Gets target's hostname (in ASCII form; if you are going to present -this to the user, you should use g_hostname_is_ascii_encoded() to -check if it contains encoded Unicode segments, and use -g_hostname_to_unicode() to convert it if it does.)

-
-- - - - - - - - - - -

target :

a GSrvTarget -

Returns :

target's hostname - -
-

Since 2.22

-
-
-
-

g_srv_target_get_port ()

-
guint16             g_srv_target_get_port               (GSrvTarget *target);
-

-Gets target's port

-
-- - - - - - - - - - -

target :

a GSrvTarget -

Returns :

target's port - -
-

Since 2.22

-
-
-
-

g_srv_target_get_priority ()

-
guint16             g_srv_target_get_priority           (GSrvTarget *target);
-

-Gets target's priority. You should not need to look at this; -GResolver already sorts the targets according to the algorithm in -RFC 2782.

-
-- - - - - - - - - - -

target :

a GSrvTarget -

Returns :

target's priority - -
-

Since 2.22

-
-
-
-

g_srv_target_get_weight ()

-
guint16             g_srv_target_get_weight             (GSrvTarget *target);
-

-Gets target's weight. You should not need to look at this; -GResolver already sorts the targets according to the algorithm in -RFC 2782.

-
-- - - - - - - - - - -

target :

a GSrvTarget -

Returns :

target's weight - -
-

Since 2.22

-
-
-
-

g_srv_target_list_sort ()

-
GList *             g_srv_target_list_sort              (GList *targets);
-

-Sorts targets in place according to the algorithm in RFC 2782.

-
-- - - - - - - - - - -

targets :

a GList of GSrvTarget -

Returns :

the head of the sorted list. - -
-

Since 2.22

-
-
-
- - - \ No newline at end of file diff --git a/docs/reference/gio/html/gio.devhelp b/docs/reference/gio/html/gio.devhelp deleted file mode 100644 index 6ad0373..0000000 --- a/docs/reference/gio/html/gio.devhelp +++ /dev/null @@ -1,1235 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/docs/reference/gio/migrating.xml b/docs/reference/gio/migrating.xml deleted file mode 100644 index 89191d3..0000000 --- a/docs/reference/gio/migrating.xml +++ /dev/null @@ -1,162 +0,0 @@ - - Migrating to GIO - - - Migrating from POSIX to GIO - - - Comparison of POSIX and GIO concepts - - - POSIXGIO - - - char *pathGFile *file - struct stat *bufGFileInfo *info - struct statvfs *bufGFileInfo *info - int fdGInputStream *in - GOutputStream *out - DIR *GFileEnumerator *enum - fstab entryGUnixMountPoint *mount_point - mtab entryGUnixMountEntry *mount_entry - - -
- -
- - - Migrating from GnomeVFS to GIO - - - Comparison of GnomeVFS and GIO concepts - - - GnomeVFSGIO - - - GnomeVFSURIGFile - GnomeVFSFileInfoGFileInfo - GnomeVFSResultGError, with G_IO_ERROR values - GnomeVFSHandle & GnomeVFSAsyncHandleGInputStream or GOutputStream - GnomeVFSDirectoryHandleGFileEnumerator - mime typecontent type - GnomeVFSMonitorGFileMonitor - GnomeVFSVolumeMonitorGVolumeMonitor - GnomeVFSVolumeGMount - GnomeVFSDriveGVolume - -GDrive - GnomeVFSContextGCancellable - gnome_vfs_async_cancelg_cancellable_cancel - - -
- -
- Trash handling - - - The handling of trashed files has been changed in GIO, compared - to gnome-vfs. gnome-vfs has a home-grown trash implementation that - predates the freedesktop.org Desktop Trash Can specification - that is implemented in GIO. The location for storing trashed files - has changed from $HOME/.Trash to - $HOME/.local/share/Trash (or more correctly - $XDG_DATA_HOME/Trash), which means that - there is a need for migrating files that have been trashed by - gnome-vfs to the new location. - - - In gnome-vfs, the trash:// scheme offering a - merged view of all trash directories was implemented in nautilus, - and trash-handling applications had to find and monitor all trash - directories themselves. With GIO, the trash:// - implementation has been moved to gvfs and applications can simply - monitor that location: - - -static void -file_changed (GFileMonitor *file_monitor, - GFile *child, - GFile *other_file, - GFileMonitorEvent event_type, - gpointer user_data) -{ - switch (event_type) - { - case G_FILE_MONITOR_EVENT_DELETED: - g_print ("'%s' removed from trash\n", g_file_get_basename (child)); - break; - case G_FILE_MONITOR_EVENT_CREATED: - g_print ("'%s' added to trash\n", g_file_get_basename (child)); - break; - default: ; - } -} - -static void -start_monitoring_trash (void) -{ - GFile *file; - GFileMonitor *monitor; - - file = g_file_new_for_uri ("trash://"); - monitor = g_file_monitor_directory (file, 0, NULL, NULL); - g_object_unref (file); - - g_signal_connect (monitor, "changed", G_CALLBACK (file_changed), NULL); - - /* ... */ - -} - - - GIO exposes some useful metadata about trashed files. There are - trash::orig-path and trash::deletion-date attributes. The - standard::icon attribute of the trash:// - itself provides a suitable icon for displaying the trash can on - the desktop. If you are using this icon, make sure to monitor - this attribute for changes, since the icon may be updated to - reflect that state of the trash can. - - - Moving a file to the trash is much simpler with GIO. Instead of - using gnome_vfs_find_directory() with %GNOME_VFS_DIRECTORY_KIND_TRASH - to find out where to move the trashed file, just use the g_file_trash() - function. - -
- -
- Operations on multiple files - - - gnome-vfs has the dreaded gnome_vfs_xfer_uri_list() function which - has tons of options and offers the equivalent of cp, mv, ln, mkdir - and rm at the same time. - - - GIO offers a much simpler I/O scheduler functionality instead, that - lets you schedule a function to be called in a separate thread, or - if threads are not available, as an idle in the mainloop. - See g_io_scheduler_push_job(). - - -
- -
- Mime monitoring - - - gnome-vfs offered a way to monitor the association between mime types - and default handlers for changes, with the #GnomeVFSMIMEMonitor object. - GIO does not offer a replacement for this functionality at this time, - since we have not found a compelling use case where - #GnomeVFSMIMEMonitor was used. If you think you have such a use - case, please report it at - bugzilla.gnome.org. - -
-
- -
diff --git a/docs/reference/gio/tmpl/extensionpoints.sgml b/docs/reference/gio/tmpl/extensionpoints.sgml deleted file mode 100644 index ce36a90..0000000 --- a/docs/reference/gio/tmpl/extensionpoints.sgml +++ /dev/null @@ -1,134 +0,0 @@ - -Extension Points - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@extension: -@Returns: - - - - - - - -@extension: -@Returns: - - - - - - - -@extension: -@Returns: - - - - - - - -@extension_point: -@name: -@Returns: - - - - - - - -@extension_point: -@Returns: - - - - - - - -@extension_point: -@Returns: - - - - - - - -@extension_point_name: -@type: -@extension_name: -@priority: -@Returns: - - - - - - - -@name: -@Returns: - - - - - - - -@name: -@Returns: - - - - - - - -@extension_point: -@type: - - - - - - - -@extension: -@Returns: - - diff --git a/docs/reference/gio/tmpl/gappinfo.sgml b/docs/reference/gio/tmpl/gappinfo.sgml deleted file mode 100644 index 00a042e..0000000 --- a/docs/reference/gio/tmpl/gappinfo.sgml +++ /dev/null @@ -1,378 +0,0 @@ - -GAppInfo - - - - - - - - - - - - - - - - - - - - - - -@G_APP_INFO_CREATE_NONE: -@G_APP_INFO_CREATE_NEEDS_TERMINAL: -@G_APP_INFO_CREATE_SUPPORTS_URIS: - - - - - - - - - - - - -@g_iface: -@dup: -@equal: -@get_id: -@get_name: -@get_description: -@get_executable: -@get_icon: -@launch: -@supports_uris: -@supports_files: -@launch_uris: -@should_show: -@set_as_default_for_type: -@set_as_default_for_extension: -@add_supports_type: -@can_remove_supports_type: -@remove_supports_type: -@can_delete: -@do_delete: -@get_commandline: -@get_display_name: - - - - - - - - - - - - -@commandline: -@application_name: -@flags: -@error: -@Returns: - - - - - - - -@appinfo: -@Returns: - - - - - - - -@appinfo1: -@appinfo2: -@Returns: - - - - - - - -@appinfo: -@Returns: - - - - - - - -@appinfo: -@Returns: - - - - - - - -@appinfo: -@Returns: - - - - - - - -@appinfo: -@Returns: - - - - - - - -@appinfo: -@Returns: - - - - - - - -@appinfo: -@Returns: - - - - - - - -@appinfo: -@Returns: - - - - - - - -@appinfo: -@files: -@launch_context: -@error: -@Returns: - - - - - - - -@appinfo: -@Returns: - - - - - - - -@appinfo: -@Returns: - - - - - - - -@appinfo: -@uris: -@launch_context: -@error: -@Returns: - - - - - - - -@appinfo: -@Returns: - - - - - - - -@appinfo: -@Returns: - - - - - - - -@appinfo: -@Returns: - - - - - - - -@content_type: - - - - - - - -@appinfo: -@content_type: -@error: -@Returns: - - - - - - - -@appinfo: -@extension: -@error: -@Returns: - - - - - - - -@appinfo: -@content_type: -@error: -@Returns: - - - - - - - -@appinfo: -@Returns: - - - - - - - -@appinfo: -@content_type: -@error: -@Returns: - - - - - - - -@Returns: - - - - - - - -@content_type: -@Returns: - - - - - - - -@content_type: -@must_support_uris: -@Returns: - - - - - - - -@uri_scheme: -@Returns: - - - - - - - -@uri: -@launch_context: -@error: -@Returns: - - - - - - - -@context: -@info: -@files: -@Returns: - - - - - - - -@context: -@info: -@files: -@Returns: - - - - - - - -@context: -@startup_notify_id: - - - - - - - -@Returns: - - diff --git a/docs/reference/gio/tmpl/gasyncinitable.sgml b/docs/reference/gio/tmpl/gasyncinitable.sgml deleted file mode 100644 index f8fbba2..0000000 --- a/docs/reference/gio/tmpl/gasyncinitable.sgml +++ /dev/null @@ -1,110 +0,0 @@ - -GAsyncInitable - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@g_iface: -@init_async: -@init_finish: - - - - - - -@initable: -@io_priority: -@cancellable: -@callback: -@user_data: - - - - - - - -@initable: -@res: -@error: -@Returns: - - - - - - - -@object_type: -@io_priority: -@cancellable: -@callback: -@user_data: -@first_property_name: -@Varargs: - - - - - - - -@initable: -@res: -@error: -@Returns: - - - - - - - -@object_type: -@first_property_name: -@var_args: -@io_priority: -@cancellable: -@callback: -@user_data: - - - - - - - -@object_type: -@n_parameters: -@parameters: -@io_priority: -@cancellable: -@callback: -@user_data: - - diff --git a/docs/reference/gio/tmpl/gasyncresult.sgml b/docs/reference/gio/tmpl/gasyncresult.sgml deleted file mode 100644 index d47e81d..0000000 --- a/docs/reference/gio/tmpl/gasyncresult.sgml +++ /dev/null @@ -1,62 +0,0 @@ - -GAsyncResult - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@g_iface: -@get_user_data: -@get_source_object: - - - - - - -@source_object: -@res: -@user_data: - - - - - - - -@res: -@Returns: - - - - - - - -@res: -@Returns: - - diff --git a/docs/reference/gio/tmpl/gbufferedinputstream.sgml b/docs/reference/gio/tmpl/gbufferedinputstream.sgml deleted file mode 100644 index 651bfde..0000000 --- a/docs/reference/gio/tmpl/gbufferedinputstream.sgml +++ /dev/null @@ -1,145 +0,0 @@ - -GBufferedInputStream - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@base_stream: -@Returns: - - - - - - - -@base_stream: -@size: -@Returns: - - - - - - - -@stream: -@Returns: - - - - - - - -@stream: -@size: - - - - - - - -@stream: -@Returns: - - - - - - - -@stream: -@count: -@Returns: - - - - - - - -@stream: -@buffer: -@offset: -@count: -@Returns: - - - - - - - -@stream: -@count: -@cancellable: -@error: -@Returns: - - - - - - - -@stream: -@count: -@io_priority: -@cancellable: -@callback: -@user_data: - - - - - - - -@stream: -@result: -@error: -@Returns: - - - - - - - -@stream: -@cancellable: -@error: -@Returns: - - diff --git a/docs/reference/gio/tmpl/gbufferedoutputstream.sgml b/docs/reference/gio/tmpl/gbufferedoutputstream.sgml deleted file mode 100644 index 728c8a2..0000000 --- a/docs/reference/gio/tmpl/gbufferedoutputstream.sgml +++ /dev/null @@ -1,90 +0,0 @@ - -GBufferedOutputStream - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@base_stream: -@Returns: - - - - - - - -@base_stream: -@size: -@Returns: - - - - - - - -@stream: -@Returns: - - - - - - - -@stream: -@size: - - - - - - - -@stream: -@Returns: - - - - - - - -@stream: -@auto_grow: - - diff --git a/docs/reference/gio/tmpl/gcancellable.sgml b/docs/reference/gio/tmpl/gcancellable.sgml deleted file mode 100644 index eb48ac3..0000000 --- a/docs/reference/gio/tmpl/gcancellable.sgml +++ /dev/null @@ -1,147 +0,0 @@ - -GCancellable - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@gcancellable: the object which received the signal. - - - - - - -@Returns: - - - - - - - -@cancellable: -@Returns: - - - - - - - -@cancellable: -@error: -@Returns: - - - - - - - -@cancellable: -@Returns: - - - - - - - -@cancellable: -@pollfd: -@Returns: - - - - - - - -@cancellable: - - - - - - - -@Returns: - - - - - - - -@cancellable: - - - - - - - -@cancellable: - - - - - - - -@cancellable: - - - - - - - -@cancellable: -@callback: -@data: -@data_destroy_func: -@Returns: - - - - - - - -@cancellable: -@handler_id: - - - - - - - -@cancellable: - - diff --git a/docs/reference/gio/tmpl/gcharsetconverter.sgml b/docs/reference/gio/tmpl/gcharsetconverter.sgml deleted file mode 100644 index d48c76a..0000000 --- a/docs/reference/gio/tmpl/gcharsetconverter.sgml +++ /dev/null @@ -1,78 +0,0 @@ - -GCharsetConverter - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@to_charset: -@from_charset: -@error: -@Returns: - - - - - - - -@converter: -@use_fallback: - - - - - - - -@converter: -@Returns: - - - - - - - -@converter: -@Returns: - - diff --git a/docs/reference/gio/tmpl/gcontenttype.sgml b/docs/reference/gio/tmpl/gcontenttype.sgml deleted file mode 100644 index 52be46f..0000000 --- a/docs/reference/gio/tmpl/gcontenttype.sgml +++ /dev/null @@ -1,122 +0,0 @@ - -GContentType - - - - - - - - - - - - - - - - - - - - - - -@type1: -@type2: -@Returns: - - - - - - - -@type: -@supertype: -@Returns: - - - - - - - -@type: -@Returns: - - - - - - - -@type: -@Returns: - - - - - - - -@type: -@Returns: - - - - - - - -@type: -@Returns: - - - - - - - -@type: -@Returns: - - - - - - - -@mime_type: -@Returns: - - - - - - - -@filename: -@data: -@data_size: -@result_uncertain: -@Returns: - - - - - - - -@root: -@Returns: - - - - - - - -@Returns: - - diff --git a/docs/reference/gio/tmpl/gconverter.sgml b/docs/reference/gio/tmpl/gconverter.sgml deleted file mode 100644 index 791946c..0000000 --- a/docs/reference/gio/tmpl/gconverter.sgml +++ /dev/null @@ -1,69 +0,0 @@ - -GConverter - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@g_iface: -@convert: -@reset: - - - - - - -@G_CONVERTER_ERROR: -@G_CONVERTER_CONVERTED: -@G_CONVERTER_FINISHED: -@G_CONVERTER_FLUSHED: - - - - - - -@converter: -@inbuf: -@inbuf_size: -@outbuf: -@outbuf_size: -@flags: -@bytes_read: -@bytes_written: -@error: -@Returns: - - - - - - - -@converter: - - diff --git a/docs/reference/gio/tmpl/gconverterinputstream.sgml b/docs/reference/gio/tmpl/gconverterinputstream.sgml deleted file mode 100644 index a4bf9e3..0000000 --- a/docs/reference/gio/tmpl/gconverterinputstream.sgml +++ /dev/null @@ -1,49 +0,0 @@ - -GConverterInputstream - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@base_stream: -@converter: -@Returns: - - - - - - - -@converter_stream: -@Returns: - - diff --git a/docs/reference/gio/tmpl/gconverteroutputstream.sgml b/docs/reference/gio/tmpl/gconverteroutputstream.sgml deleted file mode 100644 index 8665b5a..0000000 --- a/docs/reference/gio/tmpl/gconverteroutputstream.sgml +++ /dev/null @@ -1,49 +0,0 @@ - -GConverterOutputstream - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@base_stream: -@converter: -@Returns: - - - - - - - -@converter_stream: -@Returns: - - diff --git a/docs/reference/gio/tmpl/gdatainputstream.sgml b/docs/reference/gio/tmpl/gdatainputstream.sgml deleted file mode 100644 index cc17fb7..0000000 --- a/docs/reference/gio/tmpl/gdatainputstream.sgml +++ /dev/null @@ -1,250 +0,0 @@ - -GDataInputStream - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@G_DATA_STREAM_BYTE_ORDER_BIG_ENDIAN: -@G_DATA_STREAM_BYTE_ORDER_LITTLE_ENDIAN: -@G_DATA_STREAM_BYTE_ORDER_HOST_ENDIAN: - - - - - - -@G_DATA_STREAM_NEWLINE_TYPE_LF: -@G_DATA_STREAM_NEWLINE_TYPE_CR: -@G_DATA_STREAM_NEWLINE_TYPE_CR_LF: -@G_DATA_STREAM_NEWLINE_TYPE_ANY: - - - - - - -@base_stream: -@Returns: - - - - - - - -@stream: -@order: - - - - - - - -@stream: -@Returns: - - - - - - - -@stream: -@type: - - - - - - - -@stream: -@Returns: - - - - - - - -@stream: -@cancellable: -@error: -@Returns: - - - - - - - -@stream: -@cancellable: -@error: -@Returns: - - - - - - - -@stream: -@cancellable: -@error: -@Returns: - - - - - - - -@stream: -@cancellable: -@error: -@Returns: - - - - - - - -@stream: -@cancellable: -@error: -@Returns: - - - - - - - -@stream: -@cancellable: -@error: -@Returns: - - - - - - - -@stream: -@cancellable: -@error: -@Returns: - - - - - - - -@stream: -@length: -@cancellable: -@error: -@Returns: - - - - - - - -@stream: -@io_priority: -@cancellable: -@callback: -@user_data: - - - - - - - -@stream: -@result: -@length: -@error: -@Returns: - - - - - - - -@stream: -@stop_chars: -@length: -@cancellable: -@error: -@Returns: - - - - - - - -@stream: -@stop_chars: -@io_priority: -@cancellable: -@callback: -@user_data: - - - - - - - -@stream: -@result: -@length: -@error: -@Returns: - - diff --git a/docs/reference/gio/tmpl/gdataoutputstream.sgml b/docs/reference/gio/tmpl/gdataoutputstream.sgml deleted file mode 100644 index e935967..0000000 --- a/docs/reference/gio/tmpl/gdataoutputstream.sgml +++ /dev/null @@ -1,153 +0,0 @@ - -GDataOutputStream - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@base_stream: -@Returns: - - - - - - - -@stream: -@order: - - - - - - - -@stream: -@Returns: - - - - - - - -@stream: -@data: -@cancellable: -@error: -@Returns: - - - - - - - -@stream: -@data: -@cancellable: -@error: -@Returns: - - - - - - - -@stream: -@data: -@cancellable: -@error: -@Returns: - - - - - - - -@stream: -@data: -@cancellable: -@error: -@Returns: - - - - - - - -@stream: -@data: -@cancellable: -@error: -@Returns: - - - - - - - -@stream: -@data: -@cancellable: -@error: -@Returns: - - - - - - - -@stream: -@data: -@cancellable: -@error: -@Returns: - - - - - - - -@stream: -@str: -@cancellable: -@error: -@Returns: - - diff --git a/docs/reference/gio/tmpl/gdesktopappinfo.sgml b/docs/reference/gio/tmpl/gdesktopappinfo.sgml deleted file mode 100644 index 636f226..0000000 --- a/docs/reference/gio/tmpl/gdesktopappinfo.sgml +++ /dev/null @@ -1,101 +0,0 @@ - -Desktop file based GAppInfo - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@filename: -@Returns: - - - - - - - -@key_file: -@Returns: - - - - - - - -@desktop_id: -@Returns: - - - - - - - -@info: -@Returns: - - - - - - - -@info: -@Returns: - - - - - - - -@desktop_env: - - - - - - - - - - - - - - - - - - - - -@lookup: -@uri_scheme: -@Returns: - - diff --git a/docs/reference/gio/tmpl/gdrive.sgml b/docs/reference/gio/tmpl/gdrive.sgml deleted file mode 100644 index 7ce01b1..0000000 --- a/docs/reference/gio/tmpl/gdrive.sgml +++ /dev/null @@ -1,360 +0,0 @@ - -GDrive - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@gdrive: the object which received the signal. - - - - - - -@gdrive: the object which received the signal. - - - - - - -@gdrive: the object which received the signal. - - - - - - -@gdrive: the object which received the signal. - - - - - - -@g_iface: -@changed: -@disconnected: -@eject_button: -@get_name: -@get_icon: -@has_volumes: -@get_volumes: -@is_media_removable: -@has_media: -@is_media_check_automatic: -@can_eject: -@can_poll_for_media: -@eject: -@eject_finish: -@poll_for_media: -@poll_for_media_finish: -@get_identifier: -@enumerate_identifiers: -@get_start_stop_type: -@can_start: -@can_start_degraded: -@start: -@start_finish: -@can_stop: -@stop: -@stop_finish: -@stop_button: -@eject_with_operation: -@eject_with_operation_finish: - - - - - - -@G_DRIVE_START_NONE: - - - - - - -@G_DRIVE_START_STOP_TYPE_UNKNOWN: -@G_DRIVE_START_STOP_TYPE_SHUTDOWN: -@G_DRIVE_START_STOP_TYPE_NETWORK: -@G_DRIVE_START_STOP_TYPE_MULTIDISK: -@G_DRIVE_START_STOP_TYPE_PASSWORD: - - - - - - -@drive: -@Returns: - - - - - - - -@drive: -@Returns: - - - - - - - -@drive: -@Returns: - - - - - - - -@drive: -@Returns: - - - - - - - -@drive: -@Returns: - - - - - - - -@drive: -@Returns: - - - - - - - -@drive: -@Returns: - - - - - - - -@drive: -@Returns: - - - - - - - -@drive: -@Returns: - - - - - - - -@drive: -@Returns: - - - - - - - -@drive: -@cancellable: -@callback: -@user_data: - - - - - - - -@drive: -@result: -@error: -@Returns: - - - - - - - -@drive: -@Returns: - - - - - - - -@drive: -@Returns: - - - - - - - -@drive: -@Returns: - - - - - - - -@drive: -@flags: -@cancellable: -@callback: -@user_data: - - - - - - - -@drive: -@result: -@error: -@Returns: - - - - - - - -@drive: -@flags: -@mount_operation: -@cancellable: -@callback: -@user_data: - - - - - - - -@drive: -@result: -@error: -@Returns: - - - - - - - -@drive: -@flags: -@mount_operation: -@cancellable: -@callback: -@user_data: - - - - - - - -@drive: -@result: -@error: -@Returns: - - - - - - - -@drive: -@flags: -@mount_operation: -@cancellable: -@callback: -@user_data: - - - - - - - -@drive: -@result: -@error: -@Returns: - - - - - - - -@drive: -@Returns: - - - - - - - -@drive: -@kind: -@Returns: - - diff --git a/docs/reference/gio/tmpl/gemblem.sgml b/docs/reference/gio/tmpl/gemblem.sgml deleted file mode 100644 index 25f634b..0000000 --- a/docs/reference/gio/tmpl/gemblem.sgml +++ /dev/null @@ -1,82 +0,0 @@ - -GEmblem - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@G_EMBLEM_ORIGIN_UNKNOWN: -@G_EMBLEM_ORIGIN_DEVICE: -@G_EMBLEM_ORIGIN_LIVEMETADATA: -@G_EMBLEM_ORIGIN_TAG: - - - - - - -@icon: -@Returns: - - - - - - - -@icon: -@origin: -@Returns: - - - - - - - -@emblem: -@Returns: - - - - - - - -@emblem: -@Returns: - - diff --git a/docs/reference/gio/tmpl/gemblemedicon.sgml b/docs/reference/gio/tmpl/gemblemedicon.sgml deleted file mode 100644 index 482e0e2..0000000 --- a/docs/reference/gio/tmpl/gemblemedicon.sgml +++ /dev/null @@ -1,62 +0,0 @@ - -GEmblemedIcon - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@icon: -@emblem: -@Returns: - - - - - - - -@emblemed: -@Returns: - - - - - - - -@emblemed: -@Returns: - - - - - - - -@emblemed: -@emblem: - - diff --git a/docs/reference/gio/tmpl/gfile.sgml b/docs/reference/gio/tmpl/gfile.sgml deleted file mode 100644 index 48f2ac6..0000000 --- a/docs/reference/gio/tmpl/gfile.sgml +++ /dev/null @@ -1,1522 +0,0 @@ - -GFile - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@g_iface: -@dup: -@hash: -@equal: -@is_native: -@has_uri_scheme: -@get_uri_scheme: -@get_basename: -@get_path: -@get_uri: -@get_parse_name: -@get_parent: -@prefix_matches: -@get_relative_path: -@resolve_relative_path: -@get_child_for_display_name: -@enumerate_children: -@enumerate_children_async: -@enumerate_children_finish: -@query_info: -@query_info_async: -@query_info_finish: -@query_filesystem_info: -@query_filesystem_info_async: -@query_filesystem_info_finish: -@find_enclosing_mount: -@find_enclosing_mount_async: -@find_enclosing_mount_finish: -@set_display_name: -@set_display_name_async: -@set_display_name_finish: -@query_settable_attributes: -@_query_settable_attributes_async: -@_query_settable_attributes_finish: -@query_writable_namespaces: -@_query_writable_namespaces_async: -@_query_writable_namespaces_finish: -@set_attribute: -@set_attributes_from_info: -@set_attributes_async: -@set_attributes_finish: -@read_fn: -@read_async: -@read_finish: -@append_to: -@append_to_async: -@append_to_finish: -@create: -@create_async: -@create_finish: -@replace: -@replace_async: -@replace_finish: -@delete_file: -@_delete_file_async: -@_delete_file_finish: -@trash: -@_trash_async: -@_trash_finish: -@make_directory: -@_make_directory_async: -@_make_directory_finish: -@make_symbolic_link: -@_make_symbolic_link_async: -@_make_symbolic_link_finish: -@copy: -@copy_async: -@copy_finish: -@move: -@_move_async: -@_move_finish: -@mount_mountable: -@mount_mountable_finish: -@unmount_mountable: -@unmount_mountable_finish: -@eject_mountable: -@eject_mountable_finish: -@mount_enclosing_volume: -@mount_enclosing_volume_finish: -@monitor_dir: -@monitor_file: -@open_readwrite: -@open_readwrite_async: -@open_readwrite_finish: -@create_readwrite: -@create_readwrite_async: -@create_readwrite_finish: -@replace_readwrite: -@replace_readwrite_async: -@replace_readwrite_finish: -@start_mountable: -@start_mountable_finish: -@stop_mountable: -@stop_mountable_finish: -@supports_thread_contexts: -@unmount_mountable_with_operation: -@unmount_mountable_with_operation_finish: -@eject_mountable_with_operation: -@eject_mountable_with_operation_finish: -@poll_mountable: -@poll_mountable_finish: - - - - - - -@G_FILE_QUERY_INFO_NONE: -@G_FILE_QUERY_INFO_NOFOLLOW_SYMLINKS: - - - - - - -@G_FILE_CREATE_NONE: -@G_FILE_CREATE_PRIVATE: -@G_FILE_CREATE_REPLACE_DESTINATION: - - - - - - -@G_FILE_COPY_NONE: -@G_FILE_COPY_OVERWRITE: -@G_FILE_COPY_BACKUP: -@G_FILE_COPY_NOFOLLOW_SYMLINKS: -@G_FILE_COPY_ALL_METADATA: -@G_FILE_COPY_NO_FALLBACK_FOR_MOVE: -@G_FILE_COPY_TARGET_DEFAULT_PERMS: - - - - - - -@G_FILE_MONITOR_NONE: -@G_FILE_MONITOR_WATCH_MOUNTS: -@G_FILE_MONITOR_SEND_MOVED: - - - - - - -@G_FILESYSTEM_PREVIEW_TYPE_IF_ALWAYS: -@G_FILESYSTEM_PREVIEW_TYPE_IF_LOCAL: -@G_FILESYSTEM_PREVIEW_TYPE_NEVER: - - - - - - -@current_num_bytes: -@total_num_bytes: -@user_data: - - - - - - - -@file_contents: -@file_size: -@callback_data: -@Returns: - - - - - - - -@path: -@Returns: - - - - - - - -@uri: -@Returns: - - - - - - - -@arg: -@Returns: - - - - - - - -@parse_name: -@Returns: - - - - - - - -@file: -@Returns: - - - - - - - -@file: -@Returns: - - - - - - - -@file1: -@file2: -@Returns: - - - - - - - -@file: -@Returns: - - - - - - - -@file: -@Returns: - - - - - - - -@file: -@Returns: - - - - - - - -@file: -@Returns: - - - - - - - -@file: -@Returns: - - - - - - - -@file: -@parent: -@Returns: - - - - - - - -@file: -@name: -@Returns: - - - - - - - -@file: -@display_name: -@error: -@Returns: - - - - - - - -@file: -@prefix: -@Returns: - - - - - - - -@parent: -@descendant: -@Returns: - - - - - - - -@file: -@relative_path: -@Returns: - - - - - - - -@file: -@Returns: - - - - - - - -@file: -@uri_scheme: -@Returns: - - - - - - - -@file: -@Returns: - - - - - - - -@file: -@cancellable: -@error: -@Returns: - - - - - - - -@file: -@io_priority: -@cancellable: -@callback: -@user_data: - - - - - - - -@file: -@res: -@error: -@Returns: - - - - - - - -@file: -@flags: -@cancellable: -@error: -@Returns: - - - - - - - -@file: -@flags: -@cancellable: -@error: -@Returns: - - - - - - - -@file: -@etag: -@make_backup: -@flags: -@cancellable: -@error: -@Returns: - - - - - - - -@file: -@flags: -@io_priority: -@cancellable: -@callback: -@user_data: - - - - - - - -@file: -@res: -@error: -@Returns: - - - - - - - -@file: -@flags: -@io_priority: -@cancellable: -@callback: -@user_data: - - - - - - - -@file: -@res: -@error: -@Returns: - - - - - - - -@file: -@etag: -@make_backup: -@flags: -@io_priority: -@cancellable: -@callback: -@user_data: - - - - - - - -@file: -@res: -@error: -@Returns: - - - - - - - -@file: -@attributes: -@flags: -@cancellable: -@error: -@Returns: - - - - - - - -@file: -@attributes: -@flags: -@io_priority: -@cancellable: -@callback: -@user_data: - - - - - - - -@file: -@res: -@error: -@Returns: - - - - - - - -@file: -@cancellable: -@Returns: - - - - - - - -@file: -@flags: -@cancellable: -@Returns: - - - - - - - -@file: -@attributes: -@cancellable: -@error: -@Returns: - - - - - - - -@file: -@attributes: -@io_priority: -@cancellable: -@callback: -@user_data: - - - - - - - -@file: -@res: -@error: -@Returns: - - - - - - - -@file: -@cancellable: -@error: -@Returns: - - - - - - - -@file: -@cancellable: -@error: -@Returns: - - - - - - - -@file: -@io_priority: -@cancellable: -@callback: -@user_data: - - - - - - - -@file: -@res: -@error: -@Returns: - - - - - - - -@file: -@attributes: -@flags: -@cancellable: -@error: -@Returns: - - - - - - - -@file: -@attributes: -@flags: -@io_priority: -@cancellable: -@callback: -@user_data: - - - - - - - -@file: -@res: -@error: -@Returns: - - - - - - - -@file: -@display_name: -@cancellable: -@error: -@Returns: - - - - - - - -@file: -@display_name: -@io_priority: -@cancellable: -@callback: -@user_data: - - - - - - - -@file: -@res: -@error: -@Returns: - - - - - - - -@file: -@cancellable: -@error: -@Returns: - - - - - - - -@file: -@cancellable: -@error: -@Returns: - - - - - - - -@source: -@destination: -@flags: -@cancellable: -@progress_callback: -@progress_callback_data: -@error: -@Returns: - - - - - - - -@source: -@destination: -@flags: -@io_priority: -@cancellable: -@progress_callback: -@progress_callback_data: -@callback: -@user_data: - - - - - - - -@file: -@res: -@error: -@Returns: - - - - - - - -@source: -@destination: -@flags: -@cancellable: -@progress_callback: -@progress_callback_data: -@error: -@Returns: - - - - - - - -@file: -@cancellable: -@error: -@Returns: - - - - - - - -@file: -@cancellable: -@error: -@Returns: - - - - - - - -@file: -@symlink_value: -@cancellable: -@error: -@Returns: - - - - - - - -@file: -@cancellable: -@error: -@Returns: - - - - - - - -@file: -@cancellable: -@error: -@Returns: - - - - - - - -@file: -@attribute: -@type: -@value_p: -@flags: -@cancellable: -@error: -@Returns: - - - - - - - -@file: -@info: -@flags: -@cancellable: -@error: -@Returns: - - - - - - - -@file: -@info: -@flags: -@io_priority: -@cancellable: -@callback: -@user_data: - - - - - - - -@file: -@result: -@info: -@error: -@Returns: - - - - - - - -@file: -@attribute: -@value: -@flags: -@cancellable: -@error: -@Returns: - - - - - - - -@file: -@attribute: -@value: -@flags: -@cancellable: -@error: -@Returns: - - - - - - - -@file: -@attribute: -@value: -@flags: -@cancellable: -@error: -@Returns: - - - - - - - -@file: -@attribute: -@value: -@flags: -@cancellable: -@error: -@Returns: - - - - - - - -@file: -@attribute: -@value: -@flags: -@cancellable: -@error: -@Returns: - - - - - - - -@file: -@attribute: -@value: -@flags: -@cancellable: -@error: -@Returns: - - - - - - - -@file: -@flags: -@mount_operation: -@cancellable: -@callback: -@user_data: - - - - - - - -@file: -@result: -@error: -@Returns: - - - - - - - -@file: -@flags: -@cancellable: -@callback: -@user_data: - - - - - - - -@file: -@result: -@error: -@Returns: - - - - - - - -@file: -@flags: -@mount_operation: -@cancellable: -@callback: -@user_data: - - - - - - - -@file: -@result: -@error: -@Returns: - - - - - - - -@file: -@flags: -@cancellable: -@callback: -@user_data: - - - - - - - -@file: -@result: -@error: -@Returns: - - - - - - - -@file: -@flags: -@mount_operation: -@cancellable: -@callback: -@user_data: - - - - - - - -@file: -@result: -@error: -@Returns: - - - - - - - -@file: -@flags: -@start_operation: -@cancellable: -@callback: -@user_data: - - - - - - - -@file: -@result: -@error: -@Returns: - - - - - - - -@file: -@flags: -@mount_operation: -@cancellable: -@callback: -@user_data: - - - - - - - -@file: -@result: -@error: -@Returns: - - - - - - - -@file: -@cancellable: -@callback: -@user_data: - - - - - - - -@file: -@result: -@error: -@Returns: - - - - - - - -@location: -@flags: -@mount_operation: -@cancellable: -@callback: -@user_data: - - - - - - - -@location: -@result: -@error: -@Returns: - - - - - - - -@file: -@flags: -@cancellable: -@error: -@Returns: - - - - - - - -@file: -@flags: -@cancellable: -@error: -@Returns: - - - - - - - -@file: -@flags: -@cancellable: -@error: -@Returns: - - - - - - - -@file: -@cancellable: -@contents: -@length: -@etag_out: -@error: -@Returns: - - - - - - - -@file: -@cancellable: -@callback: -@user_data: - - - - - - - -@file: -@res: -@contents: -@length: -@etag_out: -@error: -@Returns: - - - - - - - -@file: -@cancellable: -@read_more_callback: -@callback: -@user_data: - - - - - - - -@file: -@res: -@contents: -@length: -@etag_out: -@error: -@Returns: - - - - - - - -@file: -@contents: -@length: -@etag: -@make_backup: -@flags: -@new_etag: -@cancellable: -@error: -@Returns: - - - - - - - -@file: -@contents: -@length: -@etag: -@make_backup: -@flags: -@cancellable: -@callback: -@user_data: - - - - - - - -@file: -@res: -@new_etag: -@error: -@Returns: - - - - - - - -@source: -@destination: -@flags: -@cancellable: -@error: -@Returns: - - - - - - - -@file: -@flags: -@cancellable: -@error: -@Returns: - - - - - - - -@file: -@flags: -@io_priority: -@cancellable: -@callback: -@user_data: - - - - - - - -@file: -@res: -@error: -@Returns: - - - - - - - -@file: -@cancellable: -@error: -@Returns: - - - - - - - -@file: -@io_priority: -@cancellable: -@callback: -@user_data: - - - - - - - -@file: -@res: -@error: -@Returns: - - - - - - - -@file: -@etag: -@make_backup: -@flags: -@cancellable: -@error: -@Returns: - - - - - - - -@file: -@etag: -@make_backup: -@flags: -@io_priority: -@cancellable: -@callback: -@user_data: - - - - - - - -@file: -@res: -@error: -@Returns: - - - - - - - -@file: -@Returns: - - diff --git a/docs/reference/gio/tmpl/gfileattribute.sgml b/docs/reference/gio/tmpl/gfileattribute.sgml deleted file mode 100644 index 5046176..0000000 --- a/docs/reference/gio/tmpl/gfileattribute.sgml +++ /dev/null @@ -1,125 +0,0 @@ - -GFileAttribute - - - - - - - - - - - - - - - - - - - - - - -@G_FILE_ATTRIBUTE_TYPE_INVALID: -@G_FILE_ATTRIBUTE_TYPE_STRING: -@G_FILE_ATTRIBUTE_TYPE_BYTE_STRING: -@G_FILE_ATTRIBUTE_TYPE_BOOLEAN: -@G_FILE_ATTRIBUTE_TYPE_UINT32: -@G_FILE_ATTRIBUTE_TYPE_INT32: -@G_FILE_ATTRIBUTE_TYPE_UINT64: -@G_FILE_ATTRIBUTE_TYPE_INT64: -@G_FILE_ATTRIBUTE_TYPE_OBJECT: -@G_FILE_ATTRIBUTE_TYPE_STRINGV: - - - - - - -@G_FILE_ATTRIBUTE_INFO_NONE: -@G_FILE_ATTRIBUTE_INFO_COPY_WITH_FILE: -@G_FILE_ATTRIBUTE_INFO_COPY_WHEN_MOVED: - - - - - - -@G_FILE_ATTRIBUTE_STATUS_UNSET: -@G_FILE_ATTRIBUTE_STATUS_SET: -@G_FILE_ATTRIBUTE_STATUS_ERROR_SETTING: - - - - - - -@name: -@type: -@flags: - - - - - - -@infos: -@n_infos: - - - - - - -@Returns: - - - - - - - -@list: -@Returns: - - - - - - - -@list: - - - - - - - -@list: -@Returns: - - - - - - - -@list: -@name: -@Returns: - - - - - - - -@list: -@name: -@type: -@flags: - - diff --git a/docs/reference/gio/tmpl/gfiledescriptorbased.sgml b/docs/reference/gio/tmpl/gfiledescriptorbased.sgml deleted file mode 100644 index b400236..0000000 --- a/docs/reference/gio/tmpl/gfiledescriptorbased.sgml +++ /dev/null @@ -1,34 +0,0 @@ - -GFileDescriptorBased - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@fd_based: -@Returns: - - diff --git a/docs/reference/gio/tmpl/gfileenumerator.sgml b/docs/reference/gio/tmpl/gfileenumerator.sgml deleted file mode 100644 index db64ae9..0000000 --- a/docs/reference/gio/tmpl/gfileenumerator.sgml +++ /dev/null @@ -1,135 +0,0 @@ - -GFileEnumerator - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@enumerator: -@cancellable: -@error: -@Returns: - - - - - - - -@enumerator: -@cancellable: -@error: -@Returns: - - - - - - - -@enumerator: -@num_files: -@io_priority: -@cancellable: -@callback: -@user_data: - - - - - - - -@enumerator: -@result: -@error: -@Returns: - - - - - - - -@enumerator: -@io_priority: -@cancellable: -@callback: -@user_data: - - - - - - - -@enumerator: -@result: -@error: -@Returns: - - - - - - - -@enumerator: -@Returns: - - - - - - - -@enumerator: -@Returns: - - - - - - - -@enumerator: -@pending: - - - - - - - -@enumerator: -@Returns: - - diff --git a/docs/reference/gio/tmpl/gfileicon.sgml b/docs/reference/gio/tmpl/gfileicon.sgml deleted file mode 100644 index c95d515..0000000 --- a/docs/reference/gio/tmpl/gfileicon.sgml +++ /dev/null @@ -1,48 +0,0 @@ - -GFileIcon - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@file: -@Returns: - - - - - - - -@icon: -@Returns: - - diff --git a/docs/reference/gio/tmpl/gfileinfo.sgml b/docs/reference/gio/tmpl/gfileinfo.sgml deleted file mode 100644 index 34cdbaf..0000000 --- a/docs/reference/gio/tmpl/gfileinfo.sgml +++ /dev/null @@ -1,1189 +0,0 @@ - -GFileInfo - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@G_FILE_TYPE_UNKNOWN: -@G_FILE_TYPE_REGULAR: -@G_FILE_TYPE_DIRECTORY: -@G_FILE_TYPE_SYMBOLIC_LINK: -@G_FILE_TYPE_SPECIAL: -@G_FILE_TYPE_SHORTCUT: -@G_FILE_TYPE_MOUNTABLE: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@Returns: - - - - - - - -@other: -@Returns: - - - - - - - -@src_info: -@dest_info: - - - - - - - -@info: -@attribute: -@Returns: - - - - - - - -@info: -@name_space: -@Returns: - - - - - - - -@info: -@name_space: -@Returns: - - - - - - - -@info: -@attribute: -@Returns: - - - - - - - -@info: -@attribute: - - - - - - - -@info: -@attribute: -@Returns: - - - - - - - -@info: -@attribute: -@type: -@value_pp: -@status: -@Returns: - - - - - - - -@info: -@attribute: -@Returns: - - - - - - - -@info: -@attribute: -@Returns: - - - - - - - -@info: -@attribute: -@Returns: - - - - - - - -@info: -@attribute: -@Returns: - - - - - - - -@info: -@attribute: -@Returns: - - - - - - - -@info: -@attribute: -@Returns: - - - - - - - -@info: -@attribute: -@Returns: - - - - - - - -@info: -@attribute: -@Returns: - - - - - - - -@info: -@attribute: -@Returns: - - - - - - - -@info: -@attribute: -@Returns: - - - - - - - -@info: -@attribute: -@type: -@value_p: - - - - - - - -@info: -@attribute: -@status: -@Returns: - - - - - - - -@info: -@attribute: -@attr_value: - - - - - - - -@info: -@attribute: -@attr_value: - - - - - - - -@info: -@attribute: -@attr_value: - - - - - - - -@info: -@attribute: -@attr_value: - - - - - - - -@info: -@attribute: -@attr_value: - - - - - - - -@info: -@attribute: -@attr_value: - - - - - - - -@info: -@attribute: -@attr_value: - - - - - - - -@info: -@attribute: -@attr_value: - - - - - - - -@info: -@attribute: -@attr_value: - - - - - - - -@info: - - - - - - - -@info: -@Returns: - - - - - - - -@info: -@Returns: - - - - - - - -@info: -@Returns: - - - - - - - -@info: -@Returns: - - - - - - - -@info: -@Returns: - - - - - - - -@info: -@Returns: - - - - - - - -@info: -@Returns: - - - - - - - -@info: -@Returns: - - - - - - - -@info: -@Returns: - - - - - - - -@info: -@Returns: - - - - - - - -@info: -@result: - - - - - - - -@info: -@Returns: - - - - - - - -@info: -@Returns: - - - - - - - -@info: -@Returns: - - - - - - - -@info: -@mask: - - - - - - - -@info: - - - - - - - -@info: -@type: - - - - - - - -@info: -@is_hidden: - - - - - - - -@info: -@is_symlink: - - - - - - - -@info: -@name: - - - - - - - -@info: -@display_name: - - - - - - - -@info: -@edit_name: - - - - - - - -@info: -@icon: - - - - - - - -@info: -@content_type: - - - - - - - -@info: -@size: - - - - - - - -@info: -@mtime: - - - - - - - -@info: -@symlink_target: - - - - - - - -@info: -@sort_order: - - - - - - - -@attributes: -@Returns: - - - - - - - -@matcher: -@Returns: - - - - - - - -@matcher: - - - - - - - -@matcher: -@attribute: -@Returns: - - - - - - - -@matcher: -@attribute: -@Returns: - - - - - - - -@matcher: -@ns: -@Returns: - - - - - - - -@matcher: -@Returns: - - diff --git a/docs/reference/gio/tmpl/gfileinputstream.sgml b/docs/reference/gio/tmpl/gfileinputstream.sgml deleted file mode 100644 index 063c5e1..0000000 --- a/docs/reference/gio/tmpl/gfileinputstream.sgml +++ /dev/null @@ -1,61 +0,0 @@ - -GFileInputStream - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@stream: -@attributes: -@cancellable: -@error: -@Returns: - - - - - - - -@stream: -@attributes: -@io_priority: -@cancellable: -@callback: -@user_data: - - - - - - - -@stream: -@result: -@error: -@Returns: - - diff --git a/docs/reference/gio/tmpl/gfileiostream.sgml b/docs/reference/gio/tmpl/gfileiostream.sgml deleted file mode 100644 index cbade18..0000000 --- a/docs/reference/gio/tmpl/gfileiostream.sgml +++ /dev/null @@ -1,70 +0,0 @@ - -GFileIOStream - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@stream: -@Returns: - - - - - - - -@stream: -@attributes: -@cancellable: -@error: -@Returns: - - - - - - - -@stream: -@attributes: -@io_priority: -@cancellable: -@callback: -@user_data: - - - - - - - -@stream: -@result: -@error: -@Returns: - - diff --git a/docs/reference/gio/tmpl/gfilemonitor.sgml b/docs/reference/gio/tmpl/gfilemonitor.sgml deleted file mode 100644 index 8447221..0000000 --- a/docs/reference/gio/tmpl/gfilemonitor.sgml +++ /dev/null @@ -1,97 +0,0 @@ - -GFileMonitor - - - - - - - - - - - - - - - - - - - - - - -@G_FILE_MONITOR_EVENT_CHANGED: -@G_FILE_MONITOR_EVENT_CHANGES_DONE_HINT: -@G_FILE_MONITOR_EVENT_DELETED: -@G_FILE_MONITOR_EVENT_CREATED: -@G_FILE_MONITOR_EVENT_ATTRIBUTE_CHANGED: -@G_FILE_MONITOR_EVENT_PRE_UNMOUNT: -@G_FILE_MONITOR_EVENT_UNMOUNTED: -@G_FILE_MONITOR_EVENT_MOVED: - - - - - - - - - - - - -@gfilemonitor: the object which received the signal. -@arg1: -@arg2: -@arg3: - - - - - - - - - - - - - - - - -@monitor: -@Returns: - - - - - - - -@monitor: -@Returns: - - - - - - - -@monitor: -@limit_msecs: - - - - - - - -@monitor: -@child: -@other_file: -@event_type: - - diff --git a/docs/reference/gio/tmpl/gfilenamecompleter.sgml b/docs/reference/gio/tmpl/gfilenamecompleter.sgml deleted file mode 100644 index 5c3e79d..0000000 --- a/docs/reference/gio/tmpl/gfilenamecompleter.sgml +++ /dev/null @@ -1,69 +0,0 @@ - -GFilenameCompleter - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@gfilenamecompleter: the object which received the signal. - - - - - - -@Returns: - - - - - - - -@completer: -@initial_text: -@Returns: - - - - - - - -@completer: -@initial_text: -@Returns: - - - - - - - -@completer: -@dirs_only: - - diff --git a/docs/reference/gio/tmpl/gfileoutputstream.sgml b/docs/reference/gio/tmpl/gfileoutputstream.sgml deleted file mode 100644 index 419af7f..0000000 --- a/docs/reference/gio/tmpl/gfileoutputstream.sgml +++ /dev/null @@ -1,70 +0,0 @@ - -GFileOutputStream - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@stream: -@attributes: -@cancellable: -@error: -@Returns: - - - - - - - -@stream: -@attributes: -@io_priority: -@cancellable: -@callback: -@user_data: - - - - - - - -@stream: -@result: -@error: -@Returns: - - - - - - - -@stream: -@Returns: - - diff --git a/docs/reference/gio/tmpl/gfilterinputstream.sgml b/docs/reference/gio/tmpl/gfilterinputstream.sgml deleted file mode 100644 index 0f32997..0000000 --- a/docs/reference/gio/tmpl/gfilterinputstream.sgml +++ /dev/null @@ -1,62 +0,0 @@ - -GFilterInputStream - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@stream: -@Returns: - - - - - - - -@stream: -@Returns: - - - - - - - -@stream: -@close_base: - - diff --git a/docs/reference/gio/tmpl/gfilteroutputstream.sgml b/docs/reference/gio/tmpl/gfilteroutputstream.sgml deleted file mode 100644 index 788b561..0000000 --- a/docs/reference/gio/tmpl/gfilteroutputstream.sgml +++ /dev/null @@ -1,62 +0,0 @@ - -GFilterOutputStream - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@stream: -@Returns: - - - - - - - -@stream: -@Returns: - - - - - - - -@stream: -@close_base: - - diff --git a/docs/reference/gio/tmpl/gicon.sgml b/docs/reference/gio/tmpl/gicon.sgml deleted file mode 100644 index fbcb3fd..0000000 --- a/docs/reference/gio/tmpl/gicon.sgml +++ /dev/null @@ -1,74 +0,0 @@ - -GIcon - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@g_iface: -@hash: -@equal: -@to_tokens: -@from_tokens: - - - - - - -@icon: -@Returns: - - - - - - - -@icon1: -@icon2: -@Returns: - - - - - - - -@icon: -@Returns: - - - - - - - -@str: -@error: -@Returns: - - diff --git a/docs/reference/gio/tmpl/ginetaddress.sgml b/docs/reference/gio/tmpl/ginetaddress.sgml deleted file mode 100644 index 4f3e368..0000000 --- a/docs/reference/gio/tmpl/ginetaddress.sgml +++ /dev/null @@ -1,248 +0,0 @@ - -GInetAddress - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@string: -@Returns: - - - - - - - -@bytes: -@family: -@Returns: - - - - - - - -@family: -@Returns: - - - - - - - -@family: -@Returns: - - - - - - - -@address: -@Returns: - - - - - - - -@address: -@Returns: - - - - - - - -@address: -@Returns: - - - - - - - -@address: -@Returns: - - - - - - - -@address: -@Returns: - - - - - - - -@address: -@Returns: - - - - - - - -@address: -@Returns: - - - - - - - -@address: -@Returns: - - - - - - - -@address: -@Returns: - - - - - - - -@address: -@Returns: - - - - - - - -@address: -@Returns: - - - - - - - -@address: -@Returns: - - - - - - - -@address: -@Returns: - - - - - - - -@address: -@Returns: - - diff --git a/docs/reference/gio/tmpl/ginetsocketaddress.sgml b/docs/reference/gio/tmpl/ginetsocketaddress.sgml deleted file mode 100644 index 5ef20dd..0000000 --- a/docs/reference/gio/tmpl/ginetsocketaddress.sgml +++ /dev/null @@ -1,63 +0,0 @@ - -GInetSocketAddress - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@address: -@port: -@Returns: - - - - - - - -@address: -@Returns: - - - - - - - -@address: -@Returns: - - diff --git a/docs/reference/gio/tmpl/ginitable.sgml b/docs/reference/gio/tmpl/ginitable.sgml deleted file mode 100644 index f0504b3..0000000 --- a/docs/reference/gio/tmpl/ginitable.sgml +++ /dev/null @@ -1,83 +0,0 @@ - -GInitable - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@g_iface: -@init: - - - - - - -@initable: -@cancellable: -@error: -@Returns: - - - - - - - -@object_type: -@cancellable: -@error: -@first_property_name: -@Varargs: -@Returns: - - - - - - - -@object_type: -@first_property_name: -@var_args: -@cancellable: -@error: -@Returns: - - - - - - - -@object_type: -@n_parameters: -@parameters: -@cancellable: -@error: -@Returns: - - diff --git a/docs/reference/gio/tmpl/ginputstream.sgml b/docs/reference/gio/tmpl/ginputstream.sgml deleted file mode 100644 index d7496f0..0000000 --- a/docs/reference/gio/tmpl/ginputstream.sgml +++ /dev/null @@ -1,183 +0,0 @@ - -GInputStream - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@stream: -@buffer: -@count: -@cancellable: -@error: -@Returns: - - - - - - - -@stream: -@buffer: -@count: -@bytes_read: -@cancellable: -@error: -@Returns: - - - - - - - -@stream: -@count: -@cancellable: -@error: -@Returns: - - - - - - - -@stream: -@cancellable: -@error: -@Returns: - - - - - - - -@stream: -@buffer: -@count: -@io_priority: -@cancellable: -@callback: -@user_data: - - - - - - - -@stream: -@result: -@error: -@Returns: - - - - - - - -@stream: -@count: -@io_priority: -@cancellable: -@callback: -@user_data: - - - - - - - -@stream: -@result: -@error: -@Returns: - - - - - - - -@stream: -@io_priority: -@cancellable: -@callback: -@user_data: - - - - - - - -@stream: -@result: -@error: -@Returns: - - - - - - - -@stream: -@Returns: - - - - - - - -@stream: -@Returns: - - - - - - - -@stream: -@error: -@Returns: - - - - - - - -@stream: - - diff --git a/docs/reference/gio/tmpl/gio-unused.sgml b/docs/reference/gio/tmpl/gio-unused.sgml deleted file mode 100644 index e69de29..0000000 diff --git a/docs/reference/gio/tmpl/gioerror.sgml b/docs/reference/gio/tmpl/gioerror.sgml deleted file mode 100644 index 6c6ade2..0000000 --- a/docs/reference/gio/tmpl/gioerror.sgml +++ /dev/null @@ -1,77 +0,0 @@ - -GIOError - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@G_IO_ERROR_FAILED: -@G_IO_ERROR_NOT_FOUND: -@G_IO_ERROR_EXISTS: -@G_IO_ERROR_IS_DIRECTORY: -@G_IO_ERROR_NOT_DIRECTORY: -@G_IO_ERROR_NOT_EMPTY: -@G_IO_ERROR_NOT_REGULAR_FILE: -@G_IO_ERROR_NOT_SYMBOLIC_LINK: -@G_IO_ERROR_NOT_MOUNTABLE_FILE: -@G_IO_ERROR_FILENAME_TOO_LONG: -@G_IO_ERROR_INVALID_FILENAME: -@G_IO_ERROR_TOO_MANY_LINKS: -@G_IO_ERROR_NO_SPACE: -@G_IO_ERROR_INVALID_ARGUMENT: -@G_IO_ERROR_PERMISSION_DENIED: -@G_IO_ERROR_NOT_SUPPORTED: -@G_IO_ERROR_NOT_MOUNTED: -@G_IO_ERROR_ALREADY_MOUNTED: -@G_IO_ERROR_CLOSED: -@G_IO_ERROR_CANCELLED: -@G_IO_ERROR_PENDING: -@G_IO_ERROR_READ_ONLY: -@G_IO_ERROR_CANT_CREATE_BACKUP: -@G_IO_ERROR_WRONG_ETAG: -@G_IO_ERROR_TIMED_OUT: -@G_IO_ERROR_WOULD_RECURSE: -@G_IO_ERROR_BUSY: -@G_IO_ERROR_WOULD_BLOCK: -@G_IO_ERROR_HOST_NOT_FOUND: -@G_IO_ERROR_WOULD_MERGE: -@G_IO_ERROR_FAILED_HANDLED: -@G_IO_ERROR_TOO_MANY_OPEN_FILES: -@G_IO_ERROR_NOT_INITIALIZED: -@G_IO_ERROR_ADDRESS_IN_USE: -@G_IO_ERROR_PARTIAL_INPUT: -@G_IO_ERROR_INVALID_DATA: - - - - - - -@err_no: -@Returns: - - diff --git a/docs/reference/gio/tmpl/giomodule.sgml b/docs/reference/gio/tmpl/giomodule.sgml deleted file mode 100644 index c501424..0000000 --- a/docs/reference/gio/tmpl/giomodule.sgml +++ /dev/null @@ -1,75 +0,0 @@ - -GIOModule - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@filename: -@Returns: - - - - - - - -@dirname: -@Returns: - - - - - - - -@dirname: - - - - - - - -@module: - - - - - - - -@module: - - - - - - - -@Returns: - - diff --git a/docs/reference/gio/tmpl/gioscheduler.sgml b/docs/reference/gio/tmpl/gioscheduler.sgml deleted file mode 100644 index 77af9cf..0000000 --- a/docs/reference/gio/tmpl/gioscheduler.sgml +++ /dev/null @@ -1,78 +0,0 @@ - -GIOScheduler - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@job: -@cancellable: -@user_data: -@Returns: - - - - - - - -@job_func: -@user_data: -@notify: -@io_priority: -@cancellable: - - - - - - - - - - - - - - -@job: -@func: -@user_data: -@notify: -@Returns: - - - - - - - -@job: -@func: -@user_data: -@notify: - - diff --git a/docs/reference/gio/tmpl/giostream.sgml b/docs/reference/gio/tmpl/giostream.sgml deleted file mode 100644 index ebd80b6..0000000 --- a/docs/reference/gio/tmpl/giostream.sgml +++ /dev/null @@ -1,128 +0,0 @@ - -GIOStream - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@stream: -@Returns: - - - - - - - -@stream: -@Returns: - - - - - - - -@stream: -@cancellable: -@error: -@Returns: - - - - - - - -@stream: -@io_priority: -@cancellable: -@callback: -@user_data: - - - - - - - -@stream: -@result: -@error: -@Returns: - - - - - - - -@stream: -@Returns: - - - - - - - -@stream: -@Returns: - - - - - - - -@stream: -@error: -@Returns: - - - - - - - -@stream: - - diff --git a/docs/reference/gio/tmpl/gloadableicon.sgml b/docs/reference/gio/tmpl/gloadableicon.sgml deleted file mode 100644 index 7093f1f..0000000 --- a/docs/reference/gio/tmpl/gloadableicon.sgml +++ /dev/null @@ -1,72 +0,0 @@ - -GLoadableIcon - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@g_iface: -@load: -@load_async: -@load_finish: - - - - - - -@icon: -@size: -@type: -@cancellable: -@error: -@Returns: - - - - - - - -@icon: -@size: -@cancellable: -@callback: -@user_data: - - - - - - - -@icon: -@res: -@type: -@error: -@Returns: - - diff --git a/docs/reference/gio/tmpl/gmemoryinputstream.sgml b/docs/reference/gio/tmpl/gmemoryinputstream.sgml deleted file mode 100644 index 6e4cc88..0000000 --- a/docs/reference/gio/tmpl/gmemoryinputstream.sgml +++ /dev/null @@ -1,55 +0,0 @@ - -GMemoryInputStream - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@Returns: - - - - - - - -@data: -@len: -@destroy: -@Returns: - - - - - - - -@stream: -@data: -@len: -@destroy: - - diff --git a/docs/reference/gio/tmpl/gmemoryoutputstream.sgml b/docs/reference/gio/tmpl/gmemoryoutputstream.sgml deleted file mode 100644 index b22faae..0000000 --- a/docs/reference/gio/tmpl/gmemoryoutputstream.sgml +++ /dev/null @@ -1,99 +0,0 @@ - -GMemoryOutputStream - - - - - - - - - - - - - - - - - - - - - - -@data: -@size: -@Returns: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@data: -@size: -@realloc_function: -@destroy_function: -@Returns: - - - - - - - -@ostream: -@Returns: - - - - - - - -@ostream: -@Returns: - - - - - - - -@ostream: -@Returns: - - diff --git a/docs/reference/gio/tmpl/gmount.sgml b/docs/reference/gio/tmpl/gmount.sgml deleted file mode 100644 index 31301e1..0000000 --- a/docs/reference/gio/tmpl/gmount.sgml +++ /dev/null @@ -1,352 +0,0 @@ - -GMount - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@gmount: the object which received the signal. - - - - - - -@gmount: the object which received the signal. - - - - - - -@gmount: the object which received the signal. - - - - - - -@g_iface: -@changed: -@unmounted: -@get_root: -@get_name: -@get_icon: -@get_uuid: -@get_volume: -@get_drive: -@can_unmount: -@can_eject: -@unmount: -@unmount_finish: -@eject: -@eject_finish: -@remount: -@remount_finish: -@guess_content_type: -@guess_content_type_finish: -@guess_content_type_sync: -@pre_unmount: -@unmount_with_operation: -@unmount_with_operation_finish: -@eject_with_operation: -@eject_with_operation_finish: -@get_default_location: - - - - - - -@mount: -@Returns: - - - - - - - -@mount: -@Returns: - - - - - - - -@mount: -@Returns: - - - - - - - -@mount: -@Returns: - - - - - - - -@mount: -@Returns: - - - - - - - -@mount: -@Returns: - - - - - - - -@mount: -@Returns: - - - - - - - -@mount: -@Returns: - - - - - - - -@G_MOUNT_MOUNT_NONE: - - - - - - -@G_MOUNT_UNMOUNT_NONE: -@G_MOUNT_UNMOUNT_FORCE: - - - - - - -@mount: -@flags: -@cancellable: -@callback: -@user_data: - - - - - - - -@mount: -@result: -@error: -@Returns: - - - - - - - -@mount: -@flags: -@mount_operation: -@cancellable: -@callback: -@user_data: - - - - - - - -@mount: -@result: -@error: -@Returns: - - - - - - - -@mount: -@flags: -@mount_operation: -@cancellable: -@callback: -@user_data: - - - - - - - -@mount: -@result: -@error: -@Returns: - - - - - - - -@mount: -@Returns: - - - - - - - -@mount: -@flags: -@cancellable: -@callback: -@user_data: - - - - - - - -@mount: -@result: -@error: -@Returns: - - - - - - - -@mount: -@flags: -@mount_operation: -@cancellable: -@callback: -@user_data: - - - - - - - -@mount: -@result: -@error: -@Returns: - - - - - - - -@mount: -@force_rescan: -@cancellable: -@callback: -@user_data: - - - - - - - -@mount: -@result: -@error: -@Returns: - - - - - - - -@mount: -@force_rescan: -@cancellable: -@error: -@Returns: - - - - - - - -@mount: -@Returns: - - - - - - - -@mount: - - - - - - - -@mount: - - diff --git a/docs/reference/gio/tmpl/gmountoperation.sgml b/docs/reference/gio/tmpl/gmountoperation.sgml deleted file mode 100644 index ac6311c..0000000 --- a/docs/reference/gio/tmpl/gmountoperation.sgml +++ /dev/null @@ -1,254 +0,0 @@ - -GMountOperation - - - - - - - - - - - - - - - - - - - - - - -@G_ASK_PASSWORD_NEED_PASSWORD: -@G_ASK_PASSWORD_NEED_USERNAME: -@G_ASK_PASSWORD_NEED_DOMAIN: -@G_ASK_PASSWORD_SAVING_SUPPORTED: -@G_ASK_PASSWORD_ANONYMOUS_SUPPORTED: - - - - - - -@G_PASSWORD_SAVE_NEVER: -@G_PASSWORD_SAVE_FOR_SESSION: -@G_PASSWORD_SAVE_PERMANENTLY: - - - - - - - - - - - - -@gmountoperation: the object which received the signal. - - - - - - -@gmountoperation: the object which received the signal. -@arg1: -@arg2: -@arg3: -@arg4: - - - - - - -@gmountoperation: the object which received the signal. -@arg1: -@arg2: - - - - - - -@gmountoperation: the object which received the signal. -@arg1: - - - - - - -@gmountoperation: the object which received the signal. -@arg1: -@arg2: -@arg3: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@G_MOUNT_OPERATION_HANDLED: -@G_MOUNT_OPERATION_ABORTED: -@G_MOUNT_OPERATION_UNHANDLED: - - - - - - -@Returns: - - - - - - - -@op: -@Returns: - - - - - - - -@op: -@username: - - - - - - - -@op: -@Returns: - - - - - - - -@op: -@password: - - - - - - - -@op: -@Returns: - - - - - - - -@op: -@anonymous: - - - - - - - -@op: -@Returns: - - - - - - - -@op: -@domain: - - - - - - - -@op: -@Returns: - - - - - - - -@op: -@save: - - - - - - - -@op: -@Returns: - - - - - - - -@op: -@choice: - - - - - - - -@op: -@result: - - diff --git a/docs/reference/gio/tmpl/gnetworkaddress.sgml b/docs/reference/gio/tmpl/gnetworkaddress.sgml deleted file mode 100644 index b2a055c..0000000 --- a/docs/reference/gio/tmpl/gnetworkaddress.sgml +++ /dev/null @@ -1,74 +0,0 @@ - -GNetworkAddress - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@hostname: -@port: -@Returns: - - - - - - - -@addr: -@Returns: - - - - - - - -@addr: -@Returns: - - - - - - - -@host_and_port: -@default_port: -@error: -@Returns: - - diff --git a/docs/reference/gio/tmpl/gnetworkservice.sgml b/docs/reference/gio/tmpl/gnetworkservice.sgml deleted file mode 100644 index 6857396..0000000 --- a/docs/reference/gio/tmpl/gnetworkservice.sgml +++ /dev/null @@ -1,78 +0,0 @@ - -GNetworkService - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@service: -@protocol: -@domain: -@Returns: - - - - - - - -@srv: -@Returns: - - - - - - - -@srv: -@Returns: - - - - - - - -@srv: -@Returns: - - diff --git a/docs/reference/gio/tmpl/goutputstream.sgml b/docs/reference/gio/tmpl/goutputstream.sgml deleted file mode 100644 index f6156f0..0000000 --- a/docs/reference/gio/tmpl/goutputstream.sgml +++ /dev/null @@ -1,237 +0,0 @@ - -GOutputStream - - - - - - - - - - - - - - - - - - - - - - -@G_OUTPUT_STREAM_SPLICE_NONE: -@G_OUTPUT_STREAM_SPLICE_CLOSE_SOURCE: -@G_OUTPUT_STREAM_SPLICE_CLOSE_TARGET: - - - - - - - - - - - - -@stream: -@buffer: -@count: -@cancellable: -@error: -@Returns: - - - - - - - -@stream: -@buffer: -@count: -@bytes_written: -@cancellable: -@error: -@Returns: - - - - - - - -@stream: -@source: -@flags: -@cancellable: -@error: -@Returns: - - - - - - - -@stream: -@cancellable: -@error: -@Returns: - - - - - - - -@stream: -@cancellable: -@error: -@Returns: - - - - - - - -@stream: -@buffer: -@count: -@io_priority: -@cancellable: -@callback: -@user_data: - - - - - - - -@stream: -@result: -@error: -@Returns: - - - - - - - -@stream: -@source: -@flags: -@io_priority: -@cancellable: -@callback: -@user_data: - - - - - - - -@stream: -@result: -@error: -@Returns: - - - - - - - -@stream: -@io_priority: -@cancellable: -@callback: -@user_data: - - - - - - - -@stream: -@result: -@error: -@Returns: - - - - - - - -@stream: -@io_priority: -@cancellable: -@callback: -@user_data: - - - - - - - -@stream: -@result: -@error: -@Returns: - - - - - - - -@stream: -@Returns: - - - - - - - -@stream: -@Returns: - - - - - - - -@stream: -@Returns: - - - - - - - -@stream: -@error: -@Returns: - - - - - - - -@stream: - - diff --git a/docs/reference/gio/tmpl/gresolver.sgml b/docs/reference/gio/tmpl/gresolver.sgml deleted file mode 100644 index cb2208d..0000000 --- a/docs/reference/gio/tmpl/gresolver.sgml +++ /dev/null @@ -1,189 +0,0 @@ - -GResolver - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@gresolver: the object which received the signal. - - - - - - -@Returns: - - - - - - - -@resolver: - - - - - - - -@resolver: -@hostname: -@cancellable: -@error: -@Returns: - - - - - - - -@resolver: -@hostname: -@cancellable: -@callback: -@user_data: - - - - - - - -@resolver: -@result: -@error: -@Returns: - - - - - - - -@addresses: - - - - - - - -@resolver: -@address: -@cancellable: -@error: -@Returns: - - - - - - - -@resolver: -@address: -@cancellable: -@callback: -@user_data: - - - - - - - -@resolver: -@result: -@error: -@Returns: - - - - - - - -@resolver: -@service: -@protocol: -@domain: -@cancellable: -@error: -@Returns: - - - - - - - -@resolver: -@service: -@protocol: -@domain: -@cancellable: -@callback: -@user_data: - - - - - - - -@resolver: -@result: -@error: -@Returns: - - - - - - - -@targets: - - - - - - - - - - - - - - -@G_RESOLVER_ERROR_NOT_FOUND: -@G_RESOLVER_ERROR_TEMPORARY_FAILURE: -@G_RESOLVER_ERROR_INTERNAL: - diff --git a/docs/reference/gio/tmpl/gseekable.sgml b/docs/reference/gio/tmpl/gseekable.sgml deleted file mode 100644 index b74f185..0000000 --- a/docs/reference/gio/tmpl/gseekable.sgml +++ /dev/null @@ -1,89 +0,0 @@ - -GSeekable - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@g_iface: -@tell: -@can_seek: -@seek: -@can_truncate: -@truncate_fn: - - - - - - -@seekable: -@Returns: - - - - - - - -@seekable: -@Returns: - - - - - - - -@seekable: -@offset: -@type: -@cancellable: -@error: -@Returns: - - - - - - - -@seekable: -@Returns: - - - - - - - -@seekable: -@offset: -@cancellable: -@error: -@Returns: - - diff --git a/docs/reference/gio/tmpl/gsimpleasyncresult.sgml b/docs/reference/gio/tmpl/gsimpleasyncresult.sgml deleted file mode 100644 index ca13aa0..0000000 --- a/docs/reference/gio/tmpl/gsimpleasyncresult.sgml +++ /dev/null @@ -1,253 +0,0 @@ - -GSimpleAsyncResult - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@res: -@object: -@cancellable: - - - - - - - -@source_object: -@callback: -@user_data: -@source_tag: -@Returns: - - - - - - - -@source_object: -@callback: -@user_data: -@domain: -@code: -@format: -@Varargs: -@Returns: - - - - - - - -@source_object: -@callback: -@user_data: -@error: -@Returns: - - - - - - - -@simple: -@op_res: -@destroy_op_res: - - - - - - - -@simple: -@Returns: - - - - - - - -@simple: -@op_res: - - - - - - - -@simple: -@Returns: - - - - - - - -@simple: -@op_res: - - - - - - - -@simple: -@Returns: - - - - - - - -@simple: -@Returns: - - - - - - - -@result: -@source: -@source_tag: -@Returns: - - - - - - - -@simple: -@handle_cancellation: - - - - - - - -@simple: - - - - - - - -@simple: - - - - - - - -@simple: -@func: -@io_priority: -@cancellable: - - - - - - - -@simple: -@error: - - - - - - - -@simple: -@dest: -@Returns: - - - - - - - -@simple: -@domain: -@code: -@format: -@Varargs: - - - - - - - -@simple: -@domain: -@code: -@format: -@args: - - - - - - - -@object: -@callback: -@user_data: -@domain: -@code: -@format: -@Varargs: - - - - - - - -@object: -@callback: -@user_data: -@error: - - diff --git a/docs/reference/gio/tmpl/gsocket.sgml b/docs/reference/gio/tmpl/gsocket.sgml deleted file mode 100644 index d0943e3..0000000 --- a/docs/reference/gio/tmpl/gsocket.sgml +++ /dev/null @@ -1,485 +0,0 @@ - -GSocket - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@socket: -@condition: -@user_data: -@Returns: - - - - - - - -@G_SOCKET_TYPE_INVALID: -@G_SOCKET_TYPE_STREAM: -@G_SOCKET_TYPE_DATAGRAM: -@G_SOCKET_TYPE_SEQPACKET: - - - - - - -@G_SOCKET_PROTOCOL_UNKNOWN: -@G_SOCKET_PROTOCOL_DEFAULT: -@G_SOCKET_PROTOCOL_TCP: -@G_SOCKET_PROTOCOL_UDP: -@G_SOCKET_PROTOCOL_SCTP: - - - - - - -@G_SOCKET_MSG_NONE: -@G_SOCKET_MSG_OOB: -@G_SOCKET_MSG_PEEK: -@G_SOCKET_MSG_DONTROUTE: - - - - - - -@buffer: -@size: - - - - - - -@buffer: -@size: - - - - - - -@family: -@type: -@protocol: -@error: -@Returns: - - - - - - - -@fd: -@error: -@Returns: - - - - - - - -@socket: -@address: -@allow_reuse: -@error: -@Returns: - - - - - - - -@socket: -@error: -@Returns: - - - - - - - -@socket: -@cancellable: -@error: -@Returns: - - - - - - - -@socket: -@address: -@cancellable: -@error: -@Returns: - - - - - - - -@socket: -@error: -@Returns: - - - - - - - -@socket: -@buffer: -@size: -@cancellable: -@error: -@Returns: - - - - - - - -@socket: -@address: -@buffer: -@size: -@cancellable: -@error: -@Returns: - - - - - - - -@socket: -@address: -@vectors: -@num_vectors: -@messages: -@num_messages: -@flags: -@cancellable: -@error: -@Returns: - - - - - - - -@socket: -@buffer: -@size: -@cancellable: -@error: -@Returns: - - - - - - - -@socket: -@address: -@buffer: -@size: -@cancellable: -@error: -@Returns: - - - - - - - -@socket: -@address: -@vectors: -@num_vectors: -@messages: -@num_messages: -@flags: -@cancellable: -@error: -@Returns: - - - - - - - -@socket: -@error: -@Returns: - - - - - - - -@socket: -@Returns: - - - - - - - -@socket: -@shutdown_read: -@shutdown_write: -@error: -@Returns: - - - - - - - -@socket: -@Returns: - - - - - - - -@socket: -@condition: -@cancellable: -@Returns: - - - - - - - -@socket: -@condition: -@Returns: - - - - - - - -@socket: -@condition: -@cancellable: -@error: -@Returns: - - - - - - - -@socket: -@backlog: - - - - - - - -@socket: -@Returns: - - - - - - - -@socket: -@Returns: - - - - - - - -@socket: -@blocking: - - - - - - - -@socket: -@Returns: - - - - - - - -@socket: -@keepalive: - - - - - - - -@socket: -@Returns: - - - - - - - -@socket: -@Returns: - - - - - - - -@socket: -@error: -@Returns: - - - - - - - -@socket: -@Returns: - - - - - - - -@socket: -@error: -@Returns: - - - - - - - -@socket: -@Returns: - - - - - - - -@socket: -@Returns: - - diff --git a/docs/reference/gio/tmpl/gsocketaddress.sgml b/docs/reference/gio/tmpl/gsocketaddress.sgml deleted file mode 100644 index 7db4c30..0000000 --- a/docs/reference/gio/tmpl/gsocketaddress.sgml +++ /dev/null @@ -1,80 +0,0 @@ - -GSocketAddress - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@G_SOCKET_FAMILY_INVALID: -@G_SOCKET_FAMILY_UNIX: -@G_SOCKET_FAMILY_IPV4: -@G_SOCKET_FAMILY_IPV6: - - - - - - -@native: -@len: -@Returns: - - - - - - - -@address: -@Returns: - - - - - - - -@address: -@dest: -@destlen: -@error: -@Returns: - - - - - - - -@address: -@Returns: - - diff --git a/docs/reference/gio/tmpl/gsocketclient.sgml b/docs/reference/gio/tmpl/gsocketclient.sgml deleted file mode 100644 index 3c0eec3..0000000 --- a/docs/reference/gio/tmpl/gsocketclient.sgml +++ /dev/null @@ -1,234 +0,0 @@ - -GSocketClient - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@Returns: - - - - - - - -@client: -@connectable: -@cancellable: -@error: -@Returns: - - - - - - - -@client: -@connectable: -@cancellable: -@callback: -@user_data: - - - - - - - -@client: -@result: -@error: -@Returns: - - - - - - - -@client: -@host_and_port: -@default_port: -@cancellable: -@error: -@Returns: - - - - - - - -@client: -@host_and_port: -@default_port: -@cancellable: -@callback: -@user_data: - - - - - - - -@client: -@result: -@error: -@Returns: - - - - - - - -@client: -@domain: -@service: -@cancellable: -@error: -@Returns: - - - - - - - -@client: -@domain: -@service: -@cancellable: -@callback: -@user_data: - - - - - - - -@client: -@result: -@error: -@Returns: - - - - - - - -@client: -@family: - - - - - - - -@client: -@address: - - - - - - - -@client: -@protocol: - - - - - - - -@client: -@type: - - - - - - - -@client: -@Returns: - - - - - - - -@client: -@Returns: - - - - - - - -@client: -@Returns: - - - - - - - -@client: -@Returns: - - diff --git a/docs/reference/gio/tmpl/gsocketconnectable.sgml b/docs/reference/gio/tmpl/gsocketconnectable.sgml deleted file mode 100644 index 9c3ee3b..0000000 --- a/docs/reference/gio/tmpl/gsocketconnectable.sgml +++ /dev/null @@ -1,81 +0,0 @@ - -GSocketConnectable - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@g_iface: -@enumerate: - - - - - - -@connectable: -@Returns: - - - - - - - - - - - - - -@enumerator: -@cancellable: -@error: -@Returns: - - - - - - - -@enumerator: -@cancellable: -@callback: -@user_data: - - - - - - - -@enumerator: -@result: -@error: -@Returns: - - diff --git a/docs/reference/gio/tmpl/gsocketconnection.sgml b/docs/reference/gio/tmpl/gsocketconnection.sgml deleted file mode 100644 index c6e573d..0000000 --- a/docs/reference/gio/tmpl/gsocketconnection.sgml +++ /dev/null @@ -1,148 +0,0 @@ - -GSocketConnection - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@connection: -@error: -@Returns: - - - - - - - -@connection: -@error: -@Returns: - - - - - - - -@connection: -@Returns: - - - - - - - - - - - - - - - - - - -@connection: -@graceful_disconnect: - - - - - - - -@connection: -@Returns: - - - - - - - - - - - - - -@connection: -@cancellable: -@error: -@Returns: - - - - - - - -@connection: -@fd: -@cancellable: -@error: -@Returns: - - - - - - - -@socket: -@Returns: - - - - - - - -@family: -@type: -@protocol_id: -@Returns: - - - - - - - -@g_type: -@family: -@type: -@protocol: - - diff --git a/docs/reference/gio/tmpl/gsocketcontrolmessage.sgml b/docs/reference/gio/tmpl/gsocketcontrolmessage.sgml deleted file mode 100644 index 3d93883..0000000 --- a/docs/reference/gio/tmpl/gsocketcontrolmessage.sgml +++ /dev/null @@ -1,73 +0,0 @@ - -GSocketControlMessage - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@level: -@type: -@size: -@data: -@Returns: - - - - - - - -@message: -@Returns: - - - - - - - -@message: -@Returns: - - - - - - - -@message: -@Returns: - - - - - - - -@message: -@data: - - diff --git a/docs/reference/gio/tmpl/gsocketlistener.sgml b/docs/reference/gio/tmpl/gsocketlistener.sgml deleted file mode 100644 index efd06f4..0000000 --- a/docs/reference/gio/tmpl/gsocketlistener.sgml +++ /dev/null @@ -1,175 +0,0 @@ - -GSocketListener - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@Returns: - - - - - - - -@listener: -@socket: -@source_object: -@error: -@Returns: - - - - - - - -@listener: -@address: -@type: -@protocol: -@source_object: -@effective_address: -@error: -@Returns: - - - - - - - -@listener: -@port: -@source_object: -@error: -@Returns: - - - - - - - -@listener: -@source_object: -@error: -@Returns: - - - - - - - -@listener: -@source_object: -@cancellable: -@error: -@Returns: - - - - - - - -@listener: -@cancellable: -@callback: -@user_data: - - - - - - - -@listener: -@result: -@source_object: -@error: -@Returns: - - - - - - - -@listener: -@source_object: -@cancellable: -@error: -@Returns: - - - - - - - -@listener: -@cancellable: -@callback: -@user_data: - - - - - - - -@listener: -@result: -@source_object: -@error: -@Returns: - - - - - - - -@listener: - - - - - - - -@listener: -@listen_backlog: - - diff --git a/docs/reference/gio/tmpl/gsocketservice.sgml b/docs/reference/gio/tmpl/gsocketservice.sgml deleted file mode 100644 index 24603bd..0000000 --- a/docs/reference/gio/tmpl/gsocketservice.sgml +++ /dev/null @@ -1,68 +0,0 @@ - -GSocketService - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@gsocketservice: the object which received the signal. -@arg1: -@arg2: -@Returns: - - - - - - -@Returns: - - - - - - - -@service: - - - - - - - -@service: - - - - - - - -@service: -@Returns: - - diff --git a/docs/reference/gio/tmpl/gsrvtarget.sgml b/docs/reference/gio/tmpl/gsrvtarget.sgml deleted file mode 100644 index 8ecb9e2..0000000 --- a/docs/reference/gio/tmpl/gsrvtarget.sgml +++ /dev/null @@ -1,99 +0,0 @@ - -GSrvTarget - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@hostname: -@port: -@priority: -@weight: -@Returns: - - - - - - - -@target: -@Returns: - - - - - - - -@target: - - - - - - - -@target: -@Returns: - - - - - - - -@target: -@Returns: - - - - - - - -@target: -@Returns: - - - - - - - -@target: -@Returns: - - - - - - - -@targets: -@Returns: - - diff --git a/docs/reference/gio/tmpl/gthemedicon.sgml b/docs/reference/gio/tmpl/gthemedicon.sgml deleted file mode 100644 index ac37f88..0000000 --- a/docs/reference/gio/tmpl/gthemedicon.sgml +++ /dev/null @@ -1,95 +0,0 @@ - -GThemedIcon - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@iconname: -@Returns: - - - - - - - -@iconnames: -@len: -@Returns: - - - - - - - -@iconname: -@Returns: - - - - - - - -@icon: -@iconname: - - - - - - - -@icon: -@iconname: - - - - - - - -@icon: -@Returns: - - diff --git a/docs/reference/gio/tmpl/gthreadedsocketservice.sgml b/docs/reference/gio/tmpl/gthreadedsocketservice.sgml deleted file mode 100644 index a8df8d9..0000000 --- a/docs/reference/gio/tmpl/gthreadedsocketservice.sgml +++ /dev/null @@ -1,49 +0,0 @@ - -GThreadedSocketService - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@gthreadedsocketservice: the object which received the signal. -@arg1: -@arg2: -@Returns: - - - - - - - - - - - -@max_threads: -@Returns: - - diff --git a/docs/reference/gio/tmpl/gunixfdlist.sgml b/docs/reference/gio/tmpl/gunixfdlist.sgml deleted file mode 100644 index 4018a0d..0000000 --- a/docs/reference/gio/tmpl/gunixfdlist.sgml +++ /dev/null @@ -1,94 +0,0 @@ - -GUnixFDList - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@fds: -@n_fds: -@Returns: - - - - - - - -@Returns: - - - - - - - -@list: -@Returns: - - - - - - - -@list: -@index_: -@error: -@Returns: - - - - - - - -@list: -@length: -@Returns: - - - - - - - -@list: -@length: -@Returns: - - - - - - - -@list: -@fd: -@error: -@Returns: - - diff --git a/docs/reference/gio/tmpl/gunixfdmessage.sgml b/docs/reference/gio/tmpl/gunixfdmessage.sgml deleted file mode 100644 index 69a48ca..0000000 --- a/docs/reference/gio/tmpl/gunixfdmessage.sgml +++ /dev/null @@ -1,77 +0,0 @@ - -GUnixFDMessage - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@fd_list: -@Returns: - - - - - - - -@Returns: - - - - - - - -@message: -@Returns: - - - - - - - -@message: -@fd: -@error: -@Returns: - - - - - - - -@message: -@length: -@Returns: - - diff --git a/docs/reference/gio/tmpl/gunixinputstream.sgml b/docs/reference/gio/tmpl/gunixinputstream.sgml deleted file mode 100644 index a4b9eda..0000000 --- a/docs/reference/gio/tmpl/gunixinputstream.sgml +++ /dev/null @@ -1,72 +0,0 @@ - -GUnixInputStream - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@fd: -@close_fd: -@Returns: - - - - - - - -@stream: -@close_fd: - - - - - - - -@stream: -@Returns: - - - - - - - -@stream: -@Returns: - - diff --git a/docs/reference/gio/tmpl/gunixmounts.sgml b/docs/reference/gio/tmpl/gunixmounts.sgml deleted file mode 100644 index 93086a7..0000000 --- a/docs/reference/gio/tmpl/gunixmounts.sgml +++ /dev/null @@ -1,327 +0,0 @@ - -Unix Mounts - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@gunixmountmonitor: the object which received the signal. - - - - - - -@gunixmountmonitor: the object which received the signal. - - - - - - -@mount_entry: - - - - - - - -@mount1: -@mount2: -@Returns: - - - - - - - -@mount_entry: -@Returns: - - - - - - - -@mount_entry: -@Returns: - - - - - - - -@mount_entry: -@Returns: - - - - - - - -@mount_entry: -@Returns: - - - - - - - -@mount_entry: -@Returns: - - - - - - - -@mount_entry: -@Returns: - - - - - - - -@mount_entry: -@Returns: - - - - - - - -@mount_entry: -@Returns: - - - - - - - -@mount_entry: -@Returns: - - - - - - - -@mount_point: - - - - - - - -@mount1: -@mount2: -@Returns: - - - - - - - -@mount_point: -@Returns: - - - - - - - -@mount_point: -@Returns: - - - - - - - -@mount_point: -@Returns: - - - - - - - -@mount_point: -@Returns: - - - - - - - -@mount_point: -@Returns: - - - - - - - -@mount_point: -@Returns: - - - - - - - -@mount_point: -@Returns: - - - - - - - -@mount_point: -@Returns: - - - - - - - -@mount_point: -@Returns: - - - - - - - -@time_read: -@Returns: - - - - - - - -@time_read: -@Returns: - - - - - - - -@mount_path: -@time_read: -@Returns: - - - - - - - -@time: -@Returns: - - - - - - - -@time: -@Returns: - - - - - - - -@Returns: - - - - - - - -@mount_monitor: -@limit_msec: - - - - - - - -@mount_path: -@Returns: - - diff --git a/docs/reference/gio/tmpl/gunixoutputstream.sgml b/docs/reference/gio/tmpl/gunixoutputstream.sgml deleted file mode 100644 index d5d5460..0000000 --- a/docs/reference/gio/tmpl/gunixoutputstream.sgml +++ /dev/null @@ -1,72 +0,0 @@ - -GUnixOutputStream - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@fd: -@close_fd: -@Returns: - - - - - - - -@stream: -@close_fd: - - - - - - - -@stream: -@Returns: - - - - - - - -@stream: -@Returns: - - diff --git a/docs/reference/gio/tmpl/gunixsocketaddress.sgml b/docs/reference/gio/tmpl/gunixsocketaddress.sgml deleted file mode 100644 index fffba80..0000000 --- a/docs/reference/gio/tmpl/gunixsocketaddress.sgml +++ /dev/null @@ -1,94 +0,0 @@ - -GUnixSocketAddress - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@path: -@Returns: - - - - - - - -@path: -@path_len: -@Returns: - - - - - - - -@address: -@Returns: - - - - - - - -@address: -@Returns: - - - - - - - -@address: -@Returns: - - - - - - - -@Returns: - - diff --git a/docs/reference/gio/tmpl/gvfs.sgml b/docs/reference/gio/tmpl/gvfs.sgml deleted file mode 100644 index 8672015..0000000 --- a/docs/reference/gio/tmpl/gvfs.sgml +++ /dev/null @@ -1,96 +0,0 @@ - -GVfs - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@vfs: -@path: -@Returns: - - - - - - - -@vfs: -@uri: -@Returns: - - - - - - - -@vfs: -@parse_name: -@Returns: - - - - - - - -@Returns: - - - - - - - -@Returns: - - - - - - - -@vfs: -@Returns: - - - - - - - -@vfs: -@Returns: - - diff --git a/docs/reference/gio/tmpl/gvolume.sgml b/docs/reference/gio/tmpl/gvolume.sgml deleted file mode 100644 index ff3c2ed..0000000 --- a/docs/reference/gio/tmpl/gvolume.sgml +++ /dev/null @@ -1,271 +0,0 @@ - -GVolume - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@gvolume: the object which received the signal. - - - - - - -@gvolume: the object which received the signal. - - - - - - -@g_iface: -@changed: -@removed: -@get_name: -@get_icon: -@get_uuid: -@get_drive: -@get_mount: -@can_mount: -@can_eject: -@mount_fn: -@mount_finish: -@eject: -@eject_finish: -@get_identifier: -@enumerate_identifiers: -@should_automount: -@get_activation_root: -@eject_with_operation: -@eject_with_operation_finish: - - - - - - -@volume: -@Returns: - - - - - - - -@volume: -@Returns: - - - - - - - -@volume: -@Returns: - - - - - - - -@volume: -@Returns: - - - - - - - -@volume: -@Returns: - - - - - - - -@volume: -@Returns: - - - - - - - -@volume: -@Returns: - - - - - - - -@volume: -@Returns: - - - - - - - -@volume: -@flags: -@mount_operation: -@cancellable: -@callback: -@user_data: - - - - - - - -@volume: -@result: -@error: -@Returns: - - - - - - - -@volume: -@Returns: - - - - - - - -@volume: -@flags: -@cancellable: -@callback: -@user_data: - - - - - - - -@volume: -@result: -@error: -@Returns: - - - - - - - -@volume: -@flags: -@mount_operation: -@cancellable: -@callback: -@user_data: - - - - - - - -@volume: -@result: -@error: -@Returns: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@volume: -@Returns: - - - - - - - -@volume: -@kind: -@Returns: - - diff --git a/docs/reference/gio/tmpl/gvolumemonitor.sgml b/docs/reference/gio/tmpl/gvolumemonitor.sgml deleted file mode 100644 index 3320420..0000000 --- a/docs/reference/gio/tmpl/gvolumemonitor.sgml +++ /dev/null @@ -1,192 +0,0 @@ - -GVolumeMonitor - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@gvolumemonitor: the object which received the signal. -@arg1: - - - - - - -@gvolumemonitor: the object which received the signal. -@arg1: - - - - - - -@gvolumemonitor: the object which received the signal. -@arg1: - - - - - - -@gvolumemonitor: the object which received the signal. -@arg1: - - - - - - -@gvolumemonitor: the object which received the signal. -@arg1: - - - - - - -@gvolumemonitor: the object which received the signal. -@arg1: - - - - - - -@gvolumemonitor: the object which received the signal. -@arg1: - - - - - - -@gvolumemonitor: the object which received the signal. -@arg1: - - - - - - -@gvolumemonitor: the object which received the signal. -@arg1: - - - - - - -@gvolumemonitor: the object which received the signal. -@arg1: - - - - - - -@gvolumemonitor: the object which received the signal. -@arg1: - - - - - - -@gvolumemonitor: the object which received the signal. -@arg1: - - - - - - - - - - - - - -@Returns: - - - - - - - -@volume_monitor: -@Returns: - - - - - - - -@volume_monitor: -@Returns: - - - - - - - -@volume_monitor: -@Returns: - - - - - - - -@mount: -@Returns: - - - - - - - -@volume_monitor: -@uuid: -@Returns: - - - - - - - -@volume_monitor: -@uuid: -@Returns: - - diff --git a/docs/reference/gio/tmpl/gzcompressor.sgml b/docs/reference/gio/tmpl/gzcompressor.sgml deleted file mode 100644 index b7bc7a4..0000000 --- a/docs/reference/gio/tmpl/gzcompressor.sgml +++ /dev/null @@ -1,54 +0,0 @@ - -GZlibCompressor - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@G_ZLIB_COMPRESSOR_FORMAT_ZLIB: -@G_ZLIB_COMPRESSOR_FORMAT_GZIP: -@G_ZLIB_COMPRESSOR_FORMAT_RAW: - - - - - - -@format: -@level: -@Returns: - - diff --git a/docs/reference/gio/tmpl/gzdecompressor.sgml b/docs/reference/gio/tmpl/gzdecompressor.sgml deleted file mode 100644 index 788e7e7..0000000 --- a/docs/reference/gio/tmpl/gzdecompressor.sgml +++ /dev/null @@ -1,39 +0,0 @@ - -GZlibDecompressor - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@format: -@Returns: - - diff --git a/docs/reference/glib/html/glib-Limits-of-Basic-Types.html b/docs/reference/glib/html/glib-Limits-of-Basic-Types.html deleted file mode 100644 index 9a2cc2c..0000000 --- a/docs/reference/glib/html/glib-Limits-of-Basic-Types.html +++ /dev/null @@ -1,409 +0,0 @@ - - - - -Limits of Basic Types - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-
-
- - -
-

Limits of Basic Types

-

Limits of Basic Types — portable method of determining the limits of the standard types

-
-
-

Synopsis

-
-#include <glib.h>
-
-#define             G_MININT
-#define             G_MAXINT
-#define             G_MAXUINT
-
-#define             G_MINSHORT
-#define             G_MAXSHORT
-#define             G_MAXUSHORT
-
-#define             G_MINLONG
-#define             G_MAXLONG
-#define             G_MAXULONG
-
-#define             G_MININT8
-#define             G_MAXINT8
-#define             G_MAXUINT8
-
-#define             G_MININT16
-#define             G_MAXINT16
-#define             G_MAXUINT16
-
-#define             G_MININT32
-#define             G_MAXINT32
-#define             G_MAXUINT32
-
-#define             G_MININT64
-#define             G_MAXINT64
-#define             G_MAXUINT64
-
-#define             G_MAXSIZE
-#define             G_MINSSIZE
-#define             G_MAXSSIZE
-
-#define             G_MINOFFSET
-#define             G_MAXOFFSET
-
-#define             G_MINFLOAT
-#define             G_MAXFLOAT
-
-#define             G_MINDOUBLE
-#define             G_MAXDOUBLE
-
-
-
-

Description

-

-These macros provide a portable method to determine the limits of some of -the standard integer and floating point types. -

-
-
-

Details

-
-

G_MININT

-
#define G_MININT INT_MIN
-
-

-The minimum value which can be held in a gint. -

-
-
-
-

G_MAXINT

-
#define G_MAXINT INT_MAX
-
-

-The maximum value which can be held in a gint. -

-
-
-
-

G_MAXUINT

-
#define G_MAXUINT UINT_MAX
-
-

-The maximum value which can be held in a guint. -

-
-
-
-

G_MINSHORT

-
#define G_MINSHORT SHRT_MIN
-
-

-The minimum value which can be held in a gshort. -

-
-
-
-

G_MAXSHORT

-
#define G_MAXSHORT SHRT_MAX
-
-

-The maximum value which can be held in a gshort. -

-
-
-
-

G_MAXUSHORT

-
#define G_MAXUSHORT USHRT_MAX
-
-

-The maximum value which can be held in a gushort. -

-
-
-
-

G_MINLONG

-
#define G_MINLONG LONG_MIN
-
-

-The minimum value which can be held in a glong. -

-
-
-
-

G_MAXLONG

-
#define G_MAXLONG LONG_MAX
-
-

-The maximum value which can be held in a glong. -

-
-
-
-

G_MAXULONG

-
#define G_MAXULONG ULONG_MAX
-
-

-The maximum value which can be held in a gulong. -

-
-
-
-

G_MININT8

-
#define G_MININT8 ((gint8)  0x80)
-
-

-The minimum value which can be held in a gint8. -

-

Since 2.4

-
-
-
-

G_MAXINT8

-
#define G_MAXINT8 ((gint8)  0x7f)
-
-

-The maximum value which can be held in a gint8. -

-

Since 2.4

-
-
-
-

G_MAXUINT8

-
#define G_MAXUINT8 ((guint8) 0xff)
-
-

-The maximum value which can be held in a guint8. -

-

Since 2.4

-
-
-
-

G_MININT16

-
#define G_MININT16 ((gint16)  0x8000)
-
-

-The minimum value which can be held in a gint16. -

-

Since 2.4

-
-
-
-

G_MAXINT16

-
#define G_MAXINT16 ((gint16)  0x7fff)
-
-

-The maximum value which can be held in a gint16. -

-

Since 2.4

-
-
-
-

G_MAXUINT16

-
#define G_MAXUINT16 ((guint16) 0xffff)
-
-

-The maximum value which can be held in a guint16. -

-

Since 2.4

-
-
-
-

G_MININT32

-
#define G_MININT32 ((gint32)  0x80000000)
-
-

-The minimum value which can be held in a gint32. -

-

Since 2.4

-
-
-
-

G_MAXINT32

-
#define G_MAXINT32 ((gint32)  0x7fffffff)
-
-

-The maximum value which can be held in a gint32. -

-

Since 2.4

-
-
-
-

G_MAXUINT32

-
#define G_MAXUINT32 ((guint32) 0xffffffff)
-
-

-The maximum value which can be held in a guint32. -

-

Since 2.4

-
-
-
-

G_MININT64

-
#define G_MININT64 ((gint64) G_GINT64_CONSTANT(0x8000000000000000))
-
-

-The minimum value which can be held in a gint64. -

-
-
-
-

G_MAXINT64

-
#define G_MAXINT64 G_GINT64_CONSTANT(0x7fffffffffffffff)
-
-

-The maximum value which can be held in a gint64. -

-
-
-
-

G_MAXUINT64

-
#define G_MAXUINT64 G_GINT64_CONSTANT(0xffffffffffffffffU)
-
-

-The maximum value which can be held in a guint64. -

-
-
-
-

G_MAXSIZE

-
#define G_MAXSIZE G_MAXULONG
-
-

-The maximum value which can be held in a gsize. -

-

Since 2.4

-
-
-
-

G_MINSSIZE

-
#define G_MINSSIZE G_MINLONG
-
-

-The minimum value which can be held in a gssize. -

-

Since 2.14

-
-
-
-

G_MAXSSIZE

-
#define G_MAXSSIZE G_MAXLONG
-
-

-The maximum value which can be held in a gssize. -

-

Since 2.14

-
-
-
-

G_MINOFFSET

-
#define G_MINOFFSET G_MININT64
-
-

-The minimum value which can be held in a goffset. -

-
-
-
-

G_MAXOFFSET

-
#define G_MAXOFFSET G_MAXINT64
-
-

-The maximum value which can be held in a goffset. -

-
-
-
-

G_MINFLOAT

-
#define G_MINFLOAT FLT_MIN
-
-

-The minimum positive value which can be held in a gfloat. -

-

-If you are interested in the smallest value which can be held in a gfloat, -use -G_MAX_FLOAT. -

-
-
-
-

G_MAXFLOAT

-
#define G_MAXFLOAT FLT_MAX
-
-

-The maximum value which can be held in a gfloat. -

-
-
-
-

G_MINDOUBLE

-
#define G_MINDOUBLE DBL_MIN
-
-

-The minimum positive value which can be held in a gdouble. -

-

-If you are interested in the smallest value which can be held in a gdouble, -use -G_MAXDOUBLE. -

-
-
-
-

G_MAXDOUBLE

-
#define G_MAXDOUBLE DBL_MAX
-
-

-The maximum value which can be held in a gdouble. -

-
-
-
- - - \ No newline at end of file diff --git a/docs/reference/glib/html/glib-Memory-Allocators.html b/docs/reference/glib/html/glib-Memory-Allocators.html deleted file mode 100644 index cb0863c..0000000 --- a/docs/reference/glib/html/glib-Memory-Allocators.html +++ /dev/null @@ -1,157 +0,0 @@ - - - - -Memory Allocators - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-
-
- - -
-

Memory Allocators

-

Memory Allocators — deprecated way to allocate chunks of memory for - GList, GSList and GNode

-
-
-

Synopsis

-
-#include <glib.h>
-
-                    GAllocator;
-GAllocator*         g_allocator_new                     (const gchar *name,
-                                                         guint n_preallocs);
-void                g_allocator_free                    (GAllocator *allocator);
-
-
-
-

Description

-

-Prior to 2.10, GAllocator was used as an efficient way to allocate -small pieces of memory for use with the GList, GSList and GNode -data structures. Since 2.10, it has been completely replaced by the -slice allocator and -deprecated.

-
-
-

Details

-
-

GAllocator

-
typedef struct _GAllocator GAllocator;
-
-

Warning

-

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

-
-

-The GAllocator struct contains private data. and should only be -accessed using the following functions.

-
-
-
-

g_allocator_new ()

-
GAllocator*         g_allocator_new                     (const gchar *name,
-                                                         guint n_preallocs);
-
-

Warning

-

g_allocator_new has been deprecated since version 2.10 and should not be used in newly-written code. Use the slice - allocator instead

-
-

-Creates a new GAllocator.

-
-- - - - - - - - - - - - - - -

name :

the name of the GAllocator. This name is used to set the - name of the GMemChunk used by the GAllocator, and is only - used for debugging. -

n_preallocs :

the number of elements in each block of memory - allocated. Larger blocks mean less calls to - g_malloc(), but some memory may be wasted. (GLib uses - 128 elements per block by default.) The value must be - between 1 and 65535. -

Returns :

a new GAllocator. -
-
-
-
-

g_allocator_free ()

-
void                g_allocator_free                    (GAllocator *allocator);
-
-

Warning

-

g_allocator_free has been deprecated since version 2.10 and should not be used in newly-written code. Use the slice - allocator instead

-
-

-Frees all of the memory allocated by the GAllocator.

-
-- - - - -

allocator :

a GAllocator. -
-
-
-
- - - \ No newline at end of file diff --git a/docs/reference/glib/html/glib-Memory-Chunks.html b/docs/reference/glib/html/glib-Memory-Chunks.html deleted file mode 100644 index c54a9b1..0000000 --- a/docs/reference/glib/html/glib-Memory-Chunks.html +++ /dev/null @@ -1,646 +0,0 @@ - - - - -Memory Chunks - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-
-
- - -
-

Memory Chunks

-

Memory Chunks — deprecated way to allocate groups of equal-sized - chunks of memory

-
-
-

Synopsis

-
-#include <glib.h>
-
-                    GMemChunk;
-#define             G_ALLOC_AND_FREE
-#define             G_ALLOC_ONLY
-
-GMemChunk*          g_mem_chunk_new                     (const gchar *name,
-                                                         gint atom_size,
-                                                         gsize area_size,
-                                                         gint type);
-gpointer            g_mem_chunk_alloc                   (GMemChunk *mem_chunk);
-gpointer            g_mem_chunk_alloc0                  (GMemChunk *mem_chunk);
-void                g_mem_chunk_free                    (GMemChunk *mem_chunk,
-                                                         gpointer mem);
-void                g_mem_chunk_destroy                 (GMemChunk *mem_chunk);
-
-#define             g_mem_chunk_create                  (type, pre_alloc, alloc_type)
-#define             g_chunk_new                         (type, chunk)
-#define             g_chunk_new0                        (type, chunk)
-#define             g_chunk_free                        (mem, mem_chunk)
-
-void                g_mem_chunk_reset                   (GMemChunk *mem_chunk);
-void                g_mem_chunk_clean                   (GMemChunk *mem_chunk);
-void                g_blow_chunks                       (void);
-
-void                g_mem_chunk_info                    (void);
-void                g_mem_chunk_print                   (GMemChunk *mem_chunk);
-
-
-
-

Description

-

-Memory chunks provide an space-efficient way to allocate equal-sized -pieces of memory, called atoms. However, due to the administrative -overhead (in particular for G_ALLOC_AND_FREE, and when used from -multiple threads), they are in practise often slower than direct use -of g_malloc(). Therefore, memory chunks have been deprecated in -favor of the slice -allocator, which has been added in 2.10. All internal uses of -memory chunks in GLib have been converted to the -g_slice API. -

-

-There are two types of memory chunks, G_ALLOC_ONLY, and -G_ALLOC_AND_FREE.

-
    -
  • G_ALLOC_ONLY -chunks only allow allocation of atoms. The atoms can never be freed -individually. The memory chunk can only be free in its entirety. -

  • -
  • G_ALLOC_AND_FREE chunks do -allow atoms to be freed individually. The disadvantage of this is -that the memory chunk has to keep track of which atoms have been -freed. This results in more memory being used and a slight -degradation in performance.

  • -
-

-

-

-To create a memory chunk use g_mem_chunk_new() or the convenience -macro g_mem_chunk_create(). -

-

-To allocate a new atom use g_mem_chunk_alloc(), -g_mem_chunk_alloc0(), or the convenience macros g_chunk_new() or -g_chunk_new0(). -

-

-To free an atom use g_mem_chunk_free(), or the convenience macro -g_chunk_free(). (Atoms can only be freed if the memory chunk is -created with the type set to G_ALLOC_AND_FREE.) -

-

-To free any blocks of memory which are no longer being used, use -g_mem_chunk_clean(). To clean all memory chunks, use g_blow_chunks(). -

-

-To reset the memory chunk, freeing all of the atoms, use -g_mem_chunk_reset(). -

-

-To destroy a memory chunk, use g_mem_chunk_destroy(). -

-

-To help debug memory chunks, use g_mem_chunk_info() and -g_mem_chunk_print(). -

-

-

-
-

Example 17. Using a GMemChunk

-
-  GMemChunk *mem_chunk;
-  gchar *mem[10000];
-  gint i;
-
-  /* Create a GMemChunk with atoms 50 bytes long, and memory
-     blocks holding 100 bytes. Note that this means that only 2 atoms
-     fit into each memory block and so isn't very efficient. */
-  mem_chunk = g_mem_chunk_new ("test mem chunk", 50, 100, G_ALLOC_AND_FREE);
-  /* Now allocate 10000 atoms. */
-  for (i = 0; i < 10000; i++)
-    {
-      mem[i] = g_chunk_new (gchar, mem_chunk);
-      /* Fill in the atom memory with some junk. */
-      for (j = 0; j < 50; j++)
-        mem[i][j] = i * j;
-    }
-  /* Now free all of the atoms. Note that since we are going to
-     destroy the GMemChunk, this wouldn't normally be used. */
-  for (i = 0; i < 10000; i++)
-    {
-      g_mem_chunk_free (mem_chunk, mem[i]);
-    }
-  /* We are finished with the GMemChunk, so we destroy it. */
-  g_mem_chunk_destroy (mem_chunk);
- 
-
-


-

-

-

-
-

Example 18. Using a GMemChunk with data structures

-
-   GMemChunk *array_mem_chunk;
-   GRealArray *array;
-   /* Create a GMemChunk to hold GRealArray structures, using
-      the g_mem_chunk_create() convenience macro. We want 1024 atoms in each
-      memory block, and we want to be able to free individual atoms. */
-   array_mem_chunk = g_mem_chunk_create (GRealArray, 1024, G_ALLOC_AND_FREE);
-   /* Allocate one atom, using the g_chunk_new() convenience macro. */
-   array = g_chunk_new (GRealArray, array_mem_chunk);
-   /* We can now use array just like a normal pointer to a structure. */
-   array->data            = NULL;
-   array->len             = 0;
-   array->alloc           = 0;
-   array->zero_terminated = (zero_terminated ? 1 : 0);
-   array->clear           = (clear ? 1 : 0);
-   array->elt_size        = elt_size;
-   /* We can free the element, so it can be reused. */
-   g_chunk_free (array, array_mem_chunk);
-   /* We destroy the GMemChunk when we are finished with it. */
-   g_mem_chunk_destroy (array_mem_chunk);
- 
-
-


-
-
-

Details

-
-

GMemChunk

-
typedef struct _GMemChunk GMemChunk;
-
-

Warning

-

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

-
-

-The GMemChunk struct is an opaque data structure representing a -memory chunk. It should be accessed only through the use of the -following functions.

-
-
-
-

G_ALLOC_AND_FREE

-
#define G_ALLOC_AND_FREE  2
-
-
-

Warning

-

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

-
-

-Specifies the type of a GMemChunk. Used in g_mem_chunk_new() and -g_mem_chunk_create() to specify that atoms will be freed -individually.

-
-
-
-

G_ALLOC_ONLY

-
#define G_ALLOC_ONLY	  1
-
-
-

Warning

-

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

-
-

-Specifies the type of a GMemChunk. Used in g_mem_chunk_new() and -g_mem_chunk_create() to specify that atoms will never be freed -individually.

-
-
-
-

g_mem_chunk_new ()

-
GMemChunk*          g_mem_chunk_new                     (const gchar *name,
-                                                         gint atom_size,
-                                                         gsize area_size,
-                                                         gint type);
-
-

Warning

-

g_mem_chunk_new has been deprecated since version 2.10 and should not be used in newly-written code. Use the slice - allocator instead

-
-

-Creates a new GMemChunk.

-
-- - - - - - - - - - - - - - - - - - - - - - -

name :

a string to identify the GMemChunk. It is not copied so it - should be valid for the lifetime of the GMemChunk. It is - only used in g_mem_chunk_print(), which is used for debugging. -

atom_size :

the size, in bytes, of each element in the GMemChunk. -

area_size :

the size, in bytes, of each block of memory allocated to - contain the atoms. -

type :

the type of the GMemChunk. G_ALLOC_AND_FREE is used if the - atoms will be freed individually. G_ALLOC_ONLY should be - used if atoms will never be freed individually. - G_ALLOC_ONLY is quicker, since it does not need to track - free atoms, but it obviously wastes memory if you no longer - need many of the atoms. -

Returns :

the new GMemChunk. -
-
-
-
-

g_mem_chunk_alloc ()

-
gpointer            g_mem_chunk_alloc                   (GMemChunk *mem_chunk);
-
-

Warning

-

g_mem_chunk_alloc has been deprecated since version 2.10 and should not be used in newly-written code. Use g_slice_alloc() instead

-
-

-Allocates an atom of memory from a GMemChunk.

-
-- - - - - - - - - - -

mem_chunk :

a GMemChunk. -

Returns :

a pointer to the allocated atom. -
-
-
-
-

g_mem_chunk_alloc0 ()

-
gpointer            g_mem_chunk_alloc0                  (GMemChunk *mem_chunk);
-
-

Warning

-

g_mem_chunk_alloc0 has been deprecated since version 2.10 and should not be used in newly-written code. Use g_slice_alloc0() instead

-
-

-Allocates an atom of memory from a GMemChunk, setting the memory to -0.

-
-- - - - - - - - - - -

mem_chunk :

a GMemChunk. -

Returns :

a pointer to the allocated atom. -
-
-
-
-

g_mem_chunk_free ()

-
void                g_mem_chunk_free                    (GMemChunk *mem_chunk,
-                                                         gpointer mem);
-
-

Warning

-

g_mem_chunk_free has been deprecated since version 2.10 and should not be used in newly-written code. Use g_slice_free1() instead

-
-

-Frees an atom in a GMemChunk. This should only be called if the -GMemChunk was created with G_ALLOC_AND_FREE. Otherwise it will -simply return.

-
-- - - - - - - - - - -

mem_chunk :

a GMemChunk. -

mem :

a pointer to the atom to free. -
-
-
-
-

g_mem_chunk_destroy ()

-
void                g_mem_chunk_destroy                 (GMemChunk *mem_chunk);
-
-

Warning

-

g_mem_chunk_destroy has been deprecated since version 2.10 and should not be used in newly-written code. Use the slice - allocator instead

-
-

-Frees all of the memory allocated for a GMemChunk.

-
-- - - - -

mem_chunk :

a GMemChunk. -
-
-
-
-

g_mem_chunk_create()

-
#define             g_mem_chunk_create(type, pre_alloc, alloc_type)
-
-

Warning

-

g_mem_chunk_create has been deprecated since version 2.10 and should not be used in newly-written code. Use the slice - allocator instead

-
-

-A convenience macro for creating a new GMemChunk. It calls -g_mem_chunk_new(), using the given type to create the GMemChunk -name. The atom size is determined using -sizeof(), and the area size is calculated by -multiplying the pre_alloc parameter with the atom size.

-
-- - - - - - - - - - - - - - - - - - -

type :

the type of the atoms, typically a structure name. -

pre_alloc :

the number of atoms to store in each block of memory. -

alloc_type :

the type of the GMemChunk. G_ALLOC_AND_FREE is used - if the atoms will be freed individually. G_ALLOC_ONLY - should be used if atoms will never be freed - individually. G_ALLOC_ONLY is quicker, since it does - not need to track free atoms, but it obviously wastes - memory if you no longer need many of the atoms. -

Returns :

the new GMemChunk. -
-
-
-
-

g_chunk_new()

-
#define             g_chunk_new(type, chunk)
-
-

Warning

-

g_chunk_new has been deprecated since version 2.10 and should not be used in newly-written code. Use g_slice_new() instead

-
-

-A convenience macro to allocate an atom of memory from a GMemChunk. -It calls g_mem_chunk_alloc() and casts the returned atom to a -pointer to the given type, avoiding a type cast in the source code.

-
-- - - - - - - - - - - - - - -

type :

the type of the GMemChunk atoms, typically a structure name. -

chunk :

a GMemChunk. -

Returns :

a pointer to the allocated atom, cast to a pointer to - type. -
-
-
-
-

g_chunk_new0()

-
#define             g_chunk_new0(type, chunk)
-
-

Warning

-

g_chunk_new0 has been deprecated since version 2.10 and should not be used in newly-written code. Use g_slice_new0() instead

-
-

-A convenience macro to allocate an atom of memory from a GMemChunk. -It calls g_mem_chunk_alloc0() and casts the returned atom to a -pointer to the given type, avoiding a type cast in the source code.

-
-- - - - - - - - - - - - - - -

type :

the type of the GMemChunk atoms, typically a structure name. -

chunk :

a GMemChunk. -

Returns :

a pointer to the allocated atom, cast to a pointer to - type. -
-
-
-
-

g_chunk_free()

-
#define             g_chunk_free(mem, mem_chunk)
-
-

Warning

-

g_chunk_free has been deprecated since version 2.10 and should not be used in newly-written code. Use g_slice_free() instead

-
-

-A convenience macro to free an atom of memory from a GMemChunk. It -simply switches the arguments and calls g_mem_chunk_free() It is -included simply to complement the other convenience macros, -g_chunk_new() and g_chunk_new0().

-
-- - - - - - - - - - -

mem :

a pointer to the atom to be freed. -

mem_chunk :

a GMemChunk. -
-
-
-
-

g_mem_chunk_reset ()

-
void                g_mem_chunk_reset                   (GMemChunk *mem_chunk);
-
-

Warning

-

g_mem_chunk_reset has been deprecated since version 2.10 and should not be used in newly-written code. Use the slice - allocator instead

-
-

-Resets a GMemChunk to its initial state. It frees all of the -currently allocated blocks of memory.

-
-- - - - -

mem_chunk :

a GMemChunk. -
-
-
-
-

g_mem_chunk_clean ()

-
void                g_mem_chunk_clean                   (GMemChunk *mem_chunk);
-
-

Warning

-

g_mem_chunk_clean has been deprecated since version 2.10 and should not be used in newly-written code. Use the slice - allocator instead

-
-

-Frees any blocks in a GMemChunk which are no longer being used.

-
-- - - - -

mem_chunk :

a GMemChunk. -
-
-
-
-

g_blow_chunks ()

-
void                g_blow_chunks                       (void);
-
-

Warning

-

g_blow_chunks has been deprecated since version 2.10 and should not be used in newly-written code. Use the slice - allocator instead

-
-

-Calls g_mem_chunk_clean() on all GMemChunk objects.

-
-
-
-

g_mem_chunk_info ()

-
void                g_mem_chunk_info                    (void);
-
-

Warning

-

g_mem_chunk_info has been deprecated since version 2.10 and should not be used in newly-written code. Use the slice - allocator instead

-
-

-Outputs debugging information for all GMemChunk objects currently -in use. It outputs the number of GMemChunk objects currently -allocated, and calls g_mem_chunk_print() to output information on -each one.

-
-
-
-

g_mem_chunk_print ()

-
void                g_mem_chunk_print                   (GMemChunk *mem_chunk);
-
-

Warning

-

g_mem_chunk_print has been deprecated since version 2.10 and should not be used in newly-written code. Use the slice - allocator instead

-
-

-Outputs debugging information for a GMemChunk. It outputs the name -of the GMemChunk (set with g_mem_chunk_new()), the number of bytes -used, and the number of blocks of memory allocated.

-
-- - - - -

mem_chunk :

a GMemChunk. -
-
-
-
- - - \ No newline at end of file diff --git a/docs/reference/glib/html/glib.devhelp b/docs/reference/glib/html/glib.devhelp deleted file mode 100644 index d14da5f..0000000 --- a/docs/reference/glib/html/glib.devhelp +++ /dev/null @@ -1,2084 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/docs/reference/glib/tmpl/allocators.sgml b/docs/reference/glib/tmpl/allocators.sgml deleted file mode 100644 index 191ff8a..0000000 --- a/docs/reference/glib/tmpl/allocators.sgml +++ /dev/null @@ -1,45 +0,0 @@ - -Memory Allocators - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@name: -@n_preallocs: -@Returns: - - - - - - - -@allocator: - - diff --git a/docs/reference/glib/tmpl/arrays.sgml b/docs/reference/glib/tmpl/arrays.sgml deleted file mode 100644 index e001919..0000000 --- a/docs/reference/glib/tmpl/arrays.sgml +++ /dev/null @@ -1,220 +0,0 @@ - -Arrays - - - - - - - - - - - - - - - - - - - - - - - - -@data: -@len: - - - - - - -@zero_terminated: -@clear_: -@element_size: -@Returns: - - - - - - - -@zero_terminated: -@clear_: -@element_size: -@reserved_size: -@Returns: - - - - - - - -@array: -@Returns: - - - - - - - -@array: - - - - - - - -@array: -@Returns: - - - - - - - -@a: -@v: - - - - - - - -@array: -@data: -@len: -@Returns: - - - - - - - -@a: -@v: - - - - - - - -@array: -@data: -@len: -@Returns: - - - - - - - -@a: -@i: -@v: - - - - - - - -@array: -@index_: -@data: -@len: -@Returns: - - - - - - - -@array: -@index_: -@Returns: - - - - - - - -@array: -@index_: -@Returns: - - - - - - - -@array: -@index_: -@length: -@Returns: - - - - - - - -@array: -@compare_func: - - - - - - - -@array: -@compare_func: -@user_data: - - - - - - - -@a: -@t: -@i: - - - - - - - -@array: -@length: -@Returns: - - - - - - - -@array: -@free_segment: -@Returns: - - diff --git a/docs/reference/glib/tmpl/arrays_byte.sgml b/docs/reference/glib/tmpl/arrays_byte.sgml deleted file mode 100644 index 59d9d85..0000000 --- a/docs/reference/glib/tmpl/arrays_byte.sgml +++ /dev/null @@ -1,155 +0,0 @@ - -Byte Arrays - - - - - - - - - - - - - - - - - - - - - - - - -@data: -@len: - - - - - - -@Returns: - - - - - - - -@reserved_size: -@Returns: - - - - - - - -@array: -@Returns: - - - - - - - -@array: - - - - - - - -@array: -@data: -@len: -@Returns: - - - - - - - -@array: -@data: -@len: -@Returns: - - - - - - - -@array: -@index_: -@Returns: - - - - - - - -@array: -@index_: -@Returns: - - - - - - - -@array: -@index_: -@length: -@Returns: - - - - - - - -@array: -@compare_func: - - - - - - - -@array: -@compare_func: -@user_data: - - - - - - - -@array: -@length: -@Returns: - - - - - - - -@array: -@free_segment: -@Returns: - - diff --git a/docs/reference/glib/tmpl/arrays_pointer.sgml b/docs/reference/glib/tmpl/arrays_pointer.sgml deleted file mode 100644 index dec6dff..0000000 --- a/docs/reference/glib/tmpl/arrays_pointer.sgml +++ /dev/null @@ -1,197 +0,0 @@ - -Pointer Arrays - - - - - - - - - - - - - - - - - - - - - - - - -@pdata: -@len: - - - - - - -@Returns: - - - - - - - -@reserved_size: -@Returns: - - - - - - - -@element_free_func: -@Returns: - - - - - - - -@array: -@element_free_func: - - - - - - - -@array: -@Returns: - - - - - - - -@array: - - - - - - - -@array: -@data: - - - - - - - -@array: -@data: -@Returns: - - - - - - - -@array: -@index_: -@Returns: - - - - - - - -@array: -@data: -@Returns: - - - - - - - -@array: -@index_: -@Returns: - - - - - - - -@array: -@index_: -@length: - - - - - - - -@array: -@compare_func: - - - - - - - -@array: -@compare_func: -@user_data: - - - - - - - -@array: -@length: - - - - - - - -@array: -@index_: - - - - - - - -@array: -@free_seg: -@Returns: - - - - - - - -@array: -@func: -@user_data: - - diff --git a/docs/reference/glib/tmpl/async_queues.sgml b/docs/reference/glib/tmpl/async_queues.sgml deleted file mode 100644 index 79dbec8..0000000 --- a/docs/reference/glib/tmpl/async_queues.sgml +++ /dev/null @@ -1,242 +0,0 @@ - -Asynchronous Queues - - -asynchronous communication between threads - - - -Often you need to communicate between different threads. In general -it's safer not to do this by shared memory, but by explicit message -passing. These messages only make sense asynchronously for -multi-threaded applications though, as a synchronous operation could as -well be done in the same thread. - - - -Asynchronous queues are an exception from most other GLib data -structures, as they can be used simultaneously from multiple threads -without explicit locking and they bring their own builtin reference -counting. This is because the nature of an asynchronous queue is that -it will always be used by at least 2 concurrent threads. - - - -For using an asynchronous queue you first have to create one with -g_async_queue_new(). A newly-created queue will get the reference -count 1. Whenever another thread is creating a new reference of (that -is, pointer to) the queue, it has to increase the reference count -(using g_async_queue_ref()). Also, before removing this reference, the -reference count has to be decreased (using -g_async_queue_unref()). After that the queue might no longer exist so -you must not access it after that point. - - - -A thread, which wants to send a message to that queue simply calls -g_async_queue_push() to push the message to the queue. - - - -A thread, which is expecting messages from an asynchronous queue -simply calls g_async_queue_pop() for that queue. If no message is -available in the queue at that point, the thread is now put to sleep -until a message arrives. The message will be removed from the queue -and returned. The functions g_async_queue_try_pop() and -g_async_queue_timed_pop() can be used to only check for the presence -of messages or to only wait a certain time for messages respectively. - - - -For almost every function there exist two variants, one that locks the -queue and one that doesn't. That way you can hold the queue lock -(acquire it with g_async_queue_lock() and release it with -g_async_queue_unlock()) over multiple queue accessing -instructions. This can be necessary to ensure the integrity of the -queue, but should only be used when really necessary, as it can make -your life harder if used unwisely. Normally you should only use the -locking function variants (those without the suffix _unlocked) - - - - - - - - - - - - -The #GAsyncQueue struct is an opaque data structure, which represents -an asynchronous queue. It should only be accessed through the -g_async_queue_* functions. - - - - - - -@Returns: - - - - - - - -@item_free_func: -@Returns: - - - - - -@queue: -@Returns: - - - - - -@queue: - - - - - -@queue: -@data: - - - - - - - -@queue: -@data: -@func: -@user_data: - - - - - -@queue: -@Returns: - - - - - -@queue: -@Returns: - - - - - -@queue: -@end_time: -@Returns: - - - - - -@queue: -@Returns: - - - - - - - -@queue: -@func: -@user_data: - - - - - -@queue: - - - - - -@queue: - - - - - -@queue: - - - - - -@queue: - - - - - -@queue: -@data: - - - - - - - -@queue: -@data: -@func: -@user_data: - - - - - -@queue: -@Returns: - - - - - -@queue: -@Returns: - - - - - -@queue: -@end_time: -@Returns: - - - - - -@queue: -@Returns: - - - - - - - -@queue: -@func: -@user_data: - - diff --git a/docs/reference/glib/tmpl/atomic_operations.sgml b/docs/reference/glib/tmpl/atomic_operations.sgml deleted file mode 100644 index 13ca69a..0000000 --- a/docs/reference/glib/tmpl/atomic_operations.sgml +++ /dev/null @@ -1,191 +0,0 @@ - -Atomic Operations - - -basic atomic integer and pointer operations - - - -The following functions can be used to atomically access integers and -pointers. They are implemented as inline assembler function on most -platforms and use slower fall-backs otherwise. Using them can sometimes -save you from using a performance-expensive #GMutex to protect the -integer or pointer. - - - -The most important usage is reference counting. Using -g_atomic_int_inc() and g_atomic_int_dec_and_test() makes reference -counting a very fast operation. - - - - -You must not directly read integers or pointers concurrently accessed -by multiple threads, but use the atomic accessor functions instead. -That is, always use g_atomic_int_get() and g_atomic_pointer_get() for -read outs. -They provide the neccessary synchonization mechanisms like memory -barriers to access memory locations concurrently. - - - - - -If you are using those functions for anything apart from simple -reference counting, you should really be aware of the implications of -doing that. There are literally thousands of ways to shoot yourself in -the foot. So if in doubt, use a #GMutex. If you don't know, what -memory barriers are, do not use anything but g_atomic_int_inc() and -g_atomic_int_dec_and_test(). - - - - - -It is not safe to set an integer or pointer just by assigning to it, -when it is concurrently accessed by other threads with the following -functions. Use g_atomic_int_compare_and_exchange() or -g_atomic_pointer_compare_and_exchange() respectively. - - - - - - - - -#GMutex -GLib mutual exclusions. - - - - - - - - - - -Reads the value of the integer pointed to by @atomic. Also acts as -a memory barrier. - - -@Returns: the value of *@atomic -@Since: 2.4 - -@atomic: a pointer to an integer - - - - -Sets the value of the integer pointed to by @atomic. -Also acts as a memory barrier. - - -@Since: 2.10 - -@atomic: a pointer to an integer -@newval: the new value - - - - -Atomically adds @val to the integer pointed to by @atomic. -Also acts as a memory barrier. - - -@Since: 2.4 - -@atomic: a pointer to an integer. -@val: the value to add to *@atomic. - - - - -Atomically adds @val to the integer pointed to by @atomic. It returns -the value of *@atomic just before the addition took place. -Also acts as a memory barrier. - - -@Returns: the value of *@atomic before the addition. -@Since: 2.4 - -@atomic: a pointer to an integer. -@val: the value to add to *@atomic. - - - - -Compares @oldval with the integer pointed to by @atomic and -if they are equal, atomically exchanges *@atomic with @newval. -Also acts as a memory barrier. - - -@Returns: %TRUE, if *@atomic was equal @oldval. %FALSE otherwise. -@Since: 2.4 - -@atomic: a pointer to an integer. -@oldval: the assumed old value of *@atomic. -@newval: the new value of *@atomic. - - - - -Reads the value of the pointer pointed to by @atomic. Also acts as -a memory barrier. - - -@Returns: the value to add to *@atomic. -@Since: 2.4 - -@atomic: a pointer to a #gpointer. - - - - -Sets the value of the pointer pointed to by @atomic. -Also acts as a memory barrier. - - -@Since: 2.10 - -@atomic: a pointer to a #gpointer -@newval: the new value - - - - -Compares @oldval with the pointer pointed to by @atomic and -if they are equal, atomically exchanges *@atomic with @newval. -Also acts as a memory barrier. - - -@Returns: %TRUE, if *@atomic was equal @oldval. %FALSE otherwise. -@Since: 2.4 - -@atomic: a pointer to a #gpointer. -@oldval: the assumed old value of *@atomic. -@newval: the new value of *@atomic. - - - - -Atomically increments the integer pointed to by @atomic by 1. - - -@atomic: a pointer to an integer. -@Since: 2.4 - - - - -Atomically decrements the integer pointed to by @atomic by 1. - - -@atomic: a pointer to an integer. -@Returns: %TRUE, if the integer pointed to by @atomic is 0 after -decrementing it. -@Since: 2.4 - - diff --git a/docs/reference/glib/tmpl/base64.sgml b/docs/reference/glib/tmpl/base64.sgml deleted file mode 100644 index e1b9d87..0000000 --- a/docs/reference/glib/tmpl/base64.sgml +++ /dev/null @@ -1,90 +0,0 @@ - -Base64 Encoding - - - - - - - - - - - - - - - - - - - - - - - - -@in: -@len: -@break_lines: -@out: -@state: -@save: -@Returns: - - - - - - - -@break_lines: -@out: -@state: -@save: -@Returns: - - - - - - - -@data: -@len: -@Returns: - - - - - - - -@in: -@len: -@out: -@state: -@save: -@Returns: - - - - - - - -@text: -@out_len: -@Returns: - - - - - - - -@text: -@out_len: -@Returns: - - diff --git a/docs/reference/glib/tmpl/bookmarkfile.sgml b/docs/reference/glib/tmpl/bookmarkfile.sgml deleted file mode 100644 index 5542b98..0000000 --- a/docs/reference/glib/tmpl/bookmarkfile.sgml +++ /dev/null @@ -1,552 +0,0 @@ - -Bookmark file parser - - -parses files containing bookmarks - - - -#GBookmarkFile lets you parse, edit or create files containing bookmarks -to URI, along with some meta-data about the resource pointed by the URI like -its MIME type, the application that is registering the bookmark and the -icon that should be used to represent the bookmark. The data is stored using -the -Desktop Bookmark -Specification. - - - -The syntax of the bookmark files is described in detail inside the Desktop -Bookmark Specification, here is a quick summary: bookmark files use a sub-class -of the -XML Bookmark Exchange Language specification, consisting -of valid UTF-8 encoded XML, under the xbel root element; -each bookmark is stored inside a bookmark element, using -its URI: no relative paths can be used inside a bookmark file. The bookmark -may have a user defined title and description, to be used instead of the URI. -Under the metadata element, with its owner -attribute set to http://freedesktop.org, is stored the -meta-data about a resource pointed by its URI. The meta-data consists of -the resource's MIME type; the applications that have registered a bookmark; -the groups to which a bookmark belongs to; a visibility flag, used to set -the bookmark as "private" to the applications and groups that has it -registered; the URI and MIME type of an icon, to be used when displaying the -bookmark inside a GUI. - - - - - - - - Desktop Bookmarks Spec - - - text/xml - - - - - - Editors - - - - - -]]> - - - -A bookmark file might contain more than one bookmark; each bookmark is accessed -through its URI. - - - -The important caveat of bookmark files is that when you add a new bookmark you -must also add the application that is registering it, using -g_bookmark_file_add_application() or g_bookmark_file_set_app_info(). If a -bookmark has no applications then it won't be dumped when creating the -on disk representation, using g_bookmark_file_to_data() or -g_bookmark_file_to_file(). - - - -The #GBookmarkFile parser was added in GLib 2.12. - - - - - - - - - - - - -The GBookmarkFile struct contains only private data -and should not be used directly. - - - - - -Error domain for bookmark file parsing. Errors in this domain will be -from the #GBookmarkFileError enumeration. See #GError for informations -on error domains. - - - - - - -Error codes returned by bookmark file parsing. - - -@G_BOOKMARK_FILE_ERROR_INVALID_URI: URI was ill-formed -@G_BOOKMARK_FILE_ERROR_INVALID_VALUE: a requested field was not found -@G_BOOKMARK_FILE_ERROR_APP_NOT_REGISTERED: a requested application did not -register a bookmark -@G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND: a requested URI was not found -@G_BOOKMARK_FILE_ERROR_READ: document was ill formed -@G_BOOKMARK_FILE_ERROR_UNKNOWN_ENCODING: the text being parsed was in an -unknown encoding -@G_BOOKMARK_FILE_ERROR_WRITE: an error occurred while writing -@G_BOOKMARK_FILE_ERROR_FILE_NOT_FOUND: requested file was not found - - - - - - -@Returns: - - - - - - - -@bookmark: - - - - - - - -@bookmark: -@filename: -@error: -@Returns: - - - - - - - -@bookmark: -@data: -@length: -@error: -@Returns: - - - - - - - -@bookmark: -@file: -@full_path: -@error: -@Returns: - - - - - - - -@bookmark: -@length: -@error: -@Returns: - - - - - - - -@bookmark: -@filename: -@error: -@Returns: - - - - - - - -@bookmark: -@uri: -@Returns: - - - - - - - -@bookmark: -@uri: -@group: -@error: -@Returns: - - - - - - - -@bookmark: -@uri: -@name: -@error: -@Returns: - - - - - - - -@bookmark: -@Returns: - - - - - - - -@bookmark: -@length: -@Returns: - - - - - - - -@bookmark: -@uri: -@error: -@Returns: - - - - - - - -@bookmark: -@uri: -@error: -@Returns: - - - - - - - -@bookmark: -@uri: -@error: -@Returns: - - - - - - - -@bookmark: -@uri: -@error: -@Returns: - - - - - - - -@bookmark: -@uri: -@href: -@mime_type: -@error: -@Returns: - - - - - - - -@bookmark: -@uri: -@error: -@Returns: - - - - - - - -@bookmark: -@uri: -@error: -@Returns: - - - - - - - -@bookmark: -@uri: -@error: -@Returns: - - - - - - - -@bookmark: -@uri: -@length: -@error: -@Returns: - - - - - - - -@bookmark: -@uri: -@length: -@error: -@Returns: - - - - - - - -@bookmark: -@uri: -@name: -@exec: -@count: -@stamp: -@error: -@Returns: - - - - - - - -@bookmark: -@uri: -@title: - - - - - - - -@bookmark: -@uri: -@description: - - - - - - - -@bookmark: -@uri: -@mime_type: - - - - - - - -@bookmark: -@uri: -@is_private: - - - - - - - -@bookmark: -@uri: -@href: -@mime_type: - - - - - - - -@bookmark: -@uri: -@added: - - - - - - - -@bookmark: -@uri: -@groups: -@length: - - - - - - - -@bookmark: -@uri: -@modified: - - - - - - - -@bookmark: -@uri: -@visited: - - - - - - - -@bookmark: -@uri: -@name: -@exec: -@count: -@stamp: -@error: -@Returns: - - - - - - - -@bookmark: -@uri: -@group: - - - - - - - -@bookmark: -@uri: -@name: -@exec: - - - - - - - -@bookmark: -@uri: -@group: -@error: -@Returns: - - - - - - - -@bookmark: -@uri: -@name: -@error: -@Returns: - - - - - - - -@bookmark: -@uri: -@error: -@Returns: - - - - - - - -@bookmark: -@old_uri: -@new_uri: -@error: -@Returns: - - diff --git a/docs/reference/glib/tmpl/byte_order.sgml b/docs/reference/glib/tmpl/byte_order.sgml deleted file mode 100644 index 3f60fd7..0000000 --- a/docs/reference/glib/tmpl/byte_order.sgml +++ /dev/null @@ -1,625 +0,0 @@ - -Byte Order Macros - - -a portable way to convert between different byte orders - - - -These macros provide a portable way to determine the host byte order -and to convert values between different byte orders. - - -The byte order is the order in which bytes are stored to create larger -data types such as the #gint and #glong values. -The host byte order is the byte order used on the current machine. - - -Some processors store the most significant bytes (i.e. the bytes that -hold the largest part of the value) first. These are known as big-endian -processors. - - -Other processors (notably the x86 family) store the most significant byte -last. These are known as little-endian processors. - - -Finally, to complicate matters, some other processors store the bytes in -a rather curious order known as PDP-endian. For a 4-byte word, the 3rd -most significant byte is stored first, then the 4th, then the 1st and finally -the 2nd. - - -Obviously there is a problem when these different processors communicate -with each other, for example over networks or by using binary file formats. -This is where these macros come in. -They are typically used to convert values into a byte order -which has been agreed on for use when communicating between different -processors. The Internet uses what is known as 'network byte order' -as the standard byte order (which is in fact the big-endian byte order). - - -Note that the byte order conversion macros may evaluate their arguments -multiple times, thus you should not use them with arguments which have -side-effects. - - - - - - - - - - - - -The host byte order. -This can be either #G_LITTLE_ENDIAN or #G_BIG_ENDIAN (support for -#G_PDP_ENDIAN may be added in future.) - - - - - - -Specifies one of the possible types of byte order. -See #G_BYTE_ORDER. - - - - - - -Specifies one of the possible types of byte order. -See #G_BYTE_ORDER. - - - - - - -Specifies one of the possible types of byte order (currently unused). -See #G_BYTE_ORDER. - - - - - - -Converts a 32-bit integer value from host to network byte order. - - -@val: a 32-bit integer value in host byte order. -@Returns: @val converted to network byte order. - - - - -Converts a 16-bit integer value from host to network byte order. - - -@val: a 16-bit integer value in host byte order. -@Returns: @val converted to network byte order. - - - - -Converts a 32-bit integer value from network to host byte order. - - -@val: a 32-bit integer value in network byte order. -@Returns: @val converted to host byte order. - - - - -Converts a 16-bit integer value from network to host byte order. - - -@val: a 16-bit integer value in network byte order. -@Returns: @val converted to host byte order. - - - - -Converts a #gint value from big-endian to host byte order. - - -@val: a #gint value in big-endian byte order. -@Returns: @val converted to host byte order. - - - - -Converts a #gint value from little-endian to host byte order. - - -@val: a #gint value in little-endian byte order. -@Returns: @val converted to host byte order. - - - - -Converts a #gint value from host byte order to big-endian. - - -@val: a #gint value in host byte order. -@Returns: @val converted to big-endian byte order. - - - - -Converts a #gint value from host byte order to little-endian. - - -@val: a #gint value in host byte order. -@Returns: @val converted to little-endian byte order. - - - - -Converts a #guint value from big-endian to host byte order. - - -@val: a #guint value in big-endian byte order. -@Returns: @val converted to host byte order. - - - - -Converts a #guint value from little-endian to host byte order. - - -@val: a #guint value in little-endian byte order. -@Returns: @val converted to host byte order. - - - - -Converts a #guint value from host byte order to big-endian. - - -@val: a #guint value in host byte order. -@Returns: @val converted to big-endian byte order. - - - - -Converts a #guint value from host byte order to little-endian. - - -@val: a #guint value in host byte order. -@Returns: @val converted to little-endian byte order. - - - - -Converts a #glong value from big-endian to the host byte order. - - -@val: a #glong value in big-endian byte order. -@Returns: @val converted to host byte order. - - - - -Converts a #glong value from little-endian to host byte order. - - -@val: a #glong value in little-endian byte order. -@Returns: @val converted to host byte order. - - - - -Converts a #glong value from host byte order to big-endian. - - -@val: a #glong value in host byte order. -@Returns: @val converted to big-endian byte order. - - - - -Converts a #glong value from host byte order to little-endian. - - -@val: a #glong value in host byte order. -@Returns: @val converted to little-endian. - - - - -Converts a #gulong value from big-endian to host byte order. - - -@val: a #gulong value in big-endian byte order. -@Returns: @val converted to host byte order. - - - - -Converts a #gulong value from little-endian to host byte order. - - -@val: a #gulong value in little-endian byte order. -@Returns: @val converted to host byte order. - - - - -Converts a #gulong value from host byte order to big-endian. - - -@val: a #gulong value in host byte order. -@Returns: @val converted to big-endian. - - - - -Converts a #gulong value from host byte order to little-endian. - - -@val: a #gulong value in host byte order. -@Returns: @val converted to little-endian. - - - - -Converts a #gsize value from big-endian to the host byte order. - - -@val: a #gsize value in big-endian byte order. -@Returns: @val converted to host byte order. - - - - -Converts a #gsize value from little-endian to host byte order. - - -@val: a #gsize value in little-endian byte order. -@Returns: @val converted to host byte order. - - - - -Converts a #gsize value from host byte order to big-endian. - - -@val: a #gsize value in host byte order. -@Returns: @val converted to big-endian byte order. - - - - -Converts a #gsize value from host byte order to little-endian. - - -@val: a #gsize value in host byte order. -@Returns: @val converted to little-endian. - - - - -Converts a #gssize value from big-endian to host byte order. - - -@val: a #gssize value in big-endian byte order. -@Returns: @val converted to host byte order. - - - - -Converts a #gssize value from little-endian to host byte order. - - -@val: a #gssize value in little-endian byte order. -@Returns: @val converted to host byte order. - - - - -Converts a #gssize value from host byte order to big-endian. - - -@val: a #gssize value in host byte order. -@Returns: @val converted to big-endian. - - - - -Converts a #gssize value from host byte order to little-endian. - - -@val: a #gssize value in host byte order. -@Returns: @val converted to little-endian. - - - - -Converts a #gint16 value from big-endian to host byte order. - - -@val: a #gint16 value in big-endian byte order. -@Returns: @val converted to host byte order. - - - - -Converts a #gint16 value from little-endian to host byte order. - - -@val: a #gint16 value in little-endian byte order. -@Returns: @val converted to host byte order. - - - - -Converts a #gint16 value from host byte order to big-endian. - - -@val: a #gint16 value in host byte order. -@Returns: @val converted to big-endian. - - - - -Converts a #gint16 value from host byte order to little-endian. - - -@val: a #gint16 value in host byte order. -@Returns: @val converted to little-endian. - - - - -Converts a #guint16 value from big-endian to host byte order. - - -@val: a #guint16 value in big-endian byte order. -@Returns: @val converted to host byte order. - - - - -Converts a #guint16 value from little-endian to host byte order. - - -@val: a #guint16 value in little-endian byte order. -@Returns: @val converted to host byte order. - - - - -Converts a #guint16 value from host byte order to big-endian. - - -@val: a #guint16 value in host byte order. -@Returns: @val converted to big-endian. - - - - -Converts a #guint16 value from host byte order to little-endian. - - -@val: a #guint16 value in host byte order. -@Returns: @val converted to little-endian. - - - - -Converts a #gint32 value from big-endian to host byte order. - - -@val: a #gint32 value in big-endian byte order. -@Returns: @val converted to host byte order. - - - - -Converts a #gint32 value from little-endian to host byte order. - - -@val: a #gint32 value in little-endian byte order. -@Returns: @val converted to host byte order. - - - - -Converts a #gint32 value from host byte order to big-endian. - - -@val: a #gint32 value in host byte order. -@Returns: @val converted to big-endian. - - - - -Converts a #gint32 value from host byte order to little-endian. - - -@val: a #gint32 value in host byte order. -@Returns: @val converted to little-endian. - - - - -Converts a #guint32 value from big-endian to host byte order. - - -@val: a #guint32 value in big-endian byte order. -@Returns: @val converted to host byte order. - - - - -Converts a #guint32 value from little-endian to host byte order. - - -@val: a #guint32 value in little-endian byte order. -@Returns: @val converted to host byte order. - - - - -Converts a #guint32 value from host byte order to big-endian. - - -@val: a #guint32 value in host byte order. -@Returns: @val converted to big-endian. - - - - -Converts a #guint32 value from host byte order to little-endian. - - -@val: a #guint32 value in host byte order. -@Returns: @val converted to little-endian. - - - - -Converts a #gint64 value from big-endian to host byte order. - - -@val: a #gint64 value in big-endian byte order. -@Returns: @val converted to host byte order. - - - - -Converts a #gint64 value from little-endian to host byte order. - - -@val: a #gint64 value in little-endian byte order. -@Returns: @val converted to host byte order. - - - - -Converts a #gint64 value from host byte order to big-endian. - - -@val: a #gint64 value in host byte order. -@Returns: @val converted to big-endian. - - - - -Converts a #gint64 value from host byte order to little-endian. - - -@val: a #gint64 value in host byte order. -@Returns: @val converted to little-endian. - - - - -Converts a #guint64 value from big-endian to host byte order. - - -@val: a #guint64 value in big-endian byte order. -@Returns: @val converted to host byte order. - - - - -Converts a #guint64 value from little-endian to host byte order. - - -@val: a #guint64 value in little-endian byte order. -@Returns: @val converted to host byte order. - - - - -Converts a #guint64 value from host byte order to big-endian. - - -@val: a #guint64 value in host byte order. -@Returns: @val converted to big-endian. - - - - -Converts a #guint64 value from host byte order to little-endian. - - -@val: a #guint64 value in host byte order. -@Returns: @val converted to little-endian. - - - - -Converts a #guint16 value between big-endian and pdp-endian byte order. -The conversion is symmetric so it can be used both ways. - - -@val: a #guint16 value in big-endian or pdp-endian byte order. -@Returns: @val converted to the opposite byte order. - - - - -Converts a #guint16 value between little-endian and big-endian byte order. -The conversion is symmetric so it can be used both ways. - - -@val: a #guint16 value in little-endian or big-endian byte order. -@Returns: @val converted to the opposite byte order. - - - - -Converts a #guint16 value between little-endian and pdp-endian byte order. -The conversion is symmetric so it can be used both ways. - - -@val: a #guint16 value in little-endian or pdp-endian byte order. -@Returns: @val converted to the opposite byte order. - - - - -Converts a #guint32 value between big-endian and pdp-endian byte order. -The conversion is symmetric so it can be used both ways. - - -@val: a #guint32 value in big-endian or pdp-endian byte order. -@Returns: @val converted to the opposite byte order. - - - - -Converts a #guint32 value between little-endian and big-endian byte order. -The conversion is symmetric so it can be used both ways. - - -@val: a #guint32 value in little-endian or big-endian byte order. -@Returns: @val converted to the opposite byte order. - - - - -Converts a #guint32 value between little-endian and pdp-endian byte order. -The conversion is symmetric so it can be used both ways. - - -@val: a #guint32 value in little-endian or pdp-endian byte order. -@Returns: @val converted to the opposite byte order. - - - - -Converts a #guint64 value between little-endian and big-endian byte order. -The conversion is symmetric so it can be used both ways. - - -@val: a #guint64 value in little-endian or big-endian byte order. -@Returns: @val converted to the opposite byte order. - - diff --git a/docs/reference/glib/tmpl/caches.sgml b/docs/reference/glib/tmpl/caches.sgml deleted file mode 100644 index ed18018..0000000 --- a/docs/reference/glib/tmpl/caches.sgml +++ /dev/null @@ -1,115 +0,0 @@ - -Caches - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@value_new_func: -@value_destroy_func: -@key_dup_func: -@key_destroy_func: -@hash_key_func: -@hash_value_func: -@key_equal_func: -@Returns: - - - - - - - -@cache: -@key: -@Returns: - - - - - - - -@cache: -@value: - - - - - - - -@cache: - - - - - - - -@cache: -@func: -@user_data: - - - - - - - -@cache: -@func: -@user_data: - - - - - - - -@value: - - - - - - - -@value: -@Returns: - - - - - - - -@key: -@Returns: - - diff --git a/docs/reference/glib/tmpl/checksum.sgml b/docs/reference/glib/tmpl/checksum.sgml deleted file mode 100644 index 69640b4..0000000 --- a/docs/reference/glib/tmpl/checksum.sgml +++ /dev/null @@ -1,130 +0,0 @@ - -Data Checksums - - - - - - - - - - - - - - - - - - - - - - - - -@G_CHECKSUM_MD5: -@G_CHECKSUM_SHA1: -@G_CHECKSUM_SHA256: - - - - - - -@checksum_type: -@Returns: - - - - - - - - - - - - - -@checksum_type: -@Returns: - - - - - - - -@checksum: -@Returns: - - - - - - - -@checksum: - - - - - - - -@checksum: - - - - - - - -@checksum: -@data: -@length: - - - - - - - -@checksum: -@Returns: - - - - - - - -@checksum: -@buffer: -@digest_len: - - - - - - - -@checksum_type: -@data: -@length: -@Returns: - - - - - - - -@checksum_type: -@str: -@length: -@Returns: - - diff --git a/docs/reference/glib/tmpl/completion.sgml b/docs/reference/glib/tmpl/completion.sgml deleted file mode 100644 index f5d5c16..0000000 --- a/docs/reference/glib/tmpl/completion.sgml +++ /dev/null @@ -1,126 +0,0 @@ - -Automatic String Completion - - - - - - - - - - - - - - - - - - - - - - - - -@items: -@func: -@prefix: -@cache: -@strncmp_func: - - - - - - -@func: -@Returns: - - - - - - - -@Param1: -@Returns: - - - - - - - -@cmp: -@items: - - - - - - - -@cmp: -@items: - - - - - - - -@cmp: - - - - - - - -@cmp: -@prefix: -@new_prefix: -@Returns: - - - - - - - -@cmp: -@prefix: -@new_prefix: -@Returns: - - - - - - - -@cmp: -@strncmp_func: - - - - - - - -@s1: -@s2: -@n: -@Returns: - - - - - - - -@cmp: - - diff --git a/docs/reference/glib/tmpl/conversions.sgml b/docs/reference/glib/tmpl/conversions.sgml deleted file mode 100644 index b28ec41..0000000 --- a/docs/reference/glib/tmpl/conversions.sgml +++ /dev/null @@ -1,391 +0,0 @@ - -Character Set Conversion - - -convert strings between different character sets using iconv() - - - - - - - - File Name Encodings - - - Historically, Unix has not had a defined encoding for file - names: a file name is valid as long as it does not have path - separators in it ("/"). However, displaying file names may - require conversion: from the character set in which they were - created, to the character set in which the application - operates. Consider the Spanish file name - "Presentación.sxi". If the - application which created it uses ISO-8859-1 for its encoding, - then the actual file name on disk would look like this: - - - -Character: P r e s e n t a c i ó n . s x i -Hex code: 50 72 65 73 65 6e 74 61 63 69 f3 6e 2e 73 78 69 - - - - However, if the application use UTF-8, the actual file name on - disk would look like this: - - - -Character: P r e s e n t a c i ó n . s x i -Hex code: 50 72 65 73 65 6e 74 61 63 69 c3 b3 6e 2e 73 78 69 - - - - Glib uses UTF-8 for its strings, and GUI toolkits like GTK+ - that use Glib do the same thing. If you get a file name from - the file system, for example, from - readdir(3) or from g_dir_read_name(), - and you wish to display the file name to the user, you - will need to convert it into UTF-8. The - opposite case is when the user types the name of a file he - wishes to save: the toolkit will give you that string in - UTF-8 encoding, and you will need to convert it to the - character set used for file names before you can create the - file with open(2) or - fopen(3). - - - - By default, Glib assumes that file names on disk are in UTF-8 - encoding. This is a valid assumption for file systems which - were created relatively recently: most applications use UTF-8 - encoding for their strings, and that is also what they use for - the file names they create. However, older file systems may - still contain file names created in "older" encodings, such as - ISO-8859-1. In this case, for compatibility reasons, you may - want to instruct Glib to use that particular encoding for file - names rather than UTF-8. You can do this by specifying the - encoding for file names in the G_FILENAME_ENCODING - environment variable. For example, if your installation uses - ISO-8859-1 for file names, you can put this in your - ~/.profile: - - - -export G_FILENAME_ENCODING=ISO-8859-1 - - - - Glib provides the functions g_filename_to_utf8() - and g_filename_from_utf8() - to perform the necessary conversions. These functions convert - file names from the encoding specified in - G_FILENAME_ENCODING to UTF-8 and vice-versa. - illustrates how - these functions are used to convert between UTF-8 and the - encoding for file names in the file system. - - -
- Conversion between File Name Encodings - -
- - - Checklist for Application Writers - - - This section is a practical summary of the detailed - description above. You can use this as a checklist of - things to do to make sure your applications process file - name encodings correctly. - - - - - - If you get a file name from the file system from a - function such as readdir(3) or - gtk_file_chooser_get_filename(), - you do not need to do any conversion to pass that - file name to functions like open(2), - rename(2), or - fopen(3) — those are "raw" - file names which the file system understands. - - - - - - If you need to display a file name, convert it to UTF-8 - first by using g_filename_to_utf8(). - If conversion fails, display a string like - "Unknown file name". Do - not convert this string back into the - encoding used for file names if you wish to pass it to - the file system; use the original file name instead. - For example, the document window of a word processor - could display "Unknown file name" in its title bar but - still let the user save the file, as it would keep the - raw file name internally. This can happen if the user - has not set the G_FILENAME_ENCODING - environment variable even though he has files whose - names are not encoded in UTF-8. - - - - - - If your user interface lets the user type a file name - for saving or renaming, convert it to the encoding used - for file names in the file system by using g_filename_from_utf8(). - Pass the converted file name to functions like - fopen(3). If conversion fails, ask - the user to enter a different file name. This can - happen if the user types Japanese characters when - G_FILENAME_ENCODING is set to - ISO-8859-1, for example. - - - - -
- - - - - - - - - - - - - - -@str: -@len: -@to_codeset: -@from_codeset: -@bytes_read: -@bytes_written: -@error: -@Returns: - - - - - - - -@str: -@len: -@to_codeset: -@from_codeset: -@fallback: -@bytes_read: -@bytes_written: -@error: -@Returns: - - - - -The GIConv struct wraps an -iconv() conversion descriptor. It contains private data -and should only be accessed using the following functions. - - - - - - - - -@str: -@len: -@converter: -@bytes_read: -@bytes_written: -@error: -@Returns: - - - - -Error domain for character set conversions. Errors in this domain will -be from the #GConvertError enumeration. See #GError for information on -error domains. - - - - - - - - - -@to_codeset: -@from_codeset: -@Returns: - - - - - - - -@converter: -@inbuf: -@inbytes_left: -@outbuf: -@outbytes_left: -@Returns: - - - - - - - -@converter: -@Returns: - - - - - - - -@opsysstring: -@len: -@bytes_read: -@bytes_written: -@error: -@Returns: - - - - - - - -@opsysstring: -@len: -@bytes_read: -@bytes_written: -@error: -@Returns: - - - - - - - -@utf8string: -@len: -@bytes_read: -@bytes_written: -@error: -@Returns: - - - - - - - -@uri: -@hostname: -@error: -@Returns: - - - - - - - -@filename: -@hostname: -@error: -@Returns: - - - - - - - -@charsets: -@Returns: - - - - - - - -@filename: -@Returns: - - - - - - - -@filename: -@Returns: - - - - - - - -@utf8string: -@len: -@bytes_read: -@bytes_written: -@error: -@Returns: - - - - -Error codes returned by character set conversion routines. - - -@G_CONVERT_ERROR_NO_CONVERSION: Conversion between the requested character sets -is not supported. -@G_CONVERT_ERROR_ILLEGAL_SEQUENCE: Invalid byte sequence in conversion input. -@G_CONVERT_ERROR_FAILED: Conversion failed for some reason. -@G_CONVERT_ERROR_PARTIAL_INPUT: Partial character sequence at end of input. -@G_CONVERT_ERROR_BAD_URI: URI is invalid. -@G_CONVERT_ERROR_NOT_ABSOLUTE_PATH: Pathname is not an absolute path. - - - - - - -@charset: -@Returns: - - - - - diff --git a/docs/reference/glib/tmpl/datalist.sgml b/docs/reference/glib/tmpl/datalist.sgml deleted file mode 100644 index f41a613..0000000 --- a/docs/reference/glib/tmpl/datalist.sgml +++ /dev/null @@ -1,185 +0,0 @@ - -Keyed Data Lists - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@datalist: - - - - - - - -@dl: -@q: -@d: - - - - - - - -@datalist: -@key_id: -@data: -@destroy_func: - - - - - - - -@datalist: -@key_id: -@Returns: - - - - - - - -@dl: -@q: - - - - - - - -@datalist: -@key_id: -@Returns: - - - - - - - -@dl: -@k: -@d: - - - - - - - -@dl: -@k: -@d: -@f: - - - - - - - -@dl: -@k: - - - - - - - -@dl: -@k: - - - - - - - -@dl: -@k: - - - - - - - -@datalist: -@func: -@user_data: - - - - - - - -@datalist: - - - - - - - -@datalist: -@flags: - - - - - - - -@datalist: -@flags: - - - - - - - -@datalist: -@Returns: - - - - - - - - - diff --git a/docs/reference/glib/tmpl/datasets.sgml b/docs/reference/glib/tmpl/datasets.sgml deleted file mode 100644 index 1ce7f4f..0000000 --- a/docs/reference/glib/tmpl/datasets.sgml +++ /dev/null @@ -1,155 +0,0 @@ - -Datasets - - - - - - - - - - - - - - - - - - - - - - - - -@l: -@k: -@d: - - - - - - - -@dataset_location: -@key_id: -@data: -@destroy_func: - - - - - - - -@data: - - - - - - - -@dataset_location: -@key_id: -@Returns: - - - - - - - -@l: -@k: - - - - - - - -@dataset_location: -@key_id: -@Returns: - - - - - - - -@l: -@k: -@d: - - - - - - - -@l: -@k: -@d: -@f: - - - - - - - -@l: -@k: - - - - - - - -@l: -@k: - - - - - - - -@l: -@k: - - - - - - - -@dataset_location: -@func: -@user_data: - - - - - - - -@key_id: -@data: -@user_data: - - - - - - - -@dataset_location: - - diff --git a/docs/reference/glib/tmpl/date.sgml b/docs/reference/glib/tmpl/date.sgml deleted file mode 100644 index 5d2610b..0000000 --- a/docs/reference/glib/tmpl/date.sgml +++ /dev/null @@ -1,797 +0,0 @@ - -Date and Time Functions - - -calendrical calculations and miscellaneous time stuff - - - -The #GDate data structure represents a day between January 1, Year 1, -and sometime a few thousand years in the future (right now it will go -to the year 65535 or so, but g_date_set_parse() only parses up to the -year 8000 or so - just count on "a few thousand"). #GDate is meant to -represent everyday dates, not astronomical dates or historical dates -or ISO timestamps or the like. It extrapolates the current Gregorian -calendar forward and backward in time; there is no attempt to change -the calendar to match time periods or locations. #GDate does not store -time information; it represents a day. - - - -The #GDate implementation has several nice features; it is only a -64-bit struct, so storing large numbers of dates is very efficient. It -can keep both a Julian and day-month-year representation of the date, -since some calculations are much easier with one representation or the -other. A Julian representation is simply a count of days since some -fixed day in the past; for #GDate the fixed day is January 1, 1 AD. -("Julian" dates in the #GDate API aren't really Julian dates in the -technical sense; technically, Julian dates count from the start of the -Julian period, Jan 1, 4713 BC). - - - -#GDate is simple to use. First you need a "blank" date; you can get a -dynamically allocated date from g_date_new(), or you can declare an -automatic variable or array and initialize it to a sane state by -calling g_date_clear(). A cleared date is sane; it's safe to call -g_date_set_dmy() and the other mutator functions to initialize the -value of a cleared date. However, a cleared date is initially -invalid, meaning that it doesn't represent a day -that exists. It is undefined to call any of the date calculation -routines on an invalid date. If you obtain a date from a user or other -unpredictable source, you should check its validity with the -g_date_valid() predicate. g_date_valid() is also used to check for -errors with g_date_set_parse() and other functions that can -fail. Dates can be invalidated by calling g_date_clear() again. - - - -It is very important to use the API to access the #GDate -struct. Often only the day-month-year or only the Julian -representation is valid. Sometimes neither is valid. Use the API. - - - -GLib doesn't contain any time-manipulation functions; however, there -is a #GTime typedef and a #GTimeVal struct which represents a more -precise time (with microseconds). You can request the current time as -a #GTimeVal with g_get_current_time(). - - - - - - - - - - - - -Number of microseconds in one second (1 million). This macro is provided for -code readability. - - - - - - -Represents a precise time, with seconds and microseconds. -Similar to the struct timeval returned by -the gettimeofday() UNIX call. - - -@tv_sec: seconds -@tv_usec: microseconds - - - - - -@result: - - - - -Pauses the current thread for the given number of microseconds. There -are 1 million microseconds per second (represented by the -#G_USEC_PER_SEC macro). g_usleep() may have limited precision, -depending on hardware and operating system; don't rely on the exact -length of the sleep. - - -@microseconds: number of microseconds to pause - - - - - - - -@time_: -@microseconds: - - - - - - - -@iso_date: -@time_: -@Returns: - - - - - - - -@time_: -@Returns: - - - - -Represents a day between January 1, Year 1 and a few thousand years in -the future. None of its members should be accessed directly. If the -GDate is obtained from g_date_new(), it will -be safe to mutate but invalid and thus not safe for calendrical computations. -If it's declared on the stack, it will contain garbage so must be -initialized with g_date_clear(). g_date_clear() makes the date invalid -but sane. An invalid date doesn't represent a day, it's "empty." A -date becomes valid after you set it to a Julian day or you set a day, -month, and year. - - -@julian_days: the Julian representation of the date -@julian: this bit is set if @julian_days is valid -@dmy: this is set if @day, @month and @year are valid -@day: the day of the day-month-year representation of the date, as - a number between 1 and 31 -@month: the day of the day-month-year representation of the date, as - a number between 1 and 12 -@year: the day of the day-month-year representation of the date - - - -Simply a replacement for time_t. It has been deprected -since it is not equivalent to time_t -on 64-bit platforms with a 64-bit time_t. -Unrelated to #GTimer. - - - - -Note that GTime is defined to always be a 32bit integer, -unlike time_t which may be 64bit on some systems. -Therefore, GTime will overflow in the year 2038, and -you cannot use the address of a GTime variable as argument -to the UNIX time() function. Instead, do the following: - - -time_t ttime; -GTime gtime; - -time (&ttime); -gtime = (GTime)ttime; - - - - - - - -This enumeration isn't used in the API, but may be useful if you need -to mark a number as a day, month, or year. - - -@G_DATE_DAY: a day -@G_DATE_MONTH: a month -@G_DATE_YEAR: a year - - - -Integer representing a day of the month; between 1 and -31. #G_DATE_BAD_DAY represents an invalid day of the month. - - - - - -Enumeration representing a month; values are #G_DATE_JANUARY, -#G_DATE_FEBRUARY, etc. #G_DATE_BAD_MONTH is the invalid value. - - -@G_DATE_BAD_MONTH: invalid value -@G_DATE_JANUARY: January -@G_DATE_FEBRUARY: February -@G_DATE_MARCH: March -@G_DATE_APRIL: April -@G_DATE_MAY: May -@G_DATE_JUNE: June -@G_DATE_JULY: July -@G_DATE_AUGUST: August -@G_DATE_SEPTEMBER: September -@G_DATE_OCTOBER: October -@G_DATE_NOVEMBER: November -@G_DATE_DECEMBER: December - - - -Integer representing a year; #G_DATE_BAD_YEAR is the invalid -value. The year must be 1 or higher; negative (BC) years are not -allowed. The year is represented with four digits. - - - - - -Enumeration representing a day of the week; #G_DATE_MONDAY, -#G_DATE_TUESDAY, etc. #G_DATE_BAD_WEEKDAY is an invalid weekday. - - -@G_DATE_BAD_WEEKDAY: invalid value -@G_DATE_MONDAY: Monday -@G_DATE_TUESDAY: Tuesday -@G_DATE_WEDNESDAY: Wednesday -@G_DATE_THURSDAY: Thursday -@G_DATE_FRIDAY: Friday -@G_DATE_SATURDAY: Saturday -@G_DATE_SUNDAY: Sunday - - - -Represents an invalid #GDateDay. - - - - - - -Represents an invalid Julian day number. - - - - - - -Represents an invalid year. - - - - - - -Allocates a #GDate and initializes it to a sane state. The new date will -be cleared (as if you'd called g_date_clear()) but invalid (it won't -represent an existing day). Free the return value with g_date_free(). - - -@Returns: a newly-allocated #GDate - - - - -Like g_date_new(), but also sets the value of the date. Assuming the -day-month-year triplet you pass in represents an existing day, the -returned date will be valid. - - -@day: day of the month -@month: month of the year -@year: year -@Returns: a newly-allocated #GDate initialized with @day, @month, and @year - - - - -Like g_date_new(), but also sets the value of the date. Assuming the -Julian day number you pass in is valid (greater than 0, less than an -unreasonably large number), the returned date will be valid. - - -@julian_day: days since January 1, Year 1 -@Returns: a newly-allocated #GDate initialized with @julian_day - - - - -Initializes one or more #GDate structs to a sane but invalid -state. The cleared dates will not represent an existing date, but will -not contain garbage. Useful to init a date declared on the stack. -Validity can be tested with g_date_valid(). - - -@date: pointer to one or more dates to clear -@n_dates: number of dates to clear - - - - -Frees a #GDate returned from g_date_new(). - - -@date: a #GDate - - - - -Sets the day of the month for a #GDate. If the resulting day-month-year -triplet is invalid, the date will be invalid. - - -@date: a #GDate -@day: day to set - - - - -Sets the month of the year for a #GDate. If the resulting -day-month-year triplet is invalid, the date will be invalid. - - -@date: a #GDate -@month: month to set - - - - -Sets the year for a #GDate. If the resulting day-month-year triplet is -invalid, the date will be invalid. - - -@date: a #GDate -@year: year to set - - - - -Sets the value of a #GDate from a day, month, and year. The day-month-year -triplet must be valid; if you aren't sure it is, call g_date_valid_dmy() to -check before you set it. - - -@date: a #GDate -@day: day -@month: month -@y: year - - - - -Sets the value of a #GDate from a Julian day number. - - -@date: a #GDate -@julian_date: Julian day number (days since January 1, Year 1) - - - - - - - -@date: -@time_: - - - - - - - -@date: -@timet: - - - - - - - -@date: -@timeval: - - - - -Parses a user-inputted string @str, and try to figure out what date it -represents, taking the current locale -into account. If the string is successfully parsed, the date will be -valid after the call. Otherwise, it will be invalid. You should check -using g_date_valid() to see whether the parsing succeeded. - - - -This function is not appropriate for file formats and the like; it -isn't very precise, and its exact behavior varies with the -locale. It's intended to be a heuristic routine that guesses what the -user means by a given string (and it does work pretty well in that -capacity). - - -@date: a #GDate to fill in -@str: string to parse - - - - -Increments a date some number of days. To move forward by weeks, add -weeks*7 days. The date must be valid. - - -@date: a #GDate to increment -@n_days: number of days to move the date forward - - - - -Moves a date some number of days into the past. To move by weeks, just -move by weeks*7 days. The date must be valid. - - -@date: a #GDate to decrement -@n_days: number of days to move - - - - -Increments a date by some number of months. If the day of the month is -greater than 28, this routine may change the day of the month (because -the destination month may not have the current day in it). The date -must be valid. - - -@date: a #GDate to increment -@n_months: number of months to move forward - - - - -Moves a date some number of months into the past. If the current day of -the month doesn't exist in the destination month, the day of the month -may change. The date must be valid. - - -@date: a #GDate to decrement -@n_months: number of months to move - - - - -Increments a date by some number of years. If the date is February 29, -and the destination year is not a leap year, the date will be changed -to February 28. The date must be valid. - - -@date: a #GDate to increment -@n_years: number of years to move forward - - - - -Moves a date some number of years into the past. If the current day -doesn't exist in the destination year (i.e. it's February 29 and you -move to a non-leap-year) then the day is changed to February 29. The date -must be valid. - - -@date: a #GDate to decrement -@n_years: number of years to move - - - - -Computes the number of days between two dates. -If @date2 is prior to @date1, the returned value is negative. -Both dates must be valid. - - -@date1: the first date -@date2: the second date -@Returns: the number of days between @date1 and @date2 - - - - -qsort()-style comparsion function for dates. Both -dates must be valid. - - -@lhs: first date to compare -@rhs: second date to compare -@Returns: 0 for equal, less than zero if @lhs is less than @rhs, - greater than zero if @lhs is greater than @rhs - - - - -If @date is prior to @min_date, sets @date equal to @min_date. -If @date falls after @max_date, sets @date equal to @max_date. -Otherwise, @date is unchanged. -Either of @min_date and @max_date may be %NULL. All non-%NULL dates -must be valid. - - -@date: a #GDate to clamp -@min_date: minimum accepted value for @date -@max_date: maximum accepted value for @date - - - - -Checks if @date1 is less than or equal to @date2, -and swap the values if this is not the case. - - -@date1: the first date -@date2: the second date - - - - -Returns the day of the month. The date must be valid. - - -@date: a #GDate to extract the day of the month from -@Returns: day of the month - - - - -Returns the month of the year. The date must be valid. - - -@date: a #GDate to get the month from -@Returns: month of the year as a #GDateMonth - - - - -Returns the year of a #GDate. The date must be valid. - - -@date: a #GDate -@Returns: year in which the date falls - - - - -Returns the Julian day or "serial number" of the #GDate. The -Julian day is simply the number of days since January 1, Year 1; i.e., -January 1, Year 1 is Julian day 1; January 2, Year 1 is Julian day 2, -etc. The date must be valid. - - -@date: a #GDate to extract the Julian day from -@Returns: Julian day - - - - -Returns the day of the week for a #GDate. The date must be valid. - - -@date: a #GDate. -@Returns: day of the week as a #GDateWeekday. - - - - -Returns the day of the year, where Jan 1 is the first day of the -year. The date must be valid. - - -@date: a #GDate to extract day of year from -@Returns: day of the year - - - - -Returns the number of days in a month, taking leap years into account. - - -@month: month -@year: year -@Returns: number of days in @month during the @year - - - - -Returns %TRUE if the date is on the first of a month. The date must be valid. - - -@date: a #GDate to check -@Returns: %TRUE if the date is the first of the month - - - - -Returns %TRUE if the date is the last day of the month. The date must be valid. - - -@date: a #GDate to check -@Returns: %TRUE if the date is the last day of the month - - - - -Returns %TRUE if the year is a leap year. -For the purposes of this function, leap year is every year divisible by -4 unless that year is divisible by 100. If it is divisible by 100 it would -be a leap year only if that year is also divisible by 400. - - -@year: year to check -@Returns: %TRUE if the year is a leap year - - - - -Returns the week of the year, where weeks are understood to start on -Monday. If the date is before the first Monday of the year, return -0. The date must be valid. - - -@date: a #GDate -@Returns: week of the year - - - - -Returns the number of weeks in the year, where weeks are taken to start -on Monday. Will be 52 or 53. The date must be valid. (Years always have 52 -7-day periods, plus 1 or 2 extra days depending on whether it's a leap -year. This function is basically telling you how many Mondays are in -the year, i.e. there are 53 Mondays if one of the extra days happens -to be a Monday.) - - -@year: a year -@Returns: number of Mondays in the year - - - - -Returns the week of the year during which this date falls, if weeks -are understood to being on Sunday. The date must be valid. Can return 0 if -the day is before the first Sunday of the year. - - -@date: a #GDate -@Returns: week number - - - - -Returns the number of weeks in the year, where weeks are taken to start -on Sunday. Will be 52 or 53. The date must be valid. (Years always have 52 -7-day periods, plus 1 or 2 extra days depending on whether it's a leap -year. This function is basically telling you how many Sundays are in -the year, i.e. there are 53 Sundays if one of the extra days happens -to be a Sunday.) - - -@year: year to count weeks in -@Returns: number of weeks - - - - - - - -@date: -@Returns: - - - - -Generates a printed representation of the date, in a -locale-specific way. Works just like -the platform's C library strftime() function, but only accepts date-related -formats; time-related formats give undefined results. Date must be valid. -Unlike strftime() (which uses the locale encoding), works on a UTF-8 format -string and stores a UTF-8 result. - - - -This function does not provide any conversion specifiers in addition -to those implemented by the platform's C library. For example, don't -expect that using g_date_strftime() would make the %F provided by the C99 -strftime() work on Windows where the C library only complies to C89. - - -@s: destination buffer -@slen: buffer size -@format: format string -@date: valid #GDate -@Returns: number of characters written to the buffer, or 0 the buffer was too small - - - - -Fills in the date-related bits of a struct tm -using the @date value. Initializes the non-date parts with something -sane but meaningless. - - -@date: a #GDate to set the struct tm from. -@tm: struct tm to fill. - - - - -Returns %TRUE if the #GDate represents an existing day. The date must not -contain garbage; it should have been initialized with g_date_clear() -if it wasn't allocated by one of the g_date_new() variants. - - -@date: a #GDate to check -@Returns: Whether the date is valid - - - - -Returns %TRUE if the day of the month is valid (a day is valid if it's -between 1 and 31 inclusive). - - -@day: day to check -@Returns: %TRUE if the day is valid - - - - -Returns %TRUE if the month value is valid. The 12 #GDateMonth -enumeration values are the only valid months. - - -@month: month -@Returns: %TRUE if the month is valid - - - - -Returns %TRUE if the year is valid. Any year greater than 0 is valid, -though there is a 16-bit limit to what #GDate will understand. - - -@year: year -@Returns: %TRUE if the year is valid - - - - -Returns %TRUE if the day-month-year triplet forms a valid, existing day -in the range of days #GDate understands (Year 1 or later, no more than -a few thousand years in the future). - - -@day: day -@month: month -@year: year -@Returns: %TRUE if the date is a valid one - - - - -Returns %TRUE if the Julian day is valid. Anything greater than zero -is basically a valid Julian, though there is a 32-bit limit. - - -@julian_date: Julian day to check -@Returns: %TRUE if the Julian day is valid - - - - -Returns %TRUE if the weekday is valid. The seven #GDateWeekday enumeration -values are the only valid weekdays. - - -@weekday: weekday -@Returns: %TRUE if the weekday is valid - - diff --git a/docs/reference/glib/tmpl/error_reporting.sgml b/docs/reference/glib/tmpl/error_reporting.sgml deleted file mode 100644 index fc3284c..0000000 --- a/docs/reference/glib/tmpl/error_reporting.sgml +++ /dev/null @@ -1,523 +0,0 @@ - -Error Reporting - - -a system for reporting errors - - - - -GLib provides a standard method of reporting errors from a called function to -the calling code. (This is the same problem solved by exceptions in other -languages.) It's important to understand that this method is both a -data type (the #GError object) and a set of -rules. If you use #GError incorrectly, then your code will not -properly interoperate with other code that uses #GError, and users of your API -will probably get confused. - - - -First and foremost: #GError should only be used to report -recoverable runtime errors, never to report programming errors. If -the programmer has screwed up, then you should use g_warning(), -g_return_if_fail(), g_assert(), g_error(), or some similar facility. -(Incidentally, remember that the g_error() function should -only be used for programming errors, it should not be used -to print any error reportable via #GError.) - - - -Examples of recoverable runtime errors are "file not found" or "failed to parse -input." Examples of programming errors are "NULL passed to strcmp()" or -"attempted to free the same pointer twice." These two kinds of errors are -fundamentally different: runtime errors should be handled or reported to the -user, programming errors should be eliminated by fixing the bug in the program. -This is why most functions in GLib and GTK+ do not use the #GError facility. - - - -Functions that can fail take a return location for a #GError as their last argument. -For example: - -gboolean g_file_get_contents (const gchar *filename, - gchar **contents, - gsize *length, - GError **error); - -If you pass a non-%NULL value for the error argument, it should -point to a location where an error can be placed. For example: - -gchar *contents; -GError *err = NULL; -g_file_get_contents ("foo.txt", &contents, NULL, &err); -g_assert ((contents == NULL && err != NULL) || (contents != NULL && err == NULL)); -if (err != NULL) - { - /* Report error to user, and free error */ - g_assert (contents == NULL); - fprintf (stderr, "Unable to read file: %s\n", err->message); - g_error_free (err); - } -else - { - /* Use file contents */ - g_assert (contents != NULL); - } - -Note that err != NULL in this example is a -reliable indicator of whether -g_file_get_contents() failed. Additionally, g_file_get_contents() returns -a boolean which indicates whether it was successful. - - - -Because g_file_get_contents() returns %FALSE on failure, if you are only -interested in whether it failed and don't need to display an error message, you -can pass %NULL for the error argument: - -if (g_file_get_contents ("foo.txt", &contents, NULL, NULL)) /* ignore errors */ - /* no error occurred */ ; -else - /* error */ ; - - - - -The #GError object contains three fields: domain indicates -the module the error-reporting function is located in, code -indicates the specific error that occurred, and message is a -user-readable error message with as many details as possible. Several functions -are provided to deal with an error received from a called function: -g_error_matches() returns %TRUE if the error matches a given domain and code, -g_propagate_error() copies an error into an error location (so the calling -function will receive it), and g_clear_error() clears an error location by -freeing the error and resetting the location to %NULL. To display an error to the -user, simply display error->message, perhaps along with -additional context known only to the calling function (the file being opened, or -whatever -- though in the g_file_get_contents() case, -error->message already contains a filename). - - - -When implementing a function that can report errors, the basic tool is -g_set_error(). Typically, if a fatal error occurs you want to g_set_error(), -then return immediately. g_set_error() does nothing if the error location passed -to it is %NULL. Here's an example: - -gint -foo_open_file (GError **error) -{ - gint fd; - - fd = open ("file.txt", O_RDONLY); - - if (fd < 0) - { - g_set_error (error, - FOO_ERROR, /* error domain */ - FOO_ERROR_BLAH, /* error code */ - "Failed to open file: %s", /* error message format string */ - g_strerror (errno)); - return -1; - } - else - return fd; -} - - - - -Things are somewhat more complicated if you yourself call another function that -can report a #GError. If the sub-function indicates fatal errors in some way -other than reporting a #GError, such as by returning %TRUE on success, you can -simply do the following: - -gboolean -my_function_that_can_fail (GError **err) -{ - g_return_val_if_fail (err == NULL || *err == NULL, FALSE); - - if (!sub_function_that_can_fail (err)) - { - /* assert that error was set by the sub-function */ - g_assert (err == NULL || *err != NULL); - return FALSE; - } - - /* otherwise continue, no error occurred */ - g_assert (err == NULL || *err == NULL); -} - - - - -If the sub-function does not indicate errors other than by reporting a #GError, -you need to create a temporary #GError since the passed-in one may be %NULL. -g_propagate_error() is intended for use in this case. - -gboolean -my_function_that_can_fail (GError **err) -{ - GError *tmp_error; - - g_return_val_if_fail (err == NULL || *err == NULL, FALSE); - - tmp_error = NULL; - sub_function_that_can_fail (&tmp_error); - - if (tmp_error != NULL) - { - /* store tmp_error in err, if err != NULL, - * otherwise call g_error_free() on tmp_error - */ - g_propagate_error (err, tmp_error); - return FALSE; - } - - /* otherwise continue, no error occurred */ -} - - - - -Error pileups are always a bug. For example, this code is incorrect: - -gboolean -my_function_that_can_fail (GError **err) -{ - GError *tmp_error; - - g_return_val_if_fail (err == NULL || *err == NULL, FALSE); - - tmp_error = NULL; - sub_function_that_can_fail (&tmp_error); - other_function_that_can_fail (&tmp_error); - - if (tmp_error != NULL) - { - g_propagate_error (err, tmp_error); - return FALSE; - } -} - -tmp_error should be checked immediately after -sub_function_that_can_fail(), and either cleared or propagated upward. The rule -is: after each error, you must either handle the error, or return it to the -calling function. Note that passing %NULL for the error location is the -equivalent of handling an error by always doing nothing about it. So the -following code is fine, assuming errors in sub_function_that_can_fail() are not -fatal to my_function_that_can_fail(): - -gboolean -my_function_that_can_fail (GError **err) -{ - GError *tmp_error; - - g_return_val_if_fail (err == NULL || *err == NULL, FALSE); - - sub_function_that_can_fail (NULL); /* ignore errors */ - - tmp_error = NULL; - other_function_that_can_fail (&tmp_error); - - if (tmp_error != NULL) - { - g_propagate_error (err, tmp_error); - return FALSE; - } -} - - - - -Note that passing %NULL for the error location ignores -errors; it's equivalent to try { sub_function_that_can_fail (); } catch -(...) {} in C++. It does not mean to leave errors -unhandled; it means to handle them by doing nothing. - - - -Error domains and codes are conventionally named as follows: - - - -The error domain is called -<NAMESPACE>_<MODULE>_ERROR, for example -%G_SPAWN_ERROR or %G_THREAD_ERROR: - -#define G_SPAWN_ERROR g_spawn_error_quark () - -GQuark -g_spawn_error_quark (void) -{ - return g_quark_from_static_string ("g-spawn-error-quark"); -} - - - - - -The error codes are in an enumeration called -<Namespace><Module>Error; for example, -#GThreadError or #GSpawnError. - - - - -Members of the error code enumeration are called <NAMESPACE>_<MODULE>_ERROR_<CODE>, for example %G_SPAWN_ERROR_FORK or %G_THREAD_ERROR_AGAIN. - - - - -If there's a "generic" or "unknown" error code for unrecoverable errors it -doesn't make sense to distinguish with specific codes, it should be called -<NAMESPACE>_<MODULE>_ERROR_FAILED, for -example %G_SPAWN_ERROR_FAILED or %G_THREAD_ERROR_FAILED. - - - - - - -Summary of rules for use of #GError: - - - - Do not report programming errors via #GError. - - - - - - The last argument of a function that returns an error should be a - location where a #GError can be placed (i.e. "#GError** error"). If - #GError is used with varargs, the #GError** should be the last - argument before the "...". - - - - - - The caller may pass %NULL for the #GError** if they are not interested - in details of the exact error that occurred. - - - - - - If %NULL is passed for the #GError** argument, then errors should - not be returned to the caller, but your function should still - abort and return if an error occurs. That is, control flow should - not be affected by whether the caller wants to get a #GError. - - - - - - If a #GError is reported, then your function by definition - had a fatal failure and did not complete whatever it was supposed - to do. If the failure was not fatal, then you handled it - and you should not report it. If it was fatal, then you must report it - and discontinue whatever you were doing immediately. - - - - - - A #GError* must be initialized to %NULL before passing its address to - a function that can report errors. - - - - - - "Piling up" errors is always a bug. That is, if you assign a new - #GError to a #GError* that is non-%NULL, thus overwriting the previous - error, it indicates that you should have aborted the operation instead - of continuing. If you were able to continue, you should have cleared - the previous error with g_clear_error(). g_set_error() will complain - if you pile up errors. - - - - - - - By convention, if you return a boolean value indicating success - then %TRUE means success and %FALSE means failure. If %FALSE is returned, - the error must be set to a non-%NULL value. - - - - - - - A %NULL return value is also frequently used to mean that an error - occurred. You should make clear in your documentation whether %NULL is - a valid return value in non-error cases; if %NULL is a valid value, - then users must check whether an error was returned to see if the - function succeeded. - - - - - - When implementing a function that can report errors, you may want to - add a check at the top of your function that the error return location - is either %NULL or contains a %NULL error - (e.g. g_return_if_fail (error == NULL || *error == - NULL);). - - - - - - - - - - - - - - - - - -The GError structure contains -information about an error that has occurred. - - -@domain: error domain, e.g. #G_FILE_ERROR. -@code: error code, e.g. %G_FILE_ERROR_NOENT. -@message: human-readable informative error message. - - - - - - -@domain: -@code: -@format: -@Varargs: -@Returns: - - - - - - - -@domain: -@code: -@message: -@Returns: - - - - - - - -@domain: -@code: -@format: -@args: -@Returns: - - - - - - - -@error: - - - - - - - -@error: -@Returns: - - - - - - - -@error: -@domain: -@code: -@Returns: - - - - - - - -@err: -@domain: -@code: -@format: -@Varargs: - - - - - - - -@err: -@domain: -@code: -@message: - - - - - - - -@dest: -@src: - - - - - - - -@err: - - - - - - - -@err: -@format: -@Varargs: - - - - - - - -@dest: -@src: -@format: -@Varargs: - - diff --git a/docs/reference/glib/tmpl/fileutils.sgml b/docs/reference/glib/tmpl/fileutils.sgml deleted file mode 100644 index 817aeb6..0000000 --- a/docs/reference/glib/tmpl/fileutils.sgml +++ /dev/null @@ -1,498 +0,0 @@ - -File Utilities - - -various file-related functions - - - -There is a group of functions which wrap the common POSIX functions -dealing with filenames (g_open(), g_rename(), g_mkdir(), g_stat(), -g_unlink(), g_remove(), g_fopen(), g_freopen()). The point of these -wrappers is to make it possible to handle file names with any Unicode -characters in them on Windows without having to use ifdefs and the -wide character API in the application code. - - -The pathname argument should be in the GLib file name encoding. On -POSIX this is the actual on-disk encoding which might correspond to -the locale settings of the process (or the -G_FILENAME_ENCODING environment variable), or not. - - -On Windows the GLib file name encoding is UTF-8. Note that the -Microsoft C library does not use UTF-8, but has separate APIs for -current system code page and wide characters (UTF-16). The GLib -wrappers call the wide character API if present (on modern Windows -systems), otherwise convert to/from the system code page. - - - -Another group of functions allows to open and read directories -in the GLib file name encoding. These are g_dir_open(), -g_dir_read_name(), g_dir_rewind(), g_dir_close(). - - - - - - - - - - - - -Values corresponding to errno codes returned from file operations -on UNIX. Unlike errno codes, #GFileError values are available on -all systems, even Windows. The exact meaning of each code depends on what -sort of file operation you were performing; the UNIX documentation -gives more details. The following error code descriptions come -from the GNU C Library manual, and are under the copyright -of that manual. - - - -It's not very portable to make detailed assumptions about exactly -which errors will be returned from a given operation. Some errors -don't occur on some systems, etc., sometimes there are subtle -differences in when a system will report a given error, etc. - - -@G_FILE_ERROR_EXIST: Operation not permitted; only the owner of the - file (or other resource) or processes with special privileges can - perform the operation. -@G_FILE_ERROR_ISDIR: File is a directory; you cannot open a directory - for writing, or create or remove hard links to it. -@G_FILE_ERROR_ACCES: Permission denied; the file permissions do not - allow the attempted operation. -@G_FILE_ERROR_NAMETOOLONG: Filename too long. -@G_FILE_ERROR_NOENT: No such file or directory. This is a "file - doesn't exist" error for ordinary files that are referenced in - contexts where they are expected to already exist. -@G_FILE_ERROR_NOTDIR: A file that isn't a directory was specified when - a directory is required. -@G_FILE_ERROR_NXIO: No such device or address. The system tried to - use the device represented by a file you specified, and it - couldn't find the device. This can mean that the device file was - installed incorrectly, or that the physical device is missing or - not correctly attached to the computer. -@G_FILE_ERROR_NODEV: This file is of a type that doesn't support - mapping. -@G_FILE_ERROR_ROFS: The directory containing the new link can't be - modified because it's on a read-only file system. -@G_FILE_ERROR_TXTBSY: Text file busy. -@G_FILE_ERROR_FAULT: You passed in a pointer to bad memory. - (GLib won't reliably return this, don't pass in pointers to bad - memory.) -@G_FILE_ERROR_LOOP: Too many levels of symbolic links were encountered - in looking up a file name. This often indicates a cycle of symbolic - links. -@G_FILE_ERROR_NOSPC: No space left on device; write operation on a - file failed because the disk is full. -@G_FILE_ERROR_NOMEM: No memory available. The system cannot allocate - more virtual memory because its capacity is full. -@G_FILE_ERROR_MFILE: The current process has too many files open and - can't open any more. Duplicate descriptors do count toward this - limit. -@G_FILE_ERROR_NFILE: There are too many distinct file openings in the - entire system. -@G_FILE_ERROR_BADF: Bad file descriptor; for example, I/O on a - descriptor that has been closed or reading from a descriptor open - only for writing (or vice versa). -@G_FILE_ERROR_INVAL: Invalid argument. This is used to indicate - various kinds of problems with passing the wrong argument to a - library function. -@G_FILE_ERROR_PIPE: Broken pipe; there is no process reading from the - other end of a pipe. Every library function that returns this - error code also generates a `SIGPIPE' signal; this signal - terminates the program if not handled or blocked. Thus, your - program will never actually see this code unless it has handled or - blocked `SIGPIPE'. -@G_FILE_ERROR_AGAIN: Resource temporarily unavailable; the call might - work if you try again later. -@G_FILE_ERROR_INTR: Interrupted function call; an asynchronous signal - occurred and prevented completion of the call. When this - happens, you should try the call again. -@G_FILE_ERROR_IO: Input/output error; usually used for physical read - or write errors. i.e. the disk or other physical device hardware - is returning errors. -@G_FILE_ERROR_PERM: Operation not permitted; only the owner of the - file (or other resource) or processes with special privileges can - perform the operation. -@G_FILE_ERROR_NOSYS: Function not implemented; this indicates that the - system is missing some functionality. -@G_FILE_ERROR_FAILED: Does not correspond to a UNIX error code; this - is the standard "failed for unspecified reason" error code present in - all #GError error code enumerations. Returned if no specific - code applies. - - - -Error domain for file operations. Errors in this domain will -be from the #GFileError enumeration. See #GError for information on -error domains. - - - - - - -A test to perform on a file using g_file_test(). - - -@G_FILE_TEST_IS_REGULAR: %TRUE if the file is a regular file (not a directory). - Note that this test will also return %TRUE if the tested file is a symlink - to a regular file. -@G_FILE_TEST_IS_SYMLINK: %TRUE if the file is a symlink. -@G_FILE_TEST_IS_DIR: %TRUE if the file is a directory. -@G_FILE_TEST_IS_EXECUTABLE: %TRUE if the file is executable. -@G_FILE_TEST_EXISTS: %TRUE if the file exists. - It may or may not be a regular file. - - - - - - -@err_no: -@Returns: - - - - - - - -@filename: -@contents: -@length: -@error: -@Returns: - - - - - - - -@filename: -@contents: -@length: -@error: -@Returns: - - - - - - - -@filename: -@test: -@Returns: - - - - - - - -@tmpl: -@Returns: - - - - - - - -@tmpl: -@flags: -@mode: -@Returns: - - - - - - - -@tmpl: -@name_used: -@error: -@Returns: - - - - - - - -@filename: -@error: -@Returns: - - - - - - - -@pathname: -@mode: -@Returns: - - - - -An opaque structure representing an opened directory. - - - - - - - - -@path: -@flags: -@error: -@Returns: - - - - - - - -@dir: -@Returns: - - - - - - - -@dir: - - - - - - - -@dir: - - - - -The #GMappedFile represents a file mapping created with -g_mapped_file_new(). It has only private members and should -not be accessed directly. - - - - - - - - -@filename: -@writable: -@error: -@Returns: - - - - - - - -@file: -@Returns: - - - - - - - -@file: - - - - - - - -@file: - - - - - - - -@file: -@Returns: - - - - - - - -@file: -@Returns: - - - - - - - -@filename: -@flags: -@mode: -@Returns: - - - - - - - -@oldfilename: -@newfilename: -@Returns: - - - - - - - -@filename: -@mode: -@Returns: - - - - - - - -@filename: -@buf: -@Returns: - - - - - - - -@filename: -@buf: -@Returns: - - - - - - - -@filename: -@Returns: - - - - - - - -@filename: -@Returns: - - - - - - - -@filename: -@Returns: - - - - - - - -@filename: -@mode: -@Returns: - - - - - - - -@filename: -@mode: -@stream: -@Returns: - - - - - - - -@filename: -@mode: -@Returns: - - - - - - - -@filename: -@mode: -@Returns: - - - - - - - -@filename: -@mode: -@Returns: - - - - - - - -@path: -@Returns: - - - - - - - -@filename: -@utb: -@Returns: - - diff --git a/docs/reference/glib/tmpl/ghostutils.sgml b/docs/reference/glib/tmpl/ghostutils.sgml deleted file mode 100644 index b619912..0000000 --- a/docs/reference/glib/tmpl/ghostutils.sgml +++ /dev/null @@ -1,66 +0,0 @@ - -Hostname Utilities - - - - - - - - - - - - - - - - - - - - - - - - -@hostname: -@Returns: - - - - - - - -@hostname: -@Returns: - - - - - - - -@hostname: -@Returns: - - - - - - - -@hostname: -@Returns: - - - - - - - -@hostname: -@Returns: - - diff --git a/docs/reference/glib/tmpl/glib-unused.sgml b/docs/reference/glib/tmpl/glib-unused.sgml deleted file mode 100644 index 139c500..0000000 --- a/docs/reference/glib/tmpl/glib-unused.sgml +++ /dev/null @@ -1,1037 +0,0 @@ - - -The "GDesktopEntry" parser is intended to parse files written to -the Desktop -Entry Specification. It supports deserialization of -desktop entries from files and in-memory data. Desktop entries -are used for a variety of things including menus, application -MIME type registration, and launchers. - - - -To load an existing desktop entry from a data directory (as -returned by g_get_user_data_dir() and g_get_system_data_dirs()) -use g_desktop_entry_new_from_data_dirs(). To load an existing -desktop entry from an arbitrary location on the file system use -g_desktop_entry_new_from_file(). If the desktop entry is already -in memory use g_desktop_entry_new_from_data(). Once the desktop -entry is loaded its keys can be queried using the g_desktop_entry_get -family of functions. - - - -To create a new desktop entry first call g_desktop_entry_new(). -Then, call the g_desktop_entry_set family of functions. Next, -call g_desktop_entry_to_data() to output the desktop entry to -a byte array, which can be written to disk or sent over a -network. Finally, call g_desktop_entry_free() to deallocate the -#GDesktopEntry object returned by g_desktop_entry_new(). - - - - - - - - - - -serializes and deserializes a desktop entry. - - - -Desktop Entry Parser - - - - - - - - - - - - - - - - - - - - - - - - - - - -Testing - - - - - - - -@G_CHANNEL_ERROR_ACCES: -@G_CHANNEL_ERROR_BADF: -@G_CHANNEL_ERROR_DEADLK: -@G_CHANNEL_ERROR_FAULT: -@G_CHANNEL_ERROR_INVAL: -@G_CHANNEL_ERROR_IO: -@G_CHANNEL_ERROR_ISDIR: -@G_CHANNEL_ERROR_MFILE: -@G_CHANNEL_ERROR_NOLCK: -@G_CHANNEL_ERROR_NOSPC: -@G_CHANNEL_ERROR_PERM: -@G_CHANNEL_ERROR_PIPE: -@G_CHANNEL_ERROR_SPIPE: -@G_CHANNEL_ERROR_ENCODE_RW: -@G_CHANNEL_ERROR_FAILED: - - - - - - -@G_CHANNEL_STATUS_NORMAL: -@G_CHANNEL_STATUS_EOF: -@G_CHANNEL_STATUS_PARTIAL_CHARS: -@G_CHANNEL_STATUS_AGAIN: -@G_CHANNEL_STATUS_INTR: -@G_CHANNEL_STATUS_ERROR: -@G_CHANNEL_STATUS_BAD_INPUT: - - - - - - -@a: -@b: -@user_data: -@Returns: - - - - - - -@s1: -@s2: -@Returns: - - - - - - - - - -Error codes returned by desktop entry parsing. - - -@G_DESKTOP_ENTRY_ERROR_UNKNOWN_ENCODING: text being parsed is not UTF-8 and -cannot be guessed. -@G_DESKTOP_ENTRY_ERROR_BAD_START_GROUP: desktop entry does not start with a -legal start group. -@G_DESKTOP_ENTRY_ERROR_PARSE: desktop entry is empty or contains invalid -data. -@G_DESKTOP_ENTRY_ERROR_NOT_FOUND: valid desktop entry could not be found. -@G_DESKTOP_ENTRY_ERROR_KEY_NOT_FOUND: desktop entry does not have requested -key. -@G_DESKTOP_ENTRY_ERROR_GROUP_NOT_FOUND: desktop entry does not have requested -group -@G_DESKTOP_ENTRY_ERROR_INVALID_VALUE: desktop entry contains key which has -value that cannot be validated. - - - -#GDesktopEntry supports a few flags for tweaking performance during -deserialization. #G_DESKTOP_ENTRY_DISCARD_COMMENTS and -#G_DESKTOP_ENTRY_DISCARD_TRANSLATIONS will reduce memory footprint, -and #G_DESKTOP_ENTRY_GENERATE_LOOKUP_MAP will increase key lookup speed. - - -@G_DESKTOP_ENTRY_NONE: use parser defaults -@G_DESKTOP_ENTRY_DISCARD_COMMENTS: Discard all lines that are blank -or start with "#". -@G_DESKTOP_ENTRY_DISCARD_TRANSLATIONS: Only retain translations that -are returned by g_get_language_names(). -@G_DESKTOP_ENTRY_GENERATE_LOOKUP_MAP: Generate a lookup map for key names to make lookups constant time at the cost of more memory. - - - -Specifies the type of function passed to g_set_error_handler(). - - -@str: the error message. - - - - - - -@hook_list: -@hook: - - - - - - -@G_IO_FILE_MODE_READ: -@G_IO_FILE_MODE_WRITE: -@G_IO_FILE_MODE_APPEND: -@G_IO_FILE_MODE_READ_WRITE: -@G_IO_FILE_MODE_READ_WRITE_TRUNCATE: -@G_IO_FILE_MODE_READ_WRITE_APPEND: - - - -Enumeration representing different kinds of patterns. This is only used -internally for optimizing the match algorithm. - - -@G_MATCH_ALL: a general pattern. -@G_MATCH_ALL_TAIL: a general pattern which contains a fixed part matching -the end of the string. -@G_MATCH_HEAD: a pattern matching every string with a certain prefix. -@G_MATCH_TAIL: a pattern matching every string with a certain suffix. -@G_MATCH_EXACT: a pattern matching exactly one string. -@G_MATCH_LAST: - - - -Specifies the type of function passed to g_set_warning_handler(). - - -@str: the warning message. - - - - - - - - - -Error domain for desktop entry parsing. Errors in this domain will -be from the #GDesktopEntryError enumeration. See #GError for information on -error domains. - - - - - - - - - - - -One of %G_IO_CHANNEL_UNIX_LINE_TERM, %G_IO_CHANNEL_DOS_LINE_TERM, -or %G_IO_CHANNEL_MACINTOSH_LINE_TERM (unimplemented) -depending on the system type. - - - - - - - - - - - -Encoding for nonbuffered IO. With this encoding, data must be -read using g_io_channel_read_chars(); the other functions will -not work. - - - - - - - - - - - - - - - - - -Provided for UNIX emulation on Windows; equivalent to UNIX macro -%NAME_MAX, which is the maximum length of a single path component. -i.e. just the foo in /usr/bin/foo. - - - - - -Marks a string for translation, gets replaced with the translated string -at runtime. - - -@String: the string to be translated -@Since: 2.4 - - - - - - - - - - - - - - - -Provided for UNIX emulation on Windows; see documentation for closedir() -in any UNIX manual. - - -@Param1: -@Returns: - - - - - - - - - -Provided for UNIX emulation on Windows; see documentation for ftruncate() -in any UNIX manual. - - -@fd: -@size: - - - - - - -@en: -@Returns: - - - - - - -@Returns: - - - - - - -@Returns: - - - - - - -@entry: -@should_escape: - - - - - - -@entry: - - - - - - -@entry: -@group_name: -@key: -@error: -@Returns: - - - - - - -@entry: -@group_name: -@key: -@length: -@error: -@Returns: - - - - - - -@entry: -@length: -@Returns: - - - - - - -@entry: -@group_name: -@key: -@error: -@Returns: - - - - - - -@entry: -@group_name: -@key: -@length: -@error: -@Returns: - - - - - - -@entry: -@group_name: -@length: -@error: -@Returns: - - - - - - -@entry: -@group_name: -@key: -@locale: -@error: -@Returns: - - - - - - -@entry: -@group_name: -@key: -@locale: -@length: -@error: -@Returns: - - - - - - -@entry: -@Returns: - - - - - - -@entry: -@group_name: -@key: -@error: -@Returns: - - - - - - -@entry: -@group_name: -@key: -@length: -@error: -@Returns: - - - - - - -@entry: -@group_name: -@Returns: - - - - - - -@entry: -@group_name: -@key: -@error: -@Returns: - - - - - - -@flags: -@error: -@Returns: - - - - - - -@data: -@length: -@legal_start_groups: -@flags: -@error: -@Returns: - - - - - - -@file: -@full_path: -@legal_start_groups: -@flags: -@error: -@Returns: - - - - - - -@file: -@legal_start_groups: -@flags: -@error: -@Returns: - - - - - - -@entry: -@group_name: -@error: - - - - - - -@entry: -@group_name: -@key: -@error: - - - - - - -@entry: -@group_name: -@key: -@boolean: -@error: - - - - - - -@entry: -@group_name: -@key: -@list: -@length: -@error: - - - - - - -@entry: -@group_name: -@key: -@integer: -@error: - - - - - - -@entry: -@group_name: -@key: -@list: -@length: -@error: - - - - - - -@entry: -@group_name: -@key: -@locale: -@string: -@error: - - - - - - -@entry: -@group_name: -@key: -@locale: -@list: -@length: -@error: - - - - - - -@entry: -@group_name: -@key: -@string: -@error: - - - - - - -@entry: -@group_name: -@key: -@list: -@length: -@error: - - - - - - -@entry: -@length: -@error: -@Returns: - - - - - - -@filename: -@contents: -@length: -@error: -@Returns: - - - - - - -@size: -@Returns: - - - - - - -@Returns: - - - -The log domain used for messages logged by GLib itself. - - - - - -Adds a file descriptor to be polled. -This is usually combined with g_source_add() to add an event source. -The event source's check function will typically test the revents -field in the #GPollFD struct and return TRUE if events need to be processed. - - -@fd: a #GPollFD, which is a file descriptor together with a bitwise -combination of #GIOCondition flags determining which events to poll for. -@priority: the priority of the poll, which should be the same as the priority -used for g_source_add() to ensure that the file descriptor is polled whenever -the results may be needed. -See #G_PRIORITY_DEFAULT, #G_PRIORITY_DEFAULT_IDLE, #G_PRIORITY_HIGH, -#G_PRIORITY_HIGH_IDLE, and #G_PRIORITY_LOW. - - - - - - -@thread: -@Returns: - - - - - - -@loop: - - - -Removes a file descriptor from the list being polled. - - -@fd: the #GPollFD to remove. - - - - - - -@Returns: - - - -Checks if the given memory has already been freed. If it has it outputs -a warning message. -To use this function you must configure glib with the flag -'--enable-mem-check=yes' before compiling. - - -@mem: the memory to check. - - - - - - -@Returns: - - - - - - -@regex: - - - -Gets the file attributes. -This is the st_mode field from the -stat structure. See the stat() -documentation. - - -@filename: the file name. -@Returns: the file attributes. - - - -Sets the function to be called to handle error messages. -This function is deprecated in favour of the new logging facilities. - - -@func: the function to be called to handle error messages. -@Returns: the old error handler. - - - -Sets the function to be called to handle messages. -This function is deprecated in favour of the new logging facilities. - - -@func: the function to be called to handle normal messages. -@Returns: the old message handler. - - - -Sets the function to be called to handle warning messages. -This function is deprecated in favour of the new logging facilities. - - -@func: the function to be called to handle warning messages. -@Returns: the old warning handler. - - - - - -@priority: -@can_recurse: -@funcs: -@source_data: -@user_data: -@notify: -@Returns: -@source: -@context: - - - - - - -@source: -@func: -@data: -@notify: - - - - - - -@source: -@callback_data: -@callback_funcs: - - - -Removes the first event source found with the given source data. - - -Event sources are sorted with the highest priority first. Sources with equal -priority are stored in the order in which they were added. - - -@source_data: the source data, which contains information specific to the -type of source. -@Returns: TRUE if an event source was found and removed. - - - - - - -@private_key: -@thread: -@Returns: - - - - - - -@private_key: -@thread: -@data: -@notify: - - - -Turns the argument into a string literal by using the '#' stringizing operator. - - -@x: text to convert to a literal string. - - - - - - -@domain: -@file: -@line: -@func: -@warnexpr: - - - - - - - - - - - - - - - -This is the binary age passed to libtool. If -libtool means nothing to you, don't worry -about it. ;-) - - - - - - - - -@required_major: -@required_minor: -@required_micro: -@Returns: - - - -This is the interface age passed to libtool. If -libtool means nothing to you, don't worry -about it. ;-) - - - - - -The major version number of the GLib library. -(e.g. in GLib version 1.2.5 this is 1.) - - - -This variable is in the library, so represents the -GLib library you have linked against. Contrast with the -#GLIB_MAJOR_VERSION macro, which represents the major version of the -GLib headers you have included. - - - - - -The micro version number of the GLib library. -(e.g. in GLib version 1.2.5 this is 5.) - - - -This variable is in the library, so represents the GLib library you -have linked against. Contrast with the #GLIB_MICRO_VERSION macro, which -represents the micro version of the GLib headers you have included. - - - - - -The minor version number of the GLib library. -(e.g. in GLib version 1.2.5 this is 2.) - - - -This variable is in the library, so represents the -GLib library you have linked against. Contrast with the -#GLIB_MINOR_VERSION macro, which represents the minor version of the -GLib headers you have included. - - - - - - - - - - - - - - - - - -Provided for UNIX emulation on Windows; see documentation for opendir() -in any UNIX manual. - - -@Param1: -@Returns: - - - - - - - - - -Provided for UNIX emulation on Windows; see documentation for pipe() -in any UNIX manual. - - -@phandles: file descriptors, the first one for reading, the second one for writing. - - - - - - - - - - - - - - - -Provided for UNIX emulation on Windows; see documentation for readdir() -in any UNIX manual. - - - - - -Provided for UNIX emulation on Windows; see documentation for rewinddir() -in any UNIX manual. - - -@Param1: - - - - - - - diff --git a/docs/reference/glib/tmpl/gregex.sgml b/docs/reference/glib/tmpl/gregex.sgml deleted file mode 100644 index 317aa59..0000000 --- a/docs/reference/glib/tmpl/gregex.sgml +++ /dev/null @@ -1,632 +0,0 @@ - -Perl-compatible regular expressions - - -matches strings against regular expressions - - - -The g_regex_*() functions implement regular -expression pattern matching using syntax and semantics similar to -Perl regular expression. - - -Some functions accept a start_position argument, -setting it differs from just passing over a shortened string and setting -#G_REGEX_MATCH_NOTBOL in the case of a pattern that begins with any kind -of lookbehind assertion. -For example, consider the pattern "\Biss\B" which finds occurrences of "iss" -in the middle of words. ("\B" matches only if the current position in the -subject is not a word boundary.) When applied to the string "Mississipi" -from the fourth byte, namely "issipi", it does not match, because "\B" is -always false at the start of the subject, which is deemed to be a word -boundary. However, if the entire string is passed , but with -start_position set to 4, it finds the second -occurrence of "iss" because it is able to look behind the starting point -to discover that it is preceded by a letter. - - -Note that, unless you set the #G_REGEX_RAW flag, all the strings passed -to these functions must be encoded in UTF-8. The lengths and the positions -inside the strings are in bytes and not in characters, so, for instance, -"\xc3\xa0" (i.e. "à") is two bytes long but it is treated as a single -character. If you set #G_REGEX_RAW the strings can be non-valid UTF-8 -strings and a byte is treated as a character, so "\xc3\xa0" is two bytes -and two characters long. - - -When matching a pattern, "\n" matches only against a "\n" character in the -string, and "\r" matches only a "\r" character. To match any newline sequence -use "\R". This particular group matches either the two-character sequence -CR + LF ("\r\n"), or one of the single characters LF (linefeed, U+000A, "\n"), VT -(vertical tab, U+000B, "\v"), FF (formfeed, U+000C, "\f"), CR (carriage return, -U+000D, "\r"), NEL (next line, U+0085), LS (line separator, U+2028), or PS -(paragraph separator, U+2029). - - -The behaviour of the dot, circumflex, and dollar metacharacters are affected by -newline characters, the default is to recognize any newline character (the same -characters recognized by "\R"). This can be changed with #G_REGEX_NEWLINE_CR, -#G_REGEX_NEWLINE_LF and #G_REGEX_NEWLINE_CRLF compile options, -and with #G_REGEX_MATCH_NEWLINE_ANY, #G_REGEX_MATCH_NEWLINE_CR, -#G_REGEX_MATCH_NEWLINE_LF and #G_REGEX_MATCH_NEWLINE_CRLF match options. -These settings are also relevant when compiling a pattern if -#G_REGEX_EXTENDED is set, and an unescaped "#" outside a character class is -encountered. This indicates a comment that lasts until after the next -newline. - - -Creating and manipulating the same #GRegex structure from different -threads is not a problem as #GRegex does not modify its internal -state between creation and destruction, on the other hand #GMatchInfo is -not threadsafe. - - -The regular expressions low level functionalities are obtained through -the excellent PCRE library -written by Philip Hazel. - - - - - - - - - - - - -Error codes returned by regular expressions functions. - - -@G_REGEX_ERROR_COMPILE: Compilation of the regular expression failed. -@G_REGEX_ERROR_OPTIMIZE: Optimization of the regular expression failed. -@G_REGEX_ERROR_REPLACE: Replacement failed due to an ill-formed replacement string. -@G_REGEX_ERROR_MATCH: The match process failed. -@G_REGEX_ERROR_INTERNAL: Internal error of the regular expression engine. Since 2.16 -@G_REGEX_ERROR_STRAY_BACKSLASH: "\\" at end of pattern. Since 2.16 -@G_REGEX_ERROR_MISSING_CONTROL_CHAR: "\\c" at end of pattern. Since 2.16 -@G_REGEX_ERROR_UNRECOGNIZED_ESCAPE: Unrecognized character follows "\\". Since 2.16 -@G_REGEX_ERROR_QUANTIFIERS_OUT_OF_ORDER: Numbers out of order in "{}" quantifier. Since 2.16 -@G_REGEX_ERROR_QUANTIFIER_TOO_BIG: Number too big in "{}" quantifier. Since 2.16 -@G_REGEX_ERROR_UNTERMINATED_CHARACTER_CLASS: Missing terminating "]" for character class. Since 2.16 -@G_REGEX_ERROR_INVALID_ESCAPE_IN_CHARACTER_CLASS: Invalid escape sequence in character class. Since 2.16 -@G_REGEX_ERROR_RANGE_OUT_OF_ORDER: Range out of order in character class. Since 2.16 -@G_REGEX_ERROR_NOTHING_TO_REPEAT: Nothing to repeat. Since 2.16 -@G_REGEX_ERROR_UNRECOGNIZED_CHARACTER: Unrecognized character after "(?", "(?<" or "(?P". Since 2.16 -@G_REGEX_ERROR_POSIX_NAMED_CLASS_OUTSIDE_CLASS: POSIX named classes are supported only within a class. Since 2.16 -@G_REGEX_ERROR_UNMATCHED_PARENTHESIS: Missing terminating ")" or ")" without opening "(". Since 2.16 -@G_REGEX_ERROR_INEXISTENT_SUBPATTERN_REFERENCE: Reference to non-existent subpattern. Since 2.16 -@G_REGEX_ERROR_UNTERMINATED_COMMENT: Missing terminating ")" after comment. Since 2.16 -@G_REGEX_ERROR_EXPRESSION_TOO_LARGE: Regular expression too large. Since 2.16 -@G_REGEX_ERROR_MEMORY_ERROR: Failed to get memory. Since 2.16 -@G_REGEX_ERROR_VARIABLE_LENGTH_LOOKBEHIND: Lookbehind assertion is not fixed length. Since 2.16 -@G_REGEX_ERROR_MALFORMED_CONDITION: Malformed number or name after "(?(". Since 2.16 -@G_REGEX_ERROR_TOO_MANY_CONDITIONAL_BRANCHES: Conditional group contains more than two branches. Since 2.16 -@G_REGEX_ERROR_ASSERTION_EXPECTED: Assertion expected after "(?(". Since 2.16 -@G_REGEX_ERROR_UNKNOWN_POSIX_CLASS_NAME: Unknown POSIX class name. Since 2.16 -@G_REGEX_ERROR_POSIX_COLLATING_ELEMENTS_NOT_SUPPORTED: POSIX collating elements are not supported. Since 2.16 -@G_REGEX_ERROR_HEX_CODE_TOO_LARGE: Character value in "\\x{...}" sequence is too large. Since 2.16 -@G_REGEX_ERROR_INVALID_CONDITION: Invalid condition "(?(0)". Since 2.16 -@G_REGEX_ERROR_SINGLE_BYTE_MATCH_IN_LOOKBEHIND: \\C not allowed in lookbehind assertion. Since 2.16 -@G_REGEX_ERROR_INFINITE_LOOP: Recursive call could loop indefinitely. Since 2.16 -@G_REGEX_ERROR_MISSING_SUBPATTERN_NAME_TERMINATOR: Missing terminator in subpattern name. Since 2.16 -@G_REGEX_ERROR_DUPLICATE_SUBPATTERN_NAME: Two named subpatterns have the same name. Since 2.16 -@G_REGEX_ERROR_MALFORMED_PROPERTY: Malformed "\\P" or "\\p" sequence. Since 2.16 -@G_REGEX_ERROR_UNKNOWN_PROPERTY: Unknown property name after "\\P" or "\\p". Since 2.16 -@G_REGEX_ERROR_SUBPATTERN_NAME_TOO_LONG: Subpattern name is too long (maximum 32 characters). Since 2.16 -@G_REGEX_ERROR_TOO_MANY_SUBPATTERNS: Too many named subpatterns (maximum 10,000). Since 2.16 -@G_REGEX_ERROR_INVALID_OCTAL_VALUE: Octal value is greater than "\\377". Since 2.16 -@G_REGEX_ERROR_TOO_MANY_BRANCHES_IN_DEFINE: "DEFINE" group contains more than one branch. Since 2.16 -@G_REGEX_ERROR_DEFINE_REPETION: Repeating a "DEFINE" group is not allowed. Since 2.16 -@G_REGEX_ERROR_INCONSISTENT_NEWLINE_OPTIONS: Inconsistent newline options. Since 2.16 -@G_REGEX_ERROR_MISSING_BACK_REFERENCE: "\\g" is not followed by a braced name or an -optionally braced non-zero number. Since 2.16 -@Since: 2.14 - - - -Error domain for regular expressions. Errors in this domain will be from the #GRegexError enumeration. See #GError for information on error domains. - - -@Since: 2.14 - - - - -Flags specifying compile-time options. - - -@G_REGEX_CASELESS: Letters in the pattern match both upper and lower case -letters. This option can be changed within a pattern by a "(?i)" option -setting. -@G_REGEX_MULTILINE: By default, GRegex treats the strings as consisting -of a single line of characters (even if it actually contains newlines). -The "start of line" metacharacter ("^") matches only at the start of the -string, while the "end of line" metacharacter ("$") matches only at the -end of the string, or before a terminating newline (unless -#G_REGEX_DOLLAR_ENDONLY is set). When #G_REGEX_MULTILINE is set, -the "start of line" and "end of line" constructs match immediately following -or immediately before any newline in the string, respectively, as well -as at the very start and end. This can be changed within a pattern by a -"(?m)" option setting. -@G_REGEX_DOTALL: A dot metacharater (".") in the pattern matches all -characters, including newlines. Without it, newlines are excluded. This -option can be changed within a pattern by a ("?s") option setting. -@G_REGEX_EXTENDED: Whitespace data characters in the pattern are -totally ignored except when escaped or inside a character class. -Whitespace does not include the VT character (code 11). In addition, -characters between an unescaped "#" outside a character class and -the next newline character, inclusive, are also ignored. This can be -changed within a pattern by a "(?x)" option setting. -@G_REGEX_ANCHORED: The pattern is forced to be "anchored", that is, -it is constrained to match only at the first matching point in the string -that is being searched. This effect can also be achieved by appropriate -constructs in the pattern itself such as the "^" metacharater. -@G_REGEX_DOLLAR_ENDONLY: A dollar metacharacter ("$") in the pattern -matches only at the end of the string. Without this option, a dollar also -matches immediately before the final character if it is a newline (but -not before any other newlines). This option is ignored if -#G_REGEX_MULTILINE is set. -@G_REGEX_UNGREEDY: Inverts the "greediness" of the -quantifiers so that they are not greedy by default, but become greedy -if followed by "?". It can also be set by a "(?U)" option setting within -the pattern. -@G_REGEX_RAW: Usually strings must be valid UTF-8 strings, using this -flag they are considered as a raw sequence of bytes. -@G_REGEX_NO_AUTO_CAPTURE: Disables the use of numbered capturing -parentheses in the pattern. Any opening parenthesis that is not followed -by "?" behaves as if it were followed by "?:" but named parentheses can -still be used for capturing (and they acquire numbers in the usual way). -@G_REGEX_OPTIMIZE: Optimize the regular expression. If the pattern will -be used many times, then it may be worth the effort to optimize it to -improve the speed of matches. -@G_REGEX_DUPNAMES: Names used to identify capturing subpatterns need not -be unique. This can be helpful for certain types of pattern when it is known -that only one instance of the named subpattern can ever be matched. -@G_REGEX_NEWLINE_CR: Usually any newline character is recognized, if this -option is set, the only recognized newline character is '\r'. -@G_REGEX_NEWLINE_LF: Usually any newline character is recognized, if this -option is set, the only recognized newline character is '\n'. -@G_REGEX_NEWLINE_CRLF: Usually any newline character is recognized, if this -option is set, the only recognized newline character sequence is '\r\n'. -@Since: 2.14 - - - -Flags specifying match-time options. - - -@G_REGEX_MATCH_ANCHORED: The pattern is forced to be "anchored", that is, -it is constrained to match only at the first matching point in the string -that is being searched. This effect can also be achieved by appropriate -constructs in the pattern itself such as the "^" metacharater. -@G_REGEX_MATCH_NOTBOL: Specifies that first character of the string is -not the beginning of a line, so the circumflex metacharacter should not -match before it. Setting this without G_REGEX_MULTILINE (at compile time) -causes circumflex never to match. This option affects only the behaviour of -the circumflex metacharacter, it does not affect "\A". -@G_REGEX_MATCH_NOTEOL: Specifies that the end of the subject string is -not the end of a line, so the dollar metacharacter should not match it nor -(except in multiline mode) a newline immediately before it. Setting this -without G_REGEX_MULTILINE (at compile time) causes dollar never to match. -This option affects only the behaviour of the dollar metacharacter, it does -not affect "\Z" or "\z". -@G_REGEX_MATCH_NOTEMPTY: An empty string is not considered to be a valid -match if this option is set. If there are alternatives in the pattern, they -are tried. If all the alternatives match the empty string, the entire match -fails. For example, if the pattern "a?b?" is applied to a string not beginning -with "a" or "b", it matches the empty string at the start of the string. -With this flag set, this match is not valid, so GRegex searches further -into the string for occurrences of "a" or "b". -@G_REGEX_MATCH_PARTIAL: Turns on the partial matching feature, for more -documentation on partial matching see g_match_info_is_partial_match(). -@G_REGEX_MATCH_NEWLINE_CR: Overrides the newline definition set when creating -a new #GRegex, setting the '\r' character as line terminator. -@G_REGEX_MATCH_NEWLINE_LF: Overrides the newline definition set when creating -a new #GRegex, setting the '\n' character as line terminator. -@G_REGEX_MATCH_NEWLINE_CRLF: Overrides the newline definition set when creating -a new #GRegex, setting the '\r\n' characters as line terminator. -@G_REGEX_MATCH_NEWLINE_ANY: Overrides the newline definition set when creating -a new #GRegex, any newline character or character sequence is recognized. -@Since: 2.14 - - - -A GRegex is the "compiled" form of a regular expression pattern. This -structure is opaque and its fields cannot be accessed directly. - - -@Since: 2.14 - - - -Specifies the type of the function passed to g_regex_replace_eval(). -It is called for each occurance of the pattern in the string passed -to g_regex_replace_eval(), and it should append the replacement to -@result. - - -@match_info: the #GMatchInfo generated by the match. -Use g_match_info_get_regex() and g_match_info_get_string() if you -need the #GRegex or the matched string. -@result: a #GString containing the new string -@user_data: user data passed to g_regex_replace_eval() -@Returns: %FALSE to continue the replacement process, %TRUE to stop it -@Since: 2.14 - - - - - - - -@pattern: -@compile_options: -@match_options: -@error: -@Returns: - - - - - - - -@regex: -@Returns: - - - - - - - -@regex: - - - - - - - -@regex: -@Returns: - - - - - - - -@regex: -@Returns: - - - - - - - -@regex: -@Returns: - - - - - - - -@regex: -@name: -@Returns: - - - - - - - -@string: -@length: -@Returns: - - - - - - - -@pattern: -@string: -@compile_options: -@match_options: -@Returns: - - - - - - - -@regex: -@string: -@match_options: -@match_info: -@Returns: - - - - - - - -@regex: -@string: -@string_len: -@start_position: -@match_options: -@match_info: -@error: -@Returns: - - - - - - - -@regex: -@string: -@match_options: -@match_info: -@Returns: - - - - - - - -@regex: -@string: -@string_len: -@start_position: -@match_options: -@match_info: -@error: -@Returns: - - - - - - - -@pattern: -@string: -@compile_options: -@match_options: -@Returns: - - - - - - - -@regex: -@string: -@match_options: -@Returns: - - - - - - - -@regex: -@string: -@string_len: -@start_position: -@match_options: -@max_tokens: -@error: -@Returns: - - - - - - - -@regex: -@string: -@string_len: -@start_position: -@replacement: -@match_options: -@error: -@Returns: - - - - - - - -@regex: -@string: -@string_len: -@start_position: -@replacement: -@match_options: -@error: -@Returns: - - - - - - - -@regex: -@string: -@string_len: -@start_position: -@match_options: -@eval: -@user_data: -@error: -@Returns: - - - - - - - -@replacement: -@has_references: -@error: -@Returns: - - - - -#GMatchInfo is used to retrieve information about the regular expression match -which created it. -This structure is opaque and its fields cannot be accessed directly. - - -@Since: 2.14 - - - - - - -@match_info: -@Returns: - - - - - - - -@match_info: -@Returns: - - - - - - - -@match_info: - - - - - - - -@match_info: -@Returns: - - - - - - - -@match_info: -@error: -@Returns: - - - - - - - -@match_info: -@Returns: - - - - - - - -@match_info: -@Returns: - - - - - - - -@match_info: -@string_to_expand: -@error: -@Returns: - - - - - - - -@match_info: -@match_num: -@Returns: - - - - - - - -@match_info: -@match_num: -@start_pos: -@end_pos: -@Returns: - - - - - - - -@match_info: -@name: -@Returns: - - - - - - - -@match_info: -@name: -@start_pos: -@end_pos: -@Returns: - - - - - - - -@match_info: -@Returns: - - diff --git a/docs/reference/glib/tmpl/gurifuncs.sgml b/docs/reference/glib/tmpl/gurifuncs.sgml deleted file mode 100644 index 82c0f7b..0000000 --- a/docs/reference/glib/tmpl/gurifuncs.sgml +++ /dev/null @@ -1,106 +0,0 @@ - -URI Functions - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@uri: -@Returns: - - - - - - - -@unescaped: -@reserved_chars_allowed: -@allow_utf8: -@Returns: - - - - - - - -@escaped_string: -@illegal_characters: -@Returns: - - - - - - - -@escaped_string: -@escaped_string_end: -@illegal_characters: -@Returns: - - - - - - - -@uri_list: -@Returns: - - diff --git a/docs/reference/glib/tmpl/gvariant.sgml b/docs/reference/glib/tmpl/gvariant.sgml deleted file mode 100644 index 99c4d47..0000000 --- a/docs/reference/glib/tmpl/gvariant.sgml +++ /dev/null @@ -1,873 +0,0 @@ - -GVariant - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@value: - - - - - - - -@value: -@Returns: - - - - - - - -@value: -@Returns: - - - - - - - -@value: -@Returns: - - - - - - - -@value: -@Returns: - - - - - - - -@value: -@type: -@Returns: - - - - - - - -@value: -@Returns: - - - - - - - -@value: -@Returns: - - - - - - - -@G_VARIANT_CLASS_BOOLEAN: -@G_VARIANT_CLASS_BYTE: -@G_VARIANT_CLASS_INT16: -@G_VARIANT_CLASS_UINT16: -@G_VARIANT_CLASS_INT32: -@G_VARIANT_CLASS_UINT32: -@G_VARIANT_CLASS_INT64: -@G_VARIANT_CLASS_UINT64: -@G_VARIANT_CLASS_HANDLE: -@G_VARIANT_CLASS_DOUBLE: -@G_VARIANT_CLASS_STRING: -@G_VARIANT_CLASS_OBJECT_PATH: -@G_VARIANT_CLASS_SIGNATURE: -@G_VARIANT_CLASS_VARIANT: -@G_VARIANT_CLASS_MAYBE: -@G_VARIANT_CLASS_ARRAY: -@G_VARIANT_CLASS_TUPLE: -@G_VARIANT_CLASS_DICT_ENTRY: - - - - - - -@value: -@format_string: -@Varargs: - - - - - - - -@value: -@format_string: -@endptr: -@app: - - - - - - - -@format_string: -@Varargs: -@Returns: - - - - - - - -@format_string: -@endptr: -@app: -@Returns: - - - - - - - -@boolean: -@Returns: - - - - - - - -@byte: -@Returns: - - - - - - - -@int16: -@Returns: - - - - - - - -@uint16: -@Returns: - - - - - - - -@int32: -@Returns: - - - - - - - -@uint32: -@Returns: - - - - - - - -@int64: -@Returns: - - - - - - - -@uint64: -@Returns: - - - - - - - -@handle: -@Returns: - - - - - - - -@floating: -@Returns: - - - - - - - -@string: -@Returns: - - - - - - - -@object_path: -@Returns: - - - - - - - -@string: -@Returns: - - - - - - - -@signature: -@Returns: - - - - - - - -@string: -@Returns: - - - - - - - -@value: -@Returns: - - - - - - - -@strv: -@length: -@Returns: - - - - - - - -@value: -@Returns: - - - - - - - -@value: -@Returns: - - - - - - - -@value: -@Returns: - - - - - - - -@value: -@Returns: - - - - - - - -@value: -@Returns: - - - - - - - -@value: -@Returns: - - - - - - - -@value: -@Returns: - - - - - - - -@value: -@Returns: - - - - - - - -@value: -@Returns: - - - - - - - -@value: -@Returns: - - - - - - - -@value: -@length: -@Returns: - - - - - - - -@value: -@length: -@Returns: - - - - - - - -@value: -@Returns: - - - - - - - -@value: -@length: -@Returns: - - - - - - - -@value: -@length: -@Returns: - - - - - - - -@child_type: -@child: -@Returns: - - - - - - - -@child_type: -@children: -@n_children: -@Returns: - - - - - - - -@children: -@n_children: -@Returns: - - - - - - - -@key: -@value: -@Returns: - - - - - - - -@value: -@Returns: - - - - - - - -@value: -@Returns: - - - - - - - -@value: -@index_: -@Returns: - - - - - - - -@value: -@index_: -@format_string: -@Varargs: - - - - - - - -@value: -@n_elements: -@element_size: -@Returns: - - - - - - - -@value: -@Returns: - - - - - - - -@value: -@Returns: - - - - - - - -@value: -@data: - - - - - - - -@type: -@data: -@size: -@trusted: -@notify: -@user_data: -@Returns: - - - - - - - -@value: -@Returns: - - - - - - - -@value: -@Returns: - - - - - - - -@value: -@Returns: - - - - - - - -@value: -@Returns: - - - - - - - -@one: -@two: -@Returns: - - - - - - - -@value: -@type_annotate: -@Returns: - - - - - - - -@value: -@string: -@type_annotate: -@Returns: - - - - - - - - - - - - - -@iter: -@Returns: - - - - - - - -@iter: - - - - - - - -@iter: -@value: -@Returns: - - - - - - - -@iter: -@Returns: - - - - - - - -@value: -@Returns: - - - - - - - -@iter: -@Returns: - - - - - - - -@iter: -@format_string: -@Varargs: -@Returns: - - - - - - - -@iter: -@format_string: -@Varargs: -@Returns: - - - - - - - - - - - - - -@builder: - - - - - - - -@builder: -@Returns: - - - - - - - -@type: -@Returns: - - - - - - - -@builder: -@type: - - - - - - - -@builder: - - - - - - - -@builder: -@value: - - - - - - - -@builder: -@format_string: -@Varargs: - - - - - - - -@builder: -@Returns: - - - - - - - -@builder: -@type: - - - - - - - -@builder: - - - - - - - - - - - - - - -@type: -@text: -@limit: -@endptr: -@error: -@Returns: - - - - - - - -@format: -@app: -@Returns: - - - - - - - -@format: -@Varargs: -@Returns: - - diff --git a/docs/reference/glib/tmpl/gvarianttype.sgml b/docs/reference/glib/tmpl/gvarianttype.sgml deleted file mode 100644 index d01675b..0000000 --- a/docs/reference/glib/tmpl/gvarianttype.sgml +++ /dev/null @@ -1,455 +0,0 @@ - -GVariantType - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@type_string: - - - - - - - -@type: - - - - - - - -@type: -@Returns: - - - - - - - -@type_string: -@Returns: - - - - - - - -@type_string: -@Returns: - - - - - - - -@string: -@limit: -@endptr: -@Returns: - - - - - - - -@type: -@Returns: - - - - - - - -@type: -@Returns: - - - - - - - -@type: -@Returns: - - - - - - - -@type: -@Returns: - - - - - - - -@type: -@Returns: - - - - - - - -@type: -@Returns: - - - - - - - -@type: -@Returns: - - - - - - - -@type: -@Returns: - - - - - - - -@type: -@Returns: - - - - - - - -@type: -@Returns: - - - - - - - -@type: -@Returns: - - - - - - - -@type: -@Returns: - - - - - - - -@type1: -@type2: -@Returns: - - - - - - - -@type: -@supertype: -@Returns: - - - - - - - -@element: -@Returns: - - - - - - - -@element: -@Returns: - - - - - - - -@items: -@length: -@Returns: - - - - - - - -@key: -@value: -@Returns: - - - - - - - -@type: -@Returns: - - - - - - - -@type: -@Returns: - - - - - - - -@type: -@Returns: - - - - - - - -@type: -@Returns: - - - - - - - -@type: -@Returns: - - - - - - - -@type: -@Returns: - - diff --git a/docs/reference/glib/tmpl/hash_tables.sgml b/docs/reference/glib/tmpl/hash_tables.sgml deleted file mode 100644 index 0f9b542..0000000 --- a/docs/reference/glib/tmpl/hash_tables.sgml +++ /dev/null @@ -1,424 +0,0 @@ - -Hash Tables - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@hash_func: -@key_equal_func: -@Returns: - - - - - - - -@hash_func: -@key_equal_func: -@key_destroy_func: -@value_destroy_func: -@Returns: - - - - - - - -@key: -@Returns: - - - - - - - -@a: -@b: -@Returns: - - - - - - - -@hash_table: -@key: -@value: - - - - - - - -@hash_table: -@key: -@value: - - - - - - - -@hash_table: -@Returns: - - - - - - - -@hash_table: -@key: -@Returns: - - - - - - - -@hash_table: -@lookup_key: -@orig_key: -@value: -@Returns: - - - - - - - -@hash_table: -@func: -@user_data: - - - - - - - -@hash_table: -@predicate: -@user_data: -@Returns: - - - - - - - -@key: -@value: -@user_data: - - - - - - - -@hash_table: -@key: -@Returns: - - - - - - - -@hash_table: -@key: -@Returns: - - - - - - - -@hash_table: -@func: -@user_data: -@Returns: - - - - - - - -@hash_table: -@func: -@user_data: -@Returns: - - - - - - - -@hash_table: - - - - - - - -@hash_table: - - - - - - - -@hash_table: -@Returns: - - - - - - - -@hash_table: -@Returns: - - - - - - - -@key: -@value: -@user_data: -@Returns: - - - - - - - -@hash_table: - - - - - - - -@hash_table: - - - - - - - -@hash_table: - - - - - - - -@hash_table: -@Returns: - - - - - - - -@hash_table: - - - - - - - - - - - - - -@iter: -@hash_table: - - - - - - - -@iter: -@key: -@value: -@Returns: - - - - - - - -@iter: -@Returns: - - - - - - - -@iter: - - - - - - - -@iter: - - - - - - - -@v1: -@v2: -@Returns: - - - - - - - -@v: -@Returns: - - - - - - - -@v1: -@v2: -@Returns: - - - - - - - -@v: -@Returns: - - - - - - - -@v1: -@v2: -@Returns: - - - - - - - -@v: -@Returns: - - - - - - - -@v1: -@v2: -@Returns: - - - - - - - -@v: -@Returns: - - - - - - - -@v1: -@v2: -@Returns: - - - - - - - -@v: -@Returns: - - diff --git a/docs/reference/glib/tmpl/hooks.sgml b/docs/reference/glib/tmpl/hooks.sgml deleted file mode 100644 index f02dbf6..0000000 --- a/docs/reference/glib/tmpl/hooks.sgml +++ /dev/null @@ -1,467 +0,0 @@ - -Hook Functions - - -support for manipulating lists of hook functions - - - -The #GHookList, #GHook and their related functions provide support for -lists of hook functions. Functions can be added and removed from the lists, -and the list of hook functions can be invoked. - - - - - - - - - - - - - -The GHookList struct represents a -list of hook functions. - - -@seq_id: the next free #GHook id -@hook_size: the size of the #GHookList elements, in bytes -@is_setup: 1 if the #GHookList has been initialized -@hooks: the first #GHook element in the list -@dummy3: unused -@finalize_hook: the function to call to finalize a #GHook element. The -default behaviour is to call the hooks destroy function -@dummy: unused - - - -Defines the type of function to be called when a hook in a -list of hooks gets finalized. - - -@hook_list: a #GHookList -@hook: the hook in @hook_list that gets finalized - - - - -The GHook struct represents a single hook -function in a #GHookList. - - -@data: data which is passed to func when this hook is invoked -@next: pointer to the next hook in the list -@prev: pointer to the previous hook in the list -@ref_count: the reference count of this hook -@hook_id: the id of this hook, which is unique within its list -@flags: flags which are set for this hook. See #GHookFlagMask for - predefined flags -@func: the function to call when this hook is invoked. The possible -signatures for this function are #GHookFunc and #GHookCheckFunc -@destroy: the default finalize_hook function of a -#GHookList calls this member of the hook that is being finalized - - - -Defines the type of a hook function that can be invoked -by g_hook_list_invoke(). - - -@data: the data field of the #GHook is passed to the hook function here - - - - -Defines the type of a hook function that can be invoked -by g_hook_list_invoke_check(). - - -@data: the data field of the #GHook is passed to the hook function here -@Returns: %FALSE if the #GHook should be destroyed - - - - -Initializes a #GHookList. -This must be called before the #GHookList is used. - - -@hook_list: a #GHookList -@hook_size: the size of each element in the #GHookList, typically - sizeof (GHook) - - - - -Calls all of the #GHook functions in a #GHookList. - - -@hook_list: a #GHookList -@may_recurse: %TRUE if functions which are already running (e.g. in another - thread) can be called. If set to %FALSE, these are skipped - - - - -Calls all of the #GHook functions in a #GHookList. -Any function which returns %FALSE is removed from the #GHookList. - - -@hook_list: a #GHookList -@may_recurse: %TRUE if functions which are already running (e.g. in another -thread) can be called. If set to %FALSE, these are skipped - - - - -Calls a function on each valid #GHook. - - -@hook_list: a #GHookList -@may_recurse: %TRUE if hooks which are currently running (e.g. in another - thread) are considered valid. If set to %FALSE, these are skipped -@marshaller: the function to call for each #GHook -@marshal_data: data to pass to @marshaller - - - - -Defines the type of function used by g_hook_list_marshal(). - - -@hook: a #GHook -@marshal_data: user data - - - - -Calls a function on each valid #GHook and destroys it if the -function returns %FALSE. - - -@hook_list: a #GHookList -@may_recurse: %TRUE if hooks which are currently running (e.g. in another - thread) are considered valid. If set to %FALSE, these are skipped -@marshaller: the function to call for each #GHook -@marshal_data: data to pass to @marshaller - - - - -Defines the type of function used by g_hook_list_marshal_check(). - - -@hook: a #GHook -@marshal_data: user data -@Returns: %FALSE if @hook should be destroyed - - - - -Removes all the #GHook elements from a #GHookList. - - -@hook_list: a #GHookList - - - - -Allocates space for a #GHook and initializes it. - - -@hook_list: a #GHookList -@Returns: a new #GHook - - - - -Appends a #GHook onto the end of a #GHookList. - - -@hook_list: a #GHookList -@hook: the #GHook to add to the end of @hook_list - - - - -Prepends a #GHook on the start of a #GHookList. - - -@hook_list: a #GHookList -@hook: the #GHook to add to the start of @hook_list - - - - -Inserts a #GHook into a #GHookList, before a given #GHook. - - -@hook_list: a #GHookList -@sibling: the #GHook to insert the new #GHook before -@hook: the #GHook to insert - - - - -Inserts a #GHook into a #GHookList, sorted by the given function. - - -@hook_list: a #GHookList -@hook: the #GHook to insert -@func: the comparison function used to sort the #GHook elements - - - - -Defines the type of function used to compare #GHook elements in -g_hook_insert_sorted(). - - -@new_hook: the #GHook being inserted -@sibling: the #GHook to compare with @new_hook -@Returns: a value <= 0 if @new_hook should be before @sibling - - - - -Compares the ids of two #GHook elements, returning a negative value -if the second id is greater than the first. - - -@new_hook: a #GHook -@sibling: a #GHook to compare with @new_hook -@Returns: a value <= 0 if the id of @sibling is >= the id of @new_hook - - - - -Returns the #GHook with the given id, or %NULL if it is not found. - - -@hook_list: a #GHookList -@hook_id: a hook id -@Returns: the #GHook with the given id, or %NULL if it is not found - - - - -Finds a #GHook in a #GHookList using the given function to test for a match. - - -@hook_list: a #GHookList -@need_valids: %TRUE if #GHook elements which have been destroyed should be - skipped -@func: the function to call for each #GHook, which should return %TRUE when - the #GHook has been found -@data: the data to pass to @func -@Returns: the found #GHook or %NULL if no matching #GHook is found - - - - -Defines the type of the function passed to g_hook_find(). - - -@hook: a #GHook -@data: user data passed to g_hook_find_func() -@Returns: %TRUE if the required #GHook has been found - - - - -Finds a #GHook in a #GHookList with the given data. - - -@hook_list: a #GHookList -@need_valids: %TRUE if #GHook elements which have been destroyed should be - skipped -@data: the data to find -@Returns: the #GHook with the given @data or %NULL if no matching - #GHook is found - - - - -Finds a #GHook in a #GHookList with the given function. - - -@hook_list: a #GHookList -@need_valids: %TRUE if #GHook elements which have been destroyed should be - skipped -@func: the function to find -@Returns: the #GHook with the given @func or %NULL if no matching - #GHook is found - - - - -Finds a #GHook in a #GHookList with the given function and data. - - -@hook_list: a #GHookList -@need_valids: %TRUE if #GHook elements which have been destroyed should be - skipped -@func: the function to find -@data: the data to find -@Returns: the #GHook with the given @func and @data or %NULL if no matching - #GHook is found - - - - -Returns the first #GHook in a #GHookList which has not been destroyed. -The reference count for the #GHook is incremented, so you must call -g_hook_unref() to restore it when no longer needed. (Or call -g_hook_next_valid() if you are stepping through the #GHookList.) - - -@hook_list: a #GHookList -@may_be_in_call: %TRUE if hooks which are currently running (e.g. in another - thread) are considered valid. If set to %FALSE, these are skipped -@Returns: the first valid #GHook, or %NULL if none are valid - - - - -Returns the next #GHook in a #GHookList which has not been destroyed. -The reference count for the #GHook is incremented, so you must call -g_hook_unref() to restore it when no longer needed. (Or continue to call -g_hook_next_valid() until %NULL is returned.) - - - -@hook_list: a #GHookList -@hook: the current #GHook -@may_be_in_call: %TRUE if hooks which are currently running (e.g. in another - thread) are considered valid. If set to %FALSE, these are skipped -@Returns: the next valid #GHook, or %NULL if none are valid - - - - -Flags used internally in the #GHook implementation. - - -@G_HOOK_FLAG_ACTIVE: set if the hook has not been destroyed -@G_HOOK_FLAG_IN_CALL: set if the hook is currently being run -@G_HOOK_FLAG_MASK: A mask covering all bits reserved for - hook flags; see #G_HOOK_FLAGS_USER_SHIFT - - - -Returns the flags of a hook. - - -@hook: a #GHook - - - - -The position of the first bit which is not reserved for internal -use be the #GHook implementation, i.e. -1 << G_HOOK_FLAG_USER_SHIFT is the first bit -which can be used for application-defined flags. - - - - - - -Casts a pointer to a GHook*. - - -@hook: a pointer - - - - -Returns %TRUE if the #GHook is valid, i.e. it is in a #GHookList, it is active -and it has not been destroyed. - - -@hook: a #GHook -@Returns: %TRUE if the #GHook is valid - - - - -Returns %TRUE if the #GHook is active, which is normally %TRUE until the #GHook -is destroyed. - - -@hook: a #GHook -@Returns: %TRUE if the #GHook is active - - - - -Returns %TRUE if the #GHook function is currently executing. - - -@hook: a #GHook -@Returns: %TRUE if the #GHook function is currently executing - - - - -Returns %TRUE if the #GHook is not in a #GHookList. - - - -@hook: a #GHook -@Returns: %TRUE if the #GHook is not in a #GHookList - - - - -Increments the reference count for a #GHook. - - -@hook_list: a #GHookList -@hook: the #GHook to increment the reference count of -@Returns: the @hook that was passed in (since 2.6) - - - - -Decrements the reference count of a #GHook. -If the reference count falls to 0, the #GHook is removed from the #GHookList -and g_hook_free() is called to free it. - - -@hook_list: a #GHookList -@hook: the #GHook to unref - - - - -Calls the #GHookList @finalize_hook function if it exists, and frees the memory -allocated for the #GHook. - - -@hook_list: a #GHookList -@hook: the #GHook to free - - - - -Destroys a #GHook, given its ID. - - -@hook_list: a #GHookList -@hook_id: a hook ID -@Returns: %TRUE if the #GHook was found in the #GHookList and destroyed - - - - -Removes one #GHook from a #GHookList, marking it inactive and calling -g_hook_unref() on it. - - -@hook_list: a #GHookList -@hook: the #GHook to remove - - diff --git a/docs/reference/glib/tmpl/i18n.sgml b/docs/reference/glib/tmpl/i18n.sgml deleted file mode 100644 index 8afc7ae..0000000 --- a/docs/reference/glib/tmpl/i18n.sgml +++ /dev/null @@ -1,214 +0,0 @@ - -Internationalization - - -gettext support macros - - - -GLib doesn't force any particular localization method upon its users. -But since GLib itself is localized using the gettext() mechanism, it seems -natural to offer the de-facto standard gettext() support macros in an -easy-to-use form. - - -In order to use these macros in an application, you must include -glib/gi18n.h. For use in a library, must include -glib/gi18n-lib.h after defining -the GETTEXT_PACKAGE macro suitably for your library: - -#define GETTEXT_PACKAGE "gtk20" -#include <glib/gi18n-lib.h> - -The gettext manual covers details of how to set up message extraction -with xgettext. - - - - -The gettext manual. - - - - - - - -Like _(), but handles context in message ids. This has the advantage that -the string can be adorned with a prefix to guarantee uniqueness and provide -context to the translator. - - -One use case given in the gettext manual is GUI translation, where one could -e.g. disambiguate two "Open" menu entries as "File|Open" and "Printer|Open". -Another use case is the string "Russian" which may have to be translated -differently depending on whether it's the name of a character set or a -language. This could be solved by using "charset|Russian" and -"language|Russian". - - -See the C_() macro for a different way to mark up translatable strings -with context. - - -If you are using the Q_() macro, you need to make sure that you -pass to xgettext when extracting messages. -If you are using GNU gettext >= 0.15, you can also use - to let xgettext split the context -string off into a msgctxt line in the po file. - - -@String: the string to be translated, with a '|'-separated prefix which - must not be translated -@Returns: the translated message -@Since: 2.4 - - - - -Uses gettext to get the translation for @msgid. @msgctxt is -used as a context. This is mainly useful for short strings which -may need different translations, depending on the context in which -they are used. - -label1 = C_("Navigation", "Back"); -label2 = C_("Body part", "Back"); - - - - -If you are using the C_() macro, you need to make sure that you -pass to xgettext when extracting -messages. Note that this only works with GNU gettext >= 0.15. - - -@Context: a message context, must be a string literal -@String: a message id, must be a string literal -@Returns: the translated message -@Since: 2.16 - - - - -Only marks a string for translation. -This is useful in situations where the translated strings can't -be directly used, e.g. in string array initializers. -To get the translated string, call gettext() at runtime. - - - { - static const char *messages[] = { - N_("some very meaningful message"), - N_("and another one") - }; - const char *string; - ... - string - = index > 1 ? _("a default message") : gettext (messages[index]); - - fputs (string); - ... - } - - -@String: the string to be translated -@Since: 2.4 - - - - -Only marks a string for translation, with context. -This is useful in situations where the translated strings can't -be directly used, e.g. in string array initializers. -To get the translated string, you should call g_dpgettext2() at runtime. - -|[ - { - static const char *messages[] = { - NC_("some context", "some very meaningful message"), - NC_("some context", "and another one") - }; - const char *string; - ... - string - = index > 1 ? g_dpgettext2 (NULL, "some context", "a default message") : g_dpgettext2 (NULL, "some context", messages[index]); - - fputs (string); - ... - } -]| - - -If you are using the NC_() macro, you need to make sure that you -pass to xgettext when extracting -messages. Note that this only works with GNU gettext >= 0.15. -Intltool has support for the NC_() macro since version 0.40.1. - - -@Context: a message context, must be a string literal -@String: a message id, must be a string literal -@Since: 2.18 - - - - - - - -@domain: -@msgid: -@Returns: - - - - - - - -@domain: -@msgid: -@msgid_plural: -@n: -@Returns: - - - - - - - -@domain: -@msgctxtid: -@msgidoffset: -@Returns: - - - - - - - -@domain: -@context: -@msgid: -@Returns: - - - - - - - -@msgid: -@msgval: -@Returns: - - - - - - - -@Returns: - - diff --git a/docs/reference/glib/tmpl/iochannels.sgml b/docs/reference/glib/tmpl/iochannels.sgml deleted file mode 100644 index 4829d71..0000000 --- a/docs/reference/glib/tmpl/iochannels.sgml +++ /dev/null @@ -1,539 +0,0 @@ - -IO Channels - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@fd: -@Returns: - - - - - - - -@channel: -@Returns: - - - - - - - -@fd: -@Returns: - - - - - - - -@socket: -@Returns: - - - - - - - -@hwnd: -@Returns: - - - - - - - -@channel: - - - - - - - -@filename: -@mode: -@error: -@Returns: - - - - - - - -@channel: -@buf: -@count: -@bytes_read: -@error: -@Returns: - - - - - - - -@channel: -@thechar: -@error: -@Returns: - - - - - - - -@channel: -@str_return: -@length: -@terminator_pos: -@error: -@Returns: - - - - - - - -@channel: -@buffer: -@terminator_pos: -@error: -@Returns: - - - - - - - -@channel: -@str_return: -@length: -@error: -@Returns: - - - - - - - -@channel: -@buf: -@count: -@bytes_written: -@error: -@Returns: - - - - - - - -@channel: -@thechar: -@error: -@Returns: - - - - - - - -@channel: -@error: -@Returns: - - - - - - - -@channel: -@offset: -@type: -@error: -@Returns: - - - - - - - -@G_SEEK_CUR: -@G_SEEK_SET: -@G_SEEK_END: - - - - - - -@channel: -@flush: -@err: -@Returns: - - - - - - - -@G_IO_STATUS_ERROR: -@G_IO_STATUS_NORMAL: -@G_IO_STATUS_EOF: -@G_IO_STATUS_AGAIN: - - - - - - -@G_IO_CHANNEL_ERROR_FBIG: -@G_IO_CHANNEL_ERROR_INVAL: -@G_IO_CHANNEL_ERROR_IO: -@G_IO_CHANNEL_ERROR_ISDIR: -@G_IO_CHANNEL_ERROR_NOSPC: -@G_IO_CHANNEL_ERROR_NXIO: -@G_IO_CHANNEL_ERROR_OVERFLOW: -@G_IO_CHANNEL_ERROR_PIPE: -@G_IO_CHANNEL_ERROR_FAILED: - - - - - - - - - - - - - -@en: -@Returns: - - - - - - - -@channel: -@Returns: - - - - - - - -@channel: - - - - - - - -@channel: -@condition: -@Returns: - - - - - - - -@channel: -@condition: -@func: -@user_data: -@Returns: - - - - - - - -@channel: -@priority: -@condition: -@func: -@user_data: -@notify: -@Returns: - - - - - - - -@G_IO_IN: -@G_IO_OUT: -@G_IO_PRI: -@G_IO_ERR: -@G_IO_HUP: -@G_IO_NVAL: - - - - - - -@source: -@condition: -@data: -@Returns: - - - - - - - -@io_read: -@io_write: -@io_seek: -@io_close: -@io_create_watch: -@io_free: -@io_set_flags: -@io_get_flags: - - - - - - -@channel: -@Returns: - - - - - - - -@channel: -@size: - - - - - - - -@channel: -@Returns: - - - - - - - -@channel: -@Returns: - - - - - - - -@channel: -@flags: -@error: -@Returns: - - - - - - - -@G_IO_FLAG_APPEND: -@G_IO_FLAG_NONBLOCK: -@G_IO_FLAG_IS_READABLE: -@G_IO_FLAG_IS_WRITEABLE: -@G_IO_FLAG_IS_SEEKABLE: -@G_IO_FLAG_MASK: -@G_IO_FLAG_GET_MASK: -@G_IO_FLAG_SET_MASK: - - - - - - -@channel: -@length: -@Returns: - - - - - - - -@channel: -@line_term: -@length: - - - - - - - -@channel: -@Returns: - - - - - - - -@channel: -@buffered: - - - - - - - -@channel: -@Returns: - - - - - - - -@channel: -@encoding: -@error: -@Returns: - - - - - - - -@channel: -@Returns: - - - - - - - -@channel: -@do_close: - - - - - - - -@channel: -@buf: -@count: -@bytes_read: -@Returns: - - - - - - - -@G_IO_ERROR_NONE: -@G_IO_ERROR_AGAIN: -@G_IO_ERROR_INVAL: -@G_IO_ERROR_UNKNOWN: - - - - - - -@channel: -@buf: -@count: -@bytes_written: -@Returns: - - - - - - - -@channel: -@offset: -@type: -@Returns: - - - - - - - -@channel: - - diff --git a/docs/reference/glib/tmpl/keyfile.sgml b/docs/reference/glib/tmpl/keyfile.sgml deleted file mode 100644 index 18ce443..0000000 --- a/docs/reference/glib/tmpl/keyfile.sgml +++ /dev/null @@ -1,889 +0,0 @@ - -Key-value file parser - - -parses .ini-like config files - - - -#GKeyFile lets you parse, edit or create files containing groups of -key-value pairs, which we call key files for -lack of a better name. Several freedesktop.org specifications use -key files now, e.g the -Desktop -Entry Specification and the -Icon -Theme Specification. - - - -The syntax of key files is described in detail in the -Desktop -Entry Specification, here is a quick summary: Key files -consists of groups of key-value pairs, interspersed with comments. - - - -# this is just an example -# there can be comments before the first group - -[First Group] - -Name=Key File Example\tthis value shows\nescaping - -# localized strings are stored in multiple key-value pairs -Welcome=Hello -Welcome[de]=Hallo -Welcome[fr_FR]=Bonjour -Welcome[it]=Ciao -Welcome[be@latin]=Hello - -[Another Group] - -Numbers=2;20;-200;0 - -Booleans=true;false;true;true - - - - -Lines beginning with a '#' and blank lines are considered comments. - - - -Groups are started by a header line containing the group name enclosed -in '[' and ']', and ended implicitly by the start of the next group or -the end of the file. Each key-value pair must be contained in a group. - - - -Key-value pairs generally have the form key=value, -with the exception of localized strings, which have the form -key[locale]=value, with a locale identifier of the form -lang_COUNTRY@MODIFIER where COUNTRY and -MODIFIER are optional. Space before and after the -'=' character are ignored. Newline, tab, carriage return and backslash -characters in value are escaped as \n, \t, \r, and \\, respectively. -To preserve leading spaces in values, these can also be escaped as \s. - - - -Key files can store strings (possibly with localized variants), integers, -booleans and lists of these. Lists are separated by a separator character, -typically ';' or ','. To use the list separator character in a value in -a list, it has to be escaped by prefixing it with a backslash. - - - -This syntax is obviously inspired by the .ini -files commonly met on Windows, but there are some important differences: - - -.ini files use the ';' character to begin comments, - key files use the '#' character. - - -Key files do not allow for ungrouped keys meaning only comments can precede the first group. - - -Key files are always encoded in UTF-8. - - -Key and Group names are case-sensitive, for example a group called -[GROUP] is a different group from [group]. - - -.ini files don't have a strongly typed boolean entry type, they only -have GetProfileInt. In GKeyFile only -true and false (in lower case) are allowed. - - - - - -Note that in contrast to the -Desktop -Entry Specification, groups in key files may contain the same -key multiple times; the last entry wins. Key files may also contain -multiple groups with the same name; they are merged together. -Another difference is that keys and group names in key files are not -restricted to ASCII characters. - - - - - - - - - - - - -The GKeyFile struct contains only private fields -and should not be used directly. - - - - - -Error domain for key file parsing. Errors in this domain will -be from the #GKeyFileError enumeration. See #GError for information on -error domains. - - - - - - -Error codes returned by key file parsing. - - -@G_KEY_FILE_ERROR_UNKNOWN_ENCODING: the text being parsed was in an unknown encoding -@G_KEY_FILE_ERROR_PARSE: document was ill-formed -@G_KEY_FILE_ERROR_NOT_FOUND: the file was not found -@G_KEY_FILE_ERROR_KEY_NOT_FOUND: a requested key was not found -@G_KEY_FILE_ERROR_GROUP_NOT_FOUND: a requested group was not found -@G_KEY_FILE_ERROR_INVALID_VALUE: a value could not be parsed - - - -Flags which influence the parsing. - - -@G_KEY_FILE_NONE: No flags, default behaviour -@G_KEY_FILE_KEEP_COMMENTS: Use this flag if you plan to write the (possibly modified) - contents of the key file back to a file; otherwise all comments will be lost when - the key file is written back. -@G_KEY_FILE_KEEP_TRANSLATIONS: Use this flag if you plan to write the (possibly modified) - contents of the key file back to a file; otherwise only the translations for the current - language will be written back. - - - - - - -@Returns: - - - - - - - -@key_file: - - - - - - - -@key_file: -@separator: - - - - - - - -@key_file: -@file: -@flags: -@error: -@Returns: - - - - - - - -@key_file: -@data: -@length: -@flags: -@error: -@Returns: - - - - - - - -@key_file: -@file: -@full_path: -@flags: -@error: -@Returns: - - - - - - - -@key_file: -@file: -@search_dirs: -@full_path: -@flags: -@error: -@Returns: - - - - - - - -@key_file: -@length: -@error: -@Returns: - - - - - - - -@key_file: -@Returns: - - - - - - - -@key_file: -@length: -@Returns: - - - - - - - -@key_file: -@group_name: -@length: -@error: -@Returns: - - - - - - - -@key_file: -@group_name: -@Returns: - - - - - - - -@key_file: -@group_name: -@key: -@error: -@Returns: - - - - - - - -@key_file: -@group_name: -@key: -@error: -@Returns: - - - - - - - -@key_file: -@group_name: -@key: -@error: -@Returns: - - - - - - - -@key_file: -@group_name: -@key: -@locale: -@error: -@Returns: - - - - - - - -@key_file: -@group_name: -@key: -@error: -@Returns: - - - - - - - -@key_file: -@group_name: -@key: -@error: -@Returns: - - - - - - - -@key_file: -@group_name: -@key: -@error: -@Returns: - - - - - - - -@key_file: -@group_name: -@key: -@length: -@error: -@Returns: - - - - - - - -@key_file: -@group_name: -@key: -@locale: -@length: -@error: -@Returns: - - - - - - - -@key_file: -@group_name: -@key: -@length: -@error: -@Returns: - - - - - - - -@key_file: -@group_name: -@key: -@length: -@error: -@Returns: - - - - - - - -@key_file: -@group_name: -@key: -@length: -@error: -@Returns: - - - - - - - -@key_file: -@group_name: -@key: -@error: -@Returns: - - - - - - - -@key_file: -@group_name: -@key: -@value: - - - - - - - -@key_file: -@group_name: -@key: -@string: - - - - - - - -@key_file: -@group_name: -@key: -@locale: -@string: - - - - - - - -@key_file: -@group_name: -@key: -@value: - - - - - - - -@key_file: -@group_name: -@key: -@value: - - - - - - - -@key_file: -@group_name: -@key: -@value: - - - - - - - -@key_file: -@group_name: -@key: -@list: -@length: - - - - - - - -@key_file: -@group_name: -@key: -@locale: -@list: -@length: - - - - - - - -@key_file: -@group_name: -@key: -@list: -@length: - - - - - - - -@key_file: -@group_name: -@key: -@list: -@length: - - - - - - - -@key_file: -@group_name: -@key: -@list: -@length: - - - - - - - -@key_file: -@group_name: -@key: -@comment: -@error: -@Returns: - - - - - - - -@key_file: -@group_name: -@error: -@Returns: - - - - - - - -@key_file: -@group_name: -@key: -@error: -@Returns: - - - - - - - -@key_file: -@group_name: -@key: -@error: -@Returns: - - - - -The name of the main group of a desktop entry file, as defined in the -Desktop -Entry Specification. Consult the specification for more -details about the meanings of the keys below. - - -@Since: 2.14 - - - - -A key under G_KEY_FILE_DESKTOP_GROUP -whose value is a string giving the type of the desktop entry. Usually -G_KEY_FILE_DESKTOP_TYPE_APPLICATION, -G_KEY_FILE_DESKTOP_TYPE_LINK, or -G_KEY_FILE_DESKTOP_TYPE_DIRECTORY. - - -@Since: 2.14 - - - - -A key under G_KEY_FILE_DESKTOP_GROUP -whose value is a string giving the version of the Desktop -Entry Specification used for the desktop entry file. - - -@Since: 2.14 - - - - -A key under G_KEY_FILE_DESKTOP_GROUP -whose value is a localized string giving the specific name of the -desktop entry. - - -@Since: 2.14 - - - - -A key under G_KEY_FILE_DESKTOP_GROUP -whose value is a localized string giving the generic name of the -desktop entry. - - -@Since: 2.14 - - - - -A key under G_KEY_FILE_DESKTOP_GROUP -whose value is a boolean stating whether the desktop entry should be -shown in menus. - - -@Since: 2.14 - - - - -A key under G_KEY_FILE_DESKTOP_GROUP -whose value is a localized string giving the tooltip for the desktop -entry. - - -@Since: 2.14 - - - - -A key under G_KEY_FILE_DESKTOP_GROUP -whose value is a localized string giving the name of the icon to be -displayed for the desktop entry. - - -@Since: 2.14 - - - - -A key under G_KEY_FILE_DESKTOP_GROUP -whose value is a boolean stating whether the desktop entry has been -deleted by the user. - - -@Since: 2.14 - - - - -A key under G_KEY_FILE_DESKTOP_GROUP -whose value is a list of strings identifying the environments that -should display the desktop entry. - - -@Since: 2.14 - - - - -A key under G_KEY_FILE_DESKTOP_GROUP -whose value is a list of strings identifying the environments that -should not display the desktop entry. - - -@Since: 2.14 - - - - -A key under G_KEY_FILE_DESKTOP_GROUP -whose value is a string giving the file name of a binary on disk -used to determine if the program is actually installed. It is only -valid for desktop entries with the Application -type. - - -@Since: 2.14 - - - - -A key under G_KEY_FILE_DESKTOP_GROUP -whose value is a string giving the command line to execute. It is only -valid for desktop entries with the Application -type. - - -@Since: 2.14 - - - - -A key under G_KEY_FILE_DESKTOP_GROUP -whose value is a string containing the working directory to run the -program in. It is only valid for desktop entries with the -Application type. - - -@Since: 2.14 - - - - -A key under G_KEY_FILE_DESKTOP_GROUP -whose value is a boolean stating whether the program should be -run in a terminal window. It is only valid for desktop entries with -the Application type. - - -@Since: 2.14 - - - - -A key under G_KEY_FILE_DESKTOP_GROUP -whose value is a list of strings giving the MIME types supported -by this desktop entry. - - -@Since: 2.14 - - - - -A key under G_KEY_FILE_DESKTOP_GROUP -whose value is a list of strings giving the categories in which the -desktop entry should be shown in a menu. - - -@Since: 2.14 - - - - -A key under G_KEY_FILE_DESKTOP_GROUP -whose value is a boolean stating whether the application supports -the Startup -Notification Protocol Specification. - - -@Since: 2.14 - - - - -A key under G_KEY_FILE_DESKTOP_GROUP -whose value is string identifying the WM class or name hint of a -window that the application will create, which can be used to emulate -Startup Notification with older applications. - - -@Since: 2.14 - - - - -A key under G_KEY_FILE_DESKTOP_GROUP -whose value is a string giving the URL to access. It is only valid -for desktop entries with the Link type. - - -@Since: 2.14 - - - - -The value of the G_KEY_FILE_DESKTOP_KEY_TYPE -key for desktop entries representing applications. - - -@Since: 2.14 - - - - -The value of the G_KEY_FILE_DESKTOP_KEY_TYPE -key for desktop entries representing links to documents. - - -@Since: 2.14 - - - - -The value of the G_KEY_FILE_DESKTOP_KEY_TYPE -key for desktop entries representing directories. - - -@Since: 2.14 - - diff --git a/docs/reference/glib/tmpl/limits.sgml b/docs/reference/glib/tmpl/limits.sgml deleted file mode 100644 index c0fe16c..0000000 --- a/docs/reference/glib/tmpl/limits.sgml +++ /dev/null @@ -1,250 +0,0 @@ - -Limits of Basic Types - - -portable method of determining the limits of the standard types - - - -These macros provide a portable method to determine the limits of some of -the standard integer and floating point types. - - - - - - - - - - - - -The minimum value which can be held in a #gint. - - - - - - -The maximum value which can be held in a #gint. - - - - - - -The maximum value which can be held in a #guint. - - - - - - -The minimum value which can be held in a #gshort. - - - - - - -The maximum value which can be held in a #gshort. - - - - - - -The maximum value which can be held in a #gushort. - - - - - - -The minimum value which can be held in a #glong. - - - - - - -The maximum value which can be held in a #glong. - - - - - - -The maximum value which can be held in a #gulong. - - - - - - -The minimum value which can be held in a #gint8. - - -@Since: 2.4 - - - - -The maximum value which can be held in a #gint8. - - -@Since: 2.4 - - - - -The maximum value which can be held in a #guint8. - - -@Since: 2.4 - - - - -The minimum value which can be held in a #gint16. - - -@Since: 2.4 - - - - -The maximum value which can be held in a #gint16. - - -@Since: 2.4 - - - - -The maximum value which can be held in a #guint16. - - -@Since: 2.4 - - - - -The minimum value which can be held in a #gint32. - - -@Since: 2.4 - - - - -The maximum value which can be held in a #gint32. - - -@Since: 2.4 - - - - -The maximum value which can be held in a #guint32. - - -@Since: 2.4 - - - - -The minimum value which can be held in a #gint64. - - - - - - -The maximum value which can be held in a #gint64. - - - - - - -The maximum value which can be held in a #guint64. - - - - - - -The maximum value which can be held in a #gsize. - - -@Since: 2.4 - - - - -The minimum value which can be held in a #gssize. - - -@Since: 2.14 - - - - -The maximum value which can be held in a #gssize. - - -@Since: 2.14 - - - - -The minimum value which can be held in a #goffset. - - - - - - -The maximum value which can be held in a #goffset. - - - - - - -The minimum positive value which can be held in a #gfloat. - - -If you are interested in the smallest value which can be held in a #gfloat, -use -G_MAX_FLOAT. - - - - - - -The maximum value which can be held in a #gfloat. - - - - - - -The minimum positive value which can be held in a #gdouble. - - -If you are interested in the smallest value which can be held in a #gdouble, -use -G_MAXDOUBLE. - - - - - - -The maximum value which can be held in a #gdouble. - - - - diff --git a/docs/reference/glib/tmpl/linked_lists_double.sgml b/docs/reference/glib/tmpl/linked_lists_double.sgml deleted file mode 100644 index 888783c..0000000 --- a/docs/reference/glib/tmpl/linked_lists_double.sgml +++ /dev/null @@ -1,384 +0,0 @@ - -Doubly-Linked Lists - - - - - - - - - - - - - - - - - - - - - - - - -@data: -@next: -@prev: - - - - - - -@list: -@data: -@Returns: - - - - - - - -@list: -@data: -@Returns: - - - - - - - -@list: -@data: -@position: -@Returns: - - - - - - - -@list: -@sibling: -@data: -@Returns: - - - - - - - -@list: -@data: -@func: -@Returns: - - - - - - - -@list: -@data: -@Returns: - - - - - - - -@list: -@llink: -@Returns: - - - - - - - -@list: -@link_: -@Returns: - - - - - - - -@list: -@data: -@Returns: - - - - - - - -@list: - - - - - - - -@Returns: - - - - - - - -@list: - - - - - - - - - - - - - - -@list: -@Returns: - - - - - - - -@list: -@Returns: - - - - - - - -@list: -@Returns: - - - - - - - -@list: -@compare_func: -@Returns: - - - - - - - -@a: -@b: -@Returns: - - - - - - - -@list: -@data: -@func: -@user_data: -@Returns: - - - - - - - -@list: -@compare_func: -@user_data: -@Returns: - - - - - - - -@a: -@b: -@user_data: -@Returns: - - - - - - - -@list1: -@list2: -@Returns: - - - - - - - -@list: -@func: -@user_data: - - - - - - - -@data: -@user_data: - - - - - - - -@list: -@Returns: - - - - - - - -@list: -@Returns: - - - - - - - -@list: - - - - - - - -@list: - - - - - - - -@list: -@n: -@Returns: - - - - - - - -@list: -@n: -@Returns: - - - - - - - -@list: -@n: -@Returns: - - - - - - - -@list: -@data: -@Returns: - - - - - - - -@list: -@data: -@func: -@Returns: - - - - - - - -@list: -@llink: -@Returns: - - - - - - - -@list: -@data: -@Returns: - - - - - - - -@allocator: - - - - - - - - - diff --git a/docs/reference/glib/tmpl/linked_lists_single.sgml b/docs/reference/glib/tmpl/linked_lists_single.sgml deleted file mode 100644 index a8a3edd..0000000 --- a/docs/reference/glib/tmpl/linked_lists_single.sgml +++ /dev/null @@ -1,326 +0,0 @@ - -Singly-Linked Lists - - - - - - - - - - - - - - - - - - - - - - - - -@data: -@next: - - - - - - -@Returns: - - - - - - - -@list: -@data: -@Returns: - - - - - - - -@list: -@data: -@Returns: - - - - - - - -@list: -@data: -@position: -@Returns: - - - - - - - -@slist: -@sibling: -@data: -@Returns: - - - - - - - -@list: -@data: -@func: -@Returns: - - - - - - - -@list: -@data: -@Returns: - - - - - - - -@list: -@link_: -@Returns: - - - - - - - -@list: -@link_: -@Returns: - - - - - - - -@list: -@data: -@Returns: - - - - - - - -@list: - - - - - - - -@list: - - - - - - - - - - - - - - -@list: -@Returns: - - - - - - - -@list: -@Returns: - - - - - - - -@list: -@Returns: - - - - - - - -@list: -@data: -@func: -@user_data: -@Returns: - - - - - - - -@list: -@compare_func: -@Returns: - - - - - - - -@list: -@compare_func: -@user_data: -@Returns: - - - - - - - -@list1: -@list2: -@Returns: - - - - - - - -@list: -@func: -@user_data: - - - - - - - -@list: -@Returns: - - - - - - - -@slist: - - - - - - - -@list: -@n: -@Returns: - - - - - - - -@list: -@n: -@Returns: - - - - - - - -@list: -@data: -@Returns: - - - - - - - -@list: -@data: -@func: -@Returns: - - - - - - - -@list: -@llink: -@Returns: - - - - - - - -@list: -@data: -@Returns: - - - - - - - -@dummy: - - - - - - - - - diff --git a/docs/reference/glib/tmpl/macros.sgml b/docs/reference/glib/tmpl/macros.sgml deleted file mode 100644 index efa2779..0000000 --- a/docs/reference/glib/tmpl/macros.sgml +++ /dev/null @@ -1,228 +0,0 @@ - -Standard Macros - - -commonly-used macros. - - - -These macros provide a few commonly-used features. - - - - - - - - - - - - -This macro is defined only on Windows. So you can bracket -Windows-specific code in "#ifdef G_OS_WIN32". - - - - - - -This macro is defined only on BeOS. So you can bracket -BeOS-specific code in "#ifdef G_OS_BEOS". - - - - - - -This macro is defined only on UNIX. So you can bracket -UNIX-specific code in "#ifdef G_OS_UNIX". - - - - - - -The directory separator character. -This is '/' on UNIX machines and '\' under Windows. - - - - - - -The directory separator as a string. -This is "/" on UNIX machines and "\" under Windows. - - - - - - -Checks whether a character is a directory -separator. It returns %TRUE for '/' on UNIX -machines and for '\' or '/' under Windows. - - -@c: a character -@Since: 2.6 - - - - -The search path separator character. -This is ':' on UNIX machines and ';' under Windows. - - - - - - -The search path separator as a string. -This is ":" on UNIX machines and ";" under Windows. - - - - - - -Defines the %TRUE value for the #gboolean type. - - - - - - -Defines the %FALSE value for the #gboolean type. - - - - - - -Defines the standard %NULL pointer. - - - - - - -Calculates the minimum of @a and @b. - - -@a: a numeric value. -@b: a numeric value. -@Returns: the minimum of @a and @b. - - - - -Calculates the maximum of @a and @b. - - -@a: a numeric value. -@b: a numeric value. -@Returns: the maximum of @a and @b. - - - - -Calculates the absolute value of @a. -The absolute value is simply the number with any negative sign taken away. - - -For example, - - -ABS(-10) is 10. - - -ABS(10) is also 10. - - - - -@a: a numeric value. -@Returns: the absolute value of @a. - - - - -Ensures that @x is between the limits set by @low and @high. If @low is -greater than @high the result is undefined. - - -For example, - - -CLAMP(5, 10, 15) is 10. - - -CLAMP(15, 5, 10) is 10. - - -CLAMP(20, 15, 25) is 20. - - - - -@x: the value to clamp. -@low: the minimum value allowed. -@high: the maximum value allowed. -@Returns: the value of @x clamped to the range between @low and @high. - - - - -Returns a member of a structure at a given offset, using the given type. - - -@member_type: the type of the struct field. -@struct_p: a pointer to a struct. -@struct_offset: the offset of the field from the start of the struct, in bytes. -@Returns: the struct member. - - - - -Returns an untyped pointer to a given offset of a struct. - - -@struct_p: a pointer to a struct. -@struct_offset: the offset from the start of the struct, in bytes. -@Returns: an untyped pointer to @struct_p plus @struct_offset bytes. - - - - -Returns the offset, in bytes, of a member of a struct. - - -@struct_type: a structure type, e.g. GtkWidget. -@member: a field in the structure, e.g. window. -@Returns: the offset of @member from the start of @struct_type. - - - - -Indicates the number of bytes to which memory will be aligned on the -current platform. - - - - - - -If %G_DISABLE_CONST_RETURNS is defined, this macro expands to nothing. -By default, the macro expands to const. The macro -should be used in place of const for functions that -return a value that should not be modified. The purpose of this macro is -to allow us to turn on const for returned constant -strings by default, while allowing programmers who find that annoying to -turn it off. This macro should only be used for return values and for -out parameters, it doesn't make sense for -in parameters. - - - - diff --git a/docs/reference/glib/tmpl/macros_misc.sgml b/docs/reference/glib/tmpl/macros_misc.sgml deleted file mode 100644 index 29ad670..0000000 --- a/docs/reference/glib/tmpl/macros_misc.sgml +++ /dev/null @@ -1,656 +0,0 @@ - -Miscellaneous Macros - - -specialized macros which are not used often - - - -These macros provide more specialized features which are not needed so often -by application programmers. - - - - - - - - - - - - -This macro is used to export function prototypes so they can be linked -with an external version when no inlining is performed. The file which -implements the functions should define %G_IMPLEMENTS_INLINES -before including the headers which contain %G_INLINE_FUNC declarations. -Since inlining is very compiler-dependent using these macros correctly -is very difficult. Their use is strongly discouraged. - - -This macro is often mistaken for a replacement for the inline keyword; -inline is already declared in a portable manner in the glib headers -and can be used normally. - - - - - - -Used within multi-statement macros so that they can be used in places where -only one statement is expected by the compiler. - - - - - - -Used within multi-statement macros so that they can be used in places where -only one statement is expected by the compiler. - - - - - - -Used (along with #G_END_DECLS) to bracket header files. If the -compiler in use is a C++ compiler, adds extern "C" -around the header. - - - - - - -Used (along with #G_BEGIN_DECLS) to bracket header files. If the -compiler in use is a C++ compiler, adds extern "C" -around the header. - - - - - - -Determines the number of elements in an array. The array must be -declared so the compiler knows its size at compile-time; this -macro will not work on an array allocated on the heap, only static -arrays or arrays on the stack. - - -@arr: the array - - - - -Portable way to copy va_list variables. - - -In order to use this function, you must include string.h -yourself, because this macro may use memmove() and GLib -does not include string.h for you. - - -@ap1: the va_list variable to place a copy of @ap2 in. -@ap2: a va_list. - - - - -Accepts a macro or a string and converts it into a string after -preprocessor argument expansion. - - -@macro_or_string: a macro or a string. - - - - -Yields a new preprocessor pasted identifier 'identifier1identifier2' -from its expanded arguments 'identifier1' and 'identifier2'. - - -@identifier1: an identifier -@identifier2: an identifier -@Since: 2.20 - - - - - - - -@identifier1: -@identifier2: - - - - -The G_STATIC_ASSERT macro lets the programmer check a condition at compile time, -the condition needs to be compile time computable. -The macro can be used in any place where a typedef is valid. -The macro should only be used once per source code line. - - -@expr: a constant expression. -@Since: 2.20 - - - - -Expands to __extension__ when gcc is -used as the compiler. -This simply tells gcc not to warn about the following non-standard code -when compiling with the option. - - - - - - -Expands to the GNU C const function attribute if the compiler is -gcc. Declaring a function as const enables better optimization of calls -to the function. A const function doesn't examine any values except its parameters, and has no -effects except its return value. See the GNU C documentation for details. - - -A function that has pointer arguments and examines the data pointed to -must not be declared const. Likewise, a function that -calls a non-const function usually must not be const. It doesn't make sense -for a const function to return void. - - - - - - -Expands to the GNU C pure function attribute if the compiler is -gcc. Declaring a function as pure enables better optimization of -calls to the function. A pure function has no effects except its return value and the -return value depends only on the parameters and/or global variables. -See the GNU C documentation for details. - - - - - - -Expands to the GNU C malloc function attribute if the -compiler is gcc. Declaring a function as malloc enables -better optimization of the function. A function can have the malloc attribute -if it returns a pointer which is guaranteed to not alias with any other pointer -when the function returns (in practice, this means newly allocated memory). -See the GNU C documentation for details. - - -@Since: 2.6 - - - - -Expands to the GNU C alloc_size function attribute if the -compiler is a new enough gcc. This attribute tells the -compiler that the function returns a pointer to memory of a size that is -specified by the @xth function parameter. -See the GNU C documentation for details. - - -@x: the index of the argument specifying the allocation size -@Since: 2.18 - - - - -Expands to the GNU C alloc_size function attribute if the -compiler is a new enough gcc. This attribute tells the -compiler that the function returns a pointer to memory of a size that is -specified by the product of two function parameters. -See the GNU C documentation for details. - - -@x: the index of the argument specifying one factor of the allocation size -@y: the index of the argument specifying the second factor of the allocation size -@Since: 2.18 - - - - -Expands to the GNU C deprecated attribute if the compiler -is gcc. -It can be used to mark typedefs, variables and functions as deprecated. -When called with the option, the compiler will -generate warnings when deprecated interfaces are used. -See the GNU C documentation for details. - - -@Since: 2.2 - - - - -Expands to the GNU C noreturn function attribute if the -compiler is gcc. It is used for declaring functions which never return. -It enables optimization of the function, and avoids possible compiler -warnings. See the GNU C documentation for details. - - - - - - -Expands to the GNU C unused function attribute if the compiler is -gcc. It is used for declaring functions which may never be used. -It avoids possible compiler warnings. See the GNU C documentation for details. - - - - - - -Expands to the GNU C format function attribute if the compiler is -gcc. This is used for declaring functions which take a variable number of -arguments, with the same syntax as printf(). -It allows the compiler to type-check the arguments passed to the function. -See the GNU C documentation for details. - - -gint g_snprintf (gchar *string, - gulong n, - gchar const *format, - ...) G_GNUC_PRINTF (3, 4); - - -@format_idx: the index of the argument corresponding to the format string. -(The arguments are numbered from 1). -@arg_idx: the index of the first of the format arguments. - - - - -Expands to the GNU C format function attribute if the compiler is gcc. -This is used for declaring functions which take a variable number of -arguments, with the same syntax as scanf(). -It allows the compiler to type-check the arguments passed to the function. -See the GNU C documentation for details. - - -@format_idx: the index of the argument corresponding to the format string. -(The arguments are numbered from 1). -@arg_idx: the index of the first of the format arguments. - - - - -Expands to the GNU C format_arg function attribute if the compiler is gcc. -This function attribute specifies that a function takes a format -string for a printf(), scanf(), -strftime() or strfmon() style -function and modifies it, so that the result can be passed to a -printf(), scanf(), -strftime() or strfmon() style -function (with the remaining arguments to the format function the same as -they would have been for the unmodified string). -See the GNU C documentation for details. - - -gchar *g_dgettext (gchar *domain_name, gchar *msgid) G_GNUC_FORMAT (2); - - -@arg_idx: the index of the argument. - - - - -Expands to the GNU C sentinel function attribute if the -compiler is gcc, or "" if it isn't. This function attribute -only applies to variadic functions and instructs the compiler to check that -the argument list is terminated with an explicit %NULL. -See the GNU C documentation for details. - - -Since: 2.8 - - - - - -Expands to the GNU C warn_unused_result function attribute -if the compiler is gcc, or "" if it isn't. This function -attribute makes the compiler emit a warning if the result of a function call -is ignored. See the GNU C documentation for details. - - -@Since: 2.10 - - - - -Expands to "" on all modern compilers, and to __FUNCTION__ -on gcc version 2.x. Don't use it. - - -@Deprecated: 2.16: Use #G_STRFUNC instead. - - - - -Expands to "" on all modern compilers, and to -__PRETTY_FUNCTION__ on gcc version 2.x. -Don't use it. - - -@Deprecated: 2.16: Use #G_STRFUNC instead. - - - - -Expands to the GNU C no_instrument_function function -attribute if the compiler is gcc. Functions with this -attribute will not be -instrumented for profiling, when the compiler is called with the - option. -See the GNU C documentation for details. - - - - - - - - - - - - - -This attribute can be used for marking library functions as being used -internally to the library only, which may allow the compiler to handle -function calls more efficiently. -Note that static functions do not need to be marked as internal in this way. -See the GNU C documentation for details. - - -When using a compiler that supports the GNU C hidden visibility attribute, -this macro expands to __attribute__((visibility("hidden"))). -When using the Sun Studio compiler, it expands to __hidden. - - -Note that for portability, the attribute should be placed before the -function declaration. While GCC allows the macro after the declaration, -Sun Studio does not. - - -G_GNUC_INTERNAL -void _g_log_fallback_handler (const gchar *log_domain, - GLogLevelFlags log_level, - const gchar *message, - gpointer unused_data); - - -Since: 2.6 - - - - - -Expands to the GNU C may_alias type attribute -if the compiler is gcc. Types with this attribute -will not be subjected to type-based alias analysis, but are assumed -to alias with any other type, just like char. -See the GNU C documentation for details. - - -Since: 2.14 - - - - - -Hints the compiler that the expression is likely to evaluate to a true -value. The compiler may use this information for optimizations. - - -if (G_LIKELY (random () != 1)) - g_print ("not one"); - - -@expr: the expression -@Returns: the value of @expr -@Since: 2.2 - - - - -Hints the compiler that the expression is unlikely to evaluate to a true -value. The compiler may use this information for optimizations. - - -if (G_UNLIKELY (random () == 1)) - g_print ("a random one"); - - -@expr: the expression -@Returns: the value of @expr -@Since: 2.2 - - - - -Expands to a string identifying the current code position. - - - - - - -Expands to a string identifying the current function. - - -@Since: 2.4 - - - - -The platform dependent length modifier for conversion specifiers for scanning -and printing values of type #gint16 or #guint16. It is a string literal, -but doesn't include the percent-sign, such that you can add precision and -length modifiers between percent-sign and conversion specifier and append a -conversion specifier. - - - -The following example prints "0x7b"; - - -gint16 value = 123; -g_print ("%#" G_GINT16_MODIFIER "x", value); - - - - -@Since: 2.4 - - - - -This is the platform dependent conversion specifier for scanning and -printing values of type #gint16. It is a string literal, but doesn't -include the percent-sign, such that you can add precision and length -modifiers between percent-sign and conversion specifier. - - - - - -gint16 in; -gint32 out; -sscanf ("42", "%" G_GINT16_FORMAT, &in) -out = in * 1000; -g_print ("%" G_GINT32_FORMAT, out); - - - - - - - - -This is the platform dependent conversion specifier for scanning and -printing values of type #guint16. See also #G_GINT16_FORMAT. - - - - - - -The platform dependent length modifier for conversion specifiers for scanning -and printing values of type #gint32 or #guint32. It is a string literal, -See also #G_GINT16_MODIFIER. - - -@Since: 2.4 - - - - -This is the platform dependent conversion specifier for scanning and -printing values of type #gint32. See also #G_GINT16_FORMAT. - - - - - - -This is the platform dependent conversion specifier for scanning and -printing values of type #guint32. See also #G_GINT16_FORMAT. - - - - - - -The platform dependent length modifier for conversion specifiers for scanning -and printing values of type #gint64 or #guint64. It is a string literal. - - - - -Some platforms do not support printing 64 bit integers, -even though the types are supported. On such platforms #G_GINT64_MODIFIER -is not defined. - - - -@Since: 2.4 - - - - -This is the platform dependent conversion specifier for scanning and -printing values of type #gint64. See also #G_GINT16_FORMAT. - - - - -Some platforms do not support scanning and printing 64 bit integers, -even though the types are supported. On such platforms #G_GINT64_FORMAT -is not defined. Note that scanf() may not support 64 bit integers, even -if #G_GINT64_FORMAT is defined. Due to its weak error handling, scanf() -is not recommended for parsing anyway; consider using g_ascii_strtoull() -instead. - - - - - - - -This is the platform dependent conversion specifier for scanning and -printing values of type #guint64. See also #G_GINT16_FORMAT. - - - - -Some platforms do not support scanning and printing 64 bit integers, -even though the types are supported. On such platforms #G_GUINT64_FORMAT -is not defined. Note that scanf() may not support 64 bit integers, even -if #G_GINT64_FORMAT is defined. Due to its weak error handling, scanf() is not -recommended for parsing anyway; consider using g_strtoull() instead. - - - - - - - -The platform dependent length modifier for conversion specifiers for scanning -and printing values of type #gsize or #gssize. It is a string literal, - - -@Since: 2.6 - - - - -This is the platform dependent conversion specifier for scanning and -printing values of type #gsize. See also #G_GINT16_FORMAT. - - -@Since: 2.6 - - - - -This is the platform dependent conversion specifier for scanning and -printing values of type #gssize. See also #G_GINT16_FORMAT. - - -@Since: 2.6 - - - - -The platform dependent length modifier for conversion specifiers for scanning -and printing values of type #goffset. It is a string literal. See also -#G_GINT64_MODIFIER. - - -@Since: 2.20 - - - - -This is the platform dependent conversion specifier for scanning and -printing values of type #goffset. See also #G_GINT64_FORMAT. - - -Since: 2.20 - - - - - -The platform dependent length modifier for conversion specifiers for scanning -and printing values of type #gintptr or #guintptr. It is a string literal. - - -@Since: 2.22 - - - - -This is the platform dependent conversion specifier for scanning and -printing values of type #gintptr. - - -@Since: 2.22 - - - - -This is the platform dependent conversion specifier for scanning and -printing values of type #guintptr. - - -@Since: 2.22 - - diff --git a/docs/reference/glib/tmpl/main.sgml b/docs/reference/glib/tmpl/main.sgml deleted file mode 100644 index 39a3b46..0000000 --- a/docs/reference/glib/tmpl/main.sgml +++ /dev/null @@ -1,1061 +0,0 @@ - -The Main Event Loop - - -manages all available sources of events - - - - The main event loop manages all the available sources of events for - GLib and GTK+ applications. These events can come from any number of - different types of sources such as file descriptors (plain files, - pipes or sockets) and timeouts. New types of event sources can also - be added using g_source_attach(). - - - To allow multiple independent sets of sources to be handled in - different threads, each source is associated with a #GMainContext. - A #GMainContext can only be running in a single thread, but - sources can be added to it and removed from it from other threads. - - - Each event source is assigned a priority. The default priority, - #G_PRIORITY_DEFAULT, is 0. Values less than 0 denote higher - priorities. Values greater than 0 denote lower priorities. Events - from high priority sources are always processed before events from - lower priority sources. - - - Idle functions can also be added, and assigned a priority. These will - be run whenever no events with a higher priority are ready to be - processed. - - - The #GMainLoop data type represents a main event loop. A #GMainLoop - is created with g_main_loop_new(). After adding the initial event sources, - g_main_loop_run() is called. This continuously checks for new events from - each of the event sources and dispatches them. Finally, the - processing of an event from one of the sources leads to a call to - g_main_loop_quit() to exit the main loop, and g_main_loop_run() returns. - - - It is possible to create new instances of #GMainLoop recursively. - This is often used in GTK+ applications when showing modal dialog - boxes. Note that event sources are associated with a particular - #GMainContext, and will be checked and dispatched for all main - loops associated with that #GMainContext. - - - GTK+ contains wrappers of some of these functions, e.g. gtk_main(), - gtk_main_quit() and gtk_events_pending(). - - - Creating new sources types - - One of the unusual features of the GTK+ main loop functionality - is that new types of event source can be created and used in - addition to the builtin type of event source. A new event source - type is used for handling GDK events. A new source type is - created by deriving from the #GSource - structure. The derived type of source is represented by a - structure that has the #GSource structure as a first element, - and other elements specific to the new source type. To create - an instance of the new source type, call g_source_new() passing - in the size of the derived structure and a table of functions. - These #GSourceFuncs determine the behavior of the new source - types. - - - New source types basically interact with the main context - in two ways. Their prepare function in #GSourceFuncs can set - a timeout to determine the maximum amount of time that the - main loop will sleep before checking the source again. In - addition, or as well, the source can add file descriptors to - the set that the main context checks using g_source_add_poll(). - - - - Customizing the main loop iteration - - Single iterations of a #GMainContext can be run with - g_main_context_iteration(). In some cases, more detailed control - of exactly how the details of the main loop work is desired, - for instance, when integrating the #GMainLoop with an external - main loop. In such cases, you can call the component functions - of g_main_context_iteration() directly. These functions - are g_main_context_prepare(), g_main_context_query(), - g_main_context_check() and g_main_context_dispatch(). - - - The operation of these functions can best be seen in terms - of a state diagram, as shown in . - -
- States of a Main Context - -
-
- - - - - - - - - - - -The GMainLoop struct is an opaque data type -representing the main event loop of a GLib or GTK+ application. - - - - - - - - -@context: -@is_running: -@Returns: - - - - - - - -@loop: -@Returns: - - - - - - - -@loop: - - - - - - - -@loop: - - - - - - - -@loop: - - - - - - - -@loop: -@Returns: - - - - - - - -@loop: -@Returns: - - - - -Creates a new #GMainLoop for the default main loop. - - -@is_running: set to %TRUE to indicate that the loop is running. This is not -very important since calling g_main_run() will set this to %TRUE anyway. -@Returns: a new #GMainLoop. -@Deprecated: 2.2: Use g_main_loop_new() instead. - - - - -Frees the memory allocated for the #GMainLoop. - - -@loop: a #GMainLoop. -@Deprecated: 2.2: Use g_main_loop_unref() instead. - - - - -Runs a main loop until it stops running. - - -@loop: a #GMainLoop. -@Deprecated: 2.2: Use g_main_loop_run() instead. - - - - -Stops the #GMainLoop. If g_main_run() was called to run the #GMainLoop, -it will now return. - - -@loop: a #GMainLoop. -@Deprecated: 2.2: Use g_main_loop_quit() instead. - - - - -Checks if the main loop is running. - - -@loop: a #GMainLoop. -@Returns: %TRUE if the main loop is running. -@Deprecated: 2.2: USe g_main_loop_is_running() instead. - - - - -Use this for high priority event sources. -It is not used within GLib or GTK+. - - - - - - -Use this for default priority event sources. -In GLib this priority is used when adding timeout functions with -g_timeout_add(). -In GDK this priority is used for events from the X server. - - - - - - -Use this for high priority idle functions. -GTK+ uses #G_PRIORITY_HIGH_IDLE + 10 for resizing operations, and -#G_PRIORITY_HIGH_IDLE + 20 for redrawing operations. (This is done to -ensure that any pending resizes are processed before any pending redraws, -so that widgets are not redrawn twice unnecessarily.) - - - - - - -Use this for default priority idle functions. -In GLib this priority is used when adding idle functions with g_idle_add(). - - - - - - -Use this for very low priority background tasks. -It is not used within GLib or GTK+. - - - - - - -The GMainContext struct is an opaque data type -representing a set of sources to be handled in a main loop. - - - - - - - - -@Returns: - - - - - - - -@context: -@Returns: - - - - - - - -@context: - - - - - - - -@Returns: - - - - - - - -@context: -@may_block: -@Returns: - - - - -Runs a single iteration for the default #GMainContext. - - -@may_block: set to %TRUE if it should block (i.e. wait) until an event source -becomes ready. It will return after an event source has been processed. -If set to %FALSE it will return immediately if no event source is ready to be -processed. -@Returns: %TRUE if more events are pending. -@Deprecated: 2.2: Use g_main_context_iteration() instead. - - - - - - - -@context: -@Returns: - - - - -Checks if any events are pending for the default #GMainContext -(i.e. ready to be processed). - - -@Returns: %TRUE if any events are pending. -@Deprecated: 2.2: Use g_main_context_pending() instead. - - - - - - - -@context: -@source_id: -@Returns: - - - - - - - -@context: -@user_data: -@Returns: - - - - - - - -@context: -@funcs: -@user_data: -@Returns: - - - - - - - -@context: - - - - - - - -@context: -@Returns: - - - - - - - -@context: - - - - - - - -@context: -@Returns: - - - - - - - -@context: -@cond: -@mutex: -@Returns: - - - - - - - -@context: -@priority: -@Returns: - - - - - - - -@context: -@max_priority: -@timeout_: -@fds: -@n_fds: -@Returns: - - - - - - - -@context: -@max_priority: -@fds: -@n_fds: -@Returns: - - - - - - - -@context: - - - - - - - -@context: -@func: - - - - - - - -@context: -@Returns: - - - - -Specifies the type of function passed to g_main_context_set_poll_func(). -The semantics of the function should match those of the -poll() system call. - - -@ufds: an array of #GPollFD elements. -@nfsd: the number of elements in @ufds. -@timeout_: the maximum time to wait for an event of the file descriptors. - A negative value indicates an infinite timeout. -@Returns: the number of #GPollFD elements which have events or errors reported, -or -1 if an error occurred. - - - - - - - -@context: -@fd: -@priority: - - - - - - - -@context: -@fd: - - - - - - - -@Returns: - - - - - - - -@Returns: - - - - -Sets the function to use for the handle polling of file descriptors -for the default main context. - - -@func: the function to call to poll all file descriptors. -@Deprecated: 2.2: Use g_main_context_set_poll_func() instead. - - - - - - - -@Returns: - - - - - - - -@context: - - - - - - - -@context: - - - - - - - -@interval: -@Returns: - - - - - - - -@interval: -@Returns: - - - - - - -@interval: -@function: -@data: -@Returns: - - - - - - -@priority: -@interval: -@function: -@data: -@notify: -@Returns: - - - - - - - -@interval: -@function: -@data: -@Returns: - - - - - - - -@priority: -@interval: -@function: -@data: -@notify: -@Returns: - - - - - - - -@Returns: - - - - - - -@function: -@data: -@Returns: - - - - - - -@priority: -@function: -@data: -@notify: -@Returns: - - - - - - -@data: -@Returns: - - - - -A type which is used to hold a process identification. -On Unix, processes are identified by a process id (an -integer), while Windows uses process handles (which are -pointers). - - - - - -The type of functions to be called when a child exists. - - -@pid: the process id of the child process -@status: Status information about the child process, - see waitpid(2) for more information about this field -@data: user data passed to g_child_watch_add() - - - - - - - -@pid: -@Returns: - - - - - - - -@pid: -@function: -@data: -@Returns: - - - - - - - -@priority: -@pid: -@function: -@data: -@notify: -@Returns: - - - - - - - - - - -#gint fd; -the file descriptor to poll (or a HANDLE on Win32 platforms). - - - -#gushort events; -a bitwise combination of flags from #GIOCondition, specifying which -events should be polled for. Typically for reading from a file descriptor -you would use %G_IO_IN | %G_IO_HUP | %G_IO_ERR, and for writing you would use -%G_IO_OUT | %G_IO_ERR. - - - - -#gushort revents; -a bitwise combination of flags from #GIOCondition, returned from the -poll() function to indicate which events occurred. - - - - - - -@fd: -@fd: -@events: -@revents: - - - - - - -@fds: -@nfds: -@timeout: -@Returns: - - - - - - - - - - - -The GSource struct is an opaque data type representing -an event source. - - - - - -This is just a placeholder for #GClosureMarshal, which cannot be used here -for dependency reasons. - - - - - - -The #GSourceFuncs struct contains a table of functions used to handle -event sources in a generic manner. - - -For idle sources, the prepare and check functions always return %TRUE to -indicate that the source is always ready to be processed. -The prepare function also returns a timeout value of 0 to ensure that the -poll() call doesn't block (since that would be time -wasted which could have been spent running the idle function). - - -For timeout sources, the prepare and check functions both return %TRUE if the -timeout interval has expired. The prepare function also returns a timeout -value to ensure that the poll() call doesn't block too -long and miss the next timeout. - - -For file descriptor sources, the prepare function typically returns %FALSE, -since it must wait until poll() has been called before -it knows whether any events need to be processed. It sets the returned -timeout to -1 to indicate that it doesn't mind how long the -poll() call blocks. -In the check function, it tests the results of the poll() -call to see if the required condition has been met, and returns %TRUE if so. - - -@prepare: Called before all the file descriptors are polled. -If the source can determine that it is ready here (without waiting for the -results of the poll() call) it should return %TRUE. -It can also return a @timeout_ value which should be the maximum timeout -(in milliseconds) which should be passed to the poll() call. -The actual timeout used will be -1 if all sources returned -1, or it will -be the minimum of all the @timeout_ values returned which were >= 0. -@check: Called after all the file descriptors are polled. -The source should return %TRUE if it is ready to be dispatched. -Note that some time may have passed since the previous prepare function was -called, so the source should be checked again here. -@dispatch: Called to dispatch the event source, after it has returned %TRUE in -either its @prepare or its @check function. The @dispatch function is -passed in a callback function and data. The callback function may be -%NULL if the source was never connected to a callback using -g_source_set_callback(). The @dispatch function should call the -callback function with @user_data and whatever additional parameters are -needed for this type of event source. -@finalize: Called when the source is finalized. -@closure_callback: -@closure_marshal: - - - -The GSourceCallbackFuncs struct contains -functions for managing callback objects. - - -@ref: Called when a reference is added to the callback object. -@unref: Called when a reference to the callback object is dropped. -@get: Called to extract the callback function and data from the callback object. - - - - - - -@source_funcs: -@struct_size: -@Returns: - - - - - - - -@source: -@Returns: - - - - - - - -@source: - - - - - - - -@source: -@funcs: - - - - - - - -@source: -@context: -@Returns: - - - - - - - -@source: - - - - - - - -@source: -@Returns: - - - - - - - -@source: -@priority: - - - - - - - -@source: -@Returns: - - - - - - - -@source: -@can_recurse: - - - - - - - -@source: -@Returns: - - - - - - - -@source: -@Returns: - - - - - - - -@source: -@Returns: - - - - - - - -@source: -@func: -@data: -@notify: - - - - -Specifies the type of function passed to g_timeout_add(), g_timeout_add_full(), -g_idle_add(), and g_idle_add_full(). - - -@data: data passed to the function, set when the source was created with one -of the above functions. -@Returns: it should return %FALSE if the source should be removed. - - - - - - - -@source: -@callback_data: -@callback_funcs: - - - - - - - -@source: -@fd: - - - - - - - -@source: -@fd: - - - - - - - -@source: -@timeval: - - - - - - -@tag: -@Returns: - - - - - - -@funcs: -@user_data: -@Returns: - - - - - - -@user_data: -@Returns: - - - - diff --git a/docs/reference/glib/tmpl/markup.sgml b/docs/reference/glib/tmpl/markup.sgml deleted file mode 100644 index 365f5cd..0000000 --- a/docs/reference/glib/tmpl/markup.sgml +++ /dev/null @@ -1,324 +0,0 @@ - -Simple XML Subset Parser - - -parses a subset of XML - - - -The "GMarkup" parser is intended to parse a simple markup format -that's a subset of XML. This is a small, efficient, easy-to-use -parser. It should not be used if you expect to interoperate with other -applications generating full-scale XML. However, it's very useful for -application data files, config files, etc. where you know your -application will be the only one writing the file. Full-scale XML -parsers should be able to parse the subset used by GMarkup, so you can -easily migrate to full-scale XML at a later time if the need arises. - - - -GMarkup is not guaranteed to signal an error on all invalid XML; the -parser may accept documents that an XML parser would not. However, XML -documents which are not well-formedBeing wellformed -is a weaker condition than being valid. See the -XML specification for -definitions of these terms. are not considered valid GMarkup -documents. - - - -Simplifications to XML include: - - - -Only UTF-8 encoding is allowed. - - - - -No user-defined entities. - - - - -Processing instructions, comments and the doctype declaration are "passed -through" but are not interpreted in any way. - - - - -No DTD or validation. - - - - - - -The markup format does support: - - - -Elements - - - - -Attributes - - - - -5 standard entities: &amp; &lt; &gt; &quot; &apos; - - - - -Character references - - - - -Sections marked as CDATA - - - - - - - - - - - - - - - -Error codes returned by markup parsing. - - -@G_MARKUP_ERROR_BAD_UTF8: text being parsed was not valid UTF-8 -@G_MARKUP_ERROR_EMPTY: document contained nothing, or only whitespace -@G_MARKUP_ERROR_PARSE: document was ill-formed -@G_MARKUP_ERROR_UNKNOWN_ELEMENT: error should be set by #GMarkupParser functions; element wasn't known -@G_MARKUP_ERROR_UNKNOWN_ATTRIBUTE: error should be set by #GMarkupParser functions; attribute wasn't known -@G_MARKUP_ERROR_INVALID_CONTENT: error should be set by #GMarkupParser functions; content was invalid -@G_MARKUP_ERROR_MISSING_ATTRIBUTE: error should be set by #GMarkupParser functions; a required attribute was missing - - - -Error domain for markup parsing. Errors in this domain will -be from the #GMarkupError enumeration. See #GError for information on -error domains. - - - - - - -Flags that affect the behaviour of the parser. - - -@G_MARKUP_DO_NOT_USE_THIS_UNSUPPORTED_FLAG: flag you should not use. -@G_MARKUP_TREAT_CDATA_AS_TEXT: When this flag is set, CDATA marked - sections are not passed literally to the @passthrough function of - the parser. Instead, the content of the section (without the - <![CDATA[ and ]]>) is - passed to the @text function. This flag was added in GLib 2.12. -@G_MARKUP_PREFIX_ERROR_POSITION: Normally errors caught by GMarkup - itself have line/column information prefixed to them to let the - caller know the location of the error. When this flag is set the - location information is also prefixed to errors generated by the - #GMarkupParser implementation functions. - - - -A parse context is used to parse a stream of bytes that you expect to -contain marked-up text. See g_markup_parse_context_new(), -#GMarkupParser, and so on for more details. - - - - - -Any of the fields in #GMarkupParser can be %NULL, in which case they -will be ignored. Except for the @error function, any of these -callbacks can set an error; in particular the -%G_MARKUP_ERROR_UNKNOWN_ELEMENT, %G_MARKUP_ERROR_UNKNOWN_ATTRIBUTE, -and %G_MARKUP_ERROR_INVALID_CONTENT errors are intended to be set -from these callbacks. If you set an error from a callback, -g_markup_parse_context_parse() will report that error back to its caller. - - -@start_element: Callback to invoke when the opening tag of an element - is seen. -@end_element: Callback to invoke when the closing tag of an element is seen. - Note that this is also called for empty tags like - <empty/>. -@text: Callback to invoke when some text is seen (text is always - inside an element). Note that the text of an element may be spread - over multiple calls of this function. If the %G_MARKUP_TREAT_CDATA_AS_TEXT - flag is set, this function is also called for the content of CDATA marked - sections. -@passthrough: Callback to invoke for comments, processing instructions - and doctype declarations; if you're re-writing the parsed document, - write the passthrough text back out in the same position. If the - %G_MARKUP_TREAT_CDATA_AS_TEXT flag is not set, this function is also - called for CDATA marked sections. -@error: Callback to invoke when an error occurs. - - - - - - -@text: -@length: -@Returns: - - - - - - - -@format: -@Varargs: -@Returns: - - - - - - - -@format: -@args: -@Returns: - - - - - - - -@context: -@error: -@Returns: - - - - - - - -@context: - - - - - - - -@context: -@line_number: -@char_number: - - - - - - - -@context: -@Returns: - - - - - - - -@context: -@Returns: - - - - - - - -@context: -@Returns: - - - - - - - -@parser: -@flags: -@user_data: -@user_data_dnotify: -@Returns: - - - - - - - -@context: -@text: -@text_len: -@error: -@Returns: - - - - - - - -@context: -@parser: -@user_data: - - - - - - - -@context: -@Returns: - - - - - - - -@G_MARKUP_COLLECT_INVALID: -@G_MARKUP_COLLECT_STRING: -@G_MARKUP_COLLECT_STRDUP: -@G_MARKUP_COLLECT_BOOLEAN: -@G_MARKUP_COLLECT_TRISTATE: -@G_MARKUP_COLLECT_OPTIONAL: - - - - - - -@element_name: -@attribute_names: -@attribute_values: -@error: -@first_type: -@first_attr: -@Varargs: -@Returns: - - diff --git a/docs/reference/glib/tmpl/memory.sgml b/docs/reference/glib/tmpl/memory.sgml deleted file mode 100644 index c113e48..0000000 --- a/docs/reference/glib/tmpl/memory.sgml +++ /dev/null @@ -1,423 +0,0 @@ - -Memory Allocation - - -general memory-handling - - - -These functions provide support for allocating and freeing memory. - - - - -If any call to allocate memory fails, the application is terminated. -This also means that there is no need to check if the call succeeded. - - - - - -It's important to match g_malloc() with g_free(), plain malloc() with free(), -and (if you're using C++) new with delete and new[] with delete[]. Otherwise -bad things can happen, since these allocators may use different memory -pools (and new/delete call constructors and destructors). See also -g_mem_set_vtable(). - - - - - - - - - - - - - -Allocates @n_structs elements of type @struct_type. -The returned pointer is cast to a pointer to the given type. -If @n_structs is 0 it returns %NULL. -Care is taken to avoid overflow when calculating the size of the allocated block. - - -Since the returned pointer is already casted to the right type, -it is normally unnecessary to cast it explicitly, and doing -so might hide memory allocation errors. - - -@struct_type: the type of the elements to allocate -@n_structs: the number of elements to allocate -@Returns: a pointer to the allocated memory, cast to a pointer to @struct_type - - - - -Allocates @n_structs elements of type @struct_type, initialized to 0's. -The returned pointer is cast to a pointer to the given type. -If @n_structs is 0 it returns %NULL. -Care is taken to avoid overflow when calculating the size of the allocated block. - - -Since the returned pointer is already casted to the right type, -it is normally unnecessary to cast it explicitly, and doing -so might hide memory allocation errors. - - -@struct_type: the type of the elements to allocate. -@n_structs: the number of elements to allocate. -@Returns: a pointer to the allocated memory, cast to a pointer to @struct_type. - - - - -Reallocates the memory pointed to by @mem, so that it now has space for -@n_structs elements of type @struct_type. It returns the new address of -the memory, which may have been moved. -Care is taken to avoid overflow when calculating the size of the allocated block. - - -@struct_type: the type of the elements to allocate -@mem: the currently allocated memory -@n_structs: the number of elements to allocate -@Returns: a pointer to the new allocated memory, cast to a pointer to @struct_type - - - - -Attempts to allocate @n_structs elements of type @struct_type, and returns -%NULL on failure. Contrast with g_new(), which aborts the program on failure. -The returned pointer is cast to a pointer to the given type. -The function returns %NULL when @n_structs is 0 of if an overflow occurs. - - -@struct_type: the type of the elements to allocate -@n_structs: the number of elements to allocate -@Returns: a pointer to the allocated memory, cast to a pointer to @struct_type -@Since: 2.8 - - - - -Attempts to allocate @n_structs elements of type @struct_type, initialized -to 0's, and returns %NULL on failure. Contrast with g_new0(), which aborts -the program on failure. -The returned pointer is cast to a pointer to the given type. -The function returns %NULL when @n_structs is 0 of if an overflow occurs. - - -@struct_type: the type of the elements to allocate -@n_structs: the number of elements to allocate -@Returns: a pointer to the allocated memory, cast to a pointer to @struct_type -@Since: 2.8 - - - - -Attempts to reallocate the memory pointed to by @mem, so that it now has -space for @n_structs elements of type @struct_type, and returns %NULL on -failure. Contrast with g_renew(), which aborts the program on failure. -It returns the new address of the memory, which may have been moved. -The function returns %NULL if an overflow occurs. - - -@struct_type: the type of the elements to allocate -@mem: the currently allocated memory -@n_structs: the number of elements to allocate -@Returns: a pointer to the new allocated memory, cast to a pointer to @struct_type -@Since: 2.8 - - - - -Allocates @n_bytes bytes of memory. -If @n_bytes is 0 it returns %NULL. - - -@n_bytes: the number of bytes to allocate -@Returns: a pointer to the allocated memory - - - - -Allocates @n_bytes bytes of memory, initialized to 0's. -If @n_bytes is 0 it returns %NULL. - - -@n_bytes: the number of bytes to allocate -@Returns: a pointer to the allocated memory - - - - -Reallocates the memory pointed to by @mem, so that it now has space for -@n_bytes bytes of memory. It returns the new address of the memory, which may -have been moved. @mem may be %NULL, in which case it's considered to -have zero-length. @n_bytes may be 0, in which case %NULL will be returned -and @mem will be freed unless it is %NULL. - - -@mem: the memory to reallocate -@n_bytes: new size of the memory in bytes -@Returns: the new address of the allocated memory - - - - -Attempts to allocate @n_bytes, and returns %NULL on failure. -Contrast with g_malloc(), which aborts the program on failure. - - -@n_bytes: number of bytes to allocate. -@Returns: the allocated memory, or %NULL. - - - - -Attempts to allocate @n_bytes, initialized to 0's, and returns %NULL on -failure. Contrast with g_malloc0(), which aborts the program on failure. - - -@n_bytes: number of bytes to allocate -@Returns: the allocated memory, or %NULL -@Since: 2.8 - - - - -Attempts to realloc @mem to a new size, @n_bytes, and returns %NULL -on failure. Contrast with g_realloc(), which aborts the program -on failure. If @mem is %NULL, behaves the same as g_try_malloc(). - - -@mem: previously-allocated memory, or %NULL. -@n_bytes: number of bytes to allocate. -@Returns: the allocated memory, or %NULL. - - - - -This function is similar to g_malloc(), allocating (@n_blocks * @n_block_bytes) bytes, -but care is taken to detect possible overflow during multiplication. - - -@n_blocks: the number of blocks to allocate -@n_block_bytes: the size of each block in bytes -@Returns: a pointer to the allocated memory -@Since: 2.24 - - - - -This function is similar to g_malloc0(), allocating (@n_blocks * @n_block_bytes) bytes, -but care is taken to detect possible overflow during multiplication. - - -@n_blocks: the number of blocks to allocate -@n_block_bytes: the size of each block in bytes -@Returns: a pointer to the allocated memory -@Since: 2.24 - - - - -This function is similar to g_realloc(), allocating (@n_blocks * @n_block_bytes) bytes, -but care is taken to detect possible overflow during multiplication. - - -@mem: the memory to reallocate -@n_blocks: the number of blocks to allocate -@n_block_bytes: the size of each block in bytes -@Returns: the new address of the allocated memory -@Since: 2.24 - - - - -This function is similar to g_try_malloc(), allocating (@n_blocks * @n_block_bytes) bytes, -but care is taken to detect possible overflow during multiplication. - - -@n_blocks: the number of blocks to allocate -@n_block_bytes: the size of each block in bytes -@Returns: the allocated memory, or %NULL. -@Since: 2.24 - - - - -This function is similar to g_try_malloc0(), allocating (@n_blocks * @n_block_bytes) bytes, -but care is taken to detect possible overflow during multiplication. - - -@n_blocks: the number of blocks to allocate -@n_block_bytes: the size of each block in bytes -@Returns: the allocated memory, or %NULL -@Since: 2.24 - - - - -This function is similar to g_try_realloc(), allocating (@n_blocks * @n_block_bytes) bytes, -but care is taken to detect possible overflow during multiplication. - - -@mem: previously-allocated memory, or %NULL. -@n_blocks: the number of blocks to allocate -@n_block_bytes: the size of each block in bytes -@Returns: the allocated memory, or %NULL. -@Since: 2.24 - - - - -Frees the memory pointed to by @mem. -If @mem is %NULL it simply returns. - - -@mem: the memory to free - - - - -This variable is %TRUE if the G_DEBUG environment variable -includes the key gc-friendly. - - - - - -Allocates @size bytes on the stack; these bytes will be freed when the current -stack frame is cleaned up. This macro essentially just wraps the alloca() -function present on most UNIX variants. -Thus it provides the same advantages and pitfalls as alloca(): - - - + alloca() is very fast, as on most systems it's implemented by just adjusting - the stack pointer register. - - - + It doesn't cause any memory fragmentation, within its scope, separate alloca() - blocks just build up and are released together at function end. - - - - Allocation sizes have to fit into the current stack frame. For instance in a - threaded environment on Linux, the per-thread stack size is limited to 2 Megabytes, - so be sparse with alloca() uses. - - - - Allocation failure due to insufficient stack space is not indicated with a %NULL - return like e.g. with malloc(). Instead, most systems probably handle it the same - way as out of stack space situations from infinite function recursion, i.e. - with a segmentation fault. - - - - Special care has to be taken when mixing alloca() with GNU C variable sized arrays. - Stack space allocated with alloca() in the same scope as a variable sized array - will be freed together with the variable sized array upon exit of that scope, and - not upon exit of the enclosing function scope. - - - - - -@size: number of bytes to allocate. -@Returns: space for @size bytes, allocated on the stack - - - - -Wraps g_alloca() in a more typesafe manner. - - -@struct_type: Type of memory chunks to be allocated -@n_structs: Number of chunks to be allocated -@Returns: Pointer to stack space for @n_structs chunks of type @struct_type - - - - - - - -@dest: -@src: -@len: - - - - -Allocates @byte_size bytes of memory, and copies @byte_size bytes into it -from @mem. If @mem is %NULL it returns %NULL. - - -@mem: the memory to copy. -@byte_size: the number of bytes to copy. -@Returns: a pointer to the newly-allocated copy of the memory, or %NULL if @mem -is %NULL. - - - - -A set of functions used to perform memory allocation. The same #GMemVTable must -be used for all allocations in the same program; a call to g_mem_set_vtable(), -if it exists, should be prior to any use of GLib. - - -@malloc: function to use for allocating memory. -@realloc: function to use for reallocating memory. -@free: function to use to free memory. -@calloc: function to use for allocating zero-filled memory. -@try_malloc: function to use for allocating memory without a default error handler. -@try_realloc: function to use for reallocating memory without a default error handler. - - - -Sets the #GMemVTable to use for memory allocation. You can use this to provide -custom memory allocation routines. This function must be called -before using any other GLib functions. The @vtable only needs to -provide malloc(), realloc(), and free() functions; GLib can provide default -implementations of the others. The malloc() and realloc() implementations -should return %NULL on failure, GLib will handle error-checking for you. -@vtable is copied, so need not persist after this function has been called. - - -@vtable: table of memory allocation routines. - - - - - - - -@Returns: - - - - -A #GMemVTable containing profiling variants of the memory -allocation functions. Use them together with g_mem_profile() -in order to get information about the memory allocation pattern -of your program. - - - - - -Outputs a summary of memory usage. - - -It outputs the frequency of allocations of different sizes, -the total number of bytes which have been allocated, -the total number of bytes which have been freed, -and the difference between the previous two values, i.e. the number of bytes -still in use. - - -Note that this function will not output anything unless you have -previously installed the #glib_mem_profiler_table with g_mem_set_vtable(). - - - - diff --git a/docs/reference/glib/tmpl/memory_chunks.sgml b/docs/reference/glib/tmpl/memory_chunks.sgml deleted file mode 100644 index 0bb5eef..0000000 --- a/docs/reference/glib/tmpl/memory_chunks.sgml +++ /dev/null @@ -1,163 +0,0 @@ - -Memory Chunks - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@name: -@atom_size: -@area_size: -@type: -@Returns: - - - - - - - -@mem_chunk: -@Returns: - - - - - - - -@mem_chunk: -@Returns: - - - - - - - -@mem_chunk: -@mem: - - - - - - - -@mem_chunk: - - - - - - - -@type: -@pre_alloc: -@alloc_type: - - - - - - - -@type: -@chunk: - - - - - - - -@type: -@chunk: - - - - - - - -@mem: -@mem_chunk: - - - - - - - -@mem_chunk: - - - - - - - -@mem_chunk: - - - - - - - - - - - - - - - - - - - - - -@mem_chunk: - - diff --git a/docs/reference/glib/tmpl/memory_slices.sgml b/docs/reference/glib/tmpl/memory_slices.sgml deleted file mode 100644 index 2538fa1..0000000 --- a/docs/reference/glib/tmpl/memory_slices.sgml +++ /dev/null @@ -1,253 +0,0 @@ - -Memory Slices - - -efficient way to allocate groups of equal-sized chunks of memory - - - -Memory slices provide a space-efficient and multi-processing scalable -way to allocate equal-sized pieces of memory, just like the original -#GMemChunks (from GLib <= 2.8), while avoiding their excessive -memory-waste, scalability and performance problems. - - - -To achieve these goals, the slice allocator uses a sophisticated, -layered design that has been inspired by Bonwick's slab allocator - -[Bonwick94] Jeff Bonwick, The slab allocator: An object-caching kernel -memory allocator. USENIX 1994, and -[Bonwick01] Bonwick and Jonathan Adams, Magazines and vmem: Extending the -slab allocator to many cpu's and arbitrary resources. USENIX 2001 -. -It uses posix_memalign() to optimize allocations of many equally-sized -chunks, and has per-thread free lists (the so-called magazine layer) -to quickly satisfy allocation requests of already known structure sizes. -This is accompanied by extra caching logic to keep freed memory around -for some time before returning it to the system. Memory that is unused -due to alignment constraints is used for cache colorization (random -distribution of chunk addresses) to improve CPU cache utilization. The -caching layer of the slice allocator adapts itself to high lock contention -to improve scalability. - - - -The slice allocator can allocate blocks as small as two pointers, and -unlike malloc(), it does not reserve extra space per block. For large block -sizes, g_slice_new() and g_slice_alloc() will automatically delegate to the -system malloc() implementation. For newly written code it is recommended -to use the new g_slice API instead of g_malloc() and -friends, as long as objects are not resized during their lifetime and the -object size used at allocation time is still available when freeing. - - - -Using the slice allocator - - gchar *mem[10000]; - gint i; - - /* Allocate 10000 blocks. */ - for (i = 0; i < 10000; i++) - { - mem[i] = g_slice_alloc (50); - - /* Fill in the memory with some junk. */ - for (j = 0; j < 50; j++) - mem[i][j] = i * j; - } - - /* Now free all of the blocks. */ - for (i = 0; i < 10000; i++) - { - g_slice_free1 (50, mem[i]); - } - - - -Using the slice allocator with data structures - - GRealArray *array; - - /* Allocate one block, using the g_slice_new() macro. */ - array = g_slice_new (GRealArray); - - /* We can now use array just like a normal pointer to a structure. */ - array->data = NULL; - array->len = 0; - array->alloc = 0; - array->zero_terminated = (zero_terminated ? 1 : 0); - array->clear = (clear ? 1 : 0); - array->elt_size = elt_size; - - /* We can free the block, so it can be reused. */ - g_slice_free (GRealArray, array); - - - - - - - - - - - -Allocates a block of memory from the slice allocator. -The block adress handed out can be expected to be aligned -to at least 1 * sizeof (void*), -though in general slices are 2 * sizeof (void*) bytes aligned, -if a malloc() fallback implementation is used instead, -the alignment may be reduced in a libc dependent fashion. -Note that the underlying slice allocation mechanism can -be changed with the G_SLICE=always-malloc -environment variable. - - -@block_size: the number of bytes to allocate -@Returns: a pointer to the allocated memory block -@Since: 2.10 - - - - -Allocates a block of memory via g_slice_alloc() -and initialize the returned memory to 0. -Note that the underlying slice allocation mechanism can -be changed with the G_SLICE=always-malloc -environment variable. - - -@block_size: the number of bytes to allocate -@Returns: a pointer to the allocated block -@Since: 2.10 - - - - -Allocates a block of memory from the slice allocator and copies -@block_size bytes into it from @mem_block. - - -@block_size: the number of bytes to allocate -@mem_block: the memory to copy -@Returns: a pointer to the allocated memory block -@Since: 2.14 - - - - -Frees a block of memory. The memory must have been allocated via -g_slice_alloc() or g_slice_alloc0() -and the @block_size has to match the size specified upon allocation. -Note that the exact release behaviour can be changed with the -G_DEBUG=gc-friendly environment variable, -also see G_SLICE for related debugging options. - - -@block_size: the size of the block -@mem_block: a pointer to the block to free -@Since: 2.10 - - - - -Frees a linked list of memory blocks of structure type @type. -The memory blocks must be equal-sized, allocated via -g_slice_alloc() or g_slice_alloc0() -and linked together by a @next pointer (similar to #GSList). The offset -of the @next field in each block is passed as third argument. -Note that the exact release behaviour can be changed with the -G_DEBUG=gc-friendly environment variable, -also see G_SLICE for related debugging options. - - -@block_size: the size of the blocks -@mem_chain: a pointer to the first block of the chain -@next_offset: the offset of the @next field in the blocks -@Since: 2.10 - - - - -A convenience macro to allocate a block of memory from the slice allocator. -It calls g_slice_alloc() with sizeof (@type) and casts -the returned pointer to a pointer of the given type, avoiding a type cast -in the source code. -Note that the underlying slice allocation mechanism can -be changed with the G_SLICE=always-malloc -environment variable. - - -@type: the type to allocate, typically a structure name -@Returns: a pointer to the allocated block, cast to a pointer to @type. -@Since: 2.10 - - - - -A convenience macro to allocate a block of memory from the slice allocator -and set the memory to 0. It calls g_slice_alloc0() with -sizeof (@type) and casts the returned pointer to a pointer -of the given type, avoiding a type cast in the source code. -Note that the underlying slice allocation mechanism can -be changed with the G_SLICE=always-malloc -environment variable. - - -@type: the type to allocate, typically a structure name -@Returns: a pointer to the allocated block, cast to a pointer to @type. -@Since: 2.10 - - - - -A convenience macro to duplicate a block of memory using the slice allocator. -It calls g_slice_copy() with sizeof (@type) and casts -the returned pointer to a pointer of the given type, avoiding a type cast -in the source code. -Note that the underlying slice allocation mechanism can -be changed with the G_SLICE=always-malloc -environment variable. - - -@type: the type to duplicate, typically a structure name -@mem: the memory to copy into the allocated block -@Returns: a pointer to the allocated block, cast to a pointer to @type. -@Since: 2.14 - - - - -A convenience macro to free a block of memory that has been allocated -from the slice allocator. It calls g_slice_free1() using -sizeof (type) as the block size. -Note that the exact release behaviour can be changed with the -G_DEBUG=gc-friendly environment variable, -also see G_SLICE for related debugging options. - - -@type: the type of the block to free, typically a structure name -@mem: a pointer to the block to free -@Since: 2.10 - - - - -Frees a linked list of memory blocks of structure type @type. -The memory blocks must be equal-sized, allocated via -g_slice_alloc() or g_slice_alloc0() and linked together by a -@next pointer (similar to #GSList). The name of the -@next field in @type is passed as third argument. -Note that the exact release behaviour can be changed with the -G_DEBUG=gc-friendly environment variable, -also see G_SLICE for related debugging options. - - -@type: the type of the @mem_chain blocks -@mem_chain: a pointer to the first block of the chain -@next: the field name of the next pointer in @type -@Since: 2.10 - - diff --git a/docs/reference/glib/tmpl/messages.sgml b/docs/reference/glib/tmpl/messages.sgml deleted file mode 100644 index 0915f55..0000000 --- a/docs/reference/glib/tmpl/messages.sgml +++ /dev/null @@ -1,297 +0,0 @@ - -Message Logging - - -versatile support for logging messages with different levels of importance - - - -These functions provide support for logging error messages or messages -used for debugging. - - - -There are several built-in levels of messages, defined in #GLogLevelFlags. -These can be extended with user-defined levels. - - - - - - - - - - - - -Defines the log domain. -For applications, this is typically left as the default %NULL (or "") domain. -Libraries should define this so that any messages which they log can -be differentiated from messages from other libraries and application code. -But be careful not to define it in any public header files. - - -For example, GTK+ uses this in its Makefile.am: - - -INCLUDES = -DG_LOG_DOMAIN=\"Gtk\" - - - - - - -GLib log levels that are considered fatal by default. - - - - - - -Log level shift offset for user defined log levels (0-7 are used by GLib). - - - - - - -Specifies the prototype of log handler functions. - - -@log_domain: the log domain of the message. -@log_level: the log level of the message (including the fatal and recursion -flags). -@message: the message to process. -@user_data: user data, set in g_log_set_handler(). - - - - -Flags specifying the level of log messages. It is possible to change -how GLib treats messages of the various levels using g_log_set_handler() -and g_log_set_fatal_mask(). - - -@G_LOG_FLAG_RECURSION: internal flag -@G_LOG_FLAG_FATAL: internal flag -@G_LOG_LEVEL_ERROR: log level for errors, see g_error(). - This level is also used for messages produced by g_assert(). -@G_LOG_LEVEL_CRITICAL: log level for critical messages, see g_critical(). - This level is also used for messages produced by g_return_if_fail() and - g_return_val_if_fail(). -@G_LOG_LEVEL_WARNING: log level for warnings, see g_warning() -@G_LOG_LEVEL_MESSAGE: log level for messages, see g_message() -@G_LOG_LEVEL_INFO: log level for informational messages -@G_LOG_LEVEL_DEBUG: log level for debug messages, see g_debug() -@G_LOG_LEVEL_MASK: a mask including all log levels. - - - -Logs an error or debugging message. -If the log level has been set as fatal, the abort() -function is called to terminate the program. - - -@log_domain: the log domain, usually #G_LOG_DOMAIN. -@log_level: the log level, either from #GLogLevelFlags or a user-defined level. -@format: the message format. See the printf() -documentation. -@Varargs: the parameters to insert into the format string. - - - - -Logs an error or debugging message. -If the log level has been set as fatal, the abort() -function is called to terminate the program. - - -@log_domain: the log domain. -@log_level: the log level. -@format: the message format. See the printf() -documentation. -@args: the parameters to insert into the format string. - - - - -A convenience function/macro to log a normal message. - - -@...: format string, followed by parameters to insert into the format string (as with printf()) - - - - -A convenience function/macro to log a warning message. - - - -You can make warnings fatal at runtime by setting the %G_DEBUG environment -variable (see Running GLib Applications). - - -@...: format string, followed by parameters to insert into the format string (as with printf()) - - - - -Logs a "critical warning" (#G_LOG_LEVEL_CRITICAL). It's more or less -application-defined what constitutes a critical vs. a regular -warning. You could call g_log_set_always_fatal() to make critical -warnings exit the program, then use g_critical() for fatal errors, for -example. - - - -You can also make critical warnings fatal at runtime by setting -the %G_DEBUG environment variable (see -Running GLib Applications). - - -@...: format string, followed by parameters to insert into the format string (as with printf()) - - - - -A convenience function/macro to log an error message. -Error messages are always fatal, resulting in a call to -abort() to terminate the application. -This function will result in a core dump; don't use it for errors you -expect. Using this function indicates a bug in your program, i.e. an -assertion failure. - - -@...: format string, followed by parameters to insert into the format string (as with printf()) - - - - -A convenience function/macro to log a debug message. - - -@...: format string, followed by parameters to insert into the format string (as with printf()) -@Since: 2.6 - - - - -Sets the log handler for a domain and a set of log levels. -To handle fatal and recursive messages the @log_levels parameter -must be combined with the #G_LOG_FLAG_FATAL and #G_LOG_FLAG_RECURSION -bit flags. - - -Note that since the #G_LOG_LEVEL_ERROR log level is always fatal, if -you want to set a handler for this log level you must combine it with -#G_LOG_FLAG_FATAL. - - - -Adding a log handler for all warning messages in the default -(application) domain - - g_log_set_handler (NULL, G_LOG_LEVEL_WARNING | G_LOG_FLAG_FATAL - | G_LOG_FLAG_RECURSION, my_log_handler, NULL); - - - - -Adding a log handler for all critical messages from GTK+ - - g_log_set_handler ("Gtk", G_LOG_LEVEL_CRITICAL | G_LOG_FLAG_FATAL - | G_LOG_FLAG_RECURSION, my_log_handler, NULL); - - - - -Adding a log handler for <emphasis>all</emphasis> messages from -GLib - - g_log_set_handler ("GLib", G_LOG_LEVEL_MASK | G_LOG_FLAG_FATAL - | G_LOG_FLAG_RECURSION, my_log_handler, NULL); - - - -@log_domain: the log domain, or %NULL for the default "" application domain. -@log_levels: the log levels to apply the log handler for. To handle fatal -and recursive messages as well, combine the log levels with the -#G_LOG_FLAG_FATAL and #G_LOG_FLAG_RECURSION bit flags. -@log_func: the log handler function. -@user_data: data passed to the log handler. -@Returns: the id of the new handler. - - - - -Removes the log handler. - - -@log_domain: the log domain. -@handler_id: the id of the handler, which was returned in g_log_set_handler(). - - - - -Sets the message levels which are always fatal, in any log domain. -When a message with any of these levels is logged the program terminates. -You can only set the levels defined by GLib to be fatal. -%G_LOG_LEVEL_ERROR is always fatal. - - - -You can also make some message levels -fatal at runtime by setting the %G_DEBUG environment variable (see -Running GLib Applications). - - -@fatal_mask: the mask containing bits set for each level of error which is -to be fatal. -@Returns: the old fatal mask. - - - - -Sets the log levels which are fatal in the given domain. -%G_LOG_LEVEL_ERROR is always fatal. - - -@log_domain: the log domain. -@fatal_mask: the new fatal mask. -@Returns: the old fatal mask for the log domain. - - - - -The default log handler set up by GLib; g_log_set_default_handler() -allows to install an alternate default log handler. -This is used if no log handler has been set for the particular log domain -and log level combination. It outputs the message to stderr or stdout -and if the log level is fatal it calls abort(). - - -stderr is used for levels %G_LOG_LEVEL_ERROR, %G_LOG_LEVEL_CRITICAL, -%G_LOG_LEVEL_WARNING and %G_LOG_LEVEL_MESSAGE. stdout is used for the rest. - - -@log_domain: the log domain of the message. -@log_level: the level of the message. -@message: the message. -@unused_data: data passed from g_log() which is unused. - - - - -Installs a default log handler which is used if no -log handler has been set for the particular log domain -and log level combination. By default, GLib uses -g_log_default_handler() as default log handler. - - -@log_func: the log handler function. -@user_data: data passed to the log handler. -@Returns: the previous default log handler -@Since: 2.6 - - diff --git a/docs/reference/glib/tmpl/misc_utils.sgml b/docs/reference/glib/tmpl/misc_utils.sgml deleted file mode 100644 index 9cfb65f..0000000 --- a/docs/reference/glib/tmpl/misc_utils.sgml +++ /dev/null @@ -1,439 +0,0 @@ - -Miscellaneous Utility Functions - - -a selection of portable utility functions - - - -These are portable utility functions. - - - - - - - - - - - - - - - -@Returns: - - - - - - - -@application_name: - - - - - - - -@Returns: - - - - - - - -@prgname: - - - - - - - -@variable: -@Returns: - - - - - - - -@variable: -@value: -@overwrite: -@Returns: - - - - - - - -@variable: - - - - - - - -@Returns: - - - - - - - -@Returns: - - - - - - - -@Returns: - - - - - - - -@Returns: - - - - - - - -@Returns: - - - - - - - -@Returns: - - - - - - - -@G_USER_DIRECTORY_DESKTOP: -@G_USER_DIRECTORY_DOCUMENTS: -@G_USER_DIRECTORY_DOWNLOAD: -@G_USER_DIRECTORY_MUSIC: -@G_USER_DIRECTORY_PICTURES: -@G_USER_DIRECTORY_PUBLIC_SHARE: -@G_USER_DIRECTORY_TEMPLATES: -@G_USER_DIRECTORY_VIDEOS: -@G_USER_N_DIRECTORIES: - - - - - - -@directory: -@Returns: - - - - - - - -@Returns: - - - - - - - -@Returns: - - - - - - - - - - - - - - -@Returns: - - - - - - - -@Returns: - - - - - - - -@Returns: - - - - - - - -@Returns: - - - - - -@file_name: -@Returns: - - - - -This function is deprecated and will be removed in the next major -release of GLib. Use g_path_get_dirname() instead. - - - -Gets the directory components of a file name. -If the file name has no directory components "." is returned. -The returned string should be freed when no longer needed. - - -@Returns: the directory components of the file. - - - - - - - -@file_name: -@Returns: - - - - - - - -@file_name: -@Returns: - - - - - - - -@file_name: -@Returns: - - - - - - - -@file_name: -@Returns: - - - - - - - -@first_element: -@Varargs: -@Returns: - - - - - - - -@args: -@Returns: - - - - - - - -@separator: -@first_element: -@Varargs: -@Returns: - - - - - - - -@separator: -@args: -@Returns: - - - - - - - -@size: -@Returns: - - - - - - - -@program: -@Returns: - - - - -Find the position of the first bit set in @mask, searching from (but not -including) @nth_bit upwards. Bits are numbered from 0 (least significant) -to sizeof(#gulong) * 8 - 1 (31 or 63, usually). To start searching from the -0th bit, set @nth_bit to -1. - - -@mask: a #gulong containing flags. -@nth_bit: the index of the bit to start the search from. -@Returns: the index of the first bit set which is higher than @nth_bit. - - - - -Find the position of the first bit set in @mask, searching from (but not -including) @nth_bit downwards. Bits are numbered from 0 (least significant) -to sizeof(#gulong) * 8 - 1 (31 or 63, usually). To start searching from the -last bit, set @nth_bit to -1 or GLIB_SIZEOF_LONG * 8. - - -@mask: a #gulong containing flags. -@nth_bit: the index of the bit to start the search from. -@Returns: the index of the first bit set which is lower than @nth_bit. - - - - -Gets the number of bits used to hold @number, -e.g. if @number is 4, 3 bits are needed. - - -@number: a guint. -@Returns: the number of bits used to hold @number. - - - - -Gets the smallest prime number from a built-in array of primes which -is larger than @num. This is used within GLib to calculate the optimum -size of a #GHashTable. - - -The built-in array of primes ranges from 11 to 13845163 such that -each prime is approximately 1.5-2 times the previous prime. - - -@num: a #guint. -@Returns: the smallest prime number from a built-in array of primes which is -larger than @num. - - - - - - - -@func: - - - - - - - -@string: -@keys: -@nkeys: -@Returns: - - - - -Associates a string with a bit flag. -Used in g_parse_debug_string(). - - -@key: the string -@value: the flag - - - -Declares a type of function which takes no arguments and has no return value. -It is used to specify the type function passed to g_atexit(). - - - - - - -Declares a type of function which takes an arbitrary data pointer argument -and has no return value. It is not currently used in GLib or GTK+. - - -@data: a data pointer. - - - - - - - -@pbase: -@total_elems: -@size: -@compare_func: -@user_data: - - - - - - - -@nullify_location: - - diff --git a/docs/reference/glib/tmpl/modules.sgml b/docs/reference/glib/tmpl/modules.sgml deleted file mode 100644 index c47df35..0000000 --- a/docs/reference/glib/tmpl/modules.sgml +++ /dev/null @@ -1,284 +0,0 @@ - -Dynamic Loading of Modules - - -portable method for dynamically loading 'plug-ins' - - - -These functions provide a portable way to dynamically load object files -(commonly known as 'plug-ins'). -The current implementation supports all systems that provide -an implementation of dlopen() (e.g. Linux/Sun), as well as HP-UX via its -shl_load() mechanism, and Windows platforms via DLLs. - - - -A program which wants to use these functions must be linked to the -libraries output by the command pkg-config --libs gmodule-2.0. - - - -To use them you must first determine whether dynamic loading -is supported on the platform by calling g_module_supported(). -If it is, you can open a module with g_module_open(), -find the module's symbols (e.g. function names) with g_module_symbol(), -and later close the module with g_module_close(). -g_module_name() will return the file name of a currently opened module. - - -If any of the above functions fail, the error status can be found with -g_module_error(). - - -The #GModule implementation features reference counting for opened modules, -and supports hook functions within a module which are called when the -module is loaded and unloaded (see #GModuleCheckInit and #GModuleUnload). - - -If your module introduces static data to common subsystems in the running -program, e.g. through calling g_quark_from_static_string ("my-module-stuff"), -it must ensure that it is never unloaded, by calling g_module_make_resident(). - - - - -Calling a function defined in a <structname>GModule</structname> - -/* the function signature for 'say_hello' */ -typedef void (* SayHelloFunc) (const char *message); - -gboolean -just_say_hello (const char *filename, GError **error) -{ - SayHelloFunc say_hello; - GModule *module; - - module = g_module_open (filename, G_MODULE_BIND_LAZY); - if (!module) - { - g_set_error (error, FOO_ERROR, FOO_ERROR_BLAH, - "%s", g_module_error ()); - return FALSE; - } - - if (!g_module_symbol (module, "say_hello", (gpointer *)&say_hello)) - { - g_set_error (error, SAY_ERROR, SAY_ERROR_OPEN, - "%s: %s", filename, g_module_error ()); - if (!g_module_close (module)) - g_warning ("%s: %s", filename, g_module_error ()); - return FALSE; - } - - if (say_hello == NULL) - { - g_set_error (error, SAY_ERROR, SAY_ERROR_OPEN, "symbol say_hello is NULL"); - if (!g_module_close (module)) - g_warning ("%s: %s", filename, g_module_error ()); - return FALSE; - } - - /* call our function in the module */ - say_hello ("Hello world!"); - - if (!g_module_close (module)) - g_warning ("%s: %s", filename, g_module_error ()); - - return TRUE; -} - - - - - - - - - - - - - - -The #GModule struct is an opaque data structure to represent a -Dynamically-Loaded Module. -It should only be accessed via the following functions. - - - - - -Checks if modules are supported on the current platform. - - -@Returns: %TRUE if modules are supported. - - - - -A portable way to build the filename of a module. The platform-specific -prefix and suffix are added to the filename, if needed, and the result is -added to the directory, using the correct separator character. - - -The directory should specify the directory where the module can be found. -It can be %NULL or an empty string to indicate that the module is in a standard -platform-specific directory, though this is not recommended since the -wrong module may be found. - - -For example, calling g_module_build_path() on a Linux system with a @directory -of /lib and a @module_name of "mylibrary" will return -/lib/libmylibrary.so. On a Windows system, using -\Windows as the directory it will return -\Windows\mylibrary.dll. - - -@directory: the directory where the module is. This can be %NULL or the empty -string to indicate that the standard platform-specific directories will be -used, though that is not recommended. -@module_name: the name of the module. -@Returns: the complete path of the module, including the standard library -prefix and suffix. This should be freed when no longer needed. - - - - -Opens a module. If the module has already been opened, its reference -count is incremented. - - - -First of all g_module_open() tries to open @file_name as a module. If -that fails and @file_name has the ".la"-suffix (and is a libtool archive) -it tries to open the corresponding module. If that fails and it doesn't -have the proper module suffix for the platform (#G_MODULE_SUFFIX), this -suffix will be appended and the corresponding module will be opended. If -that fails and @file_name doesn't have the ".la"-suffix, this suffix is -appended and g_module_open() tries to open the corresponding module. If -eventually that fails as well, %NULL is returned. - - -@file_name: the name of the file containing the module, or %NULL to obtain - a #GModule representing the main program itself. -@flags: the flags used for opening the module. This can be the logical -OR of any of the #GModuleFlags. -@Returns: a #GModule on success, or %NULL on failure. - - - - -Flags passed to g_module_open(). Note that these flags are -not supported on all platforms. - - -@G_MODULE_BIND_LAZY: specifies that symbols are only resolved when needed. - The default action is to bind all symbols when the module is loaded. -@G_MODULE_BIND_LOCAL: specifies that symbols in the module should - not be added to the global name space. The default action on most - platforms is to place symbols in the module in the global name space, - which may cause conflicts with existing symbols. -@G_MODULE_BIND_MASK: mask for all flags. - - - -Gets a symbol pointer from a module, such as one exported by #G_MODULE_EXPORT. - - -Note that a valid symbol can be %NULL. - - -@module: a #GModule. -@symbol_name: the name of the symbol to find. -@symbol: returns the pointer to the symbol value. -@Returns: %TRUE on success. - - - - -Gets the filename from a #GModule. - - -@module: a #GModule. -@Returns: the filename of the module, or "main" if the module is the main -program itself. - - - - -Ensures that a module will never be unloaded. -Any future g_module_close() calls on the module will be ignored. - - -@module: a #GModule to make permanently resident. - - - - -Closes a module. - - -@module: a #GModule to close. -@Returns: %TRUE on success. - - - - -Gets a string describing the last module error. - - -@Returns: a string describing the last module error. - - - - -Specifies the type of the module initialization function. -g_module_check_init -If a module contains a function named g_module_check_init() it is called -automatically when the module is loaded. It is passed the #GModule structure -and should return %NULL on success or a string describing the initialization -error. - - -@module: the #GModule corresponding to the module which has just been loaded. -@Returns: %NULL on success, or a string describing the initialization error. - - - - -g_module_unload -Specifies the type of the module function called when it is unloaded. -If a module contains a function named g_module_unload() it is called -automatically when the module is unloaded. -It is passed the #GModule structure. - - -@module: the #GModule about to be unloaded. - - - - -Expands to the proper shared library suffix for the current platform -without the leading dot. For the most Unices and Linux this is "so", -for some HP-UX versions this is "sl" and for Windows this is "dll". - - - - - - -Used to declare functions exported by modules. This is a no-op on Linux and -Unices, but when compiling for Windows, it marks a symbol to be exported from -the library or executable being built. - - - - - - -Used to declare functions imported from modules. - - - - diff --git a/docs/reference/glib/tmpl/numerical.sgml b/docs/reference/glib/tmpl/numerical.sgml deleted file mode 100644 index 271cf90..0000000 --- a/docs/reference/glib/tmpl/numerical.sgml +++ /dev/null @@ -1,122 +0,0 @@ - -Numerical Definitions - - -mathematical constants, and floating point decomposition - - - -GLib offers mathematical constants such as #G_PI for the value of pi; -many platforms have these in the C library, but some don't, the GLib -versions always exist. - - - -The #GFloatIEEE754 and #GDoubleIEEE754 unions are used to access the - sign, mantissa and exponent of IEEE floats and doubles. These - unions are defined as appropriate for a given platform. - IEEE floats and doubles are supported (used for - storage) by at least Intel, PPC and Sparc, for reference: http://cch.loria.fr/documentation/IEEE754/numerical_comp_guide/ncg_math.doc.html - - - - -http://cch.loria.fr/documentation/IEEE754/numerical_comp_guide/ncg_math.doc.html - - - - - - - -See http://cch.loria.fr/documentation/IEEE754/numerical_comp_guide/ncg_math.doc.html - - - - - - -See http://cch.loria.fr/documentation/IEEE754/numerical_comp_guide/ncg_math.doc.html - - - - - - -The #GFloatIEEE754 and #GDoubleIEEE754 unions are used to access the - sign, mantissa and exponent of IEEE floats and doubles. These - unions are defined as appropriate for a given platform. - IEEE floats and doubles are supported (used for - storage) by at least Intel, PPC and Sparc, for reference: -http://cch.loria.fr/documentation/IEEE754/numerical_comp_guide/ncg_math.doc.html - - - - - -The #GFloatIEEE754 and #GDoubleIEEE754 unions are used to access the - sign, mantissa and exponent of IEEE floats and doubles. These - unions are defined as appropriate for a given platform. - IEEE floats and doubles are supported (used for - storage) by at least Intel, PPC and Sparc, for reference: -http://cch.loria.fr/documentation/IEEE754/numerical_comp_guide/ncg_math.doc.html - - - - - -The base of natural logarithms. - - - - - - -The natural logarithm of 2. - - - - - - -The natural logarithm of 10. - - - - - - -The value of pi (ratio of circle's circumference to its diameter). - - - - - - -Pi divided by 2. - - - - - - -Pi divided by 4. - - - - - - -The square root of two. - - - - - - -Used for fooling around with float formats, see -http://cch.loria.fr/documentation/IEEE754/numerical_comp_guide/ncg_math.doc.html - - - - diff --git a/docs/reference/glib/tmpl/option.sgml b/docs/reference/glib/tmpl/option.sgml deleted file mode 100644 index 3e65869..0000000 --- a/docs/reference/glib/tmpl/option.sgml +++ /dev/null @@ -1,380 +0,0 @@ - -Commandline option parser - - - - - - - - - - - - - - - - - - - - - - - - -@G_OPTION_ERROR_UNKNOWN_OPTION: -@G_OPTION_ERROR_BAD_VALUE: -@G_OPTION_ERROR_FAILED: - - - - - - - - - - - - - -@option_name: -@value: -@data: -@error: -@Returns: - - - - - - - - - - - - - -@parameter_string: -@Returns: - - - - - - - -@context: -@summary: - - - - - - - -@context: -@Returns: - - - - - - - -@context: -@description: - - - - - - - -@context: -@Returns: - - - - - - - -@str: -@data: -@Returns: - - - - - - - -@context: -@func: -@data: -@destroy_notify: - - - - - - - -@context: -@domain: - - - - - - - -@context: - - - - - - - -@context: -@argc: -@argv: -@error: -@Returns: - - - - - - - -@context: -@help_enabled: - - - - - - - -@context: -@Returns: - - - - - - - -@context: -@ignore_unknown: - - - - - - - -@context: -@Returns: - - - - - - - -@context: -@main_help: -@group: -@Returns: - - - - - - - -@G_OPTION_ARG_NONE: -@G_OPTION_ARG_STRING: -@G_OPTION_ARG_INT: -@G_OPTION_ARG_CALLBACK: -@G_OPTION_ARG_FILENAME: -@G_OPTION_ARG_STRING_ARRAY: -@G_OPTION_ARG_FILENAME_ARRAY: -@G_OPTION_ARG_DOUBLE: -@G_OPTION_ARG_INT64: - - - - - - -@G_OPTION_FLAG_HIDDEN: -@G_OPTION_FLAG_IN_MAIN: -@G_OPTION_FLAG_REVERSE: -@G_OPTION_FLAG_NO_ARG: -@G_OPTION_FLAG_FILENAME: -@G_OPTION_FLAG_OPTIONAL_ARG: -@G_OPTION_FLAG_NOALIAS: - - - - - - - - - - - - - -@long_name: -@short_name: -@flags: -@arg: -@arg_data: -@description: -@arg_description: - - - - - - -@context: -@entries: -@translation_domain: - - - - - - - - - - - - - -@context: -@group: - - - - - - - -@context: -@group: - - - - - - - -@context: -@Returns: - - - - - - - -@name: -@description: -@help_description: -@user_data: -@destroy: -@Returns: - - - - - - - -@group: - - - - - - - -@group: -@entries: - - - - - - - -@context: -@group: -@data: -@error: -@Returns: - - - - - - - -@group: -@pre_parse_func: -@post_parse_func: - - - - - - - -@context: -@group: -@data: -@error: - - - - - - - -@group: -@error_func: - - - - - - - -@group: -@func: -@data: -@destroy_notify: - - - - - - - -@group: -@domain: - - diff --git a/docs/reference/glib/tmpl/patterns.sgml b/docs/reference/glib/tmpl/patterns.sgml deleted file mode 100644 index a749a32..0000000 --- a/docs/reference/glib/tmpl/patterns.sgml +++ /dev/null @@ -1,86 +0,0 @@ - -Glob-style pattern matching - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@pattern: -@Returns: - - - - - - - -@pspec: - - - - - - - -@pspec1: -@pspec2: -@Returns: - - - - - - - -@pspec: -@string_length: -@string: -@string_reversed: -@Returns: - - - - - - - -@pspec: -@string: -@Returns: - - - - - - - -@pattern: -@string: -@Returns: - - diff --git a/docs/reference/glib/tmpl/quarks.sgml b/docs/reference/glib/tmpl/quarks.sgml deleted file mode 100644 index e628bf8..0000000 --- a/docs/reference/glib/tmpl/quarks.sgml +++ /dev/null @@ -1,81 +0,0 @@ - -Quarks - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@string: -@Returns: - - - - - - - -@string: -@Returns: - - - - - - - -@quark: -@Returns: - - - - - - - -@string: -@Returns: - - - - - - - -@string: -@Returns: - - - - - - - -@string: -@Returns: - - diff --git a/docs/reference/glib/tmpl/queue.sgml b/docs/reference/glib/tmpl/queue.sgml deleted file mode 100644 index fbc2667..0000000 --- a/docs/reference/glib/tmpl/queue.sgml +++ /dev/null @@ -1,432 +0,0 @@ - -Double-ended Queues - - -double-ended queue data structure - - - -The #GQueue structure and its associated functions provide a standard -queue data structure. Internally, #GQueue uses the same data structure as -#GList to store elements. - - -The data contained in each element can be either integer values, by using one -of the -Type Conversion Macros, -or simply pointers to any type of data. - - -To create a new #GQueue, use g_queue_new(). - - -To initialize a statically-allocated #GQueue, use #G_QUEUE_INIT or -g_queue_init(). - - -To add elements, use g_queue_push_head(), g_queue_push_head_link(), -g_queue_push_tail() and g_queue_push_tail_link(). - - -To remove elements, use g_queue_pop_head() and g_queue_pop_tail(). - - -To free the entire queue, use g_queue_free(). - - - - - - - - - - - - -Contains the public fields of a Queue. - - -@head: a pointer to the first element of the queue. -@tail: a pointer to the last element of the queue. -@length: the number of elements in the queue. - - - - - - -@Returns: - - - - - - - -@queue: - - - - -A statically-allocated #GQueue must be initialized with this macro before it -can be used. This macro can be used to initialize a variable, but it cannot -be assigned to a variable. In that case you have to use g_queue_init(). - - - - -GQueue my_queue = G_QUEUE_INIT; - - - -@Since: 2.14 - - - - - - - -@queue: - - - - - - - -@queue: - - - - - - - -@queue: -@Returns: - - - - - - - -@queue: -@Returns: - - - - - - - -@queue: - - - - - - - -@queue: -@Returns: - - - - - - - -@queue: -@func: -@user_data: - - - - - - - -@queue: -@data: -@Returns: - - - - - - - -@queue: -@data: -@func: -@Returns: - - - - - - - -@queue: -@compare_func: -@user_data: - - - - - - - -@queue: -@data: - - - - - - - -@queue: -@data: - - - - - - - -@queue: -@data: -@n: - - - - - - - -@queue: -@Returns: - - - - - - - -@queue: -@Returns: - - - - - - - -@queue: -@n: -@Returns: - - - - - - - -@queue: -@Returns: - - - - - - - -@queue: -@Returns: - - - - - - - -@queue: -@n: -@Returns: - - - - - - - -@queue: -@data: -@Returns: - - - - - - - -@queue: -@data: - - - - - - - -@queue: -@data: - - - - - - - -@queue: -@sibling: -@data: - - - - - - - -@queue: -@sibling: -@data: - - - - - - - -@queue: -@data: -@func: -@user_data: - - - - - - - -@queue: -@link_: - - - - - - - -@queue: -@link_: - - - - - - - -@queue: -@n: -@link_: - - - - - - - -@queue: -@Returns: - - - - - - - -@queue: -@Returns: - - - - - - - -@queue: -@n: -@Returns: - - - - - - - -@queue: -@Returns: - - - - - - - -@queue: -@Returns: - - - - - - - -@queue: -@n: -@Returns: - - - - - - - -@queue: -@link_: -@Returns: - - - - - - - -@queue: -@link_: - - - - - - - -@queue: -@link_: - - diff --git a/docs/reference/glib/tmpl/random_numbers.sgml b/docs/reference/glib/tmpl/random_numbers.sgml deleted file mode 100644 index c59bf94..0000000 --- a/docs/reference/glib/tmpl/random_numbers.sgml +++ /dev/null @@ -1,189 +0,0 @@ - -Random Numbers - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@seed: -@Returns: - - - - - - - -@seed: -@seed_length: -@Returns: - - - - - - - -@Returns: - - - - - - - -@rand_: -@Returns: - - - - - - - -@rand_: - - - - - - - -@rand_: -@seed: - - - - - - - -@rand_: -@seed: -@seed_length: - - - - - - - -@rand_: - - - - - - - -@rand_: -@Returns: - - - - - - - -@rand_: -@begin: -@end: -@Returns: - - - - - - - -@rand_: -@Returns: - - - - - - - -@rand_: -@begin: -@end: -@Returns: - - - - - - - -@seed: - - - - - - - - - - - - - - -@Returns: - - - - - - - -@begin: -@end: -@Returns: - - - - - - - -@Returns: - - - - - - - -@begin: -@end: -@Returns: - - diff --git a/docs/reference/glib/tmpl/relations.sgml b/docs/reference/glib/tmpl/relations.sgml deleted file mode 100644 index a77f4c7..0000000 --- a/docs/reference/glib/tmpl/relations.sgml +++ /dev/null @@ -1,141 +0,0 @@ - -Relations and Tuples - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@fields: -@Returns: - - - - - - - -@relation: -@field: -@hash_func: -@key_equal_func: - - - - - - - -@relation: -@Varargs: - - - - - - - -@relation: -@Varargs: -@Returns: - - - - - - - -@relation: -@key: -@field: -@Returns: - - - - - - - -@relation: -@key: -@field: -@Returns: - - - - - - - -@relation: -@key: -@field: -@Returns: - - - - - - - -@relation: - - - - - - - -@relation: - - - - - - - -@len: - - - - - - -@tuples: - - - - - - - -@tuples: -@index_: -@field: -@Returns: - - diff --git a/docs/reference/glib/tmpl/scanner.sgml b/docs/reference/glib/tmpl/scanner.sgml deleted file mode 100644 index dc9da80..0000000 --- a/docs/reference/glib/tmpl/scanner.sgml +++ /dev/null @@ -1,604 +0,0 @@ - -Lexical Scanner - - -a general purpose lexical scanner - - - -The #GScanner and its associated functions provide a general purpose -lexical scanner. - - - - - - - - - - - - - - -The data structure representing a lexical scanner. - - -You should set input_name after creating -the scanner, since it is used by the default message handler when -displaying warnings and errors. If you are scanning a file, the file -name would be a good choice. - - -The user_data and -max_parse_errors fields are not used. -If you need to associate extra data with the scanner you can place them here. - - -If you want to use your own message handler you can set the -msg_handler field. The type of the message -handler function is declared by #GScannerMsgFunc. - - -@user_data: -@max_parse_errors: -@parse_errors: -@input_name: -@qdata: -@config: -@token: token parsed by the last g_scanner_get_next_token() -@value: value of the last token from g_scanner_get_next_token() -@line: line number of the last token from g_scanner_get_next_token() -@position: char number of the last token from g_scanner_get_next_token() -@next_token: token parsed by the last g_scanner_peek_next_token() -@next_value: value of the last token from g_scanner_peek_next_token() -@next_line: line number of the last token from g_scanner_peek_next_token() -@next_position: char number of the last token from g_scanner_peek_next_token() -@symbol_table: -@input_fd: -@text: -@text_end: -@buffer: -@scope_id: -@msg_handler: function to handle GScanner message output - - - -Specifies the #GScanner parser configuration. Most settings can be changed during -the parsing phase and will affect the lexical parsing of the next unpeeked token. - - -cset_skip_characters specifies which characters -should be skipped by the scanner (the default is the whitespace characters: -space, tab, carriage-return and line-feed). - - -cset_identifier_first specifies the characters -which can start identifiers (the default is #G_CSET_a_2_z, "_", and -#G_CSET_A_2_Z). - - -cset_identifier_nth specifies the characters -which can be used in identifiers, after the first character (the default -is #G_CSET_a_2_z, "_0123456789", #G_CSET_A_2_Z, #G_CSET_LATINS, -#G_CSET_LATINC). - - -cpair_comment_single specifies the characters -at the start and end of single-line comments. The default is "#\n" which -means that single-line comments start with a '#' and continue until a '\n' -(end of line). - - -case_sensitive specifies if symbols are -case sensitive (the default is %FALSE). - - -skip_comment_multi specifies if multi-line -comments are skipped and not returned as tokens (the default is %TRUE). - - -skip_comment_single specifies if single-line -comments are skipped and not returned as tokens (the default is %TRUE). - - -scan_comment_multi specifies if multi-line -comments are recognized (the default is %TRUE). - - -scan_identifier specifies if identifiers -are recognized (the default is %TRUE). - - -scan_identifier_1char specifies if single-character -identifiers are recognized (the default is %FALSE). - - -scan_identifier_NULL specifies if -NULL is reported as #G_TOKEN_IDENTIFIER_NULL. -(the default is %FALSE). - - -scan_symbols specifies if symbols are -recognized (the default is %TRUE). - - -scan_binary specifies if binary numbers -are recognized (the default is %FALSE). - - -scan_octal specifies if octal numbers -are recognized (the default is %TRUE). - - -scan_float specifies if floating point numbers -are recognized (the default is %TRUE). - - -scan_hex specifies if hexadecimal numbers -are recognized (the default is %TRUE). - - -scan_hex_dollar specifies if '$' is recognized -as a prefix for hexadecimal numbers (the default is %FALSE). - - -scan_string_sq specifies if strings can be -enclosed in single quotes (the default is %TRUE). - - -scan_string_dq specifies if strings can be -enclosed in double quotes (the default is %TRUE). - - -numbers_2_int specifies if binary, octal and -hexadecimal numbers are reported as #G_TOKEN_INT (the default is %TRUE). - - -int_2_float specifies if all numbers are -reported as #G_TOKEN_FLOAT (the default is %FALSE). - - -identifier_2_string specifies if identifiers -are reported as strings (the default is %FALSE). - - -char_2_token specifies if characters -are reported by setting token = ch or as #G_TOKEN_CHAR -(the default is %TRUE). - - -symbol_2_token specifies if symbols -are reported by setting token = v_symbol or as -#G_TOKEN_SYMBOL (the default is %FALSE). - - -scope_0_fallback specifies if a symbol -is searched for in the default scope in addition to the current scope -(the default is %FALSE). - - -@cset_skip_characters: -@cset_identifier_first: -@cset_identifier_nth: -@cpair_comment_single: -@case_sensitive: -@skip_comment_multi: -@skip_comment_single: -@scan_comment_multi: -@scan_identifier: -@scan_identifier_1char: -@scan_identifier_NULL: -@scan_symbols: -@scan_binary: -@scan_octal: -@scan_float: -@scan_hex: -@scan_hex_dollar: -@scan_string_sq: -@scan_string_dq: -@numbers_2_int: -@int_2_float: -@identifier_2_string: -@char_2_token: -@symbol_2_token: -@scope_0_fallback: -@store_int64: -@padding_dummy: - - - -Creates a new #GScanner. -The @config_templ structure specifies the initial settings of the scanner, -which are copied into the #GScanner config field. -If you pass %NULL then the default settings are used. - - -@config_templ: the initial scanner settings. -@Returns: the new #GScanner. - - - - -Frees all memory used by the #GScanner. - - -@scanner: a #GScanner. - - - - -Prepares to scan a file. - - -@scanner: a #GScanner. -@input_fd: a file descriptor. - - - - -Rewinds the filedescriptor to the current buffer position and blows -the file read ahead buffer. This is useful for third party uses of -the scanners filedescriptor, which hooks onto the current scanning -position. - - -@scanner: a #GScanner. - - - - -Prepares to scan a text buffer. - - -@scanner: a #GScanner. -@text: the text buffer to scan. -@text_len: the length of the text buffer. - - - - -Parses the next token, without removing it from the input stream. -The token data is placed in the -next_token, -next_value, -next_line, and -next_position fields of the #GScanner structure. - - -Note that, while the token is not removed from the input stream (i.e. -the next call to g_scanner_get_next_token() will return the same token), -it will not be reevaluated. This can lead to surprising results when -changing scope or the scanner configuration after peeking the next token. -Getting the next token after switching the scope or configuration will -return whatever was peeked before, regardless of any symbols that may -have been added or removed in the new scope. - - -@scanner: a #GScanner. -@Returns: the type of the token. - - - - -Parses the next token just like g_scanner_peek_next_token() and also -removes it from the input stream. -The token data is placed in the -token, -value, -line, and -position fields of the #GScanner structure. - - -@scanner: a #GScanner. -@Returns: the type of the token. - - - - -Returns %TRUE if the scanner has reached the end of the file or text buffer. - - -@scanner: a #GScanner. -@Returns: %TRUE if the scanner has reached the end of the file or text buffer. - - - - -Returns the current line in the input stream (counting from 1). -This is the line of the last token parsed via g_scanner_get_next_token(). - - -@scanner: a #GScanner. -@Returns: the current line. - - - - -Returns the current position in the current line (counting from 0). -This is the position of the last token parsed via g_scanner_get_next_token(). - - -@scanner: a #GScanner. -@Returns: the current position on the line. - - - - -Gets the current token type. -This is simply the token field in the #GScanner -structure. - - -@scanner: a #GScanner. -@Returns: the current token type. - - - - -Gets the current token value. -This is simply the value field in the #GScanner -structure. - - -@scanner: a #GScanner. -@Returns: the current token value. - - - - -Sets the current scope. - - -@scanner: a #GScanner. -@scope_id: the new scope id. -@Returns: the old scope id. - - - - -Adds a symbol to the given scope. - - -@scanner: a #GScanner. -@scope_id: the scope id. -@symbol: the symbol to add. -@value: the value of the symbol. - - - - -Calls the given function for each of the symbol/value pairs in the -given scope of the #GScanner. The function is passed the symbol and -value of each pair, and the given @user_data parameter. - - -@scanner: a #GScanner. -@scope_id: the scope id. -@func: the function to call for each symbol/value pair. -@user_data: user data to pass to the function. - - - - -Looks up a symbol in a scope and return its value. If the -symbol is not bound in the scope, %NULL is returned. - - -@scanner: a #GScanner. -@scope_id: the scope id. -@symbol: the symbol to look up. -@Returns: the value of @symbol in the given scope, or %NULL -if @symbol is not bound in the given scope. - - - - -Removes a symbol from a scope. - - -@scanner: a #GScanner. -@scope_id: the scope id. -@symbol: the symbol to remove. - - - - -Adds a symbol to the default scope. - - -@scanner: a #GScanner. -@symbol: the symbol to add. -@value: the value of the symbol. -@Deprecated: 2.2: Use g_scanner_scope_add_symbol() instead. - - - - -Removes a symbol from the default scope. - - -@scanner: a #GScanner. -@symbol: the symbol to remove. -@Deprecated: 2.2: Use g_scanner_scope_remove_symbol() instead. - - - - -Calls a function for each symbol in the default scope. - - -@scanner: a #GScanner. -@func: the function to call with each symbol. -@data: data to pass to the function. -@Deprecated: 2.2: Use g_scanner_scope_foreach_symbol() instead. - - - - -There is no reason to use this macro, since it does nothing. - - -@scanner: a #GScanner. -@Deprecated: 2.2: This macro does nothing. - - - - -There is no reason to use this macro, since it does nothing. - - -@scanner: a #GScanner. -@Deprecated: 2.2: This macro does nothing. - - - - -Looks up a symbol in the current scope and return its value. If the -symbol is not bound in the current scope, %NULL is returned. - - -@scanner: a #GScanner. -@symbol: the symbol to look up. -@Returns: the value of @symbol in the current scope, or %NULL -if @symbol is not bound in the current scope. - - - - -Outputs a warning message, via the #GScanner message handler. - - -@scanner: a #GScanner. -@format: the message format. See the printf() -documentation. -@Varargs: the parameters to insert into the format string. - - - - -Outputs an error message, via the #GScanner message handler. - - -@scanner: a #GScanner. -@format: the message format. See the printf() -documentation. -@Varargs: the parameters to insert into the format string. - - - - -Outputs a message through the scanner's msg_handler, resulting from an -unexpected token in the input stream. -Note that you should not call g_scanner_peek_next_token() followed by -g_scanner_unexp_token() without an intermediate call to -g_scanner_get_next_token(), as g_scanner_unexp_token() evaluates the -scanner's current token (not the peeked token) to construct part -of the message. - - -@scanner: a #GScanner. -@expected_token: the expected token. -@identifier_spec: a string describing how the scanner's user refers to - identifiers (%NULL defaults to "identifier"). - This is used if @expected_token is #G_TOKEN_IDENTIFIER - or #G_TOKEN_IDENTIFIER_NULL. -@symbol_spec: a string describing how the scanner's user refers to - symbols (%NULL defaults to "symbol"). - This is used if @expected_token is #G_TOKEN_SYMBOL or - any token value greater than #G_TOKEN_LAST. -@symbol_name: the name of the symbol, if the scanner's current token - is a symbol. -@message: a message string to output at the end of the warning/error, or %NULL. -@is_error: if %TRUE it is output as an error. If %FALSE it is output as a - warning. - - - - -Specifies the type of the message handler function. - - -@scanner: a #GScanner. -@message: the message. -@error: %TRUE if the message signals an error, %FALSE if it - signals a warning. - - - - -The set of lowercase ASCII alphabet characters. -Used for specifying valid identifier characters in #GScannerConfig. - - - - - - -The set of uppercase ASCII alphabet characters. -Used for specifying valid identifier characters in #GScannerConfig. - - - - - - -The set of digits. -Used for specifying valid identifier characters in #GScannerConfig. - - - - - - -The set of uppercase ISO 8859-1 alphabet characters which are -not ASCII characters. -Used for specifying valid identifier characters in #GScannerConfig. - - - - - - -The set of lowercase ISO 8859-1 alphabet characters which are -not ASCII characters. -Used for specifying valid identifier characters in #GScannerConfig. - - - - - - -The possible types of token returned from each g_scanner_get_next_token() call. - - -@G_TOKEN_EOF: the end of the file. -@G_TOKEN_LEFT_PAREN: a '(' character. -@G_TOKEN_LEFT_CURLY: a '{' character. -@G_TOKEN_RIGHT_CURLY: a '}' character. - - - -A union holding the value of the token. - - - - - -The possible errors, used in the v_error field -of #GTokenValue, when the token is a #G_TOKEN_ERROR. - - -@G_ERR_UNKNOWN: unknown error. -@G_ERR_UNEXP_EOF: unexpected end of file. -@G_ERR_UNEXP_EOF_IN_STRING: unterminated string constant. -@G_ERR_UNEXP_EOF_IN_COMMENT: unterminated comment. -@G_ERR_NON_DIGIT_IN_CONST: non-digit character in a number. -@G_ERR_DIGIT_RADIX: digit beyond radix in a number. -@G_ERR_FLOAT_RADIX: non-decimal floating point number. -@G_ERR_FLOAT_MALFORMED: malformed floating point number. - diff --git a/docs/reference/glib/tmpl/sequence.sgml b/docs/reference/glib/tmpl/sequence.sgml deleted file mode 100644 index 7428a6d..0000000 --- a/docs/reference/glib/tmpl/sequence.sgml +++ /dev/null @@ -1,384 +0,0 @@ - -Sequences - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@a: -@b: -@data: -@Returns: - - - - - - - -@data_destroy: -@Returns: - - - - - - - -@seq: - - - - - - - -@seq: -@Returns: - - - - - - - -@seq: -@func: -@user_data: - - - - - - - -@begin: -@end: -@func: -@user_data: - - - - - - - -@seq: -@cmp_func: -@cmp_data: - - - - - - - -@seq: -@cmp_func: -@cmp_data: - - - - - - - -@seq: -@Returns: - - - - - - - -@seq: -@Returns: - - - - - - - -@seq: -@pos: -@Returns: - - - - - - - -@seq: -@data: -@Returns: - - - - - - - -@seq: -@data: -@Returns: - - - - - - - -@iter: -@data: -@Returns: - - - - - - - -@src: -@dest: - - - - - - - -@a: -@b: - - - - - - - -@seq: -@data: -@cmp_func: -@cmp_data: -@Returns: - - - - - - - -@seq: -@data: -@iter_cmp: -@cmp_data: -@Returns: - - - - - - - -@iter: -@cmp_func: -@cmp_data: - - - - - - - -@iter: -@iter_cmp: -@cmp_data: - - - - - - - -@iter: - - - - - - - -@begin: -@end: - - - - - - - -@dest: -@begin: -@end: - - - - - - - -@seq: -@data: -@cmp_func: -@cmp_data: -@Returns: - - - - - - - -@seq: -@data: -@iter_cmp: -@cmp_data: -@Returns: - - - - - - - -@iter: -@Returns: - - - - - - - -@iter: -@data: - - - - - - - -@iter: -@Returns: - - - - - - - -@iter: -@Returns: - - - - - - - -@iter: -@Returns: - - - - - - - -@iter: -@Returns: - - - - - - - -@iter: -@Returns: - - - - - - - -@iter: -@delta: -@Returns: - - - - - - - -@iter: -@Returns: - - - - - - - -@a: -@b: -@Returns: - - - - - - - -@begin: -@end: -@Returns: - - diff --git a/docs/reference/glib/tmpl/shell.sgml b/docs/reference/glib/tmpl/shell.sgml deleted file mode 100644 index 26638ac..0000000 --- a/docs/reference/glib/tmpl/shell.sgml +++ /dev/null @@ -1,68 +0,0 @@ - -Shell-related Utilities - - - - - - - - - - - - - - - - - - - - - - - - -@G_SHELL_ERROR_BAD_QUOTING: -@G_SHELL_ERROR_EMPTY_STRING: -@G_SHELL_ERROR_FAILED: - - - - - - - - - - - - - -@command_line: -@argcp: -@argvp: -@error: -@Returns: - - - - - - - -@unquoted_string: -@Returns: - - - - - - - -@quoted_string: -@error: -@Returns: - - diff --git a/docs/reference/glib/tmpl/spawn.sgml b/docs/reference/glib/tmpl/spawn.sgml deleted file mode 100644 index c0f8d25..0000000 --- a/docs/reference/glib/tmpl/spawn.sgml +++ /dev/null @@ -1,195 +0,0 @@ - -Spawning Processes - - -process launching - - - - - - - - - - - - - - - - -Error codes returned by spawning processes. - - -@G_SPAWN_ERROR_FORK: Fork failed due to lack of memory. -@G_SPAWN_ERROR_READ: Read or select on pipes failed. -@G_SPAWN_ERROR_CHDIR: Changing to working directory failed. -@G_SPAWN_ERROR_ACCES: execv() returned %EACCES. -@G_SPAWN_ERROR_PERM: execv() returned %EPERM. -@G_SPAWN_ERROR_2BIG: execv() returned %E2BIG. -@G_SPAWN_ERROR_NOEXEC: execv() returned %ENOEXEC. -@G_SPAWN_ERROR_NAMETOOLONG: execv() returned %ENAMETOOLONG. -@G_SPAWN_ERROR_NOENT: execv() returned %ENOENT. -@G_SPAWN_ERROR_NOMEM: execv() returned %ENOMEM. -@G_SPAWN_ERROR_NOTDIR: execv() returned %ENOTDIR. -@G_SPAWN_ERROR_LOOP: execv() returned %ELOOP. -@G_SPAWN_ERROR_TXTBUSY: execv() returned %ETXTBUSY. -@G_SPAWN_ERROR_IO: execv() returned %EIO. -@G_SPAWN_ERROR_NFILE: execv() returned %ENFILE. -@G_SPAWN_ERROR_MFILE: execv() returned %EMFILE. -@G_SPAWN_ERROR_INVAL: execv() returned %EINVAL. -@G_SPAWN_ERROR_ISDIR: execv() returned %EISDIR. -@G_SPAWN_ERROR_LIBBAD: execv() returned %ELIBBAD. -@G_SPAWN_ERROR_FAILED: Some other fatal failure, error->message should explain. - - - -Error domain for spawning processes. Errors in this domain will -be from the #GSpawnError enumeration. See #GError for information on -error domains. - - - - - - -Flags passed to g_spawn_sync(), g_spawn_async() and g_spawn_async_with_pipes(). - - -@G_SPAWN_LEAVE_DESCRIPTORS_OPEN: the parent's open file descriptors will be - inherited by the child; otherwise all descriptors except stdin/stdout/stderr - will be closed before calling exec() in the child. -@G_SPAWN_DO_NOT_REAP_CHILD: the child will not be automatically reaped; you - must use g_child_watch_add() yourself (or call waitpid() - or handle SIGCHLD yourself), or the child will become a zombie. -@G_SPAWN_SEARCH_PATH: argv[0] need not be an absolute path, - it will be looked for in the user's PATH. -@G_SPAWN_STDOUT_TO_DEV_NULL: the child's standard output will be discarded, - instead of going to the same location as the parent's standard output. -@G_SPAWN_STDERR_TO_DEV_NULL: the child's standard error will be discarded. -@G_SPAWN_CHILD_INHERITS_STDIN: the child will inherit the parent's standard - input (by default, the child's standard input is attached to - /dev/null). -@G_SPAWN_FILE_AND_ARGV_ZERO: the first element of argv is - the file to execute, while the remaining elements are the actual argument - vector to pass to the file. Normally g_spawn_async_with_pipes() uses - argv[0] as the file to execute, and passes all of - argv to the child. - - - -Specifies the type of the setup function passed to g_spawn_async(), -g_spawn_sync() and g_spawn_async_with_pipes(). On POSIX platforms it -is called in the child after GLib has performed all the setup it plans -to perform but before calling exec(). On POSIX actions taken in this -function will thus only affect the child, not the parent. - - - -Note that POSIX allows only async-signal-safe functions (see signal(7)) -to be called in the child between fork() and exec(), which drastically -limits the usefulness of child setup functions. - - - -Also note that modifying the environment from the child setup function -may not have the intended effect, since it will get overridden by -a non-%NULL @env argument to the g_spawn... functions. - - - -On Windows the function is called in the parent. Its usefulness on -Windows is thus questionable. In many cases executing the child setup -function in the parent can have ill effects, and you should be very -careful when porting software to Windows that uses child setup -functions. - - -@user_data: user data to pass to the function. - - - - - - - -@working_directory: -@argv: -@envp: -@flags: -@child_setup: -@user_data: -@child_pid: -@standard_input: -@standard_output: -@standard_error: -@error: -@Returns: - - - - - - - -@working_directory: -@argv: -@envp: -@flags: -@child_setup: -@user_data: -@child_pid: -@error: -@Returns: - - - - - - - -@working_directory: -@argv: -@envp: -@flags: -@child_setup: -@user_data: -@standard_output: -@standard_error: -@exit_status: -@error: -@Returns: - - - - - - - -@command_line: -@error: -@Returns: - - - - - - - -@command_line: -@standard_output: -@standard_error: -@exit_status: -@error: -@Returns: - - - - - - - -@pid: - - diff --git a/docs/reference/glib/tmpl/string_chunks.sgml b/docs/reference/glib/tmpl/string_chunks.sgml deleted file mode 100644 index 7da9591..0000000 --- a/docs/reference/glib/tmpl/string_chunks.sgml +++ /dev/null @@ -1,83 +0,0 @@ - -String Chunks - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@size: -@Returns: - - - - - - - -@chunk: -@string: -@Returns: - - - - - - - -@chunk: -@string: -@Returns: - - - - - - - -@chunk: -@string: -@len: -@Returns: - - - - - - - -@chunk: - - - - - - - -@chunk: - - diff --git a/docs/reference/glib/tmpl/string_utils.sgml b/docs/reference/glib/tmpl/string_utils.sgml deleted file mode 100644 index faaec7d..0000000 --- a/docs/reference/glib/tmpl/string_utils.sgml +++ /dev/null @@ -1,900 +0,0 @@ - -String Utility Functions - - -various string-related functions - - - -This section describes a number of utility functions for creating, -duplicating, and manipulating strings. - - -Note that the functions g_printf(), g_fprintf(), g_sprintf(), g_snprintf(), -g_vprintf(), g_vfprintf(), g_vsprintf() and g_vsnprintf() are declared in -the header gprintf.h which is not -included in glib.h (otherwise using -glib.h would drag in stdio.h), so -you'll have to explicitly include <glib/gprintf.h> -in order to use the GLib printf() functions. - - -While you may use the printf() functions to format UTF-8 strings, notice that -the precision of a %Ns parameter is interpreted as the -number of bytes, not characters to print. -On top of that, the GNU libc implementation of the printf() functions has the "feature" -that it checks that the string given for the %Ns parameter -consists of a whole number of characters in the current encoding. So, unless you -are sure you are always going to be in an UTF-8 locale or your know your text is restricted -to ASCII, avoid using %Ns. -If your intention is to format strings for a certain number of columns, then -%Ns is not a correct solution anyway, since it fails to take -wide characters (see g_unichar_iswide()) into account. - - - - - - - - - - - - - - - -@str: -@Returns: - - - - - - - -@str: -@n: -@Returns: - - - - - - -@str_array: -@Returns: - - - - - - - -@length: -@fill_char: -@Returns: - - - - - - - -@dest: -@src: -@Returns: - - - - - - - -@haystack: -@haystack_len: -@needle: -@Returns: - - - - - - - -@haystack: -@needle: -@Returns: - - - - - - - -@haystack: -@haystack_len: -@needle: -@Returns: - - - - - - - -@str: -@prefix: -@Returns: - - - - - - - -@str: -@suffix: -@Returns: - - - - - - - -@str1: -@str2: -@Returns: - - - - - - - -@dest: -@src: -@dest_size: -@Returns: - - - - - - - -@dest: -@src: -@dest_size: -@Returns: - - - - - - -@format: -@Varargs: -@Returns: - - - - - - - -@format: -@args: -@Returns: - - - - - - - -@format: -@Varargs: -@Returns: - - - - - - - -@format: -@args: -@Returns: - - - - - - - -@file: -@format: -@Varargs: -@Returns: - - - - - - - -@file: -@format: -@args: -@Returns: - - - - - - - -@string: -@format: -@Varargs: -@Returns: - - - - - - - -@string: -@format: -@args: -@Returns: - - - - - - -@string: -@n: -@format: -@Varargs: -@Returns: - - - - - - -@string: -@n: -@format: -@args: -@Returns: - - - - - - - -@string: -@format: -@args: -@Returns: - - - - -Calculates the maximum space needed to store the output of the sprintf() -function. - - -@format: the format string. See the printf() documentation. -@args: the parameters to be inserted into the format string. -@Returns: the maximum space needed to store the formatted string. - - - - -Determines whether a character is alphanumeric. - - -Unlike the standard C library isalnum() function, this only -recognizes standard ASCII letters and ignores the locale, returning -%FALSE for all non-ASCII characters. Also unlike the standard -library function, this takes a char, not an int, -so don't call it on %EOF but no need to cast to #guchar before passing a -possibly non-ASCII character in. - - -@c: any character -@Returns: %TRUE if @c is an ASCII alphanumeric character - - - - -Determines whether a character is alphabetic (i.e. a letter). - - -Unlike the standard C library isalpha() function, this only -recognizes standard ASCII letters and ignores the locale, returning -%FALSE for all non-ASCII characters. Also unlike the standard -library function, this takes a char, not an int, -so don't call it on %EOF but no need to cast to #guchar before passing a -possibly non-ASCII character in. - - -@c: any character -@Returns: %TRUE if @c is an ASCII alphabetic character - - - - -Determines whether a character is a control character. - - -Unlike the standard C library iscntrl() function, this only -recognizes standard ASCII control characters and ignores the locale, -returning %FALSE for all non-ASCII characters. Also unlike the standard -library function, this takes a char, not an int, -so don't call it on %EOF but no need to cast to #guchar before passing a -possibly non-ASCII character in. - - -@c: any character -@Returns: %TRUE if @c is an ASCII control character. - - - - -Determines whether a character is digit (0-9). - - -Unlike the standard C library isdigit() function, -this takes a char, not an int, so don't call it -on %EOF but no need to cast to #guchar before passing a possibly -non-ASCII character in. - - -@c: any character -@Returns: %TRUE if @c is an ASCII digit. - - - - -Determines whether a character is a printing character and not a space. - - -Unlike the standard C library isgraph() function, -this only recognizes standard ASCII characters and ignores the locale, -returning %FALSE for all non-ASCII characters. Also unlike the standard -library function, this takes a char, not an int, -so don't call it on %EOF but no need to cast to #guchar before passing a -possibly non-ASCII character in. - - -@c: any character -@Returns: %TRUE if @c is an ASCII printing character other than space. - - - - -Determines whether a character is an ASCII lower case letter. - - -Unlike the standard C library islower() function, -this only recognizes standard ASCII letters and ignores the locale, -returning %FALSE for all non-ASCII characters. Also unlike the standard -library function, this takes a char, not an int, -so don't call it on %EOF but no need to worry about casting to #guchar -before passing a possibly non-ASCII character in. - - -@c: any character -@Returns: %TRUE if @c is an ASCII lower case letter - - - - -Determines whether a character is a printing character. - - -Unlike the standard C library isprint() function, -this only recognizes standard ASCII characters and ignores the locale, -returning %FALSE for all non-ASCII characters. Also unlike the standard -library function, this takes a char, not an int, -so don't call it on %EOF but no need to cast to #guchar before passing a -possibly non-ASCII character in. - - -@c: any character -@Returns: %TRUE if @c is an ASCII printing character. - - - - -Determines whether a character is a punctuation character. - - -Unlike the standard C library ispunct() function, -this only recognizes standard ASCII letters and ignores the locale, -returning %FALSE for all non-ASCII characters. Also unlike the standard -library function, this takes a char, not an int, -so don't call it on %EOF but no need to cast to #guchar before passing a -possibly non-ASCII character in. - - -@c: any character -@Returns: %TRUE if @c is an ASCII punctuation character. - - - - -Determines whether a character is a white-space character. - - -Unlike the standard C library isspace() function, -this only recognizes standard ASCII white-space and ignores the locale, -returning %FALSE for all non-ASCII characters. Also unlike the standard -library function, this takes a char, not an int, -so don't call it on %EOF but no need to cast to #guchar before passing a -possibly non-ASCII character in. - - -@c: any character -@Returns: %TRUE if @c is an ASCII white-space character - - - - -Determines whether a character is an ASCII upper case letter. - - -Unlike the standard C library isupper() function, -this only recognizes standard ASCII letters and ignores the locale, -returning %FALSE for all non-ASCII characters. Also unlike the standard -library function, this takes a char, not an int, -so don't call it on %EOF but no need to worry about casting to #guchar -before passing a possibly non-ASCII character in. - - -@c: any character -@Returns: %TRUE if @c is an ASCII upper case letter - - - - -Determines whether a character is a hexadecimal-digit character. - - -Unlike the standard C library isxdigit() function, -this takes a char, not an int, so -don't call it on %EOF but no need to cast to #guchar before passing a -possibly non-ASCII character in. - - -@c: any character -@Returns: %TRUE if @c is an ASCII hexadecimal-digit character. - - - - - - - -@c: -@Returns: - - - - - - - -@c: -@Returns: - - - - - - - -@s1: -@s2: -@Returns: - - - - - - - -@s1: -@s2: -@n: -@Returns: - - - - - - - -@str: -@len: -@Returns: - - - - - - - -@str: -@len: -@Returns: - - - - - - - -@c: -@Returns: - - - - - - - -@c: -@Returns: - - - - - - - -@string: -@Returns: - - - - - - - -@string: -@Returns: - - - - - - -@string: -@Returns: - - - - - - -@string: -@Returns: - - - - - - -@s1: -@s2: -@Returns: - - - - - - -@s1: -@s2: -@n: -@Returns: - - - - - - - -@string: -@Returns: - - - - - - - -@nptr: -@endptr: -@base: -@Returns: - - - - - - - -@nptr: -@endptr: -@base: -@Returns: - - - - -A good size for a buffer to be passed into g_ascii_dtostr(). -It is guaranteed to be enough for all output of that function on systems with - 64bit IEEE-compatible doubles. - - -The typical usage would be something like: - - char buf[G_ASCII_DTOSTR_BUF_SIZE]; - - fprintf (out, "value=%s\n", g_ascii_dtostr (buf, sizeof (buf), value)); - - - - - - - - - - -@nptr: -@endptr: -@Returns: - - - - - - - -@buffer: -@buf_len: -@d: -@Returns: - - - - - - - -@buffer: -@buf_len: -@format: -@d: -@Returns: - - - - - - - -@nptr: -@endptr: -@Returns: - - - - -Removes leading whitespace from a string, by moving the rest of the -characters forward. - - -This function doesn't allocate or reallocate any memory; it modifies @string -in place. The pointer to @string is returned to allow the nesting of functions. - - -Also see g_strchomp() and g_strstrip(). - - -@string: a string to remove the leading whitespace from. -@Returns: @string. - - - - -Removes trailing whitespace from a string. - - -This function doesn't allocate or reallocate any memory; it modifies @string in -place. The pointer to @string is returned to allow the nesting of functions. - - -Also see g_strchug() and g_strstrip(). - - -@string: a string to remove the trailing whitespace from. -@Returns: @string. - - - - -Removes leading and trailing whitespace from a string. See g_strchomp() and -g_strchug(). - - -@string: a string to remove the leading and trailing whitespace from. - - - - -Converts any delimiter characters in @string to @new_delimiter. -Any characters in @string which are found in @delimiters are changed -to the @new_delimiter character. Modifies @string in place, and returns -@string itself, not a copy. The return value is to allow nesting such as -g_ascii_strup (g_strdelimit (str, "abc", '?')). - - -@string: the string to convert. -@delimiters: a string containing the current delimiters, or %NULL to use the -standard delimiters defined in #G_STR_DELIMITERS. -@new_delimiter: the new delimiter character. -@Returns: @string. - - - - -The standard delimiters, used in g_strdelimit(). - - - - - - -Escapes the special characters '\b', '\f', '\n', '\r', '\t', '\' and -'"' in the string @source by inserting a '\' before -them. Additionally all characters in the range 0x01-0x1F (everything -below SPACE) and in the range 0x7F-0xFF (all non-ASCII chars) are -replaced with a '\' followed by their octal representation. Characters -supplied in @exceptions are not escaped. - - - -g_strcompress() does the reverse conversion. - - -@source: a string to escape. -@exceptions: a string of characters not to escape in @source. -@Returns: a newly-allocated copy of @source with certain -characters escaped. See above. - - - - -Replaces all escaped characters with their one byte equivalent. It -does the reverse conversion of g_strescape(). - - -@source: a string to compress. -@Returns: a newly-allocated copy of @source with all escaped -character compressed. - - - - -For each character in @string, if the character is not in @valid_chars, -replaces the character with @substitutor. Modifies @string in place, -and return @string itself, not a copy. The return value is to allow -nesting such as g_ascii_strup (g_strcanon (str, "abc", '?')). - - -@string: a nul-terminated array of bytes. -@valid_chars: bytes permitted in @string. -@substitutor: replacement character for disallowed bytes. -@Returns: @string. - - - - - - -@string: -@delimiter: -@max_tokens: -@Returns: - - - - - - - -@string: -@delimiters: -@max_tokens: -@Returns: - - - - - - - -@str_array: - - - - - - - -@string1: -@Varargs: -@Returns: - - - - - - - -@separator: -@Varargs: -@Returns: - - - - - - - -@separator: -@str_array: -@Returns: - - - - - - - -@str_array: -@Returns: - - - - - - - -@errnum: -@Returns: - - - - - - - -@signum: -@Returns: - - diff --git a/docs/reference/glib/tmpl/strings.sgml b/docs/reference/glib/tmpl/strings.sgml deleted file mode 100644 index 58a1307..0000000 --- a/docs/reference/glib/tmpl/strings.sgml +++ /dev/null @@ -1,365 +0,0 @@ - -Strings - - -text buffers which grow automatically as text is added - - - -A #GString is similar to a standard C string, except that it grows -automatically as text is appended or inserted. Also, it stores the -length of the string, so can be used for binary data with embedded -nul bytes. - - - - - - - - - - - - -The #GString struct contains the public fields of a #GString. - - -@str: points to the character data. It may move as text is added. - The str field is nul-terminated and so - can be used as an ordinary C string. -@len: contains the length of the string, not including the - terminating nul byte. -@allocated_len: the number of bytes that can be stored in the - string before it needs to be reallocated. May be larger than @len. - - - - - - -@init: -@Returns: - - - - - - - -@init: -@len: -@Returns: - - - - - - - -@dfl_size: -@Returns: - - - - - - - -@string: -@rval: -@Returns: - - - - - - - - - - - - - - - - - - - - - -@string: -@format: -@args: - - - - - - - -@string: -@format: -@args: - - - - - - - -@string: -@format: -@Varargs: - - - - - - - -@string: -@format: -@Varargs: - - - - - - - -@string: -@val: -@Returns: - - - - - - - -@string: -@c: -@Returns: - - - - - - - -@string: -@wc: -@Returns: - - - - - - - -@string: -@val: -@len: -@Returns: - - - - - - - -@string: -@unescaped: -@reserved_chars_allowed: -@allow_utf8: -@Returns: - - - - - - - -@string: -@val: -@Returns: - - - - - - - -@string: -@c: -@Returns: - - - - - - - -@string: -@wc: -@Returns: - - - - - - - -@string: -@val: -@len: -@Returns: - - - - - - - -@string: -@pos: -@val: -@Returns: - - - - - - - -@string: -@pos: -@c: -@Returns: - - - - - - - -@string: -@pos: -@wc: -@Returns: - - - - - - - -@string: -@pos: -@val: -@len: -@Returns: - - - - - - - -@string: -@pos: -@val: -@Returns: - - - - - - - -@string: -@pos: -@val: -@len: -@Returns: - - - - - - - -@string: -@pos: -@len: -@Returns: - - - - - - - -@string: -@len: -@Returns: - - - - - - - -@string: -@len: -@Returns: - - - - - - - -@string: -@free_segment: -@Returns: - - - - - - -@string: -@Returns: - - - - - - -@string: -@Returns: - - - - - - - -@str: -@Returns: - - - - - - - -@v: -@v2: -@Returns: - - diff --git a/docs/reference/glib/tmpl/testing.sgml b/docs/reference/glib/tmpl/testing.sgml deleted file mode 100644 index 4dd819e..0000000 --- a/docs/reference/glib/tmpl/testing.sgml +++ /dev/null @@ -1,646 +0,0 @@ - -Testing - - -a test framework - - - -GLib provides a framework for writing and maintaining unit tests -in parallel to the code they are testing. The API is designed according -to established concepts found in the other test frameworks (JUnit, NUnit, -RUnit), which in turn is based on smalltalk unit testing concepts. - - - Test case - - Tests (test methods) are grouped together with their - fixture into test cases. - - - - Fixture - - A test fixture consists of fixture data and setup and teardown methods - to establish the environment for the test functions. We use fresh - fixtures, i.e. fixtures are newly set up and torn down around each test - invocation to avoid dependencies between tests. - - - - Test suite - - Test cases can be grouped into test suites, to allow subsets of the - available tests to be run. Test suites can be grouped into other test - suites as well. - - - -The API is designed to handle creation and registration of test suites and -test cases implicitly. A simple call like - - g_test_add_func ("/misc/assertions", test_assertions); - -creates a test suite called "misc" with a single test case named "assertions", -which consists of running the test_assertions function. - - -In addition to the traditional g_assert(), the test framework provides -an extended set of assertions for string and numerical comparisons: -g_assert_cmpfloat(), g_assert_cmpint(), g_assert_cmpuint(), g_assert_cmphex(), -g_assert_cmpstr(). The advantage of these variants over plain g_assert() -is that the assertion messages can be more elaborate, and include the -values of the compared entities. - - -GLib ships with two utilities called gtester and gtester-report to -facilitate running tests and producing nicely formatted test reports. - - - - -gtester, -gtester-report - - - - - - - - - - -@minimized_quantity: -@format: -@Varargs: - - - - - - - -@maximized_quantity: -@format: -@Varargs: - - - - - - - -@argc: -@argv: -@Varargs: - - - - -Returns %TRUE if tests are run in quick mode. - - - - - - -Returns %TRUE if tests are run in slow mode. - - - - - - -Returns %TRUE if tests are run in thorough mode. - - - - - - -Returns %TRUE if tests are run in performance mode. - - - - - - -Returns %TRUE if tests are run in verbose mode. - - - - - - -Returns %TRUE if tests are run in quiet mode. - - - - - - - - - -@Returns: - - - - - - - -@testpath: -@test_func: - - - - - - - -@testpath: -@test_data: -@test_func: - - - - - - - -@testpath: -@Fixture: -@tdata: -@fsetup: -@ftest: -@fteardown: - - - - - - - -@format: -@Varargs: - - - - - - - -@uri_pattern: - - - - - - - -@bug_uri_snippet: - - - - - - - -@log_domain: -@log_level: -@message: -@user_data: -@Returns: - - - - - - - -@log_func: -@user_data: - - - - - - - - - - - - - - -@Returns: - - - - - - - -@Returns: - - - - - - - -@gfree_pointer: - - - - - - - -@destroy_func: -@destroy_data: - - - - -Enqueue an object to be released with g_object_unref() during -the next teardown phase. This is equivalent to calling g_test_queue_destroy() -with a destroy callback of g_object_unref(). - - -@gobject: the object to unref -@Since: 2.16 - - - - -Test traps are guards around forked tests. These flags -determine what traps to set. - - -@G_TEST_TRAP_SILENCE_STDOUT: Redirect stdout of the test child to - /dev/null so it cannot be observed on the - console during test runs. The actual output is still captured - though to allow later tests with g_test_trap_assert_stdout(). -@G_TEST_TRAP_SILENCE_STDERR: Redirect stderr of the test child to - /dev/null so it cannot be observed on the - console during test runs. The actual output is still captured - though to allow later tests with g_test_trap_assert_stderr(). -@G_TEST_TRAP_INHERIT_STDIN: If this flag is given, stdin of the forked - child process is shared with stdin of its parent process. It is - redirected to /dev/null otherwise. - - - - - - -@usec_timeout: -@test_trap_flags: -@Returns: - - - - - - - -@Returns: - - - - - - - -@Returns: - - - - -Assert that the last forked test passed. See g_test_trap_fork(). - - -@Since: 2.16 - - - - -Assert that the last forked test failed. See g_test_trap_fork(). - - -@Since: 2.16 - - - - -Assert that the stdout output of the last forked test matches @soutpattern. -See g_test_trap_fork(). - - -@soutpattern: a glob-style pattern -@Since: 2.16 - - - - -Assert that the stdout output of the last forked test does not match -@soutpattern. See g_test_trap_fork(). - - -@soutpattern: a glob-style pattern -@Since: 2.16 - - - - -Assert that the stderr output of the last forked test matches @serrpattern. -See g_test_trap_fork(). - - -@serrpattern: a glob-style pattern -@Since: 2.16 - - - - -Assert that the stderr output of the last forked test does not match -@serrpattern. See g_test_trap_fork(). - - -@serrpattern: a glob-style pattern -@Since: 2.16 - - - - -Get a reproducible random bit (0 or 1), -see g_test_rand_int() for details on test case random numbers. - - -@Since: 2.16 - - - - - - - -@Returns: - - - - - - - -@begin: -@end: -@Returns: - - - - - - - -@Returns: - - - - - - - -@range_start: -@range_end: -@Returns: - - - - -Debugging macro to terminate the application if the assertion fails. -If the assertion fails (i.e. the expression is not true), an error message -is logged and the application is terminated. - - -The macro can be turned off in final releases of code by defining -#G_DISABLE_ASSERT when compiling the application. - - -@expr: the expression to check. - - - - -Debugging macro to terminate the application if it is ever reached. -If it is reached, an error message is logged and the application is terminated. - - -The macro can be turned off in final releases of code by defining -#G_DISABLE_ASSERT when compiling the application. - - - - - - -Debugging macro to terminate the application with a warning message -if a string comparison fails. -The strings are compared using g_strcmp0(). - - -The effect of g_assert_cmpstr (s1, op, s2) is the same -as g_assert (g_strcmp0 (s1, s2) op 0). The advantage of this macro -is that it can produce a message that includes the actual values of @s1 -and @s2. - - - g_assert_cmpstr (mystring, ==, "fubar"); - - -@s1: a string (may be %NULL) -@cmp: The comparison operator to use. One of ==, !=, <, >, <=, >=. -@s2: another string (may be %NULL) -@Since: 2.16 - - - - -Debugging macro to terminate the application with a warning message -if an integer comparison fails. - - -The effect of g_assert_cmpint (n1, op, n2) is the same -as g_assert (n1 op n2). The advantage of this macro -is that it can produce a message that includes the actual values of @n1 -and @n2. - - -@n1: an integer -@cmp: The comparison operator to use. One of ==, !=, <, >, <=, >=. -@n2: another integer -@Since: 2.16 - - - - -Debugging macro to terminate the application with a warning message -if an unsigned integer comparison fails. - - -The effect of g_assert_cmpuint (n1, op, n2) is the same -as g_assert (n1 op n2). The advantage of this macro -is that it can produce a message that includes the actual values of @n1 -and @n2. - - -@n1: an unsigned integer -@cmp: The comparison operator to use. One of ==, !=, <, >, <=, >=. -@n2: another unsigned integer -@Since: 2.16 - - - - -Debugging macro to terminate the application with a warning message -if an unsigned integer comparison fails. This is a variant of -g_assert_cmpuint() that displays the numbers in hexadecimal notation -in the message. - - -@n1: an unsigned integer -@cmp: The comparison operator to use. One of ==, !=, <, >, <=, >=. -@n2: another unsigned integer -@Since: 2.16 - - - - -Debugging macro to terminate the application with a warning message -if a floating point number comparison fails. - - -The effect of g_assert_cmpfloat (n1, op, n2) is the same -as g_assert (n1 op n2). The advantage of this function -is that it can produce a message that includes the actual values of @n1 -and @n2. - - -@n1: an floating point number -@cmp: The comparison operator to use. One of ==, !=, <, >, <=, >=. -@n2: another floating point number -@Since: 2.16 - - - - -Debugging macro to terminate the application with a warning message -if a method has returned a #GError. - - -The effect of g_assert_no_error (err) is the same -as g_assert (err == NULL). The advantage of this macro -is that it can produce a message that includes the error message and code. - - -@err: a #GError, possibly %NULL -@Since: 2.20 - - - - -Debugging macro to terminate the application with a warning message -if a method has not returned the correct #GError. - - -The effect of g_assert_error (err, dom, c) is the same -as g_assert (err != NULL && err->domain == dom && err->code == c). -The advantage of this macro is that it can produce a message that -includes the incorrect error message and code. - - -This can only be used to test for a specific error. If you want to -test that @err is set, but don't care what it's set to, just use -g_assert (err != NULL) - - -@err: a #GError, possibly %NULL -@dom: the expected error domain (a #GQuark) -@c: the expected error code -@Since: 2.20 - - - - -An opaque structure representing a test case. - - - - - -An opaque structure representing a test suite. - - - - - - - - -@test_name: -@data_size: -@test_data: -@data_setup: -@data_test: -@data_teardown: -@Returns: - - - - - - - -@suite_name: -@Returns: - - - - - - - -@Returns: - - - - - - - -@suite: -@test_case: - - - - - - - -@suite: -@nestedsuite: - - - - - - - -@suite: -@Returns: - - diff --git a/docs/reference/glib/tmpl/thread_pools.sgml b/docs/reference/glib/tmpl/thread_pools.sgml deleted file mode 100644 index f206209..0000000 --- a/docs/reference/glib/tmpl/thread_pools.sgml +++ /dev/null @@ -1,157 +0,0 @@ - -Thread Pools - - - - - - - - - - - - - - - - - - - - - - - - -@func: -@user_data: -@exclusive: - - - - - - -@func: -@user_data: -@max_threads: -@exclusive: -@error: -@Returns: - - - - - - - -@pool: -@data: -@error: - - - - - - - -@pool: -@max_threads: -@error: - - - - - - - -@pool: -@Returns: - - - - - - - -@pool: -@Returns: - - - - - - - -@pool: -@Returns: - - - - - - - -@pool: -@immediate: -@wait_: - - - - - - - -@max_threads: - - - - - - - -@Returns: - - - - - - - -@Returns: - - - - - - - - - - - - - - -@pool: -@func: -@user_data: - - - - - - - -@interval: - - - - - - - -@Returns: - - diff --git a/docs/reference/glib/tmpl/threads.sgml b/docs/reference/glib/tmpl/threads.sgml deleted file mode 100644 index ee501e4..0000000 --- a/docs/reference/glib/tmpl/threads.sgml +++ /dev/null @@ -1,737 +0,0 @@ - -Threads - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@G_THREAD_ERROR_AGAIN: - - - - - - -@mutex_new: -@mutex_lock: -@mutex_trylock: -@mutex_unlock: -@mutex_free: -@cond_new: -@cond_signal: -@cond_broadcast: -@cond_wait: -@cond_timed_wait: -@cond_free: -@private_new: -@private_get: -@private_set: -@thread_create: -@thread_yield: -@thread_join: -@thread_exit: -@thread_set_priority: -@thread_self: -@thread_equal: - - - - - - -@vtable: - - - - - - - -@Returns: - - - - - - - -@Returns: - - - - - - - -@data: -@Returns: - - - - - - - -@G_THREAD_PRIORITY_LOW: -@G_THREAD_PRIORITY_NORMAL: -@G_THREAD_PRIORITY_HIGH: -@G_THREAD_PRIORITY_URGENT: - - - - - - - - - - - - -@func: -@data: -@joinable: -@error: -@Returns: - - - - - - - -@func: -@data: -@stack_size: -@joinable: -@bound: -@priority: -@error: -@Returns: - - - - - - - -@Returns: - - - - - - - -@thread: -@Returns: - - - - - - - -@thread: -@priority: - - - - - - - - - - - - - - -@retval: - - - - - - - -@thread_func: -@user_data: - - - - - - - - - - - - - -@Returns: - - - - - - - -@mutex: - - - - - - - -@mutex: -@Returns: - - - - - - - -@mutex: - - - - - - - -@mutex: - - - - - - - - - - - - - - - - - - - - -@mutex: - - - - - - - -@mutex: - - - - - - - -@mutex: -@Returns: - - - - - - - -@mutex: - - - - - - - -@mutex: -@Returns: - - - - - - - -@mutex: - - - - - - - -@name: - - - - - - - -@name: - - - - - - - -@name: - - - - - - - -@name: - - - - - - - -@name: - - - - - - - -@name: - - - - - - - - - - - - - - - - - - - - -@mutex: - - - - - - - -@mutex: - - - - - - - -@mutex: -@Returns: - - - - - - - -@mutex: - - - - - - - -@mutex: -@depth: - - - - - - - -@mutex: -@Returns: - - - - - - - -@mutex: - - - - - - - - - - - - - - - - - - - - -@lock: - - - - - - - -@lock: - - - - - - - -@lock: -@Returns: - - - - - - - -@lock: - - - - - - - -@lock: - - - - - - - -@lock: -@Returns: - - - - - - - -@lock: - - - - - - - -@lock: - - - - - - - - - - - - - -@Returns: - - - - - - - -@cond: - - - - - - - -@cond: - - - - - - - -@cond: -@mutex: - - - - - - - -@cond: -@mutex: -@abs_time: -@Returns: - - - - - - - -@cond: - - - - - - - - - - - - - -@destructor: -@Returns: - - - - - - - -@private_key: -@Returns: - - - - - - - -@private_key: -@data: - - - - - - - - - - - - - - - - - - - - -@private_key: - - - - - - - -@private_key: -@Returns: - - - - - - - -@private_key: -@data: -@notify: - - - - - - - -@private_key: - - - - - - - -@status: -@retval: - - - - - - -@G_ONCE_STATUS_NOTCALLED: -@G_ONCE_STATUS_PROGRESS: -@G_ONCE_STATUS_READY: - - - - - - - - - - - - - -@once: -@func: -@arg: - - - - - - - -@value_location: -@Returns: - - - - - - - -@value_location: -@initialization_value: - - - - - - - -@address: -@lock_bit: - - - - - - - -@address: -@lock_bit: -@Returns: - - - - - - - -@address: -@lock_bit: - - diff --git a/docs/reference/glib/tmpl/timers.sgml b/docs/reference/glib/tmpl/timers.sgml deleted file mode 100644 index bb3f563..0000000 --- a/docs/reference/glib/tmpl/timers.sgml +++ /dev/null @@ -1,85 +0,0 @@ - -Timers - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@Returns: - - - - - - - -@timer: - - - - - - - -@timer: - - - - - - - -@timer: - - - - - - - -@timer: -@microseconds: -@Returns: - - - - - - - -@timer: - - - - - - - -@timer: - - diff --git a/docs/reference/glib/tmpl/trash_stack.sgml b/docs/reference/glib/tmpl/trash_stack.sgml deleted file mode 100644 index ead22b8..0000000 --- a/docs/reference/glib/tmpl/trash_stack.sgml +++ /dev/null @@ -1,74 +0,0 @@ - -Trash Stacks - - -maintain a stack of unused allocated memory chunks - - - -A #GTrashStack is an efficient way to keep a stack of unused allocated -memory chunks. Each memory chunk is required to be large enough to hold -a #gpointer. This allows the stack to be maintained without any space -overhead, since the stack pointers can be stored inside the memory chunks. - - -There is no function to create a #GTrashStack. A %NULL #GTrashStack* -is a perfectly valid empty stack. - - - - - - - - - - - - -Each piece of memory that is pushed onto the stack -is cast to a GTrashStack*. - - -@next: pointer to the previous element of the stack, -gets stored in the first sizeof (gpointer) -bytes of the element. - - - -Pushes a piece of memory onto a #GTrashStack. - - -@stack_p: a pointer to a #GTrashStack. -@data_p: the piece of memory to push on the stack. - - - - -Pops a piece of memory off a #GTrashStack. - - -@stack_p: a pointer to a #GTrashStack. -@Returns: the element at the top of the stack. - - - - -Returns the element at the top of a #GTrashStack which may be %NULL. - - -@stack_p: a pointer to a #GTrashStack. -@Returns: the element at the top of the stack. - - - - -Returns the height of a #GTrashStack. -Note that execution of this function is of O(N) complexity -where N denotes the number of items on the stack. - - -@stack_p: a pointer to a #GTrashStack. -@Returns: the height of the stack. - - diff --git a/docs/reference/glib/tmpl/trees-binary.sgml b/docs/reference/glib/tmpl/trees-binary.sgml deleted file mode 100644 index 4a6f94a..0000000 --- a/docs/reference/glib/tmpl/trees-binary.sgml +++ /dev/null @@ -1,216 +0,0 @@ - -Balanced Binary Trees - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@key_compare_func: -@Returns: - - - - - - - -@tree: -@Returns: - - - - - - - -@tree: - - - - - - - -@key_compare_func: -@key_compare_data: -@Returns: - - - - - - - -@key_compare_func: -@key_compare_data: -@key_destroy_func: -@value_destroy_func: -@Returns: - - - - - - - -@tree: -@key: -@value: - - - - - - - -@tree: -@key: -@value: - - - - - - - -@tree: -@Returns: - - - - - - - -@tree: -@Returns: - - - - - - - -@tree: -@key: -@Returns: - - - - - - - -@tree: -@lookup_key: -@orig_key: -@value: -@Returns: - - - - - - - -@tree: -@func: -@user_data: - - - - - - - -@tree: -@traverse_func: -@traverse_type: -@user_data: - - - - - - - -@key: -@value: -@data: -@Returns: - - - - - - - -@G_IN_ORDER: -@G_PRE_ORDER: -@G_POST_ORDER: -@G_LEVEL_ORDER: - - - - - - -@tree: -@search_func: -@user_data: -@Returns: - - - - - - - -@tree: -@key: -@Returns: - - - - - - - -@tree: -@key: -@Returns: - - - - - - - -@tree: - - diff --git a/docs/reference/glib/tmpl/trees-nary.sgml b/docs/reference/glib/tmpl/trees-nary.sgml deleted file mode 100644 index d4aefd6..0000000 --- a/docs/reference/glib/tmpl/trees-nary.sgml +++ /dev/null @@ -1,431 +0,0 @@ - -N-ary Trees - - - - - - - - - - - - - - - - - - - - - - - - -@data: -@next: -@prev: -@parent: -@children: - - - - - - -@data: -@Returns: - - - - - - - -@node: -@Returns: - - - - - - - -@src: -@data: -@Returns: - - - - - - - -@node: -@copy_func: -@data: -@Returns: - - - - - - - -@parent: -@position: -@node: -@Returns: - - - - - - - -@parent: -@sibling: -@node: -@Returns: - - - - - - - -@parent: -@sibling: -@node: -@Returns: - - - - - - - -@parent: -@node: - - - - - - - -@parent: -@node: -@Returns: - - - - - - - -@parent: -@position: -@data: - - - - - - - -@parent: -@sibling: -@data: - - - - - - - -@parent: -@data: - - - - - - - -@parent: -@data: - - - - - - - -@node: - - - - - - - -@root: -@order: -@flags: -@max_depth: -@func: -@data: - - - - - - - -@G_TRAVERSE_LEAVES: -@G_TRAVERSE_NON_LEAVES: -@G_TRAVERSE_ALL: -@G_TRAVERSE_MASK: -@G_TRAVERSE_LEAFS: -@G_TRAVERSE_NON_LEAFS: - - - - - - -@node: -@data: -@Returns: - - - - - - - -@node: -@flags: -@func: -@data: - - - - - - - -@node: -@data: - - - - - - - -@node: -@Returns: - - - - - - - -@root: -@order: -@flags: -@data: -@Returns: - - - - - - - -@node: -@flags: -@data: -@Returns: - - - - - - - -@node: -@data: -@Returns: - - - - - - - -@node: -@child: -@Returns: - - - - - - - -@node: - - - - - - - -@node: -@Returns: - - - - - - - -@node: -@n: -@Returns: - - - - - - - -@node: -@Returns: - - - - - - - -@node: - - - - - - - -@node: - - - - - - - -@node: -@Returns: - - - - - - - -@node: - - - - - - - -@node: - - - - - - - -@node: -@Returns: - - - - - - - -@root: -@flags: -@Returns: - - - - - - - -@node: -@Returns: - - - - - - - -@node: -@descendant: -@Returns: - - - - - - - -@root: -@Returns: - - - - - - - -@node: - - - - - - - -@root: - - - - - - - -@dummy: - - - - - - - - - diff --git a/docs/reference/glib/tmpl/type_conversion.sgml b/docs/reference/glib/tmpl/type_conversion.sgml deleted file mode 100644 index 0d1d94b..0000000 --- a/docs/reference/glib/tmpl/type_conversion.sgml +++ /dev/null @@ -1,122 +0,0 @@ - -Type Conversion Macros - - -portably storing integers in pointer variables - - - -Many times GLib, GTK+, and other libraries allow you to pass "user -data" to a callback, in the form of a void pointer. From time to time -you want to pass an integer instead of a pointer. You could allocate -an integer, with something like: - - int *ip = g_new (int, 1); - *ip = 42; - -But this is inconvenient, and it's annoying to have to free the -memory at some later time. - - -Pointers are always at least 32 bits in size (on all platforms GLib -intends to support). Thus you can store at least 32-bit integer values -in a pointer value. Naively, you might try this, but it's incorrect: - - gpointer p; - int i; - p = (void*) 42; - i = (int) p; - -Again, that example was not correct, don't copy it. -The problem is that on some systems you need to do this: - - gpointer p; - int i; - p = (void*) (long) 42; - i = (int) (long) p; - -So GPOINTER_TO_INT(), GINT_TO_POINTER(), etc. do the right thing -on the current platform. - - - - -YOU MAY NOT STORE POINTERS IN INTEGERS. THIS IS NOT PORTABLE IN ANY -WAY SHAPE OR FORM. These macros ONLY allow -storing integers in pointers, and only preserve 32 bits of the -integer; values outside the range of a 32-bit integer will be mangled. - - - - - - - - - - - - - - -Stuffs an integer into a pointer type. - - -Remember, YOU MAY NOT STORE POINTERS IN INTEGERS. THIS IS NOT PORTABLE -IN ANY WAY SHAPE OR FORM. These macros ONLY allow -storing integers in pointers, and only preserve 32 bits of the -integer; values outside the range of a 32-bit integer will be mangled. - - -@i: integer to stuff into a pointer. - - - - -Extracts an integer from a pointer. The integer must have -been stored in the pointer with GINT_TO_POINTER(). - - -Remember, YOU MAY NOT STORE POINTERS IN INTEGERS. THIS IS NOT PORTABLE -IN ANY WAY SHAPE OR FORM. These macros ONLY allow -storing integers in pointers, and only preserve 32 bits of the -integer; values outside the range of a 32-bit integer will be mangled. - - -@p: pointer containing an integer. - - - - -Stuffs an unsigned integer into a pointer type. - - -@u: unsigned integer to stuff into the pointer. - - - - -Extracts an unsigned integer from a pointer. The integer must have -been stored in the pointer with GUINT_TO_POINTER(). - - -@p: pointer to extract an unsigned integer from. - - - - -Stuffs a #gsize into a pointer type. - - -@s: #gsize to stuff into the pointer. - - - - -Extracts a #gsize from a pointer. The #gsize must have -been stored in the pointer with GSIZE_TO_POINTER(). - - -@p: pointer to extract a #gsize from. - - diff --git a/docs/reference/glib/tmpl/types.sgml b/docs/reference/glib/tmpl/types.sgml deleted file mode 100644 index 37efca2..0000000 --- a/docs/reference/glib/tmpl/types.sgml +++ /dev/null @@ -1,324 +0,0 @@ - -Basic Types - - -standard GLib types, defined for ease-of-use and portability - - - -GLib defines a number of commonly used types, which can be divided into -4 groups: - - - -New types which are not part of standard C (but are defined -in various C standard library header files) - -#gboolean, #gsize, #gssize, #goffset, #gintptr, #guintptr. - - - -Integer types which are guaranteed to be the same size across all platforms - -#gint8, #guint8, #gint16, #guint16, #gint32, #guint32, #gint64, #guint64. - - - -Types which are easier to use than their standard C counterparts - -#gpointer, #gconstpointer, #guchar, #guint, #gushort, #gulong. - - - -Types which correspond exactly to standard C types, but are included -for completeness - #gchar, #gint, #gshort, #glong, #gfloat, #gdouble. - - - - - - - - - - - - - - - -A standard boolean type. -Variables of this type should only contain the value %TRUE or %FALSE. - - - - - -An untyped pointer. -#gpointer looks better and is easier to use than void*. - - - - - -An untyped pointer to constant data. -The data pointed to should not be changed. - - -This is typically used in function prototypes to indicate that the -data pointed to will not be altered by the function. - - - - - -Corresponds to the standard C char type. - - - - - -Corresponds to the standard C unsigned char type. - - - - - -Corresponds to the standard C int type. -Values of this type can range from #G_MININT to #G_MAXINT. - - - - - -Corresponds to the standard C unsigned int type. -Values of this type can range from 0 to #G_MAXUINT. - - - - - -Corresponds to the standard C short type. -Values of this type can range from #G_MINSHORT to #G_MAXSHORT. - - - - - -Corresponds to the standard C unsigned short type. -Values of this type can range from 0 to #G_MAXUSHORT. - - - - - -Corresponds to the standard C long type. -Values of this type can range from #G_MINLONG to #G_MAXLONG. - - - - - -Corresponds to the standard C unsigned long type. -Values of this type can range from 0 to #G_MAXULONG. - - - - - -A signed integer guaranteed to be 8 bits on all platforms. -Values of this type can range from #G_MININT8 (= -128) to -#G_MAXINT8 (= 127). - - - - - -An unsigned integer guaranteed to be 8 bits on all platforms. -Values of this type can range from 0 to #G_MAXUINT8 (= 255). - - - - - -A signed integer guaranteed to be 16 bits on all platforms. -Values of this type can range from #G_MININT16 (= -32,768) to -#G_MAXINT16 (= 32,767). - - -To print or scan values of this type, use -%G_GINT16_MODIFIER and/or %G_GINT16_FORMAT. - - - - - -An unsigned integer guaranteed to be 16 bits on all platforms. -Values of this type can range from 0 to #G_MAXUINT16 (= 65,535). - - -To print or scan values of this type, use -%G_GINT16_MODIFIER and/or %G_GUINT16_FORMAT. - - - - - -A signed integer guaranteed to be 32 bits on all platforms. -Values of this type can range from #G_MININT32 (= -2,147,483,648) to -#G_MAXINT32 (= 2,147,483,647). - - -To print or scan values of this type, use -%G_GINT32_MODIFIER and/or %G_GINT32_FORMAT. - - - - - -An unsigned integer guaranteed to be 32 bits on all platforms. -Values of this type can range from 0 to #G_MAXUINT32 (= 4,294,967,295). - - -To print or scan values of this type, use -%G_GINT32_MODIFIER and/or %G_GUINT32_FORMAT. - - - - - -This macro is defined if 64-bit signed and unsigned integers are available -on the platform. - - -@Deprecated: GLib requires 64-bit integer support since version 2.0, therefore -%G_HAVE_GINT64 is always defined. - - - - -A signed integer guaranteed to be 64 bits on all platforms. -Values of this type can range from #G_MININT64 (= -9,223,372,036,854,775,808) to -#G_MAXINT64 (= 9,223,372,036,854,775,807). - - -To print or scan values of this type, use -%G_GINT64_MODIFIER and/or %G_GINT64_FORMAT. - - - - - -An unsigned integer guaranteed to be 64 bits on all platforms. -Values of this type can range from 0 to #G_MAXUINT64 (= 18,446,744,073,709,551,615). - - -To print or scan values of this type, use -%G_GINT64_MODIFIER and/or %G_GUINT64_FORMAT. - - - - - -This macro is used to insert 64-bit integer literals into the source code. - - -@val: a literal integer value, e.g. 0x1d636b02300a7aa7. - - - - -This macro is used to insert 64-bit unsigned integer literals into the -source code. - - -@val: a literal integer value, e.g. 0x1d636b02300a7aa7U. -@Since: 2.10 - - - - -Corresponds to the standard C float type. -Values of this type can range from -#G_MAXFLOAT to #G_MAXFLOAT. - - - - - -Corresponds to the standard C double type. -Values of this type can range from -#G_MAXDOUBLE to #G_MAXDOUBLE. - - - - - -An unsigned integer type of the result of the sizeof operator, corresponding -to the size_t type defined in C99. This type is wide enough to hold the numeric -value of a pointer, so it is usually 32bit wide on a 32bit platform and -64bit wide on a 64bit platform. -Values of this type can range from 0 to #G_MAXSIZE. - - -To print or scan values of this type, use -%G_GSIZE_MODIFIER and/or %G_GSIZE_FORMAT. - - - - - -A signed variant of gsize, corresponding to the ssize_t defined on most platforms. -Values of this type can range from #G_MINSSIZE to #G_MAXSSIZE. - - -To print or scan values of this type, use -%G_GSIZE_MODIFIER and/or %G_GSSIZE_FORMAT. - - - - - -A signed integer type that is used for file offsets, corresponding to the -C99 type off64_t. -Values of this type can range from #G_MINOFFSET to #G_MAXOFFSET. - - -To print or scan values of this type, use -%G_GOFFSET_MODIFIER and/or %G_GOFFSET_FORMAT. - - -Since: 2.14 - - - - -This macro is used to insert #goffset 64-bit integer literals into the source code. -See also #G_GINT64_CONSTANT. - - -@val: a literal integer value, e.g. 0x1d636b02300a7aa7. -Since: 2.20 - - - - -Corresponds to the C99 type intptr_t, a signed integer type that -can hold any pointer. - - -To print or scan values of this type, use -%G_GINTPTR_MODIFIER and/or %G_GINTPTR_FORMAT. - - -Since: 2.18 - - - - -Corresponds to the C99 type uintptr_t, an unsigned integer type that -can hold any pointer. - - -To print or scan values of this type, use -%G_GINTPTR_MODIFIER and/or %G_GUINTPTR_FORMAT. - - -Since: 2.18 - - diff --git a/docs/reference/glib/tmpl/unicode.sgml b/docs/reference/glib/tmpl/unicode.sgml deleted file mode 100644 index e0596c1..0000000 --- a/docs/reference/glib/tmpl/unicode.sgml +++ /dev/null @@ -1,886 +0,0 @@ - -Unicode Manipulation - - -functions operating on Unicode characters and UTF-8 strings - - - -This section describes a number of functions for dealing with -Unicode characters and strings. There are analogues of the -traditional ctype.h character classification -and case conversion functions, UTF-8 analogues of some string utility -functions, functions to perform normalization, case conversion and -collation on UTF-8 strings and finally functions to convert between -the UTF-8, UTF-16 and UCS-4 encodings of Unicode. - - - -The implementations of the Unicode functions in GLib are based -on the Unicode Character Data tables, which are available from -www.unicode.org. -GLib 2.8 supports Unicode 4.0, GLib 2.10 supports Unicode 4.1, -GLib 2.12 supports Unicode 5.0, GLib 2.16.3 supports Unicode 5.1. - - - - - - - -g_locale_to_utf8(), g_locale_from_utf8() - -Convenience functions for converting between UTF-8 and the locale encoding. - - - - - - - - - - - -A type which can hold any UTF-32 or UCS-4 character code, also known -as a Unicode code point. - - -If you want to produce the UTF-8 representation of a #gunichar, -use g_ucs4_to_utf8(). See also g_utf8_to_ucs4() for the reverse process. - - -To print/scan values of this type as integer, use -%G_GINT32_MODIFIER and/or %G_GUINT32_FORMAT. - - -The notation to express a Unicode code point in running text is as a -hexadecimal number with four to six digits and uppercase letters, prefixed -by the string "U+". Leading zeros are omitted, unless the code point would -have fewer than four hexadecimal digits. -For example, "U+0041 LATIN CAPITAL LETTER A". -To print a code point in the U+-notation, use the format string -"U+%04"G_GINT32_FORMAT"X". -To scan, use the format string "U+%06"G_GINT32_FORMAT"X". - - -gunichar c; -sscanf ("U+0041", "U+%06"G_GINT32_FORMAT"X", &c) -g_print ("Read U+%04"G_GINT32_FORMAT"X", c); - - - - - - - -A type which can hold any UTF-16 code -pointUTF-16 also has so called -surrogate pairs to encode characters beyond the -BMP as pairs of 16bit numbers. Surrogate pairs cannot be stored in a -single gunichar2 field, but all GLib functions accepting gunichar2 arrays -will correctly interpret surrogate pairs.. - - -To print/scan values of this type to/from text you need to convert -to/from UTF-8, using g_utf16_to_utf8()/g_utf8_to_utf16(). - - -To print/scan values of this type as integer, use -%G_GINT16_MODIFIER and/or %G_GUINT16_FORMAT. - - - - - - - - -@ch: -@Returns: - - - - - - - -@c: -@Returns: - - - - - - - -@c: -@Returns: - - - - - - - -@c: -@Returns: - - - - - - - -@c: -@Returns: - - - - - - - -@c: -@Returns: - - - - - - - -@c: -@Returns: - - - - - - - -@c: -@Returns: - - - - - - - -@c: -@Returns: - - - - - - - -@c: -@Returns: - - - - - - - -@c: -@Returns: - - - - - - - -@c: -@Returns: - - - - - - - -@c: -@Returns: - - - - - - - -@c: -@Returns: - - - - - - - -@c: -@Returns: - - - - - - - -@c: -@Returns: - - - - - - - -@c: -@Returns: - - - - - - - -@c: -@Returns: - - - - - - - -@c: -@Returns: - - - - - - - -@c: -@Returns: - - - - - - - -@c: -@Returns: - - - - - - - -@c: -@Returns: - - - - - - - -@c: -@Returns: - - - - -These are the possible character classifications from the -Unicode specification. -See http://www.unicode.org/Public/UNIDATA/UnicodeData.html. - - -@G_UNICODE_CONTROL: General category "Other, Control" (Cc) -@G_UNICODE_FORMAT: General category "Other, Format" (Cf) -@G_UNICODE_UNASSIGNED: General category "Other, Not Assigned" (Cn) -@G_UNICODE_PRIVATE_USE: General category "Other, Private Use" (Co) -@G_UNICODE_SURROGATE: General category "Other, Surrogate" (Cs) -@G_UNICODE_LOWERCASE_LETTER: General category "Letter, Lowercase" (Ll) -@G_UNICODE_MODIFIER_LETTER: General category "Letter, Modifier" (Lm) -@G_UNICODE_OTHER_LETTER: General category "Letter, Other" (Lo) -@G_UNICODE_TITLECASE_LETTER: General category "Letter, Titlecase" (Lt) -@G_UNICODE_UPPERCASE_LETTER: General category "Letter, Uppercase" (Lu) -@G_UNICODE_COMBINING_MARK: General category "Mark, Spacing Combining" (Mc) -@G_UNICODE_ENCLOSING_MARK: General category "Mark, Enclosing" (Me) -@G_UNICODE_NON_SPACING_MARK: General category "Mark, Nonspacing" (Mn) -@G_UNICODE_DECIMAL_NUMBER: General category "Number, Decimal Digit" (Nd) -@G_UNICODE_LETTER_NUMBER: General category "Number, Letter" (Nl) -@G_UNICODE_OTHER_NUMBER: General category "Number, Other" (No) -@G_UNICODE_CONNECT_PUNCTUATION: General category "Punctuation, Connector" (Pc) -@G_UNICODE_DASH_PUNCTUATION: General category "Punctuation, Dash" (Pd) -@G_UNICODE_CLOSE_PUNCTUATION: General category "Punctuation, Close" (Pe) -@G_UNICODE_FINAL_PUNCTUATION: General category "Punctuation, Final quote" (Pf) -@G_UNICODE_INITIAL_PUNCTUATION: General category "Punctuation, Initial quote" (Pi) -@G_UNICODE_OTHER_PUNCTUATION: General category "Punctuation, Other" (Po) -@G_UNICODE_OPEN_PUNCTUATION: General category "Punctuation, Open" (Ps) -@G_UNICODE_CURRENCY_SYMBOL: General category "Symbol, Currency" (Sc) -@G_UNICODE_MODIFIER_SYMBOL: General category "Symbol, Modifier" (Sk) -@G_UNICODE_MATH_SYMBOL: General category "Symbol, Math" (Sm) -@G_UNICODE_OTHER_SYMBOL: General category "Symbol, Other" (So) -@G_UNICODE_LINE_SEPARATOR: General category "Separator, Line" (Zl) -@G_UNICODE_PARAGRAPH_SEPARATOR: General category "Separator, Paragraph" (Zp) -@G_UNICODE_SPACE_SEPARATOR: General category "Separator, Space" (Zs) - - - - - - -@c: -@Returns: - - - - -These are the possible line break classifications. -The five Hangul types were added in Unicode 4.1, so, has been -introduced in GLib 2.10. Note that new types may be added in the future. -Applications should be ready to handle unknown values. -They may be regarded as %G_UNICODE_BREAK_UNKNOWN. -See http://www.unicode.org/unicode/reports/tr14/. - - -@G_UNICODE_BREAK_MANDATORY: Mandatory Break (BK) -@G_UNICODE_BREAK_CARRIAGE_RETURN: Carriage Return (CR) -@G_UNICODE_BREAK_LINE_FEED: Line Feed (LF) -@G_UNICODE_BREAK_COMBINING_MARK: Attached Characters and Combining Marks (CM) -@G_UNICODE_BREAK_SURROGATE: Surrogates (SG) -@G_UNICODE_BREAK_ZERO_WIDTH_SPACE: Zero Width Space (ZW) -@G_UNICODE_BREAK_INSEPARABLE: Inseparable (IN) -@G_UNICODE_BREAK_NON_BREAKING_GLUE: Non-breaking ("Glue") (GL) -@G_UNICODE_BREAK_CONTINGENT: Contingent Break Opportunity (CB) -@G_UNICODE_BREAK_SPACE: Space (SP) -@G_UNICODE_BREAK_AFTER: Break Opportunity After (BA) -@G_UNICODE_BREAK_BEFORE: Break Opportunity Before (BB) -@G_UNICODE_BREAK_BEFORE_AND_AFTER: Break Opportunity Before and After (B2) -@G_UNICODE_BREAK_HYPHEN: Hyphen (HY) -@G_UNICODE_BREAK_NON_STARTER: Nonstarter (NS) -@G_UNICODE_BREAK_OPEN_PUNCTUATION: Opening Punctuation (OP) -@G_UNICODE_BREAK_CLOSE_PUNCTUATION: Closing Punctuation (CL) -@G_UNICODE_BREAK_QUOTATION: Ambiguous Quotation (QU) -@G_UNICODE_BREAK_EXCLAMATION: Exclamation/Interrogation (EX) -@G_UNICODE_BREAK_IDEOGRAPHIC: Ideographic (ID) -@G_UNICODE_BREAK_NUMERIC: Numeric (NU) -@G_UNICODE_BREAK_INFIX_SEPARATOR: Infix Separator (Numeric) (IS) -@G_UNICODE_BREAK_SYMBOL: Symbols Allowing Break After (SY) -@G_UNICODE_BREAK_ALPHABETIC: Ordinary Alphabetic and Symbol Characters (AL) -@G_UNICODE_BREAK_PREFIX: Prefix (Numeric) (PR) -@G_UNICODE_BREAK_POSTFIX: Postfix (Numeric) (PO) -@G_UNICODE_BREAK_COMPLEX_CONTEXT: Complex Content Dependent (South East Asian) (SA) -@G_UNICODE_BREAK_AMBIGUOUS: Ambiguous (Alphabetic or Ideographic) (AI) -@G_UNICODE_BREAK_UNKNOWN: Unknown (XX) -@G_UNICODE_BREAK_NEXT_LINE: Next Line (NL) -@G_UNICODE_BREAK_WORD_JOINER: Word Joiner (WJ) -@G_UNICODE_BREAK_HANGUL_L_JAMO: Hangul L Jamo (JL) -@G_UNICODE_BREAK_HANGUL_V_JAMO: Hangul V Jamo (JV) -@G_UNICODE_BREAK_HANGUL_T_JAMO: Hangul T Jamo (JT) -@G_UNICODE_BREAK_HANGUL_LV_SYLLABLE: Hangul LV Syllable (H2) -@G_UNICODE_BREAK_HANGUL_LVT_SYLLABLE: Hangul LVT Syllable (H3) - - - - - - -@c: -@Returns: - - - - - - - -@uc: -@Returns: - - - - - - - -@string: -@len: - - - - - - - -@ch: -@result_len: -@Returns: - - - - - - - -@ch: -@mirrored_ch: -@Returns: - - - - -The #GUnicodeScript enumeration identifies different writing -systems. The values correspond to the names as defined in the -Unicode standard. The enumeration has been added in GLib 2.14, -and is interchangeable with #PangoScript. -Note that new types may be added in the future. Applications -should be ready to handle unknown values. -See Unicode Standard Annex -#24: Script names. - - -@G_UNICODE_SCRIPT_INVALID_CODE: a value never returned from g_unichar_get_script() -@G_UNICODE_SCRIPT_COMMON: a character used by multiple different scripts -@G_UNICODE_SCRIPT_INHERITED: a mark glyph that takes its script from the - base glyph to which it is attached -@G_UNICODE_SCRIPT_ARABIC: Arabic -@G_UNICODE_SCRIPT_ARMENIAN: Armenian -@G_UNICODE_SCRIPT_BENGALI: Bengali -@G_UNICODE_SCRIPT_BOPOMOFO: Bopomofo -@G_UNICODE_SCRIPT_CHEROKEE: Cherokee -@G_UNICODE_SCRIPT_COPTIC: Coptic -@G_UNICODE_SCRIPT_CYRILLIC: Cyrillic -@G_UNICODE_SCRIPT_DESERET: Deseret -@G_UNICODE_SCRIPT_DEVANAGARI: Devanagari -@G_UNICODE_SCRIPT_ETHIOPIC: Ethiopic -@G_UNICODE_SCRIPT_GEORGIAN: Georgian -@G_UNICODE_SCRIPT_GOTHIC: Gothic -@G_UNICODE_SCRIPT_GREEK: Greek -@G_UNICODE_SCRIPT_GUJARATI: Gujarati -@G_UNICODE_SCRIPT_GURMUKHI: Gurmukhi -@G_UNICODE_SCRIPT_HAN: Han -@G_UNICODE_SCRIPT_HANGUL: Hangul -@G_UNICODE_SCRIPT_HEBREW: Hebrew -@G_UNICODE_SCRIPT_HIRAGANA: Hiragana -@G_UNICODE_SCRIPT_KANNADA: Kannada -@G_UNICODE_SCRIPT_KATAKANA: Katakana -@G_UNICODE_SCRIPT_KHMER: Khmer -@G_UNICODE_SCRIPT_LAO: Lao -@G_UNICODE_SCRIPT_LATIN: Latin -@G_UNICODE_SCRIPT_MALAYALAM: Malayalam -@G_UNICODE_SCRIPT_MONGOLIAN: Mongolian -@G_UNICODE_SCRIPT_MYANMAR: Myanmar -@G_UNICODE_SCRIPT_OGHAM: Ogham -@G_UNICODE_SCRIPT_OLD_ITALIC: Old Italic -@G_UNICODE_SCRIPT_ORIYA: Oriya -@G_UNICODE_SCRIPT_RUNIC: Runic -@G_UNICODE_SCRIPT_SINHALA: Sinhala -@G_UNICODE_SCRIPT_SYRIAC: Syriac -@G_UNICODE_SCRIPT_TAMIL: Tamil -@G_UNICODE_SCRIPT_TELUGU: Telugu -@G_UNICODE_SCRIPT_THAANA: Thaana -@G_UNICODE_SCRIPT_THAI: Thai -@G_UNICODE_SCRIPT_TIBETAN: Tibetan -@G_UNICODE_SCRIPT_CANADIAN_ABORIGINAL: - Canadian Aboriginal -@G_UNICODE_SCRIPT_YI: Yi -@G_UNICODE_SCRIPT_TAGALOG: Tagalog -@G_UNICODE_SCRIPT_HANUNOO: Hanunoo -@G_UNICODE_SCRIPT_BUHID: Buhid -@G_UNICODE_SCRIPT_TAGBANWA: Tagbanwa -@G_UNICODE_SCRIPT_BRAILLE: Braille -@G_UNICODE_SCRIPT_CYPRIOT: Cypriot -@G_UNICODE_SCRIPT_LIMBU: Limbu -@G_UNICODE_SCRIPT_OSMANYA: Osmanya -@G_UNICODE_SCRIPT_SHAVIAN: Shavian -@G_UNICODE_SCRIPT_LINEAR_B: Linear B -@G_UNICODE_SCRIPT_TAI_LE: Tai Le -@G_UNICODE_SCRIPT_UGARITIC: Ugaritic -@G_UNICODE_SCRIPT_NEW_TAI_LUE: New Tai Lue -@G_UNICODE_SCRIPT_BUGINESE: Buginese -@G_UNICODE_SCRIPT_GLAGOLITIC: Glagolitic -@G_UNICODE_SCRIPT_TIFINAGH: Tifinagh -@G_UNICODE_SCRIPT_SYLOTI_NAGRI: Syloti Nagri -@G_UNICODE_SCRIPT_OLD_PERSIAN: Old Persian -@G_UNICODE_SCRIPT_KHAROSHTHI: Kharoshthi -@G_UNICODE_SCRIPT_UNKNOWN: an unassigned code point -@G_UNICODE_SCRIPT_BALINESE: Balinese -@G_UNICODE_SCRIPT_CUNEIFORM: Cuneiform -@G_UNICODE_SCRIPT_PHOENICIAN: Phoenician -@G_UNICODE_SCRIPT_PHAGS_PA: Phags-pa -@G_UNICODE_SCRIPT_NKO: N'Ko -@G_UNICODE_SCRIPT_KAYAH_LI: Kayah Li. Since 2.16.3 -@G_UNICODE_SCRIPT_LEPCHA: Lepcha. Since 2.16.3 -@G_UNICODE_SCRIPT_REJANG: Rejang. Since 2.16.3 -@G_UNICODE_SCRIPT_SUNDANESE: Sundanese. Since 2.16.3 -@G_UNICODE_SCRIPT_SAURASHTRA: Saurashtra. Since 2.16.3 -@G_UNICODE_SCRIPT_CHAM: Cham. Since 2.16.3 -@G_UNICODE_SCRIPT_OL_CHIKI: Ol Chiki. Since 2.16.3 -@G_UNICODE_SCRIPT_VAI: Vai. Since 2.16.3 -@G_UNICODE_SCRIPT_CARIAN: Carian. Since 2.16.3 -@G_UNICODE_SCRIPT_LYCIAN: Lycian. Since 2.16.3 -@G_UNICODE_SCRIPT_LYDIAN: Lydian. Since 2.16.3 - - - - - - -@ch: -@Returns: - - - - -Skips to the next character in a UTF-8 string. The string must be -valid; this macro is as fast as possible, and has no error-checking. -You would use this macro to iterate over a string character by -character. The macro returns the start of the next UTF-8 character. -Before using this macro, use g_utf8_validate() to validate strings -that may contain invalid UTF-8. - - -@p: Pointer to the start of a valid UTF-8 character. - - - - - - - -@p: -@Returns: - - - - - - - -@p: -@max_len: -@Returns: - - - - - - - -@str: -@offset: -@Returns: - - - - - - - -@str: -@pos: -@Returns: - - - - - - - -@p: -@Returns: - - - - - - - -@p: -@end: -@Returns: - - - - - - - -@str: -@p: -@Returns: - - - - - - - -@p: -@max: -@Returns: - - - - - - - -@dest: -@src: -@n: -@Returns: - - - - - - - -@p: -@len: -@c: -@Returns: - - - - - - - -@p: -@len: -@c: -@Returns: - - - - - - - -@str: -@len: -@Returns: - - - - - - - -@str: -@max_len: -@end: -@Returns: - - - - - - - -@str: -@len: -@Returns: - - - - - - - -@str: -@len: -@Returns: - - - - - - - -@str: -@len: -@Returns: - - - - - - - -@str: -@len: -@mode: -@Returns: - - - - -Defines how a Unicode string is transformed in a canonical -form, standardizing such issues as whether a character with an accent is -represented as a base character and combining accent or as a single precomposed -character. Unicode strings should generally be normalized before comparing them. - - -@G_NORMALIZE_DEFAULT: standardize differences that do not affect the - text content, such as the above-mentioned accent representation. -@G_NORMALIZE_NFD: another name for %G_NORMALIZE_DEFAULT. -@G_NORMALIZE_DEFAULT_COMPOSE: like %G_NORMALIZE_DEFAULT, but with composed - forms rather than a maximally decomposed form. -@G_NORMALIZE_NFC: another name for %G_NORMALIZE_DEFAULT_COMPOSE. -@G_NORMALIZE_ALL: beyond %G_NORMALIZE_DEFAULT also standardize the - "compatibility" characters in Unicode, such as SUPERSCRIPT THREE to the - standard forms (in this case DIGIT THREE). Formatting information may be - lost but for most text operations such characters should be considered the - same. -@G_NORMALIZE_NFKD: another name for %G_NORMALIZE_ALL. -@G_NORMALIZE_ALL_COMPOSE: like %G_NORMALIZE_ALL, but with composed - forms rather than a maximally decomposed form. -@G_NORMALIZE_NFKC: another name for %G_NORMALIZE_ALL_COMPOSE. - - - - - - -@str1: -@str2: -@Returns: - - - - - - - -@str: -@len: -@Returns: - - - - - - - -@str: -@len: -@Returns: - - - - - - - -@str: -@len: -@items_read: -@items_written: -@error: -@Returns: - - - - - - - -@str: -@len: -@items_read: -@items_written: -@error: -@Returns: - - - - - - - -@str: -@len: -@items_written: -@Returns: - - - - - - - -@str: -@len: -@items_read: -@items_written: -@error: -@Returns: - - - - - - - -@str: -@len: -@items_read: -@items_written: -@error: -@Returns: - - - - - - - -@str: -@len: -@items_read: -@items_written: -@error: -@Returns: - - - - - - - -@str: -@len: -@items_read: -@items_written: -@error: -@Returns: - - - - - - - -@c: -@outbuf: -@Returns: - - diff --git a/docs/reference/glib/tmpl/version.sgml b/docs/reference/glib/tmpl/version.sgml deleted file mode 100644 index b1cf0bb..0000000 --- a/docs/reference/glib/tmpl/version.sgml +++ /dev/null @@ -1,71 +0,0 @@ - -Version Information - - -Variables and functions to check the GLib version - - - -GLib provides version information, primarily useful in configure checks -for builds that have a configure script. Applications will not -typically use the features described here. - - - - - - - - - - - - -The major version number of the GLib library. -Like #glib_major_version, but from the headers used at -application compile time, rather than from the library linked against -at application run time. - - - - - - -The minor version number of the GLib library. -Like #gtk_minor_version, but from the headers used at -application compile time, rather than from the library linked against -at application run time. - - - - - - -The micro version number of the GLib library. -Like #gtk_micro_version, but from the headers used at -application compile time, rather than from the library linked against -at application run time. - - - - - - -Checks the version of the GLib library. -Returns %TRUE if the version of the GLib header files is the same -as or newer than the passed-in version. - - -Checking the version of the GLib library - - if (!GLIB_CHECK_VERSION (1, 2, 0)) - g_error ("GLib version 1.2.0 or above is needed"); - - - - -@major: the major version number. -@minor: the minor version number. -@micro: the micro version number. - - diff --git a/docs/reference/glib/tmpl/warnings.sgml b/docs/reference/glib/tmpl/warnings.sgml deleted file mode 100644 index cc46878..0000000 --- a/docs/reference/glib/tmpl/warnings.sgml +++ /dev/null @@ -1,233 +0,0 @@ - -Message Output and Debugging Functions - - -functions to output messages and help debug applications - - - -These functions provide support for outputting messages. - - -The g_return family of macros (g_return_if_fail(), -g_return_val_if_fail(), g_return_if_reached(), g_return_val_if_reached()) -should only be used for programming errors, a typical use case is -checking for invalid parameters at the beginning of a public function. -They should not be used if you just mean "if (error) return", they -should only be used if you mean "if (bug in program) return". -The program behavior is generally considered undefined after one of these -checks fails. They are not intended for normal control flow, only to -give a perhaps-helpful warning before giving up. - - - - - - - - - - - - -Outputs a formatted message via the print handler. -The default print handler simply outputs the message to stdout. - - -g_print() should not be used from within libraries for debugging messages, -since it may be redirected by applications to special purpose message -windows or even files. -Instead, libraries should use g_log(), or the convenience functions -g_message(), g_warning() and g_error(). - - -@format: the message format. See the printf() documentation. -@Varargs: the parameters to insert into the format string. - - - - -Sets the print handler. -Any messages passed to g_print() will be output via the new handler. -The default handler simply outputs the message to stdout. -By providing your own handler you can redirect the output, to a GTK+ -widget or a log file for example. - - -@func: the new print handler. -@Returns: the old print handler. - - - - -Specifies the type of the print handler functions. -These are called with the complete formatted string to output. - - -@string: the message to be output. - - - - -Outputs a formatted message via the error message handler. -The default handler simply outputs the message to stderr. - - -g_printerr() should not be used from within libraries. Instead g_log() should -be used, or the convenience functions g_message(), g_warning() and g_error(). - - -@format: the message format. See the printf() documentation. -@Varargs: the parameters to insert into the format string. - - - - -Sets the handler for printing error messages. -Any messages passed to g_printerr() will be output via the new handler. -The default handler simply outputs the message to stderr. -By providing your own handler you can redirect the output, to a GTK+ -widget or a log file for example. - - -@func: the new error message handler. -@Returns: the old error message handler. - - - - -Returns from the current function if the expression is not true. -If the expression evaluates to %FALSE, a critical message is logged and -the function returns. This can only be used in functions which do not return -a value. - - -@expr: the expression to check. - - - - -Returns from the current function, returning the value @val, if the expression -is not true. -If the expression evaluates to %FALSE, a critical message is logged and -@val is returned. - - -@expr: the expression to check. -@val: the value to return from the current function if the expression is not -true. - - - - -Logs a critical message and returns from the current function. -This can only be used in functions which do not return a value. - - - - - - -Logs a critical message and returns @val. - - -@val: the value to return from the current function. - - - - -Logs a warning if the expression is not true. - - -@expr: the expression to check -@Since: 2.16 - - - - -Logs a critical warning. - - -@Since: 2.16 - - - - -Prompts the user with [E]xit, [H]alt, show [S]tack trace or [P]roceed. -This function is intended to be used for debugging use only. The following -example shows how it can be used together with the g_log() functions. - - -#include <glib.h> - -static void -log_handler (const gchar *log_domain, - GLogLevelFlags log_level, - const gchar *message, - gpointer user_data) -{ - g_log_default_handler (log_domain, log_level, message, user_data); - - g_on_error_query (MY_PROGRAM_NAME); -} - -int main (int argc, char *argv[]) -{ - g_log_set_handler (MY_LOG_DOMAIN, - G_LOG_LEVEL_WARNING | - G_LOG_LEVEL_ERROR | - G_LOG_LEVEL_CRITICAL, - log_handler, - NULL); - - /* ... */ - - -If [E]xit is selected, the application terminates with a call to -_exit(0). - - -If [H]alt is selected, the application enters an infinite loop. -The infinite loop can only be stopped by killing the application, -or by setting #glib_on_error_halt to %FALSE (possibly via a debugger). - - -If [S]tack trace is selected, g_on_error_stack_trace() is called. This -invokes gdb, which attaches to the current process and shows a stack trace. -The prompt is then shown again. - - -If [P]roceed is selected, the function returns. - - -This function may cause different actions on non-UNIX platforms. - - -@prg_name: the program name, needed by gdb for the [S]tack trace option. -If @prg_name is %NULL, g_get_prgname() is called to get the program name -(which will work correctly if gdk_init() or gtk_init() has been called). - - - - -Invokes gdb, which attaches to the current process and shows a stack trace. -Called by g_on_error_query() when the [S]tack trace option is selected. - - -This function may cause different actions on non-UNIX platforms. - - -@prg_name: the program name, needed by gdb for the [S]tack trace option. -If @prg_name is %NULL, g_get_prgname() is called to get the program name -(which will work correctly if gdk_init() or gtk_init() has been called). - - - - -Inserts a breakpoint instruction into the code. On x86 and alpha systems -this is implemented as a soft interrupt and on other architectures it raises -a %SIGTRAP signal. - - - - diff --git a/docs/reference/glib/tmpl/windows.sgml b/docs/reference/glib/tmpl/windows.sgml deleted file mode 100644 index 2a5a961..0000000 --- a/docs/reference/glib/tmpl/windows.sgml +++ /dev/null @@ -1,137 +0,0 @@ - -Windows Compatibility Functions - - -UNIX emulation on Windows - - - -These functions provide some level of UNIX emulation on the Windows platform. -If your application really needs the POSIX APIs, we suggest you try the Cygwin -project. - - - - - - - - - - - - -Provided for UNIX emulation on Windows; equivalent to UNIX -macro %MAXPATHLEN, which is the maximum length of a filename -(including full path). - - - - - - - - - -@error: -@Returns: - - - - - - - -@Returns: - - - - - - - -@package: -@dll_name: -@Returns: - - - - - - - -@hmodule: -@Returns: - - - - - - - -@package: -@dll_name: -@subdir: -@Returns: - - - - - - - -@Returns: - - - - - - - -@utf8filename: -@Returns: - - - - -On Windows, this macro defines a DllMain() function that stores the actual -DLL name that the code being compiled will be included in. - - -On non-Windows platforms, expands to nothing. - - -@static: empty or "static". -@dll_name: the name of the (pointer to the) char array where the DLL name - will be stored. If this is used, you must also include - windows.h. If you need a more complex DLL entry - point function, you cannot use this. - - - - -On Windows, this macro defines an expression which evaluates to %TRUE -if the code is running on a version of Windows where the wide -character versions of the Win32 API functions, and the wide chaacter -versions of the C library functions work. (They are always present in -the DLLs, but don't work on Windows 9x and Me.) - - -On non-Windows platforms, it is not defined. - - -@Since: 2.6 - - - - -On Windows, this macro defines an expression which evaluates to %TRUE -if the code is running on an NT-based Windows operating system. - - -On non-Windows platforms, it is not defined. - - -@Since: 2.6 - - diff --git a/docs/reference/gobject/html/gobject.devhelp b/docs/reference/gobject/html/gobject.devhelp deleted file mode 100644 index 103c96b..0000000 --- a/docs/reference/gobject/html/gobject.devhelp +++ /dev/null @@ -1,722 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/docs/reference/gobject/tmpl/enumerations_flags.sgml b/docs/reference/gobject/tmpl/enumerations_flags.sgml deleted file mode 100644 index 95222eb..0000000 --- a/docs/reference/gobject/tmpl/enumerations_flags.sgml +++ /dev/null @@ -1,240 +0,0 @@ - -Enumeration and Flag Types - - - - - - - - - - - - - - - - - - - - - - - - -@g_type_class: -@minimum: -@maximum: -@n_values: -@values: - - - - - - -@g_type_class: -@mask: -@n_values: -@values: - - - - - - -@class: - - - - - - - -@class: - - - - - - - -@type: - - - - - - - -@class: - - - - - - - -@class: - - - - - - - -@type: - - - - - - - -@class: - - - - - - - -@class: - - - - - - - -@class: - - - - - - - -@class: - - - - - - - -@value: -@value_name: -@value_nick: - - - - - - -@value: -@value_name: -@value_nick: - - - - - - -@enum_class: -@value: -@Returns: - - - - - - - -@enum_class: -@name: -@Returns: - - - - - - - -@enum_class: -@nick: -@Returns: - - - - - - - -@flags_class: -@value: -@Returns: - - - - - - - -@flags_class: -@name: -@Returns: - - - - - - - -@flags_class: -@nick: -@Returns: - - - - - - - -@name: -@const_static_values: -@Returns: - - - - - - - -@name: -@const_static_values: -@Returns: - - - - - - - -@g_enum_type: -@info: -@const_values: - - - - - - - -@g_flags_type: -@info: -@const_values: - - diff --git a/docs/reference/gobject/tmpl/gboxed.sgml b/docs/reference/gobject/tmpl/gboxed.sgml deleted file mode 100644 index 75d286c..0000000 --- a/docs/reference/gobject/tmpl/gboxed.sgml +++ /dev/null @@ -1,153 +0,0 @@ - -Boxed Types - - - - - - - - - - - - - - - - - - - - - - - - -@boxed: -@Returns: - - - - - - - -@boxed: - - - - - - - -@boxed_type: -@src_boxed: -@Returns: - - - - - - - -@boxed_type: -@boxed: - - - - - - - -@name: -@boxed_copy: -@boxed_free: -@Returns: - - - - - - - -@name: -@Returns: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/docs/reference/gobject/tmpl/gclosure.sgml b/docs/reference/gobject/tmpl/gclosure.sgml deleted file mode 100644 index 64ac123..0000000 --- a/docs/reference/gobject/tmpl/gclosure.sgml +++ /dev/null @@ -1,573 +0,0 @@ - -Closures - - - - - - - - - - - - - - - - - - - - - - - - -@closure: - - - - - - - -@cl: - - - - - - - -@cclosure: - - - - - - - -@f: - - - - - - - - - - - - - - -@in_marshal: -@is_invalid: - - - - - - - - - - - - - -@closure: -@callback: - - - - - - -@closure: -@return_value: -@n_param_values: -@param_values: -@invocation_hint: -@marshal_data: - - - - - - - -@data: -@closure: - - - - - - - -@callback_func: -@user_data: -@destroy_data: -@Returns: - - - - - - - -@callback_func: -@user_data: -@destroy_data: -@Returns: - - - - - - - -@callback_func: -@object: -@Returns: - - - - - - - -@callback_func: -@object: -@Returns: - - - - - - - -@sizeof_closure: -@object: -@Returns: - - - - - - - -@closure: -@Returns: - - - - - - - -@closure: - - - - - - - -@closure: - - - - - - - -@closure: -@return_value: -@n_param_values: -@param_values: -@invocation_hint: - - - - - - - -@closure: - - - - - - - -@closure: -@notify_data: -@notify_func: - - - - - - - -@closure: -@notify_data: -@notify_func: - - - - - - - -@closure: -@notify_data: -@notify_func: - - - - - - - -@closure: -@notify_data: -@notify_func: - - - - - - - -@sizeof_closure: -@data: -@Returns: - - - - - - - -@closure: -@marshal: - - - - - - - -@closure: -@pre_marshal_data: -@pre_marshal_notify: -@post_marshal_data: -@post_marshal_notify: - - - - - - - -@closure: -@marshal_data: -@meta_marshal: - - - - - - - -@source: -@closure: - - - - - - - - - - - - - - - - - - - - - -@closure: -@return_value: -@n_param_values: -@param_values: -@invocation_hint: -@marshal_data: - - - - - - - -@closure: -@return_value: -@n_param_values: -@param_values: -@invocation_hint: -@marshal_data: - - - - - - - -@closure: -@return_value: -@n_param_values: -@param_values: -@invocation_hint: -@marshal_data: - - - - - - - -@closure: -@return_value: -@n_param_values: -@param_values: -@invocation_hint: -@marshal_data: - - - - - - - -@closure: -@return_value: -@n_param_values: -@param_values: -@invocation_hint: -@marshal_data: - - - - - - - -@closure: -@return_value: -@n_param_values: -@param_values: -@invocation_hint: -@marshal_data: - - - - - - - -@closure: -@return_value: -@n_param_values: -@param_values: -@invocation_hint: -@marshal_data: - - - - - - - -@closure: -@return_value: -@n_param_values: -@param_values: -@invocation_hint: -@marshal_data: - - - - - - - -@closure: -@return_value: -@n_param_values: -@param_values: -@invocation_hint: -@marshal_data: - - - - - - - -@closure: -@return_value: -@n_param_values: -@param_values: -@invocation_hint: -@marshal_data: - - - - - - - -@closure: -@return_value: -@n_param_values: -@param_values: -@invocation_hint: -@marshal_data: - - - - - - - -@closure: -@return_value: -@n_param_values: -@param_values: -@invocation_hint: -@marshal_data: - - - - - - - -@closure: -@return_value: -@n_param_values: -@param_values: -@invocation_hint: -@marshal_data: - - - - - - - -@closure: -@return_value: -@n_param_values: -@param_values: -@invocation_hint: -@marshal_data: - - - - - - - -@closure: -@return_value: -@n_param_values: -@param_values: -@invocation_hint: -@marshal_data: - - - - - - - -@closure: -@return_value: -@n_param_values: -@param_values: -@invocation_hint: -@marshal_data: - - - - - - - -@closure: -@return_value: -@n_param_values: -@param_values: -@invocation_hint: -@marshal_data: - - - - - - - -@closure: -@return_value: -@n_param_values: -@param_values: -@invocation_hint: -@marshal_data: - - - - - - - -@closure: -@return_value: -@n_param_values: -@param_values: -@invocation_hint: -@marshal_data: - - - - - - - -@closure: -@return_value: -@n_param_values: -@param_values: -@invocation_hint: -@marshal_data: - - - - - - - - - diff --git a/docs/reference/gobject/tmpl/generic_values.sgml b/docs/reference/gobject/tmpl/generic_values.sgml deleted file mode 100644 index 9b525c6..0000000 --- a/docs/reference/gobject/tmpl/generic_values.sgml +++ /dev/null @@ -1,211 +0,0 @@ - -Generic values - - - - - - - - - - - - - - - - - - - - - - - - -@value: -@type: - - - - - - - -@value: - - - - - - - -@value: - - - - - - - -@type: - - - - - - - -@type: - - - - - - - -@value: - - - - - - - - - - - - - - - - - - - - - - - - - - - -@value: -@g_type: -@Returns: - - - - - - - -@src_value: -@dest_value: - - - - - - - -@value: -@Returns: - - - - - - - -@value: - - - - - - - -@value: -@instance: - - - - - - - -@value: -@Returns: - - - - - - - -@value: -@Returns: - - - - - - - -@src_type: -@dest_type: -@Returns: - - - - - - - -@src_type: -@dest_type: -@Returns: - - - - - - - -@src_value: -@dest_value: -@Returns: - - - - - - - -@src_value: -@dest_value: - - - - - - - -@src_type: -@dest_type: -@transform_func: - - - - - - - -@value: -@Returns: - - diff --git a/docs/reference/gobject/tmpl/gobject-unused.sgml b/docs/reference/gobject/tmpl/gobject-unused.sgml deleted file mode 100644 index a2c641f..0000000 --- a/docs/reference/gobject/tmpl/gobject-unused.sgml +++ /dev/null @@ -1,96 +0,0 @@ - - -The predefined identifiers of the reserved fundamental types. - - -@G_TYPE_INVALID: Usually a return value indicating an error. -@G_TYPE_NONE: A synonym for the "void" type in C. -@G_TYPE_INTERFACE: Root type of all interface types. -@G_TYPE_CHAR: Identifier for the built-in type "gchar". -@G_TYPE_UCHAR: Identifier for the built-in type "guchar". -@G_TYPE_BOOLEAN: Identifier for the built-in type "gboolean". -@G_TYPE_INT: Identifier for the built-in type "gint". -@G_TYPE_UINT: Identifier for the built-in type "guint". -@G_TYPE_LONG: Identifier for the built-in type "glong". -@G_TYPE_ULONG: Identifier for the built-in type "gulong". -@G_TYPE_INT64: -@G_TYPE_UINT64: -@G_TYPE_ENUM: Identifier for the "#GEnum" type. -@G_TYPE_FLAGS: Identifier for the "#GFlags" type. -@G_TYPE_FLOAT: Identifier for the built-in type "gfloat". -@G_TYPE_DOUBLE: Identifier for the built-in type "gdouble". -@G_TYPE_STRING: Identifier for a pointer to a null-terminated string "gchar*". -@G_TYPE_POINTER: Identifier for anonymous pointers "void*". -@G_TYPE_BOXED: Identifier for the "#GBoxed" type. -@G_TYPE_PARAM: Identifier for the "#GParam" type. -@G_TYPE_OBJECT: Identifier for the "#GObject" type. -@G_TYPE_RESERVED_BSE_FIRST: First fundamental type ID reserved for BSE. -@G_TYPE_RESERVED_BSE_LAST: Last fundamental type ID reserved for BSE. -@G_TYPE_RESERVED_LAST_FUNDAMENTAL: -@G_TYPE_CONSTANT_TYPES: -@G_TYPE_CLOSURE: -@G_TYPE_VALUE: -@G_TYPE_VALUE_ARRAY: -@G_TYPE_GSTRING: -@G_TYPE_PARAM_CHAR: -@G_TYPE_PARAM_UCHAR: -@G_TYPE_PARAM_BOOLEAN: -@G_TYPE_PARAM_INT: -@G_TYPE_PARAM_UINT: -@G_TYPE_PARAM_LONG: -@G_TYPE_PARAM_ULONG: -@G_TYPE_PARAM_INT64: -@G_TYPE_PARAM_UINT64: -@G_TYPE_PARAM_UNICHAR: -@G_TYPE_PARAM_ENUM: -@G_TYPE_PARAM_FLAGS: -@G_TYPE_PARAM_FLOAT: -@G_TYPE_PARAM_DOUBLE: -@G_TYPE_PARAM_STRING: -@G_TYPE_PARAM_PARAM: -@G_TYPE_PARAM_BOXED: -@G_TYPE_PARAM_POINTER: -@G_TYPE_PARAM_VALUE_ARRAY: -@G_TYPE_PARAM_CLOSURE: -@G_TYPE_PARAM_OBJECT: - - - -Determines whether a given set of #GTypeFlags and #GTypeFundamentalFlags -are set for @type. - - -@type: The type to check for flags. -@flags: Bitwise combination of #GTypeFlags and #GTypeFundamentalFlags. -@Returns: #TRUE if all @flags are set for @type, #FALSE otherwise. - - - - - - -@klass: -@private_type: -@Returns: - - - -Determines if @instance adheres to the interface exported -by @iface_type. @iface_type is either a type that @instance -is derived from, or an interface type that is supported by -the anchestry of @instance. - - -@instance: A valid #GTypeInstance structure. -@iface_type: A #GType value. -@Returns: #TRUE if @instance conforms to @iface_type, #FALSE otherwise. - - - -Determines if @value is a #GValue whose type conforms to @type. - - -@value: A valid #GValue structure. -@type: A #GType value. -@Returns: #TRUE if @value is a #GValue of @type or #FALSE if not. - diff --git a/docs/reference/gobject/tmpl/gparamspec.sgml b/docs/reference/gobject/tmpl/gparamspec.sgml deleted file mode 100644 index 55becfa..0000000 --- a/docs/reference/gobject/tmpl/gparamspec.sgml +++ /dev/null @@ -1,426 +0,0 @@ - -GParamSpec - - - - - - - - - - - - - - - - - - - - - - - - -@type: - - - - - - - -@pspec: - - - - - - - -@pspec: - - - - - - - -@pclass: - - - - - - - -@pclass: - - - - - - - -@pspec: - - - - - - - -@pspec: - - - - - - - -@pspec: - - - - - - - -@pspec: - - - - - - - -@g_type_instance: -@name: -@flags: -@value_type: -@owner_type: - - - - - - -@g_type_class: -@value_type: -@finalize: -@value_set_default: -@value_validate: -@values_cmp: - - - - - - -@G_PARAM_READABLE: -@G_PARAM_WRITABLE: -@G_PARAM_CONSTRUCT: -@G_PARAM_CONSTRUCT_ONLY: -@G_PARAM_LAX_VALIDATION: -@G_PARAM_STATIC_NAME: -@G_PARAM_PRIVATE: -@G_PARAM_STATIC_NICK: -@G_PARAM_STATIC_BLURB: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@pspec: -@Returns: - - - - - - - -@pspec: - - - - - - - -@pspec: - - - - - - - -@pspec: -@Returns: - - - - - - - -@pspec: -@value: - - - - - - - -@pspec: -@value: -@Returns: - - - - - - - -@pspec: -@value: -@Returns: - - - - - - - -@pspec: -@src_value: -@dest_value: -@strict_validation: -@Returns: - - - - - - - -@pspec: -@value1: -@value2: -@Returns: - - - - - - - -@pspec: -@Returns: - - - - - - - -@pspec: -@Returns: - - - - - - - -@pspec: -@Returns: - - - - - - - -@pspec: -@quark: -@Returns: - - - - - - - -@pspec: -@quark: -@data: - - - - - - - -@pspec: -@quark: -@data: -@destroy: - - - - - - - -@pspec: -@quark: -@Returns: - - - - - - - -@pspec: -@Returns: - - - - - - - -@param_type: -@name: -@nick: -@blurb: -@flags: -@Returns: - - - - - - - -@instance_size: -@n_preallocs: -@instance_init: -@value_type: -@finalize: -@value_set_default: -@value_validate: -@values_cmp: - - - - - - -@name: -@pspec_info: -@Returns: - - - - - - - - - - - - - -@type_prefixing: -@Returns: - - - - - - - -@pool: -@pspec: -@owner_type: - - - - - - - -@pool: -@pspec: - - - - - - - -@pool: -@param_name: -@owner_type: -@walk_ancestors: -@Returns: - - - - - - - -@pool: -@owner_type: -@n_pspecs_p: -@Returns: - - - - - - - -@pool: -@owner_type: -@Returns: - - diff --git a/docs/reference/gobject/tmpl/gtype.sgml b/docs/reference/gobject/tmpl/gtype.sgml deleted file mode 100644 index 9654798..0000000 --- a/docs/reference/gobject/tmpl/gtype.sgml +++ /dev/null @@ -1,1142 +0,0 @@ - -Type Information - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@type: - - - - - - - - - - - - - - -@x: - - - - - - - -@type: - - - - - - - -@type: - - - - - - - -@type: - - - - - - - -@type: - - - - - - - -@type: - - - - - - - -@type: - - - - - - - -@type: - - - - - - - -@type: - - - - - - - -@type: - - - - - - - -@type: - - - - - - - - - - - - - - - - - - - - - - - - - -@class_size: -@base_init: -@base_finalize: -@class_init: -@class_finalize: -@class_data: -@instance_size: -@n_preallocs: -@instance_init: -@value_table: - - - - - - -@type_flags: - - - - - - -@interface_init: -@interface_finalize: -@interface_data: - - - - - - -@value_init: -@value_free: -@value_copy: -@value_peek_pointer: -@collect_format: -@collect_value: -@lcopy_format: -@lcopy_value: - - - - - - -@instance: - - - - - - - -@g_class: - - - - - - - -@g_iface: - - - - - - - -@instance: -@g_type: -@c_type: - - - - - - - -@instance: -@g_type: -@c_type: - - - - - - - -@instance: -@g_type: -@c_type: - - - - - - - -@instance: - - - - - - - -@instance: -@g_type: -@c_type: - - - - - - - -@instance: -@g_type: - - - - - - - -@g_class: -@g_type: -@c_type: - - - - - - - -@g_class: -@g_type: - - - - - - - -@value: - - - - - - - -@value: -@g_type: - - - - - - - - - - - - - - - - - - - - - -@G_TYPE_DEBUG_NONE: -@G_TYPE_DEBUG_OBJECTS: -@G_TYPE_DEBUG_SIGNALS: -@G_TYPE_DEBUG_MASK: - - - - - - -@debug_flags: - - - - - - - -@type: -@Returns: - - - - - - - -@type: -@Returns: - - - - - - - -@name: -@Returns: - - - - - - - -@type: -@Returns: - - - - - - - -@type: -@Returns: - - - - - - - -@leaf_type: -@root_type: -@Returns: - - - - - - - -@type: -@is_a_type: -@Returns: - - - - - - - -@type: -@Returns: - - - - - - - -@type: -@Returns: - - - - - - - -@type: -@Returns: - - - - - - - -@g_class: - - - - - - - -@g_class: -@Returns: - - - - - - - -@g_class: -@private_size: - - - - - - - -@class_type: -@private_size: - - - - - - - -@instance_class: -@iface_type: -@Returns: - - - - - - - -@g_iface: -@Returns: - - - - - - - -@g_type: -@Returns: - - - - - - - -@g_type: -@Returns: - - - - - - - -@g_iface: - - - - - - - -@type: -@n_children: -@Returns: - - - - - - - -@type: -@n_interfaces: -@Returns: - - - - - - - -@interface_type: -@n_prerequisites: -@Returns: - - - - - - - -@type: -@quark: -@data: - - - - - - - -@type: -@quark: -@Returns: - - - - - - - -@type: -@query: - - - - - - - -@type: -@type_name: -@class_size: -@instance_size: - - - - - - -@g_class: - - - - - - - -@g_class: - - - - - - - -@g_class: -@class_data: - - - - - - - -@g_class: -@class_data: - - - - - - - -@instance: -@g_class: - - - - - - - -@g_iface: -@iface_data: - - - - - - - -@g_iface: -@iface_data: - - - - - - - -@cache_data: -@g_class: -@Returns: - - - - - - - -@G_TYPE_FLAG_ABSTRACT: -@G_TYPE_FLAG_VALUE_ABSTRACT: - - - - - - -@G_TYPE_FLAG_CLASSED: -@G_TYPE_FLAG_INSTANTIATABLE: -@G_TYPE_FLAG_DERIVABLE: -@G_TYPE_FLAG_DEEP_DERIVABLE: - - - - - - -@parent_type: -@type_name: -@info: -@flags: -@Returns: - - - - - - - -@parent_type: -@type_name: -@class_size: -@class_init: -@instance_size: -@instance_init: -@flags: -@Returns: - - - - - - - -@parent_type: -@type_name: -@plugin: -@flags: -@Returns: - - - - - - - -@type_id: -@type_name: -@info: -@finfo: -@flags: -@Returns: - - - - - - - -@instance_type: -@interface_type: -@info: - - - - - - - -@instance_type: -@interface_type: -@plugin: - - - - - - - -@interface_type: -@prerequisite_type: - - - - - - - -@type: -@Returns: - - - - - - - -@instance_type: -@interface_type: -@Returns: - - - - - - - -@Returns: - - - - - - - -@type_id: -@Returns: - - - - - - - -@type: -@Returns: - - - - - - - -@instance: - - - - - - - -@cache_data: -@cache_func: - - - - - - - -@cache_data: -@cache_func: - - - - - - - -@g_class: - - - - - - - -@check_data: -@check_func: - - - - - - - -@check_data: -@check_func: - - - - - - - -@check_data: -@g_iface: - - - - - - - -@type: -@Returns: - - - - - - - -@TN: -@t_n: -@T_P: - - - - - - - -@TN: -@t_n: -@T_P: -@_C_: - - - - - - - -@TN: -@t_n: -@T_P: - - - - - - - -@TN: -@t_n: -@T_P: -@_C_: - - - - - - - -@TN: -@t_n: -@T_P: - - - - - - - -@TN: -@t_n: -@T_P: -@_C_: - - - - - - - -@TYPE_IFACE: -@iface_init: - - - - - - - -@TN: -@t_n: -@T_P: -@_f_: -@_C_: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/docs/reference/gobject/tmpl/gtypemodule.sgml b/docs/reference/gobject/tmpl/gtypemodule.sgml deleted file mode 100644 index 915ee41..0000000 --- a/docs/reference/gobject/tmpl/gtypemodule.sgml +++ /dev/null @@ -1,140 +0,0 @@ - -GTypeModule - - - - - - - - - - - - - - - - - - - - - - - - -@name: - - - - - - -@parent_class: -@load: -@unload: - - - - - - -@module: -@Returns: - - - - - - - -@module: - - - - - - - -@module: -@name: - - - - - - - -@module: -@parent_type: -@type_name: -@type_info: -@flags: -@Returns: - - - - - - - -@module: -@instance_type: -@interface_type: -@interface_info: - - - - - - - -@module: -@name: -@const_static_values: -@Returns: - - - - - - - -@module: -@name: -@const_static_values: -@Returns: - - - - - - - -@TN: -@t_n: -@T_P: - - - - - - - -@TypeName: -@type_name: -@TYPE_PARENT: -@flags: -@CODE: - - - - - - - -@TYPE_IFACE: -@iface_init: - - diff --git a/docs/reference/gobject/tmpl/gtypeplugin.sgml b/docs/reference/gobject/tmpl/gtypeplugin.sgml deleted file mode 100644 index 2da1fc8..0000000 --- a/docs/reference/gobject/tmpl/gtypeplugin.sgml +++ /dev/null @@ -1,113 +0,0 @@ - -GTypePlugin - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@use_plugin: -@unuse_plugin: -@complete_type_info: -@complete_interface_info: - - - - - - -@plugin: - - - - - - - -@plugin: - - - - - - - -@plugin: -@g_type: -@info: -@value_table: - - - - - - - -@plugin: -@instance_type: -@interface_type: -@info: - - - - - - - -@plugin: - - - - - - - -@plugin: - - - - - - - -@plugin: -@g_type: -@info: -@value_table: - - - - - - - -@plugin: -@instance_type: -@interface_type: -@info: - - diff --git a/docs/reference/gobject/tmpl/objects.sgml b/docs/reference/gobject/tmpl/objects.sgml deleted file mode 100644 index ac08291..0000000 --- a/docs/reference/gobject/tmpl/objects.sgml +++ /dev/null @@ -1,632 +0,0 @@ - -The Base Object Type - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@gobject: the object which received the signal. -@arg1: - - - - - - -@g_type_class: -@constructor: -@set_property: -@get_property: -@dispose: -@finalize: -@dispatch_properties_changed: -@notify: -@constructed: - - - - - - -@pspec: -@value: - - - - - - -@object: -@property_id: -@value: -@pspec: - - - - - - - -@object: -@property_id: -@value: -@pspec: - - - - - - - -@object: - - - - - - - -@type: - - - - - - - -@object: - - - - - - - -@object: - - - - - - - -@class: - - - - - - - -@class: - - - - - - - -@object: - - - - - - - -@object: - - - - - - - -@object: - - - - - - - -@class: - - - - - - - -@class: - - - - - - - -@oclass: -@property_id: -@pspec: - - - - - - - -@oclass: -@property_name: -@Returns: - - - - - - - -@oclass: -@n_properties: -@Returns: - - - - - - - -@oclass: -@property_id: -@name: - - - - - - - -@g_iface: -@pspec: - - - - - - - -@g_iface: -@property_name: -@Returns: - - - - - - - -@g_iface: -@n_properties_p: -@Returns: - - - - - - - -@object_type: -@first_property_name: -@Varargs: -@Returns: - - - - - - - -@object_type: -@n_parameters: -@parameters: -@Returns: - - - - - - - -@name: -@value: - - - - - - -@object: -@Returns: - - - - - - - -@object: - - - - - - - -@object: -@Returns: - - - - - - - - - - - - - - - - - - - - - - - - - - -@object: -@Returns: - - - - - - - -@object: - - - - - - - -@data: -@where_the_object_was: - - - - - - - -@object: -@notify: -@data: - - - - - - - -@object: -@notify: -@data: - - - - - - - -@object: -@weak_pointer_location: - - - - - - - -@object: -@weak_pointer_location: - - - - - - - -@data: -@object: -@is_last_ref: - - - - - - - -@object: -@notify: -@data: - - - - - - - -@object: -@notify: -@data: - - - - - - - -@object: -@signal_spec: -@Varargs: -@Returns: - - - - - - - -@object: -@signal_spec: -@Varargs: - - - - - - - -@object: -@first_property_name: -@Varargs: - - - - - - - -@object: -@first_property_name: -@Varargs: - - - - - - - -@object: -@property_name: - - - - - - - -@object: - - - - - - - -@object: - - - - - - - -@object: -@key: -@Returns: - - - - - - - -@object: -@key: -@data: - - - - - - - -@object: -@key: -@data: -@destroy: - - - - - - - -@object: -@key: -@Returns: - - - - - - - -@object: -@quark: -@Returns: - - - - - - - -@object: -@quark: -@data: - - - - - - - -@object: -@quark: -@data: -@destroy: - - - - - - - -@object: -@quark: -@Returns: - - - - - - - -@object: -@property_name: -@value: - - - - - - - -@object: -@property_name: -@value: - - - - - - - -@object_type: -@first_property_name: -@var_args: -@Returns: - - - - - - - -@object: -@first_property_name: -@var_args: - - - - - - - -@object: -@first_property_name: -@var_args: - - - - - - - -@object: -@closure: - - - - - - - -@object: - - - - - - - -@object: -@property_id: -@pspec: - - diff --git a/docs/reference/gobject/tmpl/param_value_types.sgml b/docs/reference/gobject/tmpl/param_value_types.sgml deleted file mode 100644 index 681f73c..0000000 --- a/docs/reference/gobject/tmpl/param_value_types.sgml +++ /dev/null @@ -1,1657 +0,0 @@ - -Standard Parameter and Value Types - - - - - - - - - - - - - - - - - - - - - - - - -@pspec: - - - - - - - -@pspec: - - - - - - - -@value: - - - - - - - - - - - - - - -@parent_instance: -@default_value: - - - - - - -@name: -@nick: -@blurb: -@default_value: -@flags: -@Returns: - - - - - - - -@value: -@v_boolean: - - - - - - - -@value: -@Returns: - - - - - - - -@pspec: - - - - - - - -@pspec: - - - - - - - -@value: - - - - - - - - - - - - - - -@parent_instance: -@minimum: -@maximum: -@default_value: - - - - - - -@name: -@nick: -@blurb: -@minimum: -@maximum: -@default_value: -@flags: -@Returns: - - - - - - - -@value: -@v_char: - - - - - - - -@value: -@Returns: - - - - - - - -@pspec: - - - - - - - -@pspec: - - - - - - - -@value: - - - - - - - - - - - - - - -@parent_instance: -@minimum: -@maximum: -@default_value: - - - - - - -@name: -@nick: -@blurb: -@minimum: -@maximum: -@default_value: -@flags: -@Returns: - - - - - - - -@value: -@v_uchar: - - - - - - - -@value: -@Returns: - - - - - - - -@pspec: - - - - - - - -@pspec: - - - - - - - -@value: - - - - - - - - - - - - - - -@parent_instance: -@minimum: -@maximum: -@default_value: - - - - - - -@name: -@nick: -@blurb: -@minimum: -@maximum: -@default_value: -@flags: -@Returns: - - - - - - - -@value: -@v_int: - - - - - - - -@value: -@Returns: - - - - - - - -@pspec: - - - - - - - -@pspec: - - - - - - - -@value: - - - - - - - - - - - - - - -@parent_instance: -@minimum: -@maximum: -@default_value: - - - - - - -@name: -@nick: -@blurb: -@minimum: -@maximum: -@default_value: -@flags: -@Returns: - - - - - - - -@value: -@v_uint: - - - - - - - -@value: -@Returns: - - - - - - - -@pspec: - - - - - - - -@pspec: - - - - - - - -@value: - - - - - - - - - - - - - - -@parent_instance: -@minimum: -@maximum: -@default_value: - - - - - - -@name: -@nick: -@blurb: -@minimum: -@maximum: -@default_value: -@flags: -@Returns: - - - - - - - -@value: -@v_long: - - - - - - - -@value: -@Returns: - - - - - - - -@pspec: - - - - - - - -@pspec: - - - - - - - -@value: - - - - - - - - - - - - - - -@parent_instance: -@minimum: -@maximum: -@default_value: - - - - - - -@name: -@nick: -@blurb: -@minimum: -@maximum: -@default_value: -@flags: -@Returns: - - - - - - - -@value: -@v_ulong: - - - - - - - -@value: -@Returns: - - - - - - - -@pspec: - - - - - - - -@pspec: - - - - - - - -@value: - - - - - - - - - - - - - - -@parent_instance: -@minimum: -@maximum: -@default_value: - - - - - - -@name: -@nick: -@blurb: -@minimum: -@maximum: -@default_value: -@flags: -@Returns: - - - - - - - -@value: -@v_int64: - - - - - - - -@value: -@Returns: - - - - - - - -@pspec: - - - - - - - -@pspec: - - - - - - - -@value: - - - - - - - - - - - - - - -@parent_instance: -@minimum: -@maximum: -@default_value: - - - - - - -@name: -@nick: -@blurb: -@minimum: -@maximum: -@default_value: -@flags: -@Returns: - - - - - - - -@value: -@v_uint64: - - - - - - - -@value: -@Returns: - - - - - - - -@pspec: - - - - - - - -@pspec: - - - - - - - -@value: - - - - - - - - - - - - - - -@parent_instance: -@minimum: -@maximum: -@default_value: -@epsilon: - - - - - - -@name: -@nick: -@blurb: -@minimum: -@maximum: -@default_value: -@flags: -@Returns: - - - - - - - -@value: -@v_float: - - - - - - - -@value: -@Returns: - - - - - - - -@pspec: - - - - - - - -@pspec: - - - - - - - -@value: - - - - - - - - - - - - - - -@parent_instance: -@minimum: -@maximum: -@default_value: -@epsilon: - - - - - - -@name: -@nick: -@blurb: -@minimum: -@maximum: -@default_value: -@flags: -@Returns: - - - - - - - -@value: -@v_double: - - - - - - - -@value: -@Returns: - - - - - - - -@pspec: - - - - - - - -@pspec: - - - - - - - -@value: - - - - - - - - - - - - - - -@parent_instance: -@enum_class: -@default_value: - - - - - - -@name: -@nick: -@blurb: -@enum_type: -@default_value: -@flags: -@Returns: - - - - - - - -@value: -@v_enum: - - - - - - - -@value: -@Returns: - - - - - - - -@pspec: - - - - - - - -@pspec: - - - - - - - -@value: - - - - - - - - - - - - - - -@parent_instance: -@flags_class: -@default_value: - - - - - - -@name: -@nick: -@blurb: -@flags_type: -@default_value: -@flags: -@Returns: - - - - - - - -@value: -@v_flags: - - - - - - - -@value: -@Returns: - - - - - - - -@pspec: - - - - - - - -@pspec: - - - - - - - -@value: - - - - - - - - - - - - - - -@parent_instance: -@default_value: -@cset_first: -@cset_nth: -@substitutor: -@null_fold_if_empty: -@ensure_non_null: - - - - - - - - - - - - -@name: -@nick: -@blurb: -@default_value: -@flags: -@Returns: - - - - - - - -@value: -@v_string: - - - - - - - -@value: -@v_string: - - - - - - - -@value: -@v_string: - - - - - - - -@value: -@v_string: - - - - - - - -@value: -@Returns: - - - - - - - -@value: -@Returns: - - - - - - - -@pspec: - - - - - - - -@pspec: - - - - - - - -@value: - - - - - - - - - - - - - - -@parent_instance: - - - - - - -@name: -@nick: -@blurb: -@param_type: -@flags: -@Returns: - - - - - - - -@value: -@param: - - - - - - - -@value: -@param: - - - - - - - -@value: -@param: - - - - - - - -@value: -@Returns: - - - - - - - -@value: -@Returns: - - - - - - - -@pspec: - - - - - - - -@pspec: - - - - - - - -@value: - - - - - - - - - - - - - - -@parent_instance: - - - - - - -@name: -@nick: -@blurb: -@boxed_type: -@flags: -@Returns: - - - - - - - -@value: -@v_boxed: - - - - - - - -@value: -@v_boxed: - - - - - - - -@value: -@v_boxed: - - - - - - - -@value: -@v_boxed: - - - - - - - -@value: -@Returns: - - - - - - - -@value: -@Returns: - - - - - - - -@pspec: - - - - - - - -@pspec: - - - - - - - -@value: - - - - - - - - - - - - - - -@parent_instance: - - - - - - -@name: -@nick: -@blurb: -@flags: -@Returns: - - - - - - - -@value: -@v_pointer: - - - - - - - -@value: -@Returns: - - - - - - - -@pspec: - - - - - - - -@pspec: - - - - - - - -@value: - - - - - - - - - - - - - - -@parent_instance: - - - - - - -@name: -@nick: -@blurb: -@object_type: -@flags: -@Returns: - - - - - - - -@value: -@v_object: - - - - - - - -@value: -@v_object: - - - - - - - -@value: -@v_object: - - - - - - - -@value: -@Returns: - - - - - - - -@value: -@Returns: - - - - - - - -@pspec: - - - - - - - -@pspec: - - - - - - - - - - - - - - -@parent_instance: -@default_value: - - - - - - -@name: -@nick: -@blurb: -@default_value: -@flags: -@Returns: - - - - - - - -@pspec: - - - - - - - -@pspec: - - - - - - - - - - - - - - -@parent_instance: -@element_spec: -@fixed_n_elements: - - - - - - -@name: -@nick: -@blurb: -@element_spec: -@flags: -@Returns: - - - - - - - -@pspec: - - - - - - - -@pspec: - - - - - - - - - - - - - - - - - - - - -@name: -@overridden: -@Returns: - - - - - - - -@pspec: - - - - - - - -@pspec: - - - - - - - -@value: - - - - - - - - - - - - - - -@parent_instance: -@is_a_type: - - - - - - -@name: -@nick: -@blurb: -@is_a_type: -@flags: -@Returns: - - - - - - - -@value: -@Returns: - - - - - - - -@value: -@v_gtype: - - diff --git a/docs/reference/gobject/tmpl/signals.sgml b/docs/reference/gobject/tmpl/signals.sgml deleted file mode 100644 index be90c3b..0000000 --- a/docs/reference/gobject/tmpl/signals.sgml +++ /dev/null @@ -1,627 +0,0 @@ - -Signals - - - - - - - - - - - - - - - - - - - - - - - - -@signal_id: -@detail: -@run_type: - - - - - - -@ihint: -@return_accu: -@handler_return: -@data: -@Returns: - - - - - - - - - - - - - -@ihint: -@n_param_values: -@param_values: -@data: -@Returns: - - - - - - - -@G_SIGNAL_RUN_FIRST: -@G_SIGNAL_RUN_LAST: -@G_SIGNAL_RUN_CLEANUP: -@G_SIGNAL_NO_RECURSE: -@G_SIGNAL_DETAILED: -@G_SIGNAL_ACTION: -@G_SIGNAL_NO_HOOKS: - - - - - - -@G_SIGNAL_MATCH_ID: -@G_SIGNAL_MATCH_DETAIL: -@G_SIGNAL_MATCH_CLOSURE: -@G_SIGNAL_MATCH_FUNC: -@G_SIGNAL_MATCH_DATA: -@G_SIGNAL_MATCH_UNBLOCKED: - - - - - - -@signal_id: -@signal_name: -@itype: -@signal_flags: -@return_type: -@n_params: -@param_types: - - - - - - - - - - - - - - - - - - - - - - - - - - - -@signal_name: -@itype: -@signal_flags: -@class_offset: -@accumulator: -@accu_data: -@c_marshaller: -@return_type: -@n_params: -@Varargs: -@Returns: - - - - - - - -@signal_name: -@itype: -@signal_flags: -@class_closure: -@accumulator: -@accu_data: -@c_marshaller: -@return_type: -@n_params: -@param_types: -@Returns: - - - - - - - -@signal_name: -@itype: -@signal_flags: -@class_closure: -@accumulator: -@accu_data: -@c_marshaller: -@return_type: -@n_params: -@args: -@Returns: - - - - - - - -@signal_id: -@query: - - - - - - - -@name: -@itype: -@Returns: - - - - - - - -@signal_id: -@Returns: - - - - - - - -@itype: -@n_ids: -@Returns: - - - - - - - -@instance: -@signal_id: -@detail: -@Varargs: - - - - - - - -@instance: -@detailed_signal: -@Varargs: - - - - - - - -@instance_and_params: -@signal_id: -@detail: -@return_value: - - - - - - - -@instance: -@signal_id: -@detail: -@var_args: - - - - - - - -@instance: -@detailed_signal: -@c_handler: -@data: - - - - - - - -@instance: -@detailed_signal: -@c_handler: -@data: - - - - - - - -@instance: -@detailed_signal: -@c_handler: -@data: - - - - - - - -@instance: -@detailed_signal: -@c_handler: -@gobject: -@connect_flags: -@Returns: - - - - - - - -@G_CONNECT_AFTER: -@G_CONNECT_SWAPPED: - - - - - - -@instance: -@detailed_signal: -@c_handler: -@data: -@destroy_data: -@connect_flags: -@Returns: - - - - - - - -@instance: -@detailed_signal: -@closure: -@after: -@Returns: - - - - - - - -@instance: -@signal_id: -@detail: -@closure: -@after: -@Returns: - - - - - - - -@instance: -@handler_id: - - - - - - - -@instance: -@handler_id: - - - - - - - -@instance: -@handler_id: - - - - - - - -@instance: -@mask: -@signal_id: -@detail: -@closure: -@func: -@data: -@Returns: - - - - - - - -@instance: -@mask: -@signal_id: -@detail: -@closure: -@func: -@data: -@Returns: - - - - - - - -@instance: -@mask: -@signal_id: -@detail: -@closure: -@func: -@data: -@Returns: - - - - - - - -@instance: -@mask: -@signal_id: -@detail: -@closure: -@func: -@data: -@Returns: - - - - - - - -@instance: -@handler_id: -@Returns: - - - - - - - -@instance: -@func: -@data: - - - - - - - -@instance: -@func: -@data: - - - - - - - -@instance: -@func: -@data: - - - - - - - -@instance: -@signal_id: -@detail: -@may_be_blocked: -@Returns: - - - - - - - -@instance: -@signal_id: -@detail: - - - - - - - -@instance: -@detailed_signal: - - - - - - - -@signal_id: -@instance_type: -@class_closure: - - - - - - - -@instance_and_params: -@return_value: - - - - - - - -@signal_name: -@itype: -@signal_flags: -@class_handler: -@accumulator: -@accu_data: -@c_marshaller: -@return_type: -@n_params: -@Varargs: -@Returns: - - - - - - - -@signal_name: -@instance_type: -@class_handler: - - - - - - - -@instance: -@Varargs: - - - - - - - -@signal_id: -@detail: -@hook_func: -@hook_data: -@data_destroy: -@Returns: - - - - - - - -@signal_id: -@hook_id: - - - - - - - -@detailed_signal: -@itype: -@signal_id_p: -@detail_p: -@force_detail_quark: -@Returns: - - - - - - - -@instance: -@Returns: - - - - - - - -@itype: -@struct_offset: -@Returns: - - - - - - - -@ihint: -@return_accu: -@handler_return: -@dummy: -@Returns: - - diff --git a/docs/reference/gobject/tmpl/value_arrays.sgml b/docs/reference/gobject/tmpl/value_arrays.sgml deleted file mode 100644 index 7bdc844..0000000 --- a/docs/reference/gobject/tmpl/value_arrays.sgml +++ /dev/null @@ -1,127 +0,0 @@ - -Value arrays - - - - - - - - - - - - - - - - - - - - - - - - -@n_values: -@values: - - - - - - -@value_array: -@index_: -@Returns: - - - - - - - -@n_prealloced: -@Returns: - - - - - - - -@value_array: -@Returns: - - - - - - - -@value_array: - - - - - - - -@value_array: -@value: -@Returns: - - - - - - - -@value_array: -@value: -@Returns: - - - - - - - -@value_array: -@index_: -@value: -@Returns: - - - - - - - -@value_array: -@index_: -@Returns: - - - - - - - -@value_array: -@compare_func: -@Returns: - - - - - - - -@value_array: -@compare_func: -@user_data: -@Returns: - - diff --git a/docs/reference/gobject/tmpl/value_collection.sgml b/docs/reference/gobject/tmpl/value_collection.sgml deleted file mode 100644 index 872ee85..0000000 --- a/docs/reference/gobject/tmpl/value_collection.sgml +++ /dev/null @@ -1,56 +0,0 @@ - -Varargs Value Collection - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@value: -@var_args: -@flags: -@__error: - - - - - - - -@value: -@var_args: -@flags: -@__error: - - - - - - - - - diff --git a/gio-2.0-uninstalled.pc.in b/gio-2.0-uninstalled.pc.in deleted file mode 100644 index 04da6ea..0000000 --- a/gio-2.0-uninstalled.pc.in +++ /dev/null @@ -1,6 +0,0 @@ -Name: GIO Uninstalled -Description: glib I/O library, Not Installed -Version: @VERSION@ -Requires: glib-2.0-uninstalled,gobject-2.0-uninstalled,gmodule-no-export-2.0-uninstalled -Libs: ${pc_top_builddir}/${pcfiledir}/gio/libgio-2.0.la -Cflags: -I${pc_top_builddir}/${pcfiledir}/@srcdir@ diff --git a/gio-unix-2.0-uninstalled.pc.in b/gio-unix-2.0-uninstalled.pc.in deleted file mode 100644 index a45dc9e..0000000 --- a/gio-unix-2.0-uninstalled.pc.in +++ /dev/null @@ -1,6 +0,0 @@ -Name: GIO unix specific APIs -Description: unix specific headers for glib I/O library, Not Installed -Version: @VERSION@ -Requires: gobject-2.0-uninstalled,gmodule-no-export-2.0-uninstalled,gio-2.0-uninstalled -Libs: ${pc_top_builddir}/${pcfiledir}/gio/libgio-2.0.la -Cflags: -I${pc_top_builddir}/${pcfiledir}/@srcdir@ diff --git a/gio/fen/fen-data.c b/gio/fen/fen-data.c deleted file mode 100644 index fed317f..0000000 --- a/gio/fen/fen-data.c +++ /dev/null @@ -1,718 +0,0 @@ -/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/* vim:set expandtab ts=4 shiftwidth=4: */ -/* - * Copyright (C) 2008 Sun Microsystems, Inc. All rights reserved. - * Use is subject to license terms. - * - * 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., 59 Temple Place, Suite 330, - * Boston, MA 02111-1307, USA. - * - * Authors: Lin Ma - */ - -#include "config.h" -#include -#include -#include -#include -#include -#include -#include "fen-data.h" -#include "fen-kernel.h" -#include "fen-missing.h" -#include "fen-dump.h" - -#define PROCESS_EVENTQ_TIME 10 /* in milliseconds */ -#define PAIR_EVENTS_TIMEVAL 00000 /* in microseconds */ -#define PAIR_EVENTS_INC_TIMEVAL 0000 /* in microseconds */ -#define SCAN_CHANGINGS_TIME 50 /* in milliseconds */ -#define SCAN_CHANGINGS_MAX_TIME (4*100) /* in milliseconds */ -#define SCAN_CHANGINGS_MIN_TIME (4*100) /* in milliseconds */ -#define INIT_CHANGES_NUM 2 -#define BASE_NUM 2 - -#ifdef GIO_COMPILATION -#define FD_W if (fd_debug_enabled) g_warning -static gboolean fd_debug_enabled = FALSE; -#else -#include "gam_error.h" -#define FD_W(...) GAM_DEBUG(DEBUG_INFO, __VA_ARGS__) -#endif - -G_LOCK_EXTERN (fen_lock); -static GList *deleting_data = NULL; -static guint deleting_data_id = 0; - -static void (*emit_once_cb) (fdata *f, int events, gpointer sub); -static void (*emit_cb) (fdata *f, int events); -static int (*_event_converter) (int event); - -static gboolean fdata_delete (fdata* f); -static gint fdata_sub_find (gpointer a, gpointer b); -static void scan_children (node_t *f); -static void scan_known_children (node_t* f); - -node_t* -_add_missing_cb (node_t* parent, gpointer user_data) -{ - g_assert (parent); - FD_W ("%s p:0x%p %s\n", __func__, parent, (gchar*)user_data); - return _add_node (parent, (gchar*)user_data); -} - -gboolean -_pre_del_cb (node_t* node, gpointer user_data) -{ - fdata* data; - - g_assert (node); - data = _node_get_data (node); - FD_W ("%s node:0x%p %s\n", __func__, node, NODE_NAME(node)); - if (data != NULL) { - if (!FN_IS_PASSIVE(data)) { - return FALSE; - } - fdata_delete (data); - } - return TRUE; -} - -static guint -_pow (guint x, guint y) -{ - guint z = 1; - g_assert (x >= 0 && y >= 0); - for (; y > 0; y--) { - z *= x; - } - return z; -} - -static guint -get_scalable_scan_time (fdata* data) -{ - guint sleep_time; - /* Caculate from num = 0 */ - sleep_time = _pow (BASE_NUM, data->changed_event_num) * SCAN_CHANGINGS_TIME; - if (sleep_time < SCAN_CHANGINGS_MIN_TIME) { - sleep_time = SCAN_CHANGINGS_MIN_TIME; - } else if (sleep_time > SCAN_CHANGINGS_MAX_TIME) { - sleep_time = SCAN_CHANGINGS_MAX_TIME; - data->change_update_id = INIT_CHANGES_NUM; - } - FD_W ("SCALABE SCAN num:time [ %4u : %4u ] %s\n", data->changed_event_num, sleep_time, FN_NAME(data)); - return sleep_time; -} - -static gboolean -g_timeval_lt (GTimeVal *val1, GTimeVal *val2) -{ - if (val1->tv_sec < val2->tv_sec) - return TRUE; - - if (val1->tv_sec > val2->tv_sec) - return FALSE; - - /* val1->tv_sec == val2->tv_sec */ - if (val1->tv_usec < val2->tv_usec) - return TRUE; - - return FALSE; -} - -/* - * If all active children nodes are ported, then cancel monitor the parent node - * - * Unsafe, need lock. - */ -static void -scan_known_children (node_t* f) -{ - GDir *dir; - GError *err = NULL; - fdata* pdata; - - FD_W ("%s %s [0x%p]\n", __func__, NODE_NAME(f), f); - pdata = _node_get_data (f); - /* - * Currect fdata must is directly monitored. Be sure it is 1 level monitor. - */ - dir = g_dir_open (NODE_NAME(f), 0, &err); - if (dir) { - const char *basename; - - while ((basename = g_dir_read_name (dir))) - { - node_t* childf = NULL; - fdata* data; - GList *idx; - /* - * If the node is existed, and isn't ported, then emit created - * event. Ignore others. - */ - childf = _children_find (f, basename); - if (childf && - (data = _node_get_data (childf)) != NULL && - !FN_IS_PASSIVE (data)) { - if (!is_monitoring (data) && - _port_add (&data->fobj, &data->len, data)) { - _fdata_emit_events (data, FN_EVENT_CREATED); - } - } - } - g_dir_close (dir); - } else { - FD_W (err->message); - g_error_free (err); - } -} - -static void -scan_children (node_t *f) -{ - GDir *dir; - GError *err = NULL; - fdata* pdata; - - FD_W ("%s %s [0x%p]\n", __func__, NODE_NAME(f), f); - pdata = _node_get_data (f); - /* - * Currect fdata must is directly monitored. Be sure it is 1 level monitor. - */ - dir = g_dir_open (NODE_NAME(f), 0, &err); - if (dir) { - const char *basename; - - while ((basename = g_dir_read_name (dir))) - { - node_t* childf = NULL; - fdata* data; - GList *idx; - - childf = _children_find (f, basename); - if (childf == NULL) { - gchar *filename; - - filename = g_build_filename (NODE_NAME(f), basename, NULL); - childf = _add_node (f, filename); - g_assert (childf); - data = _fdata_new (childf, FALSE); - g_free (filename); - } - if ((data = _node_get_data (childf)) == NULL) { - data = _fdata_new (childf, FALSE); - } - /* Be sure data isn't ported and add to port successfully */ - /* Don't need delete it, it will be deleted by the parent */ - if (is_monitoring (data)) { - /* Ignored */ - } else if (/* !_is_ported (data) && */ - _port_add (&data->fobj, &data->len, data)) { - _fdata_emit_events (data, FN_EVENT_CREATED); - } - } - g_dir_close (dir); - } else { - FD_W (err->message); - g_error_free (err); - } -} - -static gboolean -scan_deleting_data (gpointer data) -{ - fdata *f; - GList* i; - GList* deleted_list = NULL; - gboolean ret = TRUE; - - if (G_TRYLOCK (fen_lock)) { - for (i = deleting_data; i; i = i->next) { - f = (fdata*)i->data; - if (fdata_delete (f)) { - deleted_list = g_list_prepend (deleted_list, i); - } - } - - for (i = deleted_list; i; i = i->next) { - deleting_data = g_list_remove_link (deleting_data, - (GList *)i->data); - g_list_free_1 ((GList *)i->data); - } - g_list_free (deleted_list); - - if (deleting_data == NULL) { - deleting_data_id = 0; - ret = FALSE; - } - G_UNLOCK (fen_lock); - } - return ret; -} - -gboolean -is_monitoring (fdata* data) -{ - return _is_ported (data) || data->change_update_id > 0; -} - -fdata* -_get_parent_data (fdata* data) -{ - if (FN_NODE(data) && !IS_TOPNODE(FN_NODE(data))) { - return _node_get_data (FN_NODE(data)->parent); - } - return NULL; -} - -node_t* -_get_parent_node (fdata* data) -{ - if (FN_NODE(data)) { - return (FN_NODE(data)->parent); - } - return NULL; -} - -fdata * -_fdata_new (node_t* node, gboolean is_mondir) -{ - fdata *f = NULL; - - g_assert (node); - if ((f = g_new0 (fdata, 1)) != NULL) { - FN_NODE(f) = node; - FN_NAME(f) = g_strdup (NODE_NAME(node)); - f->is_dir = is_mondir; - f->eventq = g_queue_new (); - FD_W ("[ %s ] 0x%p %s\n", __func__, f, FN_NAME(f)); - _node_set_data (node, f); - } - return f; -} - -static gboolean -fdata_delete (fdata *f) -{ - fnode_event_t *ev; - - FD_W ("[ TRY %s ] 0x%p id[%4d:%4d] %s\n", __func__, f, f->eventq_id, f->change_update_id, FN_NAME(f)); - g_assert (FN_IS_PASSIVE(f)); - - _port_remove (f); - /* _missing_remove (f); */ - - if (f->node != NULL) { - _node_set_data (f->node, NULL); - f->node = NULL; - } - - if (f->change_update_id > 0 || f->eventq_id > 0) { - if (FN_IS_LIVING(f)) { - f->is_cancelled = TRUE; - deleting_data = g_list_prepend (deleting_data, f); - if (deleting_data_id == 0) { - deleting_data_id = g_idle_add (scan_deleting_data, NULL); - g_assert (deleting_data_id > 0); - } - } - return FALSE; - } - FD_W ("[ %s ] 0x%p %s\n", __func__, f, FN_NAME(f)); - - while ((ev = g_queue_pop_head (f->eventq)) != NULL) { - _fnode_event_delete (ev); - } - - g_queue_free (f->eventq); - g_free (FN_NAME(f)); - g_free (f); - return TRUE; -} - -void -_fdata_reset (fdata* data) -{ - fnode_event_t *ev; - - g_assert (data); - - while ((ev = g_queue_pop_head (data->eventq)) != NULL) { - _fnode_event_delete (ev); - } -} - -static gint -fdata_sub_find (gpointer a, gpointer b) -{ - if (a != b) { - return 1; - } else { - return 0; - } -} - -void -_fdata_sub_add (fdata *f, gpointer sub) -{ - FD_W ("[%s] [data: 0x%p ] [s: 0x%p ] %s\n", __func__, f, sub, FN_NAME(f)); - g_assert (g_list_find_custom (f->subs, sub, (GCompareFunc)fdata_sub_find) == NULL); - f->subs = g_list_prepend (f->subs, sub); -} - -void -_fdata_sub_remove (fdata *f, gpointer sub) -{ - GList *l; - FD_W ("[%s] [data: 0x%p ] [s: 0x%p ] %s\n", __func__, f, sub, FN_NAME(f)); - g_assert (g_list_find_custom (f->subs, sub, (GCompareFunc)fdata_sub_find) != NULL); - l = g_list_find_custom (f->subs, sub, (GCompareFunc)fdata_sub_find); - g_assert (l); - g_assert (sub == l->data); - f->subs = g_list_delete_link (f->subs, l); -} - -/* - * Adjust self on failing to Port - */ -void -_fdata_adjust_deleted (fdata* f) -{ - node_t* parent; - fdata* pdata; - node_op_t op = {NULL, NULL, _pre_del_cb, NULL}; - - /* - * It's a top node. We move it to missing list. - */ - parent = _get_parent_node (f); - pdata = _get_parent_data (f); - if (!FN_IS_PASSIVE(f) || - _children_num (FN_NODE(f)) > 0 || - (pdata && !FN_IS_PASSIVE(pdata))) { - if (parent) { - if (pdata == NULL) { - pdata = _fdata_new (parent, FALSE); - } - g_assert (pdata); - if (!_port_add (&pdata->fobj, &pdata->len, pdata)) { - _fdata_adjust_deleted (pdata); - } - } else { - /* f is root */ - g_assert (IS_TOPNODE(FN_NODE(f))); - _missing_add (f); - } - } else { -#ifdef GIO_COMPILATION - _pending_remove_node (FN_NODE(f), &op); -#else - _remove_node (FN_NODE(f), &op); -#endif - } -} - -static gboolean -fdata_adjust_changed (fdata *f) -{ - fnode_event_t *ev; - struct stat buf; - node_t* parent; - fdata* pdata; - - G_LOCK (fen_lock); - parent = _get_parent_node (f); - pdata = _get_parent_data (f); - - if (!FN_IS_LIVING(f) || - (_children_num (FN_NODE(f)) == 0 && - FN_IS_PASSIVE(f) && - pdata && FN_IS_PASSIVE(pdata))) { - f->change_update_id = 0; - G_UNLOCK (fen_lock); - return FALSE; - } - - FD_W ("[ %s ] %s\n", __func__, FN_NAME(f)); - if (FN_STAT (FN_NAME(f), &buf) != 0) { - FD_W ("LSTAT [%-20s] %s\n", FN_NAME(f), g_strerror (errno)); - goto L_delete; - } - f->is_dir = S_ISDIR (buf.st_mode) ? TRUE : FALSE; - if (f->len != buf.st_size) { - /* FD_W ("LEN [%lld:%lld] %s\n", f->len, buf.st_size, FN_NAME(f)); */ - f->len = buf.st_size; - ev = _fnode_event_new (FILE_MODIFIED, TRUE, f); - if (ev != NULL) { - ev->is_pending = TRUE; - _fdata_add_event (f, ev); - } - /* Fdata is still changing, so scalable scan */ - f->change_update_id = g_timeout_add (get_scalable_scan_time (f), - (GSourceFunc)fdata_adjust_changed, - (gpointer)f); - G_UNLOCK (fen_lock); - return FALSE; - } else { - f->changed_event_num = 0; - f->fobj.fo_atime = buf.st_atim; - f->fobj.fo_mtime = buf.st_mtim; - f->fobj.fo_ctime = buf.st_ctim; - if (FN_IS_DIR(f)) { - if (FN_IS_MONDIR(f)) { - scan_children (FN_NODE(f)); - } else { - scan_known_children (FN_NODE(f)); - if ((_children_num (FN_NODE(f)) == 0 && - FN_IS_PASSIVE(f) && - pdata && FN_IS_PASSIVE(pdata))) { - _port_remove (f); - goto L_exit; - } - } - } - if (!_port_add_simple (&f->fobj, f)) { - L_delete: - ev = _fnode_event_new (FILE_DELETE, FALSE, f); - if (ev != NULL) { - _fdata_add_event (f, ev); - } - } - } -L_exit: - f->change_update_id = 0; - G_UNLOCK (fen_lock); - return FALSE; -} - -void -_fdata_emit_events_once (fdata *f, int event, gpointer sub) -{ - emit_once_cb (f, _event_converter (event), sub); -} - -void -_fdata_emit_events (fdata *f, int event) -{ - emit_cb (f, _event_converter (event)); -} - -static gboolean -process_events (gpointer udata) -{ - node_op_t op = {NULL, NULL, _pre_del_cb, NULL}; - fdata* f; - fnode_event_t* ev; - int e; - - /* FD_W ("IN <======== %s\n", __func__); */ - - f = (fdata*)udata; - FD_W ("%s 0x%p id:%-4d %s\n", __func__, f, f->eventq_id, FN_NAME(f)); - - G_LOCK (fen_lock); - - if (!FN_IS_LIVING(f)) { - f->eventq_id = 0; - G_UNLOCK (fen_lock); - return FALSE; - } - - if ((ev = (fnode_event_t*)g_queue_pop_head (f->eventq)) != NULL) { - /* Send events to clients. */ - e = ev->e; - if (!ev->is_pending) { -#ifdef GIO_COMPILATION - if (ev->has_twin) { - _fdata_emit_events (f, FILE_ATTRIB); - } -#endif - _fdata_emit_events (f, ev->e); - } - - _fnode_event_delete (ev); - ev = NULL; - - /* Adjust node state. */ - /* - * Node the node has been created, so we can delete create event in - * optimizing. To reduce the statings, we add it to Port on discoving - * it then emit CREATED event. So we don't need to do anything here. - */ - switch (e) { - case FILE_MODIFIED: - case MOUNTEDOVER: - case UNMOUNTED: - /* If the event is a changed event, then pending process it */ - if (f->change_update_id == 0) { - f->change_update_id = g_timeout_add (get_scalable_scan_time(f), - (GSourceFunc)fdata_adjust_changed, - (gpointer)f); - g_assert (f->change_update_id > 0); - } - break; - case FILE_ATTRIB: - g_assert (f->change_update_id == 0); - if (!_port_add (&f->fobj, &f->len, f)) { - ev = _fnode_event_new (FILE_DELETE, FALSE, f); - if (ev != NULL) { - _fdata_add_event (f, ev); - } - } - break; - case FILE_DELETE: /* Ignored */ - break; - default: - g_assert_not_reached (); - break; - } - /* Process one event a time */ - G_UNLOCK (fen_lock); - return TRUE; - } - f->eventq_id = 0; - G_UNLOCK (fen_lock); - /* FD_W ("OUT ========> %s\n", __func__); */ - return FALSE; -} - -void -_fdata_add_event (fdata *f, fnode_event_t *ev) -{ - node_op_t op = {NULL, NULL, _pre_del_cb, NULL}; - fnode_event_t *tail; - - if (!FN_IS_LIVING(f)) { - _fnode_event_delete (ev); - return; - } - - FD_W ("%s %d\n", __func__, ev->e); - g_get_current_time (&ev->t); - /* - * If created/deleted events of child node happened, then we use parent - * event queue to handle. - * If child node emits deleted event, it seems no changes for the parent - * node, but the attr is changed. So we may try to cancel processing the - * coming changed events of the parent node. - */ - tail = (fnode_event_t*)g_queue_peek_tail (f->eventq); - switch (ev->e) { - case FILE_RENAME_FROM: - case FILE_RENAME_TO: - case FILE_ACCESS: - _fnode_event_delete (ev); - g_assert_not_reached (); - return; - case FILE_DELETE: - /* clear changed event number */ - f->changed_event_num = 0; - /* - * We will cancel all previous events. - */ - if (tail) { - g_queue_pop_tail (f->eventq); - do { - _fnode_event_delete (tail); - } while ((tail = (fnode_event_t*)g_queue_pop_tail (f->eventq)) != NULL); - } - /* - * Given a node "f" is deleted, process it ASAP. - */ - _fdata_emit_events (f, ev->e); - _fnode_event_delete (ev); - _fdata_adjust_deleted (f); - return; - case FILE_MODIFIED: - case UNMOUNTED: - case MOUNTEDOVER: - /* clear changed event number */ - f->changed_event_num ++; - case FILE_ATTRIB: - default: - /* - * If in the time range, we will try optimizing - * (changed+) to (changed) - * (attrchanged changed) to ([changed, attrchanged]) - * (event attrchanged) to ([event, attrchanged]) - */ - if (tail) { - do { - if (tail->e == ev->e) { - if (g_timeval_lt (&ev->t, &tail->t)) { - g_queue_peek_tail (f->eventq); - /* Add the increment */ - g_time_val_add (&ev->t, PAIR_EVENTS_INC_TIMEVAL); - /* skip the previous event */ - FD_W ("SKIPPED -- %s\n", _event_string (tail->e)); - _fnode_event_delete (tail); - } else { - break; - } - } else if (ev->e == FILE_MODIFIED && tail->e == FILE_ATTRIB) { - ev->has_twin = TRUE; - _fnode_event_delete (tail); - } else if (ev->e == FILE_ATTRIB && f->change_update_id > 0) { - tail->has_twin = TRUE; - /* skip the current event */ - _fnode_event_delete (ev); - return; - } else { - break; - } - } while ((tail = (fnode_event_t*)g_queue_peek_tail (f->eventq)) != NULL); - } - } - - /* must add the threshold time */ - g_time_val_add (&ev->t, PAIR_EVENTS_TIMEVAL); - - g_queue_push_tail (f->eventq, ev); - - /* starting process_events */ - if (f->eventq_id == 0) { - f->eventq_id = g_timeout_add (PROCESS_EVENTQ_TIME, - process_events, - (gpointer)f); - g_assert (f->eventq_id > 0); - } - FD_W ("%s 0x%p id:%-4d %s\n", __func__, f, f->eventq_id, FN_NAME(f)); -} - -gboolean -_fdata_class_init (void (*user_emit_cb) (fdata*, int), - void (*user_emit_once_cb) (fdata*, int, gpointer), - int (*user_event_converter) (int event)) -{ - FD_W ("%s\n", __func__); - if (user_emit_cb == NULL) { - return FALSE; - } - if (user_emit_once_cb == NULL) { - return FALSE; - } - if (user_event_converter == NULL) { - return FALSE; - } - emit_cb = user_emit_cb; - emit_once_cb = user_emit_once_cb; - _event_converter = user_event_converter; - - if (!_port_class_init (_fdata_add_event)) { - FD_W ("_port_class_init failed."); - return FALSE; - } - return TRUE; -} diff --git a/gio/fen/fen-data.h b/gio/fen/fen-data.h deleted file mode 100644 index 67419a2..0000000 --- a/gio/fen/fen-data.h +++ /dev/null @@ -1,89 +0,0 @@ -/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/* vim:set expandtab ts=4 shiftwidth=4: */ -/* - * Copyright (C) 2008 Sun Microsystems, Inc. All rights reserved. - * Use is subject to license terms. - * - * 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., 59 Temple Place, Suite 330, - * Boston, MA 02111-1307, USA. - * - * Authors: Lin Ma - */ - -#include -#include -#include -#include "fen-node.h" -#include "fen-kernel.h" - -#ifndef _FEN_DATA_H_ -#define _FEN_DATA_H_ - -#define FN_EVENT_CREATED 0 -#define FN_NAME(fp) (((fdata*)(fp))->fobj.fo_name) -#define FN_NODE(fp) (((fdata*)(fp))->node) -#define FN_IS_DIR(fp) (((fdata*)(fp))->is_dir) -#define FN_IS_PASSIVE(fp) (((fdata*)(fp))->subs == NULL) -#define FN_IS_MONDIR(fp) (((fdata*)(fp))->mon_dir_num > 0) -#define FN_IS_LIVING(fp) (!((fdata*)(fp))->is_cancelled) - -typedef struct -{ - file_obj_t fobj; - off_t len; - gboolean is_cancelled; - - node_t* node; - /* to identify if the path is dir */ - gboolean is_dir; - guint mon_dir_num; - - /* List of subscriptions monitoring this fdata/path */ - GList *subs; - - /* prcessed changed events num */ - guint changed_event_num; - - /* process events source id */ - GQueue* eventq; - guint eventq_id; - guint change_update_id; -} fdata; - -/* fdata functions */ -fdata* _fdata_new (node_t* node, gboolean is_mondir); -void _fdata_reset (fdata* data); -void _fdata_emit_events_once (fdata *f, int event, gpointer sub); -void _fdata_emit_events (fdata *f, int event); -void _fdata_add_event (fdata *f, fnode_event_t *ev); -void _fdata_adjust_deleted (fdata *f); -fdata* _get_parent_data (fdata* data); -node_t* _get_parent_node (fdata* data); -gboolean _is_monitoring (fdata* data); - -/* sub */ -void _fdata_sub_add (fdata *f, gpointer sub); -void _fdata_sub_remove (fdata *f, gpointer sub); - -/* misc */ -node_t* _add_missing_cb (node_t* parent, gpointer user_data); -gboolean _pre_del_cb (node_t* node, gpointer user_data); - -/* init */ -gboolean _fdata_class_init (void (*user_emit_cb) (fdata*, int), - void (*user_emit_once_cb) (fdata*, int, gpointer), - int (*user_event_converter) (int event)); - -#endif /* _FEN_DATA_H_ */ diff --git a/gio/fen/fen-missing.c b/gio/fen/fen-missing.c deleted file mode 100644 index 9091587..0000000 --- a/gio/fen/fen-missing.c +++ /dev/null @@ -1,121 +0,0 @@ -/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/* vim:set expandtab ts=4 shiftwidth=4: */ -/* - * Copyright (C) 2008 Sun Microsystems, Inc. All rights reserved. - * Use is subject to license terms. - * - * 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., 59 Temple Place, Suite 330, - * Boston, MA 02111-1307, USA. - * - * Authors: Lin Ma - */ - -#include "config.h" -#include -#include "fen-data.h" -#include "fen-missing.h" - -G_LOCK_EXTERN (fen_lock); -#define SCAN_MISSING_INTERVAL 4000 /* in milliseconds */ - -#ifdef GIO_COMPILATION -#define FM_W if (fm_debug_enabled) g_warning -gboolean fm_debug_enabled = FALSE; -#else -#include "gam_error.h" -#define FM_W(...) GAM_DEBUG(DEBUG_INFO, __VA_ARGS__) -#endif - -/* global data structure for scan missing files */ -static GList *missing_list = NULL; -static guint scan_missing_source_id = 0; - -static gboolean scan_missing_list (gpointer data); - -static gboolean -scan_missing_list (gpointer data) -{ - GList *existing_list = NULL; - GList *idx = NULL; - fdata *f; - gboolean ret = TRUE; - - G_LOCK (fen_lock); - - for (idx = missing_list; idx; idx = idx->next) { - f = (fdata*)idx->data; - - if (_port_add (&f->fobj, &f->len, f)) { - /* TODO - emit CREATE event */ - _fdata_emit_events (f, FN_EVENT_CREATED); - existing_list = g_list_prepend (existing_list, idx); - } - } - - for (idx = existing_list; idx; idx = idx->next) { - missing_list = g_list_remove_link (missing_list, (GList *)idx->data); - g_list_free_1 ((GList *)idx->data); - } - g_list_free (existing_list); - - if (missing_list == NULL) { - scan_missing_source_id = 0; - ret = FALSE; - } - - G_UNLOCK (fen_lock); - return ret; -} - -/** - * missing_add - * - * Unsafe, need lock fen_lock. - */ -void -_missing_add (fdata *f) -{ - GList *idx; - - g_assert (!_is_ported (f)); - - if (g_list_find (missing_list, f) != NULL) { - FM_W ("%s is ALREADY added %s\n", __func__, FN_NAME(f)); - return; - } - FM_W ("%s is added %s\n", __func__, FN_NAME(f)); - - missing_list = g_list_prepend (missing_list, f); - - /* if doesn't scan, then start */ - if (scan_missing_source_id == 0) { - scan_missing_source_id = g_timeout_add (SCAN_MISSING_INTERVAL, - scan_missing_list, - NULL); - g_assert (scan_missing_source_id > 0); - } -} - -/** - * missing_remove - * - * Unsafe, need lock fen_lock. - */ -void -_missing_remove (fdata *f) -{ - FM_W ("%s %s\n", __func__, FN_NAME(f)); - missing_list = g_list_remove (missing_list, f); -} diff --git a/gio/fen/fen-missing.h b/gio/fen/fen-missing.h deleted file mode 100644 index d431a00..0000000 --- a/gio/fen/fen-missing.h +++ /dev/null @@ -1,38 +0,0 @@ -/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/* vim:set expandtab ts=4 shiftwidth=4: */ -/* - * Copyright (C) 2008 Sun Microsystems, Inc. All rights reserved. - * Use is subject to license terms. - * - * 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., 59 Temple Place, Suite 330, - * Boston, MA 02111-1307, USA. - * - * Authors: Lin Ma - */ - -#ifndef __GAM_FEN_H__ -#define __GAM_FEN_H__ - -#include "fen-data.h" - -G_BEGIN_DECLS - -extern void _missing_add (fdata *f); -extern void _missing_remove (fdata *f); - -G_END_DECLS - -#endif /* __GAM_FEN_H__ */ - diff --git a/gio/fen/fen-sub.c b/gio/fen/fen-sub.c deleted file mode 100644 index 780a825..0000000 --- a/gio/fen/fen-sub.c +++ /dev/null @@ -1,42 +0,0 @@ -/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/* vim:set expandtab ts=4 shiftwidth=4: */ -/* - * Copyright (C) 2008 Sun Microsystems, Inc. All rights reserved. - * Use is subject to license terms. - * - * 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., 59 Temple Place, Suite 330, - * Boston, MA 02111-1307, USA. - * - * Authors: Lin Ma - */ - -#include "config.h" -#include "fen-sub.h" - -fen_sub* -_fen_sub_new (gpointer udata, gboolean is_mondir) -{ - fen_sub *sub; - sub = g_new (fen_sub, 1); - sub->user_data = udata; - sub->is_mondir = is_mondir; - return sub; -} - -void -_fen_sub_delete (fen_sub *sub) -{ - g_free (sub); -} diff --git a/gio/fen/fen-sub.h b/gio/fen/fen-sub.h deleted file mode 100644 index ad232bc..0000000 --- a/gio/fen/fen-sub.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/* vim:set expandtab ts=4 shiftwidth=4: */ -/* - * Copyright (C) 2008 Sun Microsystems, Inc. All rights reserved. - * Use is subject to license terms. - * - * 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., 59 Temple Place, Suite 330, - * Boston, MA 02111-1307, USA. - * - * Authors: Lin Ma - */ - -#include - -#ifndef _FEN_SUB_H_ -#define _FEN_SUB_H_ - -typedef struct _fen_sub -{ - gpointer user_data; - gboolean is_mondir; -} fen_sub; - -fen_sub* _fen_sub_new (gpointer udata, gboolean is_mondir); -void _fen_sub_delete (fen_sub *sub); - -#endif _FEN_SUB_H_ diff --git a/gio/gio-marshal.list b/gio/gio-marshal.list deleted file mode 100644 index 269ec35..0000000 --- a/gio/gio-marshal.list +++ /dev/null @@ -1,6 +0,0 @@ -VOID:STRING,STRING,STRING,FLAGS -VOID:STRING,BOXED -VOID:BOOLEAN,POINTER -VOID:OBJECT,OBJECT,ENUM -BOOLEAN:OBJECT,OBJECT -VOID:STRING,BOXED,BOXED diff --git a/gio/gioalias.h b/gio/gioalias.h deleted file mode 100644 index 989a0fd..0000000 --- a/gio/gioalias.h +++ /dev/null @@ -1,3008 +0,0 @@ -/* Generated by makegioalias.pl */ - -#ifndef DISABLE_VISIBILITY - -#include "glib.h" - -#ifdef G_HAVE_GNUC_VISIBILITY - -#define IN_FILE(x) 1 -#define IN_HEADER defined - -#if IN_HEADER(__G_VFS_H__) -#if IN_FILE(__G_VFS_C__) -extern __typeof (g_vfs_get_type) IA__g_vfs_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_vfs_get_type IA__g_vfs_get_type - -extern __typeof (g_vfs_is_active) IA__g_vfs_is_active __attribute((visibility("hidden"))); -#define g_vfs_is_active IA__g_vfs_is_active - -extern __typeof (g_vfs_get_file_for_path) IA__g_vfs_get_file_for_path __attribute((visibility("hidden"))); -#define g_vfs_get_file_for_path IA__g_vfs_get_file_for_path - -extern __typeof (g_vfs_get_file_for_uri) IA__g_vfs_get_file_for_uri __attribute((visibility("hidden"))); -#define g_vfs_get_file_for_uri IA__g_vfs_get_file_for_uri - -extern __typeof (g_vfs_get_supported_uri_schemes) IA__g_vfs_get_supported_uri_schemes __attribute((visibility("hidden"))); -#define g_vfs_get_supported_uri_schemes IA__g_vfs_get_supported_uri_schemes - -extern __typeof (g_vfs_parse_name) IA__g_vfs_parse_name __attribute((visibility("hidden"))); -#define g_vfs_parse_name IA__g_vfs_parse_name - -extern __typeof (g_vfs_get_default) IA__g_vfs_get_default __attribute((visibility("hidden"))); -#define g_vfs_get_default IA__g_vfs_get_default - -extern __typeof (g_vfs_get_local) IA__g_vfs_get_local __attribute((visibility("hidden"))); -#define g_vfs_get_local IA__g_vfs_get_local - -#endif -#endif -#if IN_HEADER(__G_APP_INFO_H__) -#if IN_FILE(__G_APP_INFO_C__) -extern __typeof (g_app_info_get_type) IA__g_app_info_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_app_info_get_type IA__g_app_info_get_type - -extern __typeof (g_app_launch_context_get_type) IA__g_app_launch_context_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_app_launch_context_get_type IA__g_app_launch_context_get_type - -extern __typeof (g_app_info_dup) IA__g_app_info_dup __attribute((visibility("hidden"))); -#define g_app_info_dup IA__g_app_info_dup - -extern __typeof (g_app_info_equal) IA__g_app_info_equal __attribute((visibility("hidden"))); -#define g_app_info_equal IA__g_app_info_equal - -extern __typeof (g_app_info_get_id) IA__g_app_info_get_id __attribute((visibility("hidden"))); -#define g_app_info_get_id IA__g_app_info_get_id - -extern __typeof (g_app_info_get_name) IA__g_app_info_get_name __attribute((visibility("hidden"))); -#define g_app_info_get_name IA__g_app_info_get_name - -extern __typeof (g_app_info_get_display_name) IA__g_app_info_get_display_name __attribute((visibility("hidden"))); -#define g_app_info_get_display_name IA__g_app_info_get_display_name - -extern __typeof (g_app_info_get_description) IA__g_app_info_get_description __attribute((visibility("hidden"))); -#define g_app_info_get_description IA__g_app_info_get_description - -extern __typeof (g_app_info_get_executable) IA__g_app_info_get_executable __attribute((visibility("hidden"))); -#define g_app_info_get_executable IA__g_app_info_get_executable - -extern __typeof (g_app_info_get_commandline) IA__g_app_info_get_commandline __attribute((visibility("hidden"))); -#define g_app_info_get_commandline IA__g_app_info_get_commandline - -extern __typeof (g_app_info_get_icon) IA__g_app_info_get_icon __attribute((visibility("hidden"))); -#define g_app_info_get_icon IA__g_app_info_get_icon - -extern __typeof (g_app_info_launch) IA__g_app_info_launch __attribute((visibility("hidden"))); -#define g_app_info_launch IA__g_app_info_launch - -extern __typeof (g_app_info_supports_uris) IA__g_app_info_supports_uris __attribute((visibility("hidden"))); -#define g_app_info_supports_uris IA__g_app_info_supports_uris - -extern __typeof (g_app_info_supports_files) IA__g_app_info_supports_files __attribute((visibility("hidden"))); -#define g_app_info_supports_files IA__g_app_info_supports_files - -extern __typeof (g_app_info_launch_uris) IA__g_app_info_launch_uris __attribute((visibility("hidden"))); -#define g_app_info_launch_uris IA__g_app_info_launch_uris - -extern __typeof (g_app_info_should_show) IA__g_app_info_should_show __attribute((visibility("hidden"))); -#define g_app_info_should_show IA__g_app_info_should_show - -extern __typeof (g_app_info_set_as_default_for_type) IA__g_app_info_set_as_default_for_type __attribute((visibility("hidden"))); -#define g_app_info_set_as_default_for_type IA__g_app_info_set_as_default_for_type - -extern __typeof (g_app_info_set_as_default_for_extension) IA__g_app_info_set_as_default_for_extension __attribute((visibility("hidden"))); -#define g_app_info_set_as_default_for_extension IA__g_app_info_set_as_default_for_extension - -extern __typeof (g_app_info_add_supports_type) IA__g_app_info_add_supports_type __attribute((visibility("hidden"))); -#define g_app_info_add_supports_type IA__g_app_info_add_supports_type - -extern __typeof (g_app_info_can_remove_supports_type) IA__g_app_info_can_remove_supports_type __attribute((visibility("hidden"))); -#define g_app_info_can_remove_supports_type IA__g_app_info_can_remove_supports_type - -extern __typeof (g_app_info_remove_supports_type) IA__g_app_info_remove_supports_type __attribute((visibility("hidden"))); -#define g_app_info_remove_supports_type IA__g_app_info_remove_supports_type - -extern __typeof (g_app_info_launch_default_for_uri) IA__g_app_info_launch_default_for_uri __attribute((visibility("hidden"))); -#define g_app_info_launch_default_for_uri IA__g_app_info_launch_default_for_uri - -extern __typeof (g_app_info_can_delete) IA__g_app_info_can_delete __attribute((visibility("hidden"))); -#define g_app_info_can_delete IA__g_app_info_can_delete - -extern __typeof (g_app_info_delete) IA__g_app_info_delete __attribute((visibility("hidden"))); -#define g_app_info_delete IA__g_app_info_delete - -extern __typeof (g_app_launch_context_new) IA__g_app_launch_context_new __attribute((visibility("hidden"))); -#define g_app_launch_context_new IA__g_app_launch_context_new - -extern __typeof (g_app_launch_context_get_display) IA__g_app_launch_context_get_display __attribute((visibility("hidden"))); -#define g_app_launch_context_get_display IA__g_app_launch_context_get_display - -extern __typeof (g_app_launch_context_get_startup_notify_id) IA__g_app_launch_context_get_startup_notify_id __attribute((visibility("hidden"))); -#define g_app_launch_context_get_startup_notify_id IA__g_app_launch_context_get_startup_notify_id - -extern __typeof (g_app_launch_context_launch_failed) IA__g_app_launch_context_launch_failed __attribute((visibility("hidden"))); -#define g_app_launch_context_launch_failed IA__g_app_launch_context_launch_failed - -#endif -#if IN_FILE(__G_DESKTOP_APP_INFO_C__) -extern __typeof (g_app_info_create_from_commandline) IA__g_app_info_create_from_commandline __attribute((visibility("hidden"))); -#define g_app_info_create_from_commandline IA__g_app_info_create_from_commandline - -extern __typeof (g_app_info_get_all) IA__g_app_info_get_all __attribute((visibility("hidden"))); -#define g_app_info_get_all IA__g_app_info_get_all - -extern __typeof (g_app_info_get_all_for_type) IA__g_app_info_get_all_for_type __attribute((visibility("hidden"))); -#define g_app_info_get_all_for_type IA__g_app_info_get_all_for_type - -extern __typeof (g_app_info_get_default_for_type) IA__g_app_info_get_default_for_type __attribute((visibility("hidden"))); -#define g_app_info_get_default_for_type IA__g_app_info_get_default_for_type - -extern __typeof (g_app_info_get_default_for_uri_scheme) IA__g_app_info_get_default_for_uri_scheme __attribute((visibility("hidden"))); -#define g_app_info_get_default_for_uri_scheme IA__g_app_info_get_default_for_uri_scheme - -extern __typeof (g_app_info_reset_type_associations) IA__g_app_info_reset_type_associations __attribute((visibility("hidden"))); -#define g_app_info_reset_type_associations IA__g_app_info_reset_type_associations - -#endif -#endif -#if IN_HEADER(__G_DESKTOP_APP_INFO_H__) -#if IN_FILE(__G_DESKTOP_APP_INFO_C__) -#ifdef G_OS_UNIX -extern __typeof (g_desktop_app_info_new_from_filename) IA__g_desktop_app_info_new_from_filename __attribute((visibility("hidden"))); -#define g_desktop_app_info_new_from_filename IA__g_desktop_app_info_new_from_filename - -extern __typeof (g_desktop_app_info_new_from_keyfile) IA__g_desktop_app_info_new_from_keyfile __attribute((visibility("hidden"))); -#define g_desktop_app_info_new_from_keyfile IA__g_desktop_app_info_new_from_keyfile - -extern __typeof (g_desktop_app_info_new) IA__g_desktop_app_info_new __attribute((visibility("hidden"))); -#define g_desktop_app_info_new IA__g_desktop_app_info_new - -extern __typeof (g_desktop_app_info_get_filename) IA__g_desktop_app_info_get_filename __attribute((visibility("hidden"))); -#define g_desktop_app_info_get_filename IA__g_desktop_app_info_get_filename - -extern __typeof (g_desktop_app_info_get_type) IA__g_desktop_app_info_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_desktop_app_info_get_type IA__g_desktop_app_info_get_type - -extern __typeof (g_desktop_app_info_get_is_hidden) IA__g_desktop_app_info_get_is_hidden __attribute((visibility("hidden"))); -#define g_desktop_app_info_get_is_hidden IA__g_desktop_app_info_get_is_hidden - -extern __typeof (g_desktop_app_info_set_desktop_env) IA__g_desktop_app_info_set_desktop_env __attribute((visibility("hidden"))); -#define g_desktop_app_info_set_desktop_env IA__g_desktop_app_info_set_desktop_env - -extern __typeof (g_desktop_app_info_lookup_get_type) IA__g_desktop_app_info_lookup_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_desktop_app_info_lookup_get_type IA__g_desktop_app_info_lookup_get_type - -extern __typeof (g_desktop_app_info_lookup_get_default_for_uri_scheme) IA__g_desktop_app_info_lookup_get_default_for_uri_scheme __attribute((visibility("hidden"))); -#define g_desktop_app_info_lookup_get_default_for_uri_scheme IA__g_desktop_app_info_lookup_get_default_for_uri_scheme - -#endif -#endif -#endif -#if IN_HEADER(__G_ASYNC_RESULT_H__) -#if IN_FILE(__G_ASYNC_RESULT_C__) -extern __typeof (g_async_result_get_type) IA__g_async_result_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_async_result_get_type IA__g_async_result_get_type - -extern __typeof (g_async_result_get_user_data) IA__g_async_result_get_user_data __attribute((visibility("hidden"))); -#define g_async_result_get_user_data IA__g_async_result_get_user_data - -extern __typeof (g_async_result_get_source_object) IA__g_async_result_get_source_object __attribute((visibility("hidden"))); -#define g_async_result_get_source_object IA__g_async_result_get_source_object - -#endif -#endif -#if IN_HEADER(__G_BUFFERED_INPUT_STREAM_H__) -#if IN_FILE(__G_BUFFERED_INPUT_STREAM_C__) -extern __typeof (g_buffered_input_stream_get_type) IA__g_buffered_input_stream_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_buffered_input_stream_get_type IA__g_buffered_input_stream_get_type - -extern __typeof (g_buffered_input_stream_new) IA__g_buffered_input_stream_new __attribute((visibility("hidden"))); -#define g_buffered_input_stream_new IA__g_buffered_input_stream_new - -extern __typeof (g_buffered_input_stream_new_sized) IA__g_buffered_input_stream_new_sized __attribute((visibility("hidden"))); -#define g_buffered_input_stream_new_sized IA__g_buffered_input_stream_new_sized - -extern __typeof (g_buffered_input_stream_get_buffer_size) IA__g_buffered_input_stream_get_buffer_size __attribute((visibility("hidden"))); -#define g_buffered_input_stream_get_buffer_size IA__g_buffered_input_stream_get_buffer_size - -extern __typeof (g_buffered_input_stream_set_buffer_size) IA__g_buffered_input_stream_set_buffer_size __attribute((visibility("hidden"))); -#define g_buffered_input_stream_set_buffer_size IA__g_buffered_input_stream_set_buffer_size - -extern __typeof (g_buffered_input_stream_get_available) IA__g_buffered_input_stream_get_available __attribute((visibility("hidden"))); -#define g_buffered_input_stream_get_available IA__g_buffered_input_stream_get_available - -extern __typeof (g_buffered_input_stream_peek) IA__g_buffered_input_stream_peek __attribute((visibility("hidden"))); -#define g_buffered_input_stream_peek IA__g_buffered_input_stream_peek - -extern __typeof (g_buffered_input_stream_peek_buffer) IA__g_buffered_input_stream_peek_buffer __attribute((visibility("hidden"))); -#define g_buffered_input_stream_peek_buffer IA__g_buffered_input_stream_peek_buffer - -extern __typeof (g_buffered_input_stream_fill) IA__g_buffered_input_stream_fill __attribute((visibility("hidden"))); -#define g_buffered_input_stream_fill IA__g_buffered_input_stream_fill - -extern __typeof (g_buffered_input_stream_fill_async) IA__g_buffered_input_stream_fill_async __attribute((visibility("hidden"))); -#define g_buffered_input_stream_fill_async IA__g_buffered_input_stream_fill_async - -extern __typeof (g_buffered_input_stream_fill_finish) IA__g_buffered_input_stream_fill_finish __attribute((visibility("hidden"))); -#define g_buffered_input_stream_fill_finish IA__g_buffered_input_stream_fill_finish - -extern __typeof (g_buffered_input_stream_read_byte) IA__g_buffered_input_stream_read_byte __attribute((visibility("hidden"))); -#define g_buffered_input_stream_read_byte IA__g_buffered_input_stream_read_byte - -#endif -#endif -#if IN_HEADER(__G_BUFFERED_OUTPUT_STREAM_H__) -#if IN_FILE(__G_BUFFERED_OUTPUT_STREAM_C__) -extern __typeof (g_buffered_output_stream_get_type) IA__g_buffered_output_stream_get_type __attribute((visibility("hidden"))) G_GNUC_CONST;; -#define g_buffered_output_stream_get_type IA__g_buffered_output_stream_get_type - -extern __typeof (g_buffered_output_stream_new) IA__g_buffered_output_stream_new __attribute((visibility("hidden"))); -#define g_buffered_output_stream_new IA__g_buffered_output_stream_new - -extern __typeof (g_buffered_output_stream_new_sized) IA__g_buffered_output_stream_new_sized __attribute((visibility("hidden"))); -#define g_buffered_output_stream_new_sized IA__g_buffered_output_stream_new_sized - -extern __typeof (g_buffered_output_stream_get_buffer_size) IA__g_buffered_output_stream_get_buffer_size __attribute((visibility("hidden"))); -#define g_buffered_output_stream_get_buffer_size IA__g_buffered_output_stream_get_buffer_size - -extern __typeof (g_buffered_output_stream_set_buffer_size) IA__g_buffered_output_stream_set_buffer_size __attribute((visibility("hidden"))); -#define g_buffered_output_stream_set_buffer_size IA__g_buffered_output_stream_set_buffer_size - -extern __typeof (g_buffered_output_stream_get_auto_grow) IA__g_buffered_output_stream_get_auto_grow __attribute((visibility("hidden"))); -#define g_buffered_output_stream_get_auto_grow IA__g_buffered_output_stream_get_auto_grow - -extern __typeof (g_buffered_output_stream_set_auto_grow) IA__g_buffered_output_stream_set_auto_grow __attribute((visibility("hidden"))); -#define g_buffered_output_stream_set_auto_grow IA__g_buffered_output_stream_set_auto_grow - -#endif -#endif -#if IN_HEADER(__G_CANCELLABLE_H__) -#if IN_FILE(__G_CANCELLABLE_C__) -extern __typeof (g_cancellable_get_type) IA__g_cancellable_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_cancellable_get_type IA__g_cancellable_get_type - -extern __typeof (g_cancellable_new) IA__g_cancellable_new __attribute((visibility("hidden"))); -#define g_cancellable_new IA__g_cancellable_new - -extern __typeof (g_cancellable_is_cancelled) IA__g_cancellable_is_cancelled __attribute((visibility("hidden"))); -#define g_cancellable_is_cancelled IA__g_cancellable_is_cancelled - -extern __typeof (g_cancellable_set_error_if_cancelled) IA__g_cancellable_set_error_if_cancelled __attribute((visibility("hidden"))); -#define g_cancellable_set_error_if_cancelled IA__g_cancellable_set_error_if_cancelled - -extern __typeof (g_cancellable_get_fd) IA__g_cancellable_get_fd __attribute((visibility("hidden"))); -#define g_cancellable_get_fd IA__g_cancellable_get_fd - -extern __typeof (g_cancellable_make_pollfd) IA__g_cancellable_make_pollfd __attribute((visibility("hidden"))); -#define g_cancellable_make_pollfd IA__g_cancellable_make_pollfd - -extern __typeof (g_cancellable_release_fd) IA__g_cancellable_release_fd __attribute((visibility("hidden"))); -#define g_cancellable_release_fd IA__g_cancellable_release_fd - -extern __typeof (g_cancellable_get_current) IA__g_cancellable_get_current __attribute((visibility("hidden"))); -#define g_cancellable_get_current IA__g_cancellable_get_current - -extern __typeof (g_cancellable_push_current) IA__g_cancellable_push_current __attribute((visibility("hidden"))); -#define g_cancellable_push_current IA__g_cancellable_push_current - -extern __typeof (g_cancellable_pop_current) IA__g_cancellable_pop_current __attribute((visibility("hidden"))); -#define g_cancellable_pop_current IA__g_cancellable_pop_current - -extern __typeof (g_cancellable_reset) IA__g_cancellable_reset __attribute((visibility("hidden"))); -#define g_cancellable_reset IA__g_cancellable_reset - -extern __typeof (g_cancellable_cancel) IA__g_cancellable_cancel __attribute((visibility("hidden"))); -#define g_cancellable_cancel IA__g_cancellable_cancel - -extern __typeof (g_cancellable_connect) IA__g_cancellable_connect __attribute((visibility("hidden"))); -#define g_cancellable_connect IA__g_cancellable_connect - -extern __typeof (g_cancellable_disconnect) IA__g_cancellable_disconnect __attribute((visibility("hidden"))); -#define g_cancellable_disconnect IA__g_cancellable_disconnect - -#endif -#endif -#if IN_HEADER(__G_CONTENT_TYPE_H__) -#if IN_FILE(__G_CONTENT_TYPE_C__) -extern __typeof (g_content_type_equals) IA__g_content_type_equals __attribute((visibility("hidden"))); -#define g_content_type_equals IA__g_content_type_equals - -extern __typeof (g_content_type_is_a) IA__g_content_type_is_a __attribute((visibility("hidden"))); -#define g_content_type_is_a IA__g_content_type_is_a - -extern __typeof (g_content_type_is_unknown) IA__g_content_type_is_unknown __attribute((visibility("hidden"))); -#define g_content_type_is_unknown IA__g_content_type_is_unknown - -extern __typeof (g_content_type_get_description) IA__g_content_type_get_description __attribute((visibility("hidden"))); -#define g_content_type_get_description IA__g_content_type_get_description - -extern __typeof (g_content_type_get_mime_type) IA__g_content_type_get_mime_type __attribute((visibility("hidden"))); -#define g_content_type_get_mime_type IA__g_content_type_get_mime_type - -extern __typeof (g_content_type_get_icon) IA__g_content_type_get_icon __attribute((visibility("hidden"))); -#define g_content_type_get_icon IA__g_content_type_get_icon - -extern __typeof (g_content_type_can_be_executable) IA__g_content_type_can_be_executable __attribute((visibility("hidden"))); -#define g_content_type_can_be_executable IA__g_content_type_can_be_executable - -extern __typeof (g_content_type_from_mime_type) IA__g_content_type_from_mime_type __attribute((visibility("hidden"))); -#define g_content_type_from_mime_type IA__g_content_type_from_mime_type - -extern __typeof (g_content_type_guess) IA__g_content_type_guess __attribute((visibility("hidden"))); -#define g_content_type_guess IA__g_content_type_guess - -extern __typeof (g_content_type_guess_for_tree) IA__g_content_type_guess_for_tree __attribute((visibility("hidden"))); -#define g_content_type_guess_for_tree IA__g_content_type_guess_for_tree - -extern __typeof (g_content_types_get_registered) IA__g_content_types_get_registered __attribute((visibility("hidden"))); -#define g_content_types_get_registered IA__g_content_types_get_registered - -#endif -#endif -#if IN_HEADER(__G_CONVERTER_H__) -#if IN_FILE(__G_CONVERTER_C__) -extern __typeof (g_converter_get_type) IA__g_converter_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_converter_get_type IA__g_converter_get_type - -extern __typeof (g_converter_reset) IA__g_converter_reset __attribute((visibility("hidden"))); -#define g_converter_reset IA__g_converter_reset - -extern __typeof (g_converter_convert) IA__g_converter_convert __attribute((visibility("hidden"))); -#define g_converter_convert IA__g_converter_convert - -#endif -#endif -#if IN_HEADER(__G_CONVERTER_INPUT_STREAM_H__) -#if IN_FILE(__G_CONVERTER_INPUT_STREAM_C__) -extern __typeof (g_converter_input_stream_get_type) IA__g_converter_input_stream_get_type __attribute((visibility("hidden"))); -#define g_converter_input_stream_get_type IA__g_converter_input_stream_get_type - -extern __typeof (g_converter_input_stream_new) IA__g_converter_input_stream_new __attribute((visibility("hidden"))); -#define g_converter_input_stream_new IA__g_converter_input_stream_new - -extern __typeof (g_converter_input_stream_get_converter) IA__g_converter_input_stream_get_converter __attribute((visibility("hidden"))); -#define g_converter_input_stream_get_converter IA__g_converter_input_stream_get_converter - -#endif -#endif -#if IN_HEADER(__G_CONVERTER_OUTPUT_STREAM_H__) -#if IN_FILE(__G_CONVERTER_OUTPUT_STREAM_C__) -extern __typeof (g_converter_output_stream_get_type) IA__g_converter_output_stream_get_type __attribute((visibility("hidden"))); -#define g_converter_output_stream_get_type IA__g_converter_output_stream_get_type - -extern __typeof (g_converter_output_stream_new) IA__g_converter_output_stream_new __attribute((visibility("hidden"))); -#define g_converter_output_stream_new IA__g_converter_output_stream_new - -extern __typeof (g_converter_output_stream_get_converter) IA__g_converter_output_stream_get_converter __attribute((visibility("hidden"))); -#define g_converter_output_stream_get_converter IA__g_converter_output_stream_get_converter - -#endif -#endif -#if IN_HEADER(__G_CHARSET_CONVERTER_H__) -#if IN_FILE(__G_CHARSET_CONVERTER_C__) -extern __typeof (g_charset_converter_get_type) IA__g_charset_converter_get_type __attribute((visibility("hidden"))); -#define g_charset_converter_get_type IA__g_charset_converter_get_type - -extern __typeof (g_charset_converter_new) IA__g_charset_converter_new __attribute((visibility("hidden"))); -#define g_charset_converter_new IA__g_charset_converter_new - -extern __typeof (g_charset_converter_get_num_fallbacks) IA__g_charset_converter_get_num_fallbacks __attribute((visibility("hidden"))); -#define g_charset_converter_get_num_fallbacks IA__g_charset_converter_get_num_fallbacks - -extern __typeof (g_charset_converter_get_use_fallback) IA__g_charset_converter_get_use_fallback __attribute((visibility("hidden"))); -#define g_charset_converter_get_use_fallback IA__g_charset_converter_get_use_fallback - -extern __typeof (g_charset_converter_set_use_fallback) IA__g_charset_converter_set_use_fallback __attribute((visibility("hidden"))); -#define g_charset_converter_set_use_fallback IA__g_charset_converter_set_use_fallback - -#endif -#endif -#if IN_HEADER(__G_DATA_INPUT_STREAM_H__) -#if IN_FILE(__G_DATA_INPUT_STREAM_C__) -extern __typeof (g_data_input_stream_get_type) IA__g_data_input_stream_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_data_input_stream_get_type IA__g_data_input_stream_get_type - -extern __typeof (g_data_input_stream_new) IA__g_data_input_stream_new __attribute((visibility("hidden"))); -#define g_data_input_stream_new IA__g_data_input_stream_new - -extern __typeof (g_data_input_stream_set_byte_order) IA__g_data_input_stream_set_byte_order __attribute((visibility("hidden"))); -#define g_data_input_stream_set_byte_order IA__g_data_input_stream_set_byte_order - -extern __typeof (g_data_input_stream_get_byte_order) IA__g_data_input_stream_get_byte_order __attribute((visibility("hidden"))); -#define g_data_input_stream_get_byte_order IA__g_data_input_stream_get_byte_order - -extern __typeof (g_data_input_stream_set_newline_type) IA__g_data_input_stream_set_newline_type __attribute((visibility("hidden"))); -#define g_data_input_stream_set_newline_type IA__g_data_input_stream_set_newline_type - -extern __typeof (g_data_input_stream_get_newline_type) IA__g_data_input_stream_get_newline_type __attribute((visibility("hidden"))); -#define g_data_input_stream_get_newline_type IA__g_data_input_stream_get_newline_type - -extern __typeof (g_data_input_stream_read_byte) IA__g_data_input_stream_read_byte __attribute((visibility("hidden"))); -#define g_data_input_stream_read_byte IA__g_data_input_stream_read_byte - -extern __typeof (g_data_input_stream_read_int16) IA__g_data_input_stream_read_int16 __attribute((visibility("hidden"))); -#define g_data_input_stream_read_int16 IA__g_data_input_stream_read_int16 - -extern __typeof (g_data_input_stream_read_uint16) IA__g_data_input_stream_read_uint16 __attribute((visibility("hidden"))); -#define g_data_input_stream_read_uint16 IA__g_data_input_stream_read_uint16 - -extern __typeof (g_data_input_stream_read_int32) IA__g_data_input_stream_read_int32 __attribute((visibility("hidden"))); -#define g_data_input_stream_read_int32 IA__g_data_input_stream_read_int32 - -extern __typeof (g_data_input_stream_read_uint32) IA__g_data_input_stream_read_uint32 __attribute((visibility("hidden"))); -#define g_data_input_stream_read_uint32 IA__g_data_input_stream_read_uint32 - -extern __typeof (g_data_input_stream_read_int64) IA__g_data_input_stream_read_int64 __attribute((visibility("hidden"))); -#define g_data_input_stream_read_int64 IA__g_data_input_stream_read_int64 - -extern __typeof (g_data_input_stream_read_uint64) IA__g_data_input_stream_read_uint64 __attribute((visibility("hidden"))); -#define g_data_input_stream_read_uint64 IA__g_data_input_stream_read_uint64 - -extern __typeof (g_data_input_stream_read_line) IA__g_data_input_stream_read_line __attribute((visibility("hidden"))); -#define g_data_input_stream_read_line IA__g_data_input_stream_read_line - -extern __typeof (g_data_input_stream_read_line_async) IA__g_data_input_stream_read_line_async __attribute((visibility("hidden"))); -#define g_data_input_stream_read_line_async IA__g_data_input_stream_read_line_async - -extern __typeof (g_data_input_stream_read_line_finish) IA__g_data_input_stream_read_line_finish __attribute((visibility("hidden"))); -#define g_data_input_stream_read_line_finish IA__g_data_input_stream_read_line_finish - -extern __typeof (g_data_input_stream_read_until) IA__g_data_input_stream_read_until __attribute((visibility("hidden"))); -#define g_data_input_stream_read_until IA__g_data_input_stream_read_until - -extern __typeof (g_data_input_stream_read_until_async) IA__g_data_input_stream_read_until_async __attribute((visibility("hidden"))); -#define g_data_input_stream_read_until_async IA__g_data_input_stream_read_until_async - -extern __typeof (g_data_input_stream_read_until_finish) IA__g_data_input_stream_read_until_finish __attribute((visibility("hidden"))); -#define g_data_input_stream_read_until_finish IA__g_data_input_stream_read_until_finish - -#endif -#endif -#if IN_HEADER(__G_DATA_OUTPUT_STREAM_H__) -#if IN_FILE(__G_DATA_OUTPUT_STREAM_C__) -extern __typeof (g_data_output_stream_get_type) IA__g_data_output_stream_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_data_output_stream_get_type IA__g_data_output_stream_get_type - -extern __typeof (g_data_output_stream_new) IA__g_data_output_stream_new __attribute((visibility("hidden"))); -#define g_data_output_stream_new IA__g_data_output_stream_new - -extern __typeof (g_data_output_stream_set_byte_order) IA__g_data_output_stream_set_byte_order __attribute((visibility("hidden"))); -#define g_data_output_stream_set_byte_order IA__g_data_output_stream_set_byte_order - -extern __typeof (g_data_output_stream_get_byte_order) IA__g_data_output_stream_get_byte_order __attribute((visibility("hidden"))); -#define g_data_output_stream_get_byte_order IA__g_data_output_stream_get_byte_order - -extern __typeof (g_data_output_stream_put_byte) IA__g_data_output_stream_put_byte __attribute((visibility("hidden"))); -#define g_data_output_stream_put_byte IA__g_data_output_stream_put_byte - -extern __typeof (g_data_output_stream_put_int16) IA__g_data_output_stream_put_int16 __attribute((visibility("hidden"))); -#define g_data_output_stream_put_int16 IA__g_data_output_stream_put_int16 - -extern __typeof (g_data_output_stream_put_uint16) IA__g_data_output_stream_put_uint16 __attribute((visibility("hidden"))); -#define g_data_output_stream_put_uint16 IA__g_data_output_stream_put_uint16 - -extern __typeof (g_data_output_stream_put_int32) IA__g_data_output_stream_put_int32 __attribute((visibility("hidden"))); -#define g_data_output_stream_put_int32 IA__g_data_output_stream_put_int32 - -extern __typeof (g_data_output_stream_put_uint32) IA__g_data_output_stream_put_uint32 __attribute((visibility("hidden"))); -#define g_data_output_stream_put_uint32 IA__g_data_output_stream_put_uint32 - -extern __typeof (g_data_output_stream_put_int64) IA__g_data_output_stream_put_int64 __attribute((visibility("hidden"))); -#define g_data_output_stream_put_int64 IA__g_data_output_stream_put_int64 - -extern __typeof (g_data_output_stream_put_uint64) IA__g_data_output_stream_put_uint64 __attribute((visibility("hidden"))); -#define g_data_output_stream_put_uint64 IA__g_data_output_stream_put_uint64 - -extern __typeof (g_data_output_stream_put_string) IA__g_data_output_stream_put_string __attribute((visibility("hidden"))); -#define g_data_output_stream_put_string IA__g_data_output_stream_put_string - -#endif -#endif -#if IN_HEADER(__G_DRIVE_H__) -#if IN_FILE(__G_DRIVE_C__) -extern __typeof (g_drive_get_type) IA__g_drive_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_drive_get_type IA__g_drive_get_type - -extern __typeof (g_drive_get_name) IA__g_drive_get_name __attribute((visibility("hidden"))); -#define g_drive_get_name IA__g_drive_get_name - -extern __typeof (g_drive_get_icon) IA__g_drive_get_icon __attribute((visibility("hidden"))); -#define g_drive_get_icon IA__g_drive_get_icon - -extern __typeof (g_drive_has_volumes) IA__g_drive_has_volumes __attribute((visibility("hidden"))); -#define g_drive_has_volumes IA__g_drive_has_volumes - -extern __typeof (g_drive_get_volumes) IA__g_drive_get_volumes __attribute((visibility("hidden"))); -#define g_drive_get_volumes IA__g_drive_get_volumes - -extern __typeof (g_drive_is_media_removable) IA__g_drive_is_media_removable __attribute((visibility("hidden"))); -#define g_drive_is_media_removable IA__g_drive_is_media_removable - -extern __typeof (g_drive_has_media) IA__g_drive_has_media __attribute((visibility("hidden"))); -#define g_drive_has_media IA__g_drive_has_media - -extern __typeof (g_drive_is_media_check_automatic) IA__g_drive_is_media_check_automatic __attribute((visibility("hidden"))); -#define g_drive_is_media_check_automatic IA__g_drive_is_media_check_automatic - -extern __typeof (g_drive_can_poll_for_media) IA__g_drive_can_poll_for_media __attribute((visibility("hidden"))); -#define g_drive_can_poll_for_media IA__g_drive_can_poll_for_media - -extern __typeof (g_drive_can_eject) IA__g_drive_can_eject __attribute((visibility("hidden"))); -#define g_drive_can_eject IA__g_drive_can_eject - -extern __typeof (g_drive_eject_with_operation) IA__g_drive_eject_with_operation __attribute((visibility("hidden"))); -#define g_drive_eject_with_operation IA__g_drive_eject_with_operation - -extern __typeof (g_drive_eject_with_operation_finish) IA__g_drive_eject_with_operation_finish __attribute((visibility("hidden"))); -#define g_drive_eject_with_operation_finish IA__g_drive_eject_with_operation_finish - -extern __typeof (g_drive_poll_for_media) IA__g_drive_poll_for_media __attribute((visibility("hidden"))); -#define g_drive_poll_for_media IA__g_drive_poll_for_media - -extern __typeof (g_drive_poll_for_media_finish) IA__g_drive_poll_for_media_finish __attribute((visibility("hidden"))); -#define g_drive_poll_for_media_finish IA__g_drive_poll_for_media_finish - -extern __typeof (g_drive_get_identifier) IA__g_drive_get_identifier __attribute((visibility("hidden"))); -#define g_drive_get_identifier IA__g_drive_get_identifier - -extern __typeof (g_drive_enumerate_identifiers) IA__g_drive_enumerate_identifiers __attribute((visibility("hidden"))); -#define g_drive_enumerate_identifiers IA__g_drive_enumerate_identifiers - -extern __typeof (g_drive_get_start_stop_type) IA__g_drive_get_start_stop_type __attribute((visibility("hidden"))); -#define g_drive_get_start_stop_type IA__g_drive_get_start_stop_type - -extern __typeof (g_drive_can_start) IA__g_drive_can_start __attribute((visibility("hidden"))); -#define g_drive_can_start IA__g_drive_can_start - -extern __typeof (g_drive_can_start_degraded) IA__g_drive_can_start_degraded __attribute((visibility("hidden"))); -#define g_drive_can_start_degraded IA__g_drive_can_start_degraded - -extern __typeof (g_drive_start) IA__g_drive_start __attribute((visibility("hidden"))); -#define g_drive_start IA__g_drive_start - -extern __typeof (g_drive_start_finish) IA__g_drive_start_finish __attribute((visibility("hidden"))); -#define g_drive_start_finish IA__g_drive_start_finish - -extern __typeof (g_drive_can_stop) IA__g_drive_can_stop __attribute((visibility("hidden"))); -#define g_drive_can_stop IA__g_drive_can_stop - -extern __typeof (g_drive_stop) IA__g_drive_stop __attribute((visibility("hidden"))); -#define g_drive_stop IA__g_drive_stop - -extern __typeof (g_drive_stop_finish) IA__g_drive_stop_finish __attribute((visibility("hidden"))); -#define g_drive_stop_finish IA__g_drive_stop_finish - -#ifndef G_DISABLE_DEPRECATED -extern __typeof (g_drive_eject) IA__g_drive_eject __attribute((visibility("hidden"))); -#define g_drive_eject IA__g_drive_eject - -extern __typeof (g_drive_eject_finish) IA__g_drive_eject_finish __attribute((visibility("hidden"))); -#define g_drive_eject_finish IA__g_drive_eject_finish - -#endif -#endif -#endif -#if IN_HEADER(__G_FILE_ATTRIBUTE_H__) -#if IN_FILE(__G_FILE_ATTRIBUTE_C__) -extern __typeof (g_file_attribute_info_list_new) IA__g_file_attribute_info_list_new __attribute((visibility("hidden"))); -#define g_file_attribute_info_list_new IA__g_file_attribute_info_list_new - -extern __typeof (g_file_attribute_info_list_ref) IA__g_file_attribute_info_list_ref __attribute((visibility("hidden"))); -#define g_file_attribute_info_list_ref IA__g_file_attribute_info_list_ref - -extern __typeof (g_file_attribute_info_list_unref) IA__g_file_attribute_info_list_unref __attribute((visibility("hidden"))); -#define g_file_attribute_info_list_unref IA__g_file_attribute_info_list_unref - -extern __typeof (g_file_attribute_info_list_dup) IA__g_file_attribute_info_list_dup __attribute((visibility("hidden"))); -#define g_file_attribute_info_list_dup IA__g_file_attribute_info_list_dup - -extern __typeof (g_file_attribute_info_list_get_type) IA__g_file_attribute_info_list_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_file_attribute_info_list_get_type IA__g_file_attribute_info_list_get_type - -extern __typeof (g_file_attribute_info_list_lookup) IA__g_file_attribute_info_list_lookup __attribute((visibility("hidden"))); -#define g_file_attribute_info_list_lookup IA__g_file_attribute_info_list_lookup - -extern __typeof (g_file_attribute_info_list_add) IA__g_file_attribute_info_list_add __attribute((visibility("hidden"))); -#define g_file_attribute_info_list_add IA__g_file_attribute_info_list_add - -#endif -#endif -#if IN_HEADER(__G_FILE_H__) -#if IN_FILE(__G_FILE_C__) -extern __typeof (g_file_get_type) IA__g_file_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_file_get_type IA__g_file_get_type - -extern __typeof (g_file_new_for_path) IA__g_file_new_for_path __attribute((visibility("hidden"))); -#define g_file_new_for_path IA__g_file_new_for_path - -extern __typeof (g_file_new_for_uri) IA__g_file_new_for_uri __attribute((visibility("hidden"))); -#define g_file_new_for_uri IA__g_file_new_for_uri - -extern __typeof (g_file_new_for_commandline_arg) IA__g_file_new_for_commandline_arg __attribute((visibility("hidden"))); -#define g_file_new_for_commandline_arg IA__g_file_new_for_commandline_arg - -extern __typeof (g_file_parse_name) IA__g_file_parse_name __attribute((visibility("hidden"))); -#define g_file_parse_name IA__g_file_parse_name - -extern __typeof (g_file_dup) IA__g_file_dup __attribute((visibility("hidden"))); -#define g_file_dup IA__g_file_dup - -extern __typeof (g_file_hash) IA__g_file_hash __attribute((visibility("hidden"))); -#define g_file_hash IA__g_file_hash - -extern __typeof (g_file_equal) IA__g_file_equal __attribute((visibility("hidden"))); -#define g_file_equal IA__g_file_equal - -extern __typeof (g_file_get_basename) IA__g_file_get_basename __attribute((visibility("hidden"))); -#define g_file_get_basename IA__g_file_get_basename - -extern __typeof (g_file_get_path) IA__g_file_get_path __attribute((visibility("hidden"))); -#define g_file_get_path IA__g_file_get_path - -extern __typeof (g_file_get_uri) IA__g_file_get_uri __attribute((visibility("hidden"))); -#define g_file_get_uri IA__g_file_get_uri - -extern __typeof (g_file_get_parse_name) IA__g_file_get_parse_name __attribute((visibility("hidden"))); -#define g_file_get_parse_name IA__g_file_get_parse_name - -extern __typeof (g_file_get_parent) IA__g_file_get_parent __attribute((visibility("hidden"))); -#define g_file_get_parent IA__g_file_get_parent - -extern __typeof (g_file_has_parent) IA__g_file_has_parent __attribute((visibility("hidden"))); -#define g_file_has_parent IA__g_file_has_parent - -extern __typeof (g_file_get_child) IA__g_file_get_child __attribute((visibility("hidden"))); -#define g_file_get_child IA__g_file_get_child - -extern __typeof (g_file_get_child_for_display_name) IA__g_file_get_child_for_display_name __attribute((visibility("hidden"))); -#define g_file_get_child_for_display_name IA__g_file_get_child_for_display_name - -extern __typeof (g_file_has_prefix) IA__g_file_has_prefix __attribute((visibility("hidden"))); -#define g_file_has_prefix IA__g_file_has_prefix - -extern __typeof (g_file_get_relative_path) IA__g_file_get_relative_path __attribute((visibility("hidden"))); -#define g_file_get_relative_path IA__g_file_get_relative_path - -extern __typeof (g_file_resolve_relative_path) IA__g_file_resolve_relative_path __attribute((visibility("hidden"))); -#define g_file_resolve_relative_path IA__g_file_resolve_relative_path - -extern __typeof (g_file_is_native) IA__g_file_is_native __attribute((visibility("hidden"))); -#define g_file_is_native IA__g_file_is_native - -extern __typeof (g_file_has_uri_scheme) IA__g_file_has_uri_scheme __attribute((visibility("hidden"))); -#define g_file_has_uri_scheme IA__g_file_has_uri_scheme - -extern __typeof (g_file_get_uri_scheme) IA__g_file_get_uri_scheme __attribute((visibility("hidden"))); -#define g_file_get_uri_scheme IA__g_file_get_uri_scheme - -extern __typeof (g_file_read) IA__g_file_read __attribute((visibility("hidden"))); -#define g_file_read IA__g_file_read - -extern __typeof (g_file_read_async) IA__g_file_read_async __attribute((visibility("hidden"))); -#define g_file_read_async IA__g_file_read_async - -extern __typeof (g_file_read_finish) IA__g_file_read_finish __attribute((visibility("hidden"))); -#define g_file_read_finish IA__g_file_read_finish - -extern __typeof (g_file_append_to) IA__g_file_append_to __attribute((visibility("hidden"))); -#define g_file_append_to IA__g_file_append_to - -extern __typeof (g_file_create) IA__g_file_create __attribute((visibility("hidden"))); -#define g_file_create IA__g_file_create - -extern __typeof (g_file_replace) IA__g_file_replace __attribute((visibility("hidden"))); -#define g_file_replace IA__g_file_replace - -extern __typeof (g_file_append_to_async) IA__g_file_append_to_async __attribute((visibility("hidden"))); -#define g_file_append_to_async IA__g_file_append_to_async - -extern __typeof (g_file_append_to_finish) IA__g_file_append_to_finish __attribute((visibility("hidden"))); -#define g_file_append_to_finish IA__g_file_append_to_finish - -extern __typeof (g_file_create_async) IA__g_file_create_async __attribute((visibility("hidden"))); -#define g_file_create_async IA__g_file_create_async - -extern __typeof (g_file_create_finish) IA__g_file_create_finish __attribute((visibility("hidden"))); -#define g_file_create_finish IA__g_file_create_finish - -extern __typeof (g_file_replace_async) IA__g_file_replace_async __attribute((visibility("hidden"))); -#define g_file_replace_async IA__g_file_replace_async - -extern __typeof (g_file_replace_finish) IA__g_file_replace_finish __attribute((visibility("hidden"))); -#define g_file_replace_finish IA__g_file_replace_finish - -extern __typeof (g_file_query_exists) IA__g_file_query_exists __attribute((visibility("hidden"))); -#define g_file_query_exists IA__g_file_query_exists - -extern __typeof (g_file_query_info) IA__g_file_query_info __attribute((visibility("hidden"))); -#define g_file_query_info IA__g_file_query_info - -extern __typeof (g_file_query_info_async) IA__g_file_query_info_async __attribute((visibility("hidden"))); -#define g_file_query_info_async IA__g_file_query_info_async - -extern __typeof (g_file_query_info_finish) IA__g_file_query_info_finish __attribute((visibility("hidden"))); -#define g_file_query_info_finish IA__g_file_query_info_finish - -extern __typeof (g_file_query_file_type) IA__g_file_query_file_type __attribute((visibility("hidden"))); -#define g_file_query_file_type IA__g_file_query_file_type - -extern __typeof (g_file_query_filesystem_info) IA__g_file_query_filesystem_info __attribute((visibility("hidden"))); -#define g_file_query_filesystem_info IA__g_file_query_filesystem_info - -extern __typeof (g_file_query_filesystem_info_async) IA__g_file_query_filesystem_info_async __attribute((visibility("hidden"))); -#define g_file_query_filesystem_info_async IA__g_file_query_filesystem_info_async - -extern __typeof (g_file_query_filesystem_info_finish) IA__g_file_query_filesystem_info_finish __attribute((visibility("hidden"))); -#define g_file_query_filesystem_info_finish IA__g_file_query_filesystem_info_finish - -extern __typeof (g_file_find_enclosing_mount) IA__g_file_find_enclosing_mount __attribute((visibility("hidden"))); -#define g_file_find_enclosing_mount IA__g_file_find_enclosing_mount - -extern __typeof (g_file_find_enclosing_mount_async) IA__g_file_find_enclosing_mount_async __attribute((visibility("hidden"))); -#define g_file_find_enclosing_mount_async IA__g_file_find_enclosing_mount_async - -extern __typeof (g_file_find_enclosing_mount_finish) IA__g_file_find_enclosing_mount_finish __attribute((visibility("hidden"))); -#define g_file_find_enclosing_mount_finish IA__g_file_find_enclosing_mount_finish - -extern __typeof (g_file_enumerate_children) IA__g_file_enumerate_children __attribute((visibility("hidden"))); -#define g_file_enumerate_children IA__g_file_enumerate_children - -extern __typeof (g_file_enumerate_children_async) IA__g_file_enumerate_children_async __attribute((visibility("hidden"))); -#define g_file_enumerate_children_async IA__g_file_enumerate_children_async - -extern __typeof (g_file_enumerate_children_finish) IA__g_file_enumerate_children_finish __attribute((visibility("hidden"))); -#define g_file_enumerate_children_finish IA__g_file_enumerate_children_finish - -extern __typeof (g_file_set_display_name) IA__g_file_set_display_name __attribute((visibility("hidden"))); -#define g_file_set_display_name IA__g_file_set_display_name - -extern __typeof (g_file_set_display_name_async) IA__g_file_set_display_name_async __attribute((visibility("hidden"))); -#define g_file_set_display_name_async IA__g_file_set_display_name_async - -extern __typeof (g_file_set_display_name_finish) IA__g_file_set_display_name_finish __attribute((visibility("hidden"))); -#define g_file_set_display_name_finish IA__g_file_set_display_name_finish - -extern __typeof (g_file_delete) IA__g_file_delete __attribute((visibility("hidden"))); -#define g_file_delete IA__g_file_delete - -extern __typeof (g_file_trash) IA__g_file_trash __attribute((visibility("hidden"))); -#define g_file_trash IA__g_file_trash - -extern __typeof (g_file_copy) IA__g_file_copy __attribute((visibility("hidden"))); -#define g_file_copy IA__g_file_copy - -extern __typeof (g_file_copy_async) IA__g_file_copy_async __attribute((visibility("hidden"))); -#define g_file_copy_async IA__g_file_copy_async - -extern __typeof (g_file_copy_finish) IA__g_file_copy_finish __attribute((visibility("hidden"))); -#define g_file_copy_finish IA__g_file_copy_finish - -extern __typeof (g_file_move) IA__g_file_move __attribute((visibility("hidden"))); -#define g_file_move IA__g_file_move - -extern __typeof (g_file_make_directory) IA__g_file_make_directory __attribute((visibility("hidden"))); -#define g_file_make_directory IA__g_file_make_directory - -extern __typeof (g_file_make_directory_with_parents) IA__g_file_make_directory_with_parents __attribute((visibility("hidden"))); -#define g_file_make_directory_with_parents IA__g_file_make_directory_with_parents - -extern __typeof (g_file_make_symbolic_link) IA__g_file_make_symbolic_link __attribute((visibility("hidden"))); -#define g_file_make_symbolic_link IA__g_file_make_symbolic_link - -extern __typeof (g_file_query_settable_attributes) IA__g_file_query_settable_attributes __attribute((visibility("hidden"))); -#define g_file_query_settable_attributes IA__g_file_query_settable_attributes - -extern __typeof (g_file_query_writable_namespaces) IA__g_file_query_writable_namespaces __attribute((visibility("hidden"))); -#define g_file_query_writable_namespaces IA__g_file_query_writable_namespaces - -extern __typeof (g_file_set_attribute) IA__g_file_set_attribute __attribute((visibility("hidden"))); -#define g_file_set_attribute IA__g_file_set_attribute - -extern __typeof (g_file_set_attributes_from_info) IA__g_file_set_attributes_from_info __attribute((visibility("hidden"))); -#define g_file_set_attributes_from_info IA__g_file_set_attributes_from_info - -extern __typeof (g_file_set_attributes_async) IA__g_file_set_attributes_async __attribute((visibility("hidden"))); -#define g_file_set_attributes_async IA__g_file_set_attributes_async - -extern __typeof (g_file_set_attributes_finish) IA__g_file_set_attributes_finish __attribute((visibility("hidden"))); -#define g_file_set_attributes_finish IA__g_file_set_attributes_finish - -extern __typeof (g_file_set_attribute_string) IA__g_file_set_attribute_string __attribute((visibility("hidden"))); -#define g_file_set_attribute_string IA__g_file_set_attribute_string - -extern __typeof (g_file_set_attribute_byte_string) IA__g_file_set_attribute_byte_string __attribute((visibility("hidden"))); -#define g_file_set_attribute_byte_string IA__g_file_set_attribute_byte_string - -extern __typeof (g_file_set_attribute_uint32) IA__g_file_set_attribute_uint32 __attribute((visibility("hidden"))); -#define g_file_set_attribute_uint32 IA__g_file_set_attribute_uint32 - -extern __typeof (g_file_set_attribute_int32) IA__g_file_set_attribute_int32 __attribute((visibility("hidden"))); -#define g_file_set_attribute_int32 IA__g_file_set_attribute_int32 - -extern __typeof (g_file_set_attribute_uint64) IA__g_file_set_attribute_uint64 __attribute((visibility("hidden"))); -#define g_file_set_attribute_uint64 IA__g_file_set_attribute_uint64 - -extern __typeof (g_file_set_attribute_int64) IA__g_file_set_attribute_int64 __attribute((visibility("hidden"))); -#define g_file_set_attribute_int64 IA__g_file_set_attribute_int64 - -extern __typeof (g_file_mount_enclosing_volume) IA__g_file_mount_enclosing_volume __attribute((visibility("hidden"))); -#define g_file_mount_enclosing_volume IA__g_file_mount_enclosing_volume - -extern __typeof (g_file_mount_enclosing_volume_finish) IA__g_file_mount_enclosing_volume_finish __attribute((visibility("hidden"))); -#define g_file_mount_enclosing_volume_finish IA__g_file_mount_enclosing_volume_finish - -extern __typeof (g_file_mount_mountable) IA__g_file_mount_mountable __attribute((visibility("hidden"))); -#define g_file_mount_mountable IA__g_file_mount_mountable - -extern __typeof (g_file_mount_mountable_finish) IA__g_file_mount_mountable_finish __attribute((visibility("hidden"))); -#define g_file_mount_mountable_finish IA__g_file_mount_mountable_finish - -extern __typeof (g_file_unmount_mountable_with_operation) IA__g_file_unmount_mountable_with_operation __attribute((visibility("hidden"))); -#define g_file_unmount_mountable_with_operation IA__g_file_unmount_mountable_with_operation - -extern __typeof (g_file_unmount_mountable_with_operation_finish) IA__g_file_unmount_mountable_with_operation_finish __attribute((visibility("hidden"))); -#define g_file_unmount_mountable_with_operation_finish IA__g_file_unmount_mountable_with_operation_finish - -extern __typeof (g_file_eject_mountable_with_operation) IA__g_file_eject_mountable_with_operation __attribute((visibility("hidden"))); -#define g_file_eject_mountable_with_operation IA__g_file_eject_mountable_with_operation - -extern __typeof (g_file_eject_mountable_with_operation_finish) IA__g_file_eject_mountable_with_operation_finish __attribute((visibility("hidden"))); -#define g_file_eject_mountable_with_operation_finish IA__g_file_eject_mountable_with_operation_finish - -extern __typeof (g_file_copy_attributes) IA__g_file_copy_attributes __attribute((visibility("hidden"))); -#define g_file_copy_attributes IA__g_file_copy_attributes - -extern __typeof (g_file_monitor_directory) IA__g_file_monitor_directory __attribute((visibility("hidden"))); -#define g_file_monitor_directory IA__g_file_monitor_directory - -extern __typeof (g_file_monitor_file) IA__g_file_monitor_file __attribute((visibility("hidden"))); -#define g_file_monitor_file IA__g_file_monitor_file - -extern __typeof (g_file_monitor) IA__g_file_monitor __attribute((visibility("hidden"))); -#define g_file_monitor IA__g_file_monitor - -extern __typeof (g_file_query_default_handler) IA__g_file_query_default_handler __attribute((visibility("hidden"))); -#define g_file_query_default_handler IA__g_file_query_default_handler - -extern __typeof (g_file_load_contents) IA__g_file_load_contents __attribute((visibility("hidden"))); -#define g_file_load_contents IA__g_file_load_contents - -extern __typeof (g_file_load_contents_async) IA__g_file_load_contents_async __attribute((visibility("hidden"))); -#define g_file_load_contents_async IA__g_file_load_contents_async - -extern __typeof (g_file_load_contents_finish) IA__g_file_load_contents_finish __attribute((visibility("hidden"))); -#define g_file_load_contents_finish IA__g_file_load_contents_finish - -extern __typeof (g_file_load_partial_contents_async) IA__g_file_load_partial_contents_async __attribute((visibility("hidden"))); -#define g_file_load_partial_contents_async IA__g_file_load_partial_contents_async - -extern __typeof (g_file_load_partial_contents_finish) IA__g_file_load_partial_contents_finish __attribute((visibility("hidden"))); -#define g_file_load_partial_contents_finish IA__g_file_load_partial_contents_finish - -extern __typeof (g_file_replace_contents) IA__g_file_replace_contents __attribute((visibility("hidden"))); -#define g_file_replace_contents IA__g_file_replace_contents - -extern __typeof (g_file_replace_contents_async) IA__g_file_replace_contents_async __attribute((visibility("hidden"))); -#define g_file_replace_contents_async IA__g_file_replace_contents_async - -extern __typeof (g_file_replace_contents_finish) IA__g_file_replace_contents_finish __attribute((visibility("hidden"))); -#define g_file_replace_contents_finish IA__g_file_replace_contents_finish - -extern __typeof (g_file_create_readwrite) IA__g_file_create_readwrite __attribute((visibility("hidden"))); -#define g_file_create_readwrite IA__g_file_create_readwrite - -extern __typeof (g_file_create_readwrite_async) IA__g_file_create_readwrite_async __attribute((visibility("hidden"))); -#define g_file_create_readwrite_async IA__g_file_create_readwrite_async - -extern __typeof (g_file_create_readwrite_finish) IA__g_file_create_readwrite_finish __attribute((visibility("hidden"))); -#define g_file_create_readwrite_finish IA__g_file_create_readwrite_finish - -extern __typeof (g_file_open_readwrite) IA__g_file_open_readwrite __attribute((visibility("hidden"))); -#define g_file_open_readwrite IA__g_file_open_readwrite - -extern __typeof (g_file_open_readwrite_async) IA__g_file_open_readwrite_async __attribute((visibility("hidden"))); -#define g_file_open_readwrite_async IA__g_file_open_readwrite_async - -extern __typeof (g_file_open_readwrite_finish) IA__g_file_open_readwrite_finish __attribute((visibility("hidden"))); -#define g_file_open_readwrite_finish IA__g_file_open_readwrite_finish - -extern __typeof (g_file_replace_readwrite) IA__g_file_replace_readwrite __attribute((visibility("hidden"))); -#define g_file_replace_readwrite IA__g_file_replace_readwrite - -extern __typeof (g_file_replace_readwrite_async) IA__g_file_replace_readwrite_async __attribute((visibility("hidden"))); -#define g_file_replace_readwrite_async IA__g_file_replace_readwrite_async - -extern __typeof (g_file_replace_readwrite_finish) IA__g_file_replace_readwrite_finish __attribute((visibility("hidden"))); -#define g_file_replace_readwrite_finish IA__g_file_replace_readwrite_finish - -extern __typeof (g_file_start_mountable) IA__g_file_start_mountable __attribute((visibility("hidden"))); -#define g_file_start_mountable IA__g_file_start_mountable - -extern __typeof (g_file_start_mountable_finish) IA__g_file_start_mountable_finish __attribute((visibility("hidden"))); -#define g_file_start_mountable_finish IA__g_file_start_mountable_finish - -extern __typeof (g_file_stop_mountable) IA__g_file_stop_mountable __attribute((visibility("hidden"))); -#define g_file_stop_mountable IA__g_file_stop_mountable - -extern __typeof (g_file_stop_mountable_finish) IA__g_file_stop_mountable_finish __attribute((visibility("hidden"))); -#define g_file_stop_mountable_finish IA__g_file_stop_mountable_finish - -extern __typeof (g_file_supports_thread_contexts) IA__g_file_supports_thread_contexts __attribute((visibility("hidden"))); -#define g_file_supports_thread_contexts IA__g_file_supports_thread_contexts - -extern __typeof (g_file_poll_mountable) IA__g_file_poll_mountable __attribute((visibility("hidden"))); -#define g_file_poll_mountable IA__g_file_poll_mountable - -extern __typeof (g_file_poll_mountable_finish) IA__g_file_poll_mountable_finish __attribute((visibility("hidden"))); -#define g_file_poll_mountable_finish IA__g_file_poll_mountable_finish - -#ifndef G_DISABLE_DEPRECATED -extern __typeof (g_file_unmount_mountable) IA__g_file_unmount_mountable __attribute((visibility("hidden"))); -#define g_file_unmount_mountable IA__g_file_unmount_mountable - -extern __typeof (g_file_unmount_mountable_finish) IA__g_file_unmount_mountable_finish __attribute((visibility("hidden"))); -#define g_file_unmount_mountable_finish IA__g_file_unmount_mountable_finish - -extern __typeof (g_file_eject_mountable) IA__g_file_eject_mountable __attribute((visibility("hidden"))); -#define g_file_eject_mountable IA__g_file_eject_mountable - -extern __typeof (g_file_eject_mountable_finish) IA__g_file_eject_mountable_finish __attribute((visibility("hidden"))); -#define g_file_eject_mountable_finish IA__g_file_eject_mountable_finish - -#endif -#endif -#endif -#if IN_HEADER(__G_FILE_ENUMERATOR_H__) -#if IN_FILE(__G_FILE_ENUMERATOR_C__) -extern __typeof (g_file_enumerator_get_type) IA__g_file_enumerator_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_file_enumerator_get_type IA__g_file_enumerator_get_type - -extern __typeof (g_file_enumerator_next_file) IA__g_file_enumerator_next_file __attribute((visibility("hidden"))); -#define g_file_enumerator_next_file IA__g_file_enumerator_next_file - -extern __typeof (g_file_enumerator_close) IA__g_file_enumerator_close __attribute((visibility("hidden"))); -#define g_file_enumerator_close IA__g_file_enumerator_close - -extern __typeof (g_file_enumerator_next_files_async) IA__g_file_enumerator_next_files_async __attribute((visibility("hidden"))); -#define g_file_enumerator_next_files_async IA__g_file_enumerator_next_files_async - -extern __typeof (g_file_enumerator_next_files_finish) IA__g_file_enumerator_next_files_finish __attribute((visibility("hidden"))); -#define g_file_enumerator_next_files_finish IA__g_file_enumerator_next_files_finish - -extern __typeof (g_file_enumerator_close_async) IA__g_file_enumerator_close_async __attribute((visibility("hidden"))); -#define g_file_enumerator_close_async IA__g_file_enumerator_close_async - -extern __typeof (g_file_enumerator_close_finish) IA__g_file_enumerator_close_finish __attribute((visibility("hidden"))); -#define g_file_enumerator_close_finish IA__g_file_enumerator_close_finish - -extern __typeof (g_file_enumerator_is_closed) IA__g_file_enumerator_is_closed __attribute((visibility("hidden"))); -#define g_file_enumerator_is_closed IA__g_file_enumerator_is_closed - -extern __typeof (g_file_enumerator_has_pending) IA__g_file_enumerator_has_pending __attribute((visibility("hidden"))); -#define g_file_enumerator_has_pending IA__g_file_enumerator_has_pending - -extern __typeof (g_file_enumerator_set_pending) IA__g_file_enumerator_set_pending __attribute((visibility("hidden"))); -#define g_file_enumerator_set_pending IA__g_file_enumerator_set_pending - -extern __typeof (g_file_enumerator_get_container) IA__g_file_enumerator_get_container __attribute((visibility("hidden"))); -#define g_file_enumerator_get_container IA__g_file_enumerator_get_container - -#endif -#endif -#if IN_HEADER(__G_FILE_ICON_H__) -#if IN_FILE(__G_FILE_ICON_C__) -extern __typeof (g_file_icon_get_type) IA__g_file_icon_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_file_icon_get_type IA__g_file_icon_get_type - -extern __typeof (g_file_icon_new) IA__g_file_icon_new __attribute((visibility("hidden"))); -#define g_file_icon_new IA__g_file_icon_new - -extern __typeof (g_file_icon_get_file) IA__g_file_icon_get_file __attribute((visibility("hidden"))); -#define g_file_icon_get_file IA__g_file_icon_get_file - -#endif -#endif -#if IN_HEADER(__G_FILE_INFO_H__) -#if IN_FILE(__G_FILE_INFO_C__) -extern __typeof (g_file_info_get_type) IA__g_file_info_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_file_info_get_type IA__g_file_info_get_type - -extern __typeof (g_file_info_new) IA__g_file_info_new __attribute((visibility("hidden"))); -#define g_file_info_new IA__g_file_info_new - -extern __typeof (g_file_info_dup) IA__g_file_info_dup __attribute((visibility("hidden"))); -#define g_file_info_dup IA__g_file_info_dup - -extern __typeof (g_file_info_copy_into) IA__g_file_info_copy_into __attribute((visibility("hidden"))); -#define g_file_info_copy_into IA__g_file_info_copy_into - -extern __typeof (g_file_info_has_attribute) IA__g_file_info_has_attribute __attribute((visibility("hidden"))); -#define g_file_info_has_attribute IA__g_file_info_has_attribute - -extern __typeof (g_file_info_has_namespace) IA__g_file_info_has_namespace __attribute((visibility("hidden"))); -#define g_file_info_has_namespace IA__g_file_info_has_namespace - -extern __typeof (g_file_info_list_attributes) IA__g_file_info_list_attributes __attribute((visibility("hidden"))); -#define g_file_info_list_attributes IA__g_file_info_list_attributes - -extern __typeof (g_file_info_get_attribute_type) IA__g_file_info_get_attribute_type __attribute((visibility("hidden"))); -#define g_file_info_get_attribute_type IA__g_file_info_get_attribute_type - -extern __typeof (g_file_info_remove_attribute) IA__g_file_info_remove_attribute __attribute((visibility("hidden"))); -#define g_file_info_remove_attribute IA__g_file_info_remove_attribute - -extern __typeof (g_file_info_get_attribute_status) IA__g_file_info_get_attribute_status __attribute((visibility("hidden"))); -#define g_file_info_get_attribute_status IA__g_file_info_get_attribute_status - -extern __typeof (g_file_info_get_attribute_data) IA__g_file_info_get_attribute_data __attribute((visibility("hidden"))); -#define g_file_info_get_attribute_data IA__g_file_info_get_attribute_data - -extern __typeof (g_file_info_get_attribute_as_string) IA__g_file_info_get_attribute_as_string __attribute((visibility("hidden"))); -#define g_file_info_get_attribute_as_string IA__g_file_info_get_attribute_as_string - -extern __typeof (g_file_info_get_attribute_string) IA__g_file_info_get_attribute_string __attribute((visibility("hidden"))); -#define g_file_info_get_attribute_string IA__g_file_info_get_attribute_string - -extern __typeof (g_file_info_get_attribute_byte_string) IA__g_file_info_get_attribute_byte_string __attribute((visibility("hidden"))); -#define g_file_info_get_attribute_byte_string IA__g_file_info_get_attribute_byte_string - -extern __typeof (g_file_info_get_attribute_boolean) IA__g_file_info_get_attribute_boolean __attribute((visibility("hidden"))); -#define g_file_info_get_attribute_boolean IA__g_file_info_get_attribute_boolean - -extern __typeof (g_file_info_get_attribute_uint32) IA__g_file_info_get_attribute_uint32 __attribute((visibility("hidden"))); -#define g_file_info_get_attribute_uint32 IA__g_file_info_get_attribute_uint32 - -extern __typeof (g_file_info_get_attribute_int32) IA__g_file_info_get_attribute_int32 __attribute((visibility("hidden"))); -#define g_file_info_get_attribute_int32 IA__g_file_info_get_attribute_int32 - -extern __typeof (g_file_info_get_attribute_uint64) IA__g_file_info_get_attribute_uint64 __attribute((visibility("hidden"))); -#define g_file_info_get_attribute_uint64 IA__g_file_info_get_attribute_uint64 - -extern __typeof (g_file_info_get_attribute_int64) IA__g_file_info_get_attribute_int64 __attribute((visibility("hidden"))); -#define g_file_info_get_attribute_int64 IA__g_file_info_get_attribute_int64 - -extern __typeof (g_file_info_get_attribute_object) IA__g_file_info_get_attribute_object __attribute((visibility("hidden"))); -#define g_file_info_get_attribute_object IA__g_file_info_get_attribute_object - -extern __typeof (g_file_info_get_attribute_stringv) IA__g_file_info_get_attribute_stringv __attribute((visibility("hidden"))); -#define g_file_info_get_attribute_stringv IA__g_file_info_get_attribute_stringv - -extern __typeof (g_file_info_set_attribute_status) IA__g_file_info_set_attribute_status __attribute((visibility("hidden"))); -#define g_file_info_set_attribute_status IA__g_file_info_set_attribute_status - -extern __typeof (g_file_info_set_attribute) IA__g_file_info_set_attribute __attribute((visibility("hidden"))); -#define g_file_info_set_attribute IA__g_file_info_set_attribute - -extern __typeof (g_file_info_set_attribute_string) IA__g_file_info_set_attribute_string __attribute((visibility("hidden"))); -#define g_file_info_set_attribute_string IA__g_file_info_set_attribute_string - -extern __typeof (g_file_info_set_attribute_byte_string) IA__g_file_info_set_attribute_byte_string __attribute((visibility("hidden"))); -#define g_file_info_set_attribute_byte_string IA__g_file_info_set_attribute_byte_string - -extern __typeof (g_file_info_set_attribute_boolean) IA__g_file_info_set_attribute_boolean __attribute((visibility("hidden"))); -#define g_file_info_set_attribute_boolean IA__g_file_info_set_attribute_boolean - -extern __typeof (g_file_info_set_attribute_uint32) IA__g_file_info_set_attribute_uint32 __attribute((visibility("hidden"))); -#define g_file_info_set_attribute_uint32 IA__g_file_info_set_attribute_uint32 - -extern __typeof (g_file_info_set_attribute_int32) IA__g_file_info_set_attribute_int32 __attribute((visibility("hidden"))); -#define g_file_info_set_attribute_int32 IA__g_file_info_set_attribute_int32 - -extern __typeof (g_file_info_set_attribute_uint64) IA__g_file_info_set_attribute_uint64 __attribute((visibility("hidden"))); -#define g_file_info_set_attribute_uint64 IA__g_file_info_set_attribute_uint64 - -extern __typeof (g_file_info_set_attribute_int64) IA__g_file_info_set_attribute_int64 __attribute((visibility("hidden"))); -#define g_file_info_set_attribute_int64 IA__g_file_info_set_attribute_int64 - -extern __typeof (g_file_info_set_attribute_object) IA__g_file_info_set_attribute_object __attribute((visibility("hidden"))); -#define g_file_info_set_attribute_object IA__g_file_info_set_attribute_object - -extern __typeof (g_file_info_set_attribute_stringv) IA__g_file_info_set_attribute_stringv __attribute((visibility("hidden"))); -#define g_file_info_set_attribute_stringv IA__g_file_info_set_attribute_stringv - -extern __typeof (g_file_info_clear_status) IA__g_file_info_clear_status __attribute((visibility("hidden"))); -#define g_file_info_clear_status IA__g_file_info_clear_status - -extern __typeof (g_file_info_get_file_type) IA__g_file_info_get_file_type __attribute((visibility("hidden"))); -#define g_file_info_get_file_type IA__g_file_info_get_file_type - -extern __typeof (g_file_info_get_is_hidden) IA__g_file_info_get_is_hidden __attribute((visibility("hidden"))); -#define g_file_info_get_is_hidden IA__g_file_info_get_is_hidden - -extern __typeof (g_file_info_get_is_backup) IA__g_file_info_get_is_backup __attribute((visibility("hidden"))); -#define g_file_info_get_is_backup IA__g_file_info_get_is_backup - -extern __typeof (g_file_info_get_is_symlink) IA__g_file_info_get_is_symlink __attribute((visibility("hidden"))); -#define g_file_info_get_is_symlink IA__g_file_info_get_is_symlink - -extern __typeof (g_file_info_get_name) IA__g_file_info_get_name __attribute((visibility("hidden"))); -#define g_file_info_get_name IA__g_file_info_get_name - -extern __typeof (g_file_info_get_display_name) IA__g_file_info_get_display_name __attribute((visibility("hidden"))); -#define g_file_info_get_display_name IA__g_file_info_get_display_name - -extern __typeof (g_file_info_get_edit_name) IA__g_file_info_get_edit_name __attribute((visibility("hidden"))); -#define g_file_info_get_edit_name IA__g_file_info_get_edit_name - -extern __typeof (g_file_info_get_icon) IA__g_file_info_get_icon __attribute((visibility("hidden"))); -#define g_file_info_get_icon IA__g_file_info_get_icon - -extern __typeof (g_file_info_get_content_type) IA__g_file_info_get_content_type __attribute((visibility("hidden"))); -#define g_file_info_get_content_type IA__g_file_info_get_content_type - -extern __typeof (g_file_info_get_size) IA__g_file_info_get_size __attribute((visibility("hidden"))); -#define g_file_info_get_size IA__g_file_info_get_size - -extern __typeof (g_file_info_get_modification_time) IA__g_file_info_get_modification_time __attribute((visibility("hidden"))); -#define g_file_info_get_modification_time IA__g_file_info_get_modification_time - -extern __typeof (g_file_info_get_symlink_target) IA__g_file_info_get_symlink_target __attribute((visibility("hidden"))); -#define g_file_info_get_symlink_target IA__g_file_info_get_symlink_target - -extern __typeof (g_file_info_get_etag) IA__g_file_info_get_etag __attribute((visibility("hidden"))); -#define g_file_info_get_etag IA__g_file_info_get_etag - -extern __typeof (g_file_info_get_sort_order) IA__g_file_info_get_sort_order __attribute((visibility("hidden"))); -#define g_file_info_get_sort_order IA__g_file_info_get_sort_order - -extern __typeof (g_file_info_set_attribute_mask) IA__g_file_info_set_attribute_mask __attribute((visibility("hidden"))); -#define g_file_info_set_attribute_mask IA__g_file_info_set_attribute_mask - -extern __typeof (g_file_info_unset_attribute_mask) IA__g_file_info_unset_attribute_mask __attribute((visibility("hidden"))); -#define g_file_info_unset_attribute_mask IA__g_file_info_unset_attribute_mask - -extern __typeof (g_file_info_set_file_type) IA__g_file_info_set_file_type __attribute((visibility("hidden"))); -#define g_file_info_set_file_type IA__g_file_info_set_file_type - -extern __typeof (g_file_info_set_is_hidden) IA__g_file_info_set_is_hidden __attribute((visibility("hidden"))); -#define g_file_info_set_is_hidden IA__g_file_info_set_is_hidden - -extern __typeof (g_file_info_set_is_symlink) IA__g_file_info_set_is_symlink __attribute((visibility("hidden"))); -#define g_file_info_set_is_symlink IA__g_file_info_set_is_symlink - -extern __typeof (g_file_info_set_name) IA__g_file_info_set_name __attribute((visibility("hidden"))); -#define g_file_info_set_name IA__g_file_info_set_name - -extern __typeof (g_file_info_set_display_name) IA__g_file_info_set_display_name __attribute((visibility("hidden"))); -#define g_file_info_set_display_name IA__g_file_info_set_display_name - -extern __typeof (g_file_info_set_edit_name) IA__g_file_info_set_edit_name __attribute((visibility("hidden"))); -#define g_file_info_set_edit_name IA__g_file_info_set_edit_name - -extern __typeof (g_file_info_set_icon) IA__g_file_info_set_icon __attribute((visibility("hidden"))); -#define g_file_info_set_icon IA__g_file_info_set_icon - -extern __typeof (g_file_info_set_content_type) IA__g_file_info_set_content_type __attribute((visibility("hidden"))); -#define g_file_info_set_content_type IA__g_file_info_set_content_type - -extern __typeof (g_file_info_set_size) IA__g_file_info_set_size __attribute((visibility("hidden"))); -#define g_file_info_set_size IA__g_file_info_set_size - -extern __typeof (g_file_info_set_modification_time) IA__g_file_info_set_modification_time __attribute((visibility("hidden"))); -#define g_file_info_set_modification_time IA__g_file_info_set_modification_time - -extern __typeof (g_file_info_set_symlink_target) IA__g_file_info_set_symlink_target __attribute((visibility("hidden"))); -#define g_file_info_set_symlink_target IA__g_file_info_set_symlink_target - -extern __typeof (g_file_info_set_sort_order) IA__g_file_info_set_sort_order __attribute((visibility("hidden"))); -#define g_file_info_set_sort_order IA__g_file_info_set_sort_order - -extern __typeof (g_file_attribute_matcher_new) IA__g_file_attribute_matcher_new __attribute((visibility("hidden"))); -#define g_file_attribute_matcher_new IA__g_file_attribute_matcher_new - -extern __typeof (g_file_attribute_matcher_ref) IA__g_file_attribute_matcher_ref __attribute((visibility("hidden"))); -#define g_file_attribute_matcher_ref IA__g_file_attribute_matcher_ref - -extern __typeof (g_file_attribute_matcher_unref) IA__g_file_attribute_matcher_unref __attribute((visibility("hidden"))); -#define g_file_attribute_matcher_unref IA__g_file_attribute_matcher_unref - -extern __typeof (g_file_attribute_matcher_matches) IA__g_file_attribute_matcher_matches __attribute((visibility("hidden"))); -#define g_file_attribute_matcher_matches IA__g_file_attribute_matcher_matches - -extern __typeof (g_file_attribute_matcher_matches_only) IA__g_file_attribute_matcher_matches_only __attribute((visibility("hidden"))); -#define g_file_attribute_matcher_matches_only IA__g_file_attribute_matcher_matches_only - -extern __typeof (g_file_attribute_matcher_enumerate_namespace) IA__g_file_attribute_matcher_enumerate_namespace __attribute((visibility("hidden"))); -#define g_file_attribute_matcher_enumerate_namespace IA__g_file_attribute_matcher_enumerate_namespace - -extern __typeof (g_file_attribute_matcher_enumerate_next) IA__g_file_attribute_matcher_enumerate_next __attribute((visibility("hidden"))); -#define g_file_attribute_matcher_enumerate_next IA__g_file_attribute_matcher_enumerate_next - -#endif -#endif -#if IN_HEADER(__G_FILE_INPUT_STREAM_H__) -#if IN_FILE(__G_FILE_INPUT_STREAM_C__) -extern __typeof (g_file_input_stream_get_type) IA__g_file_input_stream_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_file_input_stream_get_type IA__g_file_input_stream_get_type - -extern __typeof (g_file_input_stream_query_info) IA__g_file_input_stream_query_info __attribute((visibility("hidden"))); -#define g_file_input_stream_query_info IA__g_file_input_stream_query_info - -extern __typeof (g_file_input_stream_query_info_async) IA__g_file_input_stream_query_info_async __attribute((visibility("hidden"))); -#define g_file_input_stream_query_info_async IA__g_file_input_stream_query_info_async - -extern __typeof (g_file_input_stream_query_info_finish) IA__g_file_input_stream_query_info_finish __attribute((visibility("hidden"))); -#define g_file_input_stream_query_info_finish IA__g_file_input_stream_query_info_finish - -#endif -#endif -#if IN_HEADER(__G_FILE_MONITOR_H__) -#if IN_FILE(__G_FILE_MONITOR_C__) -extern __typeof (g_file_monitor_get_type) IA__g_file_monitor_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_file_monitor_get_type IA__g_file_monitor_get_type - -extern __typeof (g_file_monitor_cancel) IA__g_file_monitor_cancel __attribute((visibility("hidden"))); -#define g_file_monitor_cancel IA__g_file_monitor_cancel - -extern __typeof (g_file_monitor_is_cancelled) IA__g_file_monitor_is_cancelled __attribute((visibility("hidden"))); -#define g_file_monitor_is_cancelled IA__g_file_monitor_is_cancelled - -extern __typeof (g_file_monitor_set_rate_limit) IA__g_file_monitor_set_rate_limit __attribute((visibility("hidden"))); -#define g_file_monitor_set_rate_limit IA__g_file_monitor_set_rate_limit - -extern __typeof (g_file_monitor_emit_event) IA__g_file_monitor_emit_event __attribute((visibility("hidden"))); -#define g_file_monitor_emit_event IA__g_file_monitor_emit_event - -#endif -#endif -#if IN_HEADER(__G_FILENAME_COMPLETER_H__) -#if IN_FILE(__G_FILENAME_COMPLETER_C__) -extern __typeof (g_filename_completer_get_type) IA__g_filename_completer_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_filename_completer_get_type IA__g_filename_completer_get_type - -extern __typeof (g_filename_completer_new) IA__g_filename_completer_new __attribute((visibility("hidden"))); -#define g_filename_completer_new IA__g_filename_completer_new - -extern __typeof (g_filename_completer_get_completion_suffix) IA__g_filename_completer_get_completion_suffix __attribute((visibility("hidden"))); -#define g_filename_completer_get_completion_suffix IA__g_filename_completer_get_completion_suffix - -extern __typeof (g_filename_completer_get_completions) IA__g_filename_completer_get_completions __attribute((visibility("hidden"))); -#define g_filename_completer_get_completions IA__g_filename_completer_get_completions - -extern __typeof (g_filename_completer_set_dirs_only) IA__g_filename_completer_set_dirs_only __attribute((visibility("hidden"))); -#define g_filename_completer_set_dirs_only IA__g_filename_completer_set_dirs_only - -#endif -#endif -#if IN_HEADER(__G_FILE_OUTPUT_STREAM_H__) -#if IN_FILE(__G_FILE_OUTPUT_STREAM_C__) -extern __typeof (g_file_output_stream_get_type) IA__g_file_output_stream_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_file_output_stream_get_type IA__g_file_output_stream_get_type - -extern __typeof (g_file_output_stream_query_info) IA__g_file_output_stream_query_info __attribute((visibility("hidden"))); -#define g_file_output_stream_query_info IA__g_file_output_stream_query_info - -extern __typeof (g_file_output_stream_query_info_async) IA__g_file_output_stream_query_info_async __attribute((visibility("hidden"))); -#define g_file_output_stream_query_info_async IA__g_file_output_stream_query_info_async - -extern __typeof (g_file_output_stream_query_info_finish) IA__g_file_output_stream_query_info_finish __attribute((visibility("hidden"))); -#define g_file_output_stream_query_info_finish IA__g_file_output_stream_query_info_finish - -extern __typeof (g_file_output_stream_get_etag) IA__g_file_output_stream_get_etag __attribute((visibility("hidden"))); -#define g_file_output_stream_get_etag IA__g_file_output_stream_get_etag - -#endif -#endif -#if IN_HEADER(__G_FILE_IO_STREAM_H__) -#if IN_FILE(__G_FILE_IO_STREAM_C__) -extern __typeof (g_file_io_stream_get_type) IA__g_file_io_stream_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_file_io_stream_get_type IA__g_file_io_stream_get_type - -extern __typeof (g_file_io_stream_query_info) IA__g_file_io_stream_query_info __attribute((visibility("hidden"))); -#define g_file_io_stream_query_info IA__g_file_io_stream_query_info - -extern __typeof (g_file_io_stream_query_info_async) IA__g_file_io_stream_query_info_async __attribute((visibility("hidden"))); -#define g_file_io_stream_query_info_async IA__g_file_io_stream_query_info_async - -extern __typeof (g_file_io_stream_query_info_finish) IA__g_file_io_stream_query_info_finish __attribute((visibility("hidden"))); -#define g_file_io_stream_query_info_finish IA__g_file_io_stream_query_info_finish - -extern __typeof (g_file_io_stream_get_etag) IA__g_file_io_stream_get_etag __attribute((visibility("hidden"))); -#define g_file_io_stream_get_etag IA__g_file_io_stream_get_etag - -#endif -#endif -#if IN_HEADER(__G_FILTER_INPUT_STREAM_H__) -#if IN_FILE(__G_FILTER_INPUT_STREAM_C__) -extern __typeof (g_filter_input_stream_get_type) IA__g_filter_input_stream_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_filter_input_stream_get_type IA__g_filter_input_stream_get_type - -extern __typeof (g_filter_input_stream_get_base_stream) IA__g_filter_input_stream_get_base_stream __attribute((visibility("hidden"))); -#define g_filter_input_stream_get_base_stream IA__g_filter_input_stream_get_base_stream - -extern __typeof (g_filter_input_stream_get_close_base_stream) IA__g_filter_input_stream_get_close_base_stream __attribute((visibility("hidden"))); -#define g_filter_input_stream_get_close_base_stream IA__g_filter_input_stream_get_close_base_stream - -extern __typeof (g_filter_input_stream_set_close_base_stream) IA__g_filter_input_stream_set_close_base_stream __attribute((visibility("hidden"))); -#define g_filter_input_stream_set_close_base_stream IA__g_filter_input_stream_set_close_base_stream - -#endif -#endif -#if IN_HEADER(__G_FILTER_OUTPUT_STREAM_H__) -#if IN_FILE(__G_FILTER_OUTPUT_STREAM_C__) -extern __typeof (g_filter_output_stream_get_type) IA__g_filter_output_stream_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_filter_output_stream_get_type IA__g_filter_output_stream_get_type - -extern __typeof (g_filter_output_stream_get_base_stream) IA__g_filter_output_stream_get_base_stream __attribute((visibility("hidden"))); -#define g_filter_output_stream_get_base_stream IA__g_filter_output_stream_get_base_stream - -extern __typeof (g_filter_output_stream_get_close_base_stream) IA__g_filter_output_stream_get_close_base_stream __attribute((visibility("hidden"))); -#define g_filter_output_stream_get_close_base_stream IA__g_filter_output_stream_get_close_base_stream - -extern __typeof (g_filter_output_stream_set_close_base_stream) IA__g_filter_output_stream_set_close_base_stream __attribute((visibility("hidden"))); -#define g_filter_output_stream_set_close_base_stream IA__g_filter_output_stream_set_close_base_stream - -#endif -#endif -#if IN_HEADER(__G_ICON_H__) -#if IN_FILE(__G_ICON_C__) -extern __typeof (g_icon_get_type) IA__g_icon_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_icon_get_type IA__g_icon_get_type - -extern __typeof (g_icon_hash) IA__g_icon_hash __attribute((visibility("hidden"))); -#define g_icon_hash IA__g_icon_hash - -extern __typeof (g_icon_equal) IA__g_icon_equal __attribute((visibility("hidden"))); -#define g_icon_equal IA__g_icon_equal - -extern __typeof (g_icon_to_string) IA__g_icon_to_string __attribute((visibility("hidden"))); -#define g_icon_to_string IA__g_icon_to_string - -extern __typeof (g_icon_new_for_string) IA__g_icon_new_for_string __attribute((visibility("hidden"))); -#define g_icon_new_for_string IA__g_icon_new_for_string - -#endif -#endif -#if IN_HEADER(__G_INPUT_STREAM_H__) -#if IN_FILE(__G_INPUT_STREAM_C__) -extern __typeof (g_input_stream_get_type) IA__g_input_stream_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_input_stream_get_type IA__g_input_stream_get_type - -extern __typeof (g_input_stream_read) IA__g_input_stream_read __attribute((visibility("hidden"))); -#define g_input_stream_read IA__g_input_stream_read - -extern __typeof (g_input_stream_read_all) IA__g_input_stream_read_all __attribute((visibility("hidden"))); -#define g_input_stream_read_all IA__g_input_stream_read_all - -extern __typeof (g_input_stream_skip) IA__g_input_stream_skip __attribute((visibility("hidden"))); -#define g_input_stream_skip IA__g_input_stream_skip - -extern __typeof (g_input_stream_close) IA__g_input_stream_close __attribute((visibility("hidden"))); -#define g_input_stream_close IA__g_input_stream_close - -extern __typeof (g_input_stream_read_async) IA__g_input_stream_read_async __attribute((visibility("hidden"))); -#define g_input_stream_read_async IA__g_input_stream_read_async - -extern __typeof (g_input_stream_read_finish) IA__g_input_stream_read_finish __attribute((visibility("hidden"))); -#define g_input_stream_read_finish IA__g_input_stream_read_finish - -extern __typeof (g_input_stream_skip_async) IA__g_input_stream_skip_async __attribute((visibility("hidden"))); -#define g_input_stream_skip_async IA__g_input_stream_skip_async - -extern __typeof (g_input_stream_skip_finish) IA__g_input_stream_skip_finish __attribute((visibility("hidden"))); -#define g_input_stream_skip_finish IA__g_input_stream_skip_finish - -extern __typeof (g_input_stream_close_async) IA__g_input_stream_close_async __attribute((visibility("hidden"))); -#define g_input_stream_close_async IA__g_input_stream_close_async - -extern __typeof (g_input_stream_close_finish) IA__g_input_stream_close_finish __attribute((visibility("hidden"))); -#define g_input_stream_close_finish IA__g_input_stream_close_finish - -extern __typeof (g_input_stream_is_closed) IA__g_input_stream_is_closed __attribute((visibility("hidden"))); -#define g_input_stream_is_closed IA__g_input_stream_is_closed - -extern __typeof (g_input_stream_has_pending) IA__g_input_stream_has_pending __attribute((visibility("hidden"))); -#define g_input_stream_has_pending IA__g_input_stream_has_pending - -extern __typeof (g_input_stream_set_pending) IA__g_input_stream_set_pending __attribute((visibility("hidden"))); -#define g_input_stream_set_pending IA__g_input_stream_set_pending - -extern __typeof (g_input_stream_clear_pending) IA__g_input_stream_clear_pending __attribute((visibility("hidden"))); -#define g_input_stream_clear_pending IA__g_input_stream_clear_pending - -#endif -#endif -#if IN_HEADER(__G_IO_STREAM_H__) -#if IN_FILE(__G_IO_STREAM_C__) -extern __typeof (g_io_stream_get_type) IA__g_io_stream_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_io_stream_get_type IA__g_io_stream_get_type - -extern __typeof (g_io_stream_get_input_stream) IA__g_io_stream_get_input_stream __attribute((visibility("hidden"))); -#define g_io_stream_get_input_stream IA__g_io_stream_get_input_stream - -extern __typeof (g_io_stream_get_output_stream) IA__g_io_stream_get_output_stream __attribute((visibility("hidden"))); -#define g_io_stream_get_output_stream IA__g_io_stream_get_output_stream - -extern __typeof (g_io_stream_close) IA__g_io_stream_close __attribute((visibility("hidden"))); -#define g_io_stream_close IA__g_io_stream_close - -extern __typeof (g_io_stream_close_async) IA__g_io_stream_close_async __attribute((visibility("hidden"))); -#define g_io_stream_close_async IA__g_io_stream_close_async - -extern __typeof (g_io_stream_close_finish) IA__g_io_stream_close_finish __attribute((visibility("hidden"))); -#define g_io_stream_close_finish IA__g_io_stream_close_finish - -extern __typeof (g_io_stream_is_closed) IA__g_io_stream_is_closed __attribute((visibility("hidden"))); -#define g_io_stream_is_closed IA__g_io_stream_is_closed - -extern __typeof (g_io_stream_has_pending) IA__g_io_stream_has_pending __attribute((visibility("hidden"))); -#define g_io_stream_has_pending IA__g_io_stream_has_pending - -extern __typeof (g_io_stream_set_pending) IA__g_io_stream_set_pending __attribute((visibility("hidden"))); -#define g_io_stream_set_pending IA__g_io_stream_set_pending - -extern __typeof (g_io_stream_clear_pending) IA__g_io_stream_clear_pending __attribute((visibility("hidden"))); -#define g_io_stream_clear_pending IA__g_io_stream_clear_pending - -#endif -#endif -#if IN_HEADER(__G_IO_ERROR_H__) -#if IN_FILE(__G_IO_ERROR_C__) -extern __typeof (g_io_error_quark) IA__g_io_error_quark __attribute((visibility("hidden"))); -#define g_io_error_quark IA__g_io_error_quark - -extern __typeof (g_io_error_from_errno) IA__g_io_error_from_errno __attribute((visibility("hidden"))); -#define g_io_error_from_errno IA__g_io_error_from_errno - -#endif -#endif -#if IN_HEADER(__G_IO_MODULE_H__) -#if IN_FILE(__G_IO_MODULE_C__) -extern __typeof (g_io_module_get_type) IA__g_io_module_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_io_module_get_type IA__g_io_module_get_type - -extern __typeof (g_io_module_new) IA__g_io_module_new __attribute((visibility("hidden"))); -#define g_io_module_new IA__g_io_module_new - -extern __typeof (g_io_modules_scan_all_in_directory) IA__g_io_modules_scan_all_in_directory __attribute((visibility("hidden"))); -#define g_io_modules_scan_all_in_directory IA__g_io_modules_scan_all_in_directory - -extern __typeof (g_io_modules_load_all_in_directory) IA__g_io_modules_load_all_in_directory __attribute((visibility("hidden"))); -#define g_io_modules_load_all_in_directory IA__g_io_modules_load_all_in_directory - -extern __typeof (g_io_extension_point_register) IA__g_io_extension_point_register __attribute((visibility("hidden"))); -#define g_io_extension_point_register IA__g_io_extension_point_register - -extern __typeof (g_io_extension_point_lookup) IA__g_io_extension_point_lookup __attribute((visibility("hidden"))); -#define g_io_extension_point_lookup IA__g_io_extension_point_lookup - -extern __typeof (g_io_extension_point_set_required_type) IA__g_io_extension_point_set_required_type __attribute((visibility("hidden"))); -#define g_io_extension_point_set_required_type IA__g_io_extension_point_set_required_type - -extern __typeof (g_io_extension_point_get_required_type) IA__g_io_extension_point_get_required_type __attribute((visibility("hidden"))); -#define g_io_extension_point_get_required_type IA__g_io_extension_point_get_required_type - -extern __typeof (g_io_extension_point_get_extensions) IA__g_io_extension_point_get_extensions __attribute((visibility("hidden"))); -#define g_io_extension_point_get_extensions IA__g_io_extension_point_get_extensions - -extern __typeof (g_io_extension_point_get_extension_by_name) IA__g_io_extension_point_get_extension_by_name __attribute((visibility("hidden"))); -#define g_io_extension_point_get_extension_by_name IA__g_io_extension_point_get_extension_by_name - -extern __typeof (g_io_extension_point_implement) IA__g_io_extension_point_implement __attribute((visibility("hidden"))); -#define g_io_extension_point_implement IA__g_io_extension_point_implement - -extern __typeof (g_io_extension_get_type) IA__g_io_extension_get_type __attribute((visibility("hidden"))); -#define g_io_extension_get_type IA__g_io_extension_get_type - -extern __typeof (g_io_extension_get_name) IA__g_io_extension_get_name __attribute((visibility("hidden"))); -#define g_io_extension_get_name IA__g_io_extension_get_name - -extern __typeof (g_io_extension_get_priority) IA__g_io_extension_get_priority __attribute((visibility("hidden"))); -#define g_io_extension_get_priority IA__g_io_extension_get_priority - -extern __typeof (g_io_extension_ref_class) IA__g_io_extension_ref_class __attribute((visibility("hidden"))); -#define g_io_extension_ref_class IA__g_io_extension_ref_class - -#endif -#endif -#if IN_HEADER(__G_IO_SCHEDULER_H__) -#if IN_FILE(__G_IO_SCHEDULER_C__) -extern __typeof (g_io_scheduler_push_job) IA__g_io_scheduler_push_job __attribute((visibility("hidden"))); -#define g_io_scheduler_push_job IA__g_io_scheduler_push_job - -extern __typeof (g_io_scheduler_cancel_all_jobs) IA__g_io_scheduler_cancel_all_jobs __attribute((visibility("hidden"))); -#define g_io_scheduler_cancel_all_jobs IA__g_io_scheduler_cancel_all_jobs - -extern __typeof (g_io_scheduler_job_send_to_mainloop) IA__g_io_scheduler_job_send_to_mainloop __attribute((visibility("hidden"))); -#define g_io_scheduler_job_send_to_mainloop IA__g_io_scheduler_job_send_to_mainloop - -extern __typeof (g_io_scheduler_job_send_to_mainloop_async) IA__g_io_scheduler_job_send_to_mainloop_async __attribute((visibility("hidden"))); -#define g_io_scheduler_job_send_to_mainloop_async IA__g_io_scheduler_job_send_to_mainloop_async - -#endif -#endif -#if IN_HEADER(__G_LOADABLE_ICON_H__) -#if IN_FILE(__G_LOADABLE_ICON_C__) -extern __typeof (g_loadable_icon_get_type) IA__g_loadable_icon_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_loadable_icon_get_type IA__g_loadable_icon_get_type - -extern __typeof (g_loadable_icon_load) IA__g_loadable_icon_load __attribute((visibility("hidden"))); -#define g_loadable_icon_load IA__g_loadable_icon_load - -extern __typeof (g_loadable_icon_load_async) IA__g_loadable_icon_load_async __attribute((visibility("hidden"))); -#define g_loadable_icon_load_async IA__g_loadable_icon_load_async - -extern __typeof (g_loadable_icon_load_finish) IA__g_loadable_icon_load_finish __attribute((visibility("hidden"))); -#define g_loadable_icon_load_finish IA__g_loadable_icon_load_finish - -#endif -#endif -#if IN_HEADER(__G_MEMORY_INPUT_STREAM_H__) -#if IN_FILE(__G_MEMORY_INPUT_STREAM_C__) -extern __typeof (g_memory_input_stream_get_type) IA__g_memory_input_stream_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_memory_input_stream_get_type IA__g_memory_input_stream_get_type - -extern __typeof (g_memory_input_stream_new) IA__g_memory_input_stream_new __attribute((visibility("hidden"))); -#define g_memory_input_stream_new IA__g_memory_input_stream_new - -extern __typeof (g_memory_input_stream_new_from_data) IA__g_memory_input_stream_new_from_data __attribute((visibility("hidden"))); -#define g_memory_input_stream_new_from_data IA__g_memory_input_stream_new_from_data - -extern __typeof (g_memory_input_stream_add_data) IA__g_memory_input_stream_add_data __attribute((visibility("hidden"))); -#define g_memory_input_stream_add_data IA__g_memory_input_stream_add_data - -#endif -#endif -#if IN_HEADER(__G_MEMORY_OUTPUT_STREAM_H__) -#if IN_FILE(__G_MEMORY_OUTPUT_STREAM_C__) -extern __typeof (g_memory_output_stream_get_type) IA__g_memory_output_stream_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_memory_output_stream_get_type IA__g_memory_output_stream_get_type - -extern __typeof (g_memory_output_stream_new) IA__g_memory_output_stream_new __attribute((visibility("hidden"))); -#define g_memory_output_stream_new IA__g_memory_output_stream_new - -extern __typeof (g_memory_output_stream_get_data) IA__g_memory_output_stream_get_data __attribute((visibility("hidden"))); -#define g_memory_output_stream_get_data IA__g_memory_output_stream_get_data - -extern __typeof (g_memory_output_stream_get_data_size) IA__g_memory_output_stream_get_data_size __attribute((visibility("hidden"))); -#define g_memory_output_stream_get_data_size IA__g_memory_output_stream_get_data_size - -extern __typeof (g_memory_output_stream_get_size) IA__g_memory_output_stream_get_size __attribute((visibility("hidden"))); -#define g_memory_output_stream_get_size IA__g_memory_output_stream_get_size - -#endif -#endif -#if IN_HEADER(__G_MOUNT_OPERATION_H__) -#if IN_FILE(__G_MOUNT_OPERATION_C__) -extern __typeof (g_mount_operation_get_type) IA__g_mount_operation_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_mount_operation_get_type IA__g_mount_operation_get_type - -extern __typeof (g_mount_operation_new) IA__g_mount_operation_new __attribute((visibility("hidden"))); -#define g_mount_operation_new IA__g_mount_operation_new - -extern __typeof (g_mount_operation_get_username) IA__g_mount_operation_get_username __attribute((visibility("hidden"))); -#define g_mount_operation_get_username IA__g_mount_operation_get_username - -extern __typeof (g_mount_operation_set_username) IA__g_mount_operation_set_username __attribute((visibility("hidden"))); -#define g_mount_operation_set_username IA__g_mount_operation_set_username - -extern __typeof (g_mount_operation_get_password) IA__g_mount_operation_get_password __attribute((visibility("hidden"))); -#define g_mount_operation_get_password IA__g_mount_operation_get_password - -extern __typeof (g_mount_operation_set_password) IA__g_mount_operation_set_password __attribute((visibility("hidden"))); -#define g_mount_operation_set_password IA__g_mount_operation_set_password - -extern __typeof (g_mount_operation_get_anonymous) IA__g_mount_operation_get_anonymous __attribute((visibility("hidden"))); -#define g_mount_operation_get_anonymous IA__g_mount_operation_get_anonymous - -extern __typeof (g_mount_operation_set_anonymous) IA__g_mount_operation_set_anonymous __attribute((visibility("hidden"))); -#define g_mount_operation_set_anonymous IA__g_mount_operation_set_anonymous - -extern __typeof (g_mount_operation_get_domain) IA__g_mount_operation_get_domain __attribute((visibility("hidden"))); -#define g_mount_operation_get_domain IA__g_mount_operation_get_domain - -extern __typeof (g_mount_operation_set_domain) IA__g_mount_operation_set_domain __attribute((visibility("hidden"))); -#define g_mount_operation_set_domain IA__g_mount_operation_set_domain - -extern __typeof (g_mount_operation_get_password_save) IA__g_mount_operation_get_password_save __attribute((visibility("hidden"))); -#define g_mount_operation_get_password_save IA__g_mount_operation_get_password_save - -extern __typeof (g_mount_operation_set_password_save) IA__g_mount_operation_set_password_save __attribute((visibility("hidden"))); -#define g_mount_operation_set_password_save IA__g_mount_operation_set_password_save - -extern __typeof (g_mount_operation_get_choice) IA__g_mount_operation_get_choice __attribute((visibility("hidden"))); -#define g_mount_operation_get_choice IA__g_mount_operation_get_choice - -extern __typeof (g_mount_operation_set_choice) IA__g_mount_operation_set_choice __attribute((visibility("hidden"))); -#define g_mount_operation_set_choice IA__g_mount_operation_set_choice - -extern __typeof (g_mount_operation_reply) IA__g_mount_operation_reply __attribute((visibility("hidden"))); -#define g_mount_operation_reply IA__g_mount_operation_reply - -#endif -#endif -#if IN_HEADER(__G_OUTPUT_STREAM_H__) -#if IN_FILE(__G_OUTPUT_STREAM_C__) -extern __typeof (g_output_stream_get_type) IA__g_output_stream_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_output_stream_get_type IA__g_output_stream_get_type - -extern __typeof (g_output_stream_write) IA__g_output_stream_write __attribute((visibility("hidden"))); -#define g_output_stream_write IA__g_output_stream_write - -extern __typeof (g_output_stream_write_all) IA__g_output_stream_write_all __attribute((visibility("hidden"))); -#define g_output_stream_write_all IA__g_output_stream_write_all - -extern __typeof (g_output_stream_splice) IA__g_output_stream_splice __attribute((visibility("hidden"))); -#define g_output_stream_splice IA__g_output_stream_splice - -extern __typeof (g_output_stream_flush) IA__g_output_stream_flush __attribute((visibility("hidden"))); -#define g_output_stream_flush IA__g_output_stream_flush - -extern __typeof (g_output_stream_close) IA__g_output_stream_close __attribute((visibility("hidden"))); -#define g_output_stream_close IA__g_output_stream_close - -extern __typeof (g_output_stream_write_async) IA__g_output_stream_write_async __attribute((visibility("hidden"))); -#define g_output_stream_write_async IA__g_output_stream_write_async - -extern __typeof (g_output_stream_write_finish) IA__g_output_stream_write_finish __attribute((visibility("hidden"))); -#define g_output_stream_write_finish IA__g_output_stream_write_finish - -extern __typeof (g_output_stream_splice_async) IA__g_output_stream_splice_async __attribute((visibility("hidden"))); -#define g_output_stream_splice_async IA__g_output_stream_splice_async - -extern __typeof (g_output_stream_splice_finish) IA__g_output_stream_splice_finish __attribute((visibility("hidden"))); -#define g_output_stream_splice_finish IA__g_output_stream_splice_finish - -extern __typeof (g_output_stream_flush_async) IA__g_output_stream_flush_async __attribute((visibility("hidden"))); -#define g_output_stream_flush_async IA__g_output_stream_flush_async - -extern __typeof (g_output_stream_flush_finish) IA__g_output_stream_flush_finish __attribute((visibility("hidden"))); -#define g_output_stream_flush_finish IA__g_output_stream_flush_finish - -extern __typeof (g_output_stream_close_async) IA__g_output_stream_close_async __attribute((visibility("hidden"))); -#define g_output_stream_close_async IA__g_output_stream_close_async - -extern __typeof (g_output_stream_close_finish) IA__g_output_stream_close_finish __attribute((visibility("hidden"))); -#define g_output_stream_close_finish IA__g_output_stream_close_finish - -extern __typeof (g_output_stream_is_closed) IA__g_output_stream_is_closed __attribute((visibility("hidden"))); -#define g_output_stream_is_closed IA__g_output_stream_is_closed - -extern __typeof (g_output_stream_is_closing) IA__g_output_stream_is_closing __attribute((visibility("hidden"))); -#define g_output_stream_is_closing IA__g_output_stream_is_closing - -extern __typeof (g_output_stream_has_pending) IA__g_output_stream_has_pending __attribute((visibility("hidden"))); -#define g_output_stream_has_pending IA__g_output_stream_has_pending - -extern __typeof (g_output_stream_set_pending) IA__g_output_stream_set_pending __attribute((visibility("hidden"))); -#define g_output_stream_set_pending IA__g_output_stream_set_pending - -extern __typeof (g_output_stream_clear_pending) IA__g_output_stream_clear_pending __attribute((visibility("hidden"))); -#define g_output_stream_clear_pending IA__g_output_stream_clear_pending - -#endif -#endif -#if IN_HEADER(__G_SEEKABLE_H__) -#if IN_FILE(__G_SEEKABLE_C__) -extern __typeof (g_seekable_get_type) IA__g_seekable_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_seekable_get_type IA__g_seekable_get_type - -extern __typeof (g_seekable_tell) IA__g_seekable_tell __attribute((visibility("hidden"))); -#define g_seekable_tell IA__g_seekable_tell - -extern __typeof (g_seekable_can_seek) IA__g_seekable_can_seek __attribute((visibility("hidden"))); -#define g_seekable_can_seek IA__g_seekable_can_seek - -extern __typeof (g_seekable_seek) IA__g_seekable_seek __attribute((visibility("hidden"))); -#define g_seekable_seek IA__g_seekable_seek - -extern __typeof (g_seekable_can_truncate) IA__g_seekable_can_truncate __attribute((visibility("hidden"))); -#define g_seekable_can_truncate IA__g_seekable_can_truncate - -extern __typeof (g_seekable_truncate) IA__g_seekable_truncate __attribute((visibility("hidden"))); -#define g_seekable_truncate IA__g_seekable_truncate - -#endif -#endif -#if IN_HEADER(__G_SIMPLE_ASYNC_RESULT_H__) -#if IN_FILE(__G_SIMPLE_ASYNC_RESULT_C__) -extern __typeof (g_simple_async_result_get_type) IA__g_simple_async_result_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_simple_async_result_get_type IA__g_simple_async_result_get_type - -extern __typeof (g_simple_async_result_new) IA__g_simple_async_result_new __attribute((visibility("hidden"))); -#define g_simple_async_result_new IA__g_simple_async_result_new - -extern __typeof (g_simple_async_result_new_error) IA__g_simple_async_result_new_error __attribute((visibility("hidden"))); -#define g_simple_async_result_new_error IA__g_simple_async_result_new_error - -extern __typeof (g_simple_async_result_new_from_error) IA__g_simple_async_result_new_from_error __attribute((visibility("hidden"))); -#define g_simple_async_result_new_from_error IA__g_simple_async_result_new_from_error - -extern __typeof (g_simple_async_result_set_op_res_gpointer) IA__g_simple_async_result_set_op_res_gpointer __attribute((visibility("hidden"))); -#define g_simple_async_result_set_op_res_gpointer IA__g_simple_async_result_set_op_res_gpointer - -extern __typeof (g_simple_async_result_get_op_res_gpointer) IA__g_simple_async_result_get_op_res_gpointer __attribute((visibility("hidden"))); -#define g_simple_async_result_get_op_res_gpointer IA__g_simple_async_result_get_op_res_gpointer - -extern __typeof (g_simple_async_result_set_op_res_gssize) IA__g_simple_async_result_set_op_res_gssize __attribute((visibility("hidden"))); -#define g_simple_async_result_set_op_res_gssize IA__g_simple_async_result_set_op_res_gssize - -extern __typeof (g_simple_async_result_get_op_res_gssize) IA__g_simple_async_result_get_op_res_gssize __attribute((visibility("hidden"))); -#define g_simple_async_result_get_op_res_gssize IA__g_simple_async_result_get_op_res_gssize - -extern __typeof (g_simple_async_result_set_op_res_gboolean) IA__g_simple_async_result_set_op_res_gboolean __attribute((visibility("hidden"))); -#define g_simple_async_result_set_op_res_gboolean IA__g_simple_async_result_set_op_res_gboolean - -extern __typeof (g_simple_async_result_get_op_res_gboolean) IA__g_simple_async_result_get_op_res_gboolean __attribute((visibility("hidden"))); -#define g_simple_async_result_get_op_res_gboolean IA__g_simple_async_result_get_op_res_gboolean - -extern __typeof (g_simple_async_result_get_source_tag) IA__g_simple_async_result_get_source_tag __attribute((visibility("hidden"))); -#define g_simple_async_result_get_source_tag IA__g_simple_async_result_get_source_tag - -extern __typeof (g_simple_async_result_set_handle_cancellation) IA__g_simple_async_result_set_handle_cancellation __attribute((visibility("hidden"))); -#define g_simple_async_result_set_handle_cancellation IA__g_simple_async_result_set_handle_cancellation - -extern __typeof (g_simple_async_result_complete) IA__g_simple_async_result_complete __attribute((visibility("hidden"))); -#define g_simple_async_result_complete IA__g_simple_async_result_complete - -extern __typeof (g_simple_async_result_complete_in_idle) IA__g_simple_async_result_complete_in_idle __attribute((visibility("hidden"))); -#define g_simple_async_result_complete_in_idle IA__g_simple_async_result_complete_in_idle - -extern __typeof (g_simple_async_result_run_in_thread) IA__g_simple_async_result_run_in_thread __attribute((visibility("hidden"))); -#define g_simple_async_result_run_in_thread IA__g_simple_async_result_run_in_thread - -extern __typeof (g_simple_async_result_set_from_error) IA__g_simple_async_result_set_from_error __attribute((visibility("hidden"))); -#define g_simple_async_result_set_from_error IA__g_simple_async_result_set_from_error - -extern __typeof (g_simple_async_result_propagate_error) IA__g_simple_async_result_propagate_error __attribute((visibility("hidden"))); -#define g_simple_async_result_propagate_error IA__g_simple_async_result_propagate_error - -extern __typeof (g_simple_async_result_set_error) IA__g_simple_async_result_set_error __attribute((visibility("hidden"))); -#define g_simple_async_result_set_error IA__g_simple_async_result_set_error - -extern __typeof (g_simple_async_result_set_error_va) IA__g_simple_async_result_set_error_va __attribute((visibility("hidden"))); -#define g_simple_async_result_set_error_va IA__g_simple_async_result_set_error_va - -extern __typeof (g_simple_async_result_is_valid) IA__g_simple_async_result_is_valid __attribute((visibility("hidden"))); -#define g_simple_async_result_is_valid IA__g_simple_async_result_is_valid - -extern __typeof (g_simple_async_report_error_in_idle) IA__g_simple_async_report_error_in_idle __attribute((visibility("hidden"))); -#define g_simple_async_report_error_in_idle IA__g_simple_async_report_error_in_idle - -extern __typeof (g_simple_async_report_gerror_in_idle) IA__g_simple_async_report_gerror_in_idle __attribute((visibility("hidden"))); -#define g_simple_async_report_gerror_in_idle IA__g_simple_async_report_gerror_in_idle - -#endif -#endif -#if IN_HEADER(__G_THEMED_ICON_H__) -#if IN_FILE(__G_THEMED_ICON_C__) -extern __typeof (g_themed_icon_get_type) IA__g_themed_icon_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_themed_icon_get_type IA__g_themed_icon_get_type - -extern __typeof (g_themed_icon_new) IA__g_themed_icon_new __attribute((visibility("hidden"))); -#define g_themed_icon_new IA__g_themed_icon_new - -extern __typeof (g_themed_icon_new_with_default_fallbacks) IA__g_themed_icon_new_with_default_fallbacks __attribute((visibility("hidden"))); -#define g_themed_icon_new_with_default_fallbacks IA__g_themed_icon_new_with_default_fallbacks - -extern __typeof (g_themed_icon_new_from_names) IA__g_themed_icon_new_from_names __attribute((visibility("hidden"))); -#define g_themed_icon_new_from_names IA__g_themed_icon_new_from_names - -extern __typeof (g_themed_icon_get_names) IA__g_themed_icon_get_names __attribute((visibility("hidden"))); -#define g_themed_icon_get_names IA__g_themed_icon_get_names - -extern __typeof (g_themed_icon_prepend_name) IA__g_themed_icon_prepend_name __attribute((visibility("hidden"))); -#define g_themed_icon_prepend_name IA__g_themed_icon_prepend_name - -extern __typeof (g_themed_icon_append_name) IA__g_themed_icon_append_name __attribute((visibility("hidden"))); -#define g_themed_icon_append_name IA__g_themed_icon_append_name - -#endif -#endif -#if IN_HEADER(__G_UNIX_MOUNTS_H__) -#if IN_FILE(__G_UNIX_MOUNTS_C__) -#ifdef G_OS_UNIX -extern __typeof (g_unix_mount_free) IA__g_unix_mount_free __attribute((visibility("hidden"))); -#define g_unix_mount_free IA__g_unix_mount_free - -extern __typeof (g_unix_mount_point_free) IA__g_unix_mount_point_free __attribute((visibility("hidden"))); -#define g_unix_mount_point_free IA__g_unix_mount_point_free - -extern __typeof (g_unix_mount_compare) IA__g_unix_mount_compare __attribute((visibility("hidden"))); -#define g_unix_mount_compare IA__g_unix_mount_compare - -extern __typeof (g_unix_mount_get_mount_path) IA__g_unix_mount_get_mount_path __attribute((visibility("hidden"))); -#define g_unix_mount_get_mount_path IA__g_unix_mount_get_mount_path - -extern __typeof (g_unix_mount_get_device_path) IA__g_unix_mount_get_device_path __attribute((visibility("hidden"))); -#define g_unix_mount_get_device_path IA__g_unix_mount_get_device_path - -extern __typeof (g_unix_mount_get_fs_type) IA__g_unix_mount_get_fs_type __attribute((visibility("hidden"))); -#define g_unix_mount_get_fs_type IA__g_unix_mount_get_fs_type - -extern __typeof (g_unix_mount_is_readonly) IA__g_unix_mount_is_readonly __attribute((visibility("hidden"))); -#define g_unix_mount_is_readonly IA__g_unix_mount_is_readonly - -extern __typeof (g_unix_mount_is_system_internal) IA__g_unix_mount_is_system_internal __attribute((visibility("hidden"))); -#define g_unix_mount_is_system_internal IA__g_unix_mount_is_system_internal - -extern __typeof (g_unix_mount_guess_can_eject) IA__g_unix_mount_guess_can_eject __attribute((visibility("hidden"))); -#define g_unix_mount_guess_can_eject IA__g_unix_mount_guess_can_eject - -extern __typeof (g_unix_mount_guess_should_display) IA__g_unix_mount_guess_should_display __attribute((visibility("hidden"))); -#define g_unix_mount_guess_should_display IA__g_unix_mount_guess_should_display - -extern __typeof (g_unix_mount_guess_name) IA__g_unix_mount_guess_name __attribute((visibility("hidden"))); -#define g_unix_mount_guess_name IA__g_unix_mount_guess_name - -extern __typeof (g_unix_mount_guess_icon) IA__g_unix_mount_guess_icon __attribute((visibility("hidden"))); -#define g_unix_mount_guess_icon IA__g_unix_mount_guess_icon - -extern __typeof (g_unix_mount_point_compare) IA__g_unix_mount_point_compare __attribute((visibility("hidden"))); -#define g_unix_mount_point_compare IA__g_unix_mount_point_compare - -extern __typeof (g_unix_mount_point_get_mount_path) IA__g_unix_mount_point_get_mount_path __attribute((visibility("hidden"))); -#define g_unix_mount_point_get_mount_path IA__g_unix_mount_point_get_mount_path - -extern __typeof (g_unix_mount_point_get_device_path) IA__g_unix_mount_point_get_device_path __attribute((visibility("hidden"))); -#define g_unix_mount_point_get_device_path IA__g_unix_mount_point_get_device_path - -extern __typeof (g_unix_mount_point_get_fs_type) IA__g_unix_mount_point_get_fs_type __attribute((visibility("hidden"))); -#define g_unix_mount_point_get_fs_type IA__g_unix_mount_point_get_fs_type - -extern __typeof (g_unix_mount_point_is_readonly) IA__g_unix_mount_point_is_readonly __attribute((visibility("hidden"))); -#define g_unix_mount_point_is_readonly IA__g_unix_mount_point_is_readonly - -extern __typeof (g_unix_mount_point_is_user_mountable) IA__g_unix_mount_point_is_user_mountable __attribute((visibility("hidden"))); -#define g_unix_mount_point_is_user_mountable IA__g_unix_mount_point_is_user_mountable - -extern __typeof (g_unix_mount_point_is_loopback) IA__g_unix_mount_point_is_loopback __attribute((visibility("hidden"))); -#define g_unix_mount_point_is_loopback IA__g_unix_mount_point_is_loopback - -extern __typeof (g_unix_mount_point_guess_can_eject) IA__g_unix_mount_point_guess_can_eject __attribute((visibility("hidden"))); -#define g_unix_mount_point_guess_can_eject IA__g_unix_mount_point_guess_can_eject - -extern __typeof (g_unix_mount_point_guess_name) IA__g_unix_mount_point_guess_name __attribute((visibility("hidden"))); -#define g_unix_mount_point_guess_name IA__g_unix_mount_point_guess_name - -extern __typeof (g_unix_mount_point_guess_icon) IA__g_unix_mount_point_guess_icon __attribute((visibility("hidden"))); -#define g_unix_mount_point_guess_icon IA__g_unix_mount_point_guess_icon - -extern __typeof (g_unix_mount_points_get) IA__g_unix_mount_points_get __attribute((visibility("hidden"))); -#define g_unix_mount_points_get IA__g_unix_mount_points_get - -extern __typeof (g_unix_mounts_get) IA__g_unix_mounts_get __attribute((visibility("hidden"))); -#define g_unix_mounts_get IA__g_unix_mounts_get - -extern __typeof (g_unix_mount_at) IA__g_unix_mount_at __attribute((visibility("hidden"))); -#define g_unix_mount_at IA__g_unix_mount_at - -extern __typeof (g_unix_mounts_changed_since) IA__g_unix_mounts_changed_since __attribute((visibility("hidden"))); -#define g_unix_mounts_changed_since IA__g_unix_mounts_changed_since - -extern __typeof (g_unix_mount_points_changed_since) IA__g_unix_mount_points_changed_since __attribute((visibility("hidden"))); -#define g_unix_mount_points_changed_since IA__g_unix_mount_points_changed_since - -extern __typeof (g_unix_mount_monitor_get_type) IA__g_unix_mount_monitor_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_unix_mount_monitor_get_type IA__g_unix_mount_monitor_get_type - -extern __typeof (g_unix_mount_monitor_new) IA__g_unix_mount_monitor_new __attribute((visibility("hidden"))); -#define g_unix_mount_monitor_new IA__g_unix_mount_monitor_new - -extern __typeof (g_unix_mount_monitor_set_rate_limit) IA__g_unix_mount_monitor_set_rate_limit __attribute((visibility("hidden"))); -#define g_unix_mount_monitor_set_rate_limit IA__g_unix_mount_monitor_set_rate_limit - -extern __typeof (g_unix_is_mount_path_system_internal) IA__g_unix_is_mount_path_system_internal __attribute((visibility("hidden"))); -#define g_unix_is_mount_path_system_internal IA__g_unix_is_mount_path_system_internal - -#endif /* G_OS_UNIX */ -#endif -#endif -#if IN_HEADER(__G_UNIX_INPUT_STREAM_H__) -#if IN_FILE(__G_UNIX_INPUT_STREAM_C__) -#ifdef G_OS_UNIX -extern __typeof (g_unix_input_stream_get_type) IA__g_unix_input_stream_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_unix_input_stream_get_type IA__g_unix_input_stream_get_type - -extern __typeof (g_unix_input_stream_new) IA__g_unix_input_stream_new __attribute((visibility("hidden"))); -#define g_unix_input_stream_new IA__g_unix_input_stream_new - -extern __typeof (g_unix_input_stream_set_close_fd) IA__g_unix_input_stream_set_close_fd __attribute((visibility("hidden"))); -#define g_unix_input_stream_set_close_fd IA__g_unix_input_stream_set_close_fd - -extern __typeof (g_unix_input_stream_get_close_fd) IA__g_unix_input_stream_get_close_fd __attribute((visibility("hidden"))); -#define g_unix_input_stream_get_close_fd IA__g_unix_input_stream_get_close_fd - -extern __typeof (g_unix_input_stream_get_fd) IA__g_unix_input_stream_get_fd __attribute((visibility("hidden"))); -#define g_unix_input_stream_get_fd IA__g_unix_input_stream_get_fd - -#endif /* G_OS_UNIX */ -#endif -#endif -#if IN_HEADER(__G_UNIX_OUTPUT_STREAM_H__) -#if IN_FILE(__G_UNIX_OUTPUT_STREAM_C__) -#ifdef G_OS_UNIX -extern __typeof (g_unix_output_stream_get_type) IA__g_unix_output_stream_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_unix_output_stream_get_type IA__g_unix_output_stream_get_type - -extern __typeof (g_unix_output_stream_new) IA__g_unix_output_stream_new __attribute((visibility("hidden"))); -#define g_unix_output_stream_new IA__g_unix_output_stream_new - -extern __typeof (g_unix_output_stream_set_close_fd) IA__g_unix_output_stream_set_close_fd __attribute((visibility("hidden"))); -#define g_unix_output_stream_set_close_fd IA__g_unix_output_stream_set_close_fd - -extern __typeof (g_unix_output_stream_get_close_fd) IA__g_unix_output_stream_get_close_fd __attribute((visibility("hidden"))); -#define g_unix_output_stream_get_close_fd IA__g_unix_output_stream_get_close_fd - -extern __typeof (g_unix_output_stream_get_fd) IA__g_unix_output_stream_get_fd __attribute((visibility("hidden"))); -#define g_unix_output_stream_get_fd IA__g_unix_output_stream_get_fd - -#endif /* G_OS_UNIX */ -#endif -#endif -#if IN_HEADER(__G_MOUNT_H__) -#if IN_FILE(__G_MOUNT_C__) -extern __typeof (g_mount_get_type) IA__g_mount_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_mount_get_type IA__g_mount_get_type - -extern __typeof (g_mount_get_root) IA__g_mount_get_root __attribute((visibility("hidden"))); -#define g_mount_get_root IA__g_mount_get_root - -extern __typeof (g_mount_get_name) IA__g_mount_get_name __attribute((visibility("hidden"))); -#define g_mount_get_name IA__g_mount_get_name - -extern __typeof (g_mount_get_icon) IA__g_mount_get_icon __attribute((visibility("hidden"))); -#define g_mount_get_icon IA__g_mount_get_icon - -extern __typeof (g_mount_get_uuid) IA__g_mount_get_uuid __attribute((visibility("hidden"))); -#define g_mount_get_uuid IA__g_mount_get_uuid - -extern __typeof (g_mount_get_volume) IA__g_mount_get_volume __attribute((visibility("hidden"))); -#define g_mount_get_volume IA__g_mount_get_volume - -extern __typeof (g_mount_get_drive) IA__g_mount_get_drive __attribute((visibility("hidden"))); -#define g_mount_get_drive IA__g_mount_get_drive - -extern __typeof (g_mount_can_unmount) IA__g_mount_can_unmount __attribute((visibility("hidden"))); -#define g_mount_can_unmount IA__g_mount_can_unmount - -extern __typeof (g_mount_can_eject) IA__g_mount_can_eject __attribute((visibility("hidden"))); -#define g_mount_can_eject IA__g_mount_can_eject - -extern __typeof (g_mount_unmount_with_operation) IA__g_mount_unmount_with_operation __attribute((visibility("hidden"))); -#define g_mount_unmount_with_operation IA__g_mount_unmount_with_operation - -extern __typeof (g_mount_unmount_with_operation_finish) IA__g_mount_unmount_with_operation_finish __attribute((visibility("hidden"))); -#define g_mount_unmount_with_operation_finish IA__g_mount_unmount_with_operation_finish - -extern __typeof (g_mount_eject_with_operation) IA__g_mount_eject_with_operation __attribute((visibility("hidden"))); -#define g_mount_eject_with_operation IA__g_mount_eject_with_operation - -extern __typeof (g_mount_eject_with_operation_finish) IA__g_mount_eject_with_operation_finish __attribute((visibility("hidden"))); -#define g_mount_eject_with_operation_finish IA__g_mount_eject_with_operation_finish - -extern __typeof (g_mount_get_default_location) IA__g_mount_get_default_location __attribute((visibility("hidden"))); -#define g_mount_get_default_location IA__g_mount_get_default_location - -extern __typeof (g_mount_remount) IA__g_mount_remount __attribute((visibility("hidden"))); -#define g_mount_remount IA__g_mount_remount - -extern __typeof (g_mount_remount_finish) IA__g_mount_remount_finish __attribute((visibility("hidden"))); -#define g_mount_remount_finish IA__g_mount_remount_finish - -extern __typeof (g_mount_guess_content_type) IA__g_mount_guess_content_type __attribute((visibility("hidden"))); -#define g_mount_guess_content_type IA__g_mount_guess_content_type - -extern __typeof (g_mount_guess_content_type_finish) IA__g_mount_guess_content_type_finish __attribute((visibility("hidden"))); -#define g_mount_guess_content_type_finish IA__g_mount_guess_content_type_finish - -extern __typeof (g_mount_guess_content_type_sync) IA__g_mount_guess_content_type_sync __attribute((visibility("hidden"))); -#define g_mount_guess_content_type_sync IA__g_mount_guess_content_type_sync - -extern __typeof (g_mount_is_shadowed) IA__g_mount_is_shadowed __attribute((visibility("hidden"))); -#define g_mount_is_shadowed IA__g_mount_is_shadowed - -extern __typeof (g_mount_shadow) IA__g_mount_shadow __attribute((visibility("hidden"))); -#define g_mount_shadow IA__g_mount_shadow - -extern __typeof (g_mount_unshadow) IA__g_mount_unshadow __attribute((visibility("hidden"))); -#define g_mount_unshadow IA__g_mount_unshadow - -#ifndef G_DISABLE_DEPRECATED -extern __typeof (g_mount_unmount) IA__g_mount_unmount __attribute((visibility("hidden"))); -#define g_mount_unmount IA__g_mount_unmount - -extern __typeof (g_mount_unmount_finish) IA__g_mount_unmount_finish __attribute((visibility("hidden"))); -#define g_mount_unmount_finish IA__g_mount_unmount_finish - -extern __typeof (g_mount_eject) IA__g_mount_eject __attribute((visibility("hidden"))); -#define g_mount_eject IA__g_mount_eject - -extern __typeof (g_mount_eject_finish) IA__g_mount_eject_finish __attribute((visibility("hidden"))); -#define g_mount_eject_finish IA__g_mount_eject_finish - -#endif -#endif -#endif -#if IN_HEADER(__G_VOLUME_H__) -#if IN_FILE(__G_VOLUME_C__) -extern __typeof (g_volume_get_type) IA__g_volume_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_volume_get_type IA__g_volume_get_type - -extern __typeof (g_volume_get_name) IA__g_volume_get_name __attribute((visibility("hidden"))); -#define g_volume_get_name IA__g_volume_get_name - -extern __typeof (g_volume_get_icon) IA__g_volume_get_icon __attribute((visibility("hidden"))); -#define g_volume_get_icon IA__g_volume_get_icon - -extern __typeof (g_volume_get_uuid) IA__g_volume_get_uuid __attribute((visibility("hidden"))); -#define g_volume_get_uuid IA__g_volume_get_uuid - -extern __typeof (g_volume_get_drive) IA__g_volume_get_drive __attribute((visibility("hidden"))); -#define g_volume_get_drive IA__g_volume_get_drive - -extern __typeof (g_volume_get_mount) IA__g_volume_get_mount __attribute((visibility("hidden"))); -#define g_volume_get_mount IA__g_volume_get_mount - -extern __typeof (g_volume_should_automount) IA__g_volume_should_automount __attribute((visibility("hidden"))); -#define g_volume_should_automount IA__g_volume_should_automount - -extern __typeof (g_volume_can_mount) IA__g_volume_can_mount __attribute((visibility("hidden"))); -#define g_volume_can_mount IA__g_volume_can_mount - -extern __typeof (g_volume_can_eject) IA__g_volume_can_eject __attribute((visibility("hidden"))); -#define g_volume_can_eject IA__g_volume_can_eject - -extern __typeof (g_volume_mount) IA__g_volume_mount __attribute((visibility("hidden"))); -#define g_volume_mount IA__g_volume_mount - -extern __typeof (g_volume_mount_finish) IA__g_volume_mount_finish __attribute((visibility("hidden"))); -#define g_volume_mount_finish IA__g_volume_mount_finish - -extern __typeof (g_volume_eject_with_operation) IA__g_volume_eject_with_operation __attribute((visibility("hidden"))); -#define g_volume_eject_with_operation IA__g_volume_eject_with_operation - -extern __typeof (g_volume_eject_with_operation_finish) IA__g_volume_eject_with_operation_finish __attribute((visibility("hidden"))); -#define g_volume_eject_with_operation_finish IA__g_volume_eject_with_operation_finish - -extern __typeof (g_volume_get_identifier) IA__g_volume_get_identifier __attribute((visibility("hidden"))); -#define g_volume_get_identifier IA__g_volume_get_identifier - -extern __typeof (g_volume_enumerate_identifiers) IA__g_volume_enumerate_identifiers __attribute((visibility("hidden"))); -#define g_volume_enumerate_identifiers IA__g_volume_enumerate_identifiers - -extern __typeof (g_volume_get_activation_root) IA__g_volume_get_activation_root __attribute((visibility("hidden"))); -#define g_volume_get_activation_root IA__g_volume_get_activation_root - -#ifndef G_DISABLE_DEPRECATED -extern __typeof (g_volume_eject) IA__g_volume_eject __attribute((visibility("hidden"))); -#define g_volume_eject IA__g_volume_eject - -extern __typeof (g_volume_eject_finish) IA__g_volume_eject_finish __attribute((visibility("hidden"))); -#define g_volume_eject_finish IA__g_volume_eject_finish - -#endif -#endif -#endif -#if IN_HEADER(__G_VOLUME_MONITOR_H__) -#if IN_FILE(__G_VOLUME_MONITOR_C__) -extern __typeof (g_volume_monitor_get_type) IA__g_volume_monitor_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_volume_monitor_get_type IA__g_volume_monitor_get_type - -extern __typeof (g_volume_monitor_get_connected_drives) IA__g_volume_monitor_get_connected_drives __attribute((visibility("hidden"))); -#define g_volume_monitor_get_connected_drives IA__g_volume_monitor_get_connected_drives - -extern __typeof (g_volume_monitor_get_volume_for_uuid) IA__g_volume_monitor_get_volume_for_uuid __attribute((visibility("hidden"))); -#define g_volume_monitor_get_volume_for_uuid IA__g_volume_monitor_get_volume_for_uuid - -extern __typeof (g_volume_monitor_get_volumes) IA__g_volume_monitor_get_volumes __attribute((visibility("hidden"))); -#define g_volume_monitor_get_volumes IA__g_volume_monitor_get_volumes - -extern __typeof (g_volume_monitor_get_mounts) IA__g_volume_monitor_get_mounts __attribute((visibility("hidden"))); -#define g_volume_monitor_get_mounts IA__g_volume_monitor_get_mounts - -extern __typeof (g_volume_monitor_get_mount_for_uuid) IA__g_volume_monitor_get_mount_for_uuid __attribute((visibility("hidden"))); -#define g_volume_monitor_get_mount_for_uuid IA__g_volume_monitor_get_mount_for_uuid - -#endif -#if IN_FILE(__G_UNION_VOLUME_MONITOR_C__) -extern __typeof (g_volume_monitor_get) IA__g_volume_monitor_get __attribute((visibility("hidden"))); -#define g_volume_monitor_get IA__g_volume_monitor_get - -#ifndef G_DISABLE_DEPRECATED -extern __typeof (g_volume_monitor_adopt_orphan_mount) IA__g_volume_monitor_adopt_orphan_mount __attribute((visibility("hidden"))); -#define g_volume_monitor_adopt_orphan_mount IA__g_volume_monitor_adopt_orphan_mount - -#endif -#endif -#endif -#if IN_HEADER(__G_NATIVE_VOLUME_MONITOR_H__) -#if IN_FILE(__G_NATIVE_VOLUME_MONITOR_C__) -extern __typeof (g_native_volume_monitor_get_type) IA__g_native_volume_monitor_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_native_volume_monitor_get_type IA__g_native_volume_monitor_get_type - -#endif -#endif -#if IN_HEADER(__G_LOCAL_FILE_MONITOR_H__) -#if IN_FILE(__G_LOCAL_FILE_MONITOR_C__) -#ifdef G_OS_UNIX -extern __typeof (g_local_file_monitor_get_type) IA__g_local_file_monitor_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_local_file_monitor_get_type IA__g_local_file_monitor_get_type - -#endif -#endif -#endif -#if IN_HEADER(__G_LOCAL_DIRECTORY_MONITOR_H__) -#if IN_FILE(__G_LOCAL_DIRECTORY_MONITOR_C__) -#ifdef G_OS_UNIX -extern __typeof (g_local_directory_monitor_get_type) IA__g_local_directory_monitor_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_local_directory_monitor_get_type IA__g_local_directory_monitor_get_type - -#endif -#endif -#endif -#if IN_HEADER(__GIO_ENUM_TYPES_H__) -#if IN_FILE(__GIO_ENUM_TYPES_C__) -extern __typeof (g_mount_unmount_flags_get_type) IA__g_mount_unmount_flags_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_mount_unmount_flags_get_type IA__g_mount_unmount_flags_get_type - -extern __typeof (g_app_info_create_flags_get_type) IA__g_app_info_create_flags_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_app_info_create_flags_get_type IA__g_app_info_create_flags_get_type - -extern __typeof (g_converter_flags_get_type) IA__g_converter_flags_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_converter_flags_get_type IA__g_converter_flags_get_type - -extern __typeof (g_converter_result_get_type) IA__g_converter_result_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_converter_result_get_type IA__g_converter_result_get_type - -extern __typeof (g_data_stream_byte_order_get_type) IA__g_data_stream_byte_order_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_data_stream_byte_order_get_type IA__g_data_stream_byte_order_get_type - -extern __typeof (g_data_stream_newline_type_get_type) IA__g_data_stream_newline_type_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_data_stream_newline_type_get_type IA__g_data_stream_newline_type_get_type - -extern __typeof (g_file_attribute_info_flags_get_type) IA__g_file_attribute_info_flags_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_file_attribute_info_flags_get_type IA__g_file_attribute_info_flags_get_type - -extern __typeof (g_file_attribute_status_get_type) IA__g_file_attribute_status_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_file_attribute_status_get_type IA__g_file_attribute_status_get_type - -extern __typeof (g_file_attribute_type_get_type) IA__g_file_attribute_type_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_file_attribute_type_get_type IA__g_file_attribute_type_get_type - -extern __typeof (g_file_copy_flags_get_type) IA__g_file_copy_flags_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_file_copy_flags_get_type IA__g_file_copy_flags_get_type - -extern __typeof (g_file_create_flags_get_type) IA__g_file_create_flags_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_file_create_flags_get_type IA__g_file_create_flags_get_type - -extern __typeof (g_file_monitor_event_get_type) IA__g_file_monitor_event_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_file_monitor_event_get_type IA__g_file_monitor_event_get_type - -extern __typeof (g_file_monitor_flags_get_type) IA__g_file_monitor_flags_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_file_monitor_flags_get_type IA__g_file_monitor_flags_get_type - -extern __typeof (g_file_query_info_flags_get_type) IA__g_file_query_info_flags_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_file_query_info_flags_get_type IA__g_file_query_info_flags_get_type - -extern __typeof (g_file_type_get_type) IA__g_file_type_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_file_type_get_type IA__g_file_type_get_type - -extern __typeof (g_filesystem_preview_type_get_type) IA__g_filesystem_preview_type_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_filesystem_preview_type_get_type IA__g_filesystem_preview_type_get_type - -extern __typeof (g_io_error_enum_get_type) IA__g_io_error_enum_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_io_error_enum_get_type IA__g_io_error_enum_get_type - -extern __typeof (g_mount_mount_flags_get_type) IA__g_mount_mount_flags_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_mount_mount_flags_get_type IA__g_mount_mount_flags_get_type - -extern __typeof (g_mount_operation_result_get_type) IA__g_mount_operation_result_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_mount_operation_result_get_type IA__g_mount_operation_result_get_type - -extern __typeof (g_drive_start_flags_get_type) IA__g_drive_start_flags_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_drive_start_flags_get_type IA__g_drive_start_flags_get_type - -extern __typeof (g_drive_start_stop_type_get_type) IA__g_drive_start_stop_type_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_drive_start_stop_type_get_type IA__g_drive_start_stop_type_get_type - -extern __typeof (g_output_stream_splice_flags_get_type) IA__g_output_stream_splice_flags_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_output_stream_splice_flags_get_type IA__g_output_stream_splice_flags_get_type - -extern __typeof (g_ask_password_flags_get_type) IA__g_ask_password_flags_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_ask_password_flags_get_type IA__g_ask_password_flags_get_type - -extern __typeof (g_password_save_get_type) IA__g_password_save_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_password_save_get_type IA__g_password_save_get_type - -extern __typeof (g_emblem_origin_get_type) IA__g_emblem_origin_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_emblem_origin_get_type IA__g_emblem_origin_get_type - -extern __typeof (g_socket_family_get_type) IA__g_socket_family_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_socket_family_get_type IA__g_socket_family_get_type - -extern __typeof (g_socket_type_get_type) IA__g_socket_type_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_socket_type_get_type IA__g_socket_type_get_type - -extern __typeof (g_socket_protocol_get_type) IA__g_socket_protocol_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_socket_protocol_get_type IA__g_socket_protocol_get_type - -extern __typeof (g_socket_msg_flags_get_type) IA__g_socket_msg_flags_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_socket_msg_flags_get_type IA__g_socket_msg_flags_get_type - -extern __typeof (g_resolver_error_get_type) IA__g_resolver_error_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_resolver_error_get_type IA__g_resolver_error_get_type - -extern __typeof (g_zlib_compressor_format_get_type) IA__g_zlib_compressor_format_get_type __attribute((visibility("hidden"))); -#define g_zlib_compressor_format_get_type IA__g_zlib_compressor_format_get_type - -#endif -#endif -#if IN_HEADER(__G_EMBLEMED_ICON_H__) -#if IN_FILE(__G_EMBLEMED_ICON_C__) -extern __typeof (g_emblemed_icon_get_type) IA__g_emblemed_icon_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_emblemed_icon_get_type IA__g_emblemed_icon_get_type - -extern __typeof (g_emblemed_icon_new) IA__g_emblemed_icon_new __attribute((visibility("hidden"))); -#define g_emblemed_icon_new IA__g_emblemed_icon_new - -extern __typeof (g_emblemed_icon_get_icon) IA__g_emblemed_icon_get_icon __attribute((visibility("hidden"))); -#define g_emblemed_icon_get_icon IA__g_emblemed_icon_get_icon - -extern __typeof (g_emblemed_icon_get_emblems) IA__g_emblemed_icon_get_emblems __attribute((visibility("hidden"))); -#define g_emblemed_icon_get_emblems IA__g_emblemed_icon_get_emblems - -extern __typeof (g_emblemed_icon_add_emblem) IA__g_emblemed_icon_add_emblem __attribute((visibility("hidden"))); -#define g_emblemed_icon_add_emblem IA__g_emblemed_icon_add_emblem - -#endif -#endif -#if IN_HEADER(__G_EMBLEM_H__) -#if IN_FILE(__G_EMBLEM_C__) -extern __typeof (g_emblem_get_type) IA__g_emblem_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_emblem_get_type IA__g_emblem_get_type - -extern __typeof (g_emblem_new) IA__g_emblem_new __attribute((visibility("hidden"))); -#define g_emblem_new IA__g_emblem_new - -extern __typeof (g_emblem_new_with_origin) IA__g_emblem_new_with_origin __attribute((visibility("hidden"))); -#define g_emblem_new_with_origin IA__g_emblem_new_with_origin - -extern __typeof (g_emblem_get_icon) IA__g_emblem_get_icon __attribute((visibility("hidden"))); -#define g_emblem_get_icon IA__g_emblem_get_icon - -extern __typeof (g_emblem_get_origin) IA__g_emblem_get_origin __attribute((visibility("hidden"))); -#define g_emblem_get_origin IA__g_emblem_get_origin - -#endif -#endif -#if IN_HEADER(__G_INET_ADDRESS_H__) -#if IN_FILE(__G_INET_ADDRESS_C__) -extern __typeof (g_inet_address_new_from_string) IA__g_inet_address_new_from_string __attribute((visibility("hidden"))); -#define g_inet_address_new_from_string IA__g_inet_address_new_from_string - -extern __typeof (g_inet_address_new_from_bytes) IA__g_inet_address_new_from_bytes __attribute((visibility("hidden"))); -#define g_inet_address_new_from_bytes IA__g_inet_address_new_from_bytes - -extern __typeof (g_inet_address_new_any) IA__g_inet_address_new_any __attribute((visibility("hidden"))); -#define g_inet_address_new_any IA__g_inet_address_new_any - -extern __typeof (g_inet_address_new_loopback) IA__g_inet_address_new_loopback __attribute((visibility("hidden"))); -#define g_inet_address_new_loopback IA__g_inet_address_new_loopback - -extern __typeof (g_inet_address_get_family) IA__g_inet_address_get_family __attribute((visibility("hidden"))); -#define g_inet_address_get_family IA__g_inet_address_get_family - -extern __typeof (g_inet_address_get_type) IA__g_inet_address_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_inet_address_get_type IA__g_inet_address_get_type - -extern __typeof (g_inet_address_get_is_any) IA__g_inet_address_get_is_any __attribute((visibility("hidden"))); -#define g_inet_address_get_is_any IA__g_inet_address_get_is_any - -extern __typeof (g_inet_address_get_is_link_local) IA__g_inet_address_get_is_link_local __attribute((visibility("hidden"))); -#define g_inet_address_get_is_link_local IA__g_inet_address_get_is_link_local - -extern __typeof (g_inet_address_get_is_loopback) IA__g_inet_address_get_is_loopback __attribute((visibility("hidden"))); -#define g_inet_address_get_is_loopback IA__g_inet_address_get_is_loopback - -extern __typeof (g_inet_address_get_is_mc_global) IA__g_inet_address_get_is_mc_global __attribute((visibility("hidden"))); -#define g_inet_address_get_is_mc_global IA__g_inet_address_get_is_mc_global - -extern __typeof (g_inet_address_get_is_mc_link_local) IA__g_inet_address_get_is_mc_link_local __attribute((visibility("hidden"))); -#define g_inet_address_get_is_mc_link_local IA__g_inet_address_get_is_mc_link_local - -extern __typeof (g_inet_address_get_is_mc_node_local) IA__g_inet_address_get_is_mc_node_local __attribute((visibility("hidden"))); -#define g_inet_address_get_is_mc_node_local IA__g_inet_address_get_is_mc_node_local - -extern __typeof (g_inet_address_get_is_mc_org_local) IA__g_inet_address_get_is_mc_org_local __attribute((visibility("hidden"))); -#define g_inet_address_get_is_mc_org_local IA__g_inet_address_get_is_mc_org_local - -extern __typeof (g_inet_address_get_is_mc_site_local) IA__g_inet_address_get_is_mc_site_local __attribute((visibility("hidden"))); -#define g_inet_address_get_is_mc_site_local IA__g_inet_address_get_is_mc_site_local - -extern __typeof (g_inet_address_get_is_multicast) IA__g_inet_address_get_is_multicast __attribute((visibility("hidden"))); -#define g_inet_address_get_is_multicast IA__g_inet_address_get_is_multicast - -extern __typeof (g_inet_address_get_is_site_local) IA__g_inet_address_get_is_site_local __attribute((visibility("hidden"))); -#define g_inet_address_get_is_site_local IA__g_inet_address_get_is_site_local - -extern __typeof (g_inet_address_to_bytes) IA__g_inet_address_to_bytes __attribute((visibility("hidden"))); -#define g_inet_address_to_bytes IA__g_inet_address_to_bytes - -extern __typeof (g_inet_address_get_native_size) IA__g_inet_address_get_native_size __attribute((visibility("hidden"))); -#define g_inet_address_get_native_size IA__g_inet_address_get_native_size - -extern __typeof (g_inet_address_to_string) IA__g_inet_address_to_string __attribute((visibility("hidden"))); -#define g_inet_address_to_string IA__g_inet_address_to_string - -#endif -#endif -#if IN_HEADER(__G_INET_SOCKET_ADDRESS_H__) -#if IN_FILE(__G_INET_SOCKET_ADDRESS_C__) -extern __typeof (g_inet_socket_address_get_address) IA__g_inet_socket_address_get_address __attribute((visibility("hidden"))); -#define g_inet_socket_address_get_address IA__g_inet_socket_address_get_address - -extern __typeof (g_inet_socket_address_get_port) IA__g_inet_socket_address_get_port __attribute((visibility("hidden"))); -#define g_inet_socket_address_get_port IA__g_inet_socket_address_get_port - -extern __typeof (g_inet_socket_address_get_type) IA__g_inet_socket_address_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_inet_socket_address_get_type IA__g_inet_socket_address_get_type - -extern __typeof (g_inet_socket_address_new) IA__g_inet_socket_address_new __attribute((visibility("hidden"))); -#define g_inet_socket_address_new IA__g_inet_socket_address_new - -#endif -#endif -#if IN_HEADER(__G_UNIX_SOCKET_ADDRESS_H__) -#if IN_FILE(__G_UNIX_SOCKET_ADDRESS_C__) -#ifdef G_OS_UNIX -extern __typeof (g_unix_socket_address_get_type) IA__g_unix_socket_address_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_unix_socket_address_get_type IA__g_unix_socket_address_get_type - -extern __typeof (g_unix_socket_address_new) IA__g_unix_socket_address_new __attribute((visibility("hidden"))); -#define g_unix_socket_address_new IA__g_unix_socket_address_new - -extern __typeof (g_unix_socket_address_new_abstract) IA__g_unix_socket_address_new_abstract __attribute((visibility("hidden"))); -#define g_unix_socket_address_new_abstract IA__g_unix_socket_address_new_abstract - -extern __typeof (g_unix_socket_address_abstract_names_supported) IA__g_unix_socket_address_abstract_names_supported __attribute((visibility("hidden"))); -#define g_unix_socket_address_abstract_names_supported IA__g_unix_socket_address_abstract_names_supported - -extern __typeof (g_unix_socket_address_get_is_abstract) IA__g_unix_socket_address_get_is_abstract __attribute((visibility("hidden"))); -#define g_unix_socket_address_get_is_abstract IA__g_unix_socket_address_get_is_abstract - -extern __typeof (g_unix_socket_address_get_path) IA__g_unix_socket_address_get_path __attribute((visibility("hidden"))); -#define g_unix_socket_address_get_path IA__g_unix_socket_address_get_path - -extern __typeof (g_unix_socket_address_get_path_len) IA__g_unix_socket_address_get_path_len __attribute((visibility("hidden"))); -#define g_unix_socket_address_get_path_len IA__g_unix_socket_address_get_path_len - -#endif -#endif -#endif -#if IN_HEADER(__G_SOCKET_ADDRESS_H__) -#if IN_FILE(__G_SOCKET_ADDRESS_C__) -extern __typeof (g_socket_address_new_from_native) IA__g_socket_address_new_from_native __attribute((visibility("hidden"))); -#define g_socket_address_new_from_native IA__g_socket_address_new_from_native - -extern __typeof (g_socket_address_get_type) IA__g_socket_address_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_socket_address_get_type IA__g_socket_address_get_type - -extern __typeof (g_socket_address_get_family) IA__g_socket_address_get_family __attribute((visibility("hidden"))); -#define g_socket_address_get_family IA__g_socket_address_get_family - -extern __typeof (g_socket_address_get_native_size) IA__g_socket_address_get_native_size __attribute((visibility("hidden"))); -#define g_socket_address_get_native_size IA__g_socket_address_get_native_size - -extern __typeof (g_socket_address_to_native) IA__g_socket_address_to_native __attribute((visibility("hidden"))); -#define g_socket_address_to_native IA__g_socket_address_to_native - -#endif -#endif -#if IN_HEADER(__G_RESOLVER_H__) -#if IN_FILE(__G_RESOLVER_C__) -extern __typeof (g_resolver_error_quark) IA__g_resolver_error_quark __attribute((visibility("hidden"))); -#define g_resolver_error_quark IA__g_resolver_error_quark - -extern __typeof (g_resolver_free_addresses) IA__g_resolver_free_addresses __attribute((visibility("hidden"))); -#define g_resolver_free_addresses IA__g_resolver_free_addresses - -extern __typeof (g_resolver_free_targets) IA__g_resolver_free_targets __attribute((visibility("hidden"))); -#define g_resolver_free_targets IA__g_resolver_free_targets - -extern __typeof (g_resolver_get_type) IA__g_resolver_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_resolver_get_type IA__g_resolver_get_type - -extern __typeof (g_resolver_get_default) IA__g_resolver_get_default __attribute((visibility("hidden"))); -#define g_resolver_get_default IA__g_resolver_get_default - -extern __typeof (g_resolver_set_default) IA__g_resolver_set_default __attribute((visibility("hidden"))); -#define g_resolver_set_default IA__g_resolver_set_default - -extern __typeof (g_resolver_lookup_by_name) IA__g_resolver_lookup_by_name __attribute((visibility("hidden"))); -#define g_resolver_lookup_by_name IA__g_resolver_lookup_by_name - -extern __typeof (g_resolver_lookup_by_name_async) IA__g_resolver_lookup_by_name_async __attribute((visibility("hidden"))); -#define g_resolver_lookup_by_name_async IA__g_resolver_lookup_by_name_async - -extern __typeof (g_resolver_lookup_by_name_finish) IA__g_resolver_lookup_by_name_finish __attribute((visibility("hidden"))); -#define g_resolver_lookup_by_name_finish IA__g_resolver_lookup_by_name_finish - -extern __typeof (g_resolver_lookup_by_address) IA__g_resolver_lookup_by_address __attribute((visibility("hidden"))); -#define g_resolver_lookup_by_address IA__g_resolver_lookup_by_address - -extern __typeof (g_resolver_lookup_by_address_async) IA__g_resolver_lookup_by_address_async __attribute((visibility("hidden"))); -#define g_resolver_lookup_by_address_async IA__g_resolver_lookup_by_address_async - -extern __typeof (g_resolver_lookup_by_address_finish) IA__g_resolver_lookup_by_address_finish __attribute((visibility("hidden"))); -#define g_resolver_lookup_by_address_finish IA__g_resolver_lookup_by_address_finish - -extern __typeof (g_resolver_lookup_service) IA__g_resolver_lookup_service __attribute((visibility("hidden"))); -#define g_resolver_lookup_service IA__g_resolver_lookup_service - -extern __typeof (g_resolver_lookup_service_async) IA__g_resolver_lookup_service_async __attribute((visibility("hidden"))); -#define g_resolver_lookup_service_async IA__g_resolver_lookup_service_async - -extern __typeof (g_resolver_lookup_service_finish) IA__g_resolver_lookup_service_finish __attribute((visibility("hidden"))); -#define g_resolver_lookup_service_finish IA__g_resolver_lookup_service_finish - -#endif -#endif -#if IN_HEADER(__G_THREADED_RESOLVER_H__) -#if IN_FILE(__G_THREADED_RESOLVER_C__) -extern __typeof (g_threaded_resolver_get_type) IA__g_threaded_resolver_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_threaded_resolver_get_type IA__g_threaded_resolver_get_type - -#endif -#endif -#if IN_HEADER(__G_UNIX_RESOLVER_H__) -#if IN_FILE(__G_UNIX_RESOLVER_C__) -#ifdef G_OS_UNIX -extern __typeof (g_unix_resolver_get_type) IA__g_unix_resolver_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_unix_resolver_get_type IA__g_unix_resolver_get_type - -#endif -#endif -#endif -#if IN_HEADER(__G_WIN32_RESOLVER_H__) -#if IN_FILE(__G_WIN32_RESOLVER_C__) -#ifdef G_OS_WIN32 -extern __typeof (g_win32_resolver_get_type) IA__g_win32_resolver_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_win32_resolver_get_type IA__g_win32_resolver_get_type - -#endif -#endif -#endif -#if IN_HEADER(__G_SRV_TARGET_H__) -#if IN_FILE(__G_SRV_TARGET_C__) -extern __typeof (g_srv_target_get_type) IA__g_srv_target_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_srv_target_get_type IA__g_srv_target_get_type - -extern __typeof (g_srv_target_new) IA__g_srv_target_new __attribute((visibility("hidden"))); -#define g_srv_target_new IA__g_srv_target_new - -extern __typeof (g_srv_target_copy) IA__g_srv_target_copy __attribute((visibility("hidden"))); -#define g_srv_target_copy IA__g_srv_target_copy - -extern __typeof (g_srv_target_free) IA__g_srv_target_free __attribute((visibility("hidden"))); -#define g_srv_target_free IA__g_srv_target_free - -extern __typeof (g_srv_target_get_hostname) IA__g_srv_target_get_hostname __attribute((visibility("hidden"))); -#define g_srv_target_get_hostname IA__g_srv_target_get_hostname - -extern __typeof (g_srv_target_get_port) IA__g_srv_target_get_port __attribute((visibility("hidden"))); -#define g_srv_target_get_port IA__g_srv_target_get_port - -extern __typeof (g_srv_target_get_priority) IA__g_srv_target_get_priority __attribute((visibility("hidden"))); -#define g_srv_target_get_priority IA__g_srv_target_get_priority - -extern __typeof (g_srv_target_get_weight) IA__g_srv_target_get_weight __attribute((visibility("hidden"))); -#define g_srv_target_get_weight IA__g_srv_target_get_weight - -extern __typeof (g_srv_target_list_sort) IA__g_srv_target_list_sort __attribute((visibility("hidden"))); -#define g_srv_target_list_sort IA__g_srv_target_list_sort - -#endif -#endif -#if IN_HEADER(__G_NETWORK_ADDRESS_H__) -#if IN_FILE(__G_NETWORK_ADDRESS_C__) -extern __typeof (g_network_address_get_type) IA__g_network_address_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_network_address_get_type IA__g_network_address_get_type - -extern __typeof (g_network_address_get_hostname) IA__g_network_address_get_hostname __attribute((visibility("hidden"))); -#define g_network_address_get_hostname IA__g_network_address_get_hostname - -extern __typeof (g_network_address_get_port) IA__g_network_address_get_port __attribute((visibility("hidden"))); -#define g_network_address_get_port IA__g_network_address_get_port - -extern __typeof (g_network_address_new) IA__g_network_address_new __attribute((visibility("hidden"))); -#define g_network_address_new IA__g_network_address_new - -extern __typeof (g_network_address_parse) IA__g_network_address_parse __attribute((visibility("hidden"))); -#define g_network_address_parse IA__g_network_address_parse - -#endif -#endif -#if IN_HEADER(__G_NETWORK_SERVICE_H__) -#if IN_FILE(__G_NETWORK_SERVICE_C__) -extern __typeof (g_network_service_get_type) IA__g_network_service_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_network_service_get_type IA__g_network_service_get_type - -extern __typeof (g_network_service_get_service) IA__g_network_service_get_service __attribute((visibility("hidden"))); -#define g_network_service_get_service IA__g_network_service_get_service - -extern __typeof (g_network_service_get_protocol) IA__g_network_service_get_protocol __attribute((visibility("hidden"))); -#define g_network_service_get_protocol IA__g_network_service_get_protocol - -extern __typeof (g_network_service_get_domain) IA__g_network_service_get_domain __attribute((visibility("hidden"))); -#define g_network_service_get_domain IA__g_network_service_get_domain - -extern __typeof (g_network_service_new) IA__g_network_service_new __attribute((visibility("hidden"))); -#define g_network_service_new IA__g_network_service_new - -#endif -#endif -#if IN_HEADER(__G_SOCKET_CONNECTABLE_H__) -#if IN_FILE(__G_SOCKET_CONNECTABLE_C__) -extern __typeof (g_socket_connectable_enumerate) IA__g_socket_connectable_enumerate __attribute((visibility("hidden"))); -#define g_socket_connectable_enumerate IA__g_socket_connectable_enumerate - -extern __typeof (g_socket_connectable_get_type) IA__g_socket_connectable_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_socket_connectable_get_type IA__g_socket_connectable_get_type - -#endif -#endif -#if IN_HEADER(__G_SOCKET_ADDRESS_ENUMERATOR_H__) -#if IN_FILE(__G_SOCKET_ADDRESS_ENUMERATOR_C__) -extern __typeof (g_socket_address_enumerator_get_type) IA__g_socket_address_enumerator_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_socket_address_enumerator_get_type IA__g_socket_address_enumerator_get_type - -extern __typeof (g_socket_address_enumerator_next) IA__g_socket_address_enumerator_next __attribute((visibility("hidden"))); -#define g_socket_address_enumerator_next IA__g_socket_address_enumerator_next - -extern __typeof (g_socket_address_enumerator_next_async) IA__g_socket_address_enumerator_next_async __attribute((visibility("hidden"))); -#define g_socket_address_enumerator_next_async IA__g_socket_address_enumerator_next_async - -extern __typeof (g_socket_address_enumerator_next_finish) IA__g_socket_address_enumerator_next_finish __attribute((visibility("hidden"))); -#define g_socket_address_enumerator_next_finish IA__g_socket_address_enumerator_next_finish - -#endif -#endif -#if IN_HEADER(__G_ASYNC_INITABLE_H__) -#if IN_FILE(__G_ASYNC_INITABLE_C__) -extern __typeof (g_async_initable_get_type) IA__g_async_initable_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_async_initable_get_type IA__g_async_initable_get_type - -extern __typeof (g_async_initable_init_async) IA__g_async_initable_init_async __attribute((visibility("hidden"))); -#define g_async_initable_init_async IA__g_async_initable_init_async - -extern __typeof (g_async_initable_init_finish) IA__g_async_initable_init_finish __attribute((visibility("hidden"))); -#define g_async_initable_init_finish IA__g_async_initable_init_finish - -extern __typeof (g_async_initable_new_async) IA__g_async_initable_new_async __attribute((visibility("hidden"))); -#define g_async_initable_new_async IA__g_async_initable_new_async - -extern __typeof (g_async_initable_new_finish) IA__g_async_initable_new_finish __attribute((visibility("hidden"))); -#define g_async_initable_new_finish IA__g_async_initable_new_finish - -extern __typeof (g_async_initable_new_valist_async) IA__g_async_initable_new_valist_async __attribute((visibility("hidden"))); -#define g_async_initable_new_valist_async IA__g_async_initable_new_valist_async - -extern __typeof (g_async_initable_newv_async) IA__g_async_initable_newv_async __attribute((visibility("hidden"))); -#define g_async_initable_newv_async IA__g_async_initable_newv_async - -#endif -#endif -#if IN_HEADER(__G_INITABLE_H__) -#if IN_FILE(__G_INITABLE_C__) -extern __typeof (g_initable_get_type) IA__g_initable_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_initable_get_type IA__g_initable_get_type - -extern __typeof (g_initable_init) IA__g_initable_init __attribute((visibility("hidden"))); -#define g_initable_init IA__g_initable_init - -extern __typeof (g_initable_new) IA__g_initable_new __attribute((visibility("hidden"))); -#define g_initable_new IA__g_initable_new - -extern __typeof (g_initable_newv) IA__g_initable_newv __attribute((visibility("hidden"))); -#define g_initable_newv IA__g_initable_newv - -extern __typeof (g_initable_new_valist) IA__g_initable_new_valist __attribute((visibility("hidden"))); -#define g_initable_new_valist IA__g_initable_new_valist - -#endif -#endif -#if IN_HEADER(__G_SOCKET_H__) -#if IN_FILE(__G_SOCKET_C__) -extern __typeof (g_socket_get_type) IA__g_socket_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_socket_get_type IA__g_socket_get_type - -extern __typeof (g_socket_accept) IA__g_socket_accept __attribute((visibility("hidden"))); -#define g_socket_accept IA__g_socket_accept - -extern __typeof (g_socket_bind) IA__g_socket_bind __attribute((visibility("hidden"))); -#define g_socket_bind IA__g_socket_bind - -extern __typeof (g_socket_check_connect_result) IA__g_socket_check_connect_result __attribute((visibility("hidden"))); -#define g_socket_check_connect_result IA__g_socket_check_connect_result - -extern __typeof (g_socket_close) IA__g_socket_close __attribute((visibility("hidden"))); -#define g_socket_close IA__g_socket_close - -extern __typeof (g_socket_shutdown) IA__g_socket_shutdown __attribute((visibility("hidden"))); -#define g_socket_shutdown IA__g_socket_shutdown - -extern __typeof (g_socket_condition_check) IA__g_socket_condition_check __attribute((visibility("hidden"))); -#define g_socket_condition_check IA__g_socket_condition_check - -extern __typeof (g_socket_condition_wait) IA__g_socket_condition_wait __attribute((visibility("hidden"))); -#define g_socket_condition_wait IA__g_socket_condition_wait - -extern __typeof (g_socket_connect) IA__g_socket_connect __attribute((visibility("hidden"))); -#define g_socket_connect IA__g_socket_connect - -extern __typeof (g_socket_create_source) IA__g_socket_create_source __attribute((visibility("hidden"))); -#define g_socket_create_source IA__g_socket_create_source - -extern __typeof (g_socket_get_blocking) IA__g_socket_get_blocking __attribute((visibility("hidden"))); -#define g_socket_get_blocking IA__g_socket_get_blocking - -extern __typeof (g_socket_get_family) IA__g_socket_get_family __attribute((visibility("hidden"))); -#define g_socket_get_family IA__g_socket_get_family - -extern __typeof (g_socket_get_fd) IA__g_socket_get_fd __attribute((visibility("hidden"))); -#define g_socket_get_fd IA__g_socket_get_fd - -extern __typeof (g_socket_get_keepalive) IA__g_socket_get_keepalive __attribute((visibility("hidden"))); -#define g_socket_get_keepalive IA__g_socket_get_keepalive - -extern __typeof (g_socket_get_listen_backlog) IA__g_socket_get_listen_backlog __attribute((visibility("hidden"))); -#define g_socket_get_listen_backlog IA__g_socket_get_listen_backlog - -extern __typeof (g_socket_get_local_address) IA__g_socket_get_local_address __attribute((visibility("hidden"))); -#define g_socket_get_local_address IA__g_socket_get_local_address - -extern __typeof (g_socket_get_protocol) IA__g_socket_get_protocol __attribute((visibility("hidden"))); -#define g_socket_get_protocol IA__g_socket_get_protocol - -extern __typeof (g_socket_get_remote_address) IA__g_socket_get_remote_address __attribute((visibility("hidden"))); -#define g_socket_get_remote_address IA__g_socket_get_remote_address - -extern __typeof (g_socket_get_socket_type) IA__g_socket_get_socket_type __attribute((visibility("hidden"))); -#define g_socket_get_socket_type IA__g_socket_get_socket_type - -extern __typeof (g_socket_is_closed) IA__g_socket_is_closed __attribute((visibility("hidden"))); -#define g_socket_is_closed IA__g_socket_is_closed - -extern __typeof (g_socket_is_connected) IA__g_socket_is_connected __attribute((visibility("hidden"))); -#define g_socket_is_connected IA__g_socket_is_connected - -extern __typeof (g_socket_listen) IA__g_socket_listen __attribute((visibility("hidden"))); -#define g_socket_listen IA__g_socket_listen - -extern __typeof (g_socket_new) IA__g_socket_new __attribute((visibility("hidden"))); -#define g_socket_new IA__g_socket_new - -extern __typeof (g_socket_new_from_fd) IA__g_socket_new_from_fd __attribute((visibility("hidden"))); -#define g_socket_new_from_fd IA__g_socket_new_from_fd - -extern __typeof (g_socket_receive) IA__g_socket_receive __attribute((visibility("hidden"))); -#define g_socket_receive IA__g_socket_receive - -extern __typeof (g_socket_receive_from) IA__g_socket_receive_from __attribute((visibility("hidden"))); -#define g_socket_receive_from IA__g_socket_receive_from - -extern __typeof (g_socket_receive_message) IA__g_socket_receive_message __attribute((visibility("hidden"))); -#define g_socket_receive_message IA__g_socket_receive_message - -extern __typeof (g_socket_send) IA__g_socket_send __attribute((visibility("hidden"))); -#define g_socket_send IA__g_socket_send - -extern __typeof (g_socket_send_message) IA__g_socket_send_message __attribute((visibility("hidden"))); -#define g_socket_send_message IA__g_socket_send_message - -extern __typeof (g_socket_send_to) IA__g_socket_send_to __attribute((visibility("hidden"))); -#define g_socket_send_to IA__g_socket_send_to - -extern __typeof (g_socket_set_blocking) IA__g_socket_set_blocking __attribute((visibility("hidden"))); -#define g_socket_set_blocking IA__g_socket_set_blocking - -extern __typeof (g_socket_set_keepalive) IA__g_socket_set_keepalive __attribute((visibility("hidden"))); -#define g_socket_set_keepalive IA__g_socket_set_keepalive - -extern __typeof (g_socket_set_listen_backlog) IA__g_socket_set_listen_backlog __attribute((visibility("hidden"))); -#define g_socket_set_listen_backlog IA__g_socket_set_listen_backlog - -extern __typeof (g_socket_speaks_ipv4) IA__g_socket_speaks_ipv4 __attribute((visibility("hidden"))); -#define g_socket_speaks_ipv4 IA__g_socket_speaks_ipv4 - -#endif -#endif -#if IN_HEADER(__G_SOCKET_CONTROL_MESSAGE_H__) -#if IN_FILE(__G_SOCKET_CONTROL_MESSAGE_C__) -extern __typeof (g_socket_control_message_get_type) IA__g_socket_control_message_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_socket_control_message_get_type IA__g_socket_control_message_get_type - -extern __typeof (g_socket_control_message_deserialize) IA__g_socket_control_message_deserialize __attribute((visibility("hidden"))); -#define g_socket_control_message_deserialize IA__g_socket_control_message_deserialize - -extern __typeof (g_socket_control_message_get_level) IA__g_socket_control_message_get_level __attribute((visibility("hidden"))); -#define g_socket_control_message_get_level IA__g_socket_control_message_get_level - -extern __typeof (g_socket_control_message_get_msg_type) IA__g_socket_control_message_get_msg_type __attribute((visibility("hidden"))); -#define g_socket_control_message_get_msg_type IA__g_socket_control_message_get_msg_type - -extern __typeof (g_socket_control_message_get_size) IA__g_socket_control_message_get_size __attribute((visibility("hidden"))); -#define g_socket_control_message_get_size IA__g_socket_control_message_get_size - -extern __typeof (g_socket_control_message_serialize) IA__g_socket_control_message_serialize __attribute((visibility("hidden"))); -#define g_socket_control_message_serialize IA__g_socket_control_message_serialize - -#endif -#endif -#if IN_HEADER(__G_SOCKET_CLIENT_H__) -#if IN_FILE(__G_SOCKET_CLIENT_C__) -extern __typeof (g_socket_client_get_type) IA__g_socket_client_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_socket_client_get_type IA__g_socket_client_get_type - -extern __typeof (g_socket_client_connect) IA__g_socket_client_connect __attribute((visibility("hidden"))); -#define g_socket_client_connect IA__g_socket_client_connect - -extern __typeof (g_socket_client_connect_async) IA__g_socket_client_connect_async __attribute((visibility("hidden"))); -#define g_socket_client_connect_async IA__g_socket_client_connect_async - -extern __typeof (g_socket_client_connect_finish) IA__g_socket_client_connect_finish __attribute((visibility("hidden"))); -#define g_socket_client_connect_finish IA__g_socket_client_connect_finish - -extern __typeof (g_socket_client_connect_to_host) IA__g_socket_client_connect_to_host __attribute((visibility("hidden"))); -#define g_socket_client_connect_to_host IA__g_socket_client_connect_to_host - -extern __typeof (g_socket_client_connect_to_host_async) IA__g_socket_client_connect_to_host_async __attribute((visibility("hidden"))); -#define g_socket_client_connect_to_host_async IA__g_socket_client_connect_to_host_async - -extern __typeof (g_socket_client_connect_to_host_finish) IA__g_socket_client_connect_to_host_finish __attribute((visibility("hidden"))); -#define g_socket_client_connect_to_host_finish IA__g_socket_client_connect_to_host_finish - -extern __typeof (g_socket_client_connect_to_service) IA__g_socket_client_connect_to_service __attribute((visibility("hidden"))); -#define g_socket_client_connect_to_service IA__g_socket_client_connect_to_service - -extern __typeof (g_socket_client_connect_to_service_async) IA__g_socket_client_connect_to_service_async __attribute((visibility("hidden"))); -#define g_socket_client_connect_to_service_async IA__g_socket_client_connect_to_service_async - -extern __typeof (g_socket_client_connect_to_service_finish) IA__g_socket_client_connect_to_service_finish __attribute((visibility("hidden"))); -#define g_socket_client_connect_to_service_finish IA__g_socket_client_connect_to_service_finish - -extern __typeof (g_socket_client_get_family) IA__g_socket_client_get_family __attribute((visibility("hidden"))); -#define g_socket_client_get_family IA__g_socket_client_get_family - -extern __typeof (g_socket_client_get_local_address) IA__g_socket_client_get_local_address __attribute((visibility("hidden"))); -#define g_socket_client_get_local_address IA__g_socket_client_get_local_address - -extern __typeof (g_socket_client_get_protocol) IA__g_socket_client_get_protocol __attribute((visibility("hidden"))); -#define g_socket_client_get_protocol IA__g_socket_client_get_protocol - -extern __typeof (g_socket_client_get_socket_type) IA__g_socket_client_get_socket_type __attribute((visibility("hidden"))); -#define g_socket_client_get_socket_type IA__g_socket_client_get_socket_type - -extern __typeof (g_socket_client_new) IA__g_socket_client_new __attribute((visibility("hidden"))); -#define g_socket_client_new IA__g_socket_client_new - -extern __typeof (g_socket_client_set_family) IA__g_socket_client_set_family __attribute((visibility("hidden"))); -#define g_socket_client_set_family IA__g_socket_client_set_family - -extern __typeof (g_socket_client_set_local_address) IA__g_socket_client_set_local_address __attribute((visibility("hidden"))); -#define g_socket_client_set_local_address IA__g_socket_client_set_local_address - -extern __typeof (g_socket_client_set_protocol) IA__g_socket_client_set_protocol __attribute((visibility("hidden"))); -#define g_socket_client_set_protocol IA__g_socket_client_set_protocol - -extern __typeof (g_socket_client_set_socket_type) IA__g_socket_client_set_socket_type __attribute((visibility("hidden"))); -#define g_socket_client_set_socket_type IA__g_socket_client_set_socket_type - -#endif -#endif -#if IN_HEADER(__G_SOCKET_CONNECTION_H__) -#if IN_FILE(__G_SOCKET_CONNECTION_C__) -extern __typeof (g_socket_connection_get_type) IA__g_socket_connection_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_socket_connection_get_type IA__g_socket_connection_get_type - -extern __typeof (g_socket_connection_factory_create_connection) IA__g_socket_connection_factory_create_connection __attribute((visibility("hidden"))); -#define g_socket_connection_factory_create_connection IA__g_socket_connection_factory_create_connection - -extern __typeof (g_socket_connection_factory_lookup_type) IA__g_socket_connection_factory_lookup_type __attribute((visibility("hidden"))); -#define g_socket_connection_factory_lookup_type IA__g_socket_connection_factory_lookup_type - -extern __typeof (g_socket_connection_factory_register_type) IA__g_socket_connection_factory_register_type __attribute((visibility("hidden"))); -#define g_socket_connection_factory_register_type IA__g_socket_connection_factory_register_type - -extern __typeof (g_socket_connection_get_local_address) IA__g_socket_connection_get_local_address __attribute((visibility("hidden"))); -#define g_socket_connection_get_local_address IA__g_socket_connection_get_local_address - -extern __typeof (g_socket_connection_get_remote_address) IA__g_socket_connection_get_remote_address __attribute((visibility("hidden"))); -#define g_socket_connection_get_remote_address IA__g_socket_connection_get_remote_address - -extern __typeof (g_socket_connection_get_socket) IA__g_socket_connection_get_socket __attribute((visibility("hidden"))); -#define g_socket_connection_get_socket IA__g_socket_connection_get_socket - -#endif -#endif -#if IN_HEADER(__G_SOCKET_LISTENER_H__) -#if IN_FILE(__G_SOCKET_LISTENER_C__) -extern __typeof (g_socket_listener_get_type) IA__g_socket_listener_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_socket_listener_get_type IA__g_socket_listener_get_type - -extern __typeof (g_socket_listener_accept) IA__g_socket_listener_accept __attribute((visibility("hidden"))); -#define g_socket_listener_accept IA__g_socket_listener_accept - -extern __typeof (g_socket_listener_accept_async) IA__g_socket_listener_accept_async __attribute((visibility("hidden"))); -#define g_socket_listener_accept_async IA__g_socket_listener_accept_async - -extern __typeof (g_socket_listener_accept_finish) IA__g_socket_listener_accept_finish __attribute((visibility("hidden"))); -#define g_socket_listener_accept_finish IA__g_socket_listener_accept_finish - -extern __typeof (g_socket_listener_accept_socket) IA__g_socket_listener_accept_socket __attribute((visibility("hidden"))); -#define g_socket_listener_accept_socket IA__g_socket_listener_accept_socket - -extern __typeof (g_socket_listener_accept_socket_async) IA__g_socket_listener_accept_socket_async __attribute((visibility("hidden"))); -#define g_socket_listener_accept_socket_async IA__g_socket_listener_accept_socket_async - -extern __typeof (g_socket_listener_accept_socket_finish) IA__g_socket_listener_accept_socket_finish __attribute((visibility("hidden"))); -#define g_socket_listener_accept_socket_finish IA__g_socket_listener_accept_socket_finish - -extern __typeof (g_socket_listener_add_address) IA__g_socket_listener_add_address __attribute((visibility("hidden"))); -#define g_socket_listener_add_address IA__g_socket_listener_add_address - -extern __typeof (g_socket_listener_add_inet_port) IA__g_socket_listener_add_inet_port __attribute((visibility("hidden"))); -#define g_socket_listener_add_inet_port IA__g_socket_listener_add_inet_port - -extern __typeof (g_socket_listener_add_any_inet_port) IA__g_socket_listener_add_any_inet_port __attribute((visibility("hidden"))); -#define g_socket_listener_add_any_inet_port IA__g_socket_listener_add_any_inet_port - -extern __typeof (g_socket_listener_add_socket) IA__g_socket_listener_add_socket __attribute((visibility("hidden"))); -#define g_socket_listener_add_socket IA__g_socket_listener_add_socket - -extern __typeof (g_socket_listener_close) IA__g_socket_listener_close __attribute((visibility("hidden"))); -#define g_socket_listener_close IA__g_socket_listener_close - -extern __typeof (g_socket_listener_new) IA__g_socket_listener_new __attribute((visibility("hidden"))); -#define g_socket_listener_new IA__g_socket_listener_new - -extern __typeof (g_socket_listener_set_backlog) IA__g_socket_listener_set_backlog __attribute((visibility("hidden"))); -#define g_socket_listener_set_backlog IA__g_socket_listener_set_backlog - -#endif -#endif -#if IN_HEADER(__G_SOCKET_SERVICE_H__) -#if IN_FILE(__G_SOCKET_SERVICE_C__) -extern __typeof (g_socket_service_get_type) IA__g_socket_service_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_socket_service_get_type IA__g_socket_service_get_type - -extern __typeof (g_socket_service_is_active) IA__g_socket_service_is_active __attribute((visibility("hidden"))); -#define g_socket_service_is_active IA__g_socket_service_is_active - -extern __typeof (g_socket_service_new) IA__g_socket_service_new __attribute((visibility("hidden"))); -#define g_socket_service_new IA__g_socket_service_new - -extern __typeof (g_socket_service_start) IA__g_socket_service_start __attribute((visibility("hidden"))); -#define g_socket_service_start IA__g_socket_service_start - -extern __typeof (g_socket_service_stop) IA__g_socket_service_stop __attribute((visibility("hidden"))); -#define g_socket_service_stop IA__g_socket_service_stop - -#endif -#endif -#if IN_HEADER(__G_THREADED_SOCKET_SERVICE_H__) -#if IN_FILE(__G_THREADED_SOCKET_SERVICE_C__) -extern __typeof (g_threaded_socket_service_get_type) IA__g_threaded_socket_service_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_threaded_socket_service_get_type IA__g_threaded_socket_service_get_type - -extern __typeof (g_threaded_socket_service_new) IA__g_threaded_socket_service_new __attribute((visibility("hidden"))); -#define g_threaded_socket_service_new IA__g_threaded_socket_service_new - -#endif -#endif -#if IN_HEADER(__G_TCP_CONNECTION_H__) -#if IN_FILE(__G_TCP_CONNECTION_C__) -extern __typeof (g_tcp_connection_get_type) IA__g_tcp_connection_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_tcp_connection_get_type IA__g_tcp_connection_get_type - -extern __typeof (g_tcp_connection_set_graceful_disconnect) IA__g_tcp_connection_set_graceful_disconnect __attribute((visibility("hidden"))); -#define g_tcp_connection_set_graceful_disconnect IA__g_tcp_connection_set_graceful_disconnect - -extern __typeof (g_tcp_connection_get_graceful_disconnect) IA__g_tcp_connection_get_graceful_disconnect __attribute((visibility("hidden"))); -#define g_tcp_connection_get_graceful_disconnect IA__g_tcp_connection_get_graceful_disconnect - -#endif -#endif -#if IN_HEADER(__G_UNIX_CONNECTION_H__) -#if IN_FILE(__G_UNIX_CONNECTION_C__) -#ifndef G_OS_WIN32 -extern __typeof (g_unix_connection_get_type) IA__g_unix_connection_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_unix_connection_get_type IA__g_unix_connection_get_type - -extern __typeof (g_unix_connection_receive_fd) IA__g_unix_connection_receive_fd __attribute((visibility("hidden"))); -#define g_unix_connection_receive_fd IA__g_unix_connection_receive_fd - -extern __typeof (g_unix_connection_send_fd) IA__g_unix_connection_send_fd __attribute((visibility("hidden"))); -#define g_unix_connection_send_fd IA__g_unix_connection_send_fd - -#endif -#endif -#endif -#if IN_HEADER(__G_UNIX_FD_MESSAGE_H__) -#if IN_FILE(__G_UNIX_FD_MESSAGE_C__) -#ifndef G_OS_WIN32 -extern __typeof (g_unix_fd_message_get_type) IA__g_unix_fd_message_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_unix_fd_message_get_type IA__g_unix_fd_message_get_type - -extern __typeof (g_unix_fd_message_append_fd) IA__g_unix_fd_message_append_fd __attribute((visibility("hidden"))); -#define g_unix_fd_message_append_fd IA__g_unix_fd_message_append_fd - -extern __typeof (g_unix_fd_message_new) IA__g_unix_fd_message_new __attribute((visibility("hidden"))); -#define g_unix_fd_message_new IA__g_unix_fd_message_new - -extern __typeof (g_unix_fd_message_steal_fds) IA__g_unix_fd_message_steal_fds __attribute((visibility("hidden"))); -#define g_unix_fd_message_steal_fds IA__g_unix_fd_message_steal_fds - -extern __typeof (g_unix_fd_message_get_fd_list) IA__g_unix_fd_message_get_fd_list __attribute((visibility("hidden"))); -#define g_unix_fd_message_get_fd_list IA__g_unix_fd_message_get_fd_list - -extern __typeof (g_unix_fd_message_new_with_fd_list) IA__g_unix_fd_message_new_with_fd_list __attribute((visibility("hidden"))); -#define g_unix_fd_message_new_with_fd_list IA__g_unix_fd_message_new_with_fd_list - -#endif -#endif -#endif -#if IN_HEADER(__G_UNIX_FD_LIST_H__) -#if IN_FILE(__G_UNIX_FD_LIST_C__) -#ifndef G_OS_WIN32 -extern __typeof (g_unix_fd_list_append) IA__g_unix_fd_list_append __attribute((visibility("hidden"))); -#define g_unix_fd_list_append IA__g_unix_fd_list_append - -extern __typeof (g_unix_fd_list_get) IA__g_unix_fd_list_get __attribute((visibility("hidden"))); -#define g_unix_fd_list_get IA__g_unix_fd_list_get - -extern __typeof (g_unix_fd_list_get_length) IA__g_unix_fd_list_get_length __attribute((visibility("hidden"))); -#define g_unix_fd_list_get_length IA__g_unix_fd_list_get_length - -extern __typeof (g_unix_fd_list_get_type) IA__g_unix_fd_list_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_unix_fd_list_get_type IA__g_unix_fd_list_get_type - -extern __typeof (g_unix_fd_list_new) IA__g_unix_fd_list_new __attribute((visibility("hidden"))); -#define g_unix_fd_list_new IA__g_unix_fd_list_new - -extern __typeof (g_unix_fd_list_new_from_array) IA__g_unix_fd_list_new_from_array __attribute((visibility("hidden"))); -#define g_unix_fd_list_new_from_array IA__g_unix_fd_list_new_from_array - -extern __typeof (g_unix_fd_list_peek_fds) IA__g_unix_fd_list_peek_fds __attribute((visibility("hidden"))); -#define g_unix_fd_list_peek_fds IA__g_unix_fd_list_peek_fds - -extern __typeof (g_unix_fd_list_steal_fds) IA__g_unix_fd_list_steal_fds __attribute((visibility("hidden"))); -#define g_unix_fd_list_steal_fds IA__g_unix_fd_list_steal_fds - -#endif -#endif -#endif -#if IN_HEADER(__G_ZLIB_COMPRESSOR_H__) -#if IN_FILE(__G_ZLIB_COMPRESSOR_C__) -extern __typeof (g_zlib_compressor_get_type) IA__g_zlib_compressor_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_zlib_compressor_get_type IA__g_zlib_compressor_get_type - -extern __typeof (g_zlib_compressor_new) IA__g_zlib_compressor_new __attribute((visibility("hidden"))); -#define g_zlib_compressor_new IA__g_zlib_compressor_new - -#endif -#endif -#if IN_HEADER(__G_ZLIB_DECOMPRESSOR_H__) -#if IN_FILE(__G_ZLIB_DECOMPRESSOR_C__) -extern __typeof (g_zlib_decompressor_get_type) IA__g_zlib_decompressor_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_zlib_decompressor_get_type IA__g_zlib_decompressor_get_type - -extern __typeof (g_zlib_decompressor_new) IA__g_zlib_decompressor_new __attribute((visibility("hidden"))); -#define g_zlib_decompressor_new IA__g_zlib_decompressor_new - -#endif -#endif -#if IN_HEADER(__G_FILE_DESCRIPTOR_BASED_H__) -#if IN_FILE(__G_FILE_DESCRIPTOR_BASED_C__) -extern __typeof (g_file_descriptor_based_get_type) IA__g_file_descriptor_based_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_file_descriptor_based_get_type IA__g_file_descriptor_based_get_type - -extern __typeof (g_file_descriptor_based_get_fd) IA__g_file_descriptor_based_get_fd __attribute((visibility("hidden"))); -#define g_file_descriptor_based_get_fd IA__g_file_descriptor_based_get_fd - -#endif -#endif - -#endif /* G_HAVE_GNUC_VISIBILITY */ -#endif /* DISABLE_VISIBILITY */ diff --git a/gio/gioaliasdef.c b/gio/gioaliasdef.c deleted file mode 100644 index 6af8b5f..0000000 --- a/gio/gioaliasdef.c +++ /dev/null @@ -1,3011 +0,0 @@ -/* Generated by makegioalias.pl */ - -#ifndef DISABLE_VISIBILITY - -#include "glib.h" - -#ifdef G_HAVE_GNUC_VISIBILITY - -#undef IN_FILE -#define IN_FILE defined - -#undef IN_HEADER -#define IN_HEADER(x) 1 - -#if IN_HEADER(__G_VFS_H__) -#if IN_FILE(__G_VFS_C__) -#undef g_vfs_get_type -extern __typeof (g_vfs_get_type) g_vfs_get_type __attribute((alias("IA__g_vfs_get_type"), visibility("default"))); - -#undef g_vfs_is_active -extern __typeof (g_vfs_is_active) g_vfs_is_active __attribute((alias("IA__g_vfs_is_active"), visibility("default"))); - -#undef g_vfs_get_file_for_path -extern __typeof (g_vfs_get_file_for_path) g_vfs_get_file_for_path __attribute((alias("IA__g_vfs_get_file_for_path"), visibility("default"))); - -#undef g_vfs_get_file_for_uri -extern __typeof (g_vfs_get_file_for_uri) g_vfs_get_file_for_uri __attribute((alias("IA__g_vfs_get_file_for_uri"), visibility("default"))); - -#undef g_vfs_get_supported_uri_schemes -extern __typeof (g_vfs_get_supported_uri_schemes) g_vfs_get_supported_uri_schemes __attribute((alias("IA__g_vfs_get_supported_uri_schemes"), visibility("default"))); - -#undef g_vfs_parse_name -extern __typeof (g_vfs_parse_name) g_vfs_parse_name __attribute((alias("IA__g_vfs_parse_name"), visibility("default"))); - -#undef g_vfs_get_default -extern __typeof (g_vfs_get_default) g_vfs_get_default __attribute((alias("IA__g_vfs_get_default"), visibility("default"))); - -#undef g_vfs_get_local -extern __typeof (g_vfs_get_local) g_vfs_get_local __attribute((alias("IA__g_vfs_get_local"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_APP_INFO_H__) -#if IN_FILE(__G_APP_INFO_C__) -#undef g_app_info_get_type -extern __typeof (g_app_info_get_type) g_app_info_get_type __attribute((alias("IA__g_app_info_get_type"), visibility("default"))); - -#undef g_app_launch_context_get_type -extern __typeof (g_app_launch_context_get_type) g_app_launch_context_get_type __attribute((alias("IA__g_app_launch_context_get_type"), visibility("default"))); - -#undef g_app_info_dup -extern __typeof (g_app_info_dup) g_app_info_dup __attribute((alias("IA__g_app_info_dup"), visibility("default"))); - -#undef g_app_info_equal -extern __typeof (g_app_info_equal) g_app_info_equal __attribute((alias("IA__g_app_info_equal"), visibility("default"))); - -#undef g_app_info_get_id -extern __typeof (g_app_info_get_id) g_app_info_get_id __attribute((alias("IA__g_app_info_get_id"), visibility("default"))); - -#undef g_app_info_get_name -extern __typeof (g_app_info_get_name) g_app_info_get_name __attribute((alias("IA__g_app_info_get_name"), visibility("default"))); - -#undef g_app_info_get_display_name -extern __typeof (g_app_info_get_display_name) g_app_info_get_display_name __attribute((alias("IA__g_app_info_get_display_name"), visibility("default"))); - -#undef g_app_info_get_description -extern __typeof (g_app_info_get_description) g_app_info_get_description __attribute((alias("IA__g_app_info_get_description"), visibility("default"))); - -#undef g_app_info_get_executable -extern __typeof (g_app_info_get_executable) g_app_info_get_executable __attribute((alias("IA__g_app_info_get_executable"), visibility("default"))); - -#undef g_app_info_get_commandline -extern __typeof (g_app_info_get_commandline) g_app_info_get_commandline __attribute((alias("IA__g_app_info_get_commandline"), visibility("default"))); - -#undef g_app_info_get_icon -extern __typeof (g_app_info_get_icon) g_app_info_get_icon __attribute((alias("IA__g_app_info_get_icon"), visibility("default"))); - -#undef g_app_info_launch -extern __typeof (g_app_info_launch) g_app_info_launch __attribute((alias("IA__g_app_info_launch"), visibility("default"))); - -#undef g_app_info_supports_uris -extern __typeof (g_app_info_supports_uris) g_app_info_supports_uris __attribute((alias("IA__g_app_info_supports_uris"), visibility("default"))); - -#undef g_app_info_supports_files -extern __typeof (g_app_info_supports_files) g_app_info_supports_files __attribute((alias("IA__g_app_info_supports_files"), visibility("default"))); - -#undef g_app_info_launch_uris -extern __typeof (g_app_info_launch_uris) g_app_info_launch_uris __attribute((alias("IA__g_app_info_launch_uris"), visibility("default"))); - -#undef g_app_info_should_show -extern __typeof (g_app_info_should_show) g_app_info_should_show __attribute((alias("IA__g_app_info_should_show"), visibility("default"))); - -#undef g_app_info_set_as_default_for_type -extern __typeof (g_app_info_set_as_default_for_type) g_app_info_set_as_default_for_type __attribute((alias("IA__g_app_info_set_as_default_for_type"), visibility("default"))); - -#undef g_app_info_set_as_default_for_extension -extern __typeof (g_app_info_set_as_default_for_extension) g_app_info_set_as_default_for_extension __attribute((alias("IA__g_app_info_set_as_default_for_extension"), visibility("default"))); - -#undef g_app_info_add_supports_type -extern __typeof (g_app_info_add_supports_type) g_app_info_add_supports_type __attribute((alias("IA__g_app_info_add_supports_type"), visibility("default"))); - -#undef g_app_info_can_remove_supports_type -extern __typeof (g_app_info_can_remove_supports_type) g_app_info_can_remove_supports_type __attribute((alias("IA__g_app_info_can_remove_supports_type"), visibility("default"))); - -#undef g_app_info_remove_supports_type -extern __typeof (g_app_info_remove_supports_type) g_app_info_remove_supports_type __attribute((alias("IA__g_app_info_remove_supports_type"), visibility("default"))); - -#undef g_app_info_launch_default_for_uri -extern __typeof (g_app_info_launch_default_for_uri) g_app_info_launch_default_for_uri __attribute((alias("IA__g_app_info_launch_default_for_uri"), visibility("default"))); - -#undef g_app_info_can_delete -extern __typeof (g_app_info_can_delete) g_app_info_can_delete __attribute((alias("IA__g_app_info_can_delete"), visibility("default"))); - -#undef g_app_info_delete -extern __typeof (g_app_info_delete) g_app_info_delete __attribute((alias("IA__g_app_info_delete"), visibility("default"))); - -#undef g_app_launch_context_new -extern __typeof (g_app_launch_context_new) g_app_launch_context_new __attribute((alias("IA__g_app_launch_context_new"), visibility("default"))); - -#undef g_app_launch_context_get_display -extern __typeof (g_app_launch_context_get_display) g_app_launch_context_get_display __attribute((alias("IA__g_app_launch_context_get_display"), visibility("default"))); - -#undef g_app_launch_context_get_startup_notify_id -extern __typeof (g_app_launch_context_get_startup_notify_id) g_app_launch_context_get_startup_notify_id __attribute((alias("IA__g_app_launch_context_get_startup_notify_id"), visibility("default"))); - -#undef g_app_launch_context_launch_failed -extern __typeof (g_app_launch_context_launch_failed) g_app_launch_context_launch_failed __attribute((alias("IA__g_app_launch_context_launch_failed"), visibility("default"))); - -#endif -#if IN_FILE(__G_DESKTOP_APP_INFO_C__) -#undef g_app_info_create_from_commandline -extern __typeof (g_app_info_create_from_commandline) g_app_info_create_from_commandline __attribute((alias("IA__g_app_info_create_from_commandline"), visibility("default"))); - -#undef g_app_info_get_all -extern __typeof (g_app_info_get_all) g_app_info_get_all __attribute((alias("IA__g_app_info_get_all"), visibility("default"))); - -#undef g_app_info_get_all_for_type -extern __typeof (g_app_info_get_all_for_type) g_app_info_get_all_for_type __attribute((alias("IA__g_app_info_get_all_for_type"), visibility("default"))); - -#undef g_app_info_get_default_for_type -extern __typeof (g_app_info_get_default_for_type) g_app_info_get_default_for_type __attribute((alias("IA__g_app_info_get_default_for_type"), visibility("default"))); - -#undef g_app_info_get_default_for_uri_scheme -extern __typeof (g_app_info_get_default_for_uri_scheme) g_app_info_get_default_for_uri_scheme __attribute((alias("IA__g_app_info_get_default_for_uri_scheme"), visibility("default"))); - -#undef g_app_info_reset_type_associations -extern __typeof (g_app_info_reset_type_associations) g_app_info_reset_type_associations __attribute((alias("IA__g_app_info_reset_type_associations"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_DESKTOP_APP_INFO_H__) -#if IN_FILE(__G_DESKTOP_APP_INFO_C__) -#ifdef G_OS_UNIX -#undef g_desktop_app_info_new_from_filename -extern __typeof (g_desktop_app_info_new_from_filename) g_desktop_app_info_new_from_filename __attribute((alias("IA__g_desktop_app_info_new_from_filename"), visibility("default"))); - -#undef g_desktop_app_info_new_from_keyfile -extern __typeof (g_desktop_app_info_new_from_keyfile) g_desktop_app_info_new_from_keyfile __attribute((alias("IA__g_desktop_app_info_new_from_keyfile"), visibility("default"))); - -#undef g_desktop_app_info_new -extern __typeof (g_desktop_app_info_new) g_desktop_app_info_new __attribute((alias("IA__g_desktop_app_info_new"), visibility("default"))); - -#undef g_desktop_app_info_get_filename -extern __typeof (g_desktop_app_info_get_filename) g_desktop_app_info_get_filename __attribute((alias("IA__g_desktop_app_info_get_filename"), visibility("default"))); - -#undef g_desktop_app_info_get_type -extern __typeof (g_desktop_app_info_get_type) g_desktop_app_info_get_type __attribute((alias("IA__g_desktop_app_info_get_type"), visibility("default"))); - -#undef g_desktop_app_info_get_is_hidden -extern __typeof (g_desktop_app_info_get_is_hidden) g_desktop_app_info_get_is_hidden __attribute((alias("IA__g_desktop_app_info_get_is_hidden"), visibility("default"))); - -#undef g_desktop_app_info_set_desktop_env -extern __typeof (g_desktop_app_info_set_desktop_env) g_desktop_app_info_set_desktop_env __attribute((alias("IA__g_desktop_app_info_set_desktop_env"), visibility("default"))); - -#undef g_desktop_app_info_lookup_get_type -extern __typeof (g_desktop_app_info_lookup_get_type) g_desktop_app_info_lookup_get_type __attribute((alias("IA__g_desktop_app_info_lookup_get_type"), visibility("default"))); - -#undef g_desktop_app_info_lookup_get_default_for_uri_scheme -extern __typeof (g_desktop_app_info_lookup_get_default_for_uri_scheme) g_desktop_app_info_lookup_get_default_for_uri_scheme __attribute((alias("IA__g_desktop_app_info_lookup_get_default_for_uri_scheme"), visibility("default"))); - -#endif -#endif -#endif -#if IN_HEADER(__G_ASYNC_RESULT_H__) -#if IN_FILE(__G_ASYNC_RESULT_C__) -#undef g_async_result_get_type -extern __typeof (g_async_result_get_type) g_async_result_get_type __attribute((alias("IA__g_async_result_get_type"), visibility("default"))); - -#undef g_async_result_get_user_data -extern __typeof (g_async_result_get_user_data) g_async_result_get_user_data __attribute((alias("IA__g_async_result_get_user_data"), visibility("default"))); - -#undef g_async_result_get_source_object -extern __typeof (g_async_result_get_source_object) g_async_result_get_source_object __attribute((alias("IA__g_async_result_get_source_object"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_BUFFERED_INPUT_STREAM_H__) -#if IN_FILE(__G_BUFFERED_INPUT_STREAM_C__) -#undef g_buffered_input_stream_get_type -extern __typeof (g_buffered_input_stream_get_type) g_buffered_input_stream_get_type __attribute((alias("IA__g_buffered_input_stream_get_type"), visibility("default"))); - -#undef g_buffered_input_stream_new -extern __typeof (g_buffered_input_stream_new) g_buffered_input_stream_new __attribute((alias("IA__g_buffered_input_stream_new"), visibility("default"))); - -#undef g_buffered_input_stream_new_sized -extern __typeof (g_buffered_input_stream_new_sized) g_buffered_input_stream_new_sized __attribute((alias("IA__g_buffered_input_stream_new_sized"), visibility("default"))); - -#undef g_buffered_input_stream_get_buffer_size -extern __typeof (g_buffered_input_stream_get_buffer_size) g_buffered_input_stream_get_buffer_size __attribute((alias("IA__g_buffered_input_stream_get_buffer_size"), visibility("default"))); - -#undef g_buffered_input_stream_set_buffer_size -extern __typeof (g_buffered_input_stream_set_buffer_size) g_buffered_input_stream_set_buffer_size __attribute((alias("IA__g_buffered_input_stream_set_buffer_size"), visibility("default"))); - -#undef g_buffered_input_stream_get_available -extern __typeof (g_buffered_input_stream_get_available) g_buffered_input_stream_get_available __attribute((alias("IA__g_buffered_input_stream_get_available"), visibility("default"))); - -#undef g_buffered_input_stream_peek -extern __typeof (g_buffered_input_stream_peek) g_buffered_input_stream_peek __attribute((alias("IA__g_buffered_input_stream_peek"), visibility("default"))); - -#undef g_buffered_input_stream_peek_buffer -extern __typeof (g_buffered_input_stream_peek_buffer) g_buffered_input_stream_peek_buffer __attribute((alias("IA__g_buffered_input_stream_peek_buffer"), visibility("default"))); - -#undef g_buffered_input_stream_fill -extern __typeof (g_buffered_input_stream_fill) g_buffered_input_stream_fill __attribute((alias("IA__g_buffered_input_stream_fill"), visibility("default"))); - -#undef g_buffered_input_stream_fill_async -extern __typeof (g_buffered_input_stream_fill_async) g_buffered_input_stream_fill_async __attribute((alias("IA__g_buffered_input_stream_fill_async"), visibility("default"))); - -#undef g_buffered_input_stream_fill_finish -extern __typeof (g_buffered_input_stream_fill_finish) g_buffered_input_stream_fill_finish __attribute((alias("IA__g_buffered_input_stream_fill_finish"), visibility("default"))); - -#undef g_buffered_input_stream_read_byte -extern __typeof (g_buffered_input_stream_read_byte) g_buffered_input_stream_read_byte __attribute((alias("IA__g_buffered_input_stream_read_byte"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_BUFFERED_OUTPUT_STREAM_H__) -#if IN_FILE(__G_BUFFERED_OUTPUT_STREAM_C__) -#undef g_buffered_output_stream_get_type -extern __typeof (g_buffered_output_stream_get_type) g_buffered_output_stream_get_type __attribute((alias("IA__g_buffered_output_stream_get_type"), visibility("default"))); - -#undef g_buffered_output_stream_new -extern __typeof (g_buffered_output_stream_new) g_buffered_output_stream_new __attribute((alias("IA__g_buffered_output_stream_new"), visibility("default"))); - -#undef g_buffered_output_stream_new_sized -extern __typeof (g_buffered_output_stream_new_sized) g_buffered_output_stream_new_sized __attribute((alias("IA__g_buffered_output_stream_new_sized"), visibility("default"))); - -#undef g_buffered_output_stream_get_buffer_size -extern __typeof (g_buffered_output_stream_get_buffer_size) g_buffered_output_stream_get_buffer_size __attribute((alias("IA__g_buffered_output_stream_get_buffer_size"), visibility("default"))); - -#undef g_buffered_output_stream_set_buffer_size -extern __typeof (g_buffered_output_stream_set_buffer_size) g_buffered_output_stream_set_buffer_size __attribute((alias("IA__g_buffered_output_stream_set_buffer_size"), visibility("default"))); - -#undef g_buffered_output_stream_get_auto_grow -extern __typeof (g_buffered_output_stream_get_auto_grow) g_buffered_output_stream_get_auto_grow __attribute((alias("IA__g_buffered_output_stream_get_auto_grow"), visibility("default"))); - -#undef g_buffered_output_stream_set_auto_grow -extern __typeof (g_buffered_output_stream_set_auto_grow) g_buffered_output_stream_set_auto_grow __attribute((alias("IA__g_buffered_output_stream_set_auto_grow"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_CANCELLABLE_H__) -#if IN_FILE(__G_CANCELLABLE_C__) -#undef g_cancellable_get_type -extern __typeof (g_cancellable_get_type) g_cancellable_get_type __attribute((alias("IA__g_cancellable_get_type"), visibility("default"))); - -#undef g_cancellable_new -extern __typeof (g_cancellable_new) g_cancellable_new __attribute((alias("IA__g_cancellable_new"), visibility("default"))); - -#undef g_cancellable_is_cancelled -extern __typeof (g_cancellable_is_cancelled) g_cancellable_is_cancelled __attribute((alias("IA__g_cancellable_is_cancelled"), visibility("default"))); - -#undef g_cancellable_set_error_if_cancelled -extern __typeof (g_cancellable_set_error_if_cancelled) g_cancellable_set_error_if_cancelled __attribute((alias("IA__g_cancellable_set_error_if_cancelled"), visibility("default"))); - -#undef g_cancellable_get_fd -extern __typeof (g_cancellable_get_fd) g_cancellable_get_fd __attribute((alias("IA__g_cancellable_get_fd"), visibility("default"))); - -#undef g_cancellable_make_pollfd -extern __typeof (g_cancellable_make_pollfd) g_cancellable_make_pollfd __attribute((alias("IA__g_cancellable_make_pollfd"), visibility("default"))); - -#undef g_cancellable_release_fd -extern __typeof (g_cancellable_release_fd) g_cancellable_release_fd __attribute((alias("IA__g_cancellable_release_fd"), visibility("default"))); - -#undef g_cancellable_get_current -extern __typeof (g_cancellable_get_current) g_cancellable_get_current __attribute((alias("IA__g_cancellable_get_current"), visibility("default"))); - -#undef g_cancellable_push_current -extern __typeof (g_cancellable_push_current) g_cancellable_push_current __attribute((alias("IA__g_cancellable_push_current"), visibility("default"))); - -#undef g_cancellable_pop_current -extern __typeof (g_cancellable_pop_current) g_cancellable_pop_current __attribute((alias("IA__g_cancellable_pop_current"), visibility("default"))); - -#undef g_cancellable_reset -extern __typeof (g_cancellable_reset) g_cancellable_reset __attribute((alias("IA__g_cancellable_reset"), visibility("default"))); - -#undef g_cancellable_cancel -extern __typeof (g_cancellable_cancel) g_cancellable_cancel __attribute((alias("IA__g_cancellable_cancel"), visibility("default"))); - -#undef g_cancellable_connect -extern __typeof (g_cancellable_connect) g_cancellable_connect __attribute((alias("IA__g_cancellable_connect"), visibility("default"))); - -#undef g_cancellable_disconnect -extern __typeof (g_cancellable_disconnect) g_cancellable_disconnect __attribute((alias("IA__g_cancellable_disconnect"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_CONTENT_TYPE_H__) -#if IN_FILE(__G_CONTENT_TYPE_C__) -#undef g_content_type_equals -extern __typeof (g_content_type_equals) g_content_type_equals __attribute((alias("IA__g_content_type_equals"), visibility("default"))); - -#undef g_content_type_is_a -extern __typeof (g_content_type_is_a) g_content_type_is_a __attribute((alias("IA__g_content_type_is_a"), visibility("default"))); - -#undef g_content_type_is_unknown -extern __typeof (g_content_type_is_unknown) g_content_type_is_unknown __attribute((alias("IA__g_content_type_is_unknown"), visibility("default"))); - -#undef g_content_type_get_description -extern __typeof (g_content_type_get_description) g_content_type_get_description __attribute((alias("IA__g_content_type_get_description"), visibility("default"))); - -#undef g_content_type_get_mime_type -extern __typeof (g_content_type_get_mime_type) g_content_type_get_mime_type __attribute((alias("IA__g_content_type_get_mime_type"), visibility("default"))); - -#undef g_content_type_get_icon -extern __typeof (g_content_type_get_icon) g_content_type_get_icon __attribute((alias("IA__g_content_type_get_icon"), visibility("default"))); - -#undef g_content_type_can_be_executable -extern __typeof (g_content_type_can_be_executable) g_content_type_can_be_executable __attribute((alias("IA__g_content_type_can_be_executable"), visibility("default"))); - -#undef g_content_type_from_mime_type -extern __typeof (g_content_type_from_mime_type) g_content_type_from_mime_type __attribute((alias("IA__g_content_type_from_mime_type"), visibility("default"))); - -#undef g_content_type_guess -extern __typeof (g_content_type_guess) g_content_type_guess __attribute((alias("IA__g_content_type_guess"), visibility("default"))); - -#undef g_content_type_guess_for_tree -extern __typeof (g_content_type_guess_for_tree) g_content_type_guess_for_tree __attribute((alias("IA__g_content_type_guess_for_tree"), visibility("default"))); - -#undef g_content_types_get_registered -extern __typeof (g_content_types_get_registered) g_content_types_get_registered __attribute((alias("IA__g_content_types_get_registered"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_CONVERTER_H__) -#if IN_FILE(__G_CONVERTER_C__) -#undef g_converter_get_type -extern __typeof (g_converter_get_type) g_converter_get_type __attribute((alias("IA__g_converter_get_type"), visibility("default"))); - -#undef g_converter_reset -extern __typeof (g_converter_reset) g_converter_reset __attribute((alias("IA__g_converter_reset"), visibility("default"))); - -#undef g_converter_convert -extern __typeof (g_converter_convert) g_converter_convert __attribute((alias("IA__g_converter_convert"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_CONVERTER_INPUT_STREAM_H__) -#if IN_FILE(__G_CONVERTER_INPUT_STREAM_C__) -#undef g_converter_input_stream_get_type -extern __typeof (g_converter_input_stream_get_type) g_converter_input_stream_get_type __attribute((alias("IA__g_converter_input_stream_get_type"), visibility("default"))); - -#undef g_converter_input_stream_new -extern __typeof (g_converter_input_stream_new) g_converter_input_stream_new __attribute((alias("IA__g_converter_input_stream_new"), visibility("default"))); - -#undef g_converter_input_stream_get_converter -extern __typeof (g_converter_input_stream_get_converter) g_converter_input_stream_get_converter __attribute((alias("IA__g_converter_input_stream_get_converter"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_CONVERTER_OUTPUT_STREAM_H__) -#if IN_FILE(__G_CONVERTER_OUTPUT_STREAM_C__) -#undef g_converter_output_stream_get_type -extern __typeof (g_converter_output_stream_get_type) g_converter_output_stream_get_type __attribute((alias("IA__g_converter_output_stream_get_type"), visibility("default"))); - -#undef g_converter_output_stream_new -extern __typeof (g_converter_output_stream_new) g_converter_output_stream_new __attribute((alias("IA__g_converter_output_stream_new"), visibility("default"))); - -#undef g_converter_output_stream_get_converter -extern __typeof (g_converter_output_stream_get_converter) g_converter_output_stream_get_converter __attribute((alias("IA__g_converter_output_stream_get_converter"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_CHARSET_CONVERTER_H__) -#if IN_FILE(__G_CHARSET_CONVERTER_C__) -#undef g_charset_converter_get_type -extern __typeof (g_charset_converter_get_type) g_charset_converter_get_type __attribute((alias("IA__g_charset_converter_get_type"), visibility("default"))); - -#undef g_charset_converter_new -extern __typeof (g_charset_converter_new) g_charset_converter_new __attribute((alias("IA__g_charset_converter_new"), visibility("default"))); - -#undef g_charset_converter_get_num_fallbacks -extern __typeof (g_charset_converter_get_num_fallbacks) g_charset_converter_get_num_fallbacks __attribute((alias("IA__g_charset_converter_get_num_fallbacks"), visibility("default"))); - -#undef g_charset_converter_get_use_fallback -extern __typeof (g_charset_converter_get_use_fallback) g_charset_converter_get_use_fallback __attribute((alias("IA__g_charset_converter_get_use_fallback"), visibility("default"))); - -#undef g_charset_converter_set_use_fallback -extern __typeof (g_charset_converter_set_use_fallback) g_charset_converter_set_use_fallback __attribute((alias("IA__g_charset_converter_set_use_fallback"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_DATA_INPUT_STREAM_H__) -#if IN_FILE(__G_DATA_INPUT_STREAM_C__) -#undef g_data_input_stream_get_type -extern __typeof (g_data_input_stream_get_type) g_data_input_stream_get_type __attribute((alias("IA__g_data_input_stream_get_type"), visibility("default"))); - -#undef g_data_input_stream_new -extern __typeof (g_data_input_stream_new) g_data_input_stream_new __attribute((alias("IA__g_data_input_stream_new"), visibility("default"))); - -#undef g_data_input_stream_set_byte_order -extern __typeof (g_data_input_stream_set_byte_order) g_data_input_stream_set_byte_order __attribute((alias("IA__g_data_input_stream_set_byte_order"), visibility("default"))); - -#undef g_data_input_stream_get_byte_order -extern __typeof (g_data_input_stream_get_byte_order) g_data_input_stream_get_byte_order __attribute((alias("IA__g_data_input_stream_get_byte_order"), visibility("default"))); - -#undef g_data_input_stream_set_newline_type -extern __typeof (g_data_input_stream_set_newline_type) g_data_input_stream_set_newline_type __attribute((alias("IA__g_data_input_stream_set_newline_type"), visibility("default"))); - -#undef g_data_input_stream_get_newline_type -extern __typeof (g_data_input_stream_get_newline_type) g_data_input_stream_get_newline_type __attribute((alias("IA__g_data_input_stream_get_newline_type"), visibility("default"))); - -#undef g_data_input_stream_read_byte -extern __typeof (g_data_input_stream_read_byte) g_data_input_stream_read_byte __attribute((alias("IA__g_data_input_stream_read_byte"), visibility("default"))); - -#undef g_data_input_stream_read_int16 -extern __typeof (g_data_input_stream_read_int16) g_data_input_stream_read_int16 __attribute((alias("IA__g_data_input_stream_read_int16"), visibility("default"))); - -#undef g_data_input_stream_read_uint16 -extern __typeof (g_data_input_stream_read_uint16) g_data_input_stream_read_uint16 __attribute((alias("IA__g_data_input_stream_read_uint16"), visibility("default"))); - -#undef g_data_input_stream_read_int32 -extern __typeof (g_data_input_stream_read_int32) g_data_input_stream_read_int32 __attribute((alias("IA__g_data_input_stream_read_int32"), visibility("default"))); - -#undef g_data_input_stream_read_uint32 -extern __typeof (g_data_input_stream_read_uint32) g_data_input_stream_read_uint32 __attribute((alias("IA__g_data_input_stream_read_uint32"), visibility("default"))); - -#undef g_data_input_stream_read_int64 -extern __typeof (g_data_input_stream_read_int64) g_data_input_stream_read_int64 __attribute((alias("IA__g_data_input_stream_read_int64"), visibility("default"))); - -#undef g_data_input_stream_read_uint64 -extern __typeof (g_data_input_stream_read_uint64) g_data_input_stream_read_uint64 __attribute((alias("IA__g_data_input_stream_read_uint64"), visibility("default"))); - -#undef g_data_input_stream_read_line -extern __typeof (g_data_input_stream_read_line) g_data_input_stream_read_line __attribute((alias("IA__g_data_input_stream_read_line"), visibility("default"))); - -#undef g_data_input_stream_read_line_async -extern __typeof (g_data_input_stream_read_line_async) g_data_input_stream_read_line_async __attribute((alias("IA__g_data_input_stream_read_line_async"), visibility("default"))); - -#undef g_data_input_stream_read_line_finish -extern __typeof (g_data_input_stream_read_line_finish) g_data_input_stream_read_line_finish __attribute((alias("IA__g_data_input_stream_read_line_finish"), visibility("default"))); - -#undef g_data_input_stream_read_until -extern __typeof (g_data_input_stream_read_until) g_data_input_stream_read_until __attribute((alias("IA__g_data_input_stream_read_until"), visibility("default"))); - -#undef g_data_input_stream_read_until_async -extern __typeof (g_data_input_stream_read_until_async) g_data_input_stream_read_until_async __attribute((alias("IA__g_data_input_stream_read_until_async"), visibility("default"))); - -#undef g_data_input_stream_read_until_finish -extern __typeof (g_data_input_stream_read_until_finish) g_data_input_stream_read_until_finish __attribute((alias("IA__g_data_input_stream_read_until_finish"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_DATA_OUTPUT_STREAM_H__) -#if IN_FILE(__G_DATA_OUTPUT_STREAM_C__) -#undef g_data_output_stream_get_type -extern __typeof (g_data_output_stream_get_type) g_data_output_stream_get_type __attribute((alias("IA__g_data_output_stream_get_type"), visibility("default"))); - -#undef g_data_output_stream_new -extern __typeof (g_data_output_stream_new) g_data_output_stream_new __attribute((alias("IA__g_data_output_stream_new"), visibility("default"))); - -#undef g_data_output_stream_set_byte_order -extern __typeof (g_data_output_stream_set_byte_order) g_data_output_stream_set_byte_order __attribute((alias("IA__g_data_output_stream_set_byte_order"), visibility("default"))); - -#undef g_data_output_stream_get_byte_order -extern __typeof (g_data_output_stream_get_byte_order) g_data_output_stream_get_byte_order __attribute((alias("IA__g_data_output_stream_get_byte_order"), visibility("default"))); - -#undef g_data_output_stream_put_byte -extern __typeof (g_data_output_stream_put_byte) g_data_output_stream_put_byte __attribute((alias("IA__g_data_output_stream_put_byte"), visibility("default"))); - -#undef g_data_output_stream_put_int16 -extern __typeof (g_data_output_stream_put_int16) g_data_output_stream_put_int16 __attribute((alias("IA__g_data_output_stream_put_int16"), visibility("default"))); - -#undef g_data_output_stream_put_uint16 -extern __typeof (g_data_output_stream_put_uint16) g_data_output_stream_put_uint16 __attribute((alias("IA__g_data_output_stream_put_uint16"), visibility("default"))); - -#undef g_data_output_stream_put_int32 -extern __typeof (g_data_output_stream_put_int32) g_data_output_stream_put_int32 __attribute((alias("IA__g_data_output_stream_put_int32"), visibility("default"))); - -#undef g_data_output_stream_put_uint32 -extern __typeof (g_data_output_stream_put_uint32) g_data_output_stream_put_uint32 __attribute((alias("IA__g_data_output_stream_put_uint32"), visibility("default"))); - -#undef g_data_output_stream_put_int64 -extern __typeof (g_data_output_stream_put_int64) g_data_output_stream_put_int64 __attribute((alias("IA__g_data_output_stream_put_int64"), visibility("default"))); - -#undef g_data_output_stream_put_uint64 -extern __typeof (g_data_output_stream_put_uint64) g_data_output_stream_put_uint64 __attribute((alias("IA__g_data_output_stream_put_uint64"), visibility("default"))); - -#undef g_data_output_stream_put_string -extern __typeof (g_data_output_stream_put_string) g_data_output_stream_put_string __attribute((alias("IA__g_data_output_stream_put_string"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_DRIVE_H__) -#if IN_FILE(__G_DRIVE_C__) -#undef g_drive_get_type -extern __typeof (g_drive_get_type) g_drive_get_type __attribute((alias("IA__g_drive_get_type"), visibility("default"))); - -#undef g_drive_get_name -extern __typeof (g_drive_get_name) g_drive_get_name __attribute((alias("IA__g_drive_get_name"), visibility("default"))); - -#undef g_drive_get_icon -extern __typeof (g_drive_get_icon) g_drive_get_icon __attribute((alias("IA__g_drive_get_icon"), visibility("default"))); - -#undef g_drive_has_volumes -extern __typeof (g_drive_has_volumes) g_drive_has_volumes __attribute((alias("IA__g_drive_has_volumes"), visibility("default"))); - -#undef g_drive_get_volumes -extern __typeof (g_drive_get_volumes) g_drive_get_volumes __attribute((alias("IA__g_drive_get_volumes"), visibility("default"))); - -#undef g_drive_is_media_removable -extern __typeof (g_drive_is_media_removable) g_drive_is_media_removable __attribute((alias("IA__g_drive_is_media_removable"), visibility("default"))); - -#undef g_drive_has_media -extern __typeof (g_drive_has_media) g_drive_has_media __attribute((alias("IA__g_drive_has_media"), visibility("default"))); - -#undef g_drive_is_media_check_automatic -extern __typeof (g_drive_is_media_check_automatic) g_drive_is_media_check_automatic __attribute((alias("IA__g_drive_is_media_check_automatic"), visibility("default"))); - -#undef g_drive_can_poll_for_media -extern __typeof (g_drive_can_poll_for_media) g_drive_can_poll_for_media __attribute((alias("IA__g_drive_can_poll_for_media"), visibility("default"))); - -#undef g_drive_can_eject -extern __typeof (g_drive_can_eject) g_drive_can_eject __attribute((alias("IA__g_drive_can_eject"), visibility("default"))); - -#undef g_drive_eject_with_operation -extern __typeof (g_drive_eject_with_operation) g_drive_eject_with_operation __attribute((alias("IA__g_drive_eject_with_operation"), visibility("default"))); - -#undef g_drive_eject_with_operation_finish -extern __typeof (g_drive_eject_with_operation_finish) g_drive_eject_with_operation_finish __attribute((alias("IA__g_drive_eject_with_operation_finish"), visibility("default"))); - -#undef g_drive_poll_for_media -extern __typeof (g_drive_poll_for_media) g_drive_poll_for_media __attribute((alias("IA__g_drive_poll_for_media"), visibility("default"))); - -#undef g_drive_poll_for_media_finish -extern __typeof (g_drive_poll_for_media_finish) g_drive_poll_for_media_finish __attribute((alias("IA__g_drive_poll_for_media_finish"), visibility("default"))); - -#undef g_drive_get_identifier -extern __typeof (g_drive_get_identifier) g_drive_get_identifier __attribute((alias("IA__g_drive_get_identifier"), visibility("default"))); - -#undef g_drive_enumerate_identifiers -extern __typeof (g_drive_enumerate_identifiers) g_drive_enumerate_identifiers __attribute((alias("IA__g_drive_enumerate_identifiers"), visibility("default"))); - -#undef g_drive_get_start_stop_type -extern __typeof (g_drive_get_start_stop_type) g_drive_get_start_stop_type __attribute((alias("IA__g_drive_get_start_stop_type"), visibility("default"))); - -#undef g_drive_can_start -extern __typeof (g_drive_can_start) g_drive_can_start __attribute((alias("IA__g_drive_can_start"), visibility("default"))); - -#undef g_drive_can_start_degraded -extern __typeof (g_drive_can_start_degraded) g_drive_can_start_degraded __attribute((alias("IA__g_drive_can_start_degraded"), visibility("default"))); - -#undef g_drive_start -extern __typeof (g_drive_start) g_drive_start __attribute((alias("IA__g_drive_start"), visibility("default"))); - -#undef g_drive_start_finish -extern __typeof (g_drive_start_finish) g_drive_start_finish __attribute((alias("IA__g_drive_start_finish"), visibility("default"))); - -#undef g_drive_can_stop -extern __typeof (g_drive_can_stop) g_drive_can_stop __attribute((alias("IA__g_drive_can_stop"), visibility("default"))); - -#undef g_drive_stop -extern __typeof (g_drive_stop) g_drive_stop __attribute((alias("IA__g_drive_stop"), visibility("default"))); - -#undef g_drive_stop_finish -extern __typeof (g_drive_stop_finish) g_drive_stop_finish __attribute((alias("IA__g_drive_stop_finish"), visibility("default"))); - -#ifndef G_DISABLE_DEPRECATED -#undef g_drive_eject -extern __typeof (g_drive_eject) g_drive_eject __attribute((alias("IA__g_drive_eject"), visibility("default"))); - -#undef g_drive_eject_finish -extern __typeof (g_drive_eject_finish) g_drive_eject_finish __attribute((alias("IA__g_drive_eject_finish"), visibility("default"))); - -#endif -#endif -#endif -#if IN_HEADER(__G_FILE_ATTRIBUTE_H__) -#if IN_FILE(__G_FILE_ATTRIBUTE_C__) -#undef g_file_attribute_info_list_new -extern __typeof (g_file_attribute_info_list_new) g_file_attribute_info_list_new __attribute((alias("IA__g_file_attribute_info_list_new"), visibility("default"))); - -#undef g_file_attribute_info_list_ref -extern __typeof (g_file_attribute_info_list_ref) g_file_attribute_info_list_ref __attribute((alias("IA__g_file_attribute_info_list_ref"), visibility("default"))); - -#undef g_file_attribute_info_list_unref -extern __typeof (g_file_attribute_info_list_unref) g_file_attribute_info_list_unref __attribute((alias("IA__g_file_attribute_info_list_unref"), visibility("default"))); - -#undef g_file_attribute_info_list_dup -extern __typeof (g_file_attribute_info_list_dup) g_file_attribute_info_list_dup __attribute((alias("IA__g_file_attribute_info_list_dup"), visibility("default"))); - -#undef g_file_attribute_info_list_get_type -extern __typeof (g_file_attribute_info_list_get_type) g_file_attribute_info_list_get_type __attribute((alias("IA__g_file_attribute_info_list_get_type"), visibility("default"))); - -#undef g_file_attribute_info_list_lookup -extern __typeof (g_file_attribute_info_list_lookup) g_file_attribute_info_list_lookup __attribute((alias("IA__g_file_attribute_info_list_lookup"), visibility("default"))); - -#undef g_file_attribute_info_list_add -extern __typeof (g_file_attribute_info_list_add) g_file_attribute_info_list_add __attribute((alias("IA__g_file_attribute_info_list_add"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_FILE_H__) -#if IN_FILE(__G_FILE_C__) -#undef g_file_get_type -extern __typeof (g_file_get_type) g_file_get_type __attribute((alias("IA__g_file_get_type"), visibility("default"))); - -#undef g_file_new_for_path -extern __typeof (g_file_new_for_path) g_file_new_for_path __attribute((alias("IA__g_file_new_for_path"), visibility("default"))); - -#undef g_file_new_for_uri -extern __typeof (g_file_new_for_uri) g_file_new_for_uri __attribute((alias("IA__g_file_new_for_uri"), visibility("default"))); - -#undef g_file_new_for_commandline_arg -extern __typeof (g_file_new_for_commandline_arg) g_file_new_for_commandline_arg __attribute((alias("IA__g_file_new_for_commandline_arg"), visibility("default"))); - -#undef g_file_parse_name -extern __typeof (g_file_parse_name) g_file_parse_name __attribute((alias("IA__g_file_parse_name"), visibility("default"))); - -#undef g_file_dup -extern __typeof (g_file_dup) g_file_dup __attribute((alias("IA__g_file_dup"), visibility("default"))); - -#undef g_file_hash -extern __typeof (g_file_hash) g_file_hash __attribute((alias("IA__g_file_hash"), visibility("default"))); - -#undef g_file_equal -extern __typeof (g_file_equal) g_file_equal __attribute((alias("IA__g_file_equal"), visibility("default"))); - -#undef g_file_get_basename -extern __typeof (g_file_get_basename) g_file_get_basename __attribute((alias("IA__g_file_get_basename"), visibility("default"))); - -#undef g_file_get_path -extern __typeof (g_file_get_path) g_file_get_path __attribute((alias("IA__g_file_get_path"), visibility("default"))); - -#undef g_file_get_uri -extern __typeof (g_file_get_uri) g_file_get_uri __attribute((alias("IA__g_file_get_uri"), visibility("default"))); - -#undef g_file_get_parse_name -extern __typeof (g_file_get_parse_name) g_file_get_parse_name __attribute((alias("IA__g_file_get_parse_name"), visibility("default"))); - -#undef g_file_get_parent -extern __typeof (g_file_get_parent) g_file_get_parent __attribute((alias("IA__g_file_get_parent"), visibility("default"))); - -#undef g_file_has_parent -extern __typeof (g_file_has_parent) g_file_has_parent __attribute((alias("IA__g_file_has_parent"), visibility("default"))); - -#undef g_file_get_child -extern __typeof (g_file_get_child) g_file_get_child __attribute((alias("IA__g_file_get_child"), visibility("default"))); - -#undef g_file_get_child_for_display_name -extern __typeof (g_file_get_child_for_display_name) g_file_get_child_for_display_name __attribute((alias("IA__g_file_get_child_for_display_name"), visibility("default"))); - -#undef g_file_has_prefix -extern __typeof (g_file_has_prefix) g_file_has_prefix __attribute((alias("IA__g_file_has_prefix"), visibility("default"))); - -#undef g_file_get_relative_path -extern __typeof (g_file_get_relative_path) g_file_get_relative_path __attribute((alias("IA__g_file_get_relative_path"), visibility("default"))); - -#undef g_file_resolve_relative_path -extern __typeof (g_file_resolve_relative_path) g_file_resolve_relative_path __attribute((alias("IA__g_file_resolve_relative_path"), visibility("default"))); - -#undef g_file_is_native -extern __typeof (g_file_is_native) g_file_is_native __attribute((alias("IA__g_file_is_native"), visibility("default"))); - -#undef g_file_has_uri_scheme -extern __typeof (g_file_has_uri_scheme) g_file_has_uri_scheme __attribute((alias("IA__g_file_has_uri_scheme"), visibility("default"))); - -#undef g_file_get_uri_scheme -extern __typeof (g_file_get_uri_scheme) g_file_get_uri_scheme __attribute((alias("IA__g_file_get_uri_scheme"), visibility("default"))); - -#undef g_file_read -extern __typeof (g_file_read) g_file_read __attribute((alias("IA__g_file_read"), visibility("default"))); - -#undef g_file_read_async -extern __typeof (g_file_read_async) g_file_read_async __attribute((alias("IA__g_file_read_async"), visibility("default"))); - -#undef g_file_read_finish -extern __typeof (g_file_read_finish) g_file_read_finish __attribute((alias("IA__g_file_read_finish"), visibility("default"))); - -#undef g_file_append_to -extern __typeof (g_file_append_to) g_file_append_to __attribute((alias("IA__g_file_append_to"), visibility("default"))); - -#undef g_file_create -extern __typeof (g_file_create) g_file_create __attribute((alias("IA__g_file_create"), visibility("default"))); - -#undef g_file_replace -extern __typeof (g_file_replace) g_file_replace __attribute((alias("IA__g_file_replace"), visibility("default"))); - -#undef g_file_append_to_async -extern __typeof (g_file_append_to_async) g_file_append_to_async __attribute((alias("IA__g_file_append_to_async"), visibility("default"))); - -#undef g_file_append_to_finish -extern __typeof (g_file_append_to_finish) g_file_append_to_finish __attribute((alias("IA__g_file_append_to_finish"), visibility("default"))); - -#undef g_file_create_async -extern __typeof (g_file_create_async) g_file_create_async __attribute((alias("IA__g_file_create_async"), visibility("default"))); - -#undef g_file_create_finish -extern __typeof (g_file_create_finish) g_file_create_finish __attribute((alias("IA__g_file_create_finish"), visibility("default"))); - -#undef g_file_replace_async -extern __typeof (g_file_replace_async) g_file_replace_async __attribute((alias("IA__g_file_replace_async"), visibility("default"))); - -#undef g_file_replace_finish -extern __typeof (g_file_replace_finish) g_file_replace_finish __attribute((alias("IA__g_file_replace_finish"), visibility("default"))); - -#undef g_file_query_exists -extern __typeof (g_file_query_exists) g_file_query_exists __attribute((alias("IA__g_file_query_exists"), visibility("default"))); - -#undef g_file_query_info -extern __typeof (g_file_query_info) g_file_query_info __attribute((alias("IA__g_file_query_info"), visibility("default"))); - -#undef g_file_query_info_async -extern __typeof (g_file_query_info_async) g_file_query_info_async __attribute((alias("IA__g_file_query_info_async"), visibility("default"))); - -#undef g_file_query_info_finish -extern __typeof (g_file_query_info_finish) g_file_query_info_finish __attribute((alias("IA__g_file_query_info_finish"), visibility("default"))); - -#undef g_file_query_file_type -extern __typeof (g_file_query_file_type) g_file_query_file_type __attribute((alias("IA__g_file_query_file_type"), visibility("default"))); - -#undef g_file_query_filesystem_info -extern __typeof (g_file_query_filesystem_info) g_file_query_filesystem_info __attribute((alias("IA__g_file_query_filesystem_info"), visibility("default"))); - -#undef g_file_query_filesystem_info_async -extern __typeof (g_file_query_filesystem_info_async) g_file_query_filesystem_info_async __attribute((alias("IA__g_file_query_filesystem_info_async"), visibility("default"))); - -#undef g_file_query_filesystem_info_finish -extern __typeof (g_file_query_filesystem_info_finish) g_file_query_filesystem_info_finish __attribute((alias("IA__g_file_query_filesystem_info_finish"), visibility("default"))); - -#undef g_file_find_enclosing_mount -extern __typeof (g_file_find_enclosing_mount) g_file_find_enclosing_mount __attribute((alias("IA__g_file_find_enclosing_mount"), visibility("default"))); - -#undef g_file_find_enclosing_mount_async -extern __typeof (g_file_find_enclosing_mount_async) g_file_find_enclosing_mount_async __attribute((alias("IA__g_file_find_enclosing_mount_async"), visibility("default"))); - -#undef g_file_find_enclosing_mount_finish -extern __typeof (g_file_find_enclosing_mount_finish) g_file_find_enclosing_mount_finish __attribute((alias("IA__g_file_find_enclosing_mount_finish"), visibility("default"))); - -#undef g_file_enumerate_children -extern __typeof (g_file_enumerate_children) g_file_enumerate_children __attribute((alias("IA__g_file_enumerate_children"), visibility("default"))); - -#undef g_file_enumerate_children_async -extern __typeof (g_file_enumerate_children_async) g_file_enumerate_children_async __attribute((alias("IA__g_file_enumerate_children_async"), visibility("default"))); - -#undef g_file_enumerate_children_finish -extern __typeof (g_file_enumerate_children_finish) g_file_enumerate_children_finish __attribute((alias("IA__g_file_enumerate_children_finish"), visibility("default"))); - -#undef g_file_set_display_name -extern __typeof (g_file_set_display_name) g_file_set_display_name __attribute((alias("IA__g_file_set_display_name"), visibility("default"))); - -#undef g_file_set_display_name_async -extern __typeof (g_file_set_display_name_async) g_file_set_display_name_async __attribute((alias("IA__g_file_set_display_name_async"), visibility("default"))); - -#undef g_file_set_display_name_finish -extern __typeof (g_file_set_display_name_finish) g_file_set_display_name_finish __attribute((alias("IA__g_file_set_display_name_finish"), visibility("default"))); - -#undef g_file_delete -extern __typeof (g_file_delete) g_file_delete __attribute((alias("IA__g_file_delete"), visibility("default"))); - -#undef g_file_trash -extern __typeof (g_file_trash) g_file_trash __attribute((alias("IA__g_file_trash"), visibility("default"))); - -#undef g_file_copy -extern __typeof (g_file_copy) g_file_copy __attribute((alias("IA__g_file_copy"), visibility("default"))); - -#undef g_file_copy_async -extern __typeof (g_file_copy_async) g_file_copy_async __attribute((alias("IA__g_file_copy_async"), visibility("default"))); - -#undef g_file_copy_finish -extern __typeof (g_file_copy_finish) g_file_copy_finish __attribute((alias("IA__g_file_copy_finish"), visibility("default"))); - -#undef g_file_move -extern __typeof (g_file_move) g_file_move __attribute((alias("IA__g_file_move"), visibility("default"))); - -#undef g_file_make_directory -extern __typeof (g_file_make_directory) g_file_make_directory __attribute((alias("IA__g_file_make_directory"), visibility("default"))); - -#undef g_file_make_directory_with_parents -extern __typeof (g_file_make_directory_with_parents) g_file_make_directory_with_parents __attribute((alias("IA__g_file_make_directory_with_parents"), visibility("default"))); - -#undef g_file_make_symbolic_link -extern __typeof (g_file_make_symbolic_link) g_file_make_symbolic_link __attribute((alias("IA__g_file_make_symbolic_link"), visibility("default"))); - -#undef g_file_query_settable_attributes -extern __typeof (g_file_query_settable_attributes) g_file_query_settable_attributes __attribute((alias("IA__g_file_query_settable_attributes"), visibility("default"))); - -#undef g_file_query_writable_namespaces -extern __typeof (g_file_query_writable_namespaces) g_file_query_writable_namespaces __attribute((alias("IA__g_file_query_writable_namespaces"), visibility("default"))); - -#undef g_file_set_attribute -extern __typeof (g_file_set_attribute) g_file_set_attribute __attribute((alias("IA__g_file_set_attribute"), visibility("default"))); - -#undef g_file_set_attributes_from_info -extern __typeof (g_file_set_attributes_from_info) g_file_set_attributes_from_info __attribute((alias("IA__g_file_set_attributes_from_info"), visibility("default"))); - -#undef g_file_set_attributes_async -extern __typeof (g_file_set_attributes_async) g_file_set_attributes_async __attribute((alias("IA__g_file_set_attributes_async"), visibility("default"))); - -#undef g_file_set_attributes_finish -extern __typeof (g_file_set_attributes_finish) g_file_set_attributes_finish __attribute((alias("IA__g_file_set_attributes_finish"), visibility("default"))); - -#undef g_file_set_attribute_string -extern __typeof (g_file_set_attribute_string) g_file_set_attribute_string __attribute((alias("IA__g_file_set_attribute_string"), visibility("default"))); - -#undef g_file_set_attribute_byte_string -extern __typeof (g_file_set_attribute_byte_string) g_file_set_attribute_byte_string __attribute((alias("IA__g_file_set_attribute_byte_string"), visibility("default"))); - -#undef g_file_set_attribute_uint32 -extern __typeof (g_file_set_attribute_uint32) g_file_set_attribute_uint32 __attribute((alias("IA__g_file_set_attribute_uint32"), visibility("default"))); - -#undef g_file_set_attribute_int32 -extern __typeof (g_file_set_attribute_int32) g_file_set_attribute_int32 __attribute((alias("IA__g_file_set_attribute_int32"), visibility("default"))); - -#undef g_file_set_attribute_uint64 -extern __typeof (g_file_set_attribute_uint64) g_file_set_attribute_uint64 __attribute((alias("IA__g_file_set_attribute_uint64"), visibility("default"))); - -#undef g_file_set_attribute_int64 -extern __typeof (g_file_set_attribute_int64) g_file_set_attribute_int64 __attribute((alias("IA__g_file_set_attribute_int64"), visibility("default"))); - -#undef g_file_mount_enclosing_volume -extern __typeof (g_file_mount_enclosing_volume) g_file_mount_enclosing_volume __attribute((alias("IA__g_file_mount_enclosing_volume"), visibility("default"))); - -#undef g_file_mount_enclosing_volume_finish -extern __typeof (g_file_mount_enclosing_volume_finish) g_file_mount_enclosing_volume_finish __attribute((alias("IA__g_file_mount_enclosing_volume_finish"), visibility("default"))); - -#undef g_file_mount_mountable -extern __typeof (g_file_mount_mountable) g_file_mount_mountable __attribute((alias("IA__g_file_mount_mountable"), visibility("default"))); - -#undef g_file_mount_mountable_finish -extern __typeof (g_file_mount_mountable_finish) g_file_mount_mountable_finish __attribute((alias("IA__g_file_mount_mountable_finish"), visibility("default"))); - -#undef g_file_unmount_mountable_with_operation -extern __typeof (g_file_unmount_mountable_with_operation) g_file_unmount_mountable_with_operation __attribute((alias("IA__g_file_unmount_mountable_with_operation"), visibility("default"))); - -#undef g_file_unmount_mountable_with_operation_finish -extern __typeof (g_file_unmount_mountable_with_operation_finish) g_file_unmount_mountable_with_operation_finish __attribute((alias("IA__g_file_unmount_mountable_with_operation_finish"), visibility("default"))); - -#undef g_file_eject_mountable_with_operation -extern __typeof (g_file_eject_mountable_with_operation) g_file_eject_mountable_with_operation __attribute((alias("IA__g_file_eject_mountable_with_operation"), visibility("default"))); - -#undef g_file_eject_mountable_with_operation_finish -extern __typeof (g_file_eject_mountable_with_operation_finish) g_file_eject_mountable_with_operation_finish __attribute((alias("IA__g_file_eject_mountable_with_operation_finish"), visibility("default"))); - -#undef g_file_copy_attributes -extern __typeof (g_file_copy_attributes) g_file_copy_attributes __attribute((alias("IA__g_file_copy_attributes"), visibility("default"))); - -#undef g_file_monitor_directory -extern __typeof (g_file_monitor_directory) g_file_monitor_directory __attribute((alias("IA__g_file_monitor_directory"), visibility("default"))); - -#undef g_file_monitor_file -extern __typeof (g_file_monitor_file) g_file_monitor_file __attribute((alias("IA__g_file_monitor_file"), visibility("default"))); - -#undef g_file_monitor -extern __typeof (g_file_monitor) g_file_monitor __attribute((alias("IA__g_file_monitor"), visibility("default"))); - -#undef g_file_query_default_handler -extern __typeof (g_file_query_default_handler) g_file_query_default_handler __attribute((alias("IA__g_file_query_default_handler"), visibility("default"))); - -#undef g_file_load_contents -extern __typeof (g_file_load_contents) g_file_load_contents __attribute((alias("IA__g_file_load_contents"), visibility("default"))); - -#undef g_file_load_contents_async -extern __typeof (g_file_load_contents_async) g_file_load_contents_async __attribute((alias("IA__g_file_load_contents_async"), visibility("default"))); - -#undef g_file_load_contents_finish -extern __typeof (g_file_load_contents_finish) g_file_load_contents_finish __attribute((alias("IA__g_file_load_contents_finish"), visibility("default"))); - -#undef g_file_load_partial_contents_async -extern __typeof (g_file_load_partial_contents_async) g_file_load_partial_contents_async __attribute((alias("IA__g_file_load_partial_contents_async"), visibility("default"))); - -#undef g_file_load_partial_contents_finish -extern __typeof (g_file_load_partial_contents_finish) g_file_load_partial_contents_finish __attribute((alias("IA__g_file_load_partial_contents_finish"), visibility("default"))); - -#undef g_file_replace_contents -extern __typeof (g_file_replace_contents) g_file_replace_contents __attribute((alias("IA__g_file_replace_contents"), visibility("default"))); - -#undef g_file_replace_contents_async -extern __typeof (g_file_replace_contents_async) g_file_replace_contents_async __attribute((alias("IA__g_file_replace_contents_async"), visibility("default"))); - -#undef g_file_replace_contents_finish -extern __typeof (g_file_replace_contents_finish) g_file_replace_contents_finish __attribute((alias("IA__g_file_replace_contents_finish"), visibility("default"))); - -#undef g_file_create_readwrite -extern __typeof (g_file_create_readwrite) g_file_create_readwrite __attribute((alias("IA__g_file_create_readwrite"), visibility("default"))); - -#undef g_file_create_readwrite_async -extern __typeof (g_file_create_readwrite_async) g_file_create_readwrite_async __attribute((alias("IA__g_file_create_readwrite_async"), visibility("default"))); - -#undef g_file_create_readwrite_finish -extern __typeof (g_file_create_readwrite_finish) g_file_create_readwrite_finish __attribute((alias("IA__g_file_create_readwrite_finish"), visibility("default"))); - -#undef g_file_open_readwrite -extern __typeof (g_file_open_readwrite) g_file_open_readwrite __attribute((alias("IA__g_file_open_readwrite"), visibility("default"))); - -#undef g_file_open_readwrite_async -extern __typeof (g_file_open_readwrite_async) g_file_open_readwrite_async __attribute((alias("IA__g_file_open_readwrite_async"), visibility("default"))); - -#undef g_file_open_readwrite_finish -extern __typeof (g_file_open_readwrite_finish) g_file_open_readwrite_finish __attribute((alias("IA__g_file_open_readwrite_finish"), visibility("default"))); - -#undef g_file_replace_readwrite -extern __typeof (g_file_replace_readwrite) g_file_replace_readwrite __attribute((alias("IA__g_file_replace_readwrite"), visibility("default"))); - -#undef g_file_replace_readwrite_async -extern __typeof (g_file_replace_readwrite_async) g_file_replace_readwrite_async __attribute((alias("IA__g_file_replace_readwrite_async"), visibility("default"))); - -#undef g_file_replace_readwrite_finish -extern __typeof (g_file_replace_readwrite_finish) g_file_replace_readwrite_finish __attribute((alias("IA__g_file_replace_readwrite_finish"), visibility("default"))); - -#undef g_file_start_mountable -extern __typeof (g_file_start_mountable) g_file_start_mountable __attribute((alias("IA__g_file_start_mountable"), visibility("default"))); - -#undef g_file_start_mountable_finish -extern __typeof (g_file_start_mountable_finish) g_file_start_mountable_finish __attribute((alias("IA__g_file_start_mountable_finish"), visibility("default"))); - -#undef g_file_stop_mountable -extern __typeof (g_file_stop_mountable) g_file_stop_mountable __attribute((alias("IA__g_file_stop_mountable"), visibility("default"))); - -#undef g_file_stop_mountable_finish -extern __typeof (g_file_stop_mountable_finish) g_file_stop_mountable_finish __attribute((alias("IA__g_file_stop_mountable_finish"), visibility("default"))); - -#undef g_file_supports_thread_contexts -extern __typeof (g_file_supports_thread_contexts) g_file_supports_thread_contexts __attribute((alias("IA__g_file_supports_thread_contexts"), visibility("default"))); - -#undef g_file_poll_mountable -extern __typeof (g_file_poll_mountable) g_file_poll_mountable __attribute((alias("IA__g_file_poll_mountable"), visibility("default"))); - -#undef g_file_poll_mountable_finish -extern __typeof (g_file_poll_mountable_finish) g_file_poll_mountable_finish __attribute((alias("IA__g_file_poll_mountable_finish"), visibility("default"))); - -#ifndef G_DISABLE_DEPRECATED -#undef g_file_unmount_mountable -extern __typeof (g_file_unmount_mountable) g_file_unmount_mountable __attribute((alias("IA__g_file_unmount_mountable"), visibility("default"))); - -#undef g_file_unmount_mountable_finish -extern __typeof (g_file_unmount_mountable_finish) g_file_unmount_mountable_finish __attribute((alias("IA__g_file_unmount_mountable_finish"), visibility("default"))); - -#undef g_file_eject_mountable -extern __typeof (g_file_eject_mountable) g_file_eject_mountable __attribute((alias("IA__g_file_eject_mountable"), visibility("default"))); - -#undef g_file_eject_mountable_finish -extern __typeof (g_file_eject_mountable_finish) g_file_eject_mountable_finish __attribute((alias("IA__g_file_eject_mountable_finish"), visibility("default"))); - -#endif -#endif -#endif -#if IN_HEADER(__G_FILE_ENUMERATOR_H__) -#if IN_FILE(__G_FILE_ENUMERATOR_C__) -#undef g_file_enumerator_get_type -extern __typeof (g_file_enumerator_get_type) g_file_enumerator_get_type __attribute((alias("IA__g_file_enumerator_get_type"), visibility("default"))); - -#undef g_file_enumerator_next_file -extern __typeof (g_file_enumerator_next_file) g_file_enumerator_next_file __attribute((alias("IA__g_file_enumerator_next_file"), visibility("default"))); - -#undef g_file_enumerator_close -extern __typeof (g_file_enumerator_close) g_file_enumerator_close __attribute((alias("IA__g_file_enumerator_close"), visibility("default"))); - -#undef g_file_enumerator_next_files_async -extern __typeof (g_file_enumerator_next_files_async) g_file_enumerator_next_files_async __attribute((alias("IA__g_file_enumerator_next_files_async"), visibility("default"))); - -#undef g_file_enumerator_next_files_finish -extern __typeof (g_file_enumerator_next_files_finish) g_file_enumerator_next_files_finish __attribute((alias("IA__g_file_enumerator_next_files_finish"), visibility("default"))); - -#undef g_file_enumerator_close_async -extern __typeof (g_file_enumerator_close_async) g_file_enumerator_close_async __attribute((alias("IA__g_file_enumerator_close_async"), visibility("default"))); - -#undef g_file_enumerator_close_finish -extern __typeof (g_file_enumerator_close_finish) g_file_enumerator_close_finish __attribute((alias("IA__g_file_enumerator_close_finish"), visibility("default"))); - -#undef g_file_enumerator_is_closed -extern __typeof (g_file_enumerator_is_closed) g_file_enumerator_is_closed __attribute((alias("IA__g_file_enumerator_is_closed"), visibility("default"))); - -#undef g_file_enumerator_has_pending -extern __typeof (g_file_enumerator_has_pending) g_file_enumerator_has_pending __attribute((alias("IA__g_file_enumerator_has_pending"), visibility("default"))); - -#undef g_file_enumerator_set_pending -extern __typeof (g_file_enumerator_set_pending) g_file_enumerator_set_pending __attribute((alias("IA__g_file_enumerator_set_pending"), visibility("default"))); - -#undef g_file_enumerator_get_container -extern __typeof (g_file_enumerator_get_container) g_file_enumerator_get_container __attribute((alias("IA__g_file_enumerator_get_container"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_FILE_ICON_H__) -#if IN_FILE(__G_FILE_ICON_C__) -#undef g_file_icon_get_type -extern __typeof (g_file_icon_get_type) g_file_icon_get_type __attribute((alias("IA__g_file_icon_get_type"), visibility("default"))); - -#undef g_file_icon_new -extern __typeof (g_file_icon_new) g_file_icon_new __attribute((alias("IA__g_file_icon_new"), visibility("default"))); - -#undef g_file_icon_get_file -extern __typeof (g_file_icon_get_file) g_file_icon_get_file __attribute((alias("IA__g_file_icon_get_file"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_FILE_INFO_H__) -#if IN_FILE(__G_FILE_INFO_C__) -#undef g_file_info_get_type -extern __typeof (g_file_info_get_type) g_file_info_get_type __attribute((alias("IA__g_file_info_get_type"), visibility("default"))); - -#undef g_file_info_new -extern __typeof (g_file_info_new) g_file_info_new __attribute((alias("IA__g_file_info_new"), visibility("default"))); - -#undef g_file_info_dup -extern __typeof (g_file_info_dup) g_file_info_dup __attribute((alias("IA__g_file_info_dup"), visibility("default"))); - -#undef g_file_info_copy_into -extern __typeof (g_file_info_copy_into) g_file_info_copy_into __attribute((alias("IA__g_file_info_copy_into"), visibility("default"))); - -#undef g_file_info_has_attribute -extern __typeof (g_file_info_has_attribute) g_file_info_has_attribute __attribute((alias("IA__g_file_info_has_attribute"), visibility("default"))); - -#undef g_file_info_has_namespace -extern __typeof (g_file_info_has_namespace) g_file_info_has_namespace __attribute((alias("IA__g_file_info_has_namespace"), visibility("default"))); - -#undef g_file_info_list_attributes -extern __typeof (g_file_info_list_attributes) g_file_info_list_attributes __attribute((alias("IA__g_file_info_list_attributes"), visibility("default"))); - -#undef g_file_info_get_attribute_type -extern __typeof (g_file_info_get_attribute_type) g_file_info_get_attribute_type __attribute((alias("IA__g_file_info_get_attribute_type"), visibility("default"))); - -#undef g_file_info_remove_attribute -extern __typeof (g_file_info_remove_attribute) g_file_info_remove_attribute __attribute((alias("IA__g_file_info_remove_attribute"), visibility("default"))); - -#undef g_file_info_get_attribute_status -extern __typeof (g_file_info_get_attribute_status) g_file_info_get_attribute_status __attribute((alias("IA__g_file_info_get_attribute_status"), visibility("default"))); - -#undef g_file_info_get_attribute_data -extern __typeof (g_file_info_get_attribute_data) g_file_info_get_attribute_data __attribute((alias("IA__g_file_info_get_attribute_data"), visibility("default"))); - -#undef g_file_info_get_attribute_as_string -extern __typeof (g_file_info_get_attribute_as_string) g_file_info_get_attribute_as_string __attribute((alias("IA__g_file_info_get_attribute_as_string"), visibility("default"))); - -#undef g_file_info_get_attribute_string -extern __typeof (g_file_info_get_attribute_string) g_file_info_get_attribute_string __attribute((alias("IA__g_file_info_get_attribute_string"), visibility("default"))); - -#undef g_file_info_get_attribute_byte_string -extern __typeof (g_file_info_get_attribute_byte_string) g_file_info_get_attribute_byte_string __attribute((alias("IA__g_file_info_get_attribute_byte_string"), visibility("default"))); - -#undef g_file_info_get_attribute_boolean -extern __typeof (g_file_info_get_attribute_boolean) g_file_info_get_attribute_boolean __attribute((alias("IA__g_file_info_get_attribute_boolean"), visibility("default"))); - -#undef g_file_info_get_attribute_uint32 -extern __typeof (g_file_info_get_attribute_uint32) g_file_info_get_attribute_uint32 __attribute((alias("IA__g_file_info_get_attribute_uint32"), visibility("default"))); - -#undef g_file_info_get_attribute_int32 -extern __typeof (g_file_info_get_attribute_int32) g_file_info_get_attribute_int32 __attribute((alias("IA__g_file_info_get_attribute_int32"), visibility("default"))); - -#undef g_file_info_get_attribute_uint64 -extern __typeof (g_file_info_get_attribute_uint64) g_file_info_get_attribute_uint64 __attribute((alias("IA__g_file_info_get_attribute_uint64"), visibility("default"))); - -#undef g_file_info_get_attribute_int64 -extern __typeof (g_file_info_get_attribute_int64) g_file_info_get_attribute_int64 __attribute((alias("IA__g_file_info_get_attribute_int64"), visibility("default"))); - -#undef g_file_info_get_attribute_object -extern __typeof (g_file_info_get_attribute_object) g_file_info_get_attribute_object __attribute((alias("IA__g_file_info_get_attribute_object"), visibility("default"))); - -#undef g_file_info_get_attribute_stringv -extern __typeof (g_file_info_get_attribute_stringv) g_file_info_get_attribute_stringv __attribute((alias("IA__g_file_info_get_attribute_stringv"), visibility("default"))); - -#undef g_file_info_set_attribute_status -extern __typeof (g_file_info_set_attribute_status) g_file_info_set_attribute_status __attribute((alias("IA__g_file_info_set_attribute_status"), visibility("default"))); - -#undef g_file_info_set_attribute -extern __typeof (g_file_info_set_attribute) g_file_info_set_attribute __attribute((alias("IA__g_file_info_set_attribute"), visibility("default"))); - -#undef g_file_info_set_attribute_string -extern __typeof (g_file_info_set_attribute_string) g_file_info_set_attribute_string __attribute((alias("IA__g_file_info_set_attribute_string"), visibility("default"))); - -#undef g_file_info_set_attribute_byte_string -extern __typeof (g_file_info_set_attribute_byte_string) g_file_info_set_attribute_byte_string __attribute((alias("IA__g_file_info_set_attribute_byte_string"), visibility("default"))); - -#undef g_file_info_set_attribute_boolean -extern __typeof (g_file_info_set_attribute_boolean) g_file_info_set_attribute_boolean __attribute((alias("IA__g_file_info_set_attribute_boolean"), visibility("default"))); - -#undef g_file_info_set_attribute_uint32 -extern __typeof (g_file_info_set_attribute_uint32) g_file_info_set_attribute_uint32 __attribute((alias("IA__g_file_info_set_attribute_uint32"), visibility("default"))); - -#undef g_file_info_set_attribute_int32 -extern __typeof (g_file_info_set_attribute_int32) g_file_info_set_attribute_int32 __attribute((alias("IA__g_file_info_set_attribute_int32"), visibility("default"))); - -#undef g_file_info_set_attribute_uint64 -extern __typeof (g_file_info_set_attribute_uint64) g_file_info_set_attribute_uint64 __attribute((alias("IA__g_file_info_set_attribute_uint64"), visibility("default"))); - -#undef g_file_info_set_attribute_int64 -extern __typeof (g_file_info_set_attribute_int64) g_file_info_set_attribute_int64 __attribute((alias("IA__g_file_info_set_attribute_int64"), visibility("default"))); - -#undef g_file_info_set_attribute_object -extern __typeof (g_file_info_set_attribute_object) g_file_info_set_attribute_object __attribute((alias("IA__g_file_info_set_attribute_object"), visibility("default"))); - -#undef g_file_info_set_attribute_stringv -extern __typeof (g_file_info_set_attribute_stringv) g_file_info_set_attribute_stringv __attribute((alias("IA__g_file_info_set_attribute_stringv"), visibility("default"))); - -#undef g_file_info_clear_status -extern __typeof (g_file_info_clear_status) g_file_info_clear_status __attribute((alias("IA__g_file_info_clear_status"), visibility("default"))); - -#undef g_file_info_get_file_type -extern __typeof (g_file_info_get_file_type) g_file_info_get_file_type __attribute((alias("IA__g_file_info_get_file_type"), visibility("default"))); - -#undef g_file_info_get_is_hidden -extern __typeof (g_file_info_get_is_hidden) g_file_info_get_is_hidden __attribute((alias("IA__g_file_info_get_is_hidden"), visibility("default"))); - -#undef g_file_info_get_is_backup -extern __typeof (g_file_info_get_is_backup) g_file_info_get_is_backup __attribute((alias("IA__g_file_info_get_is_backup"), visibility("default"))); - -#undef g_file_info_get_is_symlink -extern __typeof (g_file_info_get_is_symlink) g_file_info_get_is_symlink __attribute((alias("IA__g_file_info_get_is_symlink"), visibility("default"))); - -#undef g_file_info_get_name -extern __typeof (g_file_info_get_name) g_file_info_get_name __attribute((alias("IA__g_file_info_get_name"), visibility("default"))); - -#undef g_file_info_get_display_name -extern __typeof (g_file_info_get_display_name) g_file_info_get_display_name __attribute((alias("IA__g_file_info_get_display_name"), visibility("default"))); - -#undef g_file_info_get_edit_name -extern __typeof (g_file_info_get_edit_name) g_file_info_get_edit_name __attribute((alias("IA__g_file_info_get_edit_name"), visibility("default"))); - -#undef g_file_info_get_icon -extern __typeof (g_file_info_get_icon) g_file_info_get_icon __attribute((alias("IA__g_file_info_get_icon"), visibility("default"))); - -#undef g_file_info_get_content_type -extern __typeof (g_file_info_get_content_type) g_file_info_get_content_type __attribute((alias("IA__g_file_info_get_content_type"), visibility("default"))); - -#undef g_file_info_get_size -extern __typeof (g_file_info_get_size) g_file_info_get_size __attribute((alias("IA__g_file_info_get_size"), visibility("default"))); - -#undef g_file_info_get_modification_time -extern __typeof (g_file_info_get_modification_time) g_file_info_get_modification_time __attribute((alias("IA__g_file_info_get_modification_time"), visibility("default"))); - -#undef g_file_info_get_symlink_target -extern __typeof (g_file_info_get_symlink_target) g_file_info_get_symlink_target __attribute((alias("IA__g_file_info_get_symlink_target"), visibility("default"))); - -#undef g_file_info_get_etag -extern __typeof (g_file_info_get_etag) g_file_info_get_etag __attribute((alias("IA__g_file_info_get_etag"), visibility("default"))); - -#undef g_file_info_get_sort_order -extern __typeof (g_file_info_get_sort_order) g_file_info_get_sort_order __attribute((alias("IA__g_file_info_get_sort_order"), visibility("default"))); - -#undef g_file_info_set_attribute_mask -extern __typeof (g_file_info_set_attribute_mask) g_file_info_set_attribute_mask __attribute((alias("IA__g_file_info_set_attribute_mask"), visibility("default"))); - -#undef g_file_info_unset_attribute_mask -extern __typeof (g_file_info_unset_attribute_mask) g_file_info_unset_attribute_mask __attribute((alias("IA__g_file_info_unset_attribute_mask"), visibility("default"))); - -#undef g_file_info_set_file_type -extern __typeof (g_file_info_set_file_type) g_file_info_set_file_type __attribute((alias("IA__g_file_info_set_file_type"), visibility("default"))); - -#undef g_file_info_set_is_hidden -extern __typeof (g_file_info_set_is_hidden) g_file_info_set_is_hidden __attribute((alias("IA__g_file_info_set_is_hidden"), visibility("default"))); - -#undef g_file_info_set_is_symlink -extern __typeof (g_file_info_set_is_symlink) g_file_info_set_is_symlink __attribute((alias("IA__g_file_info_set_is_symlink"), visibility("default"))); - -#undef g_file_info_set_name -extern __typeof (g_file_info_set_name) g_file_info_set_name __attribute((alias("IA__g_file_info_set_name"), visibility("default"))); - -#undef g_file_info_set_display_name -extern __typeof (g_file_info_set_display_name) g_file_info_set_display_name __attribute((alias("IA__g_file_info_set_display_name"), visibility("default"))); - -#undef g_file_info_set_edit_name -extern __typeof (g_file_info_set_edit_name) g_file_info_set_edit_name __attribute((alias("IA__g_file_info_set_edit_name"), visibility("default"))); - -#undef g_file_info_set_icon -extern __typeof (g_file_info_set_icon) g_file_info_set_icon __attribute((alias("IA__g_file_info_set_icon"), visibility("default"))); - -#undef g_file_info_set_content_type -extern __typeof (g_file_info_set_content_type) g_file_info_set_content_type __attribute((alias("IA__g_file_info_set_content_type"), visibility("default"))); - -#undef g_file_info_set_size -extern __typeof (g_file_info_set_size) g_file_info_set_size __attribute((alias("IA__g_file_info_set_size"), visibility("default"))); - -#undef g_file_info_set_modification_time -extern __typeof (g_file_info_set_modification_time) g_file_info_set_modification_time __attribute((alias("IA__g_file_info_set_modification_time"), visibility("default"))); - -#undef g_file_info_set_symlink_target -extern __typeof (g_file_info_set_symlink_target) g_file_info_set_symlink_target __attribute((alias("IA__g_file_info_set_symlink_target"), visibility("default"))); - -#undef g_file_info_set_sort_order -extern __typeof (g_file_info_set_sort_order) g_file_info_set_sort_order __attribute((alias("IA__g_file_info_set_sort_order"), visibility("default"))); - -#undef g_file_attribute_matcher_new -extern __typeof (g_file_attribute_matcher_new) g_file_attribute_matcher_new __attribute((alias("IA__g_file_attribute_matcher_new"), visibility("default"))); - -#undef g_file_attribute_matcher_ref -extern __typeof (g_file_attribute_matcher_ref) g_file_attribute_matcher_ref __attribute((alias("IA__g_file_attribute_matcher_ref"), visibility("default"))); - -#undef g_file_attribute_matcher_unref -extern __typeof (g_file_attribute_matcher_unref) g_file_attribute_matcher_unref __attribute((alias("IA__g_file_attribute_matcher_unref"), visibility("default"))); - -#undef g_file_attribute_matcher_matches -extern __typeof (g_file_attribute_matcher_matches) g_file_attribute_matcher_matches __attribute((alias("IA__g_file_attribute_matcher_matches"), visibility("default"))); - -#undef g_file_attribute_matcher_matches_only -extern __typeof (g_file_attribute_matcher_matches_only) g_file_attribute_matcher_matches_only __attribute((alias("IA__g_file_attribute_matcher_matches_only"), visibility("default"))); - -#undef g_file_attribute_matcher_enumerate_namespace -extern __typeof (g_file_attribute_matcher_enumerate_namespace) g_file_attribute_matcher_enumerate_namespace __attribute((alias("IA__g_file_attribute_matcher_enumerate_namespace"), visibility("default"))); - -#undef g_file_attribute_matcher_enumerate_next -extern __typeof (g_file_attribute_matcher_enumerate_next) g_file_attribute_matcher_enumerate_next __attribute((alias("IA__g_file_attribute_matcher_enumerate_next"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_FILE_INPUT_STREAM_H__) -#if IN_FILE(__G_FILE_INPUT_STREAM_C__) -#undef g_file_input_stream_get_type -extern __typeof (g_file_input_stream_get_type) g_file_input_stream_get_type __attribute((alias("IA__g_file_input_stream_get_type"), visibility("default"))); - -#undef g_file_input_stream_query_info -extern __typeof (g_file_input_stream_query_info) g_file_input_stream_query_info __attribute((alias("IA__g_file_input_stream_query_info"), visibility("default"))); - -#undef g_file_input_stream_query_info_async -extern __typeof (g_file_input_stream_query_info_async) g_file_input_stream_query_info_async __attribute((alias("IA__g_file_input_stream_query_info_async"), visibility("default"))); - -#undef g_file_input_stream_query_info_finish -extern __typeof (g_file_input_stream_query_info_finish) g_file_input_stream_query_info_finish __attribute((alias("IA__g_file_input_stream_query_info_finish"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_FILE_MONITOR_H__) -#if IN_FILE(__G_FILE_MONITOR_C__) -#undef g_file_monitor_get_type -extern __typeof (g_file_monitor_get_type) g_file_monitor_get_type __attribute((alias("IA__g_file_monitor_get_type"), visibility("default"))); - -#undef g_file_monitor_cancel -extern __typeof (g_file_monitor_cancel) g_file_monitor_cancel __attribute((alias("IA__g_file_monitor_cancel"), visibility("default"))); - -#undef g_file_monitor_is_cancelled -extern __typeof (g_file_monitor_is_cancelled) g_file_monitor_is_cancelled __attribute((alias("IA__g_file_monitor_is_cancelled"), visibility("default"))); - -#undef g_file_monitor_set_rate_limit -extern __typeof (g_file_monitor_set_rate_limit) g_file_monitor_set_rate_limit __attribute((alias("IA__g_file_monitor_set_rate_limit"), visibility("default"))); - -#undef g_file_monitor_emit_event -extern __typeof (g_file_monitor_emit_event) g_file_monitor_emit_event __attribute((alias("IA__g_file_monitor_emit_event"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_FILENAME_COMPLETER_H__) -#if IN_FILE(__G_FILENAME_COMPLETER_C__) -#undef g_filename_completer_get_type -extern __typeof (g_filename_completer_get_type) g_filename_completer_get_type __attribute((alias("IA__g_filename_completer_get_type"), visibility("default"))); - -#undef g_filename_completer_new -extern __typeof (g_filename_completer_new) g_filename_completer_new __attribute((alias("IA__g_filename_completer_new"), visibility("default"))); - -#undef g_filename_completer_get_completion_suffix -extern __typeof (g_filename_completer_get_completion_suffix) g_filename_completer_get_completion_suffix __attribute((alias("IA__g_filename_completer_get_completion_suffix"), visibility("default"))); - -#undef g_filename_completer_get_completions -extern __typeof (g_filename_completer_get_completions) g_filename_completer_get_completions __attribute((alias("IA__g_filename_completer_get_completions"), visibility("default"))); - -#undef g_filename_completer_set_dirs_only -extern __typeof (g_filename_completer_set_dirs_only) g_filename_completer_set_dirs_only __attribute((alias("IA__g_filename_completer_set_dirs_only"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_FILE_OUTPUT_STREAM_H__) -#if IN_FILE(__G_FILE_OUTPUT_STREAM_C__) -#undef g_file_output_stream_get_type -extern __typeof (g_file_output_stream_get_type) g_file_output_stream_get_type __attribute((alias("IA__g_file_output_stream_get_type"), visibility("default"))); - -#undef g_file_output_stream_query_info -extern __typeof (g_file_output_stream_query_info) g_file_output_stream_query_info __attribute((alias("IA__g_file_output_stream_query_info"), visibility("default"))); - -#undef g_file_output_stream_query_info_async -extern __typeof (g_file_output_stream_query_info_async) g_file_output_stream_query_info_async __attribute((alias("IA__g_file_output_stream_query_info_async"), visibility("default"))); - -#undef g_file_output_stream_query_info_finish -extern __typeof (g_file_output_stream_query_info_finish) g_file_output_stream_query_info_finish __attribute((alias("IA__g_file_output_stream_query_info_finish"), visibility("default"))); - -#undef g_file_output_stream_get_etag -extern __typeof (g_file_output_stream_get_etag) g_file_output_stream_get_etag __attribute((alias("IA__g_file_output_stream_get_etag"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_FILE_IO_STREAM_H__) -#if IN_FILE(__G_FILE_IO_STREAM_C__) -#undef g_file_io_stream_get_type -extern __typeof (g_file_io_stream_get_type) g_file_io_stream_get_type __attribute((alias("IA__g_file_io_stream_get_type"), visibility("default"))); - -#undef g_file_io_stream_query_info -extern __typeof (g_file_io_stream_query_info) g_file_io_stream_query_info __attribute((alias("IA__g_file_io_stream_query_info"), visibility("default"))); - -#undef g_file_io_stream_query_info_async -extern __typeof (g_file_io_stream_query_info_async) g_file_io_stream_query_info_async __attribute((alias("IA__g_file_io_stream_query_info_async"), visibility("default"))); - -#undef g_file_io_stream_query_info_finish -extern __typeof (g_file_io_stream_query_info_finish) g_file_io_stream_query_info_finish __attribute((alias("IA__g_file_io_stream_query_info_finish"), visibility("default"))); - -#undef g_file_io_stream_get_etag -extern __typeof (g_file_io_stream_get_etag) g_file_io_stream_get_etag __attribute((alias("IA__g_file_io_stream_get_etag"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_FILTER_INPUT_STREAM_H__) -#if IN_FILE(__G_FILTER_INPUT_STREAM_C__) -#undef g_filter_input_stream_get_type -extern __typeof (g_filter_input_stream_get_type) g_filter_input_stream_get_type __attribute((alias("IA__g_filter_input_stream_get_type"), visibility("default"))); - -#undef g_filter_input_stream_get_base_stream -extern __typeof (g_filter_input_stream_get_base_stream) g_filter_input_stream_get_base_stream __attribute((alias("IA__g_filter_input_stream_get_base_stream"), visibility("default"))); - -#undef g_filter_input_stream_get_close_base_stream -extern __typeof (g_filter_input_stream_get_close_base_stream) g_filter_input_stream_get_close_base_stream __attribute((alias("IA__g_filter_input_stream_get_close_base_stream"), visibility("default"))); - -#undef g_filter_input_stream_set_close_base_stream -extern __typeof (g_filter_input_stream_set_close_base_stream) g_filter_input_stream_set_close_base_stream __attribute((alias("IA__g_filter_input_stream_set_close_base_stream"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_FILTER_OUTPUT_STREAM_H__) -#if IN_FILE(__G_FILTER_OUTPUT_STREAM_C__) -#undef g_filter_output_stream_get_type -extern __typeof (g_filter_output_stream_get_type) g_filter_output_stream_get_type __attribute((alias("IA__g_filter_output_stream_get_type"), visibility("default"))); - -#undef g_filter_output_stream_get_base_stream -extern __typeof (g_filter_output_stream_get_base_stream) g_filter_output_stream_get_base_stream __attribute((alias("IA__g_filter_output_stream_get_base_stream"), visibility("default"))); - -#undef g_filter_output_stream_get_close_base_stream -extern __typeof (g_filter_output_stream_get_close_base_stream) g_filter_output_stream_get_close_base_stream __attribute((alias("IA__g_filter_output_stream_get_close_base_stream"), visibility("default"))); - -#undef g_filter_output_stream_set_close_base_stream -extern __typeof (g_filter_output_stream_set_close_base_stream) g_filter_output_stream_set_close_base_stream __attribute((alias("IA__g_filter_output_stream_set_close_base_stream"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_ICON_H__) -#if IN_FILE(__G_ICON_C__) -#undef g_icon_get_type -extern __typeof (g_icon_get_type) g_icon_get_type __attribute((alias("IA__g_icon_get_type"), visibility("default"))); - -#undef g_icon_hash -extern __typeof (g_icon_hash) g_icon_hash __attribute((alias("IA__g_icon_hash"), visibility("default"))); - -#undef g_icon_equal -extern __typeof (g_icon_equal) g_icon_equal __attribute((alias("IA__g_icon_equal"), visibility("default"))); - -#undef g_icon_to_string -extern __typeof (g_icon_to_string) g_icon_to_string __attribute((alias("IA__g_icon_to_string"), visibility("default"))); - -#undef g_icon_new_for_string -extern __typeof (g_icon_new_for_string) g_icon_new_for_string __attribute((alias("IA__g_icon_new_for_string"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_INPUT_STREAM_H__) -#if IN_FILE(__G_INPUT_STREAM_C__) -#undef g_input_stream_get_type -extern __typeof (g_input_stream_get_type) g_input_stream_get_type __attribute((alias("IA__g_input_stream_get_type"), visibility("default"))); - -#undef g_input_stream_read -extern __typeof (g_input_stream_read) g_input_stream_read __attribute((alias("IA__g_input_stream_read"), visibility("default"))); - -#undef g_input_stream_read_all -extern __typeof (g_input_stream_read_all) g_input_stream_read_all __attribute((alias("IA__g_input_stream_read_all"), visibility("default"))); - -#undef g_input_stream_skip -extern __typeof (g_input_stream_skip) g_input_stream_skip __attribute((alias("IA__g_input_stream_skip"), visibility("default"))); - -#undef g_input_stream_close -extern __typeof (g_input_stream_close) g_input_stream_close __attribute((alias("IA__g_input_stream_close"), visibility("default"))); - -#undef g_input_stream_read_async -extern __typeof (g_input_stream_read_async) g_input_stream_read_async __attribute((alias("IA__g_input_stream_read_async"), visibility("default"))); - -#undef g_input_stream_read_finish -extern __typeof (g_input_stream_read_finish) g_input_stream_read_finish __attribute((alias("IA__g_input_stream_read_finish"), visibility("default"))); - -#undef g_input_stream_skip_async -extern __typeof (g_input_stream_skip_async) g_input_stream_skip_async __attribute((alias("IA__g_input_stream_skip_async"), visibility("default"))); - -#undef g_input_stream_skip_finish -extern __typeof (g_input_stream_skip_finish) g_input_stream_skip_finish __attribute((alias("IA__g_input_stream_skip_finish"), visibility("default"))); - -#undef g_input_stream_close_async -extern __typeof (g_input_stream_close_async) g_input_stream_close_async __attribute((alias("IA__g_input_stream_close_async"), visibility("default"))); - -#undef g_input_stream_close_finish -extern __typeof (g_input_stream_close_finish) g_input_stream_close_finish __attribute((alias("IA__g_input_stream_close_finish"), visibility("default"))); - -#undef g_input_stream_is_closed -extern __typeof (g_input_stream_is_closed) g_input_stream_is_closed __attribute((alias("IA__g_input_stream_is_closed"), visibility("default"))); - -#undef g_input_stream_has_pending -extern __typeof (g_input_stream_has_pending) g_input_stream_has_pending __attribute((alias("IA__g_input_stream_has_pending"), visibility("default"))); - -#undef g_input_stream_set_pending -extern __typeof (g_input_stream_set_pending) g_input_stream_set_pending __attribute((alias("IA__g_input_stream_set_pending"), visibility("default"))); - -#undef g_input_stream_clear_pending -extern __typeof (g_input_stream_clear_pending) g_input_stream_clear_pending __attribute((alias("IA__g_input_stream_clear_pending"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_IO_STREAM_H__) -#if IN_FILE(__G_IO_STREAM_C__) -#undef g_io_stream_get_type -extern __typeof (g_io_stream_get_type) g_io_stream_get_type __attribute((alias("IA__g_io_stream_get_type"), visibility("default"))); - -#undef g_io_stream_get_input_stream -extern __typeof (g_io_stream_get_input_stream) g_io_stream_get_input_stream __attribute((alias("IA__g_io_stream_get_input_stream"), visibility("default"))); - -#undef g_io_stream_get_output_stream -extern __typeof (g_io_stream_get_output_stream) g_io_stream_get_output_stream __attribute((alias("IA__g_io_stream_get_output_stream"), visibility("default"))); - -#undef g_io_stream_close -extern __typeof (g_io_stream_close) g_io_stream_close __attribute((alias("IA__g_io_stream_close"), visibility("default"))); - -#undef g_io_stream_close_async -extern __typeof (g_io_stream_close_async) g_io_stream_close_async __attribute((alias("IA__g_io_stream_close_async"), visibility("default"))); - -#undef g_io_stream_close_finish -extern __typeof (g_io_stream_close_finish) g_io_stream_close_finish __attribute((alias("IA__g_io_stream_close_finish"), visibility("default"))); - -#undef g_io_stream_is_closed -extern __typeof (g_io_stream_is_closed) g_io_stream_is_closed __attribute((alias("IA__g_io_stream_is_closed"), visibility("default"))); - -#undef g_io_stream_has_pending -extern __typeof (g_io_stream_has_pending) g_io_stream_has_pending __attribute((alias("IA__g_io_stream_has_pending"), visibility("default"))); - -#undef g_io_stream_set_pending -extern __typeof (g_io_stream_set_pending) g_io_stream_set_pending __attribute((alias("IA__g_io_stream_set_pending"), visibility("default"))); - -#undef g_io_stream_clear_pending -extern __typeof (g_io_stream_clear_pending) g_io_stream_clear_pending __attribute((alias("IA__g_io_stream_clear_pending"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_IO_ERROR_H__) -#if IN_FILE(__G_IO_ERROR_C__) -#undef g_io_error_quark -extern __typeof (g_io_error_quark) g_io_error_quark __attribute((alias("IA__g_io_error_quark"), visibility("default"))); - -#undef g_io_error_from_errno -extern __typeof (g_io_error_from_errno) g_io_error_from_errno __attribute((alias("IA__g_io_error_from_errno"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_IO_MODULE_H__) -#if IN_FILE(__G_IO_MODULE_C__) -#undef g_io_module_get_type -extern __typeof (g_io_module_get_type) g_io_module_get_type __attribute((alias("IA__g_io_module_get_type"), visibility("default"))); - -#undef g_io_module_new -extern __typeof (g_io_module_new) g_io_module_new __attribute((alias("IA__g_io_module_new"), visibility("default"))); - -#undef g_io_modules_scan_all_in_directory -extern __typeof (g_io_modules_scan_all_in_directory) g_io_modules_scan_all_in_directory __attribute((alias("IA__g_io_modules_scan_all_in_directory"), visibility("default"))); - -#undef g_io_modules_load_all_in_directory -extern __typeof (g_io_modules_load_all_in_directory) g_io_modules_load_all_in_directory __attribute((alias("IA__g_io_modules_load_all_in_directory"), visibility("default"))); - -#undef g_io_extension_point_register -extern __typeof (g_io_extension_point_register) g_io_extension_point_register __attribute((alias("IA__g_io_extension_point_register"), visibility("default"))); - -#undef g_io_extension_point_lookup -extern __typeof (g_io_extension_point_lookup) g_io_extension_point_lookup __attribute((alias("IA__g_io_extension_point_lookup"), visibility("default"))); - -#undef g_io_extension_point_set_required_type -extern __typeof (g_io_extension_point_set_required_type) g_io_extension_point_set_required_type __attribute((alias("IA__g_io_extension_point_set_required_type"), visibility("default"))); - -#undef g_io_extension_point_get_required_type -extern __typeof (g_io_extension_point_get_required_type) g_io_extension_point_get_required_type __attribute((alias("IA__g_io_extension_point_get_required_type"), visibility("default"))); - -#undef g_io_extension_point_get_extensions -extern __typeof (g_io_extension_point_get_extensions) g_io_extension_point_get_extensions __attribute((alias("IA__g_io_extension_point_get_extensions"), visibility("default"))); - -#undef g_io_extension_point_get_extension_by_name -extern __typeof (g_io_extension_point_get_extension_by_name) g_io_extension_point_get_extension_by_name __attribute((alias("IA__g_io_extension_point_get_extension_by_name"), visibility("default"))); - -#undef g_io_extension_point_implement -extern __typeof (g_io_extension_point_implement) g_io_extension_point_implement __attribute((alias("IA__g_io_extension_point_implement"), visibility("default"))); - -#undef g_io_extension_get_type -extern __typeof (g_io_extension_get_type) g_io_extension_get_type __attribute((alias("IA__g_io_extension_get_type"), visibility("default"))); - -#undef g_io_extension_get_name -extern __typeof (g_io_extension_get_name) g_io_extension_get_name __attribute((alias("IA__g_io_extension_get_name"), visibility("default"))); - -#undef g_io_extension_get_priority -extern __typeof (g_io_extension_get_priority) g_io_extension_get_priority __attribute((alias("IA__g_io_extension_get_priority"), visibility("default"))); - -#undef g_io_extension_ref_class -extern __typeof (g_io_extension_ref_class) g_io_extension_ref_class __attribute((alias("IA__g_io_extension_ref_class"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_IO_SCHEDULER_H__) -#if IN_FILE(__G_IO_SCHEDULER_C__) -#undef g_io_scheduler_push_job -extern __typeof (g_io_scheduler_push_job) g_io_scheduler_push_job __attribute((alias("IA__g_io_scheduler_push_job"), visibility("default"))); - -#undef g_io_scheduler_cancel_all_jobs -extern __typeof (g_io_scheduler_cancel_all_jobs) g_io_scheduler_cancel_all_jobs __attribute((alias("IA__g_io_scheduler_cancel_all_jobs"), visibility("default"))); - -#undef g_io_scheduler_job_send_to_mainloop -extern __typeof (g_io_scheduler_job_send_to_mainloop) g_io_scheduler_job_send_to_mainloop __attribute((alias("IA__g_io_scheduler_job_send_to_mainloop"), visibility("default"))); - -#undef g_io_scheduler_job_send_to_mainloop_async -extern __typeof (g_io_scheduler_job_send_to_mainloop_async) g_io_scheduler_job_send_to_mainloop_async __attribute((alias("IA__g_io_scheduler_job_send_to_mainloop_async"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_LOADABLE_ICON_H__) -#if IN_FILE(__G_LOADABLE_ICON_C__) -#undef g_loadable_icon_get_type -extern __typeof (g_loadable_icon_get_type) g_loadable_icon_get_type __attribute((alias("IA__g_loadable_icon_get_type"), visibility("default"))); - -#undef g_loadable_icon_load -extern __typeof (g_loadable_icon_load) g_loadable_icon_load __attribute((alias("IA__g_loadable_icon_load"), visibility("default"))); - -#undef g_loadable_icon_load_async -extern __typeof (g_loadable_icon_load_async) g_loadable_icon_load_async __attribute((alias("IA__g_loadable_icon_load_async"), visibility("default"))); - -#undef g_loadable_icon_load_finish -extern __typeof (g_loadable_icon_load_finish) g_loadable_icon_load_finish __attribute((alias("IA__g_loadable_icon_load_finish"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_MEMORY_INPUT_STREAM_H__) -#if IN_FILE(__G_MEMORY_INPUT_STREAM_C__) -#undef g_memory_input_stream_get_type -extern __typeof (g_memory_input_stream_get_type) g_memory_input_stream_get_type __attribute((alias("IA__g_memory_input_stream_get_type"), visibility("default"))); - -#undef g_memory_input_stream_new -extern __typeof (g_memory_input_stream_new) g_memory_input_stream_new __attribute((alias("IA__g_memory_input_stream_new"), visibility("default"))); - -#undef g_memory_input_stream_new_from_data -extern __typeof (g_memory_input_stream_new_from_data) g_memory_input_stream_new_from_data __attribute((alias("IA__g_memory_input_stream_new_from_data"), visibility("default"))); - -#undef g_memory_input_stream_add_data -extern __typeof (g_memory_input_stream_add_data) g_memory_input_stream_add_data __attribute((alias("IA__g_memory_input_stream_add_data"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_MEMORY_OUTPUT_STREAM_H__) -#if IN_FILE(__G_MEMORY_OUTPUT_STREAM_C__) -#undef g_memory_output_stream_get_type -extern __typeof (g_memory_output_stream_get_type) g_memory_output_stream_get_type __attribute((alias("IA__g_memory_output_stream_get_type"), visibility("default"))); - -#undef g_memory_output_stream_new -extern __typeof (g_memory_output_stream_new) g_memory_output_stream_new __attribute((alias("IA__g_memory_output_stream_new"), visibility("default"))); - -#undef g_memory_output_stream_get_data -extern __typeof (g_memory_output_stream_get_data) g_memory_output_stream_get_data __attribute((alias("IA__g_memory_output_stream_get_data"), visibility("default"))); - -#undef g_memory_output_stream_get_data_size -extern __typeof (g_memory_output_stream_get_data_size) g_memory_output_stream_get_data_size __attribute((alias("IA__g_memory_output_stream_get_data_size"), visibility("default"))); - -#undef g_memory_output_stream_get_size -extern __typeof (g_memory_output_stream_get_size) g_memory_output_stream_get_size __attribute((alias("IA__g_memory_output_stream_get_size"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_MOUNT_OPERATION_H__) -#if IN_FILE(__G_MOUNT_OPERATION_C__) -#undef g_mount_operation_get_type -extern __typeof (g_mount_operation_get_type) g_mount_operation_get_type __attribute((alias("IA__g_mount_operation_get_type"), visibility("default"))); - -#undef g_mount_operation_new -extern __typeof (g_mount_operation_new) g_mount_operation_new __attribute((alias("IA__g_mount_operation_new"), visibility("default"))); - -#undef g_mount_operation_get_username -extern __typeof (g_mount_operation_get_username) g_mount_operation_get_username __attribute((alias("IA__g_mount_operation_get_username"), visibility("default"))); - -#undef g_mount_operation_set_username -extern __typeof (g_mount_operation_set_username) g_mount_operation_set_username __attribute((alias("IA__g_mount_operation_set_username"), visibility("default"))); - -#undef g_mount_operation_get_password -extern __typeof (g_mount_operation_get_password) g_mount_operation_get_password __attribute((alias("IA__g_mount_operation_get_password"), visibility("default"))); - -#undef g_mount_operation_set_password -extern __typeof (g_mount_operation_set_password) g_mount_operation_set_password __attribute((alias("IA__g_mount_operation_set_password"), visibility("default"))); - -#undef g_mount_operation_get_anonymous -extern __typeof (g_mount_operation_get_anonymous) g_mount_operation_get_anonymous __attribute((alias("IA__g_mount_operation_get_anonymous"), visibility("default"))); - -#undef g_mount_operation_set_anonymous -extern __typeof (g_mount_operation_set_anonymous) g_mount_operation_set_anonymous __attribute((alias("IA__g_mount_operation_set_anonymous"), visibility("default"))); - -#undef g_mount_operation_get_domain -extern __typeof (g_mount_operation_get_domain) g_mount_operation_get_domain __attribute((alias("IA__g_mount_operation_get_domain"), visibility("default"))); - -#undef g_mount_operation_set_domain -extern __typeof (g_mount_operation_set_domain) g_mount_operation_set_domain __attribute((alias("IA__g_mount_operation_set_domain"), visibility("default"))); - -#undef g_mount_operation_get_password_save -extern __typeof (g_mount_operation_get_password_save) g_mount_operation_get_password_save __attribute((alias("IA__g_mount_operation_get_password_save"), visibility("default"))); - -#undef g_mount_operation_set_password_save -extern __typeof (g_mount_operation_set_password_save) g_mount_operation_set_password_save __attribute((alias("IA__g_mount_operation_set_password_save"), visibility("default"))); - -#undef g_mount_operation_get_choice -extern __typeof (g_mount_operation_get_choice) g_mount_operation_get_choice __attribute((alias("IA__g_mount_operation_get_choice"), visibility("default"))); - -#undef g_mount_operation_set_choice -extern __typeof (g_mount_operation_set_choice) g_mount_operation_set_choice __attribute((alias("IA__g_mount_operation_set_choice"), visibility("default"))); - -#undef g_mount_operation_reply -extern __typeof (g_mount_operation_reply) g_mount_operation_reply __attribute((alias("IA__g_mount_operation_reply"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_OUTPUT_STREAM_H__) -#if IN_FILE(__G_OUTPUT_STREAM_C__) -#undef g_output_stream_get_type -extern __typeof (g_output_stream_get_type) g_output_stream_get_type __attribute((alias("IA__g_output_stream_get_type"), visibility("default"))); - -#undef g_output_stream_write -extern __typeof (g_output_stream_write) g_output_stream_write __attribute((alias("IA__g_output_stream_write"), visibility("default"))); - -#undef g_output_stream_write_all -extern __typeof (g_output_stream_write_all) g_output_stream_write_all __attribute((alias("IA__g_output_stream_write_all"), visibility("default"))); - -#undef g_output_stream_splice -extern __typeof (g_output_stream_splice) g_output_stream_splice __attribute((alias("IA__g_output_stream_splice"), visibility("default"))); - -#undef g_output_stream_flush -extern __typeof (g_output_stream_flush) g_output_stream_flush __attribute((alias("IA__g_output_stream_flush"), visibility("default"))); - -#undef g_output_stream_close -extern __typeof (g_output_stream_close) g_output_stream_close __attribute((alias("IA__g_output_stream_close"), visibility("default"))); - -#undef g_output_stream_write_async -extern __typeof (g_output_stream_write_async) g_output_stream_write_async __attribute((alias("IA__g_output_stream_write_async"), visibility("default"))); - -#undef g_output_stream_write_finish -extern __typeof (g_output_stream_write_finish) g_output_stream_write_finish __attribute((alias("IA__g_output_stream_write_finish"), visibility("default"))); - -#undef g_output_stream_splice_async -extern __typeof (g_output_stream_splice_async) g_output_stream_splice_async __attribute((alias("IA__g_output_stream_splice_async"), visibility("default"))); - -#undef g_output_stream_splice_finish -extern __typeof (g_output_stream_splice_finish) g_output_stream_splice_finish __attribute((alias("IA__g_output_stream_splice_finish"), visibility("default"))); - -#undef g_output_stream_flush_async -extern __typeof (g_output_stream_flush_async) g_output_stream_flush_async __attribute((alias("IA__g_output_stream_flush_async"), visibility("default"))); - -#undef g_output_stream_flush_finish -extern __typeof (g_output_stream_flush_finish) g_output_stream_flush_finish __attribute((alias("IA__g_output_stream_flush_finish"), visibility("default"))); - -#undef g_output_stream_close_async -extern __typeof (g_output_stream_close_async) g_output_stream_close_async __attribute((alias("IA__g_output_stream_close_async"), visibility("default"))); - -#undef g_output_stream_close_finish -extern __typeof (g_output_stream_close_finish) g_output_stream_close_finish __attribute((alias("IA__g_output_stream_close_finish"), visibility("default"))); - -#undef g_output_stream_is_closed -extern __typeof (g_output_stream_is_closed) g_output_stream_is_closed __attribute((alias("IA__g_output_stream_is_closed"), visibility("default"))); - -#undef g_output_stream_is_closing -extern __typeof (g_output_stream_is_closing) g_output_stream_is_closing __attribute((alias("IA__g_output_stream_is_closing"), visibility("default"))); - -#undef g_output_stream_has_pending -extern __typeof (g_output_stream_has_pending) g_output_stream_has_pending __attribute((alias("IA__g_output_stream_has_pending"), visibility("default"))); - -#undef g_output_stream_set_pending -extern __typeof (g_output_stream_set_pending) g_output_stream_set_pending __attribute((alias("IA__g_output_stream_set_pending"), visibility("default"))); - -#undef g_output_stream_clear_pending -extern __typeof (g_output_stream_clear_pending) g_output_stream_clear_pending __attribute((alias("IA__g_output_stream_clear_pending"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_SEEKABLE_H__) -#if IN_FILE(__G_SEEKABLE_C__) -#undef g_seekable_get_type -extern __typeof (g_seekable_get_type) g_seekable_get_type __attribute((alias("IA__g_seekable_get_type"), visibility("default"))); - -#undef g_seekable_tell -extern __typeof (g_seekable_tell) g_seekable_tell __attribute((alias("IA__g_seekable_tell"), visibility("default"))); - -#undef g_seekable_can_seek -extern __typeof (g_seekable_can_seek) g_seekable_can_seek __attribute((alias("IA__g_seekable_can_seek"), visibility("default"))); - -#undef g_seekable_seek -extern __typeof (g_seekable_seek) g_seekable_seek __attribute((alias("IA__g_seekable_seek"), visibility("default"))); - -#undef g_seekable_can_truncate -extern __typeof (g_seekable_can_truncate) g_seekable_can_truncate __attribute((alias("IA__g_seekable_can_truncate"), visibility("default"))); - -#undef g_seekable_truncate -extern __typeof (g_seekable_truncate) g_seekable_truncate __attribute((alias("IA__g_seekable_truncate"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_SIMPLE_ASYNC_RESULT_H__) -#if IN_FILE(__G_SIMPLE_ASYNC_RESULT_C__) -#undef g_simple_async_result_get_type -extern __typeof (g_simple_async_result_get_type) g_simple_async_result_get_type __attribute((alias("IA__g_simple_async_result_get_type"), visibility("default"))); - -#undef g_simple_async_result_new -extern __typeof (g_simple_async_result_new) g_simple_async_result_new __attribute((alias("IA__g_simple_async_result_new"), visibility("default"))); - -#undef g_simple_async_result_new_error -extern __typeof (g_simple_async_result_new_error) g_simple_async_result_new_error __attribute((alias("IA__g_simple_async_result_new_error"), visibility("default"))); - -#undef g_simple_async_result_new_from_error -extern __typeof (g_simple_async_result_new_from_error) g_simple_async_result_new_from_error __attribute((alias("IA__g_simple_async_result_new_from_error"), visibility("default"))); - -#undef g_simple_async_result_set_op_res_gpointer -extern __typeof (g_simple_async_result_set_op_res_gpointer) g_simple_async_result_set_op_res_gpointer __attribute((alias("IA__g_simple_async_result_set_op_res_gpointer"), visibility("default"))); - -#undef g_simple_async_result_get_op_res_gpointer -extern __typeof (g_simple_async_result_get_op_res_gpointer) g_simple_async_result_get_op_res_gpointer __attribute((alias("IA__g_simple_async_result_get_op_res_gpointer"), visibility("default"))); - -#undef g_simple_async_result_set_op_res_gssize -extern __typeof (g_simple_async_result_set_op_res_gssize) g_simple_async_result_set_op_res_gssize __attribute((alias("IA__g_simple_async_result_set_op_res_gssize"), visibility("default"))); - -#undef g_simple_async_result_get_op_res_gssize -extern __typeof (g_simple_async_result_get_op_res_gssize) g_simple_async_result_get_op_res_gssize __attribute((alias("IA__g_simple_async_result_get_op_res_gssize"), visibility("default"))); - -#undef g_simple_async_result_set_op_res_gboolean -extern __typeof (g_simple_async_result_set_op_res_gboolean) g_simple_async_result_set_op_res_gboolean __attribute((alias("IA__g_simple_async_result_set_op_res_gboolean"), visibility("default"))); - -#undef g_simple_async_result_get_op_res_gboolean -extern __typeof (g_simple_async_result_get_op_res_gboolean) g_simple_async_result_get_op_res_gboolean __attribute((alias("IA__g_simple_async_result_get_op_res_gboolean"), visibility("default"))); - -#undef g_simple_async_result_get_source_tag -extern __typeof (g_simple_async_result_get_source_tag) g_simple_async_result_get_source_tag __attribute((alias("IA__g_simple_async_result_get_source_tag"), visibility("default"))); - -#undef g_simple_async_result_set_handle_cancellation -extern __typeof (g_simple_async_result_set_handle_cancellation) g_simple_async_result_set_handle_cancellation __attribute((alias("IA__g_simple_async_result_set_handle_cancellation"), visibility("default"))); - -#undef g_simple_async_result_complete -extern __typeof (g_simple_async_result_complete) g_simple_async_result_complete __attribute((alias("IA__g_simple_async_result_complete"), visibility("default"))); - -#undef g_simple_async_result_complete_in_idle -extern __typeof (g_simple_async_result_complete_in_idle) g_simple_async_result_complete_in_idle __attribute((alias("IA__g_simple_async_result_complete_in_idle"), visibility("default"))); - -#undef g_simple_async_result_run_in_thread -extern __typeof (g_simple_async_result_run_in_thread) g_simple_async_result_run_in_thread __attribute((alias("IA__g_simple_async_result_run_in_thread"), visibility("default"))); - -#undef g_simple_async_result_set_from_error -extern __typeof (g_simple_async_result_set_from_error) g_simple_async_result_set_from_error __attribute((alias("IA__g_simple_async_result_set_from_error"), visibility("default"))); - -#undef g_simple_async_result_propagate_error -extern __typeof (g_simple_async_result_propagate_error) g_simple_async_result_propagate_error __attribute((alias("IA__g_simple_async_result_propagate_error"), visibility("default"))); - -#undef g_simple_async_result_set_error -extern __typeof (g_simple_async_result_set_error) g_simple_async_result_set_error __attribute((alias("IA__g_simple_async_result_set_error"), visibility("default"))); - -#undef g_simple_async_result_set_error_va -extern __typeof (g_simple_async_result_set_error_va) g_simple_async_result_set_error_va __attribute((alias("IA__g_simple_async_result_set_error_va"), visibility("default"))); - -#undef g_simple_async_result_is_valid -extern __typeof (g_simple_async_result_is_valid) g_simple_async_result_is_valid __attribute((alias("IA__g_simple_async_result_is_valid"), visibility("default"))); - -#undef g_simple_async_report_error_in_idle -extern __typeof (g_simple_async_report_error_in_idle) g_simple_async_report_error_in_idle __attribute((alias("IA__g_simple_async_report_error_in_idle"), visibility("default"))); - -#undef g_simple_async_report_gerror_in_idle -extern __typeof (g_simple_async_report_gerror_in_idle) g_simple_async_report_gerror_in_idle __attribute((alias("IA__g_simple_async_report_gerror_in_idle"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_THEMED_ICON_H__) -#if IN_FILE(__G_THEMED_ICON_C__) -#undef g_themed_icon_get_type -extern __typeof (g_themed_icon_get_type) g_themed_icon_get_type __attribute((alias("IA__g_themed_icon_get_type"), visibility("default"))); - -#undef g_themed_icon_new -extern __typeof (g_themed_icon_new) g_themed_icon_new __attribute((alias("IA__g_themed_icon_new"), visibility("default"))); - -#undef g_themed_icon_new_with_default_fallbacks -extern __typeof (g_themed_icon_new_with_default_fallbacks) g_themed_icon_new_with_default_fallbacks __attribute((alias("IA__g_themed_icon_new_with_default_fallbacks"), visibility("default"))); - -#undef g_themed_icon_new_from_names -extern __typeof (g_themed_icon_new_from_names) g_themed_icon_new_from_names __attribute((alias("IA__g_themed_icon_new_from_names"), visibility("default"))); - -#undef g_themed_icon_get_names -extern __typeof (g_themed_icon_get_names) g_themed_icon_get_names __attribute((alias("IA__g_themed_icon_get_names"), visibility("default"))); - -#undef g_themed_icon_prepend_name -extern __typeof (g_themed_icon_prepend_name) g_themed_icon_prepend_name __attribute((alias("IA__g_themed_icon_prepend_name"), visibility("default"))); - -#undef g_themed_icon_append_name -extern __typeof (g_themed_icon_append_name) g_themed_icon_append_name __attribute((alias("IA__g_themed_icon_append_name"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_UNIX_MOUNTS_H__) -#if IN_FILE(__G_UNIX_MOUNTS_C__) -#ifdef G_OS_UNIX -#undef g_unix_mount_free -extern __typeof (g_unix_mount_free) g_unix_mount_free __attribute((alias("IA__g_unix_mount_free"), visibility("default"))); - -#undef g_unix_mount_point_free -extern __typeof (g_unix_mount_point_free) g_unix_mount_point_free __attribute((alias("IA__g_unix_mount_point_free"), visibility("default"))); - -#undef g_unix_mount_compare -extern __typeof (g_unix_mount_compare) g_unix_mount_compare __attribute((alias("IA__g_unix_mount_compare"), visibility("default"))); - -#undef g_unix_mount_get_mount_path -extern __typeof (g_unix_mount_get_mount_path) g_unix_mount_get_mount_path __attribute((alias("IA__g_unix_mount_get_mount_path"), visibility("default"))); - -#undef g_unix_mount_get_device_path -extern __typeof (g_unix_mount_get_device_path) g_unix_mount_get_device_path __attribute((alias("IA__g_unix_mount_get_device_path"), visibility("default"))); - -#undef g_unix_mount_get_fs_type -extern __typeof (g_unix_mount_get_fs_type) g_unix_mount_get_fs_type __attribute((alias("IA__g_unix_mount_get_fs_type"), visibility("default"))); - -#undef g_unix_mount_is_readonly -extern __typeof (g_unix_mount_is_readonly) g_unix_mount_is_readonly __attribute((alias("IA__g_unix_mount_is_readonly"), visibility("default"))); - -#undef g_unix_mount_is_system_internal -extern __typeof (g_unix_mount_is_system_internal) g_unix_mount_is_system_internal __attribute((alias("IA__g_unix_mount_is_system_internal"), visibility("default"))); - -#undef g_unix_mount_guess_can_eject -extern __typeof (g_unix_mount_guess_can_eject) g_unix_mount_guess_can_eject __attribute((alias("IA__g_unix_mount_guess_can_eject"), visibility("default"))); - -#undef g_unix_mount_guess_should_display -extern __typeof (g_unix_mount_guess_should_display) g_unix_mount_guess_should_display __attribute((alias("IA__g_unix_mount_guess_should_display"), visibility("default"))); - -#undef g_unix_mount_guess_name -extern __typeof (g_unix_mount_guess_name) g_unix_mount_guess_name __attribute((alias("IA__g_unix_mount_guess_name"), visibility("default"))); - -#undef g_unix_mount_guess_icon -extern __typeof (g_unix_mount_guess_icon) g_unix_mount_guess_icon __attribute((alias("IA__g_unix_mount_guess_icon"), visibility("default"))); - -#undef g_unix_mount_point_compare -extern __typeof (g_unix_mount_point_compare) g_unix_mount_point_compare __attribute((alias("IA__g_unix_mount_point_compare"), visibility("default"))); - -#undef g_unix_mount_point_get_mount_path -extern __typeof (g_unix_mount_point_get_mount_path) g_unix_mount_point_get_mount_path __attribute((alias("IA__g_unix_mount_point_get_mount_path"), visibility("default"))); - -#undef g_unix_mount_point_get_device_path -extern __typeof (g_unix_mount_point_get_device_path) g_unix_mount_point_get_device_path __attribute((alias("IA__g_unix_mount_point_get_device_path"), visibility("default"))); - -#undef g_unix_mount_point_get_fs_type -extern __typeof (g_unix_mount_point_get_fs_type) g_unix_mount_point_get_fs_type __attribute((alias("IA__g_unix_mount_point_get_fs_type"), visibility("default"))); - -#undef g_unix_mount_point_is_readonly -extern __typeof (g_unix_mount_point_is_readonly) g_unix_mount_point_is_readonly __attribute((alias("IA__g_unix_mount_point_is_readonly"), visibility("default"))); - -#undef g_unix_mount_point_is_user_mountable -extern __typeof (g_unix_mount_point_is_user_mountable) g_unix_mount_point_is_user_mountable __attribute((alias("IA__g_unix_mount_point_is_user_mountable"), visibility("default"))); - -#undef g_unix_mount_point_is_loopback -extern __typeof (g_unix_mount_point_is_loopback) g_unix_mount_point_is_loopback __attribute((alias("IA__g_unix_mount_point_is_loopback"), visibility("default"))); - -#undef g_unix_mount_point_guess_can_eject -extern __typeof (g_unix_mount_point_guess_can_eject) g_unix_mount_point_guess_can_eject __attribute((alias("IA__g_unix_mount_point_guess_can_eject"), visibility("default"))); - -#undef g_unix_mount_point_guess_name -extern __typeof (g_unix_mount_point_guess_name) g_unix_mount_point_guess_name __attribute((alias("IA__g_unix_mount_point_guess_name"), visibility("default"))); - -#undef g_unix_mount_point_guess_icon -extern __typeof (g_unix_mount_point_guess_icon) g_unix_mount_point_guess_icon __attribute((alias("IA__g_unix_mount_point_guess_icon"), visibility("default"))); - -#undef g_unix_mount_points_get -extern __typeof (g_unix_mount_points_get) g_unix_mount_points_get __attribute((alias("IA__g_unix_mount_points_get"), visibility("default"))); - -#undef g_unix_mounts_get -extern __typeof (g_unix_mounts_get) g_unix_mounts_get __attribute((alias("IA__g_unix_mounts_get"), visibility("default"))); - -#undef g_unix_mount_at -extern __typeof (g_unix_mount_at) g_unix_mount_at __attribute((alias("IA__g_unix_mount_at"), visibility("default"))); - -#undef g_unix_mounts_changed_since -extern __typeof (g_unix_mounts_changed_since) g_unix_mounts_changed_since __attribute((alias("IA__g_unix_mounts_changed_since"), visibility("default"))); - -#undef g_unix_mount_points_changed_since -extern __typeof (g_unix_mount_points_changed_since) g_unix_mount_points_changed_since __attribute((alias("IA__g_unix_mount_points_changed_since"), visibility("default"))); - -#undef g_unix_mount_monitor_get_type -extern __typeof (g_unix_mount_monitor_get_type) g_unix_mount_monitor_get_type __attribute((alias("IA__g_unix_mount_monitor_get_type"), visibility("default"))); - -#undef g_unix_mount_monitor_new -extern __typeof (g_unix_mount_monitor_new) g_unix_mount_monitor_new __attribute((alias("IA__g_unix_mount_monitor_new"), visibility("default"))); - -#undef g_unix_mount_monitor_set_rate_limit -extern __typeof (g_unix_mount_monitor_set_rate_limit) g_unix_mount_monitor_set_rate_limit __attribute((alias("IA__g_unix_mount_monitor_set_rate_limit"), visibility("default"))); - -#undef g_unix_is_mount_path_system_internal -extern __typeof (g_unix_is_mount_path_system_internal) g_unix_is_mount_path_system_internal __attribute((alias("IA__g_unix_is_mount_path_system_internal"), visibility("default"))); - -#endif /* G_OS_UNIX */ -#endif -#endif -#if IN_HEADER(__G_UNIX_INPUT_STREAM_H__) -#if IN_FILE(__G_UNIX_INPUT_STREAM_C__) -#ifdef G_OS_UNIX -#undef g_unix_input_stream_get_type -extern __typeof (g_unix_input_stream_get_type) g_unix_input_stream_get_type __attribute((alias("IA__g_unix_input_stream_get_type"), visibility("default"))); - -#undef g_unix_input_stream_new -extern __typeof (g_unix_input_stream_new) g_unix_input_stream_new __attribute((alias("IA__g_unix_input_stream_new"), visibility("default"))); - -#undef g_unix_input_stream_set_close_fd -extern __typeof (g_unix_input_stream_set_close_fd) g_unix_input_stream_set_close_fd __attribute((alias("IA__g_unix_input_stream_set_close_fd"), visibility("default"))); - -#undef g_unix_input_stream_get_close_fd -extern __typeof (g_unix_input_stream_get_close_fd) g_unix_input_stream_get_close_fd __attribute((alias("IA__g_unix_input_stream_get_close_fd"), visibility("default"))); - -#undef g_unix_input_stream_get_fd -extern __typeof (g_unix_input_stream_get_fd) g_unix_input_stream_get_fd __attribute((alias("IA__g_unix_input_stream_get_fd"), visibility("default"))); - -#endif /* G_OS_UNIX */ -#endif -#endif -#if IN_HEADER(__G_UNIX_OUTPUT_STREAM_H__) -#if IN_FILE(__G_UNIX_OUTPUT_STREAM_C__) -#ifdef G_OS_UNIX -#undef g_unix_output_stream_get_type -extern __typeof (g_unix_output_stream_get_type) g_unix_output_stream_get_type __attribute((alias("IA__g_unix_output_stream_get_type"), visibility("default"))); - -#undef g_unix_output_stream_new -extern __typeof (g_unix_output_stream_new) g_unix_output_stream_new __attribute((alias("IA__g_unix_output_stream_new"), visibility("default"))); - -#undef g_unix_output_stream_set_close_fd -extern __typeof (g_unix_output_stream_set_close_fd) g_unix_output_stream_set_close_fd __attribute((alias("IA__g_unix_output_stream_set_close_fd"), visibility("default"))); - -#undef g_unix_output_stream_get_close_fd -extern __typeof (g_unix_output_stream_get_close_fd) g_unix_output_stream_get_close_fd __attribute((alias("IA__g_unix_output_stream_get_close_fd"), visibility("default"))); - -#undef g_unix_output_stream_get_fd -extern __typeof (g_unix_output_stream_get_fd) g_unix_output_stream_get_fd __attribute((alias("IA__g_unix_output_stream_get_fd"), visibility("default"))); - -#endif /* G_OS_UNIX */ -#endif -#endif -#if IN_HEADER(__G_MOUNT_H__) -#if IN_FILE(__G_MOUNT_C__) -#undef g_mount_get_type -extern __typeof (g_mount_get_type) g_mount_get_type __attribute((alias("IA__g_mount_get_type"), visibility("default"))); - -#undef g_mount_get_root -extern __typeof (g_mount_get_root) g_mount_get_root __attribute((alias("IA__g_mount_get_root"), visibility("default"))); - -#undef g_mount_get_name -extern __typeof (g_mount_get_name) g_mount_get_name __attribute((alias("IA__g_mount_get_name"), visibility("default"))); - -#undef g_mount_get_icon -extern __typeof (g_mount_get_icon) g_mount_get_icon __attribute((alias("IA__g_mount_get_icon"), visibility("default"))); - -#undef g_mount_get_uuid -extern __typeof (g_mount_get_uuid) g_mount_get_uuid __attribute((alias("IA__g_mount_get_uuid"), visibility("default"))); - -#undef g_mount_get_volume -extern __typeof (g_mount_get_volume) g_mount_get_volume __attribute((alias("IA__g_mount_get_volume"), visibility("default"))); - -#undef g_mount_get_drive -extern __typeof (g_mount_get_drive) g_mount_get_drive __attribute((alias("IA__g_mount_get_drive"), visibility("default"))); - -#undef g_mount_can_unmount -extern __typeof (g_mount_can_unmount) g_mount_can_unmount __attribute((alias("IA__g_mount_can_unmount"), visibility("default"))); - -#undef g_mount_can_eject -extern __typeof (g_mount_can_eject) g_mount_can_eject __attribute((alias("IA__g_mount_can_eject"), visibility("default"))); - -#undef g_mount_unmount_with_operation -extern __typeof (g_mount_unmount_with_operation) g_mount_unmount_with_operation __attribute((alias("IA__g_mount_unmount_with_operation"), visibility("default"))); - -#undef g_mount_unmount_with_operation_finish -extern __typeof (g_mount_unmount_with_operation_finish) g_mount_unmount_with_operation_finish __attribute((alias("IA__g_mount_unmount_with_operation_finish"), visibility("default"))); - -#undef g_mount_eject_with_operation -extern __typeof (g_mount_eject_with_operation) g_mount_eject_with_operation __attribute((alias("IA__g_mount_eject_with_operation"), visibility("default"))); - -#undef g_mount_eject_with_operation_finish -extern __typeof (g_mount_eject_with_operation_finish) g_mount_eject_with_operation_finish __attribute((alias("IA__g_mount_eject_with_operation_finish"), visibility("default"))); - -#undef g_mount_get_default_location -extern __typeof (g_mount_get_default_location) g_mount_get_default_location __attribute((alias("IA__g_mount_get_default_location"), visibility("default"))); - -#undef g_mount_remount -extern __typeof (g_mount_remount) g_mount_remount __attribute((alias("IA__g_mount_remount"), visibility("default"))); - -#undef g_mount_remount_finish -extern __typeof (g_mount_remount_finish) g_mount_remount_finish __attribute((alias("IA__g_mount_remount_finish"), visibility("default"))); - -#undef g_mount_guess_content_type -extern __typeof (g_mount_guess_content_type) g_mount_guess_content_type __attribute((alias("IA__g_mount_guess_content_type"), visibility("default"))); - -#undef g_mount_guess_content_type_finish -extern __typeof (g_mount_guess_content_type_finish) g_mount_guess_content_type_finish __attribute((alias("IA__g_mount_guess_content_type_finish"), visibility("default"))); - -#undef g_mount_guess_content_type_sync -extern __typeof (g_mount_guess_content_type_sync) g_mount_guess_content_type_sync __attribute((alias("IA__g_mount_guess_content_type_sync"), visibility("default"))); - -#undef g_mount_is_shadowed -extern __typeof (g_mount_is_shadowed) g_mount_is_shadowed __attribute((alias("IA__g_mount_is_shadowed"), visibility("default"))); - -#undef g_mount_shadow -extern __typeof (g_mount_shadow) g_mount_shadow __attribute((alias("IA__g_mount_shadow"), visibility("default"))); - -#undef g_mount_unshadow -extern __typeof (g_mount_unshadow) g_mount_unshadow __attribute((alias("IA__g_mount_unshadow"), visibility("default"))); - -#ifndef G_DISABLE_DEPRECATED -#undef g_mount_unmount -extern __typeof (g_mount_unmount) g_mount_unmount __attribute((alias("IA__g_mount_unmount"), visibility("default"))); - -#undef g_mount_unmount_finish -extern __typeof (g_mount_unmount_finish) g_mount_unmount_finish __attribute((alias("IA__g_mount_unmount_finish"), visibility("default"))); - -#undef g_mount_eject -extern __typeof (g_mount_eject) g_mount_eject __attribute((alias("IA__g_mount_eject"), visibility("default"))); - -#undef g_mount_eject_finish -extern __typeof (g_mount_eject_finish) g_mount_eject_finish __attribute((alias("IA__g_mount_eject_finish"), visibility("default"))); - -#endif -#endif -#endif -#if IN_HEADER(__G_VOLUME_H__) -#if IN_FILE(__G_VOLUME_C__) -#undef g_volume_get_type -extern __typeof (g_volume_get_type) g_volume_get_type __attribute((alias("IA__g_volume_get_type"), visibility("default"))); - -#undef g_volume_get_name -extern __typeof (g_volume_get_name) g_volume_get_name __attribute((alias("IA__g_volume_get_name"), visibility("default"))); - -#undef g_volume_get_icon -extern __typeof (g_volume_get_icon) g_volume_get_icon __attribute((alias("IA__g_volume_get_icon"), visibility("default"))); - -#undef g_volume_get_uuid -extern __typeof (g_volume_get_uuid) g_volume_get_uuid __attribute((alias("IA__g_volume_get_uuid"), visibility("default"))); - -#undef g_volume_get_drive -extern __typeof (g_volume_get_drive) g_volume_get_drive __attribute((alias("IA__g_volume_get_drive"), visibility("default"))); - -#undef g_volume_get_mount -extern __typeof (g_volume_get_mount) g_volume_get_mount __attribute((alias("IA__g_volume_get_mount"), visibility("default"))); - -#undef g_volume_should_automount -extern __typeof (g_volume_should_automount) g_volume_should_automount __attribute((alias("IA__g_volume_should_automount"), visibility("default"))); - -#undef g_volume_can_mount -extern __typeof (g_volume_can_mount) g_volume_can_mount __attribute((alias("IA__g_volume_can_mount"), visibility("default"))); - -#undef g_volume_can_eject -extern __typeof (g_volume_can_eject) g_volume_can_eject __attribute((alias("IA__g_volume_can_eject"), visibility("default"))); - -#undef g_volume_mount -extern __typeof (g_volume_mount) g_volume_mount __attribute((alias("IA__g_volume_mount"), visibility("default"))); - -#undef g_volume_mount_finish -extern __typeof (g_volume_mount_finish) g_volume_mount_finish __attribute((alias("IA__g_volume_mount_finish"), visibility("default"))); - -#undef g_volume_eject_with_operation -extern __typeof (g_volume_eject_with_operation) g_volume_eject_with_operation __attribute((alias("IA__g_volume_eject_with_operation"), visibility("default"))); - -#undef g_volume_eject_with_operation_finish -extern __typeof (g_volume_eject_with_operation_finish) g_volume_eject_with_operation_finish __attribute((alias("IA__g_volume_eject_with_operation_finish"), visibility("default"))); - -#undef g_volume_get_identifier -extern __typeof (g_volume_get_identifier) g_volume_get_identifier __attribute((alias("IA__g_volume_get_identifier"), visibility("default"))); - -#undef g_volume_enumerate_identifiers -extern __typeof (g_volume_enumerate_identifiers) g_volume_enumerate_identifiers __attribute((alias("IA__g_volume_enumerate_identifiers"), visibility("default"))); - -#undef g_volume_get_activation_root -extern __typeof (g_volume_get_activation_root) g_volume_get_activation_root __attribute((alias("IA__g_volume_get_activation_root"), visibility("default"))); - -#ifndef G_DISABLE_DEPRECATED -#undef g_volume_eject -extern __typeof (g_volume_eject) g_volume_eject __attribute((alias("IA__g_volume_eject"), visibility("default"))); - -#undef g_volume_eject_finish -extern __typeof (g_volume_eject_finish) g_volume_eject_finish __attribute((alias("IA__g_volume_eject_finish"), visibility("default"))); - -#endif -#endif -#endif -#if IN_HEADER(__G_VOLUME_MONITOR_H__) -#if IN_FILE(__G_VOLUME_MONITOR_C__) -#undef g_volume_monitor_get_type -extern __typeof (g_volume_monitor_get_type) g_volume_monitor_get_type __attribute((alias("IA__g_volume_monitor_get_type"), visibility("default"))); - -#undef g_volume_monitor_get_connected_drives -extern __typeof (g_volume_monitor_get_connected_drives) g_volume_monitor_get_connected_drives __attribute((alias("IA__g_volume_monitor_get_connected_drives"), visibility("default"))); - -#undef g_volume_monitor_get_volume_for_uuid -extern __typeof (g_volume_monitor_get_volume_for_uuid) g_volume_monitor_get_volume_for_uuid __attribute((alias("IA__g_volume_monitor_get_volume_for_uuid"), visibility("default"))); - -#undef g_volume_monitor_get_volumes -extern __typeof (g_volume_monitor_get_volumes) g_volume_monitor_get_volumes __attribute((alias("IA__g_volume_monitor_get_volumes"), visibility("default"))); - -#undef g_volume_monitor_get_mounts -extern __typeof (g_volume_monitor_get_mounts) g_volume_monitor_get_mounts __attribute((alias("IA__g_volume_monitor_get_mounts"), visibility("default"))); - -#undef g_volume_monitor_get_mount_for_uuid -extern __typeof (g_volume_monitor_get_mount_for_uuid) g_volume_monitor_get_mount_for_uuid __attribute((alias("IA__g_volume_monitor_get_mount_for_uuid"), visibility("default"))); - -#endif -#if IN_FILE(__G_UNION_VOLUME_MONITOR_C__) -#undef g_volume_monitor_get -extern __typeof (g_volume_monitor_get) g_volume_monitor_get __attribute((alias("IA__g_volume_monitor_get"), visibility("default"))); - -#ifndef G_DISABLE_DEPRECATED -#undef g_volume_monitor_adopt_orphan_mount -extern __typeof (g_volume_monitor_adopt_orphan_mount) g_volume_monitor_adopt_orphan_mount __attribute((alias("IA__g_volume_monitor_adopt_orphan_mount"), visibility("default"))); - -#endif -#endif -#endif -#if IN_HEADER(__G_NATIVE_VOLUME_MONITOR_H__) -#if IN_FILE(__G_NATIVE_VOLUME_MONITOR_C__) -#undef g_native_volume_monitor_get_type -extern __typeof (g_native_volume_monitor_get_type) g_native_volume_monitor_get_type __attribute((alias("IA__g_native_volume_monitor_get_type"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_LOCAL_FILE_MONITOR_H__) -#if IN_FILE(__G_LOCAL_FILE_MONITOR_C__) -#ifdef G_OS_UNIX -#undef g_local_file_monitor_get_type -extern __typeof (g_local_file_monitor_get_type) g_local_file_monitor_get_type __attribute((alias("IA__g_local_file_monitor_get_type"), visibility("default"))); - -#endif -#endif -#endif -#if IN_HEADER(__G_LOCAL_DIRECTORY_MONITOR_H__) -#if IN_FILE(__G_LOCAL_DIRECTORY_MONITOR_C__) -#ifdef G_OS_UNIX -#undef g_local_directory_monitor_get_type -extern __typeof (g_local_directory_monitor_get_type) g_local_directory_monitor_get_type __attribute((alias("IA__g_local_directory_monitor_get_type"), visibility("default"))); - -#endif -#endif -#endif -#if IN_HEADER(__GIO_ENUM_TYPES_H__) -#if IN_FILE(__GIO_ENUM_TYPES_C__) -#undef g_mount_unmount_flags_get_type -extern __typeof (g_mount_unmount_flags_get_type) g_mount_unmount_flags_get_type __attribute((alias("IA__g_mount_unmount_flags_get_type"), visibility("default"))); - -#undef g_app_info_create_flags_get_type -extern __typeof (g_app_info_create_flags_get_type) g_app_info_create_flags_get_type __attribute((alias("IA__g_app_info_create_flags_get_type"), visibility("default"))); - -#undef g_converter_flags_get_type -extern __typeof (g_converter_flags_get_type) g_converter_flags_get_type __attribute((alias("IA__g_converter_flags_get_type"), visibility("default"))); - -#undef g_converter_result_get_type -extern __typeof (g_converter_result_get_type) g_converter_result_get_type __attribute((alias("IA__g_converter_result_get_type"), visibility("default"))); - -#undef g_data_stream_byte_order_get_type -extern __typeof (g_data_stream_byte_order_get_type) g_data_stream_byte_order_get_type __attribute((alias("IA__g_data_stream_byte_order_get_type"), visibility("default"))); - -#undef g_data_stream_newline_type_get_type -extern __typeof (g_data_stream_newline_type_get_type) g_data_stream_newline_type_get_type __attribute((alias("IA__g_data_stream_newline_type_get_type"), visibility("default"))); - -#undef g_file_attribute_info_flags_get_type -extern __typeof (g_file_attribute_info_flags_get_type) g_file_attribute_info_flags_get_type __attribute((alias("IA__g_file_attribute_info_flags_get_type"), visibility("default"))); - -#undef g_file_attribute_status_get_type -extern __typeof (g_file_attribute_status_get_type) g_file_attribute_status_get_type __attribute((alias("IA__g_file_attribute_status_get_type"), visibility("default"))); - -#undef g_file_attribute_type_get_type -extern __typeof (g_file_attribute_type_get_type) g_file_attribute_type_get_type __attribute((alias("IA__g_file_attribute_type_get_type"), visibility("default"))); - -#undef g_file_copy_flags_get_type -extern __typeof (g_file_copy_flags_get_type) g_file_copy_flags_get_type __attribute((alias("IA__g_file_copy_flags_get_type"), visibility("default"))); - -#undef g_file_create_flags_get_type -extern __typeof (g_file_create_flags_get_type) g_file_create_flags_get_type __attribute((alias("IA__g_file_create_flags_get_type"), visibility("default"))); - -#undef g_file_monitor_event_get_type -extern __typeof (g_file_monitor_event_get_type) g_file_monitor_event_get_type __attribute((alias("IA__g_file_monitor_event_get_type"), visibility("default"))); - -#undef g_file_monitor_flags_get_type -extern __typeof (g_file_monitor_flags_get_type) g_file_monitor_flags_get_type __attribute((alias("IA__g_file_monitor_flags_get_type"), visibility("default"))); - -#undef g_file_query_info_flags_get_type -extern __typeof (g_file_query_info_flags_get_type) g_file_query_info_flags_get_type __attribute((alias("IA__g_file_query_info_flags_get_type"), visibility("default"))); - -#undef g_file_type_get_type -extern __typeof (g_file_type_get_type) g_file_type_get_type __attribute((alias("IA__g_file_type_get_type"), visibility("default"))); - -#undef g_filesystem_preview_type_get_type -extern __typeof (g_filesystem_preview_type_get_type) g_filesystem_preview_type_get_type __attribute((alias("IA__g_filesystem_preview_type_get_type"), visibility("default"))); - -#undef g_io_error_enum_get_type -extern __typeof (g_io_error_enum_get_type) g_io_error_enum_get_type __attribute((alias("IA__g_io_error_enum_get_type"), visibility("default"))); - -#undef g_mount_mount_flags_get_type -extern __typeof (g_mount_mount_flags_get_type) g_mount_mount_flags_get_type __attribute((alias("IA__g_mount_mount_flags_get_type"), visibility("default"))); - -#undef g_mount_operation_result_get_type -extern __typeof (g_mount_operation_result_get_type) g_mount_operation_result_get_type __attribute((alias("IA__g_mount_operation_result_get_type"), visibility("default"))); - -#undef g_drive_start_flags_get_type -extern __typeof (g_drive_start_flags_get_type) g_drive_start_flags_get_type __attribute((alias("IA__g_drive_start_flags_get_type"), visibility("default"))); - -#undef g_drive_start_stop_type_get_type -extern __typeof (g_drive_start_stop_type_get_type) g_drive_start_stop_type_get_type __attribute((alias("IA__g_drive_start_stop_type_get_type"), visibility("default"))); - -#undef g_output_stream_splice_flags_get_type -extern __typeof (g_output_stream_splice_flags_get_type) g_output_stream_splice_flags_get_type __attribute((alias("IA__g_output_stream_splice_flags_get_type"), visibility("default"))); - -#undef g_ask_password_flags_get_type -extern __typeof (g_ask_password_flags_get_type) g_ask_password_flags_get_type __attribute((alias("IA__g_ask_password_flags_get_type"), visibility("default"))); - -#undef g_password_save_get_type -extern __typeof (g_password_save_get_type) g_password_save_get_type __attribute((alias("IA__g_password_save_get_type"), visibility("default"))); - -#undef g_emblem_origin_get_type -extern __typeof (g_emblem_origin_get_type) g_emblem_origin_get_type __attribute((alias("IA__g_emblem_origin_get_type"), visibility("default"))); - -#undef g_socket_family_get_type -extern __typeof (g_socket_family_get_type) g_socket_family_get_type __attribute((alias("IA__g_socket_family_get_type"), visibility("default"))); - -#undef g_socket_type_get_type -extern __typeof (g_socket_type_get_type) g_socket_type_get_type __attribute((alias("IA__g_socket_type_get_type"), visibility("default"))); - -#undef g_socket_protocol_get_type -extern __typeof (g_socket_protocol_get_type) g_socket_protocol_get_type __attribute((alias("IA__g_socket_protocol_get_type"), visibility("default"))); - -#undef g_socket_msg_flags_get_type -extern __typeof (g_socket_msg_flags_get_type) g_socket_msg_flags_get_type __attribute((alias("IA__g_socket_msg_flags_get_type"), visibility("default"))); - -#undef g_resolver_error_get_type -extern __typeof (g_resolver_error_get_type) g_resolver_error_get_type __attribute((alias("IA__g_resolver_error_get_type"), visibility("default"))); - -#undef g_zlib_compressor_format_get_type -extern __typeof (g_zlib_compressor_format_get_type) g_zlib_compressor_format_get_type __attribute((alias("IA__g_zlib_compressor_format_get_type"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_EMBLEMED_ICON_H__) -#if IN_FILE(__G_EMBLEMED_ICON_C__) -#undef g_emblemed_icon_get_type -extern __typeof (g_emblemed_icon_get_type) g_emblemed_icon_get_type __attribute((alias("IA__g_emblemed_icon_get_type"), visibility("default"))); - -#undef g_emblemed_icon_new -extern __typeof (g_emblemed_icon_new) g_emblemed_icon_new __attribute((alias("IA__g_emblemed_icon_new"), visibility("default"))); - -#undef g_emblemed_icon_get_icon -extern __typeof (g_emblemed_icon_get_icon) g_emblemed_icon_get_icon __attribute((alias("IA__g_emblemed_icon_get_icon"), visibility("default"))); - -#undef g_emblemed_icon_get_emblems -extern __typeof (g_emblemed_icon_get_emblems) g_emblemed_icon_get_emblems __attribute((alias("IA__g_emblemed_icon_get_emblems"), visibility("default"))); - -#undef g_emblemed_icon_add_emblem -extern __typeof (g_emblemed_icon_add_emblem) g_emblemed_icon_add_emblem __attribute((alias("IA__g_emblemed_icon_add_emblem"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_EMBLEM_H__) -#if IN_FILE(__G_EMBLEM_C__) -#undef g_emblem_get_type -extern __typeof (g_emblem_get_type) g_emblem_get_type __attribute((alias("IA__g_emblem_get_type"), visibility("default"))); - -#undef g_emblem_new -extern __typeof (g_emblem_new) g_emblem_new __attribute((alias("IA__g_emblem_new"), visibility("default"))); - -#undef g_emblem_new_with_origin -extern __typeof (g_emblem_new_with_origin) g_emblem_new_with_origin __attribute((alias("IA__g_emblem_new_with_origin"), visibility("default"))); - -#undef g_emblem_get_icon -extern __typeof (g_emblem_get_icon) g_emblem_get_icon __attribute((alias("IA__g_emblem_get_icon"), visibility("default"))); - -#undef g_emblem_get_origin -extern __typeof (g_emblem_get_origin) g_emblem_get_origin __attribute((alias("IA__g_emblem_get_origin"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_INET_ADDRESS_H__) -#if IN_FILE(__G_INET_ADDRESS_C__) -#undef g_inet_address_new_from_string -extern __typeof (g_inet_address_new_from_string) g_inet_address_new_from_string __attribute((alias("IA__g_inet_address_new_from_string"), visibility("default"))); - -#undef g_inet_address_new_from_bytes -extern __typeof (g_inet_address_new_from_bytes) g_inet_address_new_from_bytes __attribute((alias("IA__g_inet_address_new_from_bytes"), visibility("default"))); - -#undef g_inet_address_new_any -extern __typeof (g_inet_address_new_any) g_inet_address_new_any __attribute((alias("IA__g_inet_address_new_any"), visibility("default"))); - -#undef g_inet_address_new_loopback -extern __typeof (g_inet_address_new_loopback) g_inet_address_new_loopback __attribute((alias("IA__g_inet_address_new_loopback"), visibility("default"))); - -#undef g_inet_address_get_family -extern __typeof (g_inet_address_get_family) g_inet_address_get_family __attribute((alias("IA__g_inet_address_get_family"), visibility("default"))); - -#undef g_inet_address_get_type -extern __typeof (g_inet_address_get_type) g_inet_address_get_type __attribute((alias("IA__g_inet_address_get_type"), visibility("default"))); - -#undef g_inet_address_get_is_any -extern __typeof (g_inet_address_get_is_any) g_inet_address_get_is_any __attribute((alias("IA__g_inet_address_get_is_any"), visibility("default"))); - -#undef g_inet_address_get_is_link_local -extern __typeof (g_inet_address_get_is_link_local) g_inet_address_get_is_link_local __attribute((alias("IA__g_inet_address_get_is_link_local"), visibility("default"))); - -#undef g_inet_address_get_is_loopback -extern __typeof (g_inet_address_get_is_loopback) g_inet_address_get_is_loopback __attribute((alias("IA__g_inet_address_get_is_loopback"), visibility("default"))); - -#undef g_inet_address_get_is_mc_global -extern __typeof (g_inet_address_get_is_mc_global) g_inet_address_get_is_mc_global __attribute((alias("IA__g_inet_address_get_is_mc_global"), visibility("default"))); - -#undef g_inet_address_get_is_mc_link_local -extern __typeof (g_inet_address_get_is_mc_link_local) g_inet_address_get_is_mc_link_local __attribute((alias("IA__g_inet_address_get_is_mc_link_local"), visibility("default"))); - -#undef g_inet_address_get_is_mc_node_local -extern __typeof (g_inet_address_get_is_mc_node_local) g_inet_address_get_is_mc_node_local __attribute((alias("IA__g_inet_address_get_is_mc_node_local"), visibility("default"))); - -#undef g_inet_address_get_is_mc_org_local -extern __typeof (g_inet_address_get_is_mc_org_local) g_inet_address_get_is_mc_org_local __attribute((alias("IA__g_inet_address_get_is_mc_org_local"), visibility("default"))); - -#undef g_inet_address_get_is_mc_site_local -extern __typeof (g_inet_address_get_is_mc_site_local) g_inet_address_get_is_mc_site_local __attribute((alias("IA__g_inet_address_get_is_mc_site_local"), visibility("default"))); - -#undef g_inet_address_get_is_multicast -extern __typeof (g_inet_address_get_is_multicast) g_inet_address_get_is_multicast __attribute((alias("IA__g_inet_address_get_is_multicast"), visibility("default"))); - -#undef g_inet_address_get_is_site_local -extern __typeof (g_inet_address_get_is_site_local) g_inet_address_get_is_site_local __attribute((alias("IA__g_inet_address_get_is_site_local"), visibility("default"))); - -#undef g_inet_address_to_bytes -extern __typeof (g_inet_address_to_bytes) g_inet_address_to_bytes __attribute((alias("IA__g_inet_address_to_bytes"), visibility("default"))); - -#undef g_inet_address_get_native_size -extern __typeof (g_inet_address_get_native_size) g_inet_address_get_native_size __attribute((alias("IA__g_inet_address_get_native_size"), visibility("default"))); - -#undef g_inet_address_to_string -extern __typeof (g_inet_address_to_string) g_inet_address_to_string __attribute((alias("IA__g_inet_address_to_string"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_INET_SOCKET_ADDRESS_H__) -#if IN_FILE(__G_INET_SOCKET_ADDRESS_C__) -#undef g_inet_socket_address_get_address -extern __typeof (g_inet_socket_address_get_address) g_inet_socket_address_get_address __attribute((alias("IA__g_inet_socket_address_get_address"), visibility("default"))); - -#undef g_inet_socket_address_get_port -extern __typeof (g_inet_socket_address_get_port) g_inet_socket_address_get_port __attribute((alias("IA__g_inet_socket_address_get_port"), visibility("default"))); - -#undef g_inet_socket_address_get_type -extern __typeof (g_inet_socket_address_get_type) g_inet_socket_address_get_type __attribute((alias("IA__g_inet_socket_address_get_type"), visibility("default"))); - -#undef g_inet_socket_address_new -extern __typeof (g_inet_socket_address_new) g_inet_socket_address_new __attribute((alias("IA__g_inet_socket_address_new"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_UNIX_SOCKET_ADDRESS_H__) -#if IN_FILE(__G_UNIX_SOCKET_ADDRESS_C__) -#ifdef G_OS_UNIX -#undef g_unix_socket_address_get_type -extern __typeof (g_unix_socket_address_get_type) g_unix_socket_address_get_type __attribute((alias("IA__g_unix_socket_address_get_type"), visibility("default"))); - -#undef g_unix_socket_address_new -extern __typeof (g_unix_socket_address_new) g_unix_socket_address_new __attribute((alias("IA__g_unix_socket_address_new"), visibility("default"))); - -#undef g_unix_socket_address_new_abstract -extern __typeof (g_unix_socket_address_new_abstract) g_unix_socket_address_new_abstract __attribute((alias("IA__g_unix_socket_address_new_abstract"), visibility("default"))); - -#undef g_unix_socket_address_abstract_names_supported -extern __typeof (g_unix_socket_address_abstract_names_supported) g_unix_socket_address_abstract_names_supported __attribute((alias("IA__g_unix_socket_address_abstract_names_supported"), visibility("default"))); - -#undef g_unix_socket_address_get_is_abstract -extern __typeof (g_unix_socket_address_get_is_abstract) g_unix_socket_address_get_is_abstract __attribute((alias("IA__g_unix_socket_address_get_is_abstract"), visibility("default"))); - -#undef g_unix_socket_address_get_path -extern __typeof (g_unix_socket_address_get_path) g_unix_socket_address_get_path __attribute((alias("IA__g_unix_socket_address_get_path"), visibility("default"))); - -#undef g_unix_socket_address_get_path_len -extern __typeof (g_unix_socket_address_get_path_len) g_unix_socket_address_get_path_len __attribute((alias("IA__g_unix_socket_address_get_path_len"), visibility("default"))); - -#endif -#endif -#endif -#if IN_HEADER(__G_SOCKET_ADDRESS_H__) -#if IN_FILE(__G_SOCKET_ADDRESS_C__) -#undef g_socket_address_new_from_native -extern __typeof (g_socket_address_new_from_native) g_socket_address_new_from_native __attribute((alias("IA__g_socket_address_new_from_native"), visibility("default"))); - -#undef g_socket_address_get_type -extern __typeof (g_socket_address_get_type) g_socket_address_get_type __attribute((alias("IA__g_socket_address_get_type"), visibility("default"))); - -#undef g_socket_address_get_family -extern __typeof (g_socket_address_get_family) g_socket_address_get_family __attribute((alias("IA__g_socket_address_get_family"), visibility("default"))); - -#undef g_socket_address_get_native_size -extern __typeof (g_socket_address_get_native_size) g_socket_address_get_native_size __attribute((alias("IA__g_socket_address_get_native_size"), visibility("default"))); - -#undef g_socket_address_to_native -extern __typeof (g_socket_address_to_native) g_socket_address_to_native __attribute((alias("IA__g_socket_address_to_native"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_RESOLVER_H__) -#if IN_FILE(__G_RESOLVER_C__) -#undef g_resolver_error_quark -extern __typeof (g_resolver_error_quark) g_resolver_error_quark __attribute((alias("IA__g_resolver_error_quark"), visibility("default"))); - -#undef g_resolver_free_addresses -extern __typeof (g_resolver_free_addresses) g_resolver_free_addresses __attribute((alias("IA__g_resolver_free_addresses"), visibility("default"))); - -#undef g_resolver_free_targets -extern __typeof (g_resolver_free_targets) g_resolver_free_targets __attribute((alias("IA__g_resolver_free_targets"), visibility("default"))); - -#undef g_resolver_get_type -extern __typeof (g_resolver_get_type) g_resolver_get_type __attribute((alias("IA__g_resolver_get_type"), visibility("default"))); - -#undef g_resolver_get_default -extern __typeof (g_resolver_get_default) g_resolver_get_default __attribute((alias("IA__g_resolver_get_default"), visibility("default"))); - -#undef g_resolver_set_default -extern __typeof (g_resolver_set_default) g_resolver_set_default __attribute((alias("IA__g_resolver_set_default"), visibility("default"))); - -#undef g_resolver_lookup_by_name -extern __typeof (g_resolver_lookup_by_name) g_resolver_lookup_by_name __attribute((alias("IA__g_resolver_lookup_by_name"), visibility("default"))); - -#undef g_resolver_lookup_by_name_async -extern __typeof (g_resolver_lookup_by_name_async) g_resolver_lookup_by_name_async __attribute((alias("IA__g_resolver_lookup_by_name_async"), visibility("default"))); - -#undef g_resolver_lookup_by_name_finish -extern __typeof (g_resolver_lookup_by_name_finish) g_resolver_lookup_by_name_finish __attribute((alias("IA__g_resolver_lookup_by_name_finish"), visibility("default"))); - -#undef g_resolver_lookup_by_address -extern __typeof (g_resolver_lookup_by_address) g_resolver_lookup_by_address __attribute((alias("IA__g_resolver_lookup_by_address"), visibility("default"))); - -#undef g_resolver_lookup_by_address_async -extern __typeof (g_resolver_lookup_by_address_async) g_resolver_lookup_by_address_async __attribute((alias("IA__g_resolver_lookup_by_address_async"), visibility("default"))); - -#undef g_resolver_lookup_by_address_finish -extern __typeof (g_resolver_lookup_by_address_finish) g_resolver_lookup_by_address_finish __attribute((alias("IA__g_resolver_lookup_by_address_finish"), visibility("default"))); - -#undef g_resolver_lookup_service -extern __typeof (g_resolver_lookup_service) g_resolver_lookup_service __attribute((alias("IA__g_resolver_lookup_service"), visibility("default"))); - -#undef g_resolver_lookup_service_async -extern __typeof (g_resolver_lookup_service_async) g_resolver_lookup_service_async __attribute((alias("IA__g_resolver_lookup_service_async"), visibility("default"))); - -#undef g_resolver_lookup_service_finish -extern __typeof (g_resolver_lookup_service_finish) g_resolver_lookup_service_finish __attribute((alias("IA__g_resolver_lookup_service_finish"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_THREADED_RESOLVER_H__) -#if IN_FILE(__G_THREADED_RESOLVER_C__) -#undef g_threaded_resolver_get_type -extern __typeof (g_threaded_resolver_get_type) g_threaded_resolver_get_type __attribute((alias("IA__g_threaded_resolver_get_type"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_UNIX_RESOLVER_H__) -#if IN_FILE(__G_UNIX_RESOLVER_C__) -#ifdef G_OS_UNIX -#undef g_unix_resolver_get_type -extern __typeof (g_unix_resolver_get_type) g_unix_resolver_get_type __attribute((alias("IA__g_unix_resolver_get_type"), visibility("default"))); - -#endif -#endif -#endif -#if IN_HEADER(__G_WIN32_RESOLVER_H__) -#if IN_FILE(__G_WIN32_RESOLVER_C__) -#ifdef G_OS_WIN32 -#undef g_win32_resolver_get_type -extern __typeof (g_win32_resolver_get_type) g_win32_resolver_get_type __attribute((alias("IA__g_win32_resolver_get_type"), visibility("default"))); - -#endif -#endif -#endif -#if IN_HEADER(__G_SRV_TARGET_H__) -#if IN_FILE(__G_SRV_TARGET_C__) -#undef g_srv_target_get_type -extern __typeof (g_srv_target_get_type) g_srv_target_get_type __attribute((alias("IA__g_srv_target_get_type"), visibility("default"))); - -#undef g_srv_target_new -extern __typeof (g_srv_target_new) g_srv_target_new __attribute((alias("IA__g_srv_target_new"), visibility("default"))); - -#undef g_srv_target_copy -extern __typeof (g_srv_target_copy) g_srv_target_copy __attribute((alias("IA__g_srv_target_copy"), visibility("default"))); - -#undef g_srv_target_free -extern __typeof (g_srv_target_free) g_srv_target_free __attribute((alias("IA__g_srv_target_free"), visibility("default"))); - -#undef g_srv_target_get_hostname -extern __typeof (g_srv_target_get_hostname) g_srv_target_get_hostname __attribute((alias("IA__g_srv_target_get_hostname"), visibility("default"))); - -#undef g_srv_target_get_port -extern __typeof (g_srv_target_get_port) g_srv_target_get_port __attribute((alias("IA__g_srv_target_get_port"), visibility("default"))); - -#undef g_srv_target_get_priority -extern __typeof (g_srv_target_get_priority) g_srv_target_get_priority __attribute((alias("IA__g_srv_target_get_priority"), visibility("default"))); - -#undef g_srv_target_get_weight -extern __typeof (g_srv_target_get_weight) g_srv_target_get_weight __attribute((alias("IA__g_srv_target_get_weight"), visibility("default"))); - -#undef g_srv_target_list_sort -extern __typeof (g_srv_target_list_sort) g_srv_target_list_sort __attribute((alias("IA__g_srv_target_list_sort"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_NETWORK_ADDRESS_H__) -#if IN_FILE(__G_NETWORK_ADDRESS_C__) -#undef g_network_address_get_type -extern __typeof (g_network_address_get_type) g_network_address_get_type __attribute((alias("IA__g_network_address_get_type"), visibility("default"))); - -#undef g_network_address_get_hostname -extern __typeof (g_network_address_get_hostname) g_network_address_get_hostname __attribute((alias("IA__g_network_address_get_hostname"), visibility("default"))); - -#undef g_network_address_get_port -extern __typeof (g_network_address_get_port) g_network_address_get_port __attribute((alias("IA__g_network_address_get_port"), visibility("default"))); - -#undef g_network_address_new -extern __typeof (g_network_address_new) g_network_address_new __attribute((alias("IA__g_network_address_new"), visibility("default"))); - -#undef g_network_address_parse -extern __typeof (g_network_address_parse) g_network_address_parse __attribute((alias("IA__g_network_address_parse"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_NETWORK_SERVICE_H__) -#if IN_FILE(__G_NETWORK_SERVICE_C__) -#undef g_network_service_get_type -extern __typeof (g_network_service_get_type) g_network_service_get_type __attribute((alias("IA__g_network_service_get_type"), visibility("default"))); - -#undef g_network_service_get_service -extern __typeof (g_network_service_get_service) g_network_service_get_service __attribute((alias("IA__g_network_service_get_service"), visibility("default"))); - -#undef g_network_service_get_protocol -extern __typeof (g_network_service_get_protocol) g_network_service_get_protocol __attribute((alias("IA__g_network_service_get_protocol"), visibility("default"))); - -#undef g_network_service_get_domain -extern __typeof (g_network_service_get_domain) g_network_service_get_domain __attribute((alias("IA__g_network_service_get_domain"), visibility("default"))); - -#undef g_network_service_new -extern __typeof (g_network_service_new) g_network_service_new __attribute((alias("IA__g_network_service_new"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_SOCKET_CONNECTABLE_H__) -#if IN_FILE(__G_SOCKET_CONNECTABLE_C__) -#undef g_socket_connectable_enumerate -extern __typeof (g_socket_connectable_enumerate) g_socket_connectable_enumerate __attribute((alias("IA__g_socket_connectable_enumerate"), visibility("default"))); - -#undef g_socket_connectable_get_type -extern __typeof (g_socket_connectable_get_type) g_socket_connectable_get_type __attribute((alias("IA__g_socket_connectable_get_type"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_SOCKET_ADDRESS_ENUMERATOR_H__) -#if IN_FILE(__G_SOCKET_ADDRESS_ENUMERATOR_C__) -#undef g_socket_address_enumerator_get_type -extern __typeof (g_socket_address_enumerator_get_type) g_socket_address_enumerator_get_type __attribute((alias("IA__g_socket_address_enumerator_get_type"), visibility("default"))); - -#undef g_socket_address_enumerator_next -extern __typeof (g_socket_address_enumerator_next) g_socket_address_enumerator_next __attribute((alias("IA__g_socket_address_enumerator_next"), visibility("default"))); - -#undef g_socket_address_enumerator_next_async -extern __typeof (g_socket_address_enumerator_next_async) g_socket_address_enumerator_next_async __attribute((alias("IA__g_socket_address_enumerator_next_async"), visibility("default"))); - -#undef g_socket_address_enumerator_next_finish -extern __typeof (g_socket_address_enumerator_next_finish) g_socket_address_enumerator_next_finish __attribute((alias("IA__g_socket_address_enumerator_next_finish"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_ASYNC_INITABLE_H__) -#if IN_FILE(__G_ASYNC_INITABLE_C__) -#undef g_async_initable_get_type -extern __typeof (g_async_initable_get_type) g_async_initable_get_type __attribute((alias("IA__g_async_initable_get_type"), visibility("default"))); - -#undef g_async_initable_init_async -extern __typeof (g_async_initable_init_async) g_async_initable_init_async __attribute((alias("IA__g_async_initable_init_async"), visibility("default"))); - -#undef g_async_initable_init_finish -extern __typeof (g_async_initable_init_finish) g_async_initable_init_finish __attribute((alias("IA__g_async_initable_init_finish"), visibility("default"))); - -#undef g_async_initable_new_async -extern __typeof (g_async_initable_new_async) g_async_initable_new_async __attribute((alias("IA__g_async_initable_new_async"), visibility("default"))); - -#undef g_async_initable_new_finish -extern __typeof (g_async_initable_new_finish) g_async_initable_new_finish __attribute((alias("IA__g_async_initable_new_finish"), visibility("default"))); - -#undef g_async_initable_new_valist_async -extern __typeof (g_async_initable_new_valist_async) g_async_initable_new_valist_async __attribute((alias("IA__g_async_initable_new_valist_async"), visibility("default"))); - -#undef g_async_initable_newv_async -extern __typeof (g_async_initable_newv_async) g_async_initable_newv_async __attribute((alias("IA__g_async_initable_newv_async"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_INITABLE_H__) -#if IN_FILE(__G_INITABLE_C__) -#undef g_initable_get_type -extern __typeof (g_initable_get_type) g_initable_get_type __attribute((alias("IA__g_initable_get_type"), visibility("default"))); - -#undef g_initable_init -extern __typeof (g_initable_init) g_initable_init __attribute((alias("IA__g_initable_init"), visibility("default"))); - -#undef g_initable_new -extern __typeof (g_initable_new) g_initable_new __attribute((alias("IA__g_initable_new"), visibility("default"))); - -#undef g_initable_newv -extern __typeof (g_initable_newv) g_initable_newv __attribute((alias("IA__g_initable_newv"), visibility("default"))); - -#undef g_initable_new_valist -extern __typeof (g_initable_new_valist) g_initable_new_valist __attribute((alias("IA__g_initable_new_valist"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_SOCKET_H__) -#if IN_FILE(__G_SOCKET_C__) -#undef g_socket_get_type -extern __typeof (g_socket_get_type) g_socket_get_type __attribute((alias("IA__g_socket_get_type"), visibility("default"))); - -#undef g_socket_accept -extern __typeof (g_socket_accept) g_socket_accept __attribute((alias("IA__g_socket_accept"), visibility("default"))); - -#undef g_socket_bind -extern __typeof (g_socket_bind) g_socket_bind __attribute((alias("IA__g_socket_bind"), visibility("default"))); - -#undef g_socket_check_connect_result -extern __typeof (g_socket_check_connect_result) g_socket_check_connect_result __attribute((alias("IA__g_socket_check_connect_result"), visibility("default"))); - -#undef g_socket_close -extern __typeof (g_socket_close) g_socket_close __attribute((alias("IA__g_socket_close"), visibility("default"))); - -#undef g_socket_shutdown -extern __typeof (g_socket_shutdown) g_socket_shutdown __attribute((alias("IA__g_socket_shutdown"), visibility("default"))); - -#undef g_socket_condition_check -extern __typeof (g_socket_condition_check) g_socket_condition_check __attribute((alias("IA__g_socket_condition_check"), visibility("default"))); - -#undef g_socket_condition_wait -extern __typeof (g_socket_condition_wait) g_socket_condition_wait __attribute((alias("IA__g_socket_condition_wait"), visibility("default"))); - -#undef g_socket_connect -extern __typeof (g_socket_connect) g_socket_connect __attribute((alias("IA__g_socket_connect"), visibility("default"))); - -#undef g_socket_create_source -extern __typeof (g_socket_create_source) g_socket_create_source __attribute((alias("IA__g_socket_create_source"), visibility("default"))); - -#undef g_socket_get_blocking -extern __typeof (g_socket_get_blocking) g_socket_get_blocking __attribute((alias("IA__g_socket_get_blocking"), visibility("default"))); - -#undef g_socket_get_family -extern __typeof (g_socket_get_family) g_socket_get_family __attribute((alias("IA__g_socket_get_family"), visibility("default"))); - -#undef g_socket_get_fd -extern __typeof (g_socket_get_fd) g_socket_get_fd __attribute((alias("IA__g_socket_get_fd"), visibility("default"))); - -#undef g_socket_get_keepalive -extern __typeof (g_socket_get_keepalive) g_socket_get_keepalive __attribute((alias("IA__g_socket_get_keepalive"), visibility("default"))); - -#undef g_socket_get_listen_backlog -extern __typeof (g_socket_get_listen_backlog) g_socket_get_listen_backlog __attribute((alias("IA__g_socket_get_listen_backlog"), visibility("default"))); - -#undef g_socket_get_local_address -extern __typeof (g_socket_get_local_address) g_socket_get_local_address __attribute((alias("IA__g_socket_get_local_address"), visibility("default"))); - -#undef g_socket_get_protocol -extern __typeof (g_socket_get_protocol) g_socket_get_protocol __attribute((alias("IA__g_socket_get_protocol"), visibility("default"))); - -#undef g_socket_get_remote_address -extern __typeof (g_socket_get_remote_address) g_socket_get_remote_address __attribute((alias("IA__g_socket_get_remote_address"), visibility("default"))); - -#undef g_socket_get_socket_type -extern __typeof (g_socket_get_socket_type) g_socket_get_socket_type __attribute((alias("IA__g_socket_get_socket_type"), visibility("default"))); - -#undef g_socket_is_closed -extern __typeof (g_socket_is_closed) g_socket_is_closed __attribute((alias("IA__g_socket_is_closed"), visibility("default"))); - -#undef g_socket_is_connected -extern __typeof (g_socket_is_connected) g_socket_is_connected __attribute((alias("IA__g_socket_is_connected"), visibility("default"))); - -#undef g_socket_listen -extern __typeof (g_socket_listen) g_socket_listen __attribute((alias("IA__g_socket_listen"), visibility("default"))); - -#undef g_socket_new -extern __typeof (g_socket_new) g_socket_new __attribute((alias("IA__g_socket_new"), visibility("default"))); - -#undef g_socket_new_from_fd -extern __typeof (g_socket_new_from_fd) g_socket_new_from_fd __attribute((alias("IA__g_socket_new_from_fd"), visibility("default"))); - -#undef g_socket_receive -extern __typeof (g_socket_receive) g_socket_receive __attribute((alias("IA__g_socket_receive"), visibility("default"))); - -#undef g_socket_receive_from -extern __typeof (g_socket_receive_from) g_socket_receive_from __attribute((alias("IA__g_socket_receive_from"), visibility("default"))); - -#undef g_socket_receive_message -extern __typeof (g_socket_receive_message) g_socket_receive_message __attribute((alias("IA__g_socket_receive_message"), visibility("default"))); - -#undef g_socket_send -extern __typeof (g_socket_send) g_socket_send __attribute((alias("IA__g_socket_send"), visibility("default"))); - -#undef g_socket_send_message -extern __typeof (g_socket_send_message) g_socket_send_message __attribute((alias("IA__g_socket_send_message"), visibility("default"))); - -#undef g_socket_send_to -extern __typeof (g_socket_send_to) g_socket_send_to __attribute((alias("IA__g_socket_send_to"), visibility("default"))); - -#undef g_socket_set_blocking -extern __typeof (g_socket_set_blocking) g_socket_set_blocking __attribute((alias("IA__g_socket_set_blocking"), visibility("default"))); - -#undef g_socket_set_keepalive -extern __typeof (g_socket_set_keepalive) g_socket_set_keepalive __attribute((alias("IA__g_socket_set_keepalive"), visibility("default"))); - -#undef g_socket_set_listen_backlog -extern __typeof (g_socket_set_listen_backlog) g_socket_set_listen_backlog __attribute((alias("IA__g_socket_set_listen_backlog"), visibility("default"))); - -#undef g_socket_speaks_ipv4 -extern __typeof (g_socket_speaks_ipv4) g_socket_speaks_ipv4 __attribute((alias("IA__g_socket_speaks_ipv4"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_SOCKET_CONTROL_MESSAGE_H__) -#if IN_FILE(__G_SOCKET_CONTROL_MESSAGE_C__) -#undef g_socket_control_message_get_type -extern __typeof (g_socket_control_message_get_type) g_socket_control_message_get_type __attribute((alias("IA__g_socket_control_message_get_type"), visibility("default"))); - -#undef g_socket_control_message_deserialize -extern __typeof (g_socket_control_message_deserialize) g_socket_control_message_deserialize __attribute((alias("IA__g_socket_control_message_deserialize"), visibility("default"))); - -#undef g_socket_control_message_get_level -extern __typeof (g_socket_control_message_get_level) g_socket_control_message_get_level __attribute((alias("IA__g_socket_control_message_get_level"), visibility("default"))); - -#undef g_socket_control_message_get_msg_type -extern __typeof (g_socket_control_message_get_msg_type) g_socket_control_message_get_msg_type __attribute((alias("IA__g_socket_control_message_get_msg_type"), visibility("default"))); - -#undef g_socket_control_message_get_size -extern __typeof (g_socket_control_message_get_size) g_socket_control_message_get_size __attribute((alias("IA__g_socket_control_message_get_size"), visibility("default"))); - -#undef g_socket_control_message_serialize -extern __typeof (g_socket_control_message_serialize) g_socket_control_message_serialize __attribute((alias("IA__g_socket_control_message_serialize"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_SOCKET_CLIENT_H__) -#if IN_FILE(__G_SOCKET_CLIENT_C__) -#undef g_socket_client_get_type -extern __typeof (g_socket_client_get_type) g_socket_client_get_type __attribute((alias("IA__g_socket_client_get_type"), visibility("default"))); - -#undef g_socket_client_connect -extern __typeof (g_socket_client_connect) g_socket_client_connect __attribute((alias("IA__g_socket_client_connect"), visibility("default"))); - -#undef g_socket_client_connect_async -extern __typeof (g_socket_client_connect_async) g_socket_client_connect_async __attribute((alias("IA__g_socket_client_connect_async"), visibility("default"))); - -#undef g_socket_client_connect_finish -extern __typeof (g_socket_client_connect_finish) g_socket_client_connect_finish __attribute((alias("IA__g_socket_client_connect_finish"), visibility("default"))); - -#undef g_socket_client_connect_to_host -extern __typeof (g_socket_client_connect_to_host) g_socket_client_connect_to_host __attribute((alias("IA__g_socket_client_connect_to_host"), visibility("default"))); - -#undef g_socket_client_connect_to_host_async -extern __typeof (g_socket_client_connect_to_host_async) g_socket_client_connect_to_host_async __attribute((alias("IA__g_socket_client_connect_to_host_async"), visibility("default"))); - -#undef g_socket_client_connect_to_host_finish -extern __typeof (g_socket_client_connect_to_host_finish) g_socket_client_connect_to_host_finish __attribute((alias("IA__g_socket_client_connect_to_host_finish"), visibility("default"))); - -#undef g_socket_client_connect_to_service -extern __typeof (g_socket_client_connect_to_service) g_socket_client_connect_to_service __attribute((alias("IA__g_socket_client_connect_to_service"), visibility("default"))); - -#undef g_socket_client_connect_to_service_async -extern __typeof (g_socket_client_connect_to_service_async) g_socket_client_connect_to_service_async __attribute((alias("IA__g_socket_client_connect_to_service_async"), visibility("default"))); - -#undef g_socket_client_connect_to_service_finish -extern __typeof (g_socket_client_connect_to_service_finish) g_socket_client_connect_to_service_finish __attribute((alias("IA__g_socket_client_connect_to_service_finish"), visibility("default"))); - -#undef g_socket_client_get_family -extern __typeof (g_socket_client_get_family) g_socket_client_get_family __attribute((alias("IA__g_socket_client_get_family"), visibility("default"))); - -#undef g_socket_client_get_local_address -extern __typeof (g_socket_client_get_local_address) g_socket_client_get_local_address __attribute((alias("IA__g_socket_client_get_local_address"), visibility("default"))); - -#undef g_socket_client_get_protocol -extern __typeof (g_socket_client_get_protocol) g_socket_client_get_protocol __attribute((alias("IA__g_socket_client_get_protocol"), visibility("default"))); - -#undef g_socket_client_get_socket_type -extern __typeof (g_socket_client_get_socket_type) g_socket_client_get_socket_type __attribute((alias("IA__g_socket_client_get_socket_type"), visibility("default"))); - -#undef g_socket_client_new -extern __typeof (g_socket_client_new) g_socket_client_new __attribute((alias("IA__g_socket_client_new"), visibility("default"))); - -#undef g_socket_client_set_family -extern __typeof (g_socket_client_set_family) g_socket_client_set_family __attribute((alias("IA__g_socket_client_set_family"), visibility("default"))); - -#undef g_socket_client_set_local_address -extern __typeof (g_socket_client_set_local_address) g_socket_client_set_local_address __attribute((alias("IA__g_socket_client_set_local_address"), visibility("default"))); - -#undef g_socket_client_set_protocol -extern __typeof (g_socket_client_set_protocol) g_socket_client_set_protocol __attribute((alias("IA__g_socket_client_set_protocol"), visibility("default"))); - -#undef g_socket_client_set_socket_type -extern __typeof (g_socket_client_set_socket_type) g_socket_client_set_socket_type __attribute((alias("IA__g_socket_client_set_socket_type"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_SOCKET_CONNECTION_H__) -#if IN_FILE(__G_SOCKET_CONNECTION_C__) -#undef g_socket_connection_get_type -extern __typeof (g_socket_connection_get_type) g_socket_connection_get_type __attribute((alias("IA__g_socket_connection_get_type"), visibility("default"))); - -#undef g_socket_connection_factory_create_connection -extern __typeof (g_socket_connection_factory_create_connection) g_socket_connection_factory_create_connection __attribute((alias("IA__g_socket_connection_factory_create_connection"), visibility("default"))); - -#undef g_socket_connection_factory_lookup_type -extern __typeof (g_socket_connection_factory_lookup_type) g_socket_connection_factory_lookup_type __attribute((alias("IA__g_socket_connection_factory_lookup_type"), visibility("default"))); - -#undef g_socket_connection_factory_register_type -extern __typeof (g_socket_connection_factory_register_type) g_socket_connection_factory_register_type __attribute((alias("IA__g_socket_connection_factory_register_type"), visibility("default"))); - -#undef g_socket_connection_get_local_address -extern __typeof (g_socket_connection_get_local_address) g_socket_connection_get_local_address __attribute((alias("IA__g_socket_connection_get_local_address"), visibility("default"))); - -#undef g_socket_connection_get_remote_address -extern __typeof (g_socket_connection_get_remote_address) g_socket_connection_get_remote_address __attribute((alias("IA__g_socket_connection_get_remote_address"), visibility("default"))); - -#undef g_socket_connection_get_socket -extern __typeof (g_socket_connection_get_socket) g_socket_connection_get_socket __attribute((alias("IA__g_socket_connection_get_socket"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_SOCKET_LISTENER_H__) -#if IN_FILE(__G_SOCKET_LISTENER_C__) -#undef g_socket_listener_get_type -extern __typeof (g_socket_listener_get_type) g_socket_listener_get_type __attribute((alias("IA__g_socket_listener_get_type"), visibility("default"))); - -#undef g_socket_listener_accept -extern __typeof (g_socket_listener_accept) g_socket_listener_accept __attribute((alias("IA__g_socket_listener_accept"), visibility("default"))); - -#undef g_socket_listener_accept_async -extern __typeof (g_socket_listener_accept_async) g_socket_listener_accept_async __attribute((alias("IA__g_socket_listener_accept_async"), visibility("default"))); - -#undef g_socket_listener_accept_finish -extern __typeof (g_socket_listener_accept_finish) g_socket_listener_accept_finish __attribute((alias("IA__g_socket_listener_accept_finish"), visibility("default"))); - -#undef g_socket_listener_accept_socket -extern __typeof (g_socket_listener_accept_socket) g_socket_listener_accept_socket __attribute((alias("IA__g_socket_listener_accept_socket"), visibility("default"))); - -#undef g_socket_listener_accept_socket_async -extern __typeof (g_socket_listener_accept_socket_async) g_socket_listener_accept_socket_async __attribute((alias("IA__g_socket_listener_accept_socket_async"), visibility("default"))); - -#undef g_socket_listener_accept_socket_finish -extern __typeof (g_socket_listener_accept_socket_finish) g_socket_listener_accept_socket_finish __attribute((alias("IA__g_socket_listener_accept_socket_finish"), visibility("default"))); - -#undef g_socket_listener_add_address -extern __typeof (g_socket_listener_add_address) g_socket_listener_add_address __attribute((alias("IA__g_socket_listener_add_address"), visibility("default"))); - -#undef g_socket_listener_add_inet_port -extern __typeof (g_socket_listener_add_inet_port) g_socket_listener_add_inet_port __attribute((alias("IA__g_socket_listener_add_inet_port"), visibility("default"))); - -#undef g_socket_listener_add_any_inet_port -extern __typeof (g_socket_listener_add_any_inet_port) g_socket_listener_add_any_inet_port __attribute((alias("IA__g_socket_listener_add_any_inet_port"), visibility("default"))); - -#undef g_socket_listener_add_socket -extern __typeof (g_socket_listener_add_socket) g_socket_listener_add_socket __attribute((alias("IA__g_socket_listener_add_socket"), visibility("default"))); - -#undef g_socket_listener_close -extern __typeof (g_socket_listener_close) g_socket_listener_close __attribute((alias("IA__g_socket_listener_close"), visibility("default"))); - -#undef g_socket_listener_new -extern __typeof (g_socket_listener_new) g_socket_listener_new __attribute((alias("IA__g_socket_listener_new"), visibility("default"))); - -#undef g_socket_listener_set_backlog -extern __typeof (g_socket_listener_set_backlog) g_socket_listener_set_backlog __attribute((alias("IA__g_socket_listener_set_backlog"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_SOCKET_SERVICE_H__) -#if IN_FILE(__G_SOCKET_SERVICE_C__) -#undef g_socket_service_get_type -extern __typeof (g_socket_service_get_type) g_socket_service_get_type __attribute((alias("IA__g_socket_service_get_type"), visibility("default"))); - -#undef g_socket_service_is_active -extern __typeof (g_socket_service_is_active) g_socket_service_is_active __attribute((alias("IA__g_socket_service_is_active"), visibility("default"))); - -#undef g_socket_service_new -extern __typeof (g_socket_service_new) g_socket_service_new __attribute((alias("IA__g_socket_service_new"), visibility("default"))); - -#undef g_socket_service_start -extern __typeof (g_socket_service_start) g_socket_service_start __attribute((alias("IA__g_socket_service_start"), visibility("default"))); - -#undef g_socket_service_stop -extern __typeof (g_socket_service_stop) g_socket_service_stop __attribute((alias("IA__g_socket_service_stop"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_THREADED_SOCKET_SERVICE_H__) -#if IN_FILE(__G_THREADED_SOCKET_SERVICE_C__) -#undef g_threaded_socket_service_get_type -extern __typeof (g_threaded_socket_service_get_type) g_threaded_socket_service_get_type __attribute((alias("IA__g_threaded_socket_service_get_type"), visibility("default"))); - -#undef g_threaded_socket_service_new -extern __typeof (g_threaded_socket_service_new) g_threaded_socket_service_new __attribute((alias("IA__g_threaded_socket_service_new"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_TCP_CONNECTION_H__) -#if IN_FILE(__G_TCP_CONNECTION_C__) -#undef g_tcp_connection_get_type -extern __typeof (g_tcp_connection_get_type) g_tcp_connection_get_type __attribute((alias("IA__g_tcp_connection_get_type"), visibility("default"))); - -#undef g_tcp_connection_set_graceful_disconnect -extern __typeof (g_tcp_connection_set_graceful_disconnect) g_tcp_connection_set_graceful_disconnect __attribute((alias("IA__g_tcp_connection_set_graceful_disconnect"), visibility("default"))); - -#undef g_tcp_connection_get_graceful_disconnect -extern __typeof (g_tcp_connection_get_graceful_disconnect) g_tcp_connection_get_graceful_disconnect __attribute((alias("IA__g_tcp_connection_get_graceful_disconnect"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_UNIX_CONNECTION_H__) -#if IN_FILE(__G_UNIX_CONNECTION_C__) -#ifndef G_OS_WIN32 -#undef g_unix_connection_get_type -extern __typeof (g_unix_connection_get_type) g_unix_connection_get_type __attribute((alias("IA__g_unix_connection_get_type"), visibility("default"))); - -#undef g_unix_connection_receive_fd -extern __typeof (g_unix_connection_receive_fd) g_unix_connection_receive_fd __attribute((alias("IA__g_unix_connection_receive_fd"), visibility("default"))); - -#undef g_unix_connection_send_fd -extern __typeof (g_unix_connection_send_fd) g_unix_connection_send_fd __attribute((alias("IA__g_unix_connection_send_fd"), visibility("default"))); - -#endif -#endif -#endif -#if IN_HEADER(__G_UNIX_FD_MESSAGE_H__) -#if IN_FILE(__G_UNIX_FD_MESSAGE_C__) -#ifndef G_OS_WIN32 -#undef g_unix_fd_message_get_type -extern __typeof (g_unix_fd_message_get_type) g_unix_fd_message_get_type __attribute((alias("IA__g_unix_fd_message_get_type"), visibility("default"))); - -#undef g_unix_fd_message_append_fd -extern __typeof (g_unix_fd_message_append_fd) g_unix_fd_message_append_fd __attribute((alias("IA__g_unix_fd_message_append_fd"), visibility("default"))); - -#undef g_unix_fd_message_new -extern __typeof (g_unix_fd_message_new) g_unix_fd_message_new __attribute((alias("IA__g_unix_fd_message_new"), visibility("default"))); - -#undef g_unix_fd_message_steal_fds -extern __typeof (g_unix_fd_message_steal_fds) g_unix_fd_message_steal_fds __attribute((alias("IA__g_unix_fd_message_steal_fds"), visibility("default"))); - -#undef g_unix_fd_message_get_fd_list -extern __typeof (g_unix_fd_message_get_fd_list) g_unix_fd_message_get_fd_list __attribute((alias("IA__g_unix_fd_message_get_fd_list"), visibility("default"))); - -#undef g_unix_fd_message_new_with_fd_list -extern __typeof (g_unix_fd_message_new_with_fd_list) g_unix_fd_message_new_with_fd_list __attribute((alias("IA__g_unix_fd_message_new_with_fd_list"), visibility("default"))); - -#endif -#endif -#endif -#if IN_HEADER(__G_UNIX_FD_LIST_H__) -#if IN_FILE(__G_UNIX_FD_LIST_C__) -#ifndef G_OS_WIN32 -#undef g_unix_fd_list_append -extern __typeof (g_unix_fd_list_append) g_unix_fd_list_append __attribute((alias("IA__g_unix_fd_list_append"), visibility("default"))); - -#undef g_unix_fd_list_get -extern __typeof (g_unix_fd_list_get) g_unix_fd_list_get __attribute((alias("IA__g_unix_fd_list_get"), visibility("default"))); - -#undef g_unix_fd_list_get_length -extern __typeof (g_unix_fd_list_get_length) g_unix_fd_list_get_length __attribute((alias("IA__g_unix_fd_list_get_length"), visibility("default"))); - -#undef g_unix_fd_list_get_type -extern __typeof (g_unix_fd_list_get_type) g_unix_fd_list_get_type __attribute((alias("IA__g_unix_fd_list_get_type"), visibility("default"))); - -#undef g_unix_fd_list_new -extern __typeof (g_unix_fd_list_new) g_unix_fd_list_new __attribute((alias("IA__g_unix_fd_list_new"), visibility("default"))); - -#undef g_unix_fd_list_new_from_array -extern __typeof (g_unix_fd_list_new_from_array) g_unix_fd_list_new_from_array __attribute((alias("IA__g_unix_fd_list_new_from_array"), visibility("default"))); - -#undef g_unix_fd_list_peek_fds -extern __typeof (g_unix_fd_list_peek_fds) g_unix_fd_list_peek_fds __attribute((alias("IA__g_unix_fd_list_peek_fds"), visibility("default"))); - -#undef g_unix_fd_list_steal_fds -extern __typeof (g_unix_fd_list_steal_fds) g_unix_fd_list_steal_fds __attribute((alias("IA__g_unix_fd_list_steal_fds"), visibility("default"))); - -#endif -#endif -#endif -#if IN_HEADER(__G_ZLIB_COMPRESSOR_H__) -#if IN_FILE(__G_ZLIB_COMPRESSOR_C__) -#undef g_zlib_compressor_get_type -extern __typeof (g_zlib_compressor_get_type) g_zlib_compressor_get_type __attribute((alias("IA__g_zlib_compressor_get_type"), visibility("default"))); - -#undef g_zlib_compressor_new -extern __typeof (g_zlib_compressor_new) g_zlib_compressor_new __attribute((alias("IA__g_zlib_compressor_new"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_ZLIB_DECOMPRESSOR_H__) -#if IN_FILE(__G_ZLIB_DECOMPRESSOR_C__) -#undef g_zlib_decompressor_get_type -extern __typeof (g_zlib_decompressor_get_type) g_zlib_decompressor_get_type __attribute((alias("IA__g_zlib_decompressor_get_type"), visibility("default"))); - -#undef g_zlib_decompressor_new -extern __typeof (g_zlib_decompressor_new) g_zlib_decompressor_new __attribute((alias("IA__g_zlib_decompressor_new"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_FILE_DESCRIPTOR_BASED_H__) -#if IN_FILE(__G_FILE_DESCRIPTOR_BASED_C__) -#undef g_file_descriptor_based_get_type -extern __typeof (g_file_descriptor_based_get_type) g_file_descriptor_based_get_type __attribute((alias("IA__g_file_descriptor_based_get_type"), visibility("default"))); - -#undef g_file_descriptor_based_get_fd -extern __typeof (g_file_descriptor_based_get_fd) g_file_descriptor_based_get_fd __attribute((alias("IA__g_file_descriptor_based_get_fd"), visibility("default"))); - -#endif -#endif - -#endif /* G_HAVE_GNUC_VISIBILITY */ -#endif /* DISABLE_VISIBILITY */ diff --git a/gio/gunixresolver.c b/gio/gunixresolver.c deleted file mode 100644 index 2155c66..0000000 --- a/gio/gunixresolver.c +++ /dev/null @@ -1,527 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ - -/* GIO - GLib Input, Output and Streaming Library - * - * Copyright (C) 2008 Red Hat, Inc. - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2 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. - */ - -#include "config.h" -#include -#include "glibintl.h" - -#include -#include - -#include "gunixresolver.h" -#include "gnetworkingprivate.h" - -#include "gcancellable.h" -#include "gsimpleasyncresult.h" -#include "gsocketaddress.h" - -#include "gioalias.h" - -G_DEFINE_TYPE (GUnixResolver, g_unix_resolver, G_TYPE_THREADED_RESOLVER) - -static gboolean g_unix_resolver_watch (GIOChannel *iochannel, - GIOCondition condition, - gpointer user_data); -static void g_unix_resolver_reload (GResolver *resolver); - -static void -g_unix_resolver_init (GUnixResolver *gur) -{ - g_unix_resolver_reload (G_RESOLVER (gur)); -} - -static void -g_unix_resolver_finalize (GObject *object) -{ - GUnixResolver *gur = G_UNIX_RESOLVER (object); - - if (gur->watch) - g_source_remove (gur->watch); - _g_asyncns_free (gur->asyncns); - - G_OBJECT_CLASS (g_unix_resolver_parent_class)->finalize (object); -} - -static void -g_unix_resolver_reload (GResolver *resolver) -{ - GUnixResolver *gur = G_UNIX_RESOLVER (resolver); - gint fd; - GIOChannel *io; - - if (gur->asyncns) - { - if (_g_asyncns_getnqueries (gur->asyncns) == 0) - { - g_source_remove (gur->watch); - _g_asyncns_free (gur->asyncns); - } - /* else, we will free it later from g_unix_resolver_watch */ - } - - /* FIXME: how many workers? */ - gur->asyncns = _g_asyncns_new (2); - - fd = _g_asyncns_fd (gur->asyncns); - io = g_io_channel_unix_new (fd); - gur->watch = g_io_add_watch (io, G_IO_IN | G_IO_HUP | G_IO_ERR, - g_unix_resolver_watch, gur->asyncns); - g_io_channel_unref (io); -} - -/* The various request possibilities: - * - * 1. Synchronous: handed off to the base class (GThreadedResolver); - * since it's never possible to cancel a synchronous request in a - * single-threaded program, the request is done in the calling - * thread. - * - * 2. Asynchronous: An appropriate _g_asyncns_query_t is created, and - * then a GUnixResolverRequest is created with that query and a - * GSimpleAsyncResult. Two sub-possibilities: - * - * a. The resolution completes: g_unix_resolver_watch() sees that - * the request has completed, and calls - * g_unix_resolver_request_complete(), which detaches the - * "cancelled" signal handler (if it was present), queues the - * async_result to be completed, and then unrefs it. - * - * b. The resolution is cancelled: request_cancelled() calls - * _g_asyncns_cancel() to cancel the resolution. Then it calls - * g_unix_resolver_request_complete(), which detaches the - * signal handler, and queues async_result to complete in an - * idle handler. Because the asyncns resolution was cancelled, - * g_unix_resolver_watch() will never be triggered for this - * req. - * - * Since there's only a single thread, it's not possible for the - * request to both complete and be cancelled "at the same time", - * and each of the two possibilities takes steps to block the other - * from being able to happen later, so it's always safe to free req - * after the async_result completes. - */ - -typedef struct _GUnixResolverRequest GUnixResolverRequest; -typedef void (*GUnixResolverFunc) (GUnixResolverRequest *); - -struct _GUnixResolverRequest { - GUnixResolver *gur; - _g_asyncns_t *asyncns; - - _g_asyncns_query_t *qy; - union { - struct { - gchar *hostname; - GList *addresses; - } name; - - struct { - GInetAddress *address; - gchar *hostname; - } address; - - struct { - gchar *service; - GList *targets; - } service; - } u; - GUnixResolverFunc process_func, free_func; - - GCancellable *cancellable; - GSimpleAsyncResult *async_result; - -}; - -static void g_unix_resolver_request_free (GUnixResolverRequest *req); -static void request_cancelled (GCancellable *cancellable, - gpointer user_data); - -static GUnixResolverRequest * -g_unix_resolver_request_new (GUnixResolver *gur, - _g_asyncns_query_t *qy, - GUnixResolverFunc process_func, - GUnixResolverFunc free_func, - GCancellable *cancellable, - GSimpleAsyncResult *async_result) -{ - GUnixResolverRequest *req; - - req = g_slice_new0 (GUnixResolverRequest); - req->gur = g_object_ref (gur); - req->asyncns = gur->asyncns; - req->qy = qy; - req->process_func = process_func; - req->free_func = free_func; - - if (cancellable) - { - req->cancellable = g_object_ref (cancellable); - g_signal_connect (cancellable, "cancelled", - G_CALLBACK (request_cancelled), req); - } - - req->async_result = g_object_ref (async_result); - - g_simple_async_result_set_op_res_gpointer (req->async_result, req, (GDestroyNotify)g_unix_resolver_request_free); - - return req; -} - -static void -g_unix_resolver_request_free (GUnixResolverRequest *req) -{ - req->free_func (req); - - /* We don't have to free req->cancellable and req->async_result, - * since they must already have been freed if we're here. - */ - - /* Check if this was the last request remaining on an old asyncns. */ - if (req->asyncns != req->gur->asyncns && - _g_asyncns_getnqueries (req->asyncns) == 0) - _g_asyncns_free (req->asyncns); - - g_object_unref (req->gur); - g_slice_free (GUnixResolverRequest, req); -} - -static void -g_unix_resolver_request_complete (GUnixResolverRequest *req) -{ - if (req->cancellable) - { - g_signal_handlers_disconnect_by_func (req->cancellable, request_cancelled, req); - g_object_unref (req->cancellable); - req->cancellable = NULL; - } - - /* We always complete_in_idle, even if we were called from - * g_unix_resolver_watch(), since we might have been started under a - * non-default g_main_context_get_thread_default(). - */ - g_simple_async_result_complete_in_idle (req->async_result); - g_object_unref (req->async_result); -} - -static void -request_cancelled (GCancellable *cancellable, - gpointer user_data) -{ - GUnixResolverRequest *req = user_data; - GError *error = NULL; - - _g_asyncns_cancel (req->asyncns, req->qy); - req->qy = NULL; - - g_cancellable_set_error_if_cancelled (cancellable, &error); - g_simple_async_result_set_from_error (req->async_result, error); - g_error_free (error); - - g_unix_resolver_request_complete (req); -} - -static gboolean -g_unix_resolver_watch (GIOChannel *iochannel, - GIOCondition condition, - gpointer user_data) -{ - _g_asyncns_t *asyncns = user_data; - _g_asyncns_query_t *qy; - GUnixResolverRequest *req; - - if (condition & (G_IO_HUP | G_IO_ERR)) - { - /* Will happen if we reload, and then eventually kill the old - * _g_asyncns_t when it's done processing requests. - */ - return FALSE; - } - - while (_g_asyncns_wait (asyncns, FALSE) == 0 && - (qy = _g_asyncns_getnext (asyncns)) != NULL) - { - req = _g_asyncns_getuserdata (asyncns, qy); - req->process_func (req); - g_unix_resolver_request_complete (req); - } - - return TRUE; -} - -static GUnixResolverRequest * -resolve_async (GUnixResolver *gur, - _g_asyncns_query_t *qy, - GUnixResolverFunc process_func, - GUnixResolverFunc free_func, - GCancellable *cancellable, - GAsyncReadyCallback callback, - gpointer user_data, - gpointer tag) -{ - GSimpleAsyncResult *result; - GUnixResolverRequest *req; - - result = g_simple_async_result_new (G_OBJECT (gur), callback, user_data, tag); - req = g_unix_resolver_request_new (gur, qy, process_func, free_func, - cancellable, result); - g_object_unref (result); - _g_asyncns_setuserdata (gur->asyncns, qy, req); - - return req; -} - -static void -lookup_by_name_process (GUnixResolverRequest *req) -{ - struct addrinfo *res; - gint retval; - GError *error = NULL; - - retval = _g_asyncns_getaddrinfo_done (req->asyncns, req->qy, &res); - req->u.name.addresses = - _g_resolver_addresses_from_addrinfo (req->u.name.hostname, - res, retval, &error); - if (res) - freeaddrinfo (res); - - if (error) - { - g_simple_async_result_set_from_error (req->async_result, error); - g_error_free (error); - } -} - -static void -lookup_by_name_free (GUnixResolverRequest *req) -{ - g_free (req->u.name.hostname); - if (req->u.name.addresses) - g_resolver_free_addresses (req->u.name.addresses); -} - -static void -lookup_by_name_async (GResolver *resolver, - const gchar *hostname, - GCancellable *cancellable, - GAsyncReadyCallback callback, - gpointer user_data) -{ - GUnixResolver *gur = G_UNIX_RESOLVER (resolver); - GUnixResolverRequest *req; - _g_asyncns_query_t *qy; - - qy = _g_asyncns_getaddrinfo (gur->asyncns, hostname, NULL, - &_g_resolver_addrinfo_hints); - req = resolve_async (gur, qy, lookup_by_name_process, lookup_by_name_free, - cancellable, callback, user_data, lookup_by_name_async); - req->u.name.hostname = g_strdup (hostname); -} - -static GList * -lookup_by_name_finish (GResolver *resolver, - GAsyncResult *result, - GError **error) -{ - GSimpleAsyncResult *simple; - GUnixResolverRequest *req; - GList *addresses; - - g_return_val_if_fail (g_simple_async_result_is_valid (result, G_OBJECT (resolver), lookup_by_name_async), FALSE); - simple = G_SIMPLE_ASYNC_RESULT (result); - - if (g_simple_async_result_propagate_error (simple, error)) - return NULL; - - req = g_simple_async_result_get_op_res_gpointer (simple); - addresses = req->u.name.addresses; - req->u.name.addresses = NULL; - - return addresses; -} - - -static void -lookup_by_address_process (GUnixResolverRequest *req) -{ - gchar host[NI_MAXHOST]; - gint retval; - GError *error = NULL; - - retval = _g_asyncns_getnameinfo_done (req->asyncns, req->qy, - host, sizeof (host), NULL, 0); - req->u.address.hostname = - _g_resolver_name_from_nameinfo (req->u.address.address, - host, retval, &error); - - if (error) - { - g_simple_async_result_set_from_error (req->async_result, error); - g_error_free (error); - } -} - -static void -lookup_by_address_free (GUnixResolverRequest *req) -{ - g_object_unref (req->u.address.address); - if (req->u.address.hostname) - g_free (req->u.address.hostname); -} - -static void -lookup_by_address_async (GResolver *resolver, - GInetAddress *address, - GCancellable *cancellable, - GAsyncReadyCallback callback, - gpointer user_data) -{ - GUnixResolver *gur = G_UNIX_RESOLVER (resolver); - GUnixResolverRequest *req; - _g_asyncns_query_t *qy; - struct sockaddr_storage sockaddr; - gsize sockaddr_size; - - _g_resolver_address_to_sockaddr (address, &sockaddr, &sockaddr_size); - qy = _g_asyncns_getnameinfo (gur->asyncns, - (struct sockaddr *)&sockaddr, sockaddr_size, - NI_NAMEREQD, TRUE, FALSE); - req = resolve_async (gur, qy, lookup_by_address_process, - lookup_by_address_free, cancellable, - callback, user_data, lookup_by_address_async); - req->u.address.address = g_object_ref (address); -} - -static gchar * -lookup_by_address_finish (GResolver *resolver, - GAsyncResult *result, - GError **error) -{ - GSimpleAsyncResult *simple; - GUnixResolverRequest *req; - gchar *name; - - g_return_val_if_fail (g_simple_async_result_is_valid (result, G_OBJECT (resolver), lookup_by_address_async), FALSE); - simple = G_SIMPLE_ASYNC_RESULT (result); - - if (g_simple_async_result_propagate_error (simple, error)) - return NULL; - - req = g_simple_async_result_get_op_res_gpointer (simple); - name = req->u.address.hostname; - req->u.address.hostname = NULL; - - return name; -} - - -static void -lookup_service_process (GUnixResolverRequest *req) -{ - guchar *answer; - gint len, herr; - GError *error = NULL; - - len = _g_asyncns_res_done (req->asyncns, req->qy, &answer); - if (len < 0) - herr = h_errno; - else - herr = 0; - - req->u.service.targets = - _g_resolver_targets_from_res_query (req->u.service.service, - answer, len, herr, &error); - _g_asyncns_freeanswer (answer); - - if (error) - { - g_simple_async_result_set_from_error (req->async_result, error); - g_error_free (error); - } -} - -static void -lookup_service_free (GUnixResolverRequest *req) -{ - g_free (req->u.service.service); - if (req->u.service.targets) - g_resolver_free_targets (req->u.service.targets); -} - -static void -lookup_service_async (GResolver *resolver, - const char *rrname, - GCancellable *cancellable, - GAsyncReadyCallback callback, - gpointer user_data) -{ - GUnixResolver *gur = G_UNIX_RESOLVER (resolver); - GUnixResolverRequest *req; - _g_asyncns_query_t *qy; - - qy = _g_asyncns_res_query (gur->asyncns, rrname, C_IN, T_SRV); - req = resolve_async (gur, qy, lookup_service_process, lookup_service_free, - cancellable, callback, user_data, lookup_service_async); - req->u.service.service = g_strdup (rrname); -} - -static GList * -lookup_service_finish (GResolver *resolver, - GAsyncResult *result, - GError **error) -{ - GSimpleAsyncResult *simple; - GUnixResolverRequest *req; - GList *targets; - - g_return_val_if_fail (g_simple_async_result_is_valid (result, G_OBJECT (resolver), lookup_service_async), FALSE); - simple = G_SIMPLE_ASYNC_RESULT (result); - - if (g_simple_async_result_propagate_error (simple, error)) - return NULL; - - req = g_simple_async_result_get_op_res_gpointer (simple); - targets = req->u.service.targets; - req->u.service.targets = NULL; - - return targets; -} - - -static void -g_unix_resolver_class_init (GUnixResolverClass *unix_class) -{ - GResolverClass *resolver_class = G_RESOLVER_CLASS (unix_class); - GObjectClass *object_class = G_OBJECT_CLASS (unix_class); - - resolver_class->reload = g_unix_resolver_reload; - resolver_class->lookup_by_name_async = lookup_by_name_async; - resolver_class->lookup_by_name_finish = lookup_by_name_finish; - resolver_class->lookup_by_address_async = lookup_by_address_async; - resolver_class->lookup_by_address_finish = lookup_by_address_finish; - resolver_class->lookup_service_async = lookup_service_async; - resolver_class->lookup_service_finish = lookup_service_finish; - - object_class->finalize = g_unix_resolver_finalize; -} - -#define __G_UNIX_RESOLVER_C__ -#include "gioaliasdef.c" diff --git a/gio/gunixresolver.h b/gio/gunixresolver.h deleted file mode 100644 index cf7765b..0000000 --- a/gio/gunixresolver.h +++ /dev/null @@ -1,53 +0,0 @@ -/* GIO - GLib Input, Output and Streaming Library - * - * Copyright (C) 2008 Red Hat, Inc. - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2 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. - */ - -#ifndef __G_UNIX_RESOLVER_H__ -#define __G_UNIX_RESOLVER_H__ - -#include -#include "libasyncns/asyncns.h" - -G_BEGIN_DECLS - -#define G_TYPE_UNIX_RESOLVER (g_unix_resolver_get_type ()) -#define G_UNIX_RESOLVER(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), G_TYPE_UNIX_RESOLVER, GUnixResolver)) -#define G_UNIX_RESOLVER_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), G_TYPE_UNIX_RESOLVER, GUnixResolverClass)) -#define G_IS_UNIX_RESOLVER(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), G_TYPE_UNIX_RESOLVER)) -#define G_IS_UNIX_RESOLVER_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), G_TYPE_UNIX_RESOLVER)) -#define G_UNIX_RESOLVER_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), G_TYPE_UNIX_RESOLVER, GUnixResolverClass)) - -typedef struct { - GThreadedResolver parent_instance; - - _g_asyncns_t *asyncns; - guint watch; - -} GUnixResolver; - -typedef struct { - GThreadedResolverClass parent_class; - -} GUnixResolverClass; - -GType g_unix_resolver_get_type (void) G_GNUC_CONST; - -G_END_DECLS - -#endif /* __G_RESOLVER_H__ */ diff --git a/gio/gwin32resolver.c b/gio/gwin32resolver.c deleted file mode 100644 index 5198b95..0000000 --- a/gio/gwin32resolver.c +++ /dev/null @@ -1,487 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ - -/* GIO - GLib Input, Output and Streaming Library - * - * Copyright (C) 2008 Red Hat, Inc. - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2 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. - */ - -#include "config.h" -#include -#include "glibintl.h" - -#include -#include - -#include "gwin32resolver.h" -#include "gnetworkingprivate.h" - -#include "gcancellable.h" -#include "gsimpleasyncresult.h" -#include "gsocketaddress.h" - -#include "gioalias.h" - -G_DEFINE_TYPE (GWin32Resolver, g_win32_resolver, G_TYPE_THREADED_RESOLVER) - -static void -g_win32_resolver_init (GWin32Resolver *gwr) -{ -} - -/* This is simpler than GThreadedResolver since we don't have to worry - * about multiple application-level threads, but more complicated than - * GUnixResolver, since we do have to deal with multiple threads of - * our own. - * - * The various request possibilities: - * - * 1. Synchronous: handed off to the base class (GThreadedResolver); - * since it's never possible to cancel a synchronous request in a - * single-threaded program, the request is done in the calling - * thread. - * - * 2. Asynchronous: A GWin32ResolverRequest is created with - * appropriate query-specific information, a Windows event handle, - * and a GSimpleAsyncResult. This is then handed to the - * Windows-internal thread pool, which does the raw DNS query part - * of the operation (being careful to not call any glib methods - * that might fail when called from another thread when - * g_thread_init() has not been called). The main thread sets up a - * GSource to asynchronously poll the event handle. There are two - * sub-possibilities: - * - * a. The resolution completes: the threadpool function calls - * SetEvent() on the event handle and then returns. - * - * b. The resolution is cancelled: request_cancelled() - * disconnects the "cancelled" signal handler, and queues an - * idle handler to complete the async_result. - * - * Since we can't free the request from the threadpool thread - * (because of glib locking issues), we *always* have to have it - * call SetEvent and trigger the callback to indicate that it is - * done. But this means that it's possible for the request to be - * cancelled (queuing an idle handler to return that result) and - * then have the resolution thread complete before the idle handler - * runs. So the event callback and the idle handler need to both - * watch out for this, making sure we don't complete the same - * result twice. - */ - -typedef struct GWin32ResolverRequest GWin32ResolverRequest; -typedef void (*GWin32ResolverRequestFreeFunc) (GWin32ResolverRequest *); - -struct GWin32ResolverRequest { - GWin32ResolverRequestFreeFunc free_func; - - GCancellable *cancellable; - GError *error; - - HANDLE *event; - GSimpleAsyncResult *async_result; - gboolean complete; - GSource *cancelled_idle; - - union { - struct { - gchar *name; - gint retval; - struct addrinfo *res; - } name; - - struct { - GInetAddress *iaddr; - struct sockaddr_storage addr; - gsize addrlen; - gint retval; - gchar *namebuf; - } address; - - struct { - gchar *rrname; - DNS_STATUS retval; - DNS_RECORD *results; - } service; - } u; - -}; - -static GSource *g_win32_handle_source_add (HANDLE handle, - GSourceFunc callback, - gpointer user_data); - -static gboolean request_completed (gpointer user_data); -static void request_cancelled (GCancellable *cancellable, - gpointer user_data); - -GWin32ResolverRequest * -g_win32_resolver_request_new (GResolver *resolver, - GWin32ResolverRequestFreeFunc free_func, - GCancellable *cancellable, - GAsyncReadyCallback callback, - gpointer user_data, - gpointer tag) -{ - GWin32ResolverRequest *req; - - req = g_slice_new0 (GWin32ResolverRequest); - req->free_func = free_func; - - req->async_result = g_simple_async_result_new (G_OBJECT (resolver), callback, - user_data, tag); - g_simple_async_result_set_op_res_gpointer (req->async_result, req, NULL); - - req->event = CreateEvent (NULL, FALSE, FALSE, NULL); - g_win32_handle_source_add (req->event, request_completed, req); - - if (cancellable) - { - req->cancellable = g_object_ref (cancellable); - g_signal_connect (cancellable, "cancelled", - G_CALLBACK (request_cancelled), req); - } - - return req; -} - -static gboolean -request_completed (gpointer user_data) -{ - GWin32ResolverRequest *req = user_data; - - /* Clean up cancellation-related stuff first */ - if (req->cancelled_idle) - { - g_source_destroy (req->cancelled_idle); - g_source_unref (req->cancelled_idle); - req->cancelled_idle = NULL; - } - if (req->cancellable) - { - g_signal_handlers_disconnect_by_func (req->cancellable, request_cancelled, req); - g_object_unref (req->cancellable); - } - - /* Now complete the result (assuming it wasn't already completed) */ - if (req->async_result) - { - g_simple_async_result_complete (req->async_result); - g_object_unref (req->async_result); - } - - /* And free req */ - CloseHandle (req->event); - req->free_func (req); - g_slice_free (GWin32ResolverRequest, req); - - return FALSE; -} - -static gboolean -request_cancelled_idle (gpointer user_data) -{ - GWin32ResolverRequest *req = user_data; - GError *error = NULL; - - g_source_unref (req->cancelled_idle); - req->cancelled_idle = NULL; - - g_cancellable_set_error_if_cancelled (req->cancellable, &error); - g_simple_async_result_set_from_error (req->async_result, error); - g_simple_async_result_complete (req->async_result); - - g_object_unref (req->async_result); - req->async_result = NULL; - - /* request_completed will eventually be called to free req */ - - return FALSE; -} - -static void -request_cancelled (GCancellable *cancellable, - gpointer user_data) -{ - GWin32ResolverRequest *req = user_data; - - if (req->cancellable) - { - g_signal_handlers_disconnect_by_func (req->cancellable, request_cancelled, req); - g_object_unref (req->cancellable); - req->cancellable = NULL; - } - - /* We need to wait until main-loop-time to actually complete the - * result; we don't use _complete_in_idle() here because we need to - * keep track of the source so we can potentially cancel it before - * it runs. - */ - req->cancelled_idle = g_idle_source_new (); - g_source_set_callback (req->cancelled_idle, - (GSourceFunc)request_cancelled_idle, req, NULL); - g_source_attach (req->cancelled_idle, g_main_context_get_thread_default ()); -} - -static DWORD WINAPI -lookup_by_name_in_thread (LPVOID data) -{ - GWin32ResolverRequest *req = data; - - req->u.name.retval = getaddrinfo (req->u.name.name, NULL, - &_g_resolver_addrinfo_hints, - &req->u.name.res); - SetEvent (req->event); - return 0; -} - -static void -free_lookup_by_name (GWin32ResolverRequest *req) -{ - g_free (req->u.name.name); - if (req->u.name.res) - freeaddrinfo (req->u.name.res); -} - -static void -lookup_by_name_async (GResolver *resolver, - const gchar *hostname, - GCancellable *cancellable, - GAsyncReadyCallback callback, - gpointer user_data) -{ - GWin32ResolverRequest *req; - - req = g_win32_resolver_request_new (resolver, free_lookup_by_name, - cancellable, callback, user_data, - lookup_by_name_async); - req->u.name.name = g_strdup (hostname); - - QueueUserWorkItem (lookup_by_name_in_thread, req, 0); -} - -static GList * -lookup_by_name_finish (GResolver *resolver, - GAsyncResult *result, - GError **error) -{ - GSimpleAsyncResult *simple; - GWin32ResolverRequest *req; - - g_return_val_if_fail (g_simple_async_result_is_valid (result, G_OBJECT (resolver), lookup_by_name_async), NULL); - simple = G_SIMPLE_ASYNC_RESULT (result); - - req = g_simple_async_result_get_op_res_gpointer (simple); - return _g_resolver_addresses_from_addrinfo (req->u.name.name, req->u.name.res, - req->u.name.retval, error); -} - - -static DWORD WINAPI -lookup_by_addresses_in_thread (LPVOID data) -{ - GWin32ResolverRequest *req = data; - - req->u.address.retval = - getnameinfo ((struct sockaddr *)&req->u.address.addr, - req->u.address.addrlen, - req->u.address.namebuf, NI_MAXHOST, NULL, 0, NI_NAMEREQD); - SetEvent (req->event); - return 0; -} - -static void -free_lookup_by_address (GWin32ResolverRequest *req) -{ - g_object_unref (req->u.address.iaddr); - g_free (req->u.address.namebuf); -} - -static void -lookup_by_address_async (GResolver *resolver, - GInetAddress *address, - GCancellable *cancellable, - GAsyncReadyCallback callback, - gpointer user_data) -{ - GWin32ResolverRequest *req; - - req = g_win32_resolver_request_new (resolver, free_lookup_by_address, - cancellable, callback, user_data, - lookup_by_address_async); - - req->u.address.iaddr = g_object_ref (address); - _g_resolver_address_to_sockaddr (address, &req->u.address.addr, - &req->u.address.addrlen); - req->u.address.namebuf = g_malloc (NI_MAXHOST); - - QueueUserWorkItem (lookup_by_addresses_in_thread, req, 0); -} - -static char * -lookup_by_address_finish (GResolver *resolver, - GAsyncResult *result, - GError **error) -{ - GSimpleAsyncResult *simple; - GWin32ResolverRequest *req; - - g_return_val_if_fail (g_simple_async_result_is_valid (result, G_OBJECT (resolver), lookup_by_address_async), NULL); - simple = G_SIMPLE_ASYNC_RESULT (result); - - req = g_simple_async_result_get_op_res_gpointer (simple); - return _g_resolver_name_from_nameinfo (req->u.address.iaddr, - req->u.address.namebuf, - req->u.address.retval, error); -} - - -static DWORD WINAPI -lookup_service_in_thread (LPVOID data) -{ - GWin32ResolverRequest *req = data; - - req->u.service.retval = - DnsQuery_A (req->u.service.rrname, DNS_TYPE_SRV, DNS_QUERY_STANDARD, - NULL, &req->u.service.results, NULL); - SetEvent (req->event); - return 0; -} - -static void -free_lookup_service (GWin32ResolverRequest *req) -{ - g_free (req->u.service.rrname); - if (req->u.service.results) - DnsRecordListFree (req->u.service.results, DnsFreeRecordList); -} - -static void -lookup_service_async (GResolver *resolver, - const char *rrname, - GCancellable *cancellable, - GAsyncReadyCallback callback, - gpointer user_data) -{ - GWin32ResolverRequest *req; - - req = g_win32_resolver_request_new (resolver, free_lookup_service, - cancellable, callback, user_data, - lookup_service_async); - req->u.service.rrname = g_strdup (rrname); - - QueueUserWorkItem (lookup_service_in_thread, req, 0); -} - -static GList * -lookup_service_finish (GResolver *resolver, - GAsyncResult *result, - GError **error) -{ - GSimpleAsyncResult *simple; - GWin32ResolverRequest *req; - - g_return_val_if_fail (g_simple_async_result_is_valid (result, G_OBJECT (resolver), lookup_service_async), NULL); - simple = G_SIMPLE_ASYNC_RESULT (result); - - req = g_simple_async_result_get_op_res_gpointer (simple); - return _g_resolver_targets_from_DnsQuery (req->u.service.rrname, - req->u.service.retval, - req->u.service.results, error); -} - - -static void -g_win32_resolver_class_init (GWin32ResolverClass *win32_class) -{ - GResolverClass *resolver_class = G_RESOLVER_CLASS (win32_class); - - resolver_class->lookup_by_name_async = lookup_by_name_async; - resolver_class->lookup_by_name_finish = lookup_by_name_finish; - resolver_class->lookup_by_address_async = lookup_by_address_async; - resolver_class->lookup_by_address_finish = lookup_by_address_finish; - resolver_class->lookup_service_async = lookup_service_async; - resolver_class->lookup_service_finish = lookup_service_finish; -} - - -/* Windows HANDLE GSource */ - -typedef struct { - GSource source; - GPollFD pollfd; -} GWin32HandleSource; - -static gboolean -g_win32_handle_source_prepare (GSource *source, - gint *timeout) -{ - *timeout = -1; - return FALSE; -} - -static gboolean -g_win32_handle_source_check (GSource *source) -{ - GWin32HandleSource *hsource = (GWin32HandleSource *)source; - - return hsource->pollfd.revents; -} - -static gboolean -g_win32_handle_source_dispatch (GSource *source, - GSourceFunc callback, - gpointer user_data) -{ - return (*callback) (user_data); -} - -static void -g_win32_handle_source_finalize (GSource *source) -{ - ; -} - -GSourceFuncs g_win32_handle_source_funcs = { - g_win32_handle_source_prepare, - g_win32_handle_source_check, - g_win32_handle_source_dispatch, - g_win32_handle_source_finalize -}; - -static GSource * -g_win32_handle_source_add (HANDLE handle, - GSourceFunc callback, - gpointer user_data) -{ - GWin32HandleSource *hsource; - GSource *source; - - source = g_source_new (&g_win32_handle_source_funcs, sizeof (GWin32HandleSource)); - hsource = (GWin32HandleSource *)source; - hsource->pollfd.fd = (gint)handle; - hsource->pollfd.events = G_IO_IN; - hsource->pollfd.revents = 0; - g_source_add_poll (source, &hsource->pollfd); - - g_source_set_callback (source, callback, user_data, NULL); - g_source_attach (source, g_main_context_get_thread_default ()); - return source; -} - -#define __G_WIN32_RESOLVER_C__ -#include "gioaliasdef.c" diff --git a/gio/gwin32resolver.h b/gio/gwin32resolver.h deleted file mode 100644 index 5cc6a2c..0000000 --- a/gio/gwin32resolver.h +++ /dev/null @@ -1,49 +0,0 @@ -/* GIO - GLib Input, Output and Streaming Library - * - * Copyright (C) 2008 Red Hat, Inc. - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2 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. - */ - -#ifndef __G_WIN32_RESOLVER_H__ -#define __G_WIN32_RESOLVER_H__ - -#include - -G_BEGIN_DECLS - -#define G_TYPE_WIN32_RESOLVER (g_win32_resolver_get_type ()) -#define G_WIN32_RESOLVER(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), G_TYPE_WIN32_RESOLVER, GWin32Resolver)) -#define G_WIN32_RESOLVER_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), G_TYPE_WIN32_RESOLVER, GWin32ResolverClass)) -#define G_IS_WIN32_RESOLVER(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), G_TYPE_WIN32_RESOLVER)) -#define G_IS_WIN32_RESOLVER_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), G_TYPE_WIN32_RESOLVER)) -#define G_WIN32_RESOLVER_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), G_TYPE_WIN32_RESOLVER, GWin32ResolverClass)) - -typedef struct { - GThreadedResolver parent_instance; - -} GWin32Resolver; - -typedef struct { - GThreadedResolverClass parent_class; - -} GWin32ResolverClass; - -GType g_win32_resolver_get_type (void) G_GNUC_CONST; - -G_END_DECLS - -#endif /* __G_RESOLVER_H__ */ diff --git a/gio/libasyncns/Makefile.am b/gio/libasyncns/Makefile.am deleted file mode 100644 index 80b20a2..0000000 --- a/gio/libasyncns/Makefile.am +++ /dev/null @@ -1,15 +0,0 @@ -## Process this file with automake to produce Makefile.in -include $(top_srcdir)/Makefile.decl - -INCLUDES = -I$(top_srcdir) - -noinst_LTLIBRARIES = libasyncns.la - -libasyncns_la_SOURCES = \ - asyncns.c \ - asyncns.h \ - g-asyncns.h - -libasyncns_la_LIBADD = $(LIBASYNCNS_LIBADD) - -EXTRA_DIST += README update.sh diff --git a/gio/libasyncns/Makefile.in b/gio/libasyncns/Makefile.in deleted file mode 100644 index b0d31c4..0000000 --- a/gio/libasyncns/Makefile.in +++ /dev/null @@ -1,658 +0,0 @@ -# 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@ - -# GLIB - Library of useful C routines - -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 = README $(srcdir)/Makefile.am $(srcdir)/Makefile.in \ - $(top_srcdir)/Makefile.decl -subdir = gio/libasyncns -ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ - $(top_srcdir)/acglib.m4 \ - $(top_srcdir)/glib/libcharset/codeset.m4 \ - $(top_srcdir)/glib/libcharset/glibc21.m4 \ - $(top_srcdir)/m4macros/glib-gettext.m4 \ - $(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 = -libasyncns_la_DEPENDENCIES = $(am__DEPENDENCIES_1) -am_libasyncns_la_OBJECTS = asyncns.lo -libasyncns_la_OBJECTS = $(am_libasyncns_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 = $(libasyncns_la_SOURCES) -DIST_SOURCES = $(libasyncns_la_SOURCES) -ETAGS = etags -CTAGS = ctags -DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ABS_GLIB_RUNTIME_LIBDIR = @ABS_GLIB_RUNTIME_LIBDIR@ -ACLOCAL = @ACLOCAL@ -ALLOCA = @ALLOCA@ -AMTAR = @AMTAR@ -AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ -AR = @AR@ -AS = @AS@ -AUTOCONF = @AUTOCONF@ -AUTOHEADER = @AUTOHEADER@ -AUTOMAKE = @AUTOMAKE@ -AWK = @AWK@ -CATALOGS = @CATALOGS@ -CATOBJEXT = @CATOBJEXT@ -CC = @CC@ -CCDEPMODE = @CCDEPMODE@ -CFLAGS = @CFLAGS@ -CONFIG_STATUS_DEPENDENCIES = @CONFIG_STATUS_DEPENDENCIES@ -CPP = @CPP@ -CPPFLAGS = @CPPFLAGS@ -CXX = @CXX@ -CXXCPP = @CXXCPP@ -CXXDEPMODE = @CXXDEPMODE@ -CXXFLAGS = @CXXFLAGS@ -CYGPATH_W = @CYGPATH_W@ -DATADIRNAME = @DATADIRNAME@ -DEFS = @DEFS@ -DEPDIR = @DEPDIR@ -DISABLE_MEM_POOLS = @DISABLE_MEM_POOLS@ -DLLTOOL = @DLLTOOL@ -DSYMUTIL = @DSYMUTIL@ -DUMPBIN = @DUMPBIN@ -ECHO_C = @ECHO_C@ -ECHO_N = @ECHO_N@ -ECHO_T = @ECHO_T@ -EGREP = @EGREP@ -EXEEXT = @EXEEXT@ -FAM_LIBS = @FAM_LIBS@ -FGREP = @FGREP@ -GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ -GIO = @GIO@ -GIO_MODULE_DIR = @GIO_MODULE_DIR@ -GLIBC21 = @GLIBC21@ -GLIB_BINARY_AGE = @GLIB_BINARY_AGE@ -GLIB_DEBUG_FLAGS = @GLIB_DEBUG_FLAGS@ -GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ -GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ -GLIB_INTERFACE_AGE = @GLIB_INTERFACE_AGE@ -GLIB_MAJOR_VERSION = @GLIB_MAJOR_VERSION@ -GLIB_MICRO_VERSION = @GLIB_MICRO_VERSION@ -GLIB_MINOR_VERSION = @GLIB_MINOR_VERSION@ -GLIB_RUNTIME_LIBDIR = @GLIB_RUNTIME_LIBDIR@ -GLIB_VERSION = @GLIB_VERSION@ -GLIB_WIN32_STATIC_COMPILATION_DEFINE = @GLIB_WIN32_STATIC_COMPILATION_DEFINE@ -GMOFILES = @GMOFILES@ -GMSGFMT = @GMSGFMT@ -GREP = @GREP@ -GSPAWN = @GSPAWN@ -GTHREAD_COMPILE_IMPL_DEFINES = @GTHREAD_COMPILE_IMPL_DEFINES@ -GTKDOC_CHECK = @GTKDOC_CHECK@ -GTKDOC_MKPDF = @GTKDOC_MKPDF@ -GTKDOC_REBASE = @GTKDOC_REBASE@ -G_LIBS_EXTRA = @G_LIBS_EXTRA@ -G_MODULE_BROKEN_RTLD_GLOBAL = @G_MODULE_BROKEN_RTLD_GLOBAL@ -G_MODULE_HAVE_DLERROR = @G_MODULE_HAVE_DLERROR@ -G_MODULE_IMPL = @G_MODULE_IMPL@ -G_MODULE_LDFLAGS = @G_MODULE_LDFLAGS@ -G_MODULE_LIBS = @G_MODULE_LIBS@ -G_MODULE_LIBS_EXTRA = @G_MODULE_LIBS_EXTRA@ -G_MODULE_NEED_USCORE = @G_MODULE_NEED_USCORE@ -G_MODULE_PLUGIN_LIBS = @G_MODULE_PLUGIN_LIBS@ -G_MODULE_SUPPORTED = @G_MODULE_SUPPORTED@ -G_THREAD_CFLAGS = @G_THREAD_CFLAGS@ -G_THREAD_LIBS = @G_THREAD_LIBS@ -G_THREAD_LIBS_EXTRA = @G_THREAD_LIBS_EXTRA@ -G_THREAD_LIBS_FOR_GTHREAD = @G_THREAD_LIBS_FOR_GTHREAD@ -HTML_DIR = @HTML_DIR@ -ICONV_LIBS = @ICONV_LIBS@ -INDENT = @INDENT@ -INSTALL = @INSTALL@ -INSTALL_DATA = @INSTALL_DATA@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ -INSTALL_SCRIPT = @INSTALL_SCRIPT@ -INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ -INSTOBJEXT = @INSTOBJEXT@ -INTLLIBS = @INTLLIBS@ -LD = @LD@ -LDFLAGS = @LDFLAGS@ -LIBASYNCNS_LIBADD = @LIBASYNCNS_LIBADD@ -LIBOBJS = @LIBOBJS@ -LIBS = @LIBS@ -LIBTOOL = @LIBTOOL@ -LIBTOOL_EXPORT_OPTIONS = @LIBTOOL_EXPORT_OPTIONS@ -LIB_EXE_MACHINE_FLAG = @LIB_EXE_MACHINE_FLAG@ -LIPO = @LIPO@ -LN_S = @LN_S@ -LTLIBOBJS = @LTLIBOBJS@ -LT_AGE = @LT_AGE@ -LT_CURRENT = @LT_CURRENT@ -LT_CURRENT_MINUS_AGE = @LT_CURRENT_MINUS_AGE@ -LT_RELEASE = @LT_RELEASE@ -LT_REVISION = @LT_REVISION@ -MAINT = @MAINT@ -MAKEINFO = @MAKEINFO@ -MKDIR_P = @MKDIR_P@ -MKINSTALLDIRS = @MKINSTALLDIRS@ -MSGFMT = @MSGFMT@ -MSGFMT_OPTS = @MSGFMT_OPTS@ -NM = @NM@ -NMEDIT = @NMEDIT@ -OBJDUMP = @OBJDUMP@ -OBJEXT = @OBJEXT@ -OTOOL = @OTOOL@ -OTOOL64 = @OTOOL64@ -PACKAGE = @PACKAGE@ -PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ -PACKAGE_NAME = @PACKAGE_NAME@ -PACKAGE_STRING = @PACKAGE_STRING@ -PACKAGE_TARNAME = @PACKAGE_TARNAME@ -PACKAGE_URL = @PACKAGE_URL@ -PACKAGE_VERSION = @PACKAGE_VERSION@ -PATH_SEPARATOR = @PATH_SEPARATOR@ -PCRE_CFLAGS = @PCRE_CFLAGS@ -PCRE_LIBS = @PCRE_LIBS@ -PCRE_REQUIRES = @PCRE_REQUIRES@ -PCRE_WARN_CFLAGS = @PCRE_WARN_CFLAGS@ -PERL = @PERL@ -PERL_PATH = @PERL_PATH@ -PKG_CONFIG = @PKG_CONFIG@ -PLATFORMDEP = @PLATFORMDEP@ -POFILES = @POFILES@ -POSUB = @POSUB@ -PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ -PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ -PYTHON = @PYTHON@ -PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@ -PYTHON_PLATFORM = @PYTHON_PLATFORM@ -PYTHON_PREFIX = @PYTHON_PREFIX@ -PYTHON_VERSION = @PYTHON_VERSION@ -RANLIB = @RANLIB@ -REBUILD = @REBUILD@ -SED = @SED@ -SELINUX_LIBS = @SELINUX_LIBS@ -SET_MAKE = @SET_MAKE@ -SHELL = @SHELL@ -STRIP = @STRIP@ -USE_NLS = @USE_NLS@ -VERSION = @VERSION@ -WINDRES = @WINDRES@ -XATTR_LIBS = @XATTR_LIBS@ -XGETTEXT = @XGETTEXT@ -XMLCATALOG = @XMLCATALOG@ -XML_CATALOG_FILE = @XML_CATALOG_FILE@ -XSLTPROC = @XSLTPROC@ -ZLIB_LIBS = @ZLIB_LIBS@ -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_CXX = @ac_ct_CXX@ -ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ -am__include = @am__include@ -am__leading_dot = @am__leading_dot@ -am__quote = @am__quote@ -am__tar = @am__tar@ -am__untar = @am__untar@ -bindir = @bindir@ -build = @build@ -build_alias = @build_alias@ -build_cpu = @build_cpu@ -build_os = @build_os@ -build_vendor = @build_vendor@ -builddir = @builddir@ -datadir = @datadir@ -datarootdir = @datarootdir@ -docdir = @docdir@ -dvidir = @dvidir@ -exec_prefix = @exec_prefix@ -host = @host@ -host_alias = @host_alias@ -host_cpu = @host_cpu@ -host_os = @host_os@ -host_vendor = @host_vendor@ -htmldir = @htmldir@ -includedir = @includedir@ -infodir = @infodir@ -install_sh = @install_sh@ -libdir = @libdir@ -libexecdir = @libexecdir@ -localedir = @localedir@ -localstatedir = @localstatedir@ -lt_ECHO = @lt_ECHO@ -mandir = @mandir@ -mkdir_p = @mkdir_p@ -ms_librarian = @ms_librarian@ -oldincludedir = @oldincludedir@ -pdfdir = @pdfdir@ -pkgpyexecdir = @pkgpyexecdir@ -pkgpythondir = @pkgpythondir@ -prefix = @prefix@ -program_transform_name = @program_transform_name@ -psdir = @psdir@ -pyexecdir = @pyexecdir@ -pythondir = @pythondir@ -sbindir = @sbindir@ -sharedstatedir = @sharedstatedir@ -srcdir = @srcdir@ -sysconfdir = @sysconfdir@ -target_alias = @target_alias@ -top_build_prefix = @top_build_prefix@ -top_builddir = @top_builddir@ -top_srcdir = @top_srcdir@ - -#GTESTER = gtester # for non-GLIB packages -GTESTER = $(top_builddir)/glib/gtester # for the GLIB package -GTESTER_REPORT = $(top_builddir)/glib/gtester-report # for the GLIB package - -# initialize variables for unconditional += appending -EXTRA_DIST = README update.sh -TEST_PROGS = -INCLUDES = -I$(top_srcdir) -noinst_LTLIBRARIES = libasyncns.la -libasyncns_la_SOURCES = \ - asyncns.c \ - asyncns.h \ - g-asyncns.h - -libasyncns_la_LIBADD = $(LIBASYNCNS_LIBADD) -all: all-am - -.SUFFIXES: -.SUFFIXES: .c .lo .o .obj -$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/Makefile.decl $(am__configure_deps) - @for dep in $?; do \ - case '$(am__configure_deps)' in \ - *$$dep*) \ - ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ - && { if test -f $@; then exit 0; else break; fi; }; \ - exit 1;; \ - esac; \ - done; \ - echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu gio/libasyncns/Makefile'; \ - $(am__cd) $(top_srcdir) && \ - $(AUTOMAKE) --gnu gio/libasyncns/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 -libasyncns.la: $(libasyncns_la_OBJECTS) $(libasyncns_la_DEPENDENCIES) - $(AM_V_CCLD)$(LINK) $(libasyncns_la_OBJECTS) $(libasyncns_la_LIBADD) $(LIBS) - -mostlyclean-compile: - -rm -f *.$(OBJEXT) - -distclean-compile: - -rm -f *.tab.c - -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/asyncns.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 - -distdir: $(DISTFILES) - @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ - topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ - list='$(DISTFILES)'; \ - dist_files=`for file in $$list; do echo $$file; done | \ - sed -e "s|^$$srcdirstrip/||;t" \ - -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ - case $$dist_files in \ - */*) $(MKDIR_P) `echo "$$dist_files" | \ - sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ - sort -u` ;; \ - esac; \ - for file in $$dist_files; do \ - if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ - if test -d $$d/$$file; then \ - dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ - if test -d "$(distdir)/$$file"; then \ - find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ - fi; \ - if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ - cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ - find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ - fi; \ - cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ - else \ - test -f "$(distdir)/$$file" \ - || cp -p $$d/$$file "$(distdir)/$$file" \ - || exit 1; \ - fi; \ - done -check-am: all-am - $(MAKE) $(AM_MAKEFLAGS) check-local -check: check-am -all-am: Makefile $(LTLIBRARIES) -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 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-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: - -.MAKE: check-am install-am install-strip - -.PHONY: CTAGS GTAGS all all-am check check-am check-local clean \ - clean-generic clean-libtool clean-noinstLTLIBRARIES 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-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 - - -### testing rules - -# test: run all tests in cwd and subdirs -test: ${TEST_PROGS} -@OS_UNIX_TRUE@ @test -z "${TEST_PROGS}" || ${GTESTER} --verbose ${TEST_PROGS} -@OS_UNIX_TRUE@ @ for subdir in $(SUBDIRS) . ; do \ -@OS_UNIX_TRUE@ test "$$subdir" = "." -o "$$subdir" = "po" || \ -@OS_UNIX_TRUE@ ( cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $@ ) || exit $? ; \ -@OS_UNIX_TRUE@ done - -# test-report: run tests in subdirs and generate report -# perf-report: run tests in subdirs with -m perf and generate report -# full-report: like test-report: with -m perf and -m slow -test-report perf-report full-report: ${TEST_PROGS} - @test -z "${TEST_PROGS}" || { \ - case $@ in \ - test-report) test_options="-k";; \ - perf-report) test_options="-k -m=perf";; \ - full-report) test_options="-k -m=perf -m=slow";; \ - esac ; \ - if test -z "$$GTESTER_LOGDIR" ; then \ - ${GTESTER} --verbose $$test_options -o test-report.xml ${TEST_PROGS} ; \ - elif test -n "${TEST_PROGS}" ; then \ - ${GTESTER} --verbose $$test_options -o `mktemp "$$GTESTER_LOGDIR/log-XXXXXX"` ${TEST_PROGS} ; \ - fi ; \ - } - @ ignore_logdir=true ; \ - if test -z "$$GTESTER_LOGDIR" ; then \ - GTESTER_LOGDIR=`mktemp -d "\`pwd\`/.testlogs-XXXXXX"`; export GTESTER_LOGDIR ; \ - ignore_logdir=false ; \ - fi ; \ - for subdir in $(SUBDIRS) . ; do \ - test "$$subdir" = "." -o "$$subdir" = "po" || \ - ( cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $@ ) || exit $? ; \ - done ; \ - $$ignore_logdir || { \ - echo '' > $@.xml ; \ - echo '' >> $@.xml ; \ - for lf in `ls -L "$$GTESTER_LOGDIR"/.` ; do \ - sed '1,1s/^?]*?>//' <"$$GTESTER_LOGDIR"/"$$lf" >> $@.xml ; \ - done ; \ - echo >> $@.xml ; \ - echo '' >> $@.xml ; \ - rm -rf "$$GTESTER_LOGDIR"/ ; \ - ${GTESTER_REPORT} --version 2>/dev/null 1>&2 ; test "$$?" != 0 || ${GTESTER_REPORT} $@.xml >$@.html ; \ - } -.PHONY: test test-report perf-report full-report -# run make test as part of make check -check-local: test - -# 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: diff --git a/gio/libasyncns/README b/gio/libasyncns/README deleted file mode 100644 index b926291..0000000 --- a/gio/libasyncns/README +++ /dev/null @@ -1,7 +0,0 @@ -The sources are derived from Lennart Poettering's libasyncns library: - - http://0pointer.de/lennart/projects/libasyncns/ - -The 'update.sh' script in this directory, when pointed at -the original sources updates the files in this directory -to the new version diff --git a/gio/libasyncns/asyncns.c b/gio/libasyncns/asyncns.c deleted file mode 100644 index 155f491..0000000 --- a/gio/libasyncns/asyncns.c +++ /dev/null @@ -1,1533 +0,0 @@ -/*** - This file is part of libasyncns. - - Copyright 2005-2008 Lennart Poettering - - libasyncns 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. - - libasyncns 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 libasyncns. If not, see - . -***/ - -#ifdef HAVE_CONFIG_H -#include "g-asyncns.h" -#endif - -/* #undef HAVE_PTHREAD */ - -#include -#include -#include -#include - -#ifdef HAVE_SYS_SELECT_H -#include -#endif - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#ifdef HAVE_SYS_TIME_H -#include -#endif - -#include -#ifdef HAVE_STDINT_H -#include -#endif -#ifdef HAVE_INTTYPES_H -#include -#endif - -#ifdef HAVE_SYS_PRCTL_H -#include -#endif - -#if HAVE_PTHREAD -#include -#endif - -#include "asyncns.h" - -#ifndef MSG_NOSIGNAL -#define MSG_NOSIGNAL 0 -#endif - -#define MAX_WORKERS 16 -#define MAX_QUERIES 256 -#define BUFSIZE (10240) - -typedef enum { - REQUEST_ADDRINFO, - RESPONSE_ADDRINFO, - REQUEST_NAMEINFO, - RESPONSE_NAMEINFO, - REQUEST_RES_QUERY, - REQUEST_RES_SEARCH, - RESPONSE_RES, - REQUEST_TERMINATE, - RESPONSE_DIED -} query_type_t; - -enum { - REQUEST_RECV_FD = 0, - REQUEST_SEND_FD = 1, - RESPONSE_RECV_FD = 2, - RESPONSE_SEND_FD = 3, - MESSAGE_FD_MAX = 4 -}; - -struct asyncns { - int fds[4]; - -#ifndef HAVE_PTHREAD - pid_t workers[MAX_WORKERS]; -#else - pthread_t workers[MAX_WORKERS]; -#endif - unsigned valid_workers; - - unsigned current_id, current_index; - _g_asyncns_query_t* queries[MAX_QUERIES]; - - _g_asyncns_query_t *done_head, *done_tail; - - int n_queries; - int dead; -}; - -struct _g_asyncns_query { - _g_asyncns_t *asyncns; - int done; - unsigned id; - query_type_t type; - _g_asyncns_query_t *done_next, *done_prev; - int ret; - int _errno; - int _h_errno; - struct addrinfo *addrinfo; - char *serv, *host; - void *userdata; -}; - -typedef struct rheader { - query_type_t type; - unsigned id; - size_t length; -} rheader_t; - -typedef struct addrinfo_request { - struct rheader header; - int hints_is_null; - int ai_flags; - int ai_family; - int ai_socktype; - int ai_protocol; - size_t node_len, service_len; -} addrinfo_request_t; - -typedef struct addrinfo_response { - struct rheader header; - int ret; - int _errno; - int _h_errno; - /* followed by addrinfo_serialization[] */ -} addrinfo_response_t; - -typedef struct addrinfo_serialization { - int ai_flags; - int ai_family; - int ai_socktype; - int ai_protocol; - size_t ai_addrlen; - size_t canonname_len; - /* Followed by ai_addr amd ai_canonname with variable lengths */ -} addrinfo_serialization_t; - -typedef struct nameinfo_request { - struct rheader header; - int flags; - socklen_t sockaddr_len; - int gethost, getserv; -} nameinfo_request_t; - -typedef struct nameinfo_response { - struct rheader header; - size_t hostlen, servlen; - int ret; - int _errno; - int _h_errno; -} nameinfo_response_t; - -typedef struct res_request { - struct rheader header; - int class; - int type; - size_t dname_len; -} res_request_t; - -typedef struct res_response { - struct rheader header; - int ret; - int _errno; - int _h_errno; -} res_response_t; - -typedef union packet { - rheader_t rheader; - addrinfo_request_t addrinfo_request; - addrinfo_response_t addrinfo_response; - nameinfo_request_t nameinfo_request; - nameinfo_response_t nameinfo_response; - res_request_t res_request; - res_response_t res_response; -} packet_t; - -#ifndef HAVE_STRNDUP - -static char *strndup(const char *s, size_t l) { - size_t a; - char *n; - - a = strlen(s); - if (a > l) - a = l; - - if (!(n = malloc(a+1))) - return NULL; - - memcpy(n, s, a); - n[a] = 0; - - return n; -} - -#endif - -#ifndef HAVE_PTHREAD - -static int close_allv(const int except_fds[]) { - struct rlimit rl; - int fd, maxfd; - -#ifdef __linux__ - - DIR *d; - - assert(except_fds); - - if ((d = opendir("/proc/self/fd"))) { - - struct dirent *de; - - while ((de = readdir(d))) { - int found; - long l; - char *e = NULL; - int i; - - if (de->d_name[0] == '.') - continue; - - errno = 0; - l = strtol(de->d_name, &e, 10); - if (errno != 0 || !e || *e) { - closedir(d); - errno = EINVAL; - return -1; - } - - fd = (int) l; - - if ((long) fd != l) { - closedir(d); - errno = EINVAL; - return -1; - } - - if (fd < 3) - continue; - - if (fd == dirfd(d)) - continue; - - found = 0; - for (i = 0; except_fds[i] >= 0; i++) - if (except_fds[i] == fd) { - found = 1; - break; - } - - if (found) - continue; - - if (close(fd) < 0) { - int saved_errno; - - saved_errno = errno; - closedir(d); - errno = saved_errno; - - return -1; - } - } - - closedir(d); - return 0; - } - -#endif - - if (getrlimit(RLIMIT_NOFILE, &rl) > 0) - maxfd = (int) rl.rlim_max; - else - maxfd = sysconf(_SC_OPEN_MAX); - - for (fd = 3; fd < maxfd; fd++) { - int i, found; - - found = 0; - for (i = 0; except_fds[i] >= 0; i++) - if (except_fds[i] == fd) { - found = 1; - continue; - } - - if (found) - continue; - - if (close(fd) < 0 && errno != EBADF) - return -1; - } - - return 0; -} - -static int reset_sigsv(const int except[]) { - int sig; - assert(except); - - for (sig = 1; sig < NSIG; sig++) { - int reset = 1; - - switch (sig) { - case SIGKILL: - case SIGSTOP: - reset = 0; - break; - - default: { - int i; - - for (i = 0; except[i] > 0; i++) { - if (sig == except[i]) { - reset = 0; - break; - } - } - } - } - - if (reset) { - struct sigaction sa; - - memset(&sa, 0, sizeof(sa)); - sa.sa_handler = SIG_DFL; - - /* On Linux the first two RT signals are reserved by - * glibc, and sigaction() will return EINVAL for them. */ - if ((sigaction(sig, &sa, NULL) < 0)) - if (errno != EINVAL) - return -1; - } - } - - return 0; -} - -static int ignore_sigsv(const int ignore[]) { - int i; - assert(ignore); - - for (i = 0; ignore[i] > 0; i++) { - struct sigaction sa; - - memset(&sa, 0, sizeof(sa)); - sa.sa_handler = SIG_IGN; - - if ((sigaction(ignore[i], &sa, NULL) < 0)) - return -1; - } - - return 0; -} - -#endif - -static int fd_nonblock(int fd) { - int i; - assert(fd >= 0); - - if ((i = fcntl(fd, F_GETFL, 0)) < 0) - return -1; - - if (i & O_NONBLOCK) - return 0; - - return fcntl(fd, F_SETFL, i | O_NONBLOCK); -} - -static int fd_cloexec(int fd) { - int v; - assert(fd >= 0); - - if ((v = fcntl(fd, F_GETFD, 0)) < 0) - return -1; - - if (v & FD_CLOEXEC) - return 0; - - return fcntl(fd, F_SETFD, v | FD_CLOEXEC); -} - -static int send_died(int out_fd) { - rheader_t rh; - assert(out_fd > 0); - - memset(&rh, 0, sizeof(rh)); - rh.type = RESPONSE_DIED; - rh.id = 0; - rh.length = sizeof(rh); - - return send(out_fd, &rh, rh.length, MSG_NOSIGNAL); -} - -static void *serialize_addrinfo(void *p, const struct addrinfo *ai, size_t *length, size_t maxlength) { - addrinfo_serialization_t s; - size_t cnl, l; - assert(p); - assert(ai); - assert(length); - assert(*length <= maxlength); - - cnl = (ai->ai_canonname ? strlen(ai->ai_canonname)+1 : 0); - l = sizeof(addrinfo_serialization_t) + ai->ai_addrlen + cnl; - - if (*length + l > maxlength) - return NULL; - - s.ai_flags = ai->ai_flags; - s.ai_family = ai->ai_family; - s.ai_socktype = ai->ai_socktype; - s.ai_protocol = ai->ai_protocol; - s.ai_addrlen = ai->ai_addrlen; - s.canonname_len = cnl; - - memcpy((uint8_t*) p, &s, sizeof(addrinfo_serialization_t)); - memcpy((uint8_t*) p + sizeof(addrinfo_serialization_t), ai->ai_addr, ai->ai_addrlen); - - if (ai->ai_canonname) - strcpy((char*) p + sizeof(addrinfo_serialization_t) + ai->ai_addrlen, ai->ai_canonname); - - *length += l; - return (uint8_t*) p + l; -} - -static int send_addrinfo_reply(int out_fd, unsigned id, int ret, struct addrinfo *ai, int _errno, int _h_errno) { - addrinfo_response_t data[BUFSIZE/sizeof(addrinfo_response_t) + 1]; - addrinfo_response_t *resp = data; - assert(out_fd >= 0); - - memset(data, 0, sizeof(data)); - resp->header.type = RESPONSE_ADDRINFO; - resp->header.id = id; - resp->header.length = sizeof(addrinfo_response_t); - resp->ret = ret; - resp->_errno = _errno; - resp->_h_errno = _h_errno; - - if (ret == 0 && ai) { - void *p = data + 1; - struct addrinfo *k; - - for (k = ai; k; k = k->ai_next) { - - if (!(p = serialize_addrinfo(p, k, &resp->header.length, (char*) data + BUFSIZE - (char*) p))) { - resp->ret = EAI_MEMORY; - break; - } - } - } - - if (ai) - freeaddrinfo(ai); - - return send(out_fd, resp, resp->header.length, MSG_NOSIGNAL); -} - -static int send_nameinfo_reply(int out_fd, unsigned id, int ret, const char *host, const char *serv, int _errno, int _h_errno) { - nameinfo_response_t data[BUFSIZE/sizeof(nameinfo_response_t) + 1]; - size_t hl, sl; - nameinfo_response_t *resp = data; - - assert(out_fd >= 0); - - sl = serv ? strlen(serv)+1 : 0; - hl = host ? strlen(host)+1 : 0; - - memset(data, 0, sizeof(data)); - resp->header.type = RESPONSE_NAMEINFO; - resp->header.id = id; - resp->header.length = sizeof(nameinfo_response_t) + hl + sl; - resp->ret = ret; - resp->_errno = _errno; - resp->_h_errno = _h_errno; - resp->hostlen = hl; - resp->servlen = sl; - - assert(sizeof(data) >= resp->header.length); - - if (host) - memcpy((uint8_t *)data + sizeof(nameinfo_response_t), host, hl); - - if (serv) - memcpy((uint8_t *)data + sizeof(nameinfo_response_t) + hl, serv, sl); - - return send(out_fd, resp, resp->header.length, MSG_NOSIGNAL); -} - -static int send_res_reply(int out_fd, unsigned id, const unsigned char *answer, int ret, int _errno, int _h_errno) { - res_response_t data[BUFSIZE/sizeof(res_response_t) + 1]; - res_response_t *resp = data; - - assert(out_fd >= 0); - - memset(data, 0, sizeof(data)); - resp->header.type = RESPONSE_RES; - resp->header.id = id; - resp->header.length = sizeof(res_response_t) + (ret < 0 ? 0 : ret); - resp->ret = ret; - resp->_errno = _errno; - resp->_h_errno = _h_errno; - - assert(sizeof(data) >= resp->header.length); - - if (ret > 0) - memcpy((uint8_t *)data + sizeof(res_response_t), answer, ret); - - return send(out_fd, resp, resp->header.length, MSG_NOSIGNAL); -} - -static int handle_request(int out_fd, const packet_t *packet, size_t length) { - const rheader_t *req; - assert(out_fd >= 0); - - req = &packet->rheader; - assert(req); - assert(length >= sizeof(rheader_t)); - assert(length == req->length); - - switch (req->type) { - - case REQUEST_ADDRINFO: { - struct addrinfo ai, *result = NULL; - const addrinfo_request_t *ai_req = &packet->addrinfo_request; - const char *node, *service; - int ret; - - assert(length >= sizeof(addrinfo_request_t)); - assert(length == sizeof(addrinfo_request_t) + ai_req->node_len + ai_req->service_len); - - memset(&ai, 0, sizeof(ai)); - ai.ai_flags = ai_req->ai_flags; - ai.ai_family = ai_req->ai_family; - ai.ai_socktype = ai_req->ai_socktype; - ai.ai_protocol = ai_req->ai_protocol; - - node = ai_req->node_len ? (const char*) ai_req + sizeof(addrinfo_request_t) : NULL; - service = ai_req->service_len ? (const char*) ai_req + sizeof(addrinfo_request_t) + ai_req->node_len : NULL; - - ret = getaddrinfo(node, service, - ai_req->hints_is_null ? NULL : &ai, - &result); - - /* send_addrinfo_reply() frees result */ - return send_addrinfo_reply(out_fd, req->id, ret, result, errno, h_errno); - } - - case REQUEST_NAMEINFO: { - int ret; - const nameinfo_request_t *ni_req = &packet->nameinfo_request; - char hostbuf[NI_MAXHOST], servbuf[NI_MAXSERV]; - struct sockaddr_storage sa; - - assert(length >= sizeof(nameinfo_request_t)); - assert(length == sizeof(nameinfo_request_t) + ni_req->sockaddr_len); - - memcpy(&sa, (const uint8_t *) ni_req + sizeof(nameinfo_request_t), ni_req->sockaddr_len); - - ret = getnameinfo((struct sockaddr *)&sa, ni_req->sockaddr_len, - ni_req->gethost ? hostbuf : NULL, ni_req->gethost ? sizeof(hostbuf) : 0, - ni_req->getserv ? servbuf : NULL, ni_req->getserv ? sizeof(servbuf) : 0, - ni_req->flags); - - return send_nameinfo_reply(out_fd, req->id, ret, - ret == 0 && ni_req->gethost ? hostbuf : NULL, - ret == 0 && ni_req->getserv ? servbuf : NULL, - errno, h_errno); - } - - case REQUEST_RES_QUERY: - case REQUEST_RES_SEARCH: { - int ret; - HEADER answer[BUFSIZE/sizeof(HEADER) + 1]; - const res_request_t *res_req = &packet->res_request; - const char *dname; - - assert(length >= sizeof(res_request_t)); - assert(length == sizeof(res_request_t) + res_req->dname_len); - - dname = (const char *) req + sizeof(res_request_t); - - if (req->type == REQUEST_RES_QUERY) - ret = res_query(dname, res_req->class, res_req->type, (unsigned char *) answer, BUFSIZE); - else - ret = res_search(dname, res_req->class, res_req->type, (unsigned char *) answer, BUFSIZE); - - return send_res_reply(out_fd, req->id, (unsigned char *) answer, ret, errno, h_errno); - } - - case REQUEST_TERMINATE: - /* Quit */ - return -1; - - default: - ; - } - - return 0; -} - -#ifndef HAVE_PTHREAD - -static int process_worker(int in_fd, int out_fd) { - int have_death_sig = 0; - int good_fds[3]; - int ret = 1; - - const int ignore_sigs[] = { - SIGINT, - SIGHUP, - SIGPIPE, - SIGUSR1, - SIGUSR2, - -1 - }; - - assert(in_fd > 2); - assert(out_fd > 2); - - close(0); - close(1); - close(2); - - if (open("/dev/null", O_RDONLY) != 0) - goto fail; - - if (open("/dev/null", O_WRONLY) != 1) - goto fail; - - if (open("/dev/null", O_WRONLY) != 2) - goto fail; - - if (chdir("/") < 0) - goto fail; - - if (geteuid() == 0) { - struct passwd *pw; - int r; - - if ((pw = getpwnam("nobody"))) { -#ifdef HAVE_SETRESUID - r = setresuid(pw->pw_uid, pw->pw_uid, pw->pw_uid); -#elif HAVE_SETREUID - r = setreuid(pw->pw_uid, pw->pw_uid); -#else - if ((r = setuid(pw->pw_uid)) >= 0) - r = seteuid(pw->pw_uid); -#endif - if (r < 0) - goto fail; - } - } - - if (reset_sigsv(ignore_sigs) < 0) - goto fail; - - if (ignore_sigsv(ignore_sigs) < 0) - goto fail; - - good_fds[0] = in_fd; good_fds[1] = out_fd; good_fds[2] = -1; - if (close_allv(good_fds) < 0) - goto fail; - -#ifdef PR_SET_PDEATHSIG - if (prctl(PR_SET_PDEATHSIG, SIGTERM) >= 0) - have_death_sig = 1; -#endif - - if (!have_death_sig) - fd_nonblock(in_fd); - - while (getppid() > 1) { /* if the parent PID is 1 our parent process died. */ - packet_t buf[BUFSIZE/sizeof(packet_t) + 1]; - ssize_t length; - - if (!have_death_sig) { - fd_set fds; - struct timeval tv = { 0, 500000 }; - - FD_ZERO(&fds); - FD_SET(in_fd, &fds); - - if (select(in_fd+1, &fds, NULL, NULL, &tv) < 0) - break; - - if (getppid() == 1) - break; - } - - if ((length = recv(in_fd, buf, sizeof(buf), 0)) <= 0) { - - if (length < 0 && - (errno == EAGAIN || errno == EINTR)) - continue; - - break; - } - - if (handle_request(out_fd, buf, (size_t) length) < 0) - break; - } - - ret = 0; - -fail: - send_died(out_fd); - - return ret; -} - -#else - -static void* thread_worker(void *p) { - _g_asyncns_t *asyncns = p; - sigset_t fullset; - - /* No signals in this thread please */ - sigfillset(&fullset); - pthread_sigmask(SIG_BLOCK, &fullset, NULL); - - while (!asyncns->dead) { - packet_t buf[BUFSIZE/sizeof(packet_t) + 1]; - ssize_t length; - - if ((length = recv(asyncns->fds[REQUEST_RECV_FD], buf, sizeof(buf), 0)) <= 0) { - - if (length < 0 && - (errno == EAGAIN || errno == EINTR)) - continue; - - break; - } - - if (asyncns->dead) - break; - - if (handle_request(asyncns->fds[RESPONSE_SEND_FD], buf, (size_t) length) < 0) - break; - } - - send_died(asyncns->fds[RESPONSE_SEND_FD]); - - return NULL; -} - -#endif - -_g_asyncns_t* _g_asyncns_new(unsigned n_proc) { - _g_asyncns_t *asyncns = NULL; - int i; - assert(n_proc >= 1); - - if (n_proc > MAX_WORKERS) - n_proc = MAX_WORKERS; - - if (!(asyncns = malloc(sizeof(_g_asyncns_t)))) { - errno = ENOMEM; - goto fail; - } - - asyncns->dead = 0; - asyncns->valid_workers = 0; - - for (i = 0; i < MESSAGE_FD_MAX; i++) - asyncns->fds[i] = -1; - - memset(asyncns->queries, 0, sizeof(asyncns->queries)); - - if (socketpair(PF_UNIX, SOCK_DGRAM, 0, asyncns->fds) < 0 || - socketpair(PF_UNIX, SOCK_DGRAM, 0, asyncns->fds+2) < 0) - goto fail; - - for (i = 0; i < MESSAGE_FD_MAX; i++) - fd_cloexec(asyncns->fds[i]); - - for (asyncns->valid_workers = 0; asyncns->valid_workers < n_proc; asyncns->valid_workers++) { - -#ifndef HAVE_PTHREAD - if ((asyncns->workers[asyncns->valid_workers] = fork()) < 0) - goto fail; - else if (asyncns->workers[asyncns->valid_workers] == 0) { - int ret; - - close(asyncns->fds[REQUEST_SEND_FD]); - close(asyncns->fds[RESPONSE_RECV_FD]); - ret = process_worker(asyncns->fds[REQUEST_RECV_FD], asyncns->fds[RESPONSE_SEND_FD]); - close(asyncns->fds[REQUEST_RECV_FD]); - close(asyncns->fds[RESPONSE_SEND_FD]); - _exit(ret); - } -#else - int r; - - if ((r = pthread_create(&asyncns->workers[asyncns->valid_workers], NULL, thread_worker, asyncns)) != 0) { - errno = r; - goto fail; - } -#endif - } - -#ifndef HAVE_PTHREAD - close(asyncns->fds[REQUEST_RECV_FD]); - close(asyncns->fds[RESPONSE_SEND_FD]); - asyncns->fds[REQUEST_RECV_FD] = asyncns->fds[RESPONSE_SEND_FD] = -1; -#endif - - asyncns->current_index = asyncns->current_id = 0; - asyncns->done_head = asyncns->done_tail = NULL; - asyncns->n_queries = 0; - - fd_nonblock(asyncns->fds[RESPONSE_RECV_FD]); - - return asyncns; - -fail: - if (asyncns) - _g_asyncns_free(asyncns); - - return NULL; -} - -void _g_asyncns_free(_g_asyncns_t *asyncns) { - int i; - int saved_errno = errno; - unsigned p; - - assert(asyncns); - - asyncns->dead = 1; - - if (asyncns->fds[REQUEST_SEND_FD] >= 0) { - rheader_t req; - - memset(&req, 0, sizeof(req)); - req.type = REQUEST_TERMINATE; - req.length = sizeof(req); - req.id = 0; - - /* Send one termination packet for each worker */ - for (p = 0; p < asyncns->valid_workers; p++) - send(asyncns->fds[REQUEST_SEND_FD], &req, req.length, MSG_NOSIGNAL); - } - - /* Now terminate them and wait until they are gone. */ - for (p = 0; p < asyncns->valid_workers; p++) { -#ifndef HAVE_PTHREAD - kill(asyncns->workers[p], SIGTERM); - for (;;) { - if (waitpid(asyncns->workers[p], NULL, 0) >= 0 || errno != EINTR) - break; - } -#else - for (;;) { - if (pthread_join(asyncns->workers[p], NULL) != EINTR) - break; - } -#endif - } - - /* Close all communication channels */ - for (i = 0; i < MESSAGE_FD_MAX; i++) - if (asyncns->fds[i] >= 0) - close(asyncns->fds[i]); - - for (p = 0; p < MAX_QUERIES; p++) - if (asyncns->queries[p]) - _g_asyncns_cancel(asyncns, asyncns->queries[p]); - - free(asyncns); - - errno = saved_errno; -} - -int _g_asyncns_fd(_g_asyncns_t *asyncns) { - assert(asyncns); - - return asyncns->fds[RESPONSE_RECV_FD]; -} - -static _g_asyncns_query_t *lookup_query(_g_asyncns_t *asyncns, unsigned id) { - _g_asyncns_query_t *q; - assert(asyncns); - - if ((q = asyncns->queries[id % MAX_QUERIES])) - if (q->id == id) - return q; - - return NULL; -} - -static void complete_query(_g_asyncns_t *asyncns, _g_asyncns_query_t *q) { - assert(asyncns); - assert(q); - assert(!q->done); - - q->done = 1; - - if ((q->done_prev = asyncns->done_tail)) - asyncns->done_tail->done_next = q; - else - asyncns->done_head = q; - - asyncns->done_tail = q; - q->done_next = NULL; -} - -static const void *unserialize_addrinfo(const void *p, struct addrinfo **ret_ai, size_t *length) { - addrinfo_serialization_t s; - size_t l; - struct addrinfo *ai; - assert(p); - assert(ret_ai); - assert(length); - - if (*length < sizeof(addrinfo_serialization_t)) - return NULL; - - memcpy(&s, p, sizeof(s)); - - l = sizeof(addrinfo_serialization_t) + s.ai_addrlen + s.canonname_len; - if (*length < l) - return NULL; - - if (!(ai = malloc(sizeof(struct addrinfo)))) - goto fail; - - ai->ai_addr = NULL; - ai->ai_canonname = NULL; - ai->ai_next = NULL; - - if (s.ai_addrlen && !(ai->ai_addr = malloc(s.ai_addrlen))) - goto fail; - - if (s.canonname_len && !(ai->ai_canonname = malloc(s.canonname_len))) - goto fail; - - ai->ai_flags = s.ai_flags; - ai->ai_family = s.ai_family; - ai->ai_socktype = s.ai_socktype; - ai->ai_protocol = s.ai_protocol; - ai->ai_addrlen = s.ai_addrlen; - - if (ai->ai_addr) - memcpy(ai->ai_addr, (const uint8_t*) p + sizeof(addrinfo_serialization_t), s.ai_addrlen); - - if (ai->ai_canonname) - memcpy(ai->ai_canonname, (const uint8_t*) p + sizeof(addrinfo_serialization_t) + s.ai_addrlen, s.canonname_len); - - *length -= l; - *ret_ai = ai; - - return (const uint8_t*) p + l; - - -fail: - if (ai) - _g_asyncns_freeaddrinfo(ai); - - return NULL; -} - -static int handle_response(_g_asyncns_t *asyncns, const packet_t *packet, size_t length) { - const rheader_t *resp; - _g_asyncns_query_t *q; - - assert(asyncns); - - resp = &packet->rheader; - assert(resp); - assert(length >= sizeof(rheader_t)); - assert(length == resp->length); - - if (resp->type == RESPONSE_DIED) { - asyncns->dead = 1; - return 0; - } - - if (!(q = lookup_query(asyncns, resp->id))) - return 0; - - switch (resp->type) { - case RESPONSE_ADDRINFO: { - const addrinfo_response_t *ai_resp = &packet->addrinfo_response; - const void *p; - size_t l; - struct addrinfo *prev = NULL; - - assert(length >= sizeof(addrinfo_response_t)); - assert(q->type == REQUEST_ADDRINFO); - - q->ret = ai_resp->ret; - q->_errno = ai_resp->_errno; - q->_h_errno = ai_resp->_h_errno; - l = length - sizeof(addrinfo_response_t); - p = (const uint8_t*) resp + sizeof(addrinfo_response_t); - - while (l > 0 && p) { - struct addrinfo *ai = NULL; - p = unserialize_addrinfo(p, &ai, &l); - - if (!p || !ai) { - q->ret = EAI_MEMORY; - break; - } - - if (prev) - prev->ai_next = ai; - else - q->addrinfo = ai; - - prev = ai; - } - - complete_query(asyncns, q); - break; - } - - case RESPONSE_NAMEINFO: { - const nameinfo_response_t *ni_resp = &packet->nameinfo_response; - - assert(length >= sizeof(nameinfo_response_t)); - assert(q->type == REQUEST_NAMEINFO); - - q->ret = ni_resp->ret; - q->_errno = ni_resp->_errno; - q->_h_errno = ni_resp->_h_errno; - - if (ni_resp->hostlen) - if (!(q->host = strndup((const char*) ni_resp + sizeof(nameinfo_response_t), ni_resp->hostlen-1))) - q->ret = EAI_MEMORY; - - if (ni_resp->servlen) - if (!(q->serv = strndup((const char*) ni_resp + sizeof(nameinfo_response_t) + ni_resp->hostlen, ni_resp->servlen-1))) - q->ret = EAI_MEMORY; - - complete_query(asyncns, q); - break; - } - - case RESPONSE_RES: { - const res_response_t *res_resp = &packet->res_response; - - assert(length >= sizeof(res_response_t)); - assert(q->type == REQUEST_RES_QUERY || q->type == REQUEST_RES_SEARCH); - - q->ret = res_resp->ret; - q->_errno = res_resp->_errno; - q->_h_errno = res_resp->_h_errno; - - if (res_resp->ret >= 0) { - if (!(q->serv = malloc(res_resp->ret))) { - q->ret = -1; - q->_errno = ENOMEM; - } else - memcpy(q->serv, (const char *)resp + sizeof(res_response_t), res_resp->ret); - } - - complete_query(asyncns, q); - break; - } - - default: - ; - } - - return 0; -} - -int _g_asyncns_wait(_g_asyncns_t *asyncns, int block) { - int handled = 0; - assert(asyncns); - - for (;;) { - packet_t buf[BUFSIZE/sizeof(packet_t) + 1]; - ssize_t l; - - if (asyncns->dead) { - errno = ECHILD; - return -1; - } - - if (((l = recv(asyncns->fds[RESPONSE_RECV_FD], buf, sizeof(buf), 0)) < 0)) { - fd_set fds; - - if (errno != EAGAIN) - return -1; - - if (!block || handled) - return 0; - - FD_ZERO(&fds); - FD_SET(asyncns->fds[RESPONSE_RECV_FD], &fds); - - if (select(asyncns->fds[RESPONSE_RECV_FD]+1, &fds, NULL, NULL, NULL) < 0) - return -1; - - continue; - } - - if (handle_response(asyncns, buf, (size_t) l) < 0) - return -1; - - handled = 1; - } -} - -static _g_asyncns_query_t *alloc_query(_g_asyncns_t *asyncns) { - _g_asyncns_query_t *q; - assert(asyncns); - - if (asyncns->n_queries >= MAX_QUERIES) { - errno = ENOMEM; - return NULL; - } - - while (asyncns->queries[asyncns->current_index]) { - - asyncns->current_index++; - asyncns->current_id++; - - while (asyncns->current_index >= MAX_QUERIES) - asyncns->current_index -= MAX_QUERIES; - } - - if (!(q = asyncns->queries[asyncns->current_index] = malloc(sizeof(_g_asyncns_query_t)))) { - errno = ENOMEM; - return NULL; - } - - asyncns->n_queries++; - - q->asyncns = asyncns; - q->done = 0; - q->id = asyncns->current_id; - q->done_next = q->done_prev = NULL; - q->ret = 0; - q->_errno = 0; - q->_h_errno = 0; - q->addrinfo = NULL; - q->userdata = NULL; - q->host = q->serv = NULL; - - return q; -} - -_g_asyncns_query_t* _g_asyncns_getaddrinfo(_g_asyncns_t *asyncns, const char *node, const char *service, const struct addrinfo *hints) { - addrinfo_request_t data[BUFSIZE/sizeof(addrinfo_request_t) + 1]; - addrinfo_request_t *req = data; - _g_asyncns_query_t *q; - assert(asyncns); - assert(node || service); - - if (asyncns->dead) { - errno = ECHILD; - return NULL; - } - - if (!(q = alloc_query(asyncns))) - return NULL; - - memset(req, 0, sizeof(addrinfo_request_t)); - - req->node_len = node ? strlen(node)+1 : 0; - req->service_len = service ? strlen(service)+1 : 0; - - req->header.id = q->id; - req->header.type = q->type = REQUEST_ADDRINFO; - req->header.length = sizeof(addrinfo_request_t) + req->node_len + req->service_len; - - if (req->header.length > BUFSIZE) { - errno = ENOMEM; - goto fail; - } - - if (!(req->hints_is_null = !hints)) { - req->ai_flags = hints->ai_flags; - req->ai_family = hints->ai_family; - req->ai_socktype = hints->ai_socktype; - req->ai_protocol = hints->ai_protocol; - } - - if (node) - strcpy((char*) req + sizeof(addrinfo_request_t), node); - - if (service) - strcpy((char*) req + sizeof(addrinfo_request_t) + req->node_len, service); - - if (send(asyncns->fds[REQUEST_SEND_FD], req, req->header.length, MSG_NOSIGNAL) < 0) - goto fail; - - return q; - -fail: - if (q) - _g_asyncns_cancel(asyncns, q); - - return NULL; -} - -int _g_asyncns_getaddrinfo_done(_g_asyncns_t *asyncns, _g_asyncns_query_t* q, struct addrinfo **ret_res) { - int ret; - assert(asyncns); - assert(q); - assert(q->asyncns == asyncns); - assert(q->type == REQUEST_ADDRINFO); - - if (asyncns->dead) { - errno = ECHILD; - return EAI_SYSTEM; - } - - if (!q->done) - return EAI_AGAIN; - - *ret_res = q->addrinfo; - q->addrinfo = NULL; - - ret = q->ret; - - if (ret == EAI_SYSTEM) - errno = q->_errno; - - if (ret != 0) - h_errno = q->_h_errno; - - _g_asyncns_cancel(asyncns, q); - - return ret; -} - -_g_asyncns_query_t* _g_asyncns_getnameinfo(_g_asyncns_t *asyncns, const struct sockaddr *sa, socklen_t salen, int flags, int gethost, int getserv) { - nameinfo_request_t data[BUFSIZE/sizeof(nameinfo_request_t) + 1]; - nameinfo_request_t *req = data; - _g_asyncns_query_t *q; - - assert(asyncns); - assert(sa); - assert(salen > 0); - - if (asyncns->dead) { - errno = ECHILD; - return NULL; - } - - if (!(q = alloc_query(asyncns))) - return NULL; - - memset(req, 0, sizeof(nameinfo_request_t)); - - req->header.id = q->id; - req->header.type = q->type = REQUEST_NAMEINFO; - req->header.length = sizeof(nameinfo_request_t) + salen; - - if (req->header.length > BUFSIZE) { - errno = ENOMEM; - goto fail; - } - - req->flags = flags; - req->sockaddr_len = salen; - req->gethost = gethost; - req->getserv = getserv; - - memcpy((uint8_t*) req + sizeof(nameinfo_request_t), sa, salen); - - if (send(asyncns->fds[REQUEST_SEND_FD], req, req->header.length, MSG_NOSIGNAL) < 0) - goto fail; - - return q; - -fail: - if (q) - _g_asyncns_cancel(asyncns, q); - - return NULL; -} - -int _g_asyncns_getnameinfo_done(_g_asyncns_t *asyncns, _g_asyncns_query_t* q, char *ret_host, size_t hostlen, char *ret_serv, size_t servlen) { - int ret; - assert(asyncns); - assert(q); - assert(q->asyncns == asyncns); - assert(q->type == REQUEST_NAMEINFO); - assert(!ret_host || hostlen); - assert(!ret_serv || servlen); - - if (asyncns->dead) { - errno = ECHILD; - return EAI_SYSTEM; - } - - if (!q->done) - return EAI_AGAIN; - - if (ret_host && q->host) { - strncpy(ret_host, q->host, hostlen); - ret_host[hostlen-1] = 0; - } - - if (ret_serv && q->serv) { - strncpy(ret_serv, q->serv, servlen); - ret_serv[servlen-1] = 0; - } - - ret = q->ret; - - if (ret == EAI_SYSTEM) - errno = q->_errno; - - if (ret != 0) - h_errno = q->_h_errno; - - _g_asyncns_cancel(asyncns, q); - - return ret; -} - -static _g_asyncns_query_t * _g_asyncns_res(_g_asyncns_t *asyncns, query_type_t qtype, const char *dname, int class, int type) { - res_request_t data[BUFSIZE/sizeof(res_request_t) + 1]; - res_request_t *req = data; - _g_asyncns_query_t *q; - - assert(asyncns); - assert(dname); - - if (asyncns->dead) { - errno = ECHILD; - return NULL; - } - - if (!(q = alloc_query(asyncns))) - return NULL; - - memset(req, 0, sizeof(res_request_t)); - - req->dname_len = strlen(dname) + 1; - - req->header.id = q->id; - req->header.type = q->type = qtype; - req->header.length = sizeof(res_request_t) + req->dname_len; - - if (req->header.length > BUFSIZE) { - errno = ENOMEM; - goto fail; - } - - req->class = class; - req->type = type; - - strcpy((char*) req + sizeof(res_request_t), dname); - - if (send(asyncns->fds[REQUEST_SEND_FD], req, req->header.length, MSG_NOSIGNAL) < 0) - goto fail; - - return q; - -fail: - if (q) - _g_asyncns_cancel(asyncns, q); - - return NULL; -} - -_g_asyncns_query_t* _g_asyncns_res_query(_g_asyncns_t *asyncns, const char *dname, int class, int type) { - return _g_asyncns_res(asyncns, REQUEST_RES_QUERY, dname, class, type); -} - -_g_asyncns_query_t* _g_asyncns_res_search(_g_asyncns_t *asyncns, const char *dname, int class, int type) { - return _g_asyncns_res(asyncns, REQUEST_RES_SEARCH, dname, class, type); -} - -int _g_asyncns_res_done(_g_asyncns_t *asyncns, _g_asyncns_query_t* q, unsigned char **answer) { - int ret; - assert(asyncns); - assert(q); - assert(q->asyncns == asyncns); - assert(q->type == REQUEST_RES_QUERY || q->type == REQUEST_RES_SEARCH); - assert(answer); - - if (asyncns->dead) { - errno = ECHILD; - return -ECHILD; - } - - if (!q->done) { - errno = EAGAIN; - return -EAGAIN; - } - - *answer = (unsigned char *)q->serv; - q->serv = NULL; - - ret = q->ret; - - if (ret < 0) { - errno = q->_errno; - h_errno = q->_h_errno; - } - - _g_asyncns_cancel(asyncns, q); - - return ret < 0 ? -errno : ret; -} - -_g_asyncns_query_t* _g_asyncns_getnext(_g_asyncns_t *asyncns) { - assert(asyncns); - return asyncns->done_head; -} - -int _g_asyncns_getnqueries(_g_asyncns_t *asyncns) { - assert(asyncns); - return asyncns->n_queries; -} - -void _g_asyncns_cancel(_g_asyncns_t *asyncns, _g_asyncns_query_t* q) { - int i; - int saved_errno = errno; - - assert(asyncns); - assert(q); - assert(q->asyncns == asyncns); - assert(asyncns->n_queries > 0); - - if (q->done) { - - if (q->done_prev) - q->done_prev->done_next = q->done_next; - else - asyncns->done_head = q->done_next; - - if (q->done_next) - q->done_next->done_prev = q->done_prev; - else - asyncns->done_tail = q->done_prev; - } - - i = q->id % MAX_QUERIES; - assert(asyncns->queries[i] == q); - asyncns->queries[i] = NULL; - - _g_asyncns_freeaddrinfo(q->addrinfo); - free(q->host); - free(q->serv); - - asyncns->n_queries--; - free(q); - - errno = saved_errno; -} - -void _g_asyncns_freeaddrinfo(struct addrinfo *ai) { - int saved_errno = errno; - - while (ai) { - struct addrinfo *next = ai->ai_next; - - free(ai->ai_addr); - free(ai->ai_canonname); - free(ai); - - ai = next; - } - - errno = saved_errno; -} - -void _g_asyncns_freeanswer(unsigned char *answer) { - int saved_errno = errno; - - if (!answer) - return; - - /* Please note that this function is new in libasyncns 0.4. In - * older versions you were supposed to free the answer directly - * with free(). Hence, if this function is changed to do more than - * just a simple free() this must be considered ABI/API breakage! */ - - free(answer); - - errno = saved_errno; -} - -int _g_asyncns_isdone(_g_asyncns_t *asyncns, _g_asyncns_query_t*q) { - assert(asyncns); - assert(q); - assert(q->asyncns == asyncns); - - return q->done; -} - -void _g_asyncns_setuserdata(_g_asyncns_t *asyncns, _g_asyncns_query_t *q, void *userdata) { - assert(q); - assert(asyncns); - assert(q->asyncns = asyncns); - - q->userdata = userdata; -} - -void* _g_asyncns_getuserdata(_g_asyncns_t *asyncns, _g_asyncns_query_t *q) { - assert(q); - assert(asyncns); - assert(q->asyncns = asyncns); - - return q->userdata; -} diff --git a/gio/libasyncns/asyncns.h b/gio/libasyncns/asyncns.h deleted file mode 100644 index b3d49ff..0000000 --- a/gio/libasyncns/asyncns.h +++ /dev/null @@ -1,163 +0,0 @@ -#ifndef fooasyncnshfoo -#define fooasyncnshfoo - -/*** - This file is part of libasyncns. - - Copyright 2005-2008 Lennart Poettering - - libasyncns 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. - - libasyncns 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 libasyncns. If not, see - . -***/ - -#include -#include -#include - -/** \mainpage - * - * \section moo Method of operation - * - * To use libasyncns allocate an _g_asyncns_t object with - * _g_asyncns_new(). This will spawn a number of worker threads (or processes, depending on what is available) which - * are subsequently used to process the queries the controlling - * program issues via _g_asyncns_getaddrinfo() and - * _g_asyncns_getnameinfo(). Use _g_asyncns_free() to shut down the worker - * threads/processes. - * - * Since libasyncns may fork off new processes you have to make sure that - * your program is not irritated by spurious SIGCHLD signals. - */ - -/** \example asyncns-test.c - * An example program */ - -#ifdef __cplusplus -extern "C" { -#endif - -/** An opaque libasyncns session structure */ -typedef struct asyncns _g_asyncns_t; - -/** An opaque libasyncns query structure */ -typedef struct _g_asyncns_query _g_asyncns_query_t; - -/** Allocate a new libasyncns session with n_proc worker processes/threads */ -_g_asyncns_t* _g_asyncns_new(unsigned n_proc); - -/** Free a libasyncns session. This destroys all attached - * _g_asyncns_query_t objects automatically */ -void _g_asyncns_free(_g_asyncns_t *asyncns); - -/** Return the UNIX file descriptor to select() for readability - * on. Use this function to integrate libasyncns with your custom main - * loop. */ -int _g_asyncns_fd(_g_asyncns_t *asyncns); - -/** Process pending responses. After this function is called you can - * get the next completed query object(s) using _g_asyncns_getnext(). If - * block is non-zero wait until at least one response has been - * processed. If block is zero, process all pending responses and - * return. */ -int _g_asyncns_wait(_g_asyncns_t *asyncns, int block); - -/** Issue a name to address query on the specified session. The - * arguments are compatible with the ones of libc's - * getaddrinfo(3). The function returns a new query object. When the - * query is completed you may retrieve the results using - * _g_asyncns_getaddrinfo_done().*/ -_g_asyncns_query_t* _g_asyncns_getaddrinfo(_g_asyncns_t *asyncns, const char *node, const char *service, const struct addrinfo *hints); - -/** Retrieve the results of a preceding _g_asyncns_getaddrinfo() - * call. Returns a addrinfo structure and a return value compatible - * with libc's getaddrinfo(3). The query object q is destroyed by this - * call and may not be used any further. Make sure to free the - * returned addrinfo structure with _g_asyncns_freeaddrinfo() and not - * libc's freeaddrinfo(3)! If the query is not completed yet EAI_AGAIN - * is returned.*/ -int _g_asyncns_getaddrinfo_done(_g_asyncns_t *asyncns, _g_asyncns_query_t* q, struct addrinfo **ret_res); - -/** Issue an address to name query on the specified session. The - * arguments are compatible with the ones of libc's - * getnameinfo(3). The function returns a new query object. When the - * query is completed you may retrieve the results using - * _g_asyncns_getnameinfo_done(). Set gethost (resp. getserv) to non-zero - * if you want to query the hostname (resp. the service name). */ -_g_asyncns_query_t* _g_asyncns_getnameinfo(_g_asyncns_t *asyncns, const struct sockaddr *sa, socklen_t salen, int flags, int gethost, int getserv); - -/** Retrieve the results of a preceding _g_asyncns_getnameinfo() - * call. Returns the hostname and the service name in ret_host and - * ret_serv. The query object q is destroyed by this call and may not - * be used any further. If the query is not completed yet EAI_AGAIN is - * returned. */ -int _g_asyncns_getnameinfo_done(_g_asyncns_t *asyncns, _g_asyncns_query_t* q, char *ret_host, size_t hostlen, char *ret_serv, size_t servlen); - -/** Issue a resolver query on the specified session. The arguments are - * compatible with the ones of libc's res_query(3). The function returns a new - * query object. When the query is completed you may retrieve the results using - * _g_asyncns_res_done(). */ -_g_asyncns_query_t* _g_asyncns_res_query(_g_asyncns_t *asyncns, const char *dname, int class, int type); - -/** Issue an resolver query on the specified session. The arguments are - * compatible with the ones of libc's res_search(3). The function returns a new - * query object. When the query is completed you may retrieve the results using - * _g_asyncns_res_done(). */ -_g_asyncns_query_t* _g_asyncns_res_search(_g_asyncns_t *asyncns, const char *dname, int class, int type); - -/** Retrieve the results of a preceding _g_asyncns_res_query() or - * _g_asyncns_res_search call. The query object q is destroyed by this - * call and may not be used any further. Returns a pointer to the - * answer of the res_query call. If the query is not completed yet - * -EAGAIN is returned, on failure -errno is returned, otherwise the - * length of answer is returned. Make sure to free the answer is a - * call to _g_asyncns_freeanswer(). */ -int _g_asyncns_res_done(_g_asyncns_t *asyncns, _g_asyncns_query_t* q, unsigned char **answer); - -/** Return the next completed query object. If no query has been - * completed yet, return NULL. Please note that you need to run - * _g_asyncns_wait() before this function will return sensible data. */ -_g_asyncns_query_t* _g_asyncns_getnext(_g_asyncns_t *asyncns); - -/** Return the number of query objects (completed or not) attached to - * this session */ -int _g_asyncns_getnqueries(_g_asyncns_t *asyncns); - -/** Cancel a currently running query. q is is destroyed by this call - * and may not be used any futher. */ -void _g_asyncns_cancel(_g_asyncns_t *asyncns, _g_asyncns_query_t* q); - -/** Free the addrinfo structure as returned by - * _g_asyncns_getaddrinfo_done(). Make sure to use this functions instead - * of the libc's freeaddrinfo()! */ -void _g_asyncns_freeaddrinfo(struct addrinfo *ai); - -/** Free the answer data as returned by _g_asyncns_res_done().*/ -void _g_asyncns_freeanswer(unsigned char *answer); - -/** Returns non-zero when the query operation specified by q has been completed */ -int _g_asyncns_isdone(_g_asyncns_t *asyncns, _g_asyncns_query_t*q); - -/** Assign some opaque userdata with a query object */ -void _g_asyncns_setuserdata(_g_asyncns_t *asyncns, _g_asyncns_query_t *q, void *userdata); - -/** Return userdata assigned to a query object. Use - * _g_asyncns_setuserdata() to set this data. If no data has been set - * prior to this call it returns NULL. */ -void* _g_asyncns_getuserdata(_g_asyncns_t *asyncns, _g_asyncns_query_t *q); - -#ifdef __cplusplus -} -#endif - -#endif diff --git a/gio/libasyncns/g-asyncns.h b/gio/libasyncns/g-asyncns.h deleted file mode 100644 index a8fbf46..0000000 --- a/gio/libasyncns/g-asyncns.h +++ /dev/null @@ -1,35 +0,0 @@ -/* GLIB - Library of useful routines for C programming - * Copyright (C) 2008 Red Hat, Inc. - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2 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. - */ -#ifndef __G_ASYNCNS_H__ - -#include "config.h" - -#define _GNU_SOURCE - -/* We want to build the fork-based version, not the threaded version. */ -#undef HAVE_PTHREAD - -/* asyncns.c removed this for #580301, but that appears to have been wrong */ -#if HAVE_ARPA_NAMESER_COMPAT_H -#include -#endif - -#include "asyncns.h" - -#endif diff --git a/gio/libasyncns/update.sh b/gio/libasyncns/update.sh deleted file mode 100644 index 4c43ca5..0000000 --- a/gio/libasyncns/update.sh +++ /dev/null @@ -1,20 +0,0 @@ -#!/bin/sh - -if test $# = 1 ; then - ORIGINAL=$1 -else - echo "Usage: update.sh /path/to/libasyncns" 1>&2 - exit 1 -fi - -if test -f $ORIGINAL/libasyncns/asyncns.c ; then : ; else - echo "Usage: update.sh /path/to/libasyncns" 1>&2 - exit 1 -fi - -for i in asyncns.c asyncns.h ; do - sed -e 's/\([^a-z]\)asyncns_/\1_g_asyncns_/g' \ - -e 's/^asyncns_/_g_asyncns_/' \ - -e 's//"g-asyncns\.h"/' \ - $ORIGINAL/libasyncns/$i > $i -done diff --git a/gio/makegioalias.pl b/gio/makegioalias.pl deleted file mode 100755 index b4ae319..0000000 --- a/gio/makegioalias.pl +++ /dev/null @@ -1,137 +0,0 @@ -#!/usr/bin/perl -w - -my $do_def = 0; - -if (($#ARGV >= 0) && ($ARGV[0] eq "-def")) { - shift; - $do_def = 1; -} - -print <) { - - # ignore empty lines - next if /^\s*$/; - - # skip comments - if ($_ =~ /^\s*\/\*/) - { - $in_comment = 1; - } - - if ($in_comment) - { - if ($_ =~ /\*\/\s$/) - { - $in_comment = 0; - } - - next; - } - - # handle ifdefs - if ($_ =~ /^\#endif/) - { - if (!$in_skipped_section) - { - print $_; - } - - $in_skipped_section = 0; - - next; - } - - if ($_ =~ /^\#ifdef\s+(INCLUDE_VARIABLES|INCLUDE_INTERNAL_SYMBOLS|ALL_FILES)/) - { - $in_skipped_section = 1; - } - - if ($in_skipped_section) - { - next; - } - - if ($_ =~ /^\#ifn?def\s+G/) - { - print $_; - - next; - } - - if ($_ =~ /^\#if.*(IN_FILE|IN_HEADER)/) - { - print $_; - - next; - } - - chop; - my $str = $_; - my @words; - my $attributes = ""; - - @words = split(/ /, $str); - $str = shift(@words); - chomp($str); - my $alias = "IA__".$str; - - # Drop any Win32 specific .def file syntax, but keep attributes - foreach $word (@words) { - $attributes = "$attributes $word" unless $word eq "PRIVATE"; - } - - if (!$do_def) { - print </dev/null >/dev/null; then - echo "'readelf' not found; skipping test" - exit 0 -fi - -SKIP='\ - */ - -#include "config.h" - -#include "gbuffer.h" - -#include -#include -#include - -#include "galias.h" - -typedef struct -{ - GBuffer buffer; - - GDestroyNotify user_destroy; - gpointer user_data; -} GUserNotifyBuffer; - -static void -g_buffer_free_gfree (GBuffer *buffer) -{ - g_free ((gpointer) buffer->data); - g_slice_free (GBuffer, buffer); -} - -/* < private > - * g_buffer_new_from_data: - * @data: the data to be used for the buffer - * @size: the size of @data - * @returns: a reference to a new #GBuffer - * - * Creates a new #GBuffer from @data. - * - * @data is copied. - */ - -GBuffer * -g_buffer_new_from_data (gconstpointer data, - gsize size) -{ - GBuffer *buffer; - - buffer = g_slice_new (GBuffer); - buffer->data = g_memdup (data, size); - buffer->size = size; - buffer->free_func = g_buffer_free_gfree; - buffer->ref_count = 1; - - return buffer; -} - -/* < private > - * g_buffer_new_take_data: - * @data: the data to be used for the buffer - * @size: the size of @data - * returns: a reference to a new #GBuffer - * - * Creates a new #GBuffer from @data. - * - * @data must have been created by a call to g_malloc(), g_malloc0() or - * g_realloc() or by one of the many functions that wrap these calls - * (such as g_new(), g_strdup(), etc). - * - * After this call, @data belongs to the buffer and may no longer be - * modified by the caller. g_free() will be called on @data when the - * buffer is no longer in use. - */ -GBuffer * -g_buffer_new_take_data (gpointer data, - gsize size) -{ - GBuffer *buffer; - - buffer = g_slice_new (GBuffer); - buffer->data = data; - buffer->size = size; - buffer->free_func = g_buffer_free_gfree; - buffer->ref_count = 1; - - return buffer; -} - -static void -g_buffer_free (GBuffer *buffer) -{ - g_slice_free (GBuffer, buffer); -} - -/* < private > - * g_buffer_new_from_static_data: - * @data: the data to be used for the buffer - * @size: the size of @data - * @returns: a reference to a new #GBuffer - * - * Creates a new #GBuffer from static data. - * - * @data must be static (ie: never modified or freed). - */ -GBuffer * -g_buffer_new_from_static_data (gconstpointer data, - gsize size) -{ - GBuffer *buffer; - - buffer = g_slice_new (GBuffer); - buffer->data = data; - buffer->size = size; - buffer->free_func = g_buffer_free; - buffer->ref_count = 1; - - return buffer; -} - -static void -g_buffer_free_usernotify (GBuffer *buffer) -{ - GUserNotifyBuffer *ubuffer = (GUserNotifyBuffer *) buffer; - - ubuffer->user_destroy (ubuffer->user_data); - g_slice_free (GBuffer, buffer); -} - -/* < private > - * g_buffer_new_from_pointer: - * @data: the data to be used for the buffer - * @size: the size of @data - * @notify: the function to call to release the data - * @user_data: the data to pass to @notify - * @returns: a reference to a new #GBuffer - * - * Creates a #GBuffer from @data. - * - * When the last reference is dropped, @notify will be called on - * @user_data. - * - * @data must not be modified after this call is made, until @notify has - * been called to indicate that the buffer is no longer in use. - */ -GBuffer * -g_buffer_new_from_pointer (gconstpointer data, - gsize size, - GDestroyNotify notify, - gpointer user_data) -{ - GUserNotifyBuffer *ubuffer; - - ubuffer = g_slice_new (GUserNotifyBuffer); - ubuffer->buffer.data = data; - ubuffer->buffer.size = size; - ubuffer->buffer.free_func = g_buffer_free_usernotify; - ubuffer->buffer.ref_count = 1; - ubuffer->user_destroy = notify; - ubuffer->user_data = user_data; - - return (GBuffer *) ubuffer; -} - -/* < private > - * g_buffer_ref: - * @buffer: a #GBuffer - * @returns: @buffer - * - * Increase the reference count on @buffer. - */ -GBuffer * -g_buffer_ref (GBuffer *buffer) -{ - g_atomic_int_inc (&buffer->ref_count); - - return buffer; -} - -/* < private > - * g_buffer_unref: - * @buffer: a #GBuffer - * - * Releases a reference on @buffer. This may result in the buffer being - * freed. - */ -void -g_buffer_unref (GBuffer *buffer) -{ - if (g_atomic_int_dec_and_test (&buffer->ref_count)) - if (buffer->free_func != NULL) - buffer->free_func (buffer); -} diff --git a/glib/gbuffer.h b/glib/gbuffer.h deleted file mode 100644 index 6bb29b7..0000000 --- a/glib/gbuffer.h +++ /dev/null @@ -1,88 +0,0 @@ -/* - * Copyright © 2009, 2010 Codethink Limited - * - * 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 licence, 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. - * - * Author: Ryan Lortie - */ - -#ifndef __G_BUFFER_H__ -#define __G_BUFFER_H__ - -#include - -/* < private > - * GBuffer: - * @data: a pointer to the data held in the buffer - * @size: the size of @data - * - * A simple refcounted data type representing a byte sequence from an - * unspecified origin. - * - * The purpose of a #GBuffer is to keep the memory region that it holds - * alive for as long as anyone holds a reference to the buffer. When - * the last reference count is dropped, the memory is released. - * - * A #GBuffer can come from many different origins that may have - * different procedures for freeing the memory region. Examples are - * memory from g_malloc(), from memory slices, from a #GMappedFile or - * memory from other allocators. - */ -typedef struct _GBuffer GBuffer; - -/* < private > - * GBufferFreeFunc: - * @buffer: the #GBuffer to be freed - * - * This function is provided by creators of a #GBuffer. It is the - * function to be called when the reference count of @buffer drops to - * zero. It should free any memory associated with the buffer and free - * @buffer itself. - */ -typedef void (* GBufferFreeFunc) (GBuffer *buffer); - -struct _GBuffer -{ - gconstpointer data; - gsize size; - - /*< protected >*/ - GBufferFreeFunc free_func; - - /*< private >*/ - gint ref_count; -}; - -G_GNUC_INTERNAL -GBuffer * g_buffer_new_from_data (gconstpointer data, - gsize size); -G_GNUC_INTERNAL -GBuffer * g_buffer_new_take_data (gpointer data, - gsize size); -G_GNUC_INTERNAL -GBuffer * g_buffer_new_from_static_data (gconstpointer data, - gsize size); -G_GNUC_INTERNAL -GBuffer * g_buffer_new_from_pointer (gconstpointer data, - gsize size, - GDestroyNotify notify, - gpointer user_data); -G_GNUC_INTERNAL -GBuffer * g_buffer_ref (GBuffer *buffer); -G_GNUC_INTERNAL -void g_buffer_unref (GBuffer *buffer); - -#endif /* __G_BUFFER_H__ */ diff --git a/glib/gcache.c b/glib/gcache.c deleted file mode 100644 index 9c69122..0000000 --- a/glib/gcache.c +++ /dev/null @@ -1,331 +0,0 @@ -/* GLIB - Library of useful routines for C programming - * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald - * - * 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., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. - */ - -/* - * Modified by the GLib Team and others 1997-2000. See the AUTHORS - * file for a list of people on the GLib Team. See the ChangeLog - * files for a list of changes. These files are distributed with - * GLib at ftp://ftp.gtk.org/pub/gtk/. - */ - -/* - * MT safe - */ - -#include "config.h" - -#include "glib.h" -#include "galias.h" - -/** - * SECTION: caches - * @title: Caches - * @short_description: caches allow sharing of complex data structures - * to save resources - * - * A #GCache allows sharing of complex data structures, in order to - * save system resources. - * - * GTK+ uses caches for #GtkStyles and #GdkGCs. These consume a lot of - * resources, so a #GCache is used to see if a #GtkStyle or #GdkGC with - * the required properties already exists. If it does, then the - * existing object is used instead of creating a new one. - * - * #GCache uses keys and values. A #GCache key describes the properties - * of a particular resource. A #GCache value is the actual resource. - **/ - -typedef struct _GCacheNode GCacheNode; - -struct _GCacheNode -{ - /* A reference counted node */ - gpointer value; - gint ref_count; -}; - -/** - * GCache: - * - * The #GCache struct is an opaque data structure containing - * information about a #GCache. It should only be accessed via the - * following functions. - **/ -struct _GCache -{ - /* Called to create a value from a key */ - GCacheNewFunc value_new_func; - - /* Called to destroy a value */ - GCacheDestroyFunc value_destroy_func; - - /* Called to duplicate a key */ - GCacheDupFunc key_dup_func; - - /* Called to destroy a key */ - GCacheDestroyFunc key_destroy_func; - - /* Associates keys with nodes */ - GHashTable *key_table; - - /* Associates nodes with keys */ - GHashTable *value_table; -}; - -static inline GCacheNode* -g_cache_node_new (gpointer value) -{ - GCacheNode *node = g_slice_new (GCacheNode); - node->value = value; - node->ref_count = 1; - return node; -} - -static inline void -g_cache_node_destroy (GCacheNode *node) -{ - g_slice_free (GCacheNode, node); -} - -/** - * g_cache_new: - * @value_new_func: a function to create a new object given a key. - * This is called by g_cache_insert() if an object - * with the given key does not already exist. - * @value_destroy_func: a function to destroy an object. It is called - * by g_cache_remove() when the object is no - * longer needed (i.e. its reference count drops - * to 0). - * @key_dup_func: a function to copy a key. It is called by - * g_cache_insert() if the key does not already exist in - * the #GCache. - * @key_destroy_func: a function to destroy a key. It is called by - * g_cache_remove() when the object is no longer - * needed (i.e. its reference count drops to 0). - * @hash_key_func: a function to create a hash value from a key. - * @hash_value_func: a function to create a hash value from a value. - * @key_equal_func: a function to compare two keys. It should return - * %TRUE if the two keys are equivalent. - * @Returns: a new #GCache. - * - * Creates a new #GCache. - **/ -/** - * GCacheNewFunc: - * @key: a #GCache key. - * @Returns: a new #GCache value corresponding to the key. - * - * Specifies the type of the @value_new_func function passed to - * g_cache_new(). It is passed a #GCache key and should create the - * value corresponding to the key. - **/ -/** - * GCacheDestroyFunc: - * @value: the #GCache value to destroy. - * - * Specifies the type of the @value_destroy_func and @key_destroy_func - * functions passed to g_cache_new(). The functions are passed a - * pointer to the #GCache key or #GCache value and should free any - * memory and other resources associated with it. - **/ -/** - * GCacheDupFunc: - * @value: the #GCache key to destroy (not a - * #GCache value as it seems). - * @Returns: a copy of the #GCache key. - * - * Specifies the type of the @key_dup_func function passed to - * g_cache_new(). The function is passed a key - * (not a value as the prototype implies) and - * should return a duplicate of the key. - **/ -GCache* -g_cache_new (GCacheNewFunc value_new_func, - GCacheDestroyFunc value_destroy_func, - GCacheDupFunc key_dup_func, - GCacheDestroyFunc key_destroy_func, - GHashFunc hash_key_func, - GHashFunc hash_value_func, - GEqualFunc key_equal_func) -{ - GCache *cache; - - g_return_val_if_fail (value_new_func != NULL, NULL); - g_return_val_if_fail (value_destroy_func != NULL, NULL); - g_return_val_if_fail (key_dup_func != NULL, NULL); - g_return_val_if_fail (key_destroy_func != NULL, NULL); - g_return_val_if_fail (hash_key_func != NULL, NULL); - g_return_val_if_fail (hash_value_func != NULL, NULL); - g_return_val_if_fail (key_equal_func != NULL, NULL); - - cache = g_slice_new (GCache); - cache->value_new_func = value_new_func; - cache->value_destroy_func = value_destroy_func; - cache->key_dup_func = key_dup_func; - cache->key_destroy_func = key_destroy_func; - cache->key_table = g_hash_table_new (hash_key_func, key_equal_func); - cache->value_table = g_hash_table_new (hash_value_func, NULL); - - return cache; -} - -/** - * g_cache_destroy: - * @cache: a #GCache. - * - * Frees the memory allocated for the #GCache. - * - * Note that it does not destroy the keys and values which were - * contained in the #GCache. - **/ -void -g_cache_destroy (GCache *cache) -{ - g_return_if_fail (cache != NULL); - - g_hash_table_destroy (cache->key_table); - g_hash_table_destroy (cache->value_table); - g_slice_free (GCache, cache); -} - -/** - * g_cache_insert: - * @cache: a #GCache. - * @key: a key describing a #GCache object. - * @Returns: a pointer to a #GCache value. - * - * Gets the value corresponding to the given key, creating it if - * necessary. It first checks if the value already exists in the - * #GCache, by using the @key_equal_func function passed to - * g_cache_new(). If it does already exist it is returned, and its - * reference count is increased by one. If the value does not currently - * exist, if is created by calling the @value_new_func. The key is - * duplicated by calling @key_dup_func and the duplicated key and value - * are inserted into the #GCache. - **/ -gpointer -g_cache_insert (GCache *cache, - gpointer key) -{ - GCacheNode *node; - gpointer value; - - g_return_val_if_fail (cache != NULL, NULL); - - node = g_hash_table_lookup (cache->key_table, key); - if (node) - { - node->ref_count += 1; - return node->value; - } - - key = (* cache->key_dup_func) (key); - value = (* cache->value_new_func) (key); - node = g_cache_node_new (value); - - g_hash_table_insert (cache->key_table, key, node); - g_hash_table_insert (cache->value_table, value, key); - - return node->value; -} - -/** - * g_cache_remove: - * @cache: a #GCache. - * @value: the value to remove. - * - * Decreases the reference count of the given value. If it drops to 0 - * then the value and its corresponding key are destroyed, using the - * @value_destroy_func and @key_destroy_func passed to g_cache_new(). - **/ -void -g_cache_remove (GCache *cache, - gconstpointer value) -{ - GCacheNode *node; - gpointer key; - - g_return_if_fail (cache != NULL); - - key = g_hash_table_lookup (cache->value_table, value); - node = g_hash_table_lookup (cache->key_table, key); - - g_return_if_fail (node != NULL); - - node->ref_count -= 1; - if (node->ref_count == 0) - { - g_hash_table_remove (cache->value_table, value); - g_hash_table_remove (cache->key_table, key); - - (* cache->key_destroy_func) (key); - (* cache->value_destroy_func) (node->value); - g_cache_node_destroy (node); - } -} - -/** - * g_cache_key_foreach: - * @cache: a #GCache. - * @func: the function to call with each #GCache key. - * @user_data: user data to pass to the function. - * - * Calls the given function for each of the keys in the #GCache. - * - * NOTE @func is passed three parameters, the value and key of a cache - * entry and the @user_data. The order of value and key is different - * from the order in which g_hash_table_foreach() passes key-value - * pairs to its callback function ! - **/ -void -g_cache_key_foreach (GCache *cache, - GHFunc func, - gpointer user_data) -{ - g_return_if_fail (cache != NULL); - g_return_if_fail (func != NULL); - - g_hash_table_foreach (cache->value_table, func, user_data); -} - -/** - * g_cache_value_foreach: - * @cache: a #GCache. - * @func: the function to call with each #GCache value. - * @user_data: user data to pass to the function. - * - * Calls the given function for each of the values in the #GCache. - * - * Deprecated:2.10: The reason is that it passes pointers to internal - * data structures to @func; use g_cache_key_foreach() - * instead - **/ -void -g_cache_value_foreach (GCache *cache, - GHFunc func, - gpointer user_data) -{ - g_return_if_fail (cache != NULL); - g_return_if_fail (func != NULL); - - g_hash_table_foreach (cache->key_table, func, user_data); -} - -#define __G_CACHE_C__ -#include "galiasdef.c" diff --git a/glib/gcache.h b/glib/gcache.h deleted file mode 100644 index 283783d..0000000 --- a/glib/gcache.h +++ /dev/null @@ -1,69 +0,0 @@ -/* GLIB - Library of useful routines for C programming - * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald - * - * 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., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. - */ - -/* - * Modified by the GLib Team and others 1997-2000. See the AUTHORS - * file for a list of people on the GLib Team. See the ChangeLog - * files for a list of changes. These files are distributed with - * GLib at ftp://ftp.gtk.org/pub/gtk/. - */ - -#if defined(G_DISABLE_SINGLE_INCLUDES) && !defined (__GLIB_H_INSIDE__) && !defined (GLIB_COMPILATION) -#error "Only can be included directly." -#endif - -#ifndef __G_CACHE_H__ -#define __G_CACHE_H__ - -#include - -G_BEGIN_DECLS - -typedef struct _GCache GCache; - -typedef gpointer (*GCacheNewFunc) (gpointer key); -typedef gpointer (*GCacheDupFunc) (gpointer value); -typedef void (*GCacheDestroyFunc) (gpointer value); - -/* Caches - */ -GCache* g_cache_new (GCacheNewFunc value_new_func, - GCacheDestroyFunc value_destroy_func, - GCacheDupFunc key_dup_func, - GCacheDestroyFunc key_destroy_func, - GHashFunc hash_key_func, - GHashFunc hash_value_func, - GEqualFunc key_equal_func); -void g_cache_destroy (GCache *cache); -gpointer g_cache_insert (GCache *cache, - gpointer key); -void g_cache_remove (GCache *cache, - gconstpointer value); -void g_cache_key_foreach (GCache *cache, - GHFunc func, - gpointer user_data); -#ifndef G_DISABLE_DEPRECATED -void g_cache_value_foreach (GCache *cache, - GHFunc func, - gpointer user_data); -#endif - -G_END_DECLS - -#endif /* __G_CACHE_H__ */ diff --git a/glib/gcompletion.c b/glib/gcompletion.c deleted file mode 100644 index 904f850..0000000 --- a/glib/gcompletion.c +++ /dev/null @@ -1,472 +0,0 @@ -/* GLIB - Library of useful routines for C programming - * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald - * - * 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., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. - */ - -/* - * Modified by the GLib Team and others 1997-2000. See the AUTHORS - * file for a list of people on the GLib Team. See the ChangeLog - * files for a list of changes. These files are distributed with - * GLib at ftp://ftp.gtk.org/pub/gtk/. - */ - -/* - * MT safe - */ - -#include "config.h" - -#include - -#include "glib.h" -#include "galias.h" - -/** - * SECTION: completion - * @title: Automatic String Completion - * @short_description: support for automatic completion using a group - * of target strings - * - * #GCompletion provides support for automatic completion of a string - * using any group of target strings. It is typically used for file - * name completion as is common in many UNIX shells. - * - * A #GCompletion is created using g_completion_new(). Target items are - * added and removed with g_completion_add_items(), - * g_completion_remove_items() and g_completion_clear_items(). A - * completion attempt is requested with g_completion_complete() or - * g_completion_complete_utf8(). When no longer needed, the - * #GCompletion is freed with g_completion_free(). - * - * Items in the completion can be simple strings (e.g. filenames), or - * pointers to arbitrary data structures. If data structures are used - * you must provide a #GCompletionFunc in g_completion_new(), which - * retrieves the item's string from the data structure. You can change - * the way in which strings are compared by setting a different - * #GCompletionStrncmpFunc in g_completion_set_compare(). - **/ - -/** - * GCompletion: - * @items: list of target items (strings or data structures). - * @func: function which is called to get the string associated with a - * target item. It is %NULL if the target items are strings. - * @prefix: the last prefix passed to g_completion_complete() or - * g_completion_complete_utf8(). - * @cache: the list of items which begin with @prefix. - * @strncmp_func: The function to use when comparing strings. Use - * g_completion_set_compare() to modify this function. - * - * The data structure used for automatic completion. - **/ - -/** - * GCompletionFunc: - * @Param1: the completion item. - * @Returns: the string corresponding to the item. - * - * Specifies the type of the function passed to g_completion_new(). It - * should return the string corresponding to the given target item. - * This is used when you use data structures as #GCompletion items. - **/ - -/** - * GCompletionStrncmpFunc: - * @s1: string to compare with @s2. - * @s2: string to compare with @s1. - * @n: maximal number of bytes to compare. - * @Returns: an integer less than, equal to, or greater than zero if - * the first @n bytes of @s1 is found, respectively, to be - * less than, to match, or to be greater than the first @n - * bytes of @s2. - * - * Specifies the type of the function passed to - * g_completion_set_compare(). This is used when you use strings as - * #GCompletion items. - **/ - -static void completion_check_cache (GCompletion* cmp, - gchar** new_prefix); - -/** - * g_completion_new: - * @func: the function to be called to return the string representing - * an item in the #GCompletion, or %NULL if strings are going to - * be used as the #GCompletion items. - * @Returns: the new #GCompletion. - * - * Creates a new #GCompletion. - **/ -GCompletion* -g_completion_new (GCompletionFunc func) -{ - GCompletion* gcomp; - - gcomp = g_new (GCompletion, 1); - gcomp->items = NULL; - gcomp->cache = NULL; - gcomp->prefix = NULL; - gcomp->func = func; - gcomp->strncmp_func = strncmp; - - return gcomp; -} - -/** - * g_completion_add_items: - * @cmp: the #GCompletion. - * @items: the list of items to add. - * - * Adds items to the #GCompletion. - **/ -void -g_completion_add_items (GCompletion* cmp, - GList* items) -{ - GList* it; - - g_return_if_fail (cmp != NULL); - - /* optimize adding to cache? */ - if (cmp->cache) - { - g_list_free (cmp->cache); - cmp->cache = NULL; - } - - if (cmp->prefix) - { - g_free (cmp->prefix); - cmp->prefix = NULL; - } - - it = items; - while (it) - { - cmp->items = g_list_prepend (cmp->items, it->data); - it = it->next; - } -} - -/** - * g_completion_remove_items: - * @cmp: the #GCompletion. - * @items: the items to remove. - * - * Removes items from a #GCompletion. - **/ -void -g_completion_remove_items (GCompletion* cmp, - GList* items) -{ - GList* it; - - g_return_if_fail (cmp != NULL); - - it = items; - while (cmp->items && it) - { - cmp->items = g_list_remove (cmp->items, it->data); - it = it->next; - } - - it = items; - while (cmp->cache && it) - { - cmp->cache = g_list_remove(cmp->cache, it->data); - it = it->next; - } -} - -/** - * g_completion_clear_items: - * @cmp: the #GCompletion. - * - * Removes all items from the #GCompletion. - **/ -void -g_completion_clear_items (GCompletion* cmp) -{ - g_return_if_fail (cmp != NULL); - - g_list_free (cmp->items); - cmp->items = NULL; - g_list_free (cmp->cache); - cmp->cache = NULL; - g_free (cmp->prefix); - cmp->prefix = NULL; -} - -static void -completion_check_cache (GCompletion* cmp, - gchar** new_prefix) -{ - register GList* list; - register gsize len; - register gsize i; - register gsize plen; - gchar* postfix; - gchar* s; - - if (!new_prefix) - return; - if (!cmp->cache) - { - *new_prefix = NULL; - return; - } - - len = strlen(cmp->prefix); - list = cmp->cache; - s = cmp->func ? cmp->func (list->data) : (gchar*) list->data; - postfix = s + len; - plen = strlen (postfix); - list = list->next; - - while (list && plen) - { - s = cmp->func ? cmp->func (list->data) : (gchar*) list->data; - s += len; - for (i = 0; i < plen; ++i) - { - if (postfix[i] != s[i]) - break; - } - plen = i; - list = list->next; - } - - *new_prefix = g_new0 (gchar, len + plen + 1); - strncpy (*new_prefix, cmp->prefix, len); - strncpy (*new_prefix + len, postfix, plen); -} - -/** - * g_completion_complete_utf8: - * @cmp: the #GCompletion - * @prefix: the prefix string, typically used by the user, which is compared - * with each of the items - * @new_prefix: if non-%NULL, returns the longest prefix which is common to all - * items that matched @prefix, or %NULL if no items matched @prefix. - * This string should be freed when no longer needed. - * - * Attempts to complete the string @prefix using the #GCompletion target items. - * In contrast to g_completion_complete(), this function returns the largest common - * prefix that is a valid UTF-8 string, omitting a possible common partial - * character. - * - * You should use this function instead of g_completion_complete() if your - * items are UTF-8 strings. - * - * Return value: the list of items whose strings begin with @prefix. This should - * not be changed. - * - * Since: 2.4 - **/ -GList* -g_completion_complete_utf8 (GCompletion *cmp, - const gchar *prefix, - gchar **new_prefix) -{ - GList *list; - gchar *p, *q; - - list = g_completion_complete (cmp, prefix, new_prefix); - - if (new_prefix && *new_prefix) - { - p = *new_prefix + strlen (*new_prefix); - q = g_utf8_find_prev_char (*new_prefix, p); - - switch (g_utf8_get_char_validated (q, p - q)) - { - case (gunichar)-2: - case (gunichar)-1: - *q = 0; - break; - default: ; - } - - } - - return list; -} - -/** - * g_completion_complete: - * @cmp: the #GCompletion. - * @prefix: the prefix string, typically typed by the user, which is - * compared with each of the items. - * @new_prefix: if non-%NULL, returns the longest prefix which is - * common to all items that matched @prefix, or %NULL if - * no items matched @prefix. This string should be freed - * when no longer needed. - * @Returns: the list of items whose strings begin with @prefix. This - * should not be changed. - * - * Attempts to complete the string @prefix using the #GCompletion - * target items. - **/ -GList* -g_completion_complete (GCompletion* cmp, - const gchar* prefix, - gchar** new_prefix) -{ - gsize plen, len; - gboolean done = FALSE; - GList* list; - - g_return_val_if_fail (cmp != NULL, NULL); - g_return_val_if_fail (prefix != NULL, NULL); - - len = strlen (prefix); - if (cmp->prefix && cmp->cache) - { - plen = strlen (cmp->prefix); - if (plen <= len && ! cmp->strncmp_func (prefix, cmp->prefix, plen)) - { - /* use the cache */ - list = cmp->cache; - while (list) - { - GList *next = list->next; - - if (cmp->strncmp_func (prefix, - cmp->func ? cmp->func (list->data) : (gchar*) list->data, - len)) - cmp->cache = g_list_delete_link (cmp->cache, list); - - list = next; - } - done = TRUE; - } - } - - if (!done) - { - /* normal code */ - g_list_free (cmp->cache); - cmp->cache = NULL; - list = cmp->items; - while (*prefix && list) - { - if (!cmp->strncmp_func (prefix, - cmp->func ? cmp->func (list->data) : (gchar*) list->data, - len)) - cmp->cache = g_list_prepend (cmp->cache, list->data); - list = list->next; - } - } - if (cmp->prefix) - { - g_free (cmp->prefix); - cmp->prefix = NULL; - } - if (cmp->cache) - cmp->prefix = g_strdup (prefix); - completion_check_cache (cmp, new_prefix); - - return *prefix ? cmp->cache : cmp->items; -} - -/** - * g_completion_free: - * @cmp: the #GCompletion. - * - * Frees all memory used by the #GCompletion. - **/ -void -g_completion_free (GCompletion* cmp) -{ - g_return_if_fail (cmp != NULL); - - g_completion_clear_items (cmp); - g_free (cmp); -} - -/** - * g_completion_set_compare: - * @cmp: a #GCompletion. - * @strncmp_func: the string comparison function. - * - * Sets the function to use for string comparisons. The default string - * comparison function is strncmp(). - **/ -void -g_completion_set_compare(GCompletion *cmp, - GCompletionStrncmpFunc strncmp_func) -{ - cmp->strncmp_func = strncmp_func; -} - -#ifdef TEST_COMPLETION -#include -int -main (int argc, - char* argv[]) -{ - FILE *file; - gchar buf[1024]; - GList *list; - GList *result; - GList *tmp; - GCompletion *cmp; - gint i; - gchar *longp = NULL; - - if (argc < 3) - { - g_warning ("Usage: %s filename prefix1 [prefix2 ...]\n", argv[0]); - return 1; - } - - file = fopen (argv[1], "r"); - if (!file) - { - g_warning ("Cannot open %s\n", argv[1]); - return 1; - } - - cmp = g_completion_new (NULL); - list = g_list_alloc (); - while (fgets (buf, 1024, file)) - { - list->data = g_strdup (buf); - g_completion_add_items (cmp, list); - } - fclose (file); - - for (i = 2; i < argc; ++i) - { - printf ("COMPLETING: %s\n", argv[i]); - result = g_completion_complete (cmp, argv[i], &longp); - g_list_foreach (result, (GFunc) printf, NULL); - printf ("LONG MATCH: %s\n", longp); - g_free (longp); - longp = NULL; - } - - g_list_foreach (cmp->items, (GFunc) g_free, NULL); - g_completion_free (cmp); - g_list_free (list); - - return 0; -} -#endif - -#define __G_COMPLETION_C__ -#include "galiasdef.c" diff --git a/glib/gcompletion.h b/glib/gcompletion.h deleted file mode 100644 index 900883e..0000000 --- a/glib/gcompletion.h +++ /dev/null @@ -1,77 +0,0 @@ -/* GLIB - Library of useful routines for C programming - * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald - * - * 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., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. - */ - -/* - * Modified by the GLib Team and others 1997-2000. See the AUTHORS - * file for a list of people on the GLib Team. See the ChangeLog - * files for a list of changes. These files are distributed with - * GLib at ftp://ftp.gtk.org/pub/gtk/. - */ - -#if defined(G_DISABLE_SINGLE_INCLUDES) && !defined (__GLIB_H_INSIDE__) && !defined (GLIB_COMPILATION) -#error "Only can be included directly." -#endif - -#ifndef __G_COMPLETION_H__ -#define __G_COMPLETION_H__ - -#include - -G_BEGIN_DECLS - -typedef struct _GCompletion GCompletion; - -typedef gchar* (*GCompletionFunc) (gpointer); - -/* GCompletion - */ - -typedef gint (*GCompletionStrncmpFunc) (const gchar *s1, - const gchar *s2, - gsize n); - -struct _GCompletion -{ - GList* items; - GCompletionFunc func; - - gchar* prefix; - GList* cache; - GCompletionStrncmpFunc strncmp_func; -}; - -GCompletion* g_completion_new (GCompletionFunc func); -void g_completion_add_items (GCompletion* cmp, - GList* items); -void g_completion_remove_items (GCompletion* cmp, - GList* items); -void g_completion_clear_items (GCompletion* cmp); -GList* g_completion_complete (GCompletion* cmp, - const gchar* prefix, - gchar** new_prefix); -GList* g_completion_complete_utf8 (GCompletion *cmp, - const gchar* prefix, - gchar** new_prefix); -void g_completion_set_compare (GCompletion *cmp, - GCompletionStrncmpFunc strncmp_func); -void g_completion_free (GCompletion* cmp); - -G_END_DECLS - -#endif /* __G_COMPLETION_H__ */ diff --git a/glib/gdebug.h b/glib/gdebug.h deleted file mode 100644 index dea3dde..0000000 --- a/glib/gdebug.h +++ /dev/null @@ -1,59 +0,0 @@ -/* GLIB - Library of useful routines for C programming - * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald - * - * 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., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. - */ - -/* - * Modified by the GLib Team and others 1997-2000. See the AUTHORS - * file for a list of people on the GLib Team. See the ChangeLog - * files for a list of changes. These files are distributed with - * GTK+ at ftp://ftp.gtk.org/pub/gtk/. - */ - -#ifndef __G_DEBUG_H__ -#define __G_DEBUG_H__ - -G_BEGIN_DECLS - -typedef enum { - G_DEBUG_FATAL_WARNINGS = 1 << 0, - G_DEBUG_FATAL_CRITICALS = 1 << 1 -} GDebugFlag; - - -#ifdef G_ENABLE_DEBUG - -#define G_NOTE(type, action) G_STMT_START { \ - if (!_g_debug_initialized) \ - { _g_debug_init (); } \ - if (_g_debug_flags & G_DEBUG_##type) \ - { action; }; } G_STMT_END - -#else /* !G_ENABLE_DEBUG */ - -#define G_NOTE(type, action) - -#endif /* G_ENABLE_DEBUG */ - -GLIB_VAR gboolean _g_debug_initialized; -GLIB_VAR guint _g_debug_flags; - -G_GNUC_INTERNAL void _g_debug_init (void); - -G_END_DECLS - -#endif /* __G_DEBUG_H__ */ diff --git a/glib/grel.c b/glib/grel.c deleted file mode 100644 index 8cecd29..0000000 --- a/glib/grel.c +++ /dev/null @@ -1,646 +0,0 @@ -/* GLIB - Library of useful routines for C programming - * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald - * - * 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. - */ - -/* - * Modified by the GLib Team and others 1997-2000. See the AUTHORS - * file for a list of people on the GLib Team. See the ChangeLog - * files for a list of changes. These files are distributed with - * GLib at ftp://ftp.gtk.org/pub/gtk/. - */ - -/* - * MT safe - */ - -#include "config.h" - -#include -#include - -#include "glib.h" -#include "galias.h" - -/** - * SECTION: relations - * @title: Relations and Tuples - * @short_description: tables of data which can be indexed on any - * number of fields - * - * A #GRelation is a table of data which can be indexed on any number - * of fields, rather like simple database tables. A #GRelation contains - * a number of records, called tuples. Each record contains a number of - * fields. Records are not ordered, so it is not possible to find the - * record at a particular index. - * - * Note that #GRelation tables are currently limited to 2 fields. - * - * To create a GRelation, use g_relation_new(). - * - * To specify which fields should be indexed, use g_relation_index(). - * Note that this must be called before any tuples are added to the - * #GRelation. - * - * To add records to a #GRelation use g_relation_insert(). - * - * To determine if a given record appears in a #GRelation, use - * g_relation_exists(). Note that fields are compared directly, so - * pointers must point to the exact same position (i.e. different - * copies of the same string will not match.) - * - * To count the number of records which have a particular value in a - * given field, use g_relation_count(). - * - * To get all the records which have a particular value in a given - * field, use g_relation_select(). To access fields of the resulting - * records, use g_tuples_index(). To free the resulting records use - * g_tuples_destroy(). - * - * To delete all records which have a particular value in a given - * field, use g_relation_delete(). - * - * To destroy the #GRelation, use g_relation_destroy(). - * - * To help debug #GRelation objects, use g_relation_print(). - **/ - -typedef struct _GRealTuples GRealTuples; - -/** - * GRelation: - * - * The #GRelation struct is an opaque data structure to represent a - * Relation. It should - * only be accessed via the following functions. - **/ -struct _GRelation -{ - gint fields; - gint current_field; - - GHashTable *all_tuples; - GHashTable **hashed_tuple_tables; - - gint count; -}; - -/** - * GTuples: - * @len: the number of records that matched. - * - * The #GTuples struct is used to return records (or tuples) from the - * #GRelation by g_relation_select(). It only contains one public - * member - the number of records that matched. To access the matched - * records, you must use g_tuples_index(). - **/ -struct _GRealTuples -{ - gint len; - gint width; - gpointer *data; -}; - -static gboolean -tuple_equal_2 (gconstpointer v_a, - gconstpointer v_b) -{ - gpointer* a = (gpointer*) v_a; - gpointer* b = (gpointer*) v_b; - - return a[0] == b[0] && a[1] == b[1]; -} - -static guint -tuple_hash_2 (gconstpointer v_a) -{ -#if GLIB_SIZEOF_VOID_P > GLIB_SIZEOF_LONG - /* In practise this snippet has been written for 64-bit Windows - * where ints are 32 bits, pointers 64 bits. More exotic platforms - * need more tweaks. - */ - guint* a = (guint*) v_a; - - return (a[0] ^ a[1] ^ a[2] ^ a[3]); -#else - gpointer* a = (gpointer*) v_a; - - return (gulong)a[0] ^ (gulong)a[1]; -#endif -} - -static GHashFunc -tuple_hash (gint fields) -{ - switch (fields) - { - case 2: - return tuple_hash_2; - default: - g_error ("no tuple hash for %d", fields); - } - - return NULL; -} - -static GEqualFunc -tuple_equal (gint fields) -{ - switch (fields) - { - case 2: - return tuple_equal_2; - default: - g_error ("no tuple equal for %d", fields); - } - - return NULL; -} - -/** - * g_relation_new: - * @fields: the number of fields. - * @Returns: a new #GRelation. - * - * Creates a new #GRelation with the given number of fields. Note that - * currently the number of fields must be 2. - **/ -GRelation* -g_relation_new (gint fields) -{ - GRelation* rel = g_new0 (GRelation, 1); - - rel->fields = fields; - rel->all_tuples = g_hash_table_new (tuple_hash (fields), tuple_equal (fields)); - rel->hashed_tuple_tables = g_new0 (GHashTable*, fields); - - return rel; -} - -static void -relation_delete_value_tuple (gpointer tuple_key, - gpointer tuple_value, - gpointer user_data) -{ - GRelation *relation = user_data; - gpointer *tuple = tuple_value; - g_slice_free1 (relation->fields * sizeof (gpointer), tuple); -} - -static void -g_relation_free_array (gpointer key, gpointer value, gpointer user_data) -{ - g_hash_table_destroy ((GHashTable*) value); -} - -/** - * g_relation_destroy: - * @relation: a #GRelation. - * - * Destroys the #GRelation, freeing all memory allocated. However, it - * does not free memory allocated for the tuple data, so you should - * free that first if appropriate. - **/ -void -g_relation_destroy (GRelation *relation) -{ - gint i; - - if (relation) - { - for (i = 0; i < relation->fields; i += 1) - { - if (relation->hashed_tuple_tables[i]) - { - g_hash_table_foreach (relation->hashed_tuple_tables[i], g_relation_free_array, NULL); - g_hash_table_destroy (relation->hashed_tuple_tables[i]); - } - } - - g_hash_table_foreach (relation->all_tuples, relation_delete_value_tuple, relation); - g_hash_table_destroy (relation->all_tuples); - - g_free (relation->hashed_tuple_tables); - g_free (relation); - } -} - -/** - * g_relation_index: - * @relation: a #GRelation. - * @field: the field to index, counting from 0. - * @hash_func: a function to produce a hash value from the field data. - * @key_equal_func: a function to compare two values of the given field. - * - * Creates an index on the given field. Note that this must be called - * before any records are added to the #GRelation. - **/ -void -g_relation_index (GRelation *relation, - gint field, - GHashFunc hash_func, - GEqualFunc key_equal_func) -{ - g_return_if_fail (relation != NULL); - - g_return_if_fail (relation->count == 0 && relation->hashed_tuple_tables[field] == NULL); - - relation->hashed_tuple_tables[field] = g_hash_table_new (hash_func, key_equal_func); -} - -/** - * g_relation_insert: - * @relation: a #GRelation. - * @Varargs: the fields of the record to add. These must match the - * number of fields in the #GRelation, and of type #gpointer - * or #gconstpointer. - * - * Inserts a record into a #GRelation. - **/ -void -g_relation_insert (GRelation *relation, - ...) -{ - gpointer* tuple = g_slice_alloc (relation->fields * sizeof (gpointer)); - va_list args; - gint i; - - va_start (args, relation); - - for (i = 0; i < relation->fields; i += 1) - tuple[i] = va_arg (args, gpointer); - - va_end (args); - - g_hash_table_insert (relation->all_tuples, tuple, tuple); - - relation->count += 1; - - for (i = 0; i < relation->fields; i += 1) - { - GHashTable *table; - gpointer key; - GHashTable *per_key_table; - - table = relation->hashed_tuple_tables[i]; - - if (table == NULL) - continue; - - key = tuple[i]; - per_key_table = g_hash_table_lookup (table, key); - - if (per_key_table == NULL) - { - per_key_table = g_hash_table_new (tuple_hash (relation->fields), tuple_equal (relation->fields)); - g_hash_table_insert (table, key, per_key_table); - } - - g_hash_table_insert (per_key_table, tuple, tuple); - } -} - -static void -g_relation_delete_tuple (gpointer tuple_key, - gpointer tuple_value, - gpointer user_data) -{ - gpointer *tuple = (gpointer*) tuple_value; - GRelation *relation = (GRelation *) user_data; - gint j; - - g_assert (tuple_key == tuple_value); - - for (j = 0; j < relation->fields; j += 1) - { - GHashTable *one_table = relation->hashed_tuple_tables[j]; - gpointer one_key; - GHashTable *per_key_table; - - if (one_table == NULL) - continue; - - if (j == relation->current_field) - /* can't delete from the table we're foreaching in */ - continue; - - one_key = tuple[j]; - - per_key_table = g_hash_table_lookup (one_table, one_key); - - g_hash_table_remove (per_key_table, tuple); - } - - if (g_hash_table_remove (relation->all_tuples, tuple)) - g_slice_free1 (relation->fields * sizeof (gpointer), tuple); - - relation->count -= 1; -} - -/** - * g_relation_delete: - * @relation: a #GRelation. - * @key: the value to compare with. - * @field: the field of each record to match. - * @Returns: the number of records deleted. - * - * Deletes any records from a #GRelation that have the given key value - * in the given field. - **/ -gint -g_relation_delete (GRelation *relation, - gconstpointer key, - gint field) -{ - GHashTable *table; - GHashTable *key_table; - gint count; - - g_return_val_if_fail (relation != NULL, 0); - - table = relation->hashed_tuple_tables[field]; - count = relation->count; - - g_return_val_if_fail (table != NULL, 0); - - key_table = g_hash_table_lookup (table, key); - - if (!key_table) - return 0; - - relation->current_field = field; - - g_hash_table_foreach (key_table, g_relation_delete_tuple, relation); - - g_hash_table_remove (table, key); - - g_hash_table_destroy (key_table); - - /* @@@ FIXME: Remove empty hash tables. */ - - return count - relation->count; -} - -static void -g_relation_select_tuple (gpointer tuple_key, - gpointer tuple_value, - gpointer user_data) -{ - gpointer *tuple = (gpointer*) tuple_value; - GRealTuples *tuples = (GRealTuples*) user_data; - gint stride = sizeof (gpointer) * tuples->width; - - g_assert (tuple_key == tuple_value); - - memcpy (tuples->data + (tuples->len * tuples->width), - tuple, - stride); - - tuples->len += 1; -} - -/** - * g_relation_select: - * @relation: a #GRelation. - * @key: the value to compare with. - * @field: the field of each record to match. - * @Returns: the records (tuples) that matched. - * - * Returns all of the tuples which have the given key in the given - * field. Use g_tuples_index() to access the returned records. The - * returned records should be freed with g_tuples_destroy(). - **/ -GTuples* -g_relation_select (GRelation *relation, - gconstpointer key, - gint field) -{ - GHashTable *table; - GHashTable *key_table; - GRealTuples *tuples; - gint count; - - g_return_val_if_fail (relation != NULL, NULL); - - table = relation->hashed_tuple_tables[field]; - - g_return_val_if_fail (table != NULL, NULL); - - tuples = g_new0 (GRealTuples, 1); - key_table = g_hash_table_lookup (table, key); - - if (!key_table) - return (GTuples*)tuples; - - count = g_relation_count (relation, key, field); - - tuples->data = g_malloc (sizeof (gpointer) * relation->fields * count); - tuples->width = relation->fields; - - g_hash_table_foreach (key_table, g_relation_select_tuple, tuples); - - g_assert (count == tuples->len); - - return (GTuples*)tuples; -} - -/** - * g_relation_count: - * @relation: a #GRelation. - * @key: the value to compare with. - * @field: the field of each record to match. - * @Returns: the number of matches. - * - * Returns the number of tuples in a #GRelation that have the given - * value in the given field. - **/ -gint -g_relation_count (GRelation *relation, - gconstpointer key, - gint field) -{ - GHashTable *table; - GHashTable *key_table; - - g_return_val_if_fail (relation != NULL, 0); - - table = relation->hashed_tuple_tables[field]; - - g_return_val_if_fail (table != NULL, 0); - - key_table = g_hash_table_lookup (table, key); - - if (!key_table) - return 0; - - return g_hash_table_size (key_table); -} - -/** - * g_relation_exists: - * @relation: a #GRelation. - * @Varargs: the fields of the record to compare. The number must match - * the number of fields in the #GRelation. - * @Returns: %TRUE if a record matches. - * - * Returns %TRUE if a record with the given values exists in a - * #GRelation. Note that the values are compared directly, so that, for - * example, two copies of the same string will not match. - **/ -gboolean -g_relation_exists (GRelation *relation, ...) -{ - gpointer *tuple = g_slice_alloc (relation->fields * sizeof (gpointer)); - va_list args; - gint i; - gboolean result; - - va_start(args, relation); - - for (i = 0; i < relation->fields; i += 1) - tuple[i] = va_arg(args, gpointer); - - va_end(args); - - result = g_hash_table_lookup (relation->all_tuples, tuple) != NULL; - - g_slice_free1 (relation->fields * sizeof (gpointer), tuple); - - return result; -} - -/** - * g_tuples_destroy: - * @tuples: the tuple data to free. - * - * Frees the records which were returned by g_relation_select(). This - * should always be called after g_relation_select() when you are - * finished with the records. The records are not removed from the - * #GRelation. - **/ -void -g_tuples_destroy (GTuples *tuples0) -{ - GRealTuples *tuples = (GRealTuples*) tuples0; - - if (tuples) - { - g_free (tuples->data); - g_free (tuples); - } -} - -/** - * g_tuples_index: - * @tuples: the tuple data, returned by g_relation_select(). - * @index_: the index of the record. - * @field: the field to return. - * @Returns: the field of the record. - * - * Gets a field from the records returned by g_relation_select(). It - * returns the given field of the record at the given index. The - * returned value should not be changed. - **/ -gpointer -g_tuples_index (GTuples *tuples0, - gint index, - gint field) -{ - GRealTuples *tuples = (GRealTuples*) tuples0; - - g_return_val_if_fail (tuples0 != NULL, NULL); - g_return_val_if_fail (field < tuples->width, NULL); - - return tuples->data[index * tuples->width + field]; -} - -/* Print - */ - -static void -g_relation_print_one (gpointer tuple_key, - gpointer tuple_value, - gpointer user_data) -{ - gint i; - GString *gstring; - GRelation* rel = (GRelation*) user_data; - gpointer* tuples = (gpointer*) tuple_value; - - gstring = g_string_new ("["); - - for (i = 0; i < rel->fields; i += 1) - { - g_string_append_printf (gstring, "%p", tuples[i]); - - if (i < (rel->fields - 1)) - g_string_append (gstring, ","); - } - - g_string_append (gstring, "]"); - g_log (G_LOG_DOMAIN, G_LOG_LEVEL_INFO, "%s", gstring->str); - g_string_free (gstring, TRUE); -} - -static void -g_relation_print_index (gpointer tuple_key, - gpointer tuple_value, - gpointer user_data) -{ - GRelation* rel = (GRelation*) user_data; - GHashTable* table = (GHashTable*) tuple_value; - - g_log (G_LOG_DOMAIN, G_LOG_LEVEL_INFO, "*** key %p", tuple_key); - - g_hash_table_foreach (table, - g_relation_print_one, - rel); -} - -/** - * g_relation_print: - * @relation: a #GRelation. - * - * Outputs information about all records in a #GRelation, as well as - * the indexes. It is for debugging. - **/ -void -g_relation_print (GRelation *relation) -{ - gint i; - - g_log (G_LOG_DOMAIN, G_LOG_LEVEL_INFO, "*** all tuples (%d)", relation->count); - - g_hash_table_foreach (relation->all_tuples, - g_relation_print_one, - relation); - - for (i = 0; i < relation->fields; i += 1) - { - if (relation->hashed_tuple_tables[i] == NULL) - continue; - - g_log (G_LOG_DOMAIN, G_LOG_LEVEL_INFO, "*** index %d", i); - - g_hash_table_foreach (relation->hashed_tuple_tables[i], - g_relation_print_index, - relation); - } - -} - -#define __G_REL_C__ -#include "galiasdef.c" diff --git a/glib/grel.h b/glib/grel.h deleted file mode 100644 index e7c9291..0000000 --- a/glib/grel.h +++ /dev/null @@ -1,97 +0,0 @@ -/* GLIB - Library of useful routines for C programming - * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald - * - * 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., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. - */ - -/* - * Modified by the GLib Team and others 1997-2000. See the AUTHORS - * file for a list of people on the GLib Team. See the ChangeLog - * files for a list of changes. These files are distributed with - * GLib at ftp://ftp.gtk.org/pub/gtk/. - */ - -#if defined(G_DISABLE_SINGLE_INCLUDES) && !defined (__GLIB_H_INSIDE__) && !defined (GLIB_COMPILATION) -#error "Only can be included directly." -#endif - -#ifndef __G_REL_H__ -#define __G_REL_H__ - -#include - -G_BEGIN_DECLS - -typedef struct _GRelation GRelation; -typedef struct _GTuples GTuples; - -struct _GTuples -{ - guint len; -}; - -/* GRelation - * - * Indexed Relations. Imagine a really simple table in a - * database. Relations are not ordered. This data type is meant for - * maintaining a N-way mapping. - * - * g_relation_new() creates a relation with FIELDS fields - * - * g_relation_destroy() frees all resources - * g_tuples_destroy() frees the result of g_relation_select() - * - * g_relation_index() indexes relation FIELD with the provided - * equality and hash functions. this must be done before any - * calls to insert are made. - * - * g_relation_insert() inserts a new tuple. you are expected to - * provide the right number of fields. - * - * g_relation_delete() deletes all relations with KEY in FIELD - * g_relation_select() returns ... - * g_relation_count() counts ... - */ - -GRelation* g_relation_new (gint fields); -void g_relation_destroy (GRelation *relation); -void g_relation_index (GRelation *relation, - gint field, - GHashFunc hash_func, - GEqualFunc key_equal_func); -void g_relation_insert (GRelation *relation, - ...); -gint g_relation_delete (GRelation *relation, - gconstpointer key, - gint field); -GTuples* g_relation_select (GRelation *relation, - gconstpointer key, - gint field); -gint g_relation_count (GRelation *relation, - gconstpointer key, - gint field); -gboolean g_relation_exists (GRelation *relation, - ...); -void g_relation_print (GRelation *relation); - -void g_tuples_destroy (GTuples *tuples); -gpointer g_tuples_index (GTuples *tuples, - gint index_, - gint field); - -G_END_DECLS - -#endif /* __G_REL_H__ */ diff --git a/glib/makegalias.pl b/glib/makegalias.pl deleted file mode 100755 index 622026a..0000000 --- a/glib/makegalias.pl +++ /dev/null @@ -1,136 +0,0 @@ -#!/usr/bin/perl -w - -my $do_def = 0; - -if (($#ARGV >= 0) && ($ARGV[0] eq "-def")) { - shift; - $do_def = 1; -} - -print <) { - - # ignore empty lines - next if /^\s*$/; - - # skip comments - if ($_ =~ /^\s*\/\*/) - { - $in_comment = 1; - } - - if ($in_comment) - { - if ($_ =~ /\*\/\s$/) - { - $in_comment = 0; - } - - next; - } - - # handle ifdefs - if ($_ =~ /^\#endif/) - { - if (!$in_skipped_section) - { - print $_; - } - - $in_skipped_section = 0; - - next; - } - - if ($_ =~ /^\#ifdef\s+(INCLUDE_VARIABLES|INCLUDE_INTERNAL_SYMBOLS|ALL_FILES)/) - { - $in_skipped_section = 1; - } - - if ($in_skipped_section) - { - next; - } - - if ($_ =~ /^\#ifn?def\s+(G|DISABLE_MEM_POOLS|_WIN64)/) - { - print $_; - - next; - } - - if ($_ =~ /^\#if.*(G_STDIO_NO_WRAP_ON_UNIX|IN_FILE|IN_HEADER|IN_FILE)/) - { - print $_; - - next; - } - - chop; - my $str = $_; - my @words; - my $attributes = ""; - - @words = split(/ /, $str); - $str = shift(@words); - chomp($str); - my $alias = "IA__".$str; - - # Drop any Win32 specific .def file syntax, but keep attributes - foreach $word (@words) { - $attributes = "$attributes $word" unless $word eq "PRIVATE"; - } - - if (!$do_def) { - print <options field has been expanded to a long int, all the public options -at the low end of it, and so even on 16-bit systems this will still be OK. -Therefore, I haven't changed the API for pcre_info(). - -Arguments: - argument_re points to compiled code - optptr where to pass back the options - first_byte where to pass back the first character, - or -1 if multiline and all branches start ^, - or -2 otherwise - -Returns: number of capturing subpatterns - or negative values on error -*/ - -PCRE_EXP_DEFN int PCRE_CALL_CONVENTION -pcre_info(const pcre *argument_re, int *optptr, int *first_byte) -{ -real_pcre internal_re; -const real_pcre *re = (const real_pcre *)argument_re; -if (re == NULL) return PCRE_ERROR_NULL; -if (re->magic_number != MAGIC_NUMBER) - { - re = _pcre_try_flipped(re, &internal_re, NULL, NULL); - if (re == NULL) return PCRE_ERROR_BADMAGIC; - } -if (optptr != NULL) *optptr = (int)(re->options & PUBLIC_OPTIONS); -if (first_byte != NULL) - *first_byte = ((re->flags & PCRE_FIRSTSET) != 0)? re->first_byte : - ((re->flags & PCRE_STARTLINE) != 0)? -1 : -2; -return re->top_bracket; -} - -/* End of pcre_info.c */ diff --git a/glib/pcre/pcre_maketables.c b/glib/pcre/pcre_maketables.c deleted file mode 100644 index 219973e..0000000 --- a/glib/pcre/pcre_maketables.c +++ /dev/null @@ -1,143 +0,0 @@ -/************************************************* -* Perl-Compatible Regular Expressions * -*************************************************/ - -/* PCRE is a library of functions to support regular expressions whose syntax -and semantics are as close as possible to those of the Perl 5 language. - - Written by Philip Hazel - Copyright (c) 1997-2008 University of Cambridge - ------------------------------------------------------------------------------ -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are met: - - * Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - * Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - - * Neither the name of the University of Cambridge nor the names of its - contributors may be used to endorse or promote products derived from - this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE -LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -POSSIBILITY OF SUCH DAMAGE. ------------------------------------------------------------------------------ -*/ - - -/* This module contains the external function pcre_maketables(), which builds -character tables for PCRE in the current locale. The file is compiled on its -own as part of the PCRE library. However, it is also included in the -compilation of dftables.c, in which case the macro DFTABLES is defined. */ - - -#ifndef DFTABLES -# ifdef HAVE_CONFIG_H -# include "config.h" -# endif -# include "pcre_internal.h" -#endif - - -/************************************************* -* Create PCRE character tables * -*************************************************/ - -/* This function builds a set of character tables for use by PCRE and returns -a pointer to them. They are build using the ctype functions, and consequently -their contents will depend upon the current locale setting. When compiled as -part of the library, the store is obtained via pcre_malloc(), but when compiled -inside dftables, use malloc(). - -Arguments: none -Returns: pointer to the contiguous block of data -*/ - -const unsigned char * -pcre_maketables(void) -{ -unsigned char *yield, *p; -int i; - -#ifndef DFTABLES -yield = (unsigned char*)(pcre_malloc)(tables_length); -#else -yield = (unsigned char*)malloc(tables_length); -#endif - -if (yield == NULL) return NULL; -p = yield; - -/* First comes the lower casing table */ - -for (i = 0; i < 256; i++) *p++ = tolower(i); - -/* Next the case-flipping table */ - -for (i = 0; i < 256; i++) *p++ = islower(i)? toupper(i) : tolower(i); - -/* Then the character class tables. Don't try to be clever and save effort on -exclusive ones - in some locales things may be different. Note that the table -for "space" includes everything "isspace" gives, including VT in the default -locale. This makes it work for the POSIX class [:space:]. Note also that it is -possible for a character to be alnum or alpha without being lower or upper, -such as "male and female ordinals" (\xAA and \xBA) in the fr_FR locale (at -least under Debian Linux's locales as of 12/2005). So we must test for alnum -specially. */ - -memset(p, 0, cbit_length); -for (i = 0; i < 256; i++) - { - if (isdigit(i)) p[cbit_digit + i/8] |= 1 << (i&7); - if (isupper(i)) p[cbit_upper + i/8] |= 1 << (i&7); - if (islower(i)) p[cbit_lower + i/8] |= 1 << (i&7); - if (isalnum(i)) p[cbit_word + i/8] |= 1 << (i&7); - if (i == '_') p[cbit_word + i/8] |= 1 << (i&7); - if (isspace(i)) p[cbit_space + i/8] |= 1 << (i&7); - if (isxdigit(i))p[cbit_xdigit + i/8] |= 1 << (i&7); - if (isgraph(i)) p[cbit_graph + i/8] |= 1 << (i&7); - if (isprint(i)) p[cbit_print + i/8] |= 1 << (i&7); - if (ispunct(i)) p[cbit_punct + i/8] |= 1 << (i&7); - if (iscntrl(i)) p[cbit_cntrl + i/8] |= 1 << (i&7); - } -p += cbit_length; - -/* Finally, the character type table. In this, we exclude VT from the white -space chars, because Perl doesn't recognize it as such for \s and for comments -within regexes. */ - -for (i = 0; i < 256; i++) - { - int x = 0; - if (i != 0x0b && isspace(i)) x += ctype_space; - if (isalpha(i)) x += ctype_letter; - if (isdigit(i)) x += ctype_digit; - if (isxdigit(i)) x += ctype_xdigit; - if (isalnum(i) || i == '_') x += ctype_word; - - /* Note: strchr includes the terminating zero in the characters it considers. - In this instance, that is ok because we want binary zero to be flagged as a - meta-character, which in this sense is any character that terminates a run - of data characters. */ - - if (strchr("\\*+?{^.$|()[", i) != 0) x += ctype_meta; - *p++ = x; - } - -return yield; -} - -/* End of pcre_maketables.c */ diff --git a/glib/pcre/pcre_refcount.c b/glib/pcre/pcre_refcount.c deleted file mode 100644 index 92e4b85..0000000 --- a/glib/pcre/pcre_refcount.c +++ /dev/null @@ -1,82 +0,0 @@ -/************************************************* -* Perl-Compatible Regular Expressions * -*************************************************/ - -/* PCRE is a library of functions to support regular expressions whose syntax -and semantics are as close as possible to those of the Perl 5 language. - - Written by Philip Hazel - Copyright (c) 1997-2008 University of Cambridge - ------------------------------------------------------------------------------ -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are met: - - * Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - * Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - - * Neither the name of the University of Cambridge nor the names of its - contributors may be used to endorse or promote products derived from - this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE -LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -POSSIBILITY OF SUCH DAMAGE. ------------------------------------------------------------------------------ -*/ - - -/* This module contains the external function pcre_refcount(), which is an -auxiliary function that can be used to maintain a reference count in a compiled -pattern data block. This might be helpful in applications where the block is -shared by different users. */ - - -#ifdef HAVE_CONFIG_H -#include "config.h" -#endif - -#include "pcre_internal.h" - - -/************************************************* -* Maintain reference count * -*************************************************/ - -/* The reference count is a 16-bit field, initialized to zero. It is not -possible to transfer a non-zero count from one host to a different host that -has a different byte order - though I can't see why anyone in their right mind -would ever want to do that! - -Arguments: - argument_re points to compiled code - adjust value to add to the count - -Returns: the (possibly updated) count value (a non-negative number), or - a negative error number -*/ - -PCRE_EXP_DEFN int PCRE_CALL_CONVENTION -pcre_refcount(pcre *argument_re, int adjust) -{ -real_pcre *re = (real_pcre *)argument_re; -if (re == NULL) return PCRE_ERROR_NULL; -re->ref_count = (-adjust > re->ref_count)? 0 : - (adjust + re->ref_count > 65535)? 65535 : - re->ref_count + adjust; -return re->ref_count; -} - -/* End of pcre_refcount.c */ diff --git a/glib/pcre/pcre_try_flipped.c b/glib/pcre/pcre_try_flipped.c deleted file mode 100644 index 0d2f3a2..0000000 --- a/glib/pcre/pcre_try_flipped.c +++ /dev/null @@ -1,137 +0,0 @@ -/************************************************* -* Perl-Compatible Regular Expressions * -*************************************************/ - -/* PCRE is a library of functions to support regular expressions whose syntax -and semantics are as close as possible to those of the Perl 5 language. - - Written by Philip Hazel - Copyright (c) 1997-2008 University of Cambridge - ------------------------------------------------------------------------------ -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are met: - - * Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - * Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - - * Neither the name of the University of Cambridge nor the names of its - contributors may be used to endorse or promote products derived from - this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE -LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -POSSIBILITY OF SUCH DAMAGE. ------------------------------------------------------------------------------ -*/ - - -/* This module contains an internal function that tests a compiled pattern to -see if it was compiled with the opposite endianness. If so, it uses an -auxiliary local function to flip the appropriate bytes. */ - - -#ifdef HAVE_CONFIG_H -#include "config.h" -#endif - -#include "pcre_internal.h" - - -/************************************************* -* Flip bytes in an integer * -*************************************************/ - -/* This function is called when the magic number in a regex doesn't match, in -order to flip its bytes to see if we are dealing with a pattern that was -compiled on a host of different endianness. If so, this function is used to -flip other byte values. - -Arguments: - value the number to flip - n the number of bytes to flip (assumed to be 2 or 4) - -Returns: the flipped value -*/ - -static unsigned long int -byteflip(unsigned long int value, int n) -{ -if (n == 2) return ((value & 0x00ff) << 8) | ((value & 0xff00) >> 8); -return ((value & 0x000000ff) << 24) | - ((value & 0x0000ff00) << 8) | - ((value & 0x00ff0000) >> 8) | - ((value & 0xff000000) >> 24); -} - - - -/************************************************* -* Test for a byte-flipped compiled regex * -*************************************************/ - -/* This function is called from pcre_exec(), pcre_dfa_exec(), and also from -pcre_fullinfo(). Its job is to test whether the regex is byte-flipped - that -is, it was compiled on a system of opposite endianness. The function is called -only when the native MAGIC_NUMBER test fails. If the regex is indeed flipped, -we flip all the relevant values into a different data block, and return it. - -Arguments: - re points to the regex - study points to study data, or NULL - internal_re points to a new regex block - internal_study points to a new study block - -Returns: the new block if is is indeed a byte-flipped regex - NULL if it is not -*/ - -real_pcre * -_pcre_try_flipped(const real_pcre *re, real_pcre *internal_re, - const pcre_study_data *study, pcre_study_data *internal_study) -{ -if (byteflip(re->magic_number, sizeof(re->magic_number)) != MAGIC_NUMBER) - return NULL; - -*internal_re = *re; /* To copy other fields */ -internal_re->size = byteflip(re->size, sizeof(re->size)); -internal_re->options = byteflip(re->options, sizeof(re->options)); -internal_re->flags = (pcre_uint16)byteflip(re->flags, sizeof(re->flags)); -internal_re->top_bracket = - (pcre_uint16)byteflip(re->top_bracket, sizeof(re->top_bracket)); -internal_re->top_backref = - (pcre_uint16)byteflip(re->top_backref, sizeof(re->top_backref)); -internal_re->first_byte = - (pcre_uint16)byteflip(re->first_byte, sizeof(re->first_byte)); -internal_re->req_byte = - (pcre_uint16)byteflip(re->req_byte, sizeof(re->req_byte)); -internal_re->name_table_offset = - (pcre_uint16)byteflip(re->name_table_offset, sizeof(re->name_table_offset)); -internal_re->name_entry_size = - (pcre_uint16)byteflip(re->name_entry_size, sizeof(re->name_entry_size)); -internal_re->name_count = - (pcre_uint16)byteflip(re->name_count, sizeof(re->name_count)); - -if (study != NULL) - { - *internal_study = *study; /* To copy other fields */ - internal_study->size = byteflip(study->size, sizeof(study->size)); - internal_study->options = byteflip(study->options, sizeof(study->options)); - } - -return internal_re; -} - -/* End of pcre_tryflipped.c */ diff --git a/glib/pcre/pcre_ucp_searchfuncs.c b/glib/pcre/pcre_ucp_searchfuncs.c deleted file mode 100644 index 3e1ed38..0000000 --- a/glib/pcre/pcre_ucp_searchfuncs.c +++ /dev/null @@ -1,85 +0,0 @@ -/************************************************* -* Perl-Compatible Regular Expressions * -*************************************************/ - -/* PCRE is a library of functions to support regular expressions whose syntax -and semantics are as close as possible to those of the Perl 5 language. - - Written by Philip Hazel - Copyright (c) 1997-2006 University of Cambridge - ------------------------------------------------------------------------------ -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are met: - - * Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - * Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - - * Neither the name of the University of Cambridge nor the names of its - contributors may be used to endorse or promote products derived from - this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE -LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -POSSIBILITY OF SUCH DAMAGE. ------------------------------------------------------------------------------ -*/ - -/* This file has been modified to use glib instead of the internal table - * in ucptable.c -- Marco Barisione */ - -/* This module contains code for searching the table of Unicode character -properties. */ - -#ifdef HAVE_CONFIG_H -#include "config.h" -#endif - -#include "pcre_internal.h" - -#include "ucp.h" /* Category definitions */ - - -/************************************************* -* Search table and return other case * -*************************************************/ - -/* If the given character is a letter, and there is another case for the -letter, return the other case. Otherwise, return -1. - -Arguments: - c the character value - -Returns: the other case or NOTACHAR if none -*/ - -unsigned int -_pcre_ucp_othercase(const unsigned int c) -{ -unsigned int other_case = NOTACHAR; - -if (g_unichar_islower(c)) - other_case = g_unichar_toupper(c); -else if (g_unichar_isupper(c)) - other_case = g_unichar_tolower(c); - -if (other_case == c) - other_case = NOTACHAR; - -return other_case; -} - - -/* End of pcre_ucp_searchfuncs.c */ diff --git a/glib/pcre/pcre_version.c b/glib/pcre/pcre_version.c deleted file mode 100644 index 7067cd4..0000000 --- a/glib/pcre/pcre_version.c +++ /dev/null @@ -1,90 +0,0 @@ -/************************************************* -* Perl-Compatible Regular Expressions * -*************************************************/ - -/* PCRE is a library of functions to support regular expressions whose syntax -and semantics are as close as possible to those of the Perl 5 language. - - Written by Philip Hazel - Copyright (c) 1997-2008 University of Cambridge - ------------------------------------------------------------------------------ -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are met: - - * Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - * Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - - * Neither the name of the University of Cambridge nor the names of its - contributors may be used to endorse or promote products derived from - this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE -LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -POSSIBILITY OF SUCH DAMAGE. ------------------------------------------------------------------------------ -*/ - - -/* This module contains the external function pcre_version(), which returns a -string that identifies the PCRE version that is in use. */ - - -#ifdef HAVE_CONFIG_H -#include "config.h" -#endif - -#include "pcre_internal.h" - - -/************************************************* -* Return version string * -*************************************************/ - -/* These macros are the standard way of turning unquoted text into C strings. -They allow macros like PCRE_MAJOR to be defined without quotes, which is -convenient for user programs that want to test its value. */ - -#define STRING(a) # a -#define XSTRING(s) STRING(s) - -/* A problem turned up with PCRE_PRERELEASE, which is defined empty for -production releases. Originally, it was used naively in this code: - - return XSTRING(PCRE_MAJOR) - "." XSTRING(PCRE_MINOR) - XSTRING(PCRE_PRERELEASE) - " " XSTRING(PCRE_DATE); - -However, when PCRE_PRERELEASE is empty, this leads to an attempted expansion of -STRING(). The C standard states: "If (before argument substitution) any -argument consists of no preprocessing tokens, the behavior is undefined." It -turns out the gcc treats this case as a single empty string - which is what we -really want - but Visual C grumbles about the lack of an argument for the -macro. Unfortunately, both are within their rights. To cope with both ways of -handling this, I had resort to some messy hackery that does a test at run time. -I could find no way of detecting that a macro is defined as an empty string at -pre-processor time. This hack uses a standard trick for avoiding calling -the STRING macro with an empty argument when doing the test. */ - -PCRE_EXP_DEFN const char * PCRE_CALL_CONVENTION -pcre_version(void) -{ -return (XSTRING(Z PCRE_PRERELEASE)[1] == 0)? - XSTRING(PCRE_MAJOR.PCRE_MINOR PCRE_DATE) : - XSTRING(PCRE_MAJOR.PCRE_MINOR) XSTRING(PCRE_PRERELEASE PCRE_DATE); -} - -/* End of pcre_version.c */ diff --git a/glib/pcre/ucpinternal.h b/glib/pcre/ucpinternal.h deleted file mode 100644 index a96667b..0000000 --- a/glib/pcre/ucpinternal.h +++ /dev/null @@ -1,92 +0,0 @@ -/************************************************* -* Unicode Property Table handler * -*************************************************/ - -#ifndef _UCPINTERNAL_H -#define _UCPINTERNAL_H - -/* Internal header file defining the layout of the bits in each pair of 32-bit -words that form a data item in the table. */ - -typedef struct cnode { - pcre_uint32 f0; - pcre_uint32 f1; -} cnode; - -/* Things for the f0 field */ - -#define f0_scriptmask 0xff000000 /* Mask for script field */ -#define f0_scriptshift 24 /* Shift for script value */ -#define f0_rangeflag 0x00800000 /* Flag for a range item */ -#define f0_charmask 0x001fffff /* Mask for code point value */ - -/* Things for the f1 field */ - -#define f1_typemask 0xfc000000 /* Mask for char type field */ -#define f1_typeshift 26 /* Shift for the type field */ -#define f1_rangemask 0x0000ffff /* Mask for a range offset */ -#define f1_casemask 0x0000ffff /* Mask for a case offset */ -#define f1_caseneg 0xffff8000 /* Bits for negation */ - -/* The data consists of a vector of structures of type cnode. The two unsigned -32-bit integers are used as follows: - -(f0) (1) The most significant byte holds the script number. The numbers are - defined by the enum in ucp.h. - - (2) The 0x00800000 bit is set if this entry defines a range of characters. - It is not set if this entry defines a single character - - (3) The 0x00600000 bits are spare. - - (4) The 0x001fffff bits contain the code point. No Unicode code point will - ever be greater than 0x0010ffff, so this should be OK for ever. - -(f1) (1) The 0xfc000000 bits contain the character type number. The numbers are - defined by an enum in ucp.h. - - (2) The 0x03ff0000 bits are spare. - - (3) The 0x0000ffff bits contain EITHER the unsigned offset to the top of - range if this entry defines a range, OR the *signed* offset to the - character's "other case" partner if this entry defines a single - character. There is no partner if the value is zero. - -------------------------------------------------------------------------------- -| script (8) |.|.|.| codepoint (21) || type (6) |.|.| spare (8) | offset (16) | -------------------------------------------------------------------------------- - | | | | | - | | |-> spare | |-> spare - | | | - | |-> spare |-> spare - | - |-> range flag - -The upper/lower casing information is set only for characters that come in -pairs. The non-one-to-one mappings in the Unicode data are ignored. - -When searching the data, proceed as follows: - -(1) Set up for a binary chop search. - -(2) If the top is not greater than the bottom, the character is not in the - table. Its type must therefore be "Cn" ("Undefined"). - -(3) Find the middle vector element. - -(4) Extract the code point and compare. If equal, we are done. - -(5) If the test character is smaller, set the top to the current point, and - goto (2). - -(6) If the current entry defines a range, compute the last character by adding - the offset, and see if the test character is within the range. If it is, - we are done. - -(7) Otherwise, set the bottom to one element past the current point and goto - (2). -*/ - -#endif /* _UCPINTERNAL_H */ - -/* End of ucpinternal.h */ diff --git a/glib/pltcheck.sh b/glib/pltcheck.sh deleted file mode 100755 index 236eeb1..0000000 --- a/glib/pltcheck.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/sh - -LANG=C - -status=0 - -if ! which readelf 2>/dev/null >/dev/null; then - echo "'readelf' not found; skipping test" - exit 0 -fi - -for so in .libs/lib*.so; do - echo Checking $so for local PLT entries - # g_string_insert_c is used in g_string_append_c_inline - # unaliased. Couldn't find a way to fix it. - # Same for g_once_init_enter - readelf -r $so | grep 'JU\?MP_SLOT\?' | \ - grep -v '\' | \ - grep -v '\' | \ - grep -v '\' | \ - grep -v '\ -#include -#include "glib.h" - -static void -test_retval_and_trunc (void) -{ - gchar buf[128]; - gint res; - - res = g_snprintf (buf, 0, "abc"); - g_assert_cmpint (res, ==, 3); - - res = g_snprintf (NULL, 0, "abc"); - g_assert_cmpint (res, ==, 3); - - res = g_snprintf (buf, 5, "abc"); - g_assert_cmpint (res, ==, 3); - - res = g_snprintf (buf, 1, "abc"); - g_assert_cmpint (res, ==, 3); - g_assert (buf[0] == '\0'); - g_assert_cmpstr (buf, ==, ""); - - res = g_snprintf (buf, 2, "abc"); - g_assert_cmpint (res, ==, 3); - g_assert (buf[1] == '\0'); - g_assert_cmpstr (buf, ==, "a"); - - res = g_snprintf (buf, 3, "abc"); - g_assert_cmpint (res, ==, 3); - g_assert (buf[2] == '\0'); - g_assert_cmpstr (buf, ==, "ab"); - - res = g_snprintf (buf, 4, "abc"); - g_assert_cmpint (res, ==, 3); - g_assert (buf[3] == '\0'); - g_assert_cmpstr (buf, ==, "abc"); - - res = g_snprintf (buf, 5, "abc"); - g_assert_cmpint (res, ==, 3); - g_assert (buf[3] == '\0'); - g_assert_cmpstr (buf, ==, "abc"); -} - -static void -test_d (void) -{ - gchar buf[128]; - gint res; - const gchar *fmt; - - /* %d basic formatting */ - - res = g_snprintf (buf, 128, "%d", 5); - g_assert_cmpint (res, ==, 1); - g_assert_cmpstr (buf, ==, "5"); - - res = g_snprintf (buf, 128, "%d", 0); - g_assert_cmpint (res, ==, 1); - g_assert_cmpstr (buf, ==, "0"); - - res = g_snprintf (buf, 128, "%.0d", 0); - g_assert_cmpint (res, ==, 0); - g_assert_cmpstr (buf, ==, ""); - - res = g_snprintf (buf, 128, "%.0d", 1); - g_assert_cmpint (res, ==, 1); - g_assert_cmpstr (buf, ==, "1"); - - res = g_snprintf (buf, 128, "%.d", 2); - g_assert_cmpint (res, ==, 1); - g_assert_cmpstr (buf, ==, "2"); - - res = g_snprintf (buf, 128, "%d", -1); - g_assert_cmpint (res, ==, 2); - g_assert_cmpstr (buf, ==, "-1"); - - res = g_snprintf (buf, 128, "%.3d", 5); - g_assert_cmpint (res, ==, 3); - g_assert_cmpstr (buf, ==, "005"); - - res = g_snprintf (buf, 128, "%.3d", -5); - g_assert_cmpint (res, ==, 4); - g_assert_cmpstr (buf, ==, "-005"); - - res = g_snprintf (buf, 128, "%5.3d", 5); - g_assert_cmpint (res, ==, 5); - g_assert_cmpstr (buf, ==, " 005"); - - res = g_snprintf (buf, 128, "%-5.3d", -5); - g_assert_cmpint (res, ==, 5); - g_assert_cmpstr (buf, ==, "-005 "); - - /* %d, length modifiers */ - - res = g_snprintf (buf, 128, "%" G_GINT16_FORMAT, (gint16)-5); - g_assert_cmpint (res, ==, 2); - g_assert_cmpstr (buf, ==, "-5"); - - res = g_snprintf (buf, 128, "%" G_GUINT16_FORMAT, (guint16)5); - g_assert_cmpint (res, ==, 1); - g_assert_cmpstr (buf, ==, "5"); - - res = g_snprintf (buf, 128, "%" G_GINT32_FORMAT, (gint32)-5); - g_assert_cmpint (res, ==, 2); - g_assert_cmpstr (buf, ==, "-5"); - - res = g_snprintf (buf, 128, "%" G_GUINT32_FORMAT, (guint32)5); - g_assert_cmpint (res, ==, 1); - g_assert_cmpstr (buf, ==, "5"); - - res = g_snprintf (buf, 128, "%" G_GINT64_FORMAT, (gint64)-5); - g_assert_cmpint (res, ==, 2); - g_assert_cmpstr (buf, ==, "-5"); - - res = g_snprintf (buf, 128, "%" G_GUINT64_FORMAT, (guint64)5); - g_assert_cmpint (res, ==, 1); - g_assert_cmpstr (buf, ==, "5"); - - res = g_snprintf (buf, 128, "%" G_GSSIZE_FORMAT, (gssize)-5); - g_assert_cmpint (res, ==, 2); - g_assert_cmpstr (buf, ==, "-5"); - - res = g_snprintf (buf, 128, "%" G_GSIZE_FORMAT, (gsize)5); - g_assert_cmpint (res, ==, 1); - g_assert_cmpstr (buf, ==, "5"); - - /* %d, flags */ - - res = g_snprintf (buf, 128, "%-d", 5); - g_assert_cmpint (res, ==, 1); - g_assert_cmpstr (buf, ==, "5"); - - res = g_snprintf (buf, 128, "%-+d", 5); - g_assert_cmpint (res, ==, 2); - g_assert_cmpstr (buf, ==, "+5"); - - res = g_snprintf (buf, 128, "%+-d", 5); - g_assert_cmpint (res, ==, 2); - g_assert_cmpstr (buf, ==, "+5"); - - res = g_snprintf (buf, 128, "%+d", -5); - g_assert_cmpint (res, ==, 2); - g_assert_cmpstr (buf, ==, "-5"); - - res = g_snprintf (buf, 128, "% d", 5); - g_assert_cmpint (res, ==, 2); - g_assert_cmpstr (buf, ==, " 5"); - - res = g_snprintf (buf, 128, "% .0d", 0); - g_assert_cmpint (res, ==, 1); - g_assert_cmpstr (buf, ==, " "); - - res = g_snprintf (buf, 128, "%03d", 5); - g_assert_cmpint (res, ==, 3); - g_assert_cmpstr (buf, ==, "005"); - - res = g_snprintf (buf, 128, "%03d", -5); - g_assert_cmpint (res, ==, 3); - g_assert_cmpstr (buf, ==, "-05"); - - /* gcc emits warnings for the following formats, since the C spec - * says some of the flags must be ignored. (The " " in "% +d" and - * the "0" in "%-03d".) But we need to test that our printf gets - * those rules right. So we fool gcc into not warning. - */ - fmt = "% +d"; - res = g_snprintf (buf, 128, fmt, 5); - g_assert_cmpint (res, ==, 2); - g_assert_cmpstr (buf, ==, "+5"); - - fmt = "%-03d"; - res = g_snprintf (buf, 128, fmt, -5); - g_assert_cmpint (res, ==, 3); - g_assert_cmpstr (buf, ==, "-5 "); -} - -static void -test_o (void) -{ - gchar buf[128]; - gint res; - - /* %o basic formatting */ - - res = g_snprintf (buf, 128, "%o", 5); - g_assert_cmpint (res, ==, 1); - g_assert_cmpstr (buf, ==, "5"); - - res = g_snprintf (buf, 128, "%o", 8); - g_assert_cmpint (res, ==, 2); - g_assert_cmpstr (buf, ==, "10"); - - res = g_snprintf (buf, 128, "%o", 0); - g_assert_cmpint (res, ==, 1); - g_assert_cmpstr (buf, ==, "0"); - - res = g_snprintf (buf, 128, "%.0o", 0); - g_assert_cmpint (res, ==, 0); - g_assert_cmpstr (buf, ==, ""); - - res = g_snprintf (buf, 128, "%.0o", 1); - g_assert_cmpint (res, ==, 1); - g_assert_cmpstr (buf, ==, "1"); - - res = g_snprintf (buf, 128, "%.3o", 5); - g_assert_cmpint (res, ==, 3); - g_assert_cmpstr (buf, ==, "005"); - - res = g_snprintf (buf, 128, "%.3o", 8); - g_assert_cmpint (res, ==, 3); - g_assert_cmpstr (buf, ==, "010"); - - res = g_snprintf (buf, 128, "%5.3o", 5); - g_assert_cmpint (res, ==, 5); - g_assert_cmpstr (buf, ==, " 005"); -} - -static void -test_u (void) -{ - gchar buf[128]; - gint res; - - /* %u, basic formatting */ - - res = g_snprintf (buf, 128, "%u", 5); - g_assert_cmpint (res, ==, 1); - g_assert_cmpstr (buf, ==, "5"); - - res = g_snprintf (buf, 128, "%u", 0); - g_assert_cmpint (res, ==, 1); - g_assert_cmpstr (buf, ==, "0"); - - res = g_snprintf (buf, 128, "%.0u", 0); - g_assert_cmpint (res, ==, 0); - g_assert_cmpstr (buf, ==, ""); - - res = g_snprintf (buf, 128, "%.0u", 1); - g_assert_cmpint (res, ==, 1); - g_assert_cmpstr (buf, ==, "1"); - - res = g_snprintf (buf, 128, "%.3u", 5); - g_assert_cmpint (res, ==, 3); - g_assert_cmpstr (buf, ==, "005"); - - res = g_snprintf (buf, 128, "%5.3u", 5); - g_assert_cmpint (res, ==, 5); - g_assert_cmpstr (buf, ==, " 005"); -} - -static void -test_x (void) -{ - gchar buf[128]; - gint res; - - /* %x, basic formatting */ - - res = g_snprintf (buf, 128, "%x", 5); - g_assert_cmpint (res, ==, 1); - g_assert_cmpstr (buf, ==, "5"); - - res = g_snprintf (buf, 128, "%x", 31); - g_assert_cmpint (res, ==, 2); - g_assert_cmpstr (buf, ==, "1f"); - - res = g_snprintf (buf, 128, "%x", 0); - g_assert_cmpint (res, ==, 1); - g_assert_cmpstr (buf, ==, "0"); - - res = g_snprintf (buf, 128, "%.0x", 0); - g_assert_cmpint (res, ==, 0); - g_assert_cmpstr (buf, ==, ""); - - res = g_snprintf (buf, 128, "%.0x", 1); - g_assert_cmpint (res, ==, 1); - g_assert_cmpstr (buf, ==, "1"); - - res = g_snprintf (buf, 128, "%.3x", 5); - g_assert_cmpint (res, ==, 3); - g_assert_cmpstr (buf, ==, "005"); - - res = g_snprintf (buf, 128, "%.3x", 31); - g_assert_cmpint (res, ==, 3); - g_assert_cmpstr (buf, ==, "01f"); - - res = g_snprintf (buf, 128, "%5.3x", 5); - g_assert_cmpint (res, ==, 5); - g_assert_cmpstr (buf, ==, " 005"); - - /* %x, flags */ - - res = g_snprintf (buf, 128, "%-x", 5); - g_assert_cmpint (res, ==, 1); - g_assert_cmpstr (buf, ==, "5"); - - res = g_snprintf (buf, 128, "%03x", 5); - g_assert_cmpint (res, ==, 3); - g_assert_cmpstr (buf, ==, "005"); - - res = g_snprintf (buf, 128, "%#x", 31); - g_assert_cmpint (res, ==, 4); - g_assert_cmpstr (buf, ==, "0x1f"); - - res = g_snprintf (buf, 128, "%#x", 0); - g_assert_cmpint (res, ==, 1); - g_assert_cmpstr (buf, ==, "0"); -} - -static void -test_X (void) -{ - gchar buf[128]; - gint res; - - /* %X, basic formatting */ - - res = g_snprintf (buf, 128, "%X", 5); - g_assert_cmpint (res, ==, 1); - g_assert_cmpstr (buf, ==, "5"); - - res = g_snprintf (buf, 128, "%X", 31); - g_assert_cmpint (res, ==, 2); - g_assert_cmpstr (buf, ==, "1F"); - - res = g_snprintf (buf, 128, "%X", 0); - g_assert_cmpint (res, ==, 1); - g_assert_cmpstr (buf, ==, "0"); - - res = g_snprintf (buf, 128, "%.0X", 0); - g_assert_cmpint (res, ==, 0); - g_assert_cmpstr (buf, ==, ""); - - res = g_snprintf (buf, 128, "%.0X", 1); - g_assert_cmpint (res, ==, 1); - g_assert_cmpstr (buf, ==, "1"); - - res = g_snprintf (buf, 128, "%.3X", 5); - g_assert_cmpint (res, ==, 3); - g_assert_cmpstr (buf, ==, "005"); - - res = g_snprintf (buf, 128, "%.3X", 31); - g_assert_cmpint (res, ==, 3); - g_assert_cmpstr (buf, ==, "01F"); - - res = g_snprintf (buf, 128, "%5.3X", 5); - g_assert_cmpint (res, ==, 5); - g_assert_cmpstr (buf, ==, " 005"); - - /* %X, flags */ - - res = g_snprintf (buf, 128, "%-X", 5); - g_assert_cmpint (res, ==, 1); - g_assert_cmpstr (buf, ==, "5"); - - res = g_snprintf (buf, 128, "%03X", 5); - g_assert_cmpint (res, ==, 3); - g_assert_cmpstr (buf, ==, "005"); - - res = g_snprintf (buf, 128, "%#X", 31); - g_assert_cmpint (res, ==, 4); - g_assert_cmpstr (buf, ==, "0X1F"); - - res = g_snprintf (buf, 128, "%#X", 0); - g_assert_cmpint (res, ==, 1); - g_assert_cmpstr (buf, ==, "0"); -} - -static void -test_f (void) -{ - gchar buf[128]; - gint res; - - /* %f, basic formattting */ - - res = g_snprintf (buf, 128, "%f", G_PI); - g_assert_cmpint (res, ==, 8); - g_assert (0 == strncmp (buf, "3.14159", 7)); - - res = g_snprintf (buf, 128, "%.8f", G_PI); - g_assert_cmpint (res, ==, 10); - g_assert (0 == strncmp (buf, "3.1415926", 9)); - - res = g_snprintf (buf, 128, "%.0f", G_PI); - g_assert_cmpint (res, ==, 1); - g_assert_cmpstr (buf, ==, "3"); - - res = g_snprintf (buf, 128, "%1.f", G_PI); - g_assert_cmpint (res, ==, 1); - g_assert_cmpstr (buf, ==, "3"); - - res = g_snprintf (buf, 128, "%3.f", G_PI); - g_assert_cmpint (res, ==, 3); - g_assert_cmpstr (buf, ==, " 3"); - - /* %f, flags */ - - res = g_snprintf (buf, 128, "%+f", G_PI); - g_assert_cmpint (res, ==, 9); - g_assert (0 == strncmp (buf, "+3.14159", 8)); - - res = g_snprintf (buf, 128, "% f", G_PI); - g_assert_cmpint (res, ==, 9); - g_assert (0 == strncmp (buf, " 3.14159", 8)); - - res = g_snprintf (buf, 128, "%#.0f", G_PI); - g_assert_cmpint (res, ==, 2); - g_assert_cmpstr (buf, ==, "3."); - - res = g_snprintf (buf, 128, "%05.2f", G_PI); - g_assert_cmpint (res, ==, 5); - g_assert_cmpstr (buf, ==, "03.14"); -} - -static gboolean -same_value (const gchar *actual, - const gchar *expected) -{ - gdouble actual_value, expected_value; - - actual_value = g_ascii_strtod (actual, NULL); - expected_value = g_ascii_strtod (expected, NULL); - - return actual_value == expected_value; -} - -static void -test_e (void) -{ - gchar buf[128]; - gint res; - - /* %e, basic formatting */ - /* for %e we can't expect to reproduce exact strings and lengths, since SUS - * only guarantees that the exponent shall always contain at least two - * digits. On Windows, it seems to be at least three digits long. - * Therefore, we compare the results of parsing the expected result and the - * actual result. - */ - - res = g_snprintf (buf, 128, "%e", G_PI); - g_assert_cmpint (res, >=, 12); - g_assert (same_value (buf, "3.141593e+00")); - - res = g_snprintf (buf, 128, "%.8e", G_PI); - g_assert_cmpint (res, >=, 14); - g_assert (same_value (buf, "3.14159265e+00")); - - res = g_snprintf (buf, 128, "%.0e", G_PI); - g_assert_cmpint (res, >=, 5); - g_assert (same_value (buf, "3e+00")); - - res = g_snprintf (buf, 128, "%.1e", 0.0); - g_assert_cmpint (res, >=, 7); - g_assert (same_value (buf, "0.0e+00")); - - res = g_snprintf (buf, 128, "%.1e", 0.00001); - g_assert_cmpint (res, >=, 7); - g_assert (same_value (buf, "1.0e-05")); - - res = g_snprintf (buf, 128, "%.1e", 10000.0); - g_assert_cmpint (res, >=, 7); - g_assert (same_value (buf, "1.0e+04")); - - /* %e, flags */ - - res = g_snprintf (buf, 128, "%+e", G_PI); - g_assert_cmpint (res, >=, 13); - g_assert (same_value (buf, "+3.141593e+00")); - - res = g_snprintf (buf, 128, "% e", G_PI); - g_assert_cmpint (res, >=, 13); - g_assert (same_value (buf, " 3.141593e+00")); - - res = g_snprintf (buf, 128, "%#.0e", G_PI); - g_assert_cmpint (res, >=, 6); - g_assert (same_value (buf, "3.e+00")); - - res = g_snprintf (buf, 128, "%09.2e", G_PI); - g_assert_cmpint (res, >=, 9); - g_assert (same_value (buf, "03.14e+00")); -} - -static void -test_c (void) -{ - gchar buf[128]; - gint res; - - res = g_snprintf (buf, 128, "%c", 'a'); - g_assert_cmpint (res, ==, 1); - g_assert_cmpstr (buf, ==, "a"); -} - -static void -test_s (void) -{ - gchar buf[128]; - gint res; - - res = g_snprintf (buf, 128, "%.2s", "abc"); - g_assert_cmpint (res, ==, 2); - g_assert_cmpstr (buf, ==, "ab"); - - res = g_snprintf (buf, 128, "%.6s", "abc"); - g_assert_cmpint (res, ==, 3); - g_assert_cmpstr (buf, ==, "abc"); - - res = g_snprintf (buf, 128, "%5s", "abc"); - g_assert_cmpint (res, ==, 5); - g_assert_cmpstr (buf, ==, " abc"); - - res = g_snprintf (buf, 128, "%-5s", "abc"); - g_assert_cmpint (res, ==, 5); - g_assert_cmpstr (buf, ==, "abc "); - - res = g_snprintf (buf, 128, "%5.2s", "abc"); - g_assert_cmpint (res, ==, 5); - g_assert_cmpstr (buf, ==, " ab"); - - res = g_snprintf (buf, 128, "%*s", 5, "abc"); - g_assert_cmpint (res, ==, 5); - g_assert_cmpstr (buf, ==, " abc"); - -#if 0 /* HP-UX doesn't get this right */ - res = g_snprintf (buf, 128, "%*s", -5, "abc"); - g_assert_cmpint (res, ==, 5); - g_assert_cmpstr (buf, ==, "abc "); -#endif - - res = g_snprintf (buf, 128, "%*.*s", 5, 2, "abc"); - g_assert_cmpint (res, ==, 5); - g_assert_cmpstr (buf, ==, " ab"); -} - -static void -test_n (void) -{ - gchar buf[128]; - gint res; - gint i; - glong l; - - res = g_snprintf (buf, 128, "abc%n", &i); - g_assert_cmpint (res, ==, 3); - g_assert_cmpstr (buf, ==, "abc"); - g_assert_cmpint (i, ==, 3); - - res = g_snprintf (buf, 128, "abc%ln", &l); - g_assert_cmpint (res, ==, 3); - g_assert_cmpstr (buf, ==, "abc"); - g_assert_cmpint (l, ==, 3); -} - -static void -test_percent (void) -{ - gchar buf[128]; - gint res; - - res = g_snprintf (buf, 128, "%%"); - g_assert_cmpint (res, ==, 1); - g_assert_cmpstr (buf, ==, "%"); -} - -static void -test_positional_params (void) -{ - gchar buf[128]; - gint res; - - res = g_snprintf (buf, 128, "%2$c %1$c", 'b', 'a'); - g_assert_cmpint (res, ==, 3); - g_assert_cmpstr (buf, ==, "a b"); - - res = g_snprintf (buf, 128, "%1$*2$.*3$s", "abc", 5, 2); - g_assert_cmpint (res, ==, 5); - g_assert_cmpstr (buf, ==, " ab"); - - res = g_snprintf (buf, 128, "%1$s%1$s", "abc"); - g_assert_cmpint (res, ==, 6); - g_assert_cmpstr (buf, ==, "abcabc"); -} - -static void -test_64bit (void) -{ - gchar buf[128]; - gint res; - - res = g_snprintf (buf, 128, "%" G_GINT64_FORMAT, (gint64)123456); - g_assert_cmpint (res, ==, 6); - g_assert_cmpstr (buf, ==, "123456"); - - res = g_snprintf (buf, 128, "%" G_GINT64_FORMAT, (gint64)-123456); - g_assert_cmpint (res, ==, 7); - g_assert_cmpstr (buf, ==, "-123456"); - - res = g_snprintf (buf, 128, "%" G_GUINT64_FORMAT, (guint64)123456); - g_assert_cmpint (res, ==, 6); - g_assert_cmpstr (buf, ==, "123456"); - - res = g_snprintf (buf, 128, "%" G_GINT64_MODIFIER "o", (gint64)123456); - g_assert_cmpint (res, ==, 6); - g_assert_cmpstr (buf, ==, "361100"); - - res = g_snprintf (buf, 128, "%#" G_GINT64_MODIFIER "o", (gint64)123456); - g_assert_cmpint (res, ==, 7); - g_assert_cmpstr (buf, ==, "0361100"); - - res = g_snprintf (buf, 128, "%" G_GINT64_MODIFIER "x", (gint64)123456); - g_assert_cmpint (res, ==, 5); - g_assert_cmpstr (buf, ==, "1e240"); - - res = g_snprintf (buf, 128, "%#" G_GINT64_MODIFIER "x", (gint64)123456); - g_assert_cmpint (res, ==, 7); - g_assert_cmpstr (buf, ==, "0x1e240"); - - res = g_snprintf (buf, 128, "%" G_GINT64_MODIFIER "X", (gint64)123456); - g_assert_cmpint (res, ==, 5); - g_assert_cmpstr (buf, ==, "1E240"); - -#ifdef G_OS_WIN32 - /* On Win32, test that the "ll" modifier also works, for backward - * compatibility. One really should use the G_GINT64_MODIFIER (which - * on Win32 is the "I64" that the (msvcrt) C library's printf uses), - * but "ll" used to work with the "trio" g_printf implementation in - * GLib 2.2, so it's best if it continues to work. - */ - - res = g_snprintf (buf, 128, "%" "lli", (gint64)123456); - g_assert_cmpint (res, ==, 6); - g_assert_cmpstr (buf, ==, "123456"); - - res = g_snprintf (buf, 128, "%" "lli", (gint64)-123456); - g_assert_cmpint (res, ==, 7); - g_assert_cmpstr (buf, ==, "-123456"); - - res = g_snprintf (buf, 128, "%" "llu", (guint64)123456); - g_assert_cmpint (res, ==, 6); - g_assert_cmpstr (buf, ==, "123456"); - - res = g_snprintf (buf, 128, "%" "ll" "o", (gint64)123456); - g_assert_cmpint (res, ==, 6); - g_assert_cmpstr (buf, ==, "361100"); - - res = g_snprintf (buf, 128, "%#" "ll" "o", (gint64)123456); - g_assert_cmpint (res, ==, 7); - g_assert_cmpstr (buf, ==, "0361100"); - - res = g_snprintf (buf, 128, "%" "ll" "x", (gint64)123456); - g_assert_cmpint (res, ==, 5); - g_assert_cmpstr (buf, ==, "1e240"); - - res = g_snprintf (buf, 128, "%#" "ll" "x", (gint64)123456); - g_assert_cmpint (res, ==, 7); - g_assert_cmpstr (buf, ==, "0x1e240"); - - res = g_snprintf (buf, 128, "%" "ll" "X", (gint64)123456); - g_assert_cmpint (res, ==, 5); - g_assert_cmpstr (buf, ==, "1E240"); -#endif -} - -int -main (int argc, - char *argv[]) -{ - g_test_init (&argc, &argv, NULL); - - g_test_add_func ("/printf/test-retval-and-trunc", test_retval_and_trunc); - g_test_add_func ("/printf/test-d", test_d); - g_test_add_func ("/printf/test-o", test_o); - g_test_add_func ("/printf/test-u", test_u); - g_test_add_func ("/printf/test-x", test_x); - g_test_add_func ("/printf/test-X", test_X); - g_test_add_func ("/printf/test-f", test_f); - g_test_add_func ("/printf/test-e", test_e); - g_test_add_func ("/printf/test-c", test_c); - g_test_add_func ("/printf/test-s", test_s); - g_test_add_func ("/printf/test-n", test_n); - g_test_add_func ("/printf/test-percent", test_percent); - g_test_add_func ("/printf/test-positional-params", test_positional_params); - g_test_add_func ("/printf/test-64bit", test_64bit); - - return g_test_run(); -} diff --git a/glib/update-pcre/Makefile.am-1 b/glib/update-pcre/Makefile.am-1 deleted file mode 100644 index d4255b7..0000000 --- a/glib/update-pcre/Makefile.am-1 +++ /dev/null @@ -1,30 +0,0 @@ -INCLUDES = \ - -DG_LOG_DOMAIN=\"GLib-GRegex\" \ - -DSUPPORT_UCP \ - -DSUPPORT_UTF8 \ - -DNEWLINE=-1 \ - -DMATCH_LIMIT=10000000 \ - -DMATCH_LIMIT_RECURSION=10000000 \ - -DMAX_NAME_SIZE=32 \ - -DMAX_NAME_COUNT=10000 \ - -DMAX_DUPLENGTH=30000 \ - -DLINK_SIZE=2 \ - -DEBCDIC=0 \ - -DPOSIX_MALLOC_THRESHOLD=10 \ - -DPCRE_STATIC \ - -I$(top_srcdir) \ - -I$(srcdir) \ - -I$(top_srcdir)/glib \ - @GLIB_DEBUG_FLAGS@ \ - -DG_DISABLE_DEPRECATED \ - -DGLIB_COMPILATION \ - $(DEPRECATED_FLAGS)\ - $(WARN_CFLAGS) \ - $(PCRE_WARN_CFLAGS) \ - $(DEP_CFLAGS) - -noinst_LTLIBRARIES = libpcre.la - -libpcre_headers = - -libpcre_la_SOURCES = \ diff --git a/glib/update-pcre/Makefile.am-2 b/glib/update-pcre/Makefile.am-2 deleted file mode 100644 index 94d4d3c..0000000 --- a/glib/update-pcre/Makefile.am-2 +++ /dev/null @@ -1,10 +0,0 @@ - $(libpcre_headers) - -libpcre_la_LIBADD = $(DEP_LIBS) - -libpcre_la_LDFLAGS = -no-undefined - -EXTRA_DIST = \ - COPYING \ - makefile.msc - diff --git a/glib/update-pcre/pcre_ucp_searchfuncs.c b/glib/update-pcre/pcre_ucp_searchfuncs.c deleted file mode 100644 index 77ec8d1..0000000 --- a/glib/update-pcre/pcre_ucp_searchfuncs.c +++ /dev/null @@ -1,130 +0,0 @@ -/************************************************* -* Perl-Compatible Regular Expressions * -*************************************************/ - -/* PCRE is a library of functions to support regular expressions whose syntax -and semantics are as close as possible to those of the Perl 5 language. - - Written by Philip Hazel - Copyright (c) 1997-2006 University of Cambridge - ------------------------------------------------------------------------------ -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are met: - - * Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - * Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - - * Neither the name of the University of Cambridge nor the names of its - contributors may be used to endorse or promote products derived from - this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE -LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -POSSIBILITY OF SUCH DAMAGE. ------------------------------------------------------------------------------ -*/ - -/* This file has been modified to use glib instead of the internal table - * in ucptable.c -- Marco Barisione */ - -/* This module contains code for searching the table of Unicode character -properties. */ - -#ifdef HAVE_CONFIG_H -#include "config.h" -#endif - -#include "pcre_internal.h" - -#include "ucp.h" /* Category definitions */ -#include "ucpinternal.h" /* Internal table details */ - - -/* Table to translate from particular type value to the general value. */ - -static int ucp_gentype[] = { - ucp_C, ucp_C, ucp_C, ucp_C, ucp_C, /* Cc, Cf, Cn, Co, Cs */ - ucp_L, ucp_L, ucp_L, ucp_L, ucp_L, /* Ll, Lu, Lm, Lo, Lt */ - ucp_M, ucp_M, ucp_M, /* Mc, Me, Mn */ - ucp_N, ucp_N, ucp_N, /* Nd, Nl, No */ - ucp_P, ucp_P, ucp_P, ucp_P, ucp_P, /* Pc, Pd, Pe, Pf, Pi */ - ucp_P, ucp_P, /* Ps, Po */ - ucp_S, ucp_S, ucp_S, ucp_S, /* Sc, Sk, Sm, So */ - ucp_Z, ucp_Z, ucp_Z /* Zl, Zp, Zs */ -}; - - - -/************************************************* -* Search table and return type * -*************************************************/ - -/* Three values are returned: the category is ucp_C, ucp_L, etc. The detailed -character type is ucp_Lu, ucp_Nd, etc. The script is ucp_Latin, etc. - -Arguments: - c the character value - type_ptr the detailed character type is returned here - script_ptr the script is returned here - -Returns: the character type category -*/ - -int -_pcre_ucp_findprop(const unsigned int c, int *type_ptr, int *script_ptr) -{ -/* Note that the Unicode types have the same values in glib and in - * PCRE, so ucp_Ll == G_UNICODE_LOWERCASE_LETTER, - * ucp_Zs == G_UNICODE_SPACE_SEPARATOR, and so on. */ -*type_ptr = g_unichar_type(c); -*script_ptr = g_unichar_get_script(c); -return ucp_gentype[*type_ptr]; -} - - - - -/************************************************* -* Search table and return other case * -*************************************************/ - -/* If the given character is a letter, and there is another case for the -letter, return the other case. Otherwise, return -1. - -Arguments: - c the character value - -Returns: the other case or NOTACHAR if none -*/ - -unsigned int -_pcre_ucp_othercase(const unsigned int c) -{ -int other_case = NOTACHAR; - -if (g_unichar_islower(c)) - other_case = g_unichar_toupper(c); -else if (g_unichar_isupper(c)) - other_case = g_unichar_tolower(c); - -if (other_case == c) - other_case = NOTACHAR; - -return other_case; -} - - -/* End of pcre_ucp_searchfuncs.c */ diff --git a/glib/update-pcre/pcre_valid_utf8.c b/glib/update-pcre/pcre_valid_utf8.c deleted file mode 100644 index b7671a9..0000000 --- a/glib/update-pcre/pcre_valid_utf8.c +++ /dev/null @@ -1,14 +0,0 @@ -#include "config.h" -#include "pcre_internal.h" - -/* - * This function is not needed by GRegex, so print an error and - * return always -1, that is the string is a valid UTF-8 encoded - * string. - */ -int -_pcre_valid_utf8(const uschar *string, int length) -{ -g_warning ("%s: this function should not be called", G_STRLOC); -return -1; -} diff --git a/glibconfig.h.win32.in b/glibconfig.h.win32.in deleted file mode 100644 index fbac9d2..0000000 --- a/glibconfig.h.win32.in +++ /dev/null @@ -1,284 +0,0 @@ -/* glibconfig.h.win32.in. Originally merged from two versions of - * glibconfig.h, generated by the GLib configure script, for gcc and - * MSVC. - */ - -/* glibconfig.h - * - * This is a generated file. Please modify 'glibconfig.h.win32.in' - */ - -#ifndef __G_LIBCONFIG_H__ -#define __G_LIBCONFIG_H__ - -#include - -#include -#include - -G_BEGIN_DECLS - -#define G_MINFLOAT FLT_MIN -#define G_MAXFLOAT FLT_MAX -#define G_MINDOUBLE DBL_MIN -#define G_MAXDOUBLE DBL_MAX -#define G_MINSHORT SHRT_MIN -#define G_MAXSHORT SHRT_MAX -#define G_MAXUSHORT USHRT_MAX -#define G_MININT INT_MIN -#define G_MAXINT INT_MAX -#define G_MAXUINT UINT_MAX -#define G_MINLONG LONG_MIN -#define G_MAXLONG LONG_MAX -#define G_MAXULONG ULONG_MAX - -typedef signed char gint8; -typedef unsigned char guint8; -typedef signed short gint16; -typedef unsigned short guint16; -#define G_GINT16_MODIFIER "h" -#define G_GINT16_FORMAT "hi" -#define G_GUINT16_FORMAT "hu" -typedef signed int gint32; -typedef unsigned int guint32; -#define G_GINT32_MODIFIER "" -#define G_GINT32_FORMAT "i" -#define G_GUINT32_FORMAT "u" -#define G_HAVE_GINT64 1 /* deprecated, always true */ - -#ifndef _MSC_VER -G_GNUC_EXTENSION typedef signed long long gint64; -G_GNUC_EXTENSION typedef unsigned long long guint64; -#else /* _MSC_VER */ -typedef signed __int64 gint64; -typedef unsigned __int64 guint64; -#endif /* _MSC_VER */ - -#ifndef _MSC_VER -#define G_GINT64_CONSTANT(val) (G_GNUC_EXTENSION (val##LL)) -#else /* _MSC_VER */ -#define G_GINT64_CONSTANT(val) (val##i64) -#endif /* _MSC_VER */ -#ifndef _MSC_VER -#define G_GUINT64_CONSTANT(val) (G_GNUC_EXTENSION (val##ULL)) -#else /* _MSC_VER */ -#define G_GUINT64_CONSTANT(val) (val##Ui64) -#endif /* _MSC_VER */ -#define G_GINT64_MODIFIER "I64" -#define G_GINT64_FORMAT "I64i" -#define G_GUINT64_FORMAT "I64u" - -#if defined(_WIN64) || defined(_M_X64) || defined(_M_AMD64) - -#define GLIB_SIZEOF_VOID_P 8 -#define GLIB_SIZEOF_LONG 4 -#define GLIB_SIZEOF_SIZE_T 8 - -typedef signed long long gssize; -typedef unsigned long long gsize; -#define G_GSIZE_MODIFIER "I64" -#define G_GSSIZE_FORMAT "I64d" -#define G_GSIZE_FORMAT "I64u" - -#define G_MAXSIZE G_MAXUINT64 -#define G_MINSSIZE G_MININT64 -#define G_MAXSSIZE G_MAXINT64 - -#else - -#define GLIB_SIZEOF_VOID_P 4 -#define GLIB_SIZEOF_LONG 4 -#define GLIB_SIZEOF_SIZE_T 4 - -typedef signed int gssize; -typedef unsigned int gsize; -#define G_GSIZE_MODIFIER "" -#define G_GSSIZE_FORMAT "i" -#define G_GSIZE_FORMAT "u" - -#define G_MAXSIZE G_MAXUINT -#define G_MINSSIZE G_MININT -#define G_MAXSSIZE G_MAXINT - -#endif - -typedef gint64 goffset; -#define G_MINOFFSET G_MININT64 -#define G_MAXOFFSET G_MAXINT64 - -#define G_GOFFSET_MODIFIER G_GINT64_MODIFIER -#define G_GOFFSET_FORMAT G_GINT64_FORMAT -#define G_GOFFSET_CONSTANT(val) G_GINT64_CONSTANT(val) - - -#ifndef _WIN64 - -#define GPOINTER_TO_INT(p) ((gint) (p)) -#define GPOINTER_TO_UINT(p) ((guint) (p)) - -#define GINT_TO_POINTER(i) ((gpointer) (i)) -#define GUINT_TO_POINTER(u) ((gpointer) (u)) - -typedef signed int gintptr; -typedef unsigned int guintptr; - -#define G_GINTPTR_MODIFIER "" -#define G_GINTPTR_FORMAT "i" -#define G_GUINTPTR_FORMAT "u" - -#else - -#define GPOINTER_TO_INT(p) ((gint) (gint64) (p)) -#define GPOINTER_TO_UINT(p) ((guint) (guint64) (p)) - -#define GINT_TO_POINTER(i) ((gpointer) (gint64) (i)) -#define GUINT_TO_POINTER(u) ((gpointer) (guint64) (u)) - -#ifndef _MSC_VER -typedef signed long long gintptr; -typedef unsigned long long guintptr; -#else -typedef signed __int64 gintptr; -typedef unsigned __int64 guintptr; -#endif - -#define G_GINTPTR_MODIFIER "I64" -#define G_GINTPTR_FORMAT "I64i" -#define G_GUINTPTR_FORMAT "I64u" - -#endif - -#ifdef NeXT /* @#%@! NeXTStep */ -# define g_ATEXIT(proc) (!atexit (proc)) -#else -# define g_ATEXIT(proc) (atexit (proc)) -#endif - -#define g_memmove(dest,src,len) G_STMT_START { memmove ((dest), (src), (len)); } G_STMT_END - -#define GLIB_MAJOR_VERSION @GLIB_MAJOR_VERSION@ -#define GLIB_MINOR_VERSION @GLIB_MINOR_VERSION@ -#define GLIB_MICRO_VERSION @GLIB_MICRO_VERSION@ - -#define G_OS_WIN32 -#define G_PLATFORM_WIN32 -@GLIB_WIN32_STATIC_COMPILATION_DEFINE@ - -#ifndef _MSC_VER -#define G_VA_COPY va_copy -#endif /* not _MSC_VER */ - -#ifdef __cplusplus -#define G_HAVE_INLINE 1 -#else /* !__cplusplus */ -#ifndef _MSC_VER -#define G_HAVE_INLINE 1 -#endif /* _MSC_VER */ -#define G_HAVE___INLINE 1 -#if !defined(_MSC_VER) && !defined(__DMC__) -#define G_HAVE___INLINE__ 1 -#endif /* !_MSC_VER and !__DMC__ */ -#endif /* !__cplusplus */ - -#define G_CAN_INLINE 1 - -#ifndef _MSC_VER -#define G_HAVE_ISO_VARARGS 1 - -/* gcc-2.95.x supports both gnu style and ISO varargs, but if -ansi - * is passed ISO vararg support is turned off, and there is no work - * around to turn it on, so we unconditionally turn it off. - */ -#if __GNUC__ == 2 && __GNUC_MINOR__ == 95 -# undef G_HAVE_ISO_VARARGS -#endif - -#define G_HAVE_GNUC_VARARGS 1 -#else /* _MSC_VER */ -/* varargs macros available since msvc8 (vs2005) */ -# if _MSC_VER >= 1400 -# define G_HAVE_ISO_VARARGS 1 -# endif -#endif /* not _MSC_VER */ -#define G_HAVE_GROWING_STACK 0 - -#define G_GNUC_INTERNAL - -#define G_THREADS_ENABLED -#define G_THREADS_IMPL_WIN32 -typedef struct _GMutex* GStaticMutex; -#define G_STATIC_MUTEX_INIT NULL -#define g_static_mutex_get_mutex(mutex) \ - (g_static_mutex_get_mutex_impl_shortcut (mutex)) -/* This represents a system thread as used by the implementation. An - * alien implementaion, as loaded by g_thread_init can only count on - * "sizeof (gpointer)" bytes to store their info. We however need more - * for some of our native implementations. */ -typedef union _GSystemThread GSystemThread; -union _GSystemThread -{ -#ifndef _WIN64 - char data[4]; -#else - char data[8]; -#endif - double dummy_double; - void *dummy_pointer; - long dummy_long; -}; - -#define GINT16_TO_LE(val) ((gint16) (val)) -#define GUINT16_TO_LE(val) ((guint16) (val)) -#define GINT16_TO_BE(val) ((gint16) GUINT16_SWAP_LE_BE (val)) -#define GUINT16_TO_BE(val) (GUINT16_SWAP_LE_BE (val)) -#define GINT32_TO_LE(val) ((gint32) (val)) -#define GUINT32_TO_LE(val) ((guint32) (val)) -#define GINT32_TO_BE(val) ((gint32) GUINT32_SWAP_LE_BE (val)) -#define GUINT32_TO_BE(val) (GUINT32_SWAP_LE_BE (val)) -#define GINT64_TO_LE(val) ((gint64) (val)) -#define GUINT64_TO_LE(val) ((guint64) (val)) -#define GINT64_TO_BE(val) ((gint64) GUINT64_SWAP_LE_BE (val)) -#define GUINT64_TO_BE(val) (GUINT64_SWAP_LE_BE (val)) -#define GLONG_TO_LE(val) ((glong) GINT32_TO_LE (val)) -#define GULONG_TO_LE(val) ((gulong) GUINT32_TO_LE (val)) -#define GLONG_TO_BE(val) ((glong) GINT32_TO_BE (val)) -#define GULONG_TO_BE(val) ((gulong) GUINT32_TO_BE (val)) -#define GINT_TO_LE(val) ((gint) GINT32_TO_LE (val)) -#define GUINT_TO_LE(val) ((guint) GUINT32_TO_LE (val)) -#define GINT_TO_BE(val) ((gint) GINT32_TO_BE (val)) -#define GUINT_TO_BE(val) ((guint) GUINT32_TO_BE (val)) -#define GSIZE_TO_LE(val) ((gsize) GUINT32_TO_LE (val)) -#define GSSIZE_TO_LE(val) ((gssize) GINT32_TO_LE (val)) -#define GSIZE_TO_BE(val) ((gsize) GUINT32_TO_BE (val)) -#define GSSIZE_TO_BE(val) ((gssize) GINT32_TO_BE (val)) -#define G_BYTE_ORDER G_LITTLE_ENDIAN - -#define GLIB_SYSDEF_POLLIN =1 -#define GLIB_SYSDEF_POLLOUT =4 -#define GLIB_SYSDEF_POLLPRI =2 -#define GLIB_SYSDEF_POLLHUP =16 -#define GLIB_SYSDEF_POLLERR =8 -#define GLIB_SYSDEF_POLLNVAL =32 - -#define G_MODULE_SUFFIX "dll" - -/* A GPid is an abstraction for a process "handle". It is *not* an - * abstraction for a process identifier in general. GPid is used in - * GLib only for descendant processes spawned with the g_spawn* - * functions. On POSIX there is no "process handle" concept as such, - * but on Windows a GPid is a handle to a process, a kind of pointer, - * not a process identifier. - */ -typedef void * GPid; - -#define GLIB_SYSDEF_AF_UNIX 1 -#define GLIB_SYSDEF_AF_INET 2 -#define GLIB_SYSDEF_AF_INET6 23 - -#define GLIB_SYSDEF_MSG_OOB 1 -#define GLIB_SYSDEF_MSG_PEEK 2 -#define GLIB_SYSDEF_MSG_DONTROUTE 4 - -G_END_DECLS - -#endif /* GLIBCONFIG_H */ diff --git a/gmodule-2.0-uninstalled.pc.in b/gmodule-2.0-uninstalled.pc.in deleted file mode 100644 index 68f3091..0000000 --- a/gmodule-2.0-uninstalled.pc.in +++ /dev/null @@ -1,8 +0,0 @@ -gmodule_supported=@G_MODULE_SUPPORTED@ - -Name: GModule Uninstalled -Description: Dynamic module loader for GLib, Not Installed -Requires: glib-2.0-uninstalled -Version: @VERSION@ -Libs: @G_MODULE_LDFLAGS@ ${pc_top_builddir}/${pcfiledir}/gmodule/libgmodule-2.0.la @G_THREAD_LIBS@ -Cflags: -I${pc_top_builddir}/${pcfiledir}/@srcdir@/gmodule @G_THREAD_CFLAGS@ diff --git a/gmodule-no-export-2.0-uninstalled.pc.in b/gmodule-no-export-2.0-uninstalled.pc.in deleted file mode 100644 index 115820d..0000000 --- a/gmodule-no-export-2.0-uninstalled.pc.in +++ /dev/null @@ -1,14 +0,0 @@ -prefix=/usr -exec_prefix=${prefix} -libdir=${exec_prefix}/lib -includedir=${prefix}/include - -gmodule_supported=true - -Name: GModule -Description: Dynamic module loader for GLib -Requires: glib-2.0 -Version: @VERSION@ -Libs: ${pc_top_builddir}/${pcfiledir}/gmodule/libgmodule-2.0.la @G_THREAD_LIBS@ -Cflags: -I${pc_top_builddir}/${pcfiledir}/@srcdir@/gmodule @G_THREAD_CFLAGS@ - diff --git a/gobject-2.0-uninstalled.pc.in b/gobject-2.0-uninstalled.pc.in deleted file mode 100644 index d9378a5..0000000 --- a/gobject-2.0-uninstalled.pc.in +++ /dev/null @@ -1,7 +0,0 @@ -Name: GObject Uninstalled -Description: Object/type system for GLib, Not Installed -Requires: glib-2.0-uninstalled,gthread-2.0-uninstalled -Version: @VERSION@ -Libs: ${pc_top_builddir}/${pcfiledir}/gobject/libgobject-2.0.la -## cflags contains builddir in addition to srcdir because of gmarshal.h -Cflags: -I${pc_top_builddir}/${pcfiledir}/@srcdir@ -I${pc_top_builddir}/${pcfiledir} diff --git a/gobject/glib-genmarshal.1 b/gobject/glib-genmarshal.1 deleted file mode 100644 index f0adfaa..0000000 --- a/gobject/glib-genmarshal.1 +++ /dev/null @@ -1,212 +0,0 @@ -.TH GLIB-GENMARSHAL 1 "18 Oct 2000" -.SH NAME -glib-genmarshal \- C code marshaller generation utility for GLib closures -.SH SYNOPSIS - -\fBglib-genmarshal\fP [\fIoptions\fP] [\fIfiles...\fP] - -.SH DESCRIPTION -\fBglib-genmarshal\fP is a small utility that generates C code marshallers -for callback functions of the GClosure mechanism in the GObject sublibrary -of GLib. The marshaller functions have a standard signature, they get passed -in the invoking closure, an array of value structures holding the callback -function parameters and a value structure for the return value of the -callback. The marshaller is then responsible to call the respective C code -function of the closure with all the parameters on the stack and to collect -its return value. - -.SH INVOCATION - -\fBglib-genmarshal\fP takes a list of marshallers to generate as input. -The marshaller list is either read from standard input or from files -passed as additional arguments on the command line. - -.SS Options -.TP -\fI--header -Generate header file contents of the marshallers. -.TP -\fI--body -Generate C code file contents of the marshallers. -.TP -\fI--prefix=string, --prefix string -Specify marshaller prefix. The default prefix is `\fIg_cclosure_marshal\fP'. -.TP -\fI--skip-source -Skip source location remarks in generated comments. -.TP -\fI--nostdinc -Do not use the standard marshallers of the GObject library, and skip -gmarshal.h include directive in generated header files. -.TP -\fI--internal -Mark generated function as internal by using the G_GNUC_INTERNAL macro. -.TP -\fI--g-fatal-warnings -Make warnings fatal, that is, exit immediately once a warning occurs. -.TP -\fI-h, --help\fP -Print brief help and exit. -.TP -\fI-v, --version\fP -Print version and exit. -.PP - -.SS Marshaller list format -.PP -The marshaller lists are processed line by line, a line can contain a -comment in the form of -.RS -.PP -# this is a comment -.PP -.RE -or a marshaller specification of the form -.RS -.PP -\fIRTYPE\fP:\fBPTYPE\fP -.PP -\fIRTYPE\fP:\fBPTYPE\fP,\fBPTYPE\fP -.PP -\fIRTYPE\fP:\fBPTYPE\fP,\fBPTYPE\fP,\fBPTYPE\fP -.PP -# up to 16 \fBPTYPE\fPs may be present -.PP -.RE -The \fIRTYPE\fP part specifies the callback's return type and -the \fBPTYPE\fPs right to the colon specify the callback's -parameter list, except for the first and the last arguments which -are always pointers. -.PP - -.SS Parameter types -Currently, the following types are supported: -.TP 12 -\fIVOID -indicates no return type, or no extra parameters. if \fIVOID\fP is used as -the parameter list, no additional parameters may be present. -.TP 12 -\fIBOOLEAN -for boolean types (gboolean) -.TP 12 -\fICHAR -for signed char types (gchar) -.TP 12 -\fIUCHAR -for unsigned char types (guchar) -.TP 12 -\fIINT -for signed integer types (gint) -.TP 12 -\fIUINT -for unsigned integer types (guint) -.TP 12 -\fILONG -for signed long integer types (glong) -.TP 12 -\fIULONG -for unsigned long integer types (gulong) -.TP 12 -\fIINT64 -for signed 64bit integer types (gint64) -.TP 12 -\fIUINT64 -for unsigned 64bit integer types (guint64) -.TP 12 -\fIENUM -for enumeration types (gint) -.TP 12 -\fIFLAGS -for flag enumeration types (guint) -.TP 12 -\fIFLOAT -for single-precision float types (gfloat) -.TP 12 -\fIDOUBLE -for double-precision float types (gdouble) -.TP 12 -\fISTRING -for string types (gchar*) -.TP 12 -\fIBOXED -for boxed (anonymous but reference counted) types (GBoxed*) -.TP 12 -\fIPARAM -for GParamSpec or derived types (GParamSpec*) -.TP 12 -\fIPOINTER -for anonymous pointer types (gpointer) -.TP 12 -\fIOBJECT -for GObject or derived types (GObject*) -.TP 12 -\fINONE -deprecated alias for \fIVOID\fP -.TP 12 -\fIBOOL -deprecated alias for \fIBOOLEAN\fP - -.SH EXAMPLE -To generate marshallers for the following callback functions: -.PP -.RS -.nf -void foo (gpointer data1, - gpointer data2); -void bar (gpointer data1, - gint param1, - gpointer data2); -gfloat baz (gpointer data1, - gboolean param1, - guchar param2, - gpointer data2); -.fi -.RE -.PP -The marshaller list has to look like this: -.PP -.RS -.nf -VOID:VOID -VOID:INT -FLOAT:BOOLEAN,UCHAR -.fi -.RE -.PP -The generated marshallers have the arguments encoded -in their function name. For this particular list, they -are -g_cclosure_marshal_VOID__VOID(), -g_cclosure_marshal_VOID__INT(), -g_cclosure_marshal_FLOAT__BOOLEAN_UCHAR(). -.PP -They can be used directly for GClosures or be passed in as -the GSignalCMarshaller c_marshaller; argument upon creation -of signals: -.PP -.nf -GClosure *cc_foo, *cc_bar, *cc_baz; - -cc_foo = g_cclosure_new (NULL, foo, NULL); -g_closure_set_marshal (cc_foo, g_cclosure_marshal_VOID__VOID); -cc_bar = g_cclosure_new (NULL, bar, NULL); -g_closure_set_marshal (cc_bar, g_cclosure_marshal_VOID__INT); -cc_baz = g_cclosure_new (NULL, baz, NULL); -g_closure_set_marshal (cc_baz, g_cclosure_marshal_FLOAT__BOOLEAN_UCHAR); -.fi -.PP - - -.SH SEE ALSO -\fB -glib-mkenums(1) -\fP - -.SH BUGS -None known yet. - -.SH AUTHOR -.B glib-genmarshal -has been written by Tim Janik . -.PP -This manual page was provided by Tim Janik . diff --git a/gobject/glib-mkenums.1 b/gobject/glib-mkenums.1 deleted file mode 100644 index cacddff..0000000 --- a/gobject/glib-mkenums.1 +++ /dev/null @@ -1,169 +0,0 @@ -.TH GLIB-MKENUMS 1 "27 Jul 2002" -.SH NAME -glib-mkenums \- C language enum description generation utility -.SH SYNOPSIS - -\fBglib-mkenums\fP [\fIoptions\fP] [\fIfiles...\fP] - -.SH DESCRIPTION -\fBglib-mkenums\fP is a small perl-script utility that parses C code to extract enum -definitions and produces enum descriptions based on text templates specified -by the user. Most frequently this script is used to produce C code that contains -enum values as strings so programs can provide value name strings for introspection. - -.SH INVOCATION - -\fBglib-mkenums\fP takes a list of valid C code files as input. The options -specified control the text that is output, certain substitutions are performed -on the text templates for keywords enclosed in @ characters. - - -.SS Options -.TP -\fI--fhead -Put out prior to processing input files. -.TP -\fI--fprod -Put out everytime a new input file is being processed. -.TP -\fI--ftail -Put out after all input files have been processed. -.TP -\fI--eprod -Put out everytime an enum is encountered in the input files. -.TP -\fI--vhead -Put out before iterating over the set of values of an enum. -.TP -\fI--vprod -Put out for every value of an enum. -.TP -\fI--vtail -Put out after iterating over all values of an enum. -.TP -\fI--comments -Template for auto-generated comments, the default (for C code generations) is -"/* @comment@ */". -.TP -\fI--template file -Read templates from the given file. The templates are enclosed in -specially-formatted C comments -.PP -.RS -.nf -/*** BEGIN section ***/ -/*** END section ***/ -.fi -.PP -where section may be file-header, file-production, file-tail, -enumeration-production, value-header, value-production, value-tail or -comment. -.TP -\fI-h, --help\fP -Print brief help and exit. -.TP -\fI-v, --version\fP -Print version and exit. -.PP - - -.SS Production text substitutions -Certain keywords enclosed in @ characters will be substituted in the outputted -text. For the substitution examples of the keywords below, the following example -enum definition is assumed: -.PP -.RS -.nf -typedef enum -{ - PREFIX_THE_XVALUE = 1 << 3, - PREFIX_ANOTHER_VALUE = 1 << 4 -} PrefixTheXEnum; -.fi -.RE - -.TP 12 -\fI@EnumName@ -The name of the enum currently being processed, enum names are assumed to be -properly namespaced and to use mixed capitalization to separate -words (e.g. PrefixTheXEnum). -.TP 12 -\fI@enum_name@ -The enum name with words lowercase and word-separated by underscores (e.g. prefix_the_xenum). -.TP 12 -\fI@ENUMNAME@ -The enum name with words uppercase and word-separated by underscores (e.g. PREFIX_THE_XENUM). -.TP 12 -\fI@ENUMSHORT@ -The enum name with words uppercase and word-separated by underscores, prefix stripped (e.g. THE_XENUM). -.TP 12 -\fI@VALUENAME@ -The enum value name currently being processed with words uppercase and word-separated by underscores, -this is the assumed literal notation of enum values in the C sources (e.g. PREFIX_THE_XVALUE). -.TP 12 -\fI@valuenick@ -A nick name for the enum value currently being processed, this is usually generated by stripping -common prefix words of all the enum values of the current enum, the words are lowercase and -underscores are substituted by a minus (e.g. the-xvalue). -.TP 12 -\fI@type@ -This is substituted either by "enum" or "flags", depending on whether the enum value definitions -contained bit-shift operators or not (e.g. flags). -.TP 12 -\fI@Type@ -The same as \fI@type@\fP with the first letter capitalized (e.g. Flags). -.TP 12 -\fI@TYPE@ -The same as \fI@type@\fP with all letters uppercased (e.g. FLAGS). -.TP 12 -\fI@filename@ -The name of the input file currently being processed (e.g. foo.h). -.TP 12 -\fI@basename@ -The base name of the input file currently being processed (e.g. foo.h). (Since: 2.22) - -.SS Trigraph extensions -Some C comments are treated specially in the parsed enum definitions, such comments -start out with the trigraph sequence "/*<" and end with the trigraph sequence ">*/". -.PP -Per enum definition, the options "skip" and "flags" can be specified, to indicate -this enum definition to be skipped, or for it to be treated as a flags definition, or -to specify the common prefix to be stripped from all values to generate value nicknames, -respectively. The "underscore_name" option can be used to specify the underscorized name -variant used in the *_get_type() function and *_TYPE_* macro. For instance, -/*< underscore_name=gnome_vfs_uri_hide_options >*/. -.PP -Per value definition, the options "skip" and "nick" are supported. The former causes the -value to be skipped, and the latter can be used to specify the otherwise auto-generated -nickname. -Examples: -.PP -.RS -.nf -typedef enum /*< skip >*/ -{ - PREFIX_FOO -} PrefixThisEnumWillBeSkipped; -typedef enum /*< flags,prefix=PREFIX >*/ -{ - PREFIX_THE_ZEROTH_VALUE, /*< skip >*/ - PREFIX_THE_FIRST_VALUE, - PREFIX_THE_SECOND_VALUE, - PREFIX_THE_THIRD_VALUE, /*< nick=the-last-value >*/ -} PrefixTheFlagsEnum; -.fi -.RE - -.SH SEE ALSO -\fB -glib-genmarshal(1) -\fP - -.SH BUGS -None known yet. - -.SH AUTHOR -.B glib-mkenums -was written by Tim Janik and Owen Taylor . -.PP -This manual page was provided by Tim Janik . diff --git a/gobject/gobjectalias.h b/gobject/gobjectalias.h deleted file mode 100644 index 221a8f4..0000000 --- a/gobject/gobjectalias.h +++ /dev/null @@ -1,1117 +0,0 @@ -/* Generated by makegobjectalias.pl */ - -#ifndef DISABLE_VISIBILITY - -#include "glibconfig.h" - -#ifdef G_HAVE_GNUC_VISIBILITY - -#define IN_FILE(x) 1 -#define IN_HEADER defined - -#if IN_HEADER(__G_BOXED_H__) -#if IN_FILE(__G_BOXED_C__) -extern __typeof (g_boxed_copy) IA__g_boxed_copy __attribute((visibility("hidden"))); -#define g_boxed_copy IA__g_boxed_copy - -extern __typeof (g_boxed_free) IA__g_boxed_free __attribute((visibility("hidden"))); -#define g_boxed_free IA__g_boxed_free - -extern __typeof (g_boxed_type_register_static) IA__g_boxed_type_register_static __attribute((visibility("hidden"))); -#define g_boxed_type_register_static IA__g_boxed_type_register_static - -extern __typeof (g_date_get_type) IA__g_date_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_date_get_type IA__g_date_get_type - -extern __typeof (g_gstring_get_type) IA__g_gstring_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_gstring_get_type IA__g_gstring_get_type - -extern __typeof (g_strv_get_type) IA__g_strv_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_strv_get_type IA__g_strv_get_type - -extern __typeof (g_hash_table_get_type) IA__g_hash_table_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_hash_table_get_type IA__g_hash_table_get_type - -extern __typeof (g_array_get_type) IA__g_array_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_array_get_type IA__g_array_get_type - -extern __typeof (g_byte_array_get_type) IA__g_byte_array_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_byte_array_get_type IA__g_byte_array_get_type - -extern __typeof (g_ptr_array_get_type) IA__g_ptr_array_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_ptr_array_get_type IA__g_ptr_array_get_type - -extern __typeof (g_regex_get_type) IA__g_regex_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_regex_get_type IA__g_regex_get_type - -extern __typeof (g_variant_type_get_gtype) IA__g_variant_type_get_gtype __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_variant_type_get_gtype IA__g_variant_type_get_gtype - -extern __typeof (g_variant_get_gtype) IA__g_variant_get_gtype __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_variant_get_gtype IA__g_variant_get_gtype - -extern __typeof (g_closure_get_type) IA__g_closure_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_closure_get_type IA__g_closure_get_type - -extern __typeof (g_value_get_type) IA__g_value_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_value_get_type IA__g_value_get_type - -extern __typeof (g_value_array_get_type) IA__g_value_array_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_value_array_get_type IA__g_value_array_get_type - -extern __typeof (g_value_set_boxed) IA__g_value_set_boxed __attribute((visibility("hidden"))); -#define g_value_set_boxed IA__g_value_set_boxed - -extern __typeof (g_value_take_boxed) IA__g_value_take_boxed __attribute((visibility("hidden"))); -#define g_value_take_boxed IA__g_value_take_boxed - -extern __typeof (g_value_dup_boxed) IA__g_value_dup_boxed __attribute((visibility("hidden"))); -#define g_value_dup_boxed IA__g_value_dup_boxed - -extern __typeof (g_value_get_boxed) IA__g_value_get_boxed __attribute((visibility("hidden"))); -#define g_value_get_boxed IA__g_value_get_boxed - -extern __typeof (g_value_set_static_boxed) IA__g_value_set_static_boxed __attribute((visibility("hidden"))); -#define g_value_set_static_boxed IA__g_value_set_static_boxed - -#ifndef G_DISABLE_DEPRECATED -extern __typeof (g_value_set_boxed_take_ownership) IA__g_value_set_boxed_take_ownership __attribute((visibility("hidden"))); -#define g_value_set_boxed_take_ownership IA__g_value_set_boxed_take_ownership - -#endif -#endif -#endif -#if IN_HEADER(__G_MARSHAL_H__) -#if IN_FILE(__G_SIGNAL_C__) -extern __typeof (g_cclosure_marshal_BOOLEAN__FLAGS) IA__g_cclosure_marshal_BOOLEAN__FLAGS __attribute((visibility("hidden"))); -#define g_cclosure_marshal_BOOLEAN__FLAGS IA__g_cclosure_marshal_BOOLEAN__FLAGS - -extern __typeof (g_cclosure_marshal_STRING__OBJECT_POINTER) IA__g_cclosure_marshal_STRING__OBJECT_POINTER __attribute((visibility("hidden"))); -#define g_cclosure_marshal_STRING__OBJECT_POINTER IA__g_cclosure_marshal_STRING__OBJECT_POINTER - -extern __typeof (g_cclosure_marshal_VOID__BOOLEAN) IA__g_cclosure_marshal_VOID__BOOLEAN __attribute((visibility("hidden"))); -#define g_cclosure_marshal_VOID__BOOLEAN IA__g_cclosure_marshal_VOID__BOOLEAN - -extern __typeof (g_cclosure_marshal_VOID__BOXED) IA__g_cclosure_marshal_VOID__BOXED __attribute((visibility("hidden"))); -#define g_cclosure_marshal_VOID__BOXED IA__g_cclosure_marshal_VOID__BOXED - -extern __typeof (g_cclosure_marshal_VOID__CHAR) IA__g_cclosure_marshal_VOID__CHAR __attribute((visibility("hidden"))); -#define g_cclosure_marshal_VOID__CHAR IA__g_cclosure_marshal_VOID__CHAR - -extern __typeof (g_cclosure_marshal_VOID__DOUBLE) IA__g_cclosure_marshal_VOID__DOUBLE __attribute((visibility("hidden"))); -#define g_cclosure_marshal_VOID__DOUBLE IA__g_cclosure_marshal_VOID__DOUBLE - -extern __typeof (g_cclosure_marshal_VOID__ENUM) IA__g_cclosure_marshal_VOID__ENUM __attribute((visibility("hidden"))); -#define g_cclosure_marshal_VOID__ENUM IA__g_cclosure_marshal_VOID__ENUM - -extern __typeof (g_cclosure_marshal_VOID__FLAGS) IA__g_cclosure_marshal_VOID__FLAGS __attribute((visibility("hidden"))); -#define g_cclosure_marshal_VOID__FLAGS IA__g_cclosure_marshal_VOID__FLAGS - -extern __typeof (g_cclosure_marshal_VOID__FLOAT) IA__g_cclosure_marshal_VOID__FLOAT __attribute((visibility("hidden"))); -#define g_cclosure_marshal_VOID__FLOAT IA__g_cclosure_marshal_VOID__FLOAT - -extern __typeof (g_cclosure_marshal_VOID__INT) IA__g_cclosure_marshal_VOID__INT __attribute((visibility("hidden"))); -#define g_cclosure_marshal_VOID__INT IA__g_cclosure_marshal_VOID__INT - -extern __typeof (g_cclosure_marshal_VOID__LONG) IA__g_cclosure_marshal_VOID__LONG __attribute((visibility("hidden"))); -#define g_cclosure_marshal_VOID__LONG IA__g_cclosure_marshal_VOID__LONG - -extern __typeof (g_cclosure_marshal_VOID__OBJECT) IA__g_cclosure_marshal_VOID__OBJECT __attribute((visibility("hidden"))); -#define g_cclosure_marshal_VOID__OBJECT IA__g_cclosure_marshal_VOID__OBJECT - -extern __typeof (g_cclosure_marshal_VOID__PARAM) IA__g_cclosure_marshal_VOID__PARAM __attribute((visibility("hidden"))); -#define g_cclosure_marshal_VOID__PARAM IA__g_cclosure_marshal_VOID__PARAM - -extern __typeof (g_cclosure_marshal_VOID__POINTER) IA__g_cclosure_marshal_VOID__POINTER __attribute((visibility("hidden"))); -#define g_cclosure_marshal_VOID__POINTER IA__g_cclosure_marshal_VOID__POINTER - -extern __typeof (g_cclosure_marshal_VOID__STRING) IA__g_cclosure_marshal_VOID__STRING __attribute((visibility("hidden"))); -#define g_cclosure_marshal_VOID__STRING IA__g_cclosure_marshal_VOID__STRING - -extern __typeof (g_cclosure_marshal_VOID__UCHAR) IA__g_cclosure_marshal_VOID__UCHAR __attribute((visibility("hidden"))); -#define g_cclosure_marshal_VOID__UCHAR IA__g_cclosure_marshal_VOID__UCHAR - -extern __typeof (g_cclosure_marshal_VOID__UINT) IA__g_cclosure_marshal_VOID__UINT __attribute((visibility("hidden"))); -#define g_cclosure_marshal_VOID__UINT IA__g_cclosure_marshal_VOID__UINT - -extern __typeof (g_cclosure_marshal_VOID__UINT_POINTER) IA__g_cclosure_marshal_VOID__UINT_POINTER __attribute((visibility("hidden"))); -#define g_cclosure_marshal_VOID__UINT_POINTER IA__g_cclosure_marshal_VOID__UINT_POINTER - -extern __typeof (g_cclosure_marshal_VOID__ULONG) IA__g_cclosure_marshal_VOID__ULONG __attribute((visibility("hidden"))); -#define g_cclosure_marshal_VOID__ULONG IA__g_cclosure_marshal_VOID__ULONG - -extern __typeof (g_cclosure_marshal_VOID__VOID) IA__g_cclosure_marshal_VOID__VOID __attribute((visibility("hidden"))); -#define g_cclosure_marshal_VOID__VOID IA__g_cclosure_marshal_VOID__VOID - -#endif -#endif -#if IN_HEADER(__G_CLOSURE_H__) -#if IN_FILE(__G_CLOSURE_C__) -extern __typeof (g_cclosure_new) IA__g_cclosure_new __attribute((visibility("hidden"))); -#define g_cclosure_new IA__g_cclosure_new - -extern __typeof (g_cclosure_new_swap) IA__g_cclosure_new_swap __attribute((visibility("hidden"))); -#define g_cclosure_new_swap IA__g_cclosure_new_swap - -extern __typeof (g_closure_add_finalize_notifier) IA__g_closure_add_finalize_notifier __attribute((visibility("hidden"))); -#define g_closure_add_finalize_notifier IA__g_closure_add_finalize_notifier - -extern __typeof (g_closure_add_invalidate_notifier) IA__g_closure_add_invalidate_notifier __attribute((visibility("hidden"))); -#define g_closure_add_invalidate_notifier IA__g_closure_add_invalidate_notifier - -extern __typeof (g_closure_add_marshal_guards) IA__g_closure_add_marshal_guards __attribute((visibility("hidden"))); -#define g_closure_add_marshal_guards IA__g_closure_add_marshal_guards - -extern __typeof (g_closure_invalidate) IA__g_closure_invalidate __attribute((visibility("hidden"))); -#define g_closure_invalidate IA__g_closure_invalidate - -extern __typeof (g_closure_invoke) IA__g_closure_invoke __attribute((visibility("hidden"))); -#define g_closure_invoke IA__g_closure_invoke - -extern __typeof (g_closure_new_simple) IA__g_closure_new_simple __attribute((visibility("hidden"))); -#define g_closure_new_simple IA__g_closure_new_simple - -extern __typeof (g_closure_ref) IA__g_closure_ref __attribute((visibility("hidden"))); -#define g_closure_ref IA__g_closure_ref - -extern __typeof (g_closure_remove_finalize_notifier) IA__g_closure_remove_finalize_notifier __attribute((visibility("hidden"))); -#define g_closure_remove_finalize_notifier IA__g_closure_remove_finalize_notifier - -extern __typeof (g_closure_remove_invalidate_notifier) IA__g_closure_remove_invalidate_notifier __attribute((visibility("hidden"))); -#define g_closure_remove_invalidate_notifier IA__g_closure_remove_invalidate_notifier - -extern __typeof (g_closure_set_marshal) IA__g_closure_set_marshal __attribute((visibility("hidden"))); -#define g_closure_set_marshal IA__g_closure_set_marshal - -extern __typeof (g_closure_set_meta_marshal) IA__g_closure_set_meta_marshal __attribute((visibility("hidden"))); -#define g_closure_set_meta_marshal IA__g_closure_set_meta_marshal - -extern __typeof (g_closure_sink) IA__g_closure_sink __attribute((visibility("hidden"))); -#define g_closure_sink IA__g_closure_sink - -extern __typeof (g_closure_unref) IA__g_closure_unref __attribute((visibility("hidden"))); -#define g_closure_unref IA__g_closure_unref - -extern __typeof (g_signal_type_cclosure_new) IA__g_signal_type_cclosure_new __attribute((visibility("hidden"))); -#define g_signal_type_cclosure_new IA__g_signal_type_cclosure_new - -#endif -#endif -#if IN_HEADER(__G_ENUMS_H__) -#if IN_FILE(__G_ENUMS_C__) -extern __typeof (g_enum_complete_type_info) IA__g_enum_complete_type_info __attribute((visibility("hidden"))); -#define g_enum_complete_type_info IA__g_enum_complete_type_info - -extern __typeof (g_enum_get_value) IA__g_enum_get_value __attribute((visibility("hidden"))); -#define g_enum_get_value IA__g_enum_get_value - -extern __typeof (g_enum_get_value_by_name) IA__g_enum_get_value_by_name __attribute((visibility("hidden"))); -#define g_enum_get_value_by_name IA__g_enum_get_value_by_name - -extern __typeof (g_enum_get_value_by_nick) IA__g_enum_get_value_by_nick __attribute((visibility("hidden"))); -#define g_enum_get_value_by_nick IA__g_enum_get_value_by_nick - -extern __typeof (g_enum_register_static) IA__g_enum_register_static __attribute((visibility("hidden"))); -#define g_enum_register_static IA__g_enum_register_static - -extern __typeof (g_flags_complete_type_info) IA__g_flags_complete_type_info __attribute((visibility("hidden"))); -#define g_flags_complete_type_info IA__g_flags_complete_type_info - -extern __typeof (g_flags_get_first_value) IA__g_flags_get_first_value __attribute((visibility("hidden"))); -#define g_flags_get_first_value IA__g_flags_get_first_value - -extern __typeof (g_flags_get_value_by_name) IA__g_flags_get_value_by_name __attribute((visibility("hidden"))); -#define g_flags_get_value_by_name IA__g_flags_get_value_by_name - -extern __typeof (g_flags_get_value_by_nick) IA__g_flags_get_value_by_nick __attribute((visibility("hidden"))); -#define g_flags_get_value_by_nick IA__g_flags_get_value_by_nick - -extern __typeof (g_flags_register_static) IA__g_flags_register_static __attribute((visibility("hidden"))); -#define g_flags_register_static IA__g_flags_register_static - -extern __typeof (g_value_set_enum) IA__g_value_set_enum __attribute((visibility("hidden"))); -#define g_value_set_enum IA__g_value_set_enum - -extern __typeof (g_value_set_flags) IA__g_value_set_flags __attribute((visibility("hidden"))); -#define g_value_set_flags IA__g_value_set_flags - -extern __typeof (g_value_get_enum) IA__g_value_get_enum __attribute((visibility("hidden"))); -#define g_value_get_enum IA__g_value_get_enum - -extern __typeof (g_value_get_flags) IA__g_value_get_flags __attribute((visibility("hidden"))); -#define g_value_get_flags IA__g_value_get_flags - -#endif -#endif -#if IN_HEADER(__G_SOURCECLOSURE_H__) -#if IN_FILE(__G_SOURCECLOSURE_C__) -extern __typeof (g_io_channel_get_type) IA__g_io_channel_get_type __attribute((visibility("hidden"))); -#define g_io_channel_get_type IA__g_io_channel_get_type - -extern __typeof (g_io_condition_get_type) IA__g_io_condition_get_type __attribute((visibility("hidden"))); -#define g_io_condition_get_type IA__g_io_condition_get_type - -extern __typeof (g_source_set_closure) IA__g_source_set_closure __attribute((visibility("hidden"))); -#define g_source_set_closure IA__g_source_set_closure - -#endif -#endif -#if IN_HEADER(__G_OBJECT_H__) -#if IN_FILE(__G_OBJECT_C__) -extern __typeof (g_cclosure_new_object) IA__g_cclosure_new_object __attribute((visibility("hidden"))); -#define g_cclosure_new_object IA__g_cclosure_new_object - -extern __typeof (g_cclosure_new_object_swap) IA__g_cclosure_new_object_swap __attribute((visibility("hidden"))); -#define g_cclosure_new_object_swap IA__g_cclosure_new_object_swap - -extern __typeof (g_closure_new_object) IA__g_closure_new_object __attribute((visibility("hidden"))); -#define g_closure_new_object IA__g_closure_new_object - -extern __typeof (g_initially_unowned_get_type) IA__g_initially_unowned_get_type __attribute((visibility("hidden"))); -#define g_initially_unowned_get_type IA__g_initially_unowned_get_type - -extern __typeof (g_object_add_weak_pointer) IA__g_object_add_weak_pointer __attribute((visibility("hidden"))); -#define g_object_add_weak_pointer IA__g_object_add_weak_pointer - -extern __typeof (g_object_class_find_property) IA__g_object_class_find_property __attribute((visibility("hidden"))); -#define g_object_class_find_property IA__g_object_class_find_property - -extern __typeof (g_object_class_install_property) IA__g_object_class_install_property __attribute((visibility("hidden"))); -#define g_object_class_install_property IA__g_object_class_install_property - -extern __typeof (g_object_class_list_properties) IA__g_object_class_list_properties __attribute((visibility("hidden"))); -#define g_object_class_list_properties IA__g_object_class_list_properties - -extern __typeof (g_object_class_override_property) IA__g_object_class_override_property __attribute((visibility("hidden"))); -#define g_object_class_override_property IA__g_object_class_override_property - -extern __typeof (g_object_connect) IA__g_object_connect __attribute((visibility("hidden"))) G_GNUC_NULL_TERMINATED; -#define g_object_connect IA__g_object_connect - -extern __typeof (g_object_disconnect) IA__g_object_disconnect __attribute((visibility("hidden"))) G_GNUC_NULL_TERMINATED; -#define g_object_disconnect IA__g_object_disconnect - -extern __typeof (g_object_freeze_notify) IA__g_object_freeze_notify __attribute((visibility("hidden"))); -#define g_object_freeze_notify IA__g_object_freeze_notify - -extern __typeof (g_object_get) IA__g_object_get __attribute((visibility("hidden"))) G_GNUC_NULL_TERMINATED; -#define g_object_get IA__g_object_get - -extern __typeof (g_object_get_data) IA__g_object_get_data __attribute((visibility("hidden"))); -#define g_object_get_data IA__g_object_get_data - -extern __typeof (g_object_get_property) IA__g_object_get_property __attribute((visibility("hidden"))); -#define g_object_get_property IA__g_object_get_property - -extern __typeof (g_object_get_qdata) IA__g_object_get_qdata __attribute((visibility("hidden"))); -#define g_object_get_qdata IA__g_object_get_qdata - -extern __typeof (g_object_get_type) IA__g_object_get_type __attribute((visibility("hidden"))); -#define g_object_get_type IA__g_object_get_type - -extern __typeof (g_object_get_valist) IA__g_object_get_valist __attribute((visibility("hidden"))); -#define g_object_get_valist IA__g_object_get_valist - -extern __typeof (g_object_interface_find_property) IA__g_object_interface_find_property __attribute((visibility("hidden"))); -#define g_object_interface_find_property IA__g_object_interface_find_property - -extern __typeof (g_object_interface_install_property) IA__g_object_interface_install_property __attribute((visibility("hidden"))); -#define g_object_interface_install_property IA__g_object_interface_install_property - -extern __typeof (g_object_interface_list_properties) IA__g_object_interface_list_properties __attribute((visibility("hidden"))); -#define g_object_interface_list_properties IA__g_object_interface_list_properties - -extern __typeof (g_object_new) IA__g_object_new __attribute((visibility("hidden"))); -#define g_object_new IA__g_object_new - -extern __typeof (g_object_newv) IA__g_object_newv __attribute((visibility("hidden"))); -#define g_object_newv IA__g_object_newv - -extern __typeof (g_object_new_valist) IA__g_object_new_valist __attribute((visibility("hidden"))); -#define g_object_new_valist IA__g_object_new_valist - -extern __typeof (g_object_notify) IA__g_object_notify __attribute((visibility("hidden"))); -#define g_object_notify IA__g_object_notify - -extern __typeof (g_object_is_floating) IA__g_object_is_floating __attribute((visibility("hidden"))); -#define g_object_is_floating IA__g_object_is_floating - -extern __typeof (g_object_ref_sink) IA__g_object_ref_sink __attribute((visibility("hidden"))); -#define g_object_ref_sink IA__g_object_ref_sink - -extern __typeof (g_object_force_floating) IA__g_object_force_floating __attribute((visibility("hidden"))); -#define g_object_force_floating IA__g_object_force_floating - -extern __typeof (g_object_ref) IA__g_object_ref __attribute((visibility("hidden"))); -#define g_object_ref IA__g_object_ref - -extern __typeof (g_object_unref) IA__g_object_unref __attribute((visibility("hidden"))); -#define g_object_unref IA__g_object_unref - -extern __typeof (g_object_remove_weak_pointer) IA__g_object_remove_weak_pointer __attribute((visibility("hidden"))); -#define g_object_remove_weak_pointer IA__g_object_remove_weak_pointer - -extern __typeof (g_object_run_dispose) IA__g_object_run_dispose __attribute((visibility("hidden"))); -#define g_object_run_dispose IA__g_object_run_dispose - -extern __typeof (g_object_set) IA__g_object_set __attribute((visibility("hidden"))) G_GNUC_NULL_TERMINATED; -#define g_object_set IA__g_object_set - -extern __typeof (g_object_set_data) IA__g_object_set_data __attribute((visibility("hidden"))); -#define g_object_set_data IA__g_object_set_data - -extern __typeof (g_object_set_data_full) IA__g_object_set_data_full __attribute((visibility("hidden"))); -#define g_object_set_data_full IA__g_object_set_data_full - -extern __typeof (g_object_set_property) IA__g_object_set_property __attribute((visibility("hidden"))); -#define g_object_set_property IA__g_object_set_property - -extern __typeof (g_object_set_qdata) IA__g_object_set_qdata __attribute((visibility("hidden"))); -#define g_object_set_qdata IA__g_object_set_qdata - -extern __typeof (g_object_set_qdata_full) IA__g_object_set_qdata_full __attribute((visibility("hidden"))); -#define g_object_set_qdata_full IA__g_object_set_qdata_full - -extern __typeof (g_object_set_valist) IA__g_object_set_valist __attribute((visibility("hidden"))); -#define g_object_set_valist IA__g_object_set_valist - -extern __typeof (g_object_steal_data) IA__g_object_steal_data __attribute((visibility("hidden"))); -#define g_object_steal_data IA__g_object_steal_data - -extern __typeof (g_object_steal_qdata) IA__g_object_steal_qdata __attribute((visibility("hidden"))); -#define g_object_steal_qdata IA__g_object_steal_qdata - -extern __typeof (g_object_thaw_notify) IA__g_object_thaw_notify __attribute((visibility("hidden"))); -#define g_object_thaw_notify IA__g_object_thaw_notify - -extern __typeof (g_object_watch_closure) IA__g_object_watch_closure __attribute((visibility("hidden"))); -#define g_object_watch_closure IA__g_object_watch_closure - -extern __typeof (g_object_weak_ref) IA__g_object_weak_ref __attribute((visibility("hidden"))); -#define g_object_weak_ref IA__g_object_weak_ref - -extern __typeof (g_object_weak_unref) IA__g_object_weak_unref __attribute((visibility("hidden"))); -#define g_object_weak_unref IA__g_object_weak_unref - -extern __typeof (g_object_add_toggle_ref) IA__g_object_add_toggle_ref __attribute((visibility("hidden"))); -#define g_object_add_toggle_ref IA__g_object_add_toggle_ref - -extern __typeof (g_object_remove_toggle_ref) IA__g_object_remove_toggle_ref __attribute((visibility("hidden"))); -#define g_object_remove_toggle_ref IA__g_object_remove_toggle_ref - -extern __typeof (g_value_get_object) IA__g_value_get_object __attribute((visibility("hidden"))); -#define g_value_get_object IA__g_value_get_object - -extern __typeof (g_value_set_object) IA__g_value_set_object __attribute((visibility("hidden"))); -#define g_value_set_object IA__g_value_set_object - -extern __typeof (g_value_dup_object) IA__g_value_dup_object __attribute((visibility("hidden"))); -#define g_value_dup_object IA__g_value_dup_object - -extern __typeof (g_value_take_object) IA__g_value_take_object __attribute((visibility("hidden"))); -#define g_value_take_object IA__g_value_take_object - -#ifndef G_DISABLE_DEPRECATED -extern __typeof (g_value_set_object_take_ownership) IA__g_value_set_object_take_ownership __attribute((visibility("hidden"))); -#define g_value_set_object_take_ownership IA__g_value_set_object_take_ownership - -extern __typeof (g_object_compat_control) IA__g_object_compat_control __attribute((visibility("hidden"))); -#define g_object_compat_control IA__g_object_compat_control - -#endif -extern __typeof (g_signal_connect_object) IA__g_signal_connect_object __attribute((visibility("hidden"))); -#define g_signal_connect_object IA__g_signal_connect_object - -#endif -#endif -#if IN_HEADER(__G_PARAMSPECS_H__) -#if IN_FILE(__G_PARAMSPECS_C__) -extern __typeof (g_param_spec_boolean) IA__g_param_spec_boolean __attribute((visibility("hidden"))); -#define g_param_spec_boolean IA__g_param_spec_boolean - -extern __typeof (g_param_spec_boxed) IA__g_param_spec_boxed __attribute((visibility("hidden"))); -#define g_param_spec_boxed IA__g_param_spec_boxed - -extern __typeof (g_param_spec_char) IA__g_param_spec_char __attribute((visibility("hidden"))); -#define g_param_spec_char IA__g_param_spec_char - -extern __typeof (g_param_spec_double) IA__g_param_spec_double __attribute((visibility("hidden"))); -#define g_param_spec_double IA__g_param_spec_double - -extern __typeof (g_param_spec_enum) IA__g_param_spec_enum __attribute((visibility("hidden"))); -#define g_param_spec_enum IA__g_param_spec_enum - -extern __typeof (g_param_spec_flags) IA__g_param_spec_flags __attribute((visibility("hidden"))); -#define g_param_spec_flags IA__g_param_spec_flags - -extern __typeof (g_param_spec_float) IA__g_param_spec_float __attribute((visibility("hidden"))); -#define g_param_spec_float IA__g_param_spec_float - -extern __typeof (g_param_spec_int) IA__g_param_spec_int __attribute((visibility("hidden"))); -#define g_param_spec_int IA__g_param_spec_int - -extern __typeof (g_param_spec_int64) IA__g_param_spec_int64 __attribute((visibility("hidden"))); -#define g_param_spec_int64 IA__g_param_spec_int64 - -extern __typeof (g_param_spec_long) IA__g_param_spec_long __attribute((visibility("hidden"))); -#define g_param_spec_long IA__g_param_spec_long - -extern __typeof (g_param_spec_object) IA__g_param_spec_object __attribute((visibility("hidden"))); -#define g_param_spec_object IA__g_param_spec_object - -extern __typeof (g_param_spec_override) IA__g_param_spec_override __attribute((visibility("hidden"))); -#define g_param_spec_override IA__g_param_spec_override - -extern __typeof (g_param_spec_gtype) IA__g_param_spec_gtype __attribute((visibility("hidden"))); -#define g_param_spec_gtype IA__g_param_spec_gtype - -extern __typeof (g_param_spec_param) IA__g_param_spec_param __attribute((visibility("hidden"))); -#define g_param_spec_param IA__g_param_spec_param - -extern __typeof (g_param_spec_pointer) IA__g_param_spec_pointer __attribute((visibility("hidden"))); -#define g_param_spec_pointer IA__g_param_spec_pointer - -extern __typeof (g_param_spec_string) IA__g_param_spec_string __attribute((visibility("hidden"))); -#define g_param_spec_string IA__g_param_spec_string - -extern __typeof (g_param_spec_uchar) IA__g_param_spec_uchar __attribute((visibility("hidden"))); -#define g_param_spec_uchar IA__g_param_spec_uchar - -extern __typeof (g_param_spec_uint) IA__g_param_spec_uint __attribute((visibility("hidden"))); -#define g_param_spec_uint IA__g_param_spec_uint - -extern __typeof (g_param_spec_uint64) IA__g_param_spec_uint64 __attribute((visibility("hidden"))); -#define g_param_spec_uint64 IA__g_param_spec_uint64 - -extern __typeof (g_param_spec_ulong) IA__g_param_spec_ulong __attribute((visibility("hidden"))); -#define g_param_spec_ulong IA__g_param_spec_ulong - -extern __typeof (g_param_spec_unichar) IA__g_param_spec_unichar __attribute((visibility("hidden"))); -#define g_param_spec_unichar IA__g_param_spec_unichar - -extern __typeof (g_param_spec_value_array) IA__g_param_spec_value_array __attribute((visibility("hidden"))); -#define g_param_spec_value_array IA__g_param_spec_value_array - -#endif -#endif -#if IN_HEADER(__G_PARAM_H__) -#if IN_FILE(__G_PARAM_C__) -extern __typeof (g_param_spec_get_blurb) IA__g_param_spec_get_blurb __attribute((visibility("hidden"))); -#define g_param_spec_get_blurb IA__g_param_spec_get_blurb - -extern __typeof (g_param_spec_get_name) IA__g_param_spec_get_name __attribute((visibility("hidden"))); -#define g_param_spec_get_name IA__g_param_spec_get_name - -extern __typeof (g_param_spec_get_nick) IA__g_param_spec_get_nick __attribute((visibility("hidden"))); -#define g_param_spec_get_nick IA__g_param_spec_get_nick - -extern __typeof (g_param_spec_get_redirect_target) IA__g_param_spec_get_redirect_target __attribute((visibility("hidden"))); -#define g_param_spec_get_redirect_target IA__g_param_spec_get_redirect_target - -extern __typeof (g_param_spec_internal) IA__g_param_spec_internal __attribute((visibility("hidden"))); -#define g_param_spec_internal IA__g_param_spec_internal - -extern __typeof (g_param_type_register_static) IA__g_param_type_register_static __attribute((visibility("hidden"))); -#define g_param_type_register_static IA__g_param_type_register_static - -extern __typeof (g_param_spec_ref) IA__g_param_spec_ref __attribute((visibility("hidden"))); -#define g_param_spec_ref IA__g_param_spec_ref - -extern __typeof (g_param_spec_ref_sink) IA__g_param_spec_ref_sink __attribute((visibility("hidden"))); -#define g_param_spec_ref_sink IA__g_param_spec_ref_sink - -extern __typeof (g_param_spec_unref) IA__g_param_spec_unref __attribute((visibility("hidden"))); -#define g_param_spec_unref IA__g_param_spec_unref - -extern __typeof (g_param_spec_sink) IA__g_param_spec_sink __attribute((visibility("hidden"))); -#define g_param_spec_sink IA__g_param_spec_sink - -extern __typeof (g_param_spec_steal_qdata) IA__g_param_spec_steal_qdata __attribute((visibility("hidden"))); -#define g_param_spec_steal_qdata IA__g_param_spec_steal_qdata - -extern __typeof (g_param_spec_set_qdata) IA__g_param_spec_set_qdata __attribute((visibility("hidden"))); -#define g_param_spec_set_qdata IA__g_param_spec_set_qdata - -extern __typeof (g_param_spec_set_qdata_full) IA__g_param_spec_set_qdata_full __attribute((visibility("hidden"))); -#define g_param_spec_set_qdata_full IA__g_param_spec_set_qdata_full - -extern __typeof (g_param_spec_get_qdata) IA__g_param_spec_get_qdata __attribute((visibility("hidden"))); -#define g_param_spec_get_qdata IA__g_param_spec_get_qdata - -extern __typeof (g_param_value_convert) IA__g_param_value_convert __attribute((visibility("hidden"))); -#define g_param_value_convert IA__g_param_value_convert - -extern __typeof (g_param_value_defaults) IA__g_param_value_defaults __attribute((visibility("hidden"))); -#define g_param_value_defaults IA__g_param_value_defaults - -extern __typeof (g_param_values_cmp) IA__g_param_values_cmp __attribute((visibility("hidden"))); -#define g_param_values_cmp IA__g_param_values_cmp - -extern __typeof (g_param_value_set_default) IA__g_param_value_set_default __attribute((visibility("hidden"))); -#define g_param_value_set_default IA__g_param_value_set_default - -extern __typeof (g_param_value_validate) IA__g_param_value_validate __attribute((visibility("hidden"))); -#define g_param_value_validate IA__g_param_value_validate - -extern __typeof (g_param_spec_pool_insert) IA__g_param_spec_pool_insert __attribute((visibility("hidden"))); -#define g_param_spec_pool_insert IA__g_param_spec_pool_insert - -extern __typeof (g_param_spec_pool_list) IA__g_param_spec_pool_list __attribute((visibility("hidden"))); -#define g_param_spec_pool_list IA__g_param_spec_pool_list - -extern __typeof (g_param_spec_pool_list_owned) IA__g_param_spec_pool_list_owned __attribute((visibility("hidden"))); -#define g_param_spec_pool_list_owned IA__g_param_spec_pool_list_owned - -extern __typeof (g_param_spec_pool_lookup) IA__g_param_spec_pool_lookup __attribute((visibility("hidden"))); -#define g_param_spec_pool_lookup IA__g_param_spec_pool_lookup - -extern __typeof (g_param_spec_pool_new) IA__g_param_spec_pool_new __attribute((visibility("hidden"))); -#define g_param_spec_pool_new IA__g_param_spec_pool_new - -extern __typeof (g_param_spec_pool_remove) IA__g_param_spec_pool_remove __attribute((visibility("hidden"))); -#define g_param_spec_pool_remove IA__g_param_spec_pool_remove - -extern __typeof (g_value_get_param) IA__g_value_get_param __attribute((visibility("hidden"))); -#define g_value_get_param IA__g_value_get_param - -extern __typeof (g_value_set_param) IA__g_value_set_param __attribute((visibility("hidden"))); -#define g_value_set_param IA__g_value_set_param - -extern __typeof (g_value_dup_param) IA__g_value_dup_param __attribute((visibility("hidden"))); -#define g_value_dup_param IA__g_value_dup_param - -extern __typeof (g_value_take_param) IA__g_value_take_param __attribute((visibility("hidden"))); -#define g_value_take_param IA__g_value_take_param - -#ifndef G_DISABLE_DEPRECATED -extern __typeof (g_value_set_param_take_ownership) IA__g_value_set_param_take_ownership __attribute((visibility("hidden"))); -#define g_value_set_param_take_ownership IA__g_value_set_param_take_ownership - -#endif -#endif -#endif -#if IN_HEADER(__G_VALUETYPES_H__) -#if IN_FILE(__G_VALUETYPES_C__) -extern __typeof (g_pointer_type_register_static) IA__g_pointer_type_register_static __attribute((visibility("hidden"))); -#define g_pointer_type_register_static IA__g_pointer_type_register_static - -extern __typeof (g_strdup_value_contents) IA__g_strdup_value_contents __attribute((visibility("hidden"))); -#define g_strdup_value_contents IA__g_strdup_value_contents - -extern __typeof (g_value_set_boolean) IA__g_value_set_boolean __attribute((visibility("hidden"))); -#define g_value_set_boolean IA__g_value_set_boolean - -extern __typeof (g_value_set_char) IA__g_value_set_char __attribute((visibility("hidden"))); -#define g_value_set_char IA__g_value_set_char - -extern __typeof (g_value_set_double) IA__g_value_set_double __attribute((visibility("hidden"))); -#define g_value_set_double IA__g_value_set_double - -extern __typeof (g_value_set_float) IA__g_value_set_float __attribute((visibility("hidden"))); -#define g_value_set_float IA__g_value_set_float - -extern __typeof (g_value_set_int) IA__g_value_set_int __attribute((visibility("hidden"))); -#define g_value_set_int IA__g_value_set_int - -extern __typeof (g_value_set_int64) IA__g_value_set_int64 __attribute((visibility("hidden"))); -#define g_value_set_int64 IA__g_value_set_int64 - -extern __typeof (g_value_set_long) IA__g_value_set_long __attribute((visibility("hidden"))); -#define g_value_set_long IA__g_value_set_long - -extern __typeof (g_value_set_pointer) IA__g_value_set_pointer __attribute((visibility("hidden"))); -#define g_value_set_pointer IA__g_value_set_pointer - -extern __typeof (g_value_set_static_string) IA__g_value_set_static_string __attribute((visibility("hidden"))); -#define g_value_set_static_string IA__g_value_set_static_string - -extern __typeof (g_value_set_string) IA__g_value_set_string __attribute((visibility("hidden"))); -#define g_value_set_string IA__g_value_set_string - -#ifndef G_DISABLE_DEPRECATED -extern __typeof (g_value_set_string_take_ownership) IA__g_value_set_string_take_ownership __attribute((visibility("hidden"))); -#define g_value_set_string_take_ownership IA__g_value_set_string_take_ownership - -#endif -extern __typeof (g_value_set_uchar) IA__g_value_set_uchar __attribute((visibility("hidden"))); -#define g_value_set_uchar IA__g_value_set_uchar - -extern __typeof (g_value_set_uint) IA__g_value_set_uint __attribute((visibility("hidden"))); -#define g_value_set_uint IA__g_value_set_uint - -extern __typeof (g_value_set_uint64) IA__g_value_set_uint64 __attribute((visibility("hidden"))); -#define g_value_set_uint64 IA__g_value_set_uint64 - -extern __typeof (g_value_set_ulong) IA__g_value_set_ulong __attribute((visibility("hidden"))); -#define g_value_set_ulong IA__g_value_set_ulong - -extern __typeof (g_value_dup_string) IA__g_value_dup_string __attribute((visibility("hidden"))); -#define g_value_dup_string IA__g_value_dup_string - -extern __typeof (g_value_get_boolean) IA__g_value_get_boolean __attribute((visibility("hidden"))); -#define g_value_get_boolean IA__g_value_get_boolean - -extern __typeof (g_value_get_char) IA__g_value_get_char __attribute((visibility("hidden"))); -#define g_value_get_char IA__g_value_get_char - -extern __typeof (g_value_get_double) IA__g_value_get_double __attribute((visibility("hidden"))); -#define g_value_get_double IA__g_value_get_double - -extern __typeof (g_value_get_float) IA__g_value_get_float __attribute((visibility("hidden"))); -#define g_value_get_float IA__g_value_get_float - -extern __typeof (g_value_get_int) IA__g_value_get_int __attribute((visibility("hidden"))); -#define g_value_get_int IA__g_value_get_int - -extern __typeof (g_value_get_int64) IA__g_value_get_int64 __attribute((visibility("hidden"))); -#define g_value_get_int64 IA__g_value_get_int64 - -extern __typeof (g_value_get_long) IA__g_value_get_long __attribute((visibility("hidden"))); -#define g_value_get_long IA__g_value_get_long - -extern __typeof (g_value_get_pointer) IA__g_value_get_pointer __attribute((visibility("hidden"))); -#define g_value_get_pointer IA__g_value_get_pointer - -extern __typeof (g_value_get_string) IA__g_value_get_string __attribute((visibility("hidden"))); -#define g_value_get_string IA__g_value_get_string - -extern __typeof (g_value_get_uchar) IA__g_value_get_uchar __attribute((visibility("hidden"))); -#define g_value_get_uchar IA__g_value_get_uchar - -extern __typeof (g_value_get_uint) IA__g_value_get_uint __attribute((visibility("hidden"))); -#define g_value_get_uint IA__g_value_get_uint - -extern __typeof (g_value_get_uint64) IA__g_value_get_uint64 __attribute((visibility("hidden"))); -#define g_value_get_uint64 IA__g_value_get_uint64 - -extern __typeof (g_value_get_ulong) IA__g_value_get_ulong __attribute((visibility("hidden"))); -#define g_value_get_ulong IA__g_value_get_ulong - -extern __typeof (g_value_take_string) IA__g_value_take_string __attribute((visibility("hidden"))); -#define g_value_take_string IA__g_value_take_string - -extern __typeof (g_gtype_get_type) IA__g_gtype_get_type __attribute((visibility("hidden"))); -#define g_gtype_get_type IA__g_gtype_get_type - -extern __typeof (g_value_set_gtype) IA__g_value_set_gtype __attribute((visibility("hidden"))); -#define g_value_set_gtype IA__g_value_set_gtype - -extern __typeof (g_value_get_gtype) IA__g_value_get_gtype __attribute((visibility("hidden"))); -#define g_value_get_gtype IA__g_value_get_gtype - -#endif -#endif -#if IN_HEADER(__G_SIGNAL_H__) -#if IN_FILE(__G_SIGNAL_C__) -extern __typeof (g_signal_accumulator_true_handled) IA__g_signal_accumulator_true_handled __attribute((visibility("hidden"))); -#define g_signal_accumulator_true_handled IA__g_signal_accumulator_true_handled - -extern __typeof (g_signal_add_emission_hook) IA__g_signal_add_emission_hook __attribute((visibility("hidden"))); -#define g_signal_add_emission_hook IA__g_signal_add_emission_hook - -extern __typeof (g_signal_chain_from_overridden) IA__g_signal_chain_from_overridden __attribute((visibility("hidden"))); -#define g_signal_chain_from_overridden IA__g_signal_chain_from_overridden - -extern __typeof (g_signal_chain_from_overridden_handler) IA__g_signal_chain_from_overridden_handler __attribute((visibility("hidden"))); -#define g_signal_chain_from_overridden_handler IA__g_signal_chain_from_overridden_handler - -extern __typeof (g_signal_connect_closure) IA__g_signal_connect_closure __attribute((visibility("hidden"))); -#define g_signal_connect_closure IA__g_signal_connect_closure - -extern __typeof (g_signal_connect_closure_by_id) IA__g_signal_connect_closure_by_id __attribute((visibility("hidden"))); -#define g_signal_connect_closure_by_id IA__g_signal_connect_closure_by_id - -extern __typeof (g_signal_connect_data) IA__g_signal_connect_data __attribute((visibility("hidden"))); -#define g_signal_connect_data IA__g_signal_connect_data - -extern __typeof (g_signal_emit) IA__g_signal_emit __attribute((visibility("hidden"))); -#define g_signal_emit IA__g_signal_emit - -extern __typeof (g_signal_emit_by_name) IA__g_signal_emit_by_name __attribute((visibility("hidden"))); -#define g_signal_emit_by_name IA__g_signal_emit_by_name - -extern __typeof (g_signal_emitv) IA__g_signal_emitv __attribute((visibility("hidden"))); -#define g_signal_emitv IA__g_signal_emitv - -extern __typeof (g_signal_emit_valist) IA__g_signal_emit_valist __attribute((visibility("hidden"))); -#define g_signal_emit_valist IA__g_signal_emit_valist - -extern __typeof (g_signal_get_invocation_hint) IA__g_signal_get_invocation_hint __attribute((visibility("hidden"))); -#define g_signal_get_invocation_hint IA__g_signal_get_invocation_hint - -extern __typeof (g_signal_handler_block) IA__g_signal_handler_block __attribute((visibility("hidden"))); -#define g_signal_handler_block IA__g_signal_handler_block - -extern __typeof (g_signal_handler_disconnect) IA__g_signal_handler_disconnect __attribute((visibility("hidden"))); -#define g_signal_handler_disconnect IA__g_signal_handler_disconnect - -extern __typeof (g_signal_handler_find) IA__g_signal_handler_find __attribute((visibility("hidden"))); -#define g_signal_handler_find IA__g_signal_handler_find - -extern __typeof (g_signal_handler_is_connected) IA__g_signal_handler_is_connected __attribute((visibility("hidden"))); -#define g_signal_handler_is_connected IA__g_signal_handler_is_connected - -extern __typeof (g_signal_handlers_block_matched) IA__g_signal_handlers_block_matched __attribute((visibility("hidden"))); -#define g_signal_handlers_block_matched IA__g_signal_handlers_block_matched - -extern __typeof (g_signal_handlers_destroy) IA__g_signal_handlers_destroy __attribute((visibility("hidden"))); -#define g_signal_handlers_destroy IA__g_signal_handlers_destroy - -extern __typeof (g_signal_handlers_disconnect_matched) IA__g_signal_handlers_disconnect_matched __attribute((visibility("hidden"))); -#define g_signal_handlers_disconnect_matched IA__g_signal_handlers_disconnect_matched - -extern __typeof (g_signal_handlers_unblock_matched) IA__g_signal_handlers_unblock_matched __attribute((visibility("hidden"))); -#define g_signal_handlers_unblock_matched IA__g_signal_handlers_unblock_matched - -extern __typeof (g_signal_handler_unblock) IA__g_signal_handler_unblock __attribute((visibility("hidden"))); -#define g_signal_handler_unblock IA__g_signal_handler_unblock - -extern __typeof (g_signal_has_handler_pending) IA__g_signal_has_handler_pending __attribute((visibility("hidden"))); -#define g_signal_has_handler_pending IA__g_signal_has_handler_pending - -extern __typeof (g_signal_list_ids) IA__g_signal_list_ids __attribute((visibility("hidden"))); -#define g_signal_list_ids IA__g_signal_list_ids - -extern __typeof (g_signal_lookup) IA__g_signal_lookup __attribute((visibility("hidden"))); -#define g_signal_lookup IA__g_signal_lookup - -extern __typeof (g_signal_name) IA__g_signal_name __attribute((visibility("hidden"))); -#define g_signal_name IA__g_signal_name - -extern __typeof (g_signal_new) IA__g_signal_new __attribute((visibility("hidden"))); -#define g_signal_new IA__g_signal_new - -extern __typeof (g_signal_newv) IA__g_signal_newv __attribute((visibility("hidden"))); -#define g_signal_newv IA__g_signal_newv - -extern __typeof (g_signal_new_valist) IA__g_signal_new_valist __attribute((visibility("hidden"))); -#define g_signal_new_valist IA__g_signal_new_valist - -extern __typeof (g_signal_new_class_handler) IA__g_signal_new_class_handler __attribute((visibility("hidden"))); -#define g_signal_new_class_handler IA__g_signal_new_class_handler - -extern __typeof (g_signal_override_class_closure) IA__g_signal_override_class_closure __attribute((visibility("hidden"))); -#define g_signal_override_class_closure IA__g_signal_override_class_closure - -extern __typeof (g_signal_override_class_handler) IA__g_signal_override_class_handler __attribute((visibility("hidden"))); -#define g_signal_override_class_handler IA__g_signal_override_class_handler - -extern __typeof (g_signal_parse_name) IA__g_signal_parse_name __attribute((visibility("hidden"))); -#define g_signal_parse_name IA__g_signal_parse_name - -extern __typeof (g_signal_query) IA__g_signal_query __attribute((visibility("hidden"))); -#define g_signal_query IA__g_signal_query - -extern __typeof (g_signal_remove_emission_hook) IA__g_signal_remove_emission_hook __attribute((visibility("hidden"))); -#define g_signal_remove_emission_hook IA__g_signal_remove_emission_hook - -extern __typeof (g_signal_stop_emission) IA__g_signal_stop_emission __attribute((visibility("hidden"))); -#define g_signal_stop_emission IA__g_signal_stop_emission - -extern __typeof (g_signal_stop_emission_by_name) IA__g_signal_stop_emission_by_name __attribute((visibility("hidden"))); -#define g_signal_stop_emission_by_name IA__g_signal_stop_emission_by_name - -#endif -#endif -#if IN_HEADER(__G_TYPE_H__) -#if IN_FILE(__G_TYPE_C__) -extern __typeof (g_type_add_class_cache_func) IA__g_type_add_class_cache_func __attribute((visibility("hidden"))); -#define g_type_add_class_cache_func IA__g_type_add_class_cache_func - -extern __typeof (g_type_add_interface_check) IA__g_type_add_interface_check __attribute((visibility("hidden"))); -#define g_type_add_interface_check IA__g_type_add_interface_check - -extern __typeof (g_type_add_interface_dynamic) IA__g_type_add_interface_dynamic __attribute((visibility("hidden"))); -#define g_type_add_interface_dynamic IA__g_type_add_interface_dynamic - -extern __typeof (g_type_add_interface_static) IA__g_type_add_interface_static __attribute((visibility("hidden"))); -#define g_type_add_interface_static IA__g_type_add_interface_static - -extern __typeof (g_type_check_class_cast) IA__g_type_check_class_cast __attribute((visibility("hidden"))); -#define g_type_check_class_cast IA__g_type_check_class_cast - -extern __typeof (g_type_check_class_is_a) IA__g_type_check_class_is_a __attribute((visibility("hidden"))); -#define g_type_check_class_is_a IA__g_type_check_class_is_a - -extern __typeof (g_type_check_instance) IA__g_type_check_instance __attribute((visibility("hidden"))); -#define g_type_check_instance IA__g_type_check_instance - -extern __typeof (g_type_check_instance_cast) IA__g_type_check_instance_cast __attribute((visibility("hidden"))); -#define g_type_check_instance_cast IA__g_type_check_instance_cast - -extern __typeof (g_type_check_instance_is_a) IA__g_type_check_instance_is_a __attribute((visibility("hidden"))); -#define g_type_check_instance_is_a IA__g_type_check_instance_is_a - -extern __typeof (g_type_check_is_value_type) IA__g_type_check_is_value_type __attribute((visibility("hidden"))); -#define g_type_check_is_value_type IA__g_type_check_is_value_type - -extern __typeof (g_type_check_value) IA__g_type_check_value __attribute((visibility("hidden"))); -#define g_type_check_value IA__g_type_check_value - -extern __typeof (g_type_check_value_holds) IA__g_type_check_value_holds __attribute((visibility("hidden"))); -#define g_type_check_value_holds IA__g_type_check_value_holds - -extern __typeof (g_type_children) IA__g_type_children __attribute((visibility("hidden"))); -#define g_type_children IA__g_type_children - -extern __typeof (g_type_class_add_private) IA__g_type_class_add_private __attribute((visibility("hidden"))); -#define g_type_class_add_private IA__g_type_class_add_private - -extern __typeof (g_type_class_peek) IA__g_type_class_peek __attribute((visibility("hidden"))); -#define g_type_class_peek IA__g_type_class_peek - -extern __typeof (g_type_class_peek_parent) IA__g_type_class_peek_parent __attribute((visibility("hidden"))); -#define g_type_class_peek_parent IA__g_type_class_peek_parent - -extern __typeof (g_type_class_peek_static) IA__g_type_class_peek_static __attribute((visibility("hidden"))); -#define g_type_class_peek_static IA__g_type_class_peek_static - -extern __typeof (g_type_class_ref) IA__g_type_class_ref __attribute((visibility("hidden"))); -#define g_type_class_ref IA__g_type_class_ref - -extern __typeof (g_type_class_unref) IA__g_type_class_unref __attribute((visibility("hidden"))); -#define g_type_class_unref IA__g_type_class_unref - -extern __typeof (g_type_class_unref_uncached) IA__g_type_class_unref_uncached __attribute((visibility("hidden"))); -#define g_type_class_unref_uncached IA__g_type_class_unref_uncached - -extern __typeof (g_type_create_instance) IA__g_type_create_instance __attribute((visibility("hidden"))); -#define g_type_create_instance IA__g_type_create_instance - -extern __typeof (g_type_default_interface_peek) IA__g_type_default_interface_peek __attribute((visibility("hidden"))); -#define g_type_default_interface_peek IA__g_type_default_interface_peek - -extern __typeof (g_type_default_interface_ref) IA__g_type_default_interface_ref __attribute((visibility("hidden"))); -#define g_type_default_interface_ref IA__g_type_default_interface_ref - -extern __typeof (g_type_default_interface_unref) IA__g_type_default_interface_unref __attribute((visibility("hidden"))); -#define g_type_default_interface_unref IA__g_type_default_interface_unref - -extern __typeof (g_type_depth) IA__g_type_depth __attribute((visibility("hidden"))); -#define g_type_depth IA__g_type_depth - -extern __typeof (g_type_free_instance) IA__g_type_free_instance __attribute((visibility("hidden"))); -#define g_type_free_instance IA__g_type_free_instance - -extern __typeof (g_type_from_name) IA__g_type_from_name __attribute((visibility("hidden"))); -#define g_type_from_name IA__g_type_from_name - -extern __typeof (g_type_fundamental) IA__g_type_fundamental __attribute((visibility("hidden"))); -#define g_type_fundamental IA__g_type_fundamental - -extern __typeof (g_type_fundamental_next) IA__g_type_fundamental_next __attribute((visibility("hidden"))); -#define g_type_fundamental_next IA__g_type_fundamental_next - -extern __typeof (g_type_get_plugin) IA__g_type_get_plugin __attribute((visibility("hidden"))); -#define g_type_get_plugin IA__g_type_get_plugin - -extern __typeof (g_type_get_qdata) IA__g_type_get_qdata __attribute((visibility("hidden"))); -#define g_type_get_qdata IA__g_type_get_qdata - -extern __typeof (g_type_init) IA__g_type_init __attribute((visibility("hidden"))); -#define g_type_init IA__g_type_init - -extern __typeof (g_type_init_with_debug_flags) IA__g_type_init_with_debug_flags __attribute((visibility("hidden"))); -#define g_type_init_with_debug_flags IA__g_type_init_with_debug_flags - -extern __typeof (g_type_instance_get_private) IA__g_type_instance_get_private __attribute((visibility("hidden"))); -#define g_type_instance_get_private IA__g_type_instance_get_private - -extern __typeof (g_type_interface_add_prerequisite) IA__g_type_interface_add_prerequisite __attribute((visibility("hidden"))); -#define g_type_interface_add_prerequisite IA__g_type_interface_add_prerequisite - -extern __typeof (g_type_interface_get_plugin) IA__g_type_interface_get_plugin __attribute((visibility("hidden"))); -#define g_type_interface_get_plugin IA__g_type_interface_get_plugin - -extern __typeof (g_type_interface_peek) IA__g_type_interface_peek __attribute((visibility("hidden"))); -#define g_type_interface_peek IA__g_type_interface_peek - -extern __typeof (g_type_interface_peek_parent) IA__g_type_interface_peek_parent __attribute((visibility("hidden"))); -#define g_type_interface_peek_parent IA__g_type_interface_peek_parent - -extern __typeof (g_type_interface_prerequisites) IA__g_type_interface_prerequisites __attribute((visibility("hidden"))); -#define g_type_interface_prerequisites IA__g_type_interface_prerequisites - -extern __typeof (g_type_interfaces) IA__g_type_interfaces __attribute((visibility("hidden"))); -#define g_type_interfaces IA__g_type_interfaces - -extern __typeof (g_type_is_a) IA__g_type_is_a __attribute((visibility("hidden"))); -#define g_type_is_a IA__g_type_is_a - -extern __typeof (g_type_name) IA__g_type_name __attribute((visibility("hidden"))); -#define g_type_name IA__g_type_name - -extern __typeof (g_type_name_from_class) IA__g_type_name_from_class __attribute((visibility("hidden"))); -#define g_type_name_from_class IA__g_type_name_from_class - -extern __typeof (g_type_name_from_instance) IA__g_type_name_from_instance __attribute((visibility("hidden"))); -#define g_type_name_from_instance IA__g_type_name_from_instance - -extern __typeof (g_type_next_base) IA__g_type_next_base __attribute((visibility("hidden"))); -#define g_type_next_base IA__g_type_next_base - -extern __typeof (g_type_parent) IA__g_type_parent __attribute((visibility("hidden"))); -#define g_type_parent IA__g_type_parent - -extern __typeof (g_type_qname) IA__g_type_qname __attribute((visibility("hidden"))); -#define g_type_qname IA__g_type_qname - -extern __typeof (g_type_query) IA__g_type_query __attribute((visibility("hidden"))); -#define g_type_query IA__g_type_query - -extern __typeof (g_type_register_dynamic) IA__g_type_register_dynamic __attribute((visibility("hidden"))); -#define g_type_register_dynamic IA__g_type_register_dynamic - -extern __typeof (g_type_register_fundamental) IA__g_type_register_fundamental __attribute((visibility("hidden"))); -#define g_type_register_fundamental IA__g_type_register_fundamental - -extern __typeof (g_type_register_static) IA__g_type_register_static __attribute((visibility("hidden"))); -#define g_type_register_static IA__g_type_register_static - -extern __typeof (g_type_register_static_simple) IA__g_type_register_static_simple __attribute((visibility("hidden"))); -#define g_type_register_static_simple IA__g_type_register_static_simple - -extern __typeof (g_type_remove_class_cache_func) IA__g_type_remove_class_cache_func __attribute((visibility("hidden"))); -#define g_type_remove_class_cache_func IA__g_type_remove_class_cache_func - -extern __typeof (g_type_remove_interface_check) IA__g_type_remove_interface_check __attribute((visibility("hidden"))); -#define g_type_remove_interface_check IA__g_type_remove_interface_check - -extern __typeof (g_type_set_qdata) IA__g_type_set_qdata __attribute((visibility("hidden"))); -#define g_type_set_qdata IA__g_type_set_qdata - -extern __typeof (g_type_test_flags) IA__g_type_test_flags __attribute((visibility("hidden"))); -#define g_type_test_flags IA__g_type_test_flags - -extern __typeof (g_type_value_table_peek) IA__g_type_value_table_peek __attribute((visibility("hidden"))); -#define g_type_value_table_peek IA__g_type_value_table_peek - -extern __typeof (g_type_class_get_private) IA__g_type_class_get_private __attribute((visibility("hidden"))); -#define g_type_class_get_private IA__g_type_class_get_private - -extern __typeof (g_type_add_class_private) IA__g_type_add_class_private __attribute((visibility("hidden"))); -#define g_type_add_class_private IA__g_type_add_class_private - -#endif -#endif -#if IN_HEADER(__G_TYPE_MODULE_H__) -#if IN_FILE(__G_TYPE_MODULE_C__) -extern __typeof (g_type_module_add_interface) IA__g_type_module_add_interface __attribute((visibility("hidden"))); -#define g_type_module_add_interface IA__g_type_module_add_interface - -extern __typeof (g_type_module_get_type) IA__g_type_module_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_type_module_get_type IA__g_type_module_get_type - -extern __typeof (g_type_module_register_enum) IA__g_type_module_register_enum __attribute((visibility("hidden"))); -#define g_type_module_register_enum IA__g_type_module_register_enum - -extern __typeof (g_type_module_register_flags) IA__g_type_module_register_flags __attribute((visibility("hidden"))); -#define g_type_module_register_flags IA__g_type_module_register_flags - -extern __typeof (g_type_module_register_type) IA__g_type_module_register_type __attribute((visibility("hidden"))); -#define g_type_module_register_type IA__g_type_module_register_type - -extern __typeof (g_type_module_set_name) IA__g_type_module_set_name __attribute((visibility("hidden"))); -#define g_type_module_set_name IA__g_type_module_set_name - -extern __typeof (g_type_module_unuse) IA__g_type_module_unuse __attribute((visibility("hidden"))); -#define g_type_module_unuse IA__g_type_module_unuse - -extern __typeof (g_type_module_use) IA__g_type_module_use __attribute((visibility("hidden"))); -#define g_type_module_use IA__g_type_module_use - -#endif -#endif -#if IN_HEADER(__G_VALUE_ARRAY_H__) -#if IN_FILE(__G_VALUE_ARRAY_C__) -extern __typeof (g_value_array_append) IA__g_value_array_append __attribute((visibility("hidden"))); -#define g_value_array_append IA__g_value_array_append - -extern __typeof (g_value_array_copy) IA__g_value_array_copy __attribute((visibility("hidden"))); -#define g_value_array_copy IA__g_value_array_copy - -extern __typeof (g_value_array_free) IA__g_value_array_free __attribute((visibility("hidden"))); -#define g_value_array_free IA__g_value_array_free - -extern __typeof (g_value_array_get_nth) IA__g_value_array_get_nth __attribute((visibility("hidden"))); -#define g_value_array_get_nth IA__g_value_array_get_nth - -extern __typeof (g_value_array_insert) IA__g_value_array_insert __attribute((visibility("hidden"))); -#define g_value_array_insert IA__g_value_array_insert - -extern __typeof (g_value_array_new) IA__g_value_array_new __attribute((visibility("hidden"))); -#define g_value_array_new IA__g_value_array_new - -extern __typeof (g_value_array_prepend) IA__g_value_array_prepend __attribute((visibility("hidden"))); -#define g_value_array_prepend IA__g_value_array_prepend - -extern __typeof (g_value_array_remove) IA__g_value_array_remove __attribute((visibility("hidden"))); -#define g_value_array_remove IA__g_value_array_remove - -extern __typeof (g_value_array_sort) IA__g_value_array_sort __attribute((visibility("hidden"))); -#define g_value_array_sort IA__g_value_array_sort - -extern __typeof (g_value_array_sort_with_data) IA__g_value_array_sort_with_data __attribute((visibility("hidden"))); -#define g_value_array_sort_with_data IA__g_value_array_sort_with_data - -#endif -#endif -#if IN_HEADER(__G_TYPE_PLUGIN_H__) -#if IN_FILE(__G_TYPE_PLUGIN_C__) -extern __typeof (g_type_plugin_complete_interface_info) IA__g_type_plugin_complete_interface_info __attribute((visibility("hidden"))); -#define g_type_plugin_complete_interface_info IA__g_type_plugin_complete_interface_info - -extern __typeof (g_type_plugin_complete_type_info) IA__g_type_plugin_complete_type_info __attribute((visibility("hidden"))); -#define g_type_plugin_complete_type_info IA__g_type_plugin_complete_type_info - -extern __typeof (g_type_plugin_get_type) IA__g_type_plugin_get_type __attribute((visibility("hidden"))) G_GNUC_CONST; -#define g_type_plugin_get_type IA__g_type_plugin_get_type - -extern __typeof (g_type_plugin_unuse) IA__g_type_plugin_unuse __attribute((visibility("hidden"))); -#define g_type_plugin_unuse IA__g_type_plugin_unuse - -extern __typeof (g_type_plugin_use) IA__g_type_plugin_use __attribute((visibility("hidden"))); -#define g_type_plugin_use IA__g_type_plugin_use - -#endif -#endif -#if IN_HEADER(__G_VALUE_H__) -#if IN_FILE(__G_VALUE_C__) -extern __typeof (g_value_copy) IA__g_value_copy __attribute((visibility("hidden"))); -#define g_value_copy IA__g_value_copy - -extern __typeof (g_value_fits_pointer) IA__g_value_fits_pointer __attribute((visibility("hidden"))); -#define g_value_fits_pointer IA__g_value_fits_pointer - -extern __typeof (g_value_init) IA__g_value_init __attribute((visibility("hidden"))); -#define g_value_init IA__g_value_init - -extern __typeof (g_value_peek_pointer) IA__g_value_peek_pointer __attribute((visibility("hidden"))); -#define g_value_peek_pointer IA__g_value_peek_pointer - -extern __typeof (g_value_register_transform_func) IA__g_value_register_transform_func __attribute((visibility("hidden"))); -#define g_value_register_transform_func IA__g_value_register_transform_func - -extern __typeof (g_value_reset) IA__g_value_reset __attribute((visibility("hidden"))); -#define g_value_reset IA__g_value_reset - -extern __typeof (g_value_transform) IA__g_value_transform __attribute((visibility("hidden"))); -#define g_value_transform IA__g_value_transform - -extern __typeof (g_value_type_compatible) IA__g_value_type_compatible __attribute((visibility("hidden"))); -#define g_value_type_compatible IA__g_value_type_compatible - -extern __typeof (g_value_type_transformable) IA__g_value_type_transformable __attribute((visibility("hidden"))); -#define g_value_type_transformable IA__g_value_type_transformable - -extern __typeof (g_value_unset) IA__g_value_unset __attribute((visibility("hidden"))); -#define g_value_unset IA__g_value_unset - -extern __typeof (g_value_set_instance) IA__g_value_set_instance __attribute((visibility("hidden"))); -#define g_value_set_instance IA__g_value_set_instance - -#endif -#endif - -#endif /* G_HAVE_GNUC_VISIBILITY */ -#endif /* DISABLE_VISIBILITY */ diff --git a/gobject/gobjectaliasdef.c b/gobject/gobjectaliasdef.c deleted file mode 100644 index 9fd1f17..0000000 --- a/gobject/gobjectaliasdef.c +++ /dev/null @@ -1,1120 +0,0 @@ -/* Generated by makegobjectalias.pl */ - -#ifndef DISABLE_VISIBILITY - -#include "glibconfig.h" - -#ifdef G_HAVE_GNUC_VISIBILITY - -#undef IN_FILE -#define IN_FILE defined - -#undef IN_HEADER -#define IN_HEADER(x) 1 - -#if IN_HEADER(__G_BOXED_H__) -#if IN_FILE(__G_BOXED_C__) -#undef g_boxed_copy -extern __typeof (g_boxed_copy) g_boxed_copy __attribute((alias("IA__g_boxed_copy"), visibility("default"))); - -#undef g_boxed_free -extern __typeof (g_boxed_free) g_boxed_free __attribute((alias("IA__g_boxed_free"), visibility("default"))); - -#undef g_boxed_type_register_static -extern __typeof (g_boxed_type_register_static) g_boxed_type_register_static __attribute((alias("IA__g_boxed_type_register_static"), visibility("default"))); - -#undef g_date_get_type -extern __typeof (g_date_get_type) g_date_get_type __attribute((alias("IA__g_date_get_type"), visibility("default"))); - -#undef g_gstring_get_type -extern __typeof (g_gstring_get_type) g_gstring_get_type __attribute((alias("IA__g_gstring_get_type"), visibility("default"))); - -#undef g_strv_get_type -extern __typeof (g_strv_get_type) g_strv_get_type __attribute((alias("IA__g_strv_get_type"), visibility("default"))); - -#undef g_hash_table_get_type -extern __typeof (g_hash_table_get_type) g_hash_table_get_type __attribute((alias("IA__g_hash_table_get_type"), visibility("default"))); - -#undef g_array_get_type -extern __typeof (g_array_get_type) g_array_get_type __attribute((alias("IA__g_array_get_type"), visibility("default"))); - -#undef g_byte_array_get_type -extern __typeof (g_byte_array_get_type) g_byte_array_get_type __attribute((alias("IA__g_byte_array_get_type"), visibility("default"))); - -#undef g_ptr_array_get_type -extern __typeof (g_ptr_array_get_type) g_ptr_array_get_type __attribute((alias("IA__g_ptr_array_get_type"), visibility("default"))); - -#undef g_regex_get_type -extern __typeof (g_regex_get_type) g_regex_get_type __attribute((alias("IA__g_regex_get_type"), visibility("default"))); - -#undef g_variant_type_get_gtype -extern __typeof (g_variant_type_get_gtype) g_variant_type_get_gtype __attribute((alias("IA__g_variant_type_get_gtype"), visibility("default"))); - -#undef g_variant_get_gtype -extern __typeof (g_variant_get_gtype) g_variant_get_gtype __attribute((alias("IA__g_variant_get_gtype"), visibility("default"))); - -#undef g_closure_get_type -extern __typeof (g_closure_get_type) g_closure_get_type __attribute((alias("IA__g_closure_get_type"), visibility("default"))); - -#undef g_value_get_type -extern __typeof (g_value_get_type) g_value_get_type __attribute((alias("IA__g_value_get_type"), visibility("default"))); - -#undef g_value_array_get_type -extern __typeof (g_value_array_get_type) g_value_array_get_type __attribute((alias("IA__g_value_array_get_type"), visibility("default"))); - -#undef g_value_set_boxed -extern __typeof (g_value_set_boxed) g_value_set_boxed __attribute((alias("IA__g_value_set_boxed"), visibility("default"))); - -#undef g_value_take_boxed -extern __typeof (g_value_take_boxed) g_value_take_boxed __attribute((alias("IA__g_value_take_boxed"), visibility("default"))); - -#undef g_value_dup_boxed -extern __typeof (g_value_dup_boxed) g_value_dup_boxed __attribute((alias("IA__g_value_dup_boxed"), visibility("default"))); - -#undef g_value_get_boxed -extern __typeof (g_value_get_boxed) g_value_get_boxed __attribute((alias("IA__g_value_get_boxed"), visibility("default"))); - -#undef g_value_set_static_boxed -extern __typeof (g_value_set_static_boxed) g_value_set_static_boxed __attribute((alias("IA__g_value_set_static_boxed"), visibility("default"))); - -#ifndef G_DISABLE_DEPRECATED -#undef g_value_set_boxed_take_ownership -extern __typeof (g_value_set_boxed_take_ownership) g_value_set_boxed_take_ownership __attribute((alias("IA__g_value_set_boxed_take_ownership"), visibility("default"))); - -#endif -#endif -#endif -#if IN_HEADER(__G_MARSHAL_H__) -#if IN_FILE(__G_SIGNAL_C__) -#undef g_cclosure_marshal_BOOLEAN__FLAGS -extern __typeof (g_cclosure_marshal_BOOLEAN__FLAGS) g_cclosure_marshal_BOOLEAN__FLAGS __attribute((alias("IA__g_cclosure_marshal_BOOLEAN__FLAGS"), visibility("default"))); - -#undef g_cclosure_marshal_STRING__OBJECT_POINTER -extern __typeof (g_cclosure_marshal_STRING__OBJECT_POINTER) g_cclosure_marshal_STRING__OBJECT_POINTER __attribute((alias("IA__g_cclosure_marshal_STRING__OBJECT_POINTER"), visibility("default"))); - -#undef g_cclosure_marshal_VOID__BOOLEAN -extern __typeof (g_cclosure_marshal_VOID__BOOLEAN) g_cclosure_marshal_VOID__BOOLEAN __attribute((alias("IA__g_cclosure_marshal_VOID__BOOLEAN"), visibility("default"))); - -#undef g_cclosure_marshal_VOID__BOXED -extern __typeof (g_cclosure_marshal_VOID__BOXED) g_cclosure_marshal_VOID__BOXED __attribute((alias("IA__g_cclosure_marshal_VOID__BOXED"), visibility("default"))); - -#undef g_cclosure_marshal_VOID__CHAR -extern __typeof (g_cclosure_marshal_VOID__CHAR) g_cclosure_marshal_VOID__CHAR __attribute((alias("IA__g_cclosure_marshal_VOID__CHAR"), visibility("default"))); - -#undef g_cclosure_marshal_VOID__DOUBLE -extern __typeof (g_cclosure_marshal_VOID__DOUBLE) g_cclosure_marshal_VOID__DOUBLE __attribute((alias("IA__g_cclosure_marshal_VOID__DOUBLE"), visibility("default"))); - -#undef g_cclosure_marshal_VOID__ENUM -extern __typeof (g_cclosure_marshal_VOID__ENUM) g_cclosure_marshal_VOID__ENUM __attribute((alias("IA__g_cclosure_marshal_VOID__ENUM"), visibility("default"))); - -#undef g_cclosure_marshal_VOID__FLAGS -extern __typeof (g_cclosure_marshal_VOID__FLAGS) g_cclosure_marshal_VOID__FLAGS __attribute((alias("IA__g_cclosure_marshal_VOID__FLAGS"), visibility("default"))); - -#undef g_cclosure_marshal_VOID__FLOAT -extern __typeof (g_cclosure_marshal_VOID__FLOAT) g_cclosure_marshal_VOID__FLOAT __attribute((alias("IA__g_cclosure_marshal_VOID__FLOAT"), visibility("default"))); - -#undef g_cclosure_marshal_VOID__INT -extern __typeof (g_cclosure_marshal_VOID__INT) g_cclosure_marshal_VOID__INT __attribute((alias("IA__g_cclosure_marshal_VOID__INT"), visibility("default"))); - -#undef g_cclosure_marshal_VOID__LONG -extern __typeof (g_cclosure_marshal_VOID__LONG) g_cclosure_marshal_VOID__LONG __attribute((alias("IA__g_cclosure_marshal_VOID__LONG"), visibility("default"))); - -#undef g_cclosure_marshal_VOID__OBJECT -extern __typeof (g_cclosure_marshal_VOID__OBJECT) g_cclosure_marshal_VOID__OBJECT __attribute((alias("IA__g_cclosure_marshal_VOID__OBJECT"), visibility("default"))); - -#undef g_cclosure_marshal_VOID__PARAM -extern __typeof (g_cclosure_marshal_VOID__PARAM) g_cclosure_marshal_VOID__PARAM __attribute((alias("IA__g_cclosure_marshal_VOID__PARAM"), visibility("default"))); - -#undef g_cclosure_marshal_VOID__POINTER -extern __typeof (g_cclosure_marshal_VOID__POINTER) g_cclosure_marshal_VOID__POINTER __attribute((alias("IA__g_cclosure_marshal_VOID__POINTER"), visibility("default"))); - -#undef g_cclosure_marshal_VOID__STRING -extern __typeof (g_cclosure_marshal_VOID__STRING) g_cclosure_marshal_VOID__STRING __attribute((alias("IA__g_cclosure_marshal_VOID__STRING"), visibility("default"))); - -#undef g_cclosure_marshal_VOID__UCHAR -extern __typeof (g_cclosure_marshal_VOID__UCHAR) g_cclosure_marshal_VOID__UCHAR __attribute((alias("IA__g_cclosure_marshal_VOID__UCHAR"), visibility("default"))); - -#undef g_cclosure_marshal_VOID__UINT -extern __typeof (g_cclosure_marshal_VOID__UINT) g_cclosure_marshal_VOID__UINT __attribute((alias("IA__g_cclosure_marshal_VOID__UINT"), visibility("default"))); - -#undef g_cclosure_marshal_VOID__UINT_POINTER -extern __typeof (g_cclosure_marshal_VOID__UINT_POINTER) g_cclosure_marshal_VOID__UINT_POINTER __attribute((alias("IA__g_cclosure_marshal_VOID__UINT_POINTER"), visibility("default"))); - -#undef g_cclosure_marshal_VOID__ULONG -extern __typeof (g_cclosure_marshal_VOID__ULONG) g_cclosure_marshal_VOID__ULONG __attribute((alias("IA__g_cclosure_marshal_VOID__ULONG"), visibility("default"))); - -#undef g_cclosure_marshal_VOID__VOID -extern __typeof (g_cclosure_marshal_VOID__VOID) g_cclosure_marshal_VOID__VOID __attribute((alias("IA__g_cclosure_marshal_VOID__VOID"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_CLOSURE_H__) -#if IN_FILE(__G_CLOSURE_C__) -#undef g_cclosure_new -extern __typeof (g_cclosure_new) g_cclosure_new __attribute((alias("IA__g_cclosure_new"), visibility("default"))); - -#undef g_cclosure_new_swap -extern __typeof (g_cclosure_new_swap) g_cclosure_new_swap __attribute((alias("IA__g_cclosure_new_swap"), visibility("default"))); - -#undef g_closure_add_finalize_notifier -extern __typeof (g_closure_add_finalize_notifier) g_closure_add_finalize_notifier __attribute((alias("IA__g_closure_add_finalize_notifier"), visibility("default"))); - -#undef g_closure_add_invalidate_notifier -extern __typeof (g_closure_add_invalidate_notifier) g_closure_add_invalidate_notifier __attribute((alias("IA__g_closure_add_invalidate_notifier"), visibility("default"))); - -#undef g_closure_add_marshal_guards -extern __typeof (g_closure_add_marshal_guards) g_closure_add_marshal_guards __attribute((alias("IA__g_closure_add_marshal_guards"), visibility("default"))); - -#undef g_closure_invalidate -extern __typeof (g_closure_invalidate) g_closure_invalidate __attribute((alias("IA__g_closure_invalidate"), visibility("default"))); - -#undef g_closure_invoke -extern __typeof (g_closure_invoke) g_closure_invoke __attribute((alias("IA__g_closure_invoke"), visibility("default"))); - -#undef g_closure_new_simple -extern __typeof (g_closure_new_simple) g_closure_new_simple __attribute((alias("IA__g_closure_new_simple"), visibility("default"))); - -#undef g_closure_ref -extern __typeof (g_closure_ref) g_closure_ref __attribute((alias("IA__g_closure_ref"), visibility("default"))); - -#undef g_closure_remove_finalize_notifier -extern __typeof (g_closure_remove_finalize_notifier) g_closure_remove_finalize_notifier __attribute((alias("IA__g_closure_remove_finalize_notifier"), visibility("default"))); - -#undef g_closure_remove_invalidate_notifier -extern __typeof (g_closure_remove_invalidate_notifier) g_closure_remove_invalidate_notifier __attribute((alias("IA__g_closure_remove_invalidate_notifier"), visibility("default"))); - -#undef g_closure_set_marshal -extern __typeof (g_closure_set_marshal) g_closure_set_marshal __attribute((alias("IA__g_closure_set_marshal"), visibility("default"))); - -#undef g_closure_set_meta_marshal -extern __typeof (g_closure_set_meta_marshal) g_closure_set_meta_marshal __attribute((alias("IA__g_closure_set_meta_marshal"), visibility("default"))); - -#undef g_closure_sink -extern __typeof (g_closure_sink) g_closure_sink __attribute((alias("IA__g_closure_sink"), visibility("default"))); - -#undef g_closure_unref -extern __typeof (g_closure_unref) g_closure_unref __attribute((alias("IA__g_closure_unref"), visibility("default"))); - -#undef g_signal_type_cclosure_new -extern __typeof (g_signal_type_cclosure_new) g_signal_type_cclosure_new __attribute((alias("IA__g_signal_type_cclosure_new"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_ENUMS_H__) -#if IN_FILE(__G_ENUMS_C__) -#undef g_enum_complete_type_info -extern __typeof (g_enum_complete_type_info) g_enum_complete_type_info __attribute((alias("IA__g_enum_complete_type_info"), visibility("default"))); - -#undef g_enum_get_value -extern __typeof (g_enum_get_value) g_enum_get_value __attribute((alias("IA__g_enum_get_value"), visibility("default"))); - -#undef g_enum_get_value_by_name -extern __typeof (g_enum_get_value_by_name) g_enum_get_value_by_name __attribute((alias("IA__g_enum_get_value_by_name"), visibility("default"))); - -#undef g_enum_get_value_by_nick -extern __typeof (g_enum_get_value_by_nick) g_enum_get_value_by_nick __attribute((alias("IA__g_enum_get_value_by_nick"), visibility("default"))); - -#undef g_enum_register_static -extern __typeof (g_enum_register_static) g_enum_register_static __attribute((alias("IA__g_enum_register_static"), visibility("default"))); - -#undef g_flags_complete_type_info -extern __typeof (g_flags_complete_type_info) g_flags_complete_type_info __attribute((alias("IA__g_flags_complete_type_info"), visibility("default"))); - -#undef g_flags_get_first_value -extern __typeof (g_flags_get_first_value) g_flags_get_first_value __attribute((alias("IA__g_flags_get_first_value"), visibility("default"))); - -#undef g_flags_get_value_by_name -extern __typeof (g_flags_get_value_by_name) g_flags_get_value_by_name __attribute((alias("IA__g_flags_get_value_by_name"), visibility("default"))); - -#undef g_flags_get_value_by_nick -extern __typeof (g_flags_get_value_by_nick) g_flags_get_value_by_nick __attribute((alias("IA__g_flags_get_value_by_nick"), visibility("default"))); - -#undef g_flags_register_static -extern __typeof (g_flags_register_static) g_flags_register_static __attribute((alias("IA__g_flags_register_static"), visibility("default"))); - -#undef g_value_set_enum -extern __typeof (g_value_set_enum) g_value_set_enum __attribute((alias("IA__g_value_set_enum"), visibility("default"))); - -#undef g_value_set_flags -extern __typeof (g_value_set_flags) g_value_set_flags __attribute((alias("IA__g_value_set_flags"), visibility("default"))); - -#undef g_value_get_enum -extern __typeof (g_value_get_enum) g_value_get_enum __attribute((alias("IA__g_value_get_enum"), visibility("default"))); - -#undef g_value_get_flags -extern __typeof (g_value_get_flags) g_value_get_flags __attribute((alias("IA__g_value_get_flags"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_SOURCECLOSURE_H__) -#if IN_FILE(__G_SOURCECLOSURE_C__) -#undef g_io_channel_get_type -extern __typeof (g_io_channel_get_type) g_io_channel_get_type __attribute((alias("IA__g_io_channel_get_type"), visibility("default"))); - -#undef g_io_condition_get_type -extern __typeof (g_io_condition_get_type) g_io_condition_get_type __attribute((alias("IA__g_io_condition_get_type"), visibility("default"))); - -#undef g_source_set_closure -extern __typeof (g_source_set_closure) g_source_set_closure __attribute((alias("IA__g_source_set_closure"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_OBJECT_H__) -#if IN_FILE(__G_OBJECT_C__) -#undef g_cclosure_new_object -extern __typeof (g_cclosure_new_object) g_cclosure_new_object __attribute((alias("IA__g_cclosure_new_object"), visibility("default"))); - -#undef g_cclosure_new_object_swap -extern __typeof (g_cclosure_new_object_swap) g_cclosure_new_object_swap __attribute((alias("IA__g_cclosure_new_object_swap"), visibility("default"))); - -#undef g_closure_new_object -extern __typeof (g_closure_new_object) g_closure_new_object __attribute((alias("IA__g_closure_new_object"), visibility("default"))); - -#undef g_initially_unowned_get_type -extern __typeof (g_initially_unowned_get_type) g_initially_unowned_get_type __attribute((alias("IA__g_initially_unowned_get_type"), visibility("default"))); - -#undef g_object_add_weak_pointer -extern __typeof (g_object_add_weak_pointer) g_object_add_weak_pointer __attribute((alias("IA__g_object_add_weak_pointer"), visibility("default"))); - -#undef g_object_class_find_property -extern __typeof (g_object_class_find_property) g_object_class_find_property __attribute((alias("IA__g_object_class_find_property"), visibility("default"))); - -#undef g_object_class_install_property -extern __typeof (g_object_class_install_property) g_object_class_install_property __attribute((alias("IA__g_object_class_install_property"), visibility("default"))); - -#undef g_object_class_list_properties -extern __typeof (g_object_class_list_properties) g_object_class_list_properties __attribute((alias("IA__g_object_class_list_properties"), visibility("default"))); - -#undef g_object_class_override_property -extern __typeof (g_object_class_override_property) g_object_class_override_property __attribute((alias("IA__g_object_class_override_property"), visibility("default"))); - -#undef g_object_connect -extern __typeof (g_object_connect) g_object_connect __attribute((alias("IA__g_object_connect"), visibility("default"))); - -#undef g_object_disconnect -extern __typeof (g_object_disconnect) g_object_disconnect __attribute((alias("IA__g_object_disconnect"), visibility("default"))); - -#undef g_object_freeze_notify -extern __typeof (g_object_freeze_notify) g_object_freeze_notify __attribute((alias("IA__g_object_freeze_notify"), visibility("default"))); - -#undef g_object_get -extern __typeof (g_object_get) g_object_get __attribute((alias("IA__g_object_get"), visibility("default"))); - -#undef g_object_get_data -extern __typeof (g_object_get_data) g_object_get_data __attribute((alias("IA__g_object_get_data"), visibility("default"))); - -#undef g_object_get_property -extern __typeof (g_object_get_property) g_object_get_property __attribute((alias("IA__g_object_get_property"), visibility("default"))); - -#undef g_object_get_qdata -extern __typeof (g_object_get_qdata) g_object_get_qdata __attribute((alias("IA__g_object_get_qdata"), visibility("default"))); - -#undef g_object_get_type -extern __typeof (g_object_get_type) g_object_get_type __attribute((alias("IA__g_object_get_type"), visibility("default"))); - -#undef g_object_get_valist -extern __typeof (g_object_get_valist) g_object_get_valist __attribute((alias("IA__g_object_get_valist"), visibility("default"))); - -#undef g_object_interface_find_property -extern __typeof (g_object_interface_find_property) g_object_interface_find_property __attribute((alias("IA__g_object_interface_find_property"), visibility("default"))); - -#undef g_object_interface_install_property -extern __typeof (g_object_interface_install_property) g_object_interface_install_property __attribute((alias("IA__g_object_interface_install_property"), visibility("default"))); - -#undef g_object_interface_list_properties -extern __typeof (g_object_interface_list_properties) g_object_interface_list_properties __attribute((alias("IA__g_object_interface_list_properties"), visibility("default"))); - -#undef g_object_new -extern __typeof (g_object_new) g_object_new __attribute((alias("IA__g_object_new"), visibility("default"))); - -#undef g_object_newv -extern __typeof (g_object_newv) g_object_newv __attribute((alias("IA__g_object_newv"), visibility("default"))); - -#undef g_object_new_valist -extern __typeof (g_object_new_valist) g_object_new_valist __attribute((alias("IA__g_object_new_valist"), visibility("default"))); - -#undef g_object_notify -extern __typeof (g_object_notify) g_object_notify __attribute((alias("IA__g_object_notify"), visibility("default"))); - -#undef g_object_is_floating -extern __typeof (g_object_is_floating) g_object_is_floating __attribute((alias("IA__g_object_is_floating"), visibility("default"))); - -#undef g_object_ref_sink -extern __typeof (g_object_ref_sink) g_object_ref_sink __attribute((alias("IA__g_object_ref_sink"), visibility("default"))); - -#undef g_object_force_floating -extern __typeof (g_object_force_floating) g_object_force_floating __attribute((alias("IA__g_object_force_floating"), visibility("default"))); - -#undef g_object_ref -extern __typeof (g_object_ref) g_object_ref __attribute((alias("IA__g_object_ref"), visibility("default"))); - -#undef g_object_unref -extern __typeof (g_object_unref) g_object_unref __attribute((alias("IA__g_object_unref"), visibility("default"))); - -#undef g_object_remove_weak_pointer -extern __typeof (g_object_remove_weak_pointer) g_object_remove_weak_pointer __attribute((alias("IA__g_object_remove_weak_pointer"), visibility("default"))); - -#undef g_object_run_dispose -extern __typeof (g_object_run_dispose) g_object_run_dispose __attribute((alias("IA__g_object_run_dispose"), visibility("default"))); - -#undef g_object_set -extern __typeof (g_object_set) g_object_set __attribute((alias("IA__g_object_set"), visibility("default"))); - -#undef g_object_set_data -extern __typeof (g_object_set_data) g_object_set_data __attribute((alias("IA__g_object_set_data"), visibility("default"))); - -#undef g_object_set_data_full -extern __typeof (g_object_set_data_full) g_object_set_data_full __attribute((alias("IA__g_object_set_data_full"), visibility("default"))); - -#undef g_object_set_property -extern __typeof (g_object_set_property) g_object_set_property __attribute((alias("IA__g_object_set_property"), visibility("default"))); - -#undef g_object_set_qdata -extern __typeof (g_object_set_qdata) g_object_set_qdata __attribute((alias("IA__g_object_set_qdata"), visibility("default"))); - -#undef g_object_set_qdata_full -extern __typeof (g_object_set_qdata_full) g_object_set_qdata_full __attribute((alias("IA__g_object_set_qdata_full"), visibility("default"))); - -#undef g_object_set_valist -extern __typeof (g_object_set_valist) g_object_set_valist __attribute((alias("IA__g_object_set_valist"), visibility("default"))); - -#undef g_object_steal_data -extern __typeof (g_object_steal_data) g_object_steal_data __attribute((alias("IA__g_object_steal_data"), visibility("default"))); - -#undef g_object_steal_qdata -extern __typeof (g_object_steal_qdata) g_object_steal_qdata __attribute((alias("IA__g_object_steal_qdata"), visibility("default"))); - -#undef g_object_thaw_notify -extern __typeof (g_object_thaw_notify) g_object_thaw_notify __attribute((alias("IA__g_object_thaw_notify"), visibility("default"))); - -#undef g_object_watch_closure -extern __typeof (g_object_watch_closure) g_object_watch_closure __attribute((alias("IA__g_object_watch_closure"), visibility("default"))); - -#undef g_object_weak_ref -extern __typeof (g_object_weak_ref) g_object_weak_ref __attribute((alias("IA__g_object_weak_ref"), visibility("default"))); - -#undef g_object_weak_unref -extern __typeof (g_object_weak_unref) g_object_weak_unref __attribute((alias("IA__g_object_weak_unref"), visibility("default"))); - -#undef g_object_add_toggle_ref -extern __typeof (g_object_add_toggle_ref) g_object_add_toggle_ref __attribute((alias("IA__g_object_add_toggle_ref"), visibility("default"))); - -#undef g_object_remove_toggle_ref -extern __typeof (g_object_remove_toggle_ref) g_object_remove_toggle_ref __attribute((alias("IA__g_object_remove_toggle_ref"), visibility("default"))); - -#undef g_value_get_object -extern __typeof (g_value_get_object) g_value_get_object __attribute((alias("IA__g_value_get_object"), visibility("default"))); - -#undef g_value_set_object -extern __typeof (g_value_set_object) g_value_set_object __attribute((alias("IA__g_value_set_object"), visibility("default"))); - -#undef g_value_dup_object -extern __typeof (g_value_dup_object) g_value_dup_object __attribute((alias("IA__g_value_dup_object"), visibility("default"))); - -#undef g_value_take_object -extern __typeof (g_value_take_object) g_value_take_object __attribute((alias("IA__g_value_take_object"), visibility("default"))); - -#ifndef G_DISABLE_DEPRECATED -#undef g_value_set_object_take_ownership -extern __typeof (g_value_set_object_take_ownership) g_value_set_object_take_ownership __attribute((alias("IA__g_value_set_object_take_ownership"), visibility("default"))); - -#undef g_object_compat_control -extern __typeof (g_object_compat_control) g_object_compat_control __attribute((alias("IA__g_object_compat_control"), visibility("default"))); - -#endif -#undef g_signal_connect_object -extern __typeof (g_signal_connect_object) g_signal_connect_object __attribute((alias("IA__g_signal_connect_object"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_PARAMSPECS_H__) -#if IN_FILE(__G_PARAMSPECS_C__) -#undef g_param_spec_boolean -extern __typeof (g_param_spec_boolean) g_param_spec_boolean __attribute((alias("IA__g_param_spec_boolean"), visibility("default"))); - -#undef g_param_spec_boxed -extern __typeof (g_param_spec_boxed) g_param_spec_boxed __attribute((alias("IA__g_param_spec_boxed"), visibility("default"))); - -#undef g_param_spec_char -extern __typeof (g_param_spec_char) g_param_spec_char __attribute((alias("IA__g_param_spec_char"), visibility("default"))); - -#undef g_param_spec_double -extern __typeof (g_param_spec_double) g_param_spec_double __attribute((alias("IA__g_param_spec_double"), visibility("default"))); - -#undef g_param_spec_enum -extern __typeof (g_param_spec_enum) g_param_spec_enum __attribute((alias("IA__g_param_spec_enum"), visibility("default"))); - -#undef g_param_spec_flags -extern __typeof (g_param_spec_flags) g_param_spec_flags __attribute((alias("IA__g_param_spec_flags"), visibility("default"))); - -#undef g_param_spec_float -extern __typeof (g_param_spec_float) g_param_spec_float __attribute((alias("IA__g_param_spec_float"), visibility("default"))); - -#undef g_param_spec_int -extern __typeof (g_param_spec_int) g_param_spec_int __attribute((alias("IA__g_param_spec_int"), visibility("default"))); - -#undef g_param_spec_int64 -extern __typeof (g_param_spec_int64) g_param_spec_int64 __attribute((alias("IA__g_param_spec_int64"), visibility("default"))); - -#undef g_param_spec_long -extern __typeof (g_param_spec_long) g_param_spec_long __attribute((alias("IA__g_param_spec_long"), visibility("default"))); - -#undef g_param_spec_object -extern __typeof (g_param_spec_object) g_param_spec_object __attribute((alias("IA__g_param_spec_object"), visibility("default"))); - -#undef g_param_spec_override -extern __typeof (g_param_spec_override) g_param_spec_override __attribute((alias("IA__g_param_spec_override"), visibility("default"))); - -#undef g_param_spec_gtype -extern __typeof (g_param_spec_gtype) g_param_spec_gtype __attribute((alias("IA__g_param_spec_gtype"), visibility("default"))); - -#undef g_param_spec_param -extern __typeof (g_param_spec_param) g_param_spec_param __attribute((alias("IA__g_param_spec_param"), visibility("default"))); - -#undef g_param_spec_pointer -extern __typeof (g_param_spec_pointer) g_param_spec_pointer __attribute((alias("IA__g_param_spec_pointer"), visibility("default"))); - -#undef g_param_spec_string -extern __typeof (g_param_spec_string) g_param_spec_string __attribute((alias("IA__g_param_spec_string"), visibility("default"))); - -#undef g_param_spec_uchar -extern __typeof (g_param_spec_uchar) g_param_spec_uchar __attribute((alias("IA__g_param_spec_uchar"), visibility("default"))); - -#undef g_param_spec_uint -extern __typeof (g_param_spec_uint) g_param_spec_uint __attribute((alias("IA__g_param_spec_uint"), visibility("default"))); - -#undef g_param_spec_uint64 -extern __typeof (g_param_spec_uint64) g_param_spec_uint64 __attribute((alias("IA__g_param_spec_uint64"), visibility("default"))); - -#undef g_param_spec_ulong -extern __typeof (g_param_spec_ulong) g_param_spec_ulong __attribute((alias("IA__g_param_spec_ulong"), visibility("default"))); - -#undef g_param_spec_unichar -extern __typeof (g_param_spec_unichar) g_param_spec_unichar __attribute((alias("IA__g_param_spec_unichar"), visibility("default"))); - -#undef g_param_spec_value_array -extern __typeof (g_param_spec_value_array) g_param_spec_value_array __attribute((alias("IA__g_param_spec_value_array"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_PARAM_H__) -#if IN_FILE(__G_PARAM_C__) -#undef g_param_spec_get_blurb -extern __typeof (g_param_spec_get_blurb) g_param_spec_get_blurb __attribute((alias("IA__g_param_spec_get_blurb"), visibility("default"))); - -#undef g_param_spec_get_name -extern __typeof (g_param_spec_get_name) g_param_spec_get_name __attribute((alias("IA__g_param_spec_get_name"), visibility("default"))); - -#undef g_param_spec_get_nick -extern __typeof (g_param_spec_get_nick) g_param_spec_get_nick __attribute((alias("IA__g_param_spec_get_nick"), visibility("default"))); - -#undef g_param_spec_get_redirect_target -extern __typeof (g_param_spec_get_redirect_target) g_param_spec_get_redirect_target __attribute((alias("IA__g_param_spec_get_redirect_target"), visibility("default"))); - -#undef g_param_spec_internal -extern __typeof (g_param_spec_internal) g_param_spec_internal __attribute((alias("IA__g_param_spec_internal"), visibility("default"))); - -#undef g_param_type_register_static -extern __typeof (g_param_type_register_static) g_param_type_register_static __attribute((alias("IA__g_param_type_register_static"), visibility("default"))); - -#undef g_param_spec_ref -extern __typeof (g_param_spec_ref) g_param_spec_ref __attribute((alias("IA__g_param_spec_ref"), visibility("default"))); - -#undef g_param_spec_ref_sink -extern __typeof (g_param_spec_ref_sink) g_param_spec_ref_sink __attribute((alias("IA__g_param_spec_ref_sink"), visibility("default"))); - -#undef g_param_spec_unref -extern __typeof (g_param_spec_unref) g_param_spec_unref __attribute((alias("IA__g_param_spec_unref"), visibility("default"))); - -#undef g_param_spec_sink -extern __typeof (g_param_spec_sink) g_param_spec_sink __attribute((alias("IA__g_param_spec_sink"), visibility("default"))); - -#undef g_param_spec_steal_qdata -extern __typeof (g_param_spec_steal_qdata) g_param_spec_steal_qdata __attribute((alias("IA__g_param_spec_steal_qdata"), visibility("default"))); - -#undef g_param_spec_set_qdata -extern __typeof (g_param_spec_set_qdata) g_param_spec_set_qdata __attribute((alias("IA__g_param_spec_set_qdata"), visibility("default"))); - -#undef g_param_spec_set_qdata_full -extern __typeof (g_param_spec_set_qdata_full) g_param_spec_set_qdata_full __attribute((alias("IA__g_param_spec_set_qdata_full"), visibility("default"))); - -#undef g_param_spec_get_qdata -extern __typeof (g_param_spec_get_qdata) g_param_spec_get_qdata __attribute((alias("IA__g_param_spec_get_qdata"), visibility("default"))); - -#undef g_param_value_convert -extern __typeof (g_param_value_convert) g_param_value_convert __attribute((alias("IA__g_param_value_convert"), visibility("default"))); - -#undef g_param_value_defaults -extern __typeof (g_param_value_defaults) g_param_value_defaults __attribute((alias("IA__g_param_value_defaults"), visibility("default"))); - -#undef g_param_values_cmp -extern __typeof (g_param_values_cmp) g_param_values_cmp __attribute((alias("IA__g_param_values_cmp"), visibility("default"))); - -#undef g_param_value_set_default -extern __typeof (g_param_value_set_default) g_param_value_set_default __attribute((alias("IA__g_param_value_set_default"), visibility("default"))); - -#undef g_param_value_validate -extern __typeof (g_param_value_validate) g_param_value_validate __attribute((alias("IA__g_param_value_validate"), visibility("default"))); - -#undef g_param_spec_pool_insert -extern __typeof (g_param_spec_pool_insert) g_param_spec_pool_insert __attribute((alias("IA__g_param_spec_pool_insert"), visibility("default"))); - -#undef g_param_spec_pool_list -extern __typeof (g_param_spec_pool_list) g_param_spec_pool_list __attribute((alias("IA__g_param_spec_pool_list"), visibility("default"))); - -#undef g_param_spec_pool_list_owned -extern __typeof (g_param_spec_pool_list_owned) g_param_spec_pool_list_owned __attribute((alias("IA__g_param_spec_pool_list_owned"), visibility("default"))); - -#undef g_param_spec_pool_lookup -extern __typeof (g_param_spec_pool_lookup) g_param_spec_pool_lookup __attribute((alias("IA__g_param_spec_pool_lookup"), visibility("default"))); - -#undef g_param_spec_pool_new -extern __typeof (g_param_spec_pool_new) g_param_spec_pool_new __attribute((alias("IA__g_param_spec_pool_new"), visibility("default"))); - -#undef g_param_spec_pool_remove -extern __typeof (g_param_spec_pool_remove) g_param_spec_pool_remove __attribute((alias("IA__g_param_spec_pool_remove"), visibility("default"))); - -#undef g_value_get_param -extern __typeof (g_value_get_param) g_value_get_param __attribute((alias("IA__g_value_get_param"), visibility("default"))); - -#undef g_value_set_param -extern __typeof (g_value_set_param) g_value_set_param __attribute((alias("IA__g_value_set_param"), visibility("default"))); - -#undef g_value_dup_param -extern __typeof (g_value_dup_param) g_value_dup_param __attribute((alias("IA__g_value_dup_param"), visibility("default"))); - -#undef g_value_take_param -extern __typeof (g_value_take_param) g_value_take_param __attribute((alias("IA__g_value_take_param"), visibility("default"))); - -#ifndef G_DISABLE_DEPRECATED -#undef g_value_set_param_take_ownership -extern __typeof (g_value_set_param_take_ownership) g_value_set_param_take_ownership __attribute((alias("IA__g_value_set_param_take_ownership"), visibility("default"))); - -#endif -#endif -#endif -#if IN_HEADER(__G_VALUETYPES_H__) -#if IN_FILE(__G_VALUETYPES_C__) -#undef g_pointer_type_register_static -extern __typeof (g_pointer_type_register_static) g_pointer_type_register_static __attribute((alias("IA__g_pointer_type_register_static"), visibility("default"))); - -#undef g_strdup_value_contents -extern __typeof (g_strdup_value_contents) g_strdup_value_contents __attribute((alias("IA__g_strdup_value_contents"), visibility("default"))); - -#undef g_value_set_boolean -extern __typeof (g_value_set_boolean) g_value_set_boolean __attribute((alias("IA__g_value_set_boolean"), visibility("default"))); - -#undef g_value_set_char -extern __typeof (g_value_set_char) g_value_set_char __attribute((alias("IA__g_value_set_char"), visibility("default"))); - -#undef g_value_set_double -extern __typeof (g_value_set_double) g_value_set_double __attribute((alias("IA__g_value_set_double"), visibility("default"))); - -#undef g_value_set_float -extern __typeof (g_value_set_float) g_value_set_float __attribute((alias("IA__g_value_set_float"), visibility("default"))); - -#undef g_value_set_int -extern __typeof (g_value_set_int) g_value_set_int __attribute((alias("IA__g_value_set_int"), visibility("default"))); - -#undef g_value_set_int64 -extern __typeof (g_value_set_int64) g_value_set_int64 __attribute((alias("IA__g_value_set_int64"), visibility("default"))); - -#undef g_value_set_long -extern __typeof (g_value_set_long) g_value_set_long __attribute((alias("IA__g_value_set_long"), visibility("default"))); - -#undef g_value_set_pointer -extern __typeof (g_value_set_pointer) g_value_set_pointer __attribute((alias("IA__g_value_set_pointer"), visibility("default"))); - -#undef g_value_set_static_string -extern __typeof (g_value_set_static_string) g_value_set_static_string __attribute((alias("IA__g_value_set_static_string"), visibility("default"))); - -#undef g_value_set_string -extern __typeof (g_value_set_string) g_value_set_string __attribute((alias("IA__g_value_set_string"), visibility("default"))); - -#ifndef G_DISABLE_DEPRECATED -#undef g_value_set_string_take_ownership -extern __typeof (g_value_set_string_take_ownership) g_value_set_string_take_ownership __attribute((alias("IA__g_value_set_string_take_ownership"), visibility("default"))); - -#endif -#undef g_value_set_uchar -extern __typeof (g_value_set_uchar) g_value_set_uchar __attribute((alias("IA__g_value_set_uchar"), visibility("default"))); - -#undef g_value_set_uint -extern __typeof (g_value_set_uint) g_value_set_uint __attribute((alias("IA__g_value_set_uint"), visibility("default"))); - -#undef g_value_set_uint64 -extern __typeof (g_value_set_uint64) g_value_set_uint64 __attribute((alias("IA__g_value_set_uint64"), visibility("default"))); - -#undef g_value_set_ulong -extern __typeof (g_value_set_ulong) g_value_set_ulong __attribute((alias("IA__g_value_set_ulong"), visibility("default"))); - -#undef g_value_dup_string -extern __typeof (g_value_dup_string) g_value_dup_string __attribute((alias("IA__g_value_dup_string"), visibility("default"))); - -#undef g_value_get_boolean -extern __typeof (g_value_get_boolean) g_value_get_boolean __attribute((alias("IA__g_value_get_boolean"), visibility("default"))); - -#undef g_value_get_char -extern __typeof (g_value_get_char) g_value_get_char __attribute((alias("IA__g_value_get_char"), visibility("default"))); - -#undef g_value_get_double -extern __typeof (g_value_get_double) g_value_get_double __attribute((alias("IA__g_value_get_double"), visibility("default"))); - -#undef g_value_get_float -extern __typeof (g_value_get_float) g_value_get_float __attribute((alias("IA__g_value_get_float"), visibility("default"))); - -#undef g_value_get_int -extern __typeof (g_value_get_int) g_value_get_int __attribute((alias("IA__g_value_get_int"), visibility("default"))); - -#undef g_value_get_int64 -extern __typeof (g_value_get_int64) g_value_get_int64 __attribute((alias("IA__g_value_get_int64"), visibility("default"))); - -#undef g_value_get_long -extern __typeof (g_value_get_long) g_value_get_long __attribute((alias("IA__g_value_get_long"), visibility("default"))); - -#undef g_value_get_pointer -extern __typeof (g_value_get_pointer) g_value_get_pointer __attribute((alias("IA__g_value_get_pointer"), visibility("default"))); - -#undef g_value_get_string -extern __typeof (g_value_get_string) g_value_get_string __attribute((alias("IA__g_value_get_string"), visibility("default"))); - -#undef g_value_get_uchar -extern __typeof (g_value_get_uchar) g_value_get_uchar __attribute((alias("IA__g_value_get_uchar"), visibility("default"))); - -#undef g_value_get_uint -extern __typeof (g_value_get_uint) g_value_get_uint __attribute((alias("IA__g_value_get_uint"), visibility("default"))); - -#undef g_value_get_uint64 -extern __typeof (g_value_get_uint64) g_value_get_uint64 __attribute((alias("IA__g_value_get_uint64"), visibility("default"))); - -#undef g_value_get_ulong -extern __typeof (g_value_get_ulong) g_value_get_ulong __attribute((alias("IA__g_value_get_ulong"), visibility("default"))); - -#undef g_value_take_string -extern __typeof (g_value_take_string) g_value_take_string __attribute((alias("IA__g_value_take_string"), visibility("default"))); - -#undef g_gtype_get_type -extern __typeof (g_gtype_get_type) g_gtype_get_type __attribute((alias("IA__g_gtype_get_type"), visibility("default"))); - -#undef g_value_set_gtype -extern __typeof (g_value_set_gtype) g_value_set_gtype __attribute((alias("IA__g_value_set_gtype"), visibility("default"))); - -#undef g_value_get_gtype -extern __typeof (g_value_get_gtype) g_value_get_gtype __attribute((alias("IA__g_value_get_gtype"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_SIGNAL_H__) -#if IN_FILE(__G_SIGNAL_C__) -#undef g_signal_accumulator_true_handled -extern __typeof (g_signal_accumulator_true_handled) g_signal_accumulator_true_handled __attribute((alias("IA__g_signal_accumulator_true_handled"), visibility("default"))); - -#undef g_signal_add_emission_hook -extern __typeof (g_signal_add_emission_hook) g_signal_add_emission_hook __attribute((alias("IA__g_signal_add_emission_hook"), visibility("default"))); - -#undef g_signal_chain_from_overridden -extern __typeof (g_signal_chain_from_overridden) g_signal_chain_from_overridden __attribute((alias("IA__g_signal_chain_from_overridden"), visibility("default"))); - -#undef g_signal_chain_from_overridden_handler -extern __typeof (g_signal_chain_from_overridden_handler) g_signal_chain_from_overridden_handler __attribute((alias("IA__g_signal_chain_from_overridden_handler"), visibility("default"))); - -#undef g_signal_connect_closure -extern __typeof (g_signal_connect_closure) g_signal_connect_closure __attribute((alias("IA__g_signal_connect_closure"), visibility("default"))); - -#undef g_signal_connect_closure_by_id -extern __typeof (g_signal_connect_closure_by_id) g_signal_connect_closure_by_id __attribute((alias("IA__g_signal_connect_closure_by_id"), visibility("default"))); - -#undef g_signal_connect_data -extern __typeof (g_signal_connect_data) g_signal_connect_data __attribute((alias("IA__g_signal_connect_data"), visibility("default"))); - -#undef g_signal_emit -extern __typeof (g_signal_emit) g_signal_emit __attribute((alias("IA__g_signal_emit"), visibility("default"))); - -#undef g_signal_emit_by_name -extern __typeof (g_signal_emit_by_name) g_signal_emit_by_name __attribute((alias("IA__g_signal_emit_by_name"), visibility("default"))); - -#undef g_signal_emitv -extern __typeof (g_signal_emitv) g_signal_emitv __attribute((alias("IA__g_signal_emitv"), visibility("default"))); - -#undef g_signal_emit_valist -extern __typeof (g_signal_emit_valist) g_signal_emit_valist __attribute((alias("IA__g_signal_emit_valist"), visibility("default"))); - -#undef g_signal_get_invocation_hint -extern __typeof (g_signal_get_invocation_hint) g_signal_get_invocation_hint __attribute((alias("IA__g_signal_get_invocation_hint"), visibility("default"))); - -#undef g_signal_handler_block -extern __typeof (g_signal_handler_block) g_signal_handler_block __attribute((alias("IA__g_signal_handler_block"), visibility("default"))); - -#undef g_signal_handler_disconnect -extern __typeof (g_signal_handler_disconnect) g_signal_handler_disconnect __attribute((alias("IA__g_signal_handler_disconnect"), visibility("default"))); - -#undef g_signal_handler_find -extern __typeof (g_signal_handler_find) g_signal_handler_find __attribute((alias("IA__g_signal_handler_find"), visibility("default"))); - -#undef g_signal_handler_is_connected -extern __typeof (g_signal_handler_is_connected) g_signal_handler_is_connected __attribute((alias("IA__g_signal_handler_is_connected"), visibility("default"))); - -#undef g_signal_handlers_block_matched -extern __typeof (g_signal_handlers_block_matched) g_signal_handlers_block_matched __attribute((alias("IA__g_signal_handlers_block_matched"), visibility("default"))); - -#undef g_signal_handlers_destroy -extern __typeof (g_signal_handlers_destroy) g_signal_handlers_destroy __attribute((alias("IA__g_signal_handlers_destroy"), visibility("default"))); - -#undef g_signal_handlers_disconnect_matched -extern __typeof (g_signal_handlers_disconnect_matched) g_signal_handlers_disconnect_matched __attribute((alias("IA__g_signal_handlers_disconnect_matched"), visibility("default"))); - -#undef g_signal_handlers_unblock_matched -extern __typeof (g_signal_handlers_unblock_matched) g_signal_handlers_unblock_matched __attribute((alias("IA__g_signal_handlers_unblock_matched"), visibility("default"))); - -#undef g_signal_handler_unblock -extern __typeof (g_signal_handler_unblock) g_signal_handler_unblock __attribute((alias("IA__g_signal_handler_unblock"), visibility("default"))); - -#undef g_signal_has_handler_pending -extern __typeof (g_signal_has_handler_pending) g_signal_has_handler_pending __attribute((alias("IA__g_signal_has_handler_pending"), visibility("default"))); - -#undef g_signal_list_ids -extern __typeof (g_signal_list_ids) g_signal_list_ids __attribute((alias("IA__g_signal_list_ids"), visibility("default"))); - -#undef g_signal_lookup -extern __typeof (g_signal_lookup) g_signal_lookup __attribute((alias("IA__g_signal_lookup"), visibility("default"))); - -#undef g_signal_name -extern __typeof (g_signal_name) g_signal_name __attribute((alias("IA__g_signal_name"), visibility("default"))); - -#undef g_signal_new -extern __typeof (g_signal_new) g_signal_new __attribute((alias("IA__g_signal_new"), visibility("default"))); - -#undef g_signal_newv -extern __typeof (g_signal_newv) g_signal_newv __attribute((alias("IA__g_signal_newv"), visibility("default"))); - -#undef g_signal_new_valist -extern __typeof (g_signal_new_valist) g_signal_new_valist __attribute((alias("IA__g_signal_new_valist"), visibility("default"))); - -#undef g_signal_new_class_handler -extern __typeof (g_signal_new_class_handler) g_signal_new_class_handler __attribute((alias("IA__g_signal_new_class_handler"), visibility("default"))); - -#undef g_signal_override_class_closure -extern __typeof (g_signal_override_class_closure) g_signal_override_class_closure __attribute((alias("IA__g_signal_override_class_closure"), visibility("default"))); - -#undef g_signal_override_class_handler -extern __typeof (g_signal_override_class_handler) g_signal_override_class_handler __attribute((alias("IA__g_signal_override_class_handler"), visibility("default"))); - -#undef g_signal_parse_name -extern __typeof (g_signal_parse_name) g_signal_parse_name __attribute((alias("IA__g_signal_parse_name"), visibility("default"))); - -#undef g_signal_query -extern __typeof (g_signal_query) g_signal_query __attribute((alias("IA__g_signal_query"), visibility("default"))); - -#undef g_signal_remove_emission_hook -extern __typeof (g_signal_remove_emission_hook) g_signal_remove_emission_hook __attribute((alias("IA__g_signal_remove_emission_hook"), visibility("default"))); - -#undef g_signal_stop_emission -extern __typeof (g_signal_stop_emission) g_signal_stop_emission __attribute((alias("IA__g_signal_stop_emission"), visibility("default"))); - -#undef g_signal_stop_emission_by_name -extern __typeof (g_signal_stop_emission_by_name) g_signal_stop_emission_by_name __attribute((alias("IA__g_signal_stop_emission_by_name"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_TYPE_H__) -#if IN_FILE(__G_TYPE_C__) -#undef g_type_add_class_cache_func -extern __typeof (g_type_add_class_cache_func) g_type_add_class_cache_func __attribute((alias("IA__g_type_add_class_cache_func"), visibility("default"))); - -#undef g_type_add_interface_check -extern __typeof (g_type_add_interface_check) g_type_add_interface_check __attribute((alias("IA__g_type_add_interface_check"), visibility("default"))); - -#undef g_type_add_interface_dynamic -extern __typeof (g_type_add_interface_dynamic) g_type_add_interface_dynamic __attribute((alias("IA__g_type_add_interface_dynamic"), visibility("default"))); - -#undef g_type_add_interface_static -extern __typeof (g_type_add_interface_static) g_type_add_interface_static __attribute((alias("IA__g_type_add_interface_static"), visibility("default"))); - -#undef g_type_check_class_cast -extern __typeof (g_type_check_class_cast) g_type_check_class_cast __attribute((alias("IA__g_type_check_class_cast"), visibility("default"))); - -#undef g_type_check_class_is_a -extern __typeof (g_type_check_class_is_a) g_type_check_class_is_a __attribute((alias("IA__g_type_check_class_is_a"), visibility("default"))); - -#undef g_type_check_instance -extern __typeof (g_type_check_instance) g_type_check_instance __attribute((alias("IA__g_type_check_instance"), visibility("default"))); - -#undef g_type_check_instance_cast -extern __typeof (g_type_check_instance_cast) g_type_check_instance_cast __attribute((alias("IA__g_type_check_instance_cast"), visibility("default"))); - -#undef g_type_check_instance_is_a -extern __typeof (g_type_check_instance_is_a) g_type_check_instance_is_a __attribute((alias("IA__g_type_check_instance_is_a"), visibility("default"))); - -#undef g_type_check_is_value_type -extern __typeof (g_type_check_is_value_type) g_type_check_is_value_type __attribute((alias("IA__g_type_check_is_value_type"), visibility("default"))); - -#undef g_type_check_value -extern __typeof (g_type_check_value) g_type_check_value __attribute((alias("IA__g_type_check_value"), visibility("default"))); - -#undef g_type_check_value_holds -extern __typeof (g_type_check_value_holds) g_type_check_value_holds __attribute((alias("IA__g_type_check_value_holds"), visibility("default"))); - -#undef g_type_children -extern __typeof (g_type_children) g_type_children __attribute((alias("IA__g_type_children"), visibility("default"))); - -#undef g_type_class_add_private -extern __typeof (g_type_class_add_private) g_type_class_add_private __attribute((alias("IA__g_type_class_add_private"), visibility("default"))); - -#undef g_type_class_peek -extern __typeof (g_type_class_peek) g_type_class_peek __attribute((alias("IA__g_type_class_peek"), visibility("default"))); - -#undef g_type_class_peek_parent -extern __typeof (g_type_class_peek_parent) g_type_class_peek_parent __attribute((alias("IA__g_type_class_peek_parent"), visibility("default"))); - -#undef g_type_class_peek_static -extern __typeof (g_type_class_peek_static) g_type_class_peek_static __attribute((alias("IA__g_type_class_peek_static"), visibility("default"))); - -#undef g_type_class_ref -extern __typeof (g_type_class_ref) g_type_class_ref __attribute((alias("IA__g_type_class_ref"), visibility("default"))); - -#undef g_type_class_unref -extern __typeof (g_type_class_unref) g_type_class_unref __attribute((alias("IA__g_type_class_unref"), visibility("default"))); - -#undef g_type_class_unref_uncached -extern __typeof (g_type_class_unref_uncached) g_type_class_unref_uncached __attribute((alias("IA__g_type_class_unref_uncached"), visibility("default"))); - -#undef g_type_create_instance -extern __typeof (g_type_create_instance) g_type_create_instance __attribute((alias("IA__g_type_create_instance"), visibility("default"))); - -#undef g_type_default_interface_peek -extern __typeof (g_type_default_interface_peek) g_type_default_interface_peek __attribute((alias("IA__g_type_default_interface_peek"), visibility("default"))); - -#undef g_type_default_interface_ref -extern __typeof (g_type_default_interface_ref) g_type_default_interface_ref __attribute((alias("IA__g_type_default_interface_ref"), visibility("default"))); - -#undef g_type_default_interface_unref -extern __typeof (g_type_default_interface_unref) g_type_default_interface_unref __attribute((alias("IA__g_type_default_interface_unref"), visibility("default"))); - -#undef g_type_depth -extern __typeof (g_type_depth) g_type_depth __attribute((alias("IA__g_type_depth"), visibility("default"))); - -#undef g_type_free_instance -extern __typeof (g_type_free_instance) g_type_free_instance __attribute((alias("IA__g_type_free_instance"), visibility("default"))); - -#undef g_type_from_name -extern __typeof (g_type_from_name) g_type_from_name __attribute((alias("IA__g_type_from_name"), visibility("default"))); - -#undef g_type_fundamental -extern __typeof (g_type_fundamental) g_type_fundamental __attribute((alias("IA__g_type_fundamental"), visibility("default"))); - -#undef g_type_fundamental_next -extern __typeof (g_type_fundamental_next) g_type_fundamental_next __attribute((alias("IA__g_type_fundamental_next"), visibility("default"))); - -#undef g_type_get_plugin -extern __typeof (g_type_get_plugin) g_type_get_plugin __attribute((alias("IA__g_type_get_plugin"), visibility("default"))); - -#undef g_type_get_qdata -extern __typeof (g_type_get_qdata) g_type_get_qdata __attribute((alias("IA__g_type_get_qdata"), visibility("default"))); - -#undef g_type_init -extern __typeof (g_type_init) g_type_init __attribute((alias("IA__g_type_init"), visibility("default"))); - -#undef g_type_init_with_debug_flags -extern __typeof (g_type_init_with_debug_flags) g_type_init_with_debug_flags __attribute((alias("IA__g_type_init_with_debug_flags"), visibility("default"))); - -#undef g_type_instance_get_private -extern __typeof (g_type_instance_get_private) g_type_instance_get_private __attribute((alias("IA__g_type_instance_get_private"), visibility("default"))); - -#undef g_type_interface_add_prerequisite -extern __typeof (g_type_interface_add_prerequisite) g_type_interface_add_prerequisite __attribute((alias("IA__g_type_interface_add_prerequisite"), visibility("default"))); - -#undef g_type_interface_get_plugin -extern __typeof (g_type_interface_get_plugin) g_type_interface_get_plugin __attribute((alias("IA__g_type_interface_get_plugin"), visibility("default"))); - -#undef g_type_interface_peek -extern __typeof (g_type_interface_peek) g_type_interface_peek __attribute((alias("IA__g_type_interface_peek"), visibility("default"))); - -#undef g_type_interface_peek_parent -extern __typeof (g_type_interface_peek_parent) g_type_interface_peek_parent __attribute((alias("IA__g_type_interface_peek_parent"), visibility("default"))); - -#undef g_type_interface_prerequisites -extern __typeof (g_type_interface_prerequisites) g_type_interface_prerequisites __attribute((alias("IA__g_type_interface_prerequisites"), visibility("default"))); - -#undef g_type_interfaces -extern __typeof (g_type_interfaces) g_type_interfaces __attribute((alias("IA__g_type_interfaces"), visibility("default"))); - -#undef g_type_is_a -extern __typeof (g_type_is_a) g_type_is_a __attribute((alias("IA__g_type_is_a"), visibility("default"))); - -#undef g_type_name -extern __typeof (g_type_name) g_type_name __attribute((alias("IA__g_type_name"), visibility("default"))); - -#undef g_type_name_from_class -extern __typeof (g_type_name_from_class) g_type_name_from_class __attribute((alias("IA__g_type_name_from_class"), visibility("default"))); - -#undef g_type_name_from_instance -extern __typeof (g_type_name_from_instance) g_type_name_from_instance __attribute((alias("IA__g_type_name_from_instance"), visibility("default"))); - -#undef g_type_next_base -extern __typeof (g_type_next_base) g_type_next_base __attribute((alias("IA__g_type_next_base"), visibility("default"))); - -#undef g_type_parent -extern __typeof (g_type_parent) g_type_parent __attribute((alias("IA__g_type_parent"), visibility("default"))); - -#undef g_type_qname -extern __typeof (g_type_qname) g_type_qname __attribute((alias("IA__g_type_qname"), visibility("default"))); - -#undef g_type_query -extern __typeof (g_type_query) g_type_query __attribute((alias("IA__g_type_query"), visibility("default"))); - -#undef g_type_register_dynamic -extern __typeof (g_type_register_dynamic) g_type_register_dynamic __attribute((alias("IA__g_type_register_dynamic"), visibility("default"))); - -#undef g_type_register_fundamental -extern __typeof (g_type_register_fundamental) g_type_register_fundamental __attribute((alias("IA__g_type_register_fundamental"), visibility("default"))); - -#undef g_type_register_static -extern __typeof (g_type_register_static) g_type_register_static __attribute((alias("IA__g_type_register_static"), visibility("default"))); - -#undef g_type_register_static_simple -extern __typeof (g_type_register_static_simple) g_type_register_static_simple __attribute((alias("IA__g_type_register_static_simple"), visibility("default"))); - -#undef g_type_remove_class_cache_func -extern __typeof (g_type_remove_class_cache_func) g_type_remove_class_cache_func __attribute((alias("IA__g_type_remove_class_cache_func"), visibility("default"))); - -#undef g_type_remove_interface_check -extern __typeof (g_type_remove_interface_check) g_type_remove_interface_check __attribute((alias("IA__g_type_remove_interface_check"), visibility("default"))); - -#undef g_type_set_qdata -extern __typeof (g_type_set_qdata) g_type_set_qdata __attribute((alias("IA__g_type_set_qdata"), visibility("default"))); - -#undef g_type_test_flags -extern __typeof (g_type_test_flags) g_type_test_flags __attribute((alias("IA__g_type_test_flags"), visibility("default"))); - -#undef g_type_value_table_peek -extern __typeof (g_type_value_table_peek) g_type_value_table_peek __attribute((alias("IA__g_type_value_table_peek"), visibility("default"))); - -#undef g_type_class_get_private -extern __typeof (g_type_class_get_private) g_type_class_get_private __attribute((alias("IA__g_type_class_get_private"), visibility("default"))); - -#undef g_type_add_class_private -extern __typeof (g_type_add_class_private) g_type_add_class_private __attribute((alias("IA__g_type_add_class_private"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_TYPE_MODULE_H__) -#if IN_FILE(__G_TYPE_MODULE_C__) -#undef g_type_module_add_interface -extern __typeof (g_type_module_add_interface) g_type_module_add_interface __attribute((alias("IA__g_type_module_add_interface"), visibility("default"))); - -#undef g_type_module_get_type -extern __typeof (g_type_module_get_type) g_type_module_get_type __attribute((alias("IA__g_type_module_get_type"), visibility("default"))); - -#undef g_type_module_register_enum -extern __typeof (g_type_module_register_enum) g_type_module_register_enum __attribute((alias("IA__g_type_module_register_enum"), visibility("default"))); - -#undef g_type_module_register_flags -extern __typeof (g_type_module_register_flags) g_type_module_register_flags __attribute((alias("IA__g_type_module_register_flags"), visibility("default"))); - -#undef g_type_module_register_type -extern __typeof (g_type_module_register_type) g_type_module_register_type __attribute((alias("IA__g_type_module_register_type"), visibility("default"))); - -#undef g_type_module_set_name -extern __typeof (g_type_module_set_name) g_type_module_set_name __attribute((alias("IA__g_type_module_set_name"), visibility("default"))); - -#undef g_type_module_unuse -extern __typeof (g_type_module_unuse) g_type_module_unuse __attribute((alias("IA__g_type_module_unuse"), visibility("default"))); - -#undef g_type_module_use -extern __typeof (g_type_module_use) g_type_module_use __attribute((alias("IA__g_type_module_use"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_VALUE_ARRAY_H__) -#if IN_FILE(__G_VALUE_ARRAY_C__) -#undef g_value_array_append -extern __typeof (g_value_array_append) g_value_array_append __attribute((alias("IA__g_value_array_append"), visibility("default"))); - -#undef g_value_array_copy -extern __typeof (g_value_array_copy) g_value_array_copy __attribute((alias("IA__g_value_array_copy"), visibility("default"))); - -#undef g_value_array_free -extern __typeof (g_value_array_free) g_value_array_free __attribute((alias("IA__g_value_array_free"), visibility("default"))); - -#undef g_value_array_get_nth -extern __typeof (g_value_array_get_nth) g_value_array_get_nth __attribute((alias("IA__g_value_array_get_nth"), visibility("default"))); - -#undef g_value_array_insert -extern __typeof (g_value_array_insert) g_value_array_insert __attribute((alias("IA__g_value_array_insert"), visibility("default"))); - -#undef g_value_array_new -extern __typeof (g_value_array_new) g_value_array_new __attribute((alias("IA__g_value_array_new"), visibility("default"))); - -#undef g_value_array_prepend -extern __typeof (g_value_array_prepend) g_value_array_prepend __attribute((alias("IA__g_value_array_prepend"), visibility("default"))); - -#undef g_value_array_remove -extern __typeof (g_value_array_remove) g_value_array_remove __attribute((alias("IA__g_value_array_remove"), visibility("default"))); - -#undef g_value_array_sort -extern __typeof (g_value_array_sort) g_value_array_sort __attribute((alias("IA__g_value_array_sort"), visibility("default"))); - -#undef g_value_array_sort_with_data -extern __typeof (g_value_array_sort_with_data) g_value_array_sort_with_data __attribute((alias("IA__g_value_array_sort_with_data"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_TYPE_PLUGIN_H__) -#if IN_FILE(__G_TYPE_PLUGIN_C__) -#undef g_type_plugin_complete_interface_info -extern __typeof (g_type_plugin_complete_interface_info) g_type_plugin_complete_interface_info __attribute((alias("IA__g_type_plugin_complete_interface_info"), visibility("default"))); - -#undef g_type_plugin_complete_type_info -extern __typeof (g_type_plugin_complete_type_info) g_type_plugin_complete_type_info __attribute((alias("IA__g_type_plugin_complete_type_info"), visibility("default"))); - -#undef g_type_plugin_get_type -extern __typeof (g_type_plugin_get_type) g_type_plugin_get_type __attribute((alias("IA__g_type_plugin_get_type"), visibility("default"))); - -#undef g_type_plugin_unuse -extern __typeof (g_type_plugin_unuse) g_type_plugin_unuse __attribute((alias("IA__g_type_plugin_unuse"), visibility("default"))); - -#undef g_type_plugin_use -extern __typeof (g_type_plugin_use) g_type_plugin_use __attribute((alias("IA__g_type_plugin_use"), visibility("default"))); - -#endif -#endif -#if IN_HEADER(__G_VALUE_H__) -#if IN_FILE(__G_VALUE_C__) -#undef g_value_copy -extern __typeof (g_value_copy) g_value_copy __attribute((alias("IA__g_value_copy"), visibility("default"))); - -#undef g_value_fits_pointer -extern __typeof (g_value_fits_pointer) g_value_fits_pointer __attribute((alias("IA__g_value_fits_pointer"), visibility("default"))); - -#undef g_value_init -extern __typeof (g_value_init) g_value_init __attribute((alias("IA__g_value_init"), visibility("default"))); - -#undef g_value_peek_pointer -extern __typeof (g_value_peek_pointer) g_value_peek_pointer __attribute((alias("IA__g_value_peek_pointer"), visibility("default"))); - -#undef g_value_register_transform_func -extern __typeof (g_value_register_transform_func) g_value_register_transform_func __attribute((alias("IA__g_value_register_transform_func"), visibility("default"))); - -#undef g_value_reset -extern __typeof (g_value_reset) g_value_reset __attribute((alias("IA__g_value_reset"), visibility("default"))); - -#undef g_value_transform -extern __typeof (g_value_transform) g_value_transform __attribute((alias("IA__g_value_transform"), visibility("default"))); - -#undef g_value_type_compatible -extern __typeof (g_value_type_compatible) g_value_type_compatible __attribute((alias("IA__g_value_type_compatible"), visibility("default"))); - -#undef g_value_type_transformable -extern __typeof (g_value_type_transformable) g_value_type_transformable __attribute((alias("IA__g_value_type_transformable"), visibility("default"))); - -#undef g_value_unset -extern __typeof (g_value_unset) g_value_unset __attribute((alias("IA__g_value_unset"), visibility("default"))); - -#undef g_value_set_instance -extern __typeof (g_value_set_instance) g_value_set_instance __attribute((alias("IA__g_value_set_instance"), visibility("default"))); - -#endif -#endif - -#endif /* G_HAVE_GNUC_VISIBILITY */ -#endif /* DISABLE_VISIBILITY */ diff --git a/gobject/makegobjectalias.pl b/gobject/makegobjectalias.pl deleted file mode 100755 index 9094222..0000000 --- a/gobject/makegobjectalias.pl +++ /dev/null @@ -1,137 +0,0 @@ -#!/usr/bin/perl -w - -my $do_def = 0; - -if (($#ARGV >= 0) && ($ARGV[0] eq "-def")) { - shift; - $do_def = 1; -} - -print <) { - - # ignore empty lines - next if /^\s*$/; - - # skip comments - if ($_ =~ /^\s*\/\*/) - { - $in_comment = 1; - } - - if ($in_comment) - { - if ($_ =~ /\*\/\s$/) - { - $in_comment = 0; - } - - next; - } - - # handle ifdefs - if ($_ =~ /^\#endif/) - { - if (!$in_skipped_section) - { - print $_; - } - - $in_skipped_section = 0; - - next; - } - - if ($_ =~ /^\#ifdef\s+(INCLUDE_VARIABLES|INCLUDE_INTERNAL_SYMBOLS|ALL_FILES)/) - { - $in_skipped_section = 1; - } - - if ($in_skipped_section) - { - next; - } - - if ($_ =~ /^\#ifn?def\s+G/) - { - print $_; - - next; - } - - if ($_ =~ /^\#if.*(IN_FILE|IN_HEADER)/) - { - print $_; - - next; - } - - chop; - my $str = $_; - my @words; - my $attributes = ""; - - @words = split(/ /, $str); - $str = shift(@words); - chomp($str); - my $alias = "IA__".$str; - - # Drop any Win32 specific .def file syntax, but keep attributes - foreach $word (@words) { - $attributes = "$attributes $word" unless $word eq "PRIVATE"; - } - - if (!$do_def) { - print </dev/null >/dev/null; then - echo "'readelf' not found; skipping test" - exit 0 -fi - -for so in .libs/lib*.so; do - echo Checking $so for local PLT entries - readelf -r $so | grep 'JU\?MP_SLOT\?' | grep '\ -#include -#include -#ifdef HAVE_SYS_TIME_H -# include -#endif -#ifdef HAVE_UNISTD_H -# include -#endif - -#ifdef HAVE_SCHED_H -#include -#endif - -#define posix_check_err(err, name) G_STMT_START{ \ - int error = (err); \ - if (error) \ - g_error ("file %s: line %d (%s): error '%s' during '%s'", \ - __FILE__, __LINE__, G_STRFUNC, \ - g_strerror (error), name); \ - }G_STMT_END - -#define posix_check_cmd(cmd) posix_check_err (posix_error (cmd), #cmd) - -#ifdef G_ENABLE_DEBUG -static gboolean posix_check_cmd_prio_warned = FALSE; -# define posix_check_cmd_prio(cmd) G_STMT_START{ \ - int err = posix_error (cmd); \ - if (err == EPERM) \ - { \ - if (!posix_check_cmd_prio_warned) \ - { \ - posix_check_cmd_prio_warned = TRUE; \ - g_warning ("Priorities can only be changed " \ - "(resp. increased) by root."); \ - } \ - } \ - else \ - posix_check_err (err, #cmd); \ - }G_STMT_END -#else /* G_ENABLE_DEBUG */ -# define posix_check_cmd_prio(cmd) G_STMT_START{ \ - int err = posix_error (cmd); \ - if (err != EPERM) \ - posix_check_err (err, #cmd); \ - }G_STMT_END -#endif /* G_ENABLE_DEBUG */ - -#if defined(G_THREADS_IMPL_POSIX) -# define posix_error(what) (what) -# define mutexattr_default NULL -# define condattr_default NULL -#elif defined(G_THREADS_IMPL_DCE) -# define posix_error(what) ((what) == -1 ? errno : 0) -# define pthread_key_create(a, b) pthread_keycreate (a, b) -# define pthread_attr_init(a) pthread_attr_create (a) -# define pthread_attr_destroy(a) pthread_attr_delete (a) -# define pthread_create(a, b, c, d) pthread_create (a, *b, c, d) -# define mutexattr_default (pthread_mutexattr_default) -# define condattr_default (pthread_condattr_default) -#else /* neither G_THREADS_IMPL_POSIX nor G_THREADS_IMPL_DCE are defined */ -# error This should not happen. Contact the GLib team. -#endif - -#if defined (POSIX_MIN_PRIORITY) && defined (POSIX_MAX_PRIORITY) -# define HAVE_PRIORITIES 1 -static gint priority_normal_value; -# ifdef __FreeBSD__ - /* FreeBSD threads use different priority values from the POSIX_ - * defines so we just set them here. The corresponding macros - * PTHREAD_MIN_PRIORITY and PTHREAD_MAX_PRIORITY are implied to be - * exported by the docs, but they aren't. - */ -# define PRIORITY_LOW_VALUE 0 -# define PRIORITY_URGENT_VALUE 31 -# else /* !__FreeBSD__ */ -# define PRIORITY_LOW_VALUE POSIX_MIN_PRIORITY -# define PRIORITY_URGENT_VALUE POSIX_MAX_PRIORITY -# endif /* !__FreeBSD__ */ -# define PRIORITY_NORMAL_VALUE priority_normal_value -#endif /* POSIX_MIN_PRIORITY && POSIX_MAX_PRIORITY */ - -static gulong g_thread_min_stack_size = 0; - -#define G_MUTEX_SIZE (sizeof (pthread_mutex_t)) - -#if defined(HAVE_CLOCK_GETTIME) && defined(HAVE_MONOTONIC_CLOCK) -#define USE_CLOCK_GETTIME 1 -static gint posix_clock = 0; -#endif - -#if defined(_SC_THREAD_STACK_MIN) || defined (HAVE_PRIORITIES) || defined (USE_CLOCK_GETTIME) -#define HAVE_G_THREAD_IMPL_INIT -static void -g_thread_impl_init(void) -{ -#ifdef _SC_THREAD_STACK_MIN - g_thread_min_stack_size = MAX (sysconf (_SC_THREAD_STACK_MIN), 0); -#endif /* _SC_THREAD_STACK_MIN */ -#ifdef HAVE_PRIORITIES -# ifdef G_THREADS_IMPL_POSIX - { - struct sched_param sched; - int policy; - posix_check_cmd (pthread_getschedparam (pthread_self(), &policy, &sched)); - priority_normal_value = sched.sched_priority; - } -# else /* G_THREADS_IMPL_DCE */ - posix_check_cmd (priority_normal_value = - pthread_getprio (*(pthread_t*)thread, - g_thread_priority_map [priority])); -# endif -#endif /* HAVE_PRIORITIES */ - -#ifdef USE_CLOCK_GETTIME - if (sysconf (_SC_MONOTONIC_CLOCK) >= 0) - posix_clock = CLOCK_MONOTONIC; - else - posix_clock = CLOCK_REALTIME; -#endif -} -#endif /* _SC_THREAD_STACK_MIN || HAVE_PRIORITIES */ - -static GMutex * -g_mutex_new_posix_impl (void) -{ - GMutex *result = (GMutex *) g_new (pthread_mutex_t, 1); - posix_check_cmd (pthread_mutex_init ((pthread_mutex_t *) result, - mutexattr_default)); - return result; -} - -static void -g_mutex_free_posix_impl (GMutex * mutex) -{ - posix_check_cmd (pthread_mutex_destroy ((pthread_mutex_t *) mutex)); - g_free (mutex); -} - -/* NOTE: the functions g_mutex_lock and g_mutex_unlock may not use - functions from gmem.c and gmessages.c; */ - -/* pthread_mutex_lock, pthread_mutex_unlock can be taken directly, as - signature and semantic are right, but without error check then!!!!, - we might want to change this therefore. */ - -static gboolean -g_mutex_trylock_posix_impl (GMutex * mutex) -{ - int result; - - result = pthread_mutex_trylock ((pthread_mutex_t *) mutex); - -#ifdef G_THREADS_IMPL_POSIX - if (result == EBUSY) - return FALSE; -#else /* G_THREADS_IMPL_DCE */ - if (result == 0) - return FALSE; -#endif - - posix_check_err (posix_error (result), "pthread_mutex_trylock"); - return TRUE; -} - -static GCond * -g_cond_new_posix_impl (void) -{ - GCond *result = (GCond *) g_new (pthread_cond_t, 1); - posix_check_cmd (pthread_cond_init ((pthread_cond_t *) result, - condattr_default)); - return result; -} - -/* pthread_cond_signal, pthread_cond_broadcast and pthread_cond_wait - can be taken directly, as signature and semantic are right, but - without error check then!!!!, we might want to change this - therefore. */ - -#define G_NSEC_PER_SEC 1000000000 - -static gboolean -g_cond_timed_wait_posix_impl (GCond * cond, - GMutex * entered_mutex, - GTimeVal * abs_time) -{ - int result; - struct timespec end_time; - gboolean timed_out; - - g_return_val_if_fail (cond != NULL, FALSE); - g_return_val_if_fail (entered_mutex != NULL, FALSE); - - if (!abs_time) - { - result = pthread_cond_wait ((pthread_cond_t *)cond, - (pthread_mutex_t *) entered_mutex); - timed_out = FALSE; - } - else - { - end_time.tv_sec = abs_time->tv_sec; - end_time.tv_nsec = abs_time->tv_usec * (G_NSEC_PER_SEC / G_USEC_PER_SEC); - - g_return_val_if_fail (end_time.tv_nsec < G_NSEC_PER_SEC, TRUE); - - result = pthread_cond_timedwait ((pthread_cond_t *) cond, - (pthread_mutex_t *) entered_mutex, - &end_time); -#ifdef G_THREADS_IMPL_POSIX - timed_out = (result == ETIMEDOUT); -#else /* G_THREADS_IMPL_DCE */ - timed_out = (result == -1) && (errno == EAGAIN); -#endif - } - - if (!timed_out) - posix_check_err (posix_error (result), "pthread_cond_timedwait"); - - return !timed_out; -} - -static void -g_cond_free_posix_impl (GCond * cond) -{ - posix_check_cmd (pthread_cond_destroy ((pthread_cond_t *) cond)); - g_free (cond); -} - -static GPrivate * -g_private_new_posix_impl (GDestroyNotify destructor) -{ - GPrivate *result = (GPrivate *) g_new (pthread_key_t, 1); - posix_check_cmd (pthread_key_create ((pthread_key_t *) result, destructor)); - return result; -} - -/* NOTE: the functions g_private_get and g_private_set may not use - functions from gmem.c and gmessages.c */ - -static void -g_private_set_posix_impl (GPrivate * private_key, gpointer value) -{ - if (!private_key) - return; - pthread_setspecific (*(pthread_key_t *) private_key, value); -} - -static gpointer -g_private_get_posix_impl (GPrivate * private_key) -{ - if (!private_key) - return NULL; -#ifdef G_THREADS_IMPL_POSIX - return pthread_getspecific (*(pthread_key_t *) private_key); -#else /* G_THREADS_IMPL_DCE */ - { - void* data; - posix_check_cmd (pthread_getspecific (*(pthread_key_t *) private_key, - &data)); - return data; - } -#endif -} - -static void -g_thread_create_posix_impl (GThreadFunc thread_func, - gpointer arg, - gulong stack_size, - gboolean joinable, - gboolean bound, - GThreadPriority priority, - gpointer thread, - GError **error) -{ - pthread_attr_t attr; - gint ret; - - g_return_if_fail (thread_func); - g_return_if_fail (priority >= G_THREAD_PRIORITY_LOW); - g_return_if_fail (priority <= G_THREAD_PRIORITY_URGENT); - - posix_check_cmd (pthread_attr_init (&attr)); - -#ifdef HAVE_PTHREAD_ATTR_SETSTACKSIZE - if (stack_size) - { - stack_size = MAX (g_thread_min_stack_size, stack_size); - /* No error check here, because some systems can't do it and - * we simply don't want threads to fail because of that. */ - pthread_attr_setstacksize (&attr, stack_size); - } -#endif /* HAVE_PTHREAD_ATTR_SETSTACKSIZE */ - -#ifdef PTHREAD_SCOPE_SYSTEM - if (bound) - /* No error check here, because some systems can't do it and we - * simply don't want threads to fail because of that. */ - pthread_attr_setscope (&attr, PTHREAD_SCOPE_SYSTEM); -#endif /* PTHREAD_SCOPE_SYSTEM */ - -#ifdef G_THREADS_IMPL_POSIX - posix_check_cmd (pthread_attr_setdetachstate (&attr, - joinable ? PTHREAD_CREATE_JOINABLE : PTHREAD_CREATE_DETACHED)); -#endif /* G_THREADS_IMPL_POSIX */ - -#ifdef HAVE_PRIORITIES -# ifdef G_THREADS_IMPL_POSIX - { - struct sched_param sched; - posix_check_cmd (pthread_attr_getschedparam (&attr, &sched)); - sched.sched_priority = g_thread_priority_map [priority]; - posix_check_cmd_prio (pthread_attr_setschedparam (&attr, &sched)); - } -# else /* G_THREADS_IMPL_DCE */ - posix_check_cmd_prio - (pthread_attr_setprio (&attr, g_thread_priority_map [priority])); -# endif /* G_THREADS_IMPL_DCE */ -#endif /* HAVE_PRIORITIES */ - ret = posix_error (pthread_create (thread, &attr, - (void* (*)(void*))thread_func, arg)); - - posix_check_cmd (pthread_attr_destroy (&attr)); - - if (ret == EAGAIN) - { - g_set_error (error, G_THREAD_ERROR, G_THREAD_ERROR_AGAIN, - "Error creating thread: %s", g_strerror (ret)); - return; - } - - posix_check_err (ret, "pthread_create"); - -#ifdef G_THREADS_IMPL_DCE - if (!joinable) - posix_check_cmd (pthread_detach (thread)); -#endif /* G_THREADS_IMPL_DCE */ -} - -static void -g_thread_yield_posix_impl (void) -{ - POSIX_YIELD_FUNC; -} - -static void -g_thread_join_posix_impl (gpointer thread) -{ - gpointer ignore; - posix_check_cmd (pthread_join (*(pthread_t*)thread, &ignore)); -} - -static void -g_thread_exit_posix_impl (void) -{ - pthread_exit (NULL); -} - -static void -g_thread_set_priority_posix_impl (gpointer thread, GThreadPriority priority) -{ - g_return_if_fail (priority >= G_THREAD_PRIORITY_LOW); - g_return_if_fail (priority <= G_THREAD_PRIORITY_URGENT); -#ifdef HAVE_PRIORITIES -# ifdef G_THREADS_IMPL_POSIX - { - struct sched_param sched; - int policy; - posix_check_cmd (pthread_getschedparam (*(pthread_t*)thread, &policy, - &sched)); - sched.sched_priority = g_thread_priority_map [priority]; - posix_check_cmd_prio (pthread_setschedparam (*(pthread_t*)thread, policy, - &sched)); - } -# else /* G_THREADS_IMPL_DCE */ - posix_check_cmd_prio (pthread_setprio (*(pthread_t*)thread, - g_thread_priority_map [priority])); -# endif -#endif /* HAVE_PRIORITIES */ -} - -static void -g_thread_self_posix_impl (gpointer thread) -{ - *(pthread_t*)thread = pthread_self(); -} - -static gboolean -g_thread_equal_posix_impl (gpointer thread1, gpointer thread2) -{ - return (pthread_equal (*(pthread_t*)thread1, *(pthread_t*)thread2) != 0); -} - -#ifdef USE_CLOCK_GETTIME -static guint64 -gettime (void) -{ - struct timespec tv; - - clock_gettime (posix_clock, &tv); - - return (guint64) tv.tv_sec * G_NSEC_PER_SEC + tv.tv_nsec; -} -static guint64 (*g_thread_gettime_impl)(void) = gettime; -#else -static guint64 (*g_thread_gettime_impl)(void) = 0; -#endif - -static GThreadFunctions g_thread_functions_for_glib_use_default = -{ - g_mutex_new_posix_impl, - (void (*)(GMutex *)) pthread_mutex_lock, - g_mutex_trylock_posix_impl, - (void (*)(GMutex *)) pthread_mutex_unlock, - g_mutex_free_posix_impl, - g_cond_new_posix_impl, - (void (*)(GCond *)) pthread_cond_signal, - (void (*)(GCond *)) pthread_cond_broadcast, - (void (*)(GCond *, GMutex *)) pthread_cond_wait, - g_cond_timed_wait_posix_impl, - g_cond_free_posix_impl, - g_private_new_posix_impl, - g_private_get_posix_impl, - g_private_set_posix_impl, - g_thread_create_posix_impl, - g_thread_yield_posix_impl, - g_thread_join_posix_impl, - g_thread_exit_posix_impl, - g_thread_set_priority_posix_impl, - g_thread_self_posix_impl, - g_thread_equal_posix_impl -}; diff --git a/gthread/gthread-win32.c b/gthread/gthread-win32.c deleted file mode 100644 index 465b205..0000000 --- a/gthread/gthread-win32.c +++ /dev/null @@ -1,639 +0,0 @@ -/* GLIB - Library of useful routines for C programming - * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald - * - * gthread.c: solaris thread system implementation - * Copyright 1998-2001 Sebastian Wilhelmi; University of Karlsruhe - * Copyright 2001 Hans Breuer - * - * 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., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. - */ - -/* - * Modified by the GLib Team and others 1997-2000. See the AUTHORS - * file for a list of people on the GLib Team. See the ChangeLog - * files for a list of changes. These files are distributed with - * GLib at ftp://ftp.gtk.org/pub/gtk/. - */ - -/* - * MT safe - */ - -#include "config.h" - -#include "glib.h" - -#define STRICT -#define _WIN32_WINDOWS 0x0401 /* to get IsDebuggerPresent */ -#include -#undef STRICT - -#include -#include -#include - -#define win32_check_for_error(what) G_STMT_START{ \ - if (!(what)) \ - g_error ("file %s: line %d (%s): error %s during %s", \ - __FILE__, __LINE__, G_STRFUNC, \ - g_win32_error_message (GetLastError ()), #what); \ - }G_STMT_END - -#define G_MUTEX_SIZE (sizeof (gpointer)) - -#define PRIORITY_LOW_VALUE THREAD_PRIORITY_BELOW_NORMAL -#define PRIORITY_NORMAL_VALUE THREAD_PRIORITY_NORMAL -#define PRIORITY_HIGH_VALUE THREAD_PRIORITY_ABOVE_NORMAL -#define PRIORITY_URGENT_VALUE THREAD_PRIORITY_HIGHEST - -static DWORD g_thread_self_tls; -static DWORD g_private_tls; -static DWORD g_cond_event_tls; -static CRITICAL_SECTION g_thread_global_spinlock; - -typedef BOOL (__stdcall *GTryEnterCriticalSectionFunc) (CRITICAL_SECTION *); - -static GTryEnterCriticalSectionFunc try_enter_critical_section = NULL; - -/* As noted in the docs, GPrivate is a limited resource, here we take - * a rather low maximum to save memory, use GStaticPrivate instead. */ -#define G_PRIVATE_MAX 100 - -static GDestroyNotify g_private_destructors[G_PRIVATE_MAX]; - -static guint g_private_next = 0; - -/* A "forward" declaration of this structure */ -static GThreadFunctions g_thread_functions_for_glib_use_default; - -typedef struct _GThreadData GThreadData; -struct _GThreadData -{ - GThreadFunc func; - gpointer data; - HANDLE thread; - gboolean joinable; -}; - -struct _GCond -{ - GPtrArray *array; - CRITICAL_SECTION lock; -}; - -static GMutex * -g_mutex_new_win32_cs_impl (void) -{ - CRITICAL_SECTION *cs = g_new (CRITICAL_SECTION, 1); - gpointer *retval = g_new (gpointer, 1); - - InitializeCriticalSection (cs); - *retval = cs; - return (GMutex *) retval; -} - -static void -g_mutex_free_win32_cs_impl (GMutex *mutex) -{ - gpointer *ptr = (gpointer *) mutex; - CRITICAL_SECTION *cs = (CRITICAL_SECTION *) *ptr; - - DeleteCriticalSection (cs); - g_free (cs); - g_free (mutex); -} - -/* NOTE: the functions g_mutex_lock and g_mutex_unlock may not use - functions from gmem.c and gmessages.c; */ - -static void -g_mutex_lock_win32_cs_impl (GMutex *mutex) -{ - EnterCriticalSection (*(CRITICAL_SECTION **)mutex); -} - -static gboolean -g_mutex_trylock_win32_cs_impl (GMutex * mutex) -{ - return try_enter_critical_section (*(CRITICAL_SECTION **)mutex); -} - -static void -g_mutex_unlock_win32_cs_impl (GMutex *mutex) -{ - LeaveCriticalSection (*(CRITICAL_SECTION **)mutex); -} - -static GMutex * -g_mutex_new_win32_impl (void) -{ - HANDLE handle; - HANDLE *retval; - win32_check_for_error (handle = CreateMutex (NULL, FALSE, NULL)); - retval = g_new (HANDLE, 1); - *retval = handle; - return (GMutex *) retval; -} - -static void -g_mutex_free_win32_impl (GMutex *mutex) -{ - win32_check_for_error (CloseHandle (*(HANDLE *) mutex)); - g_free (mutex); -} - -/* NOTE: the functions g_mutex_lock and g_mutex_unlock may not use - functions from gmem.c and gmessages.c; */ - -static void -g_mutex_lock_win32_impl (GMutex *mutex) -{ - WaitForSingleObject (*(HANDLE *) mutex, INFINITE); -} - -static gboolean -g_mutex_trylock_win32_impl (GMutex * mutex) -{ - DWORD result; - win32_check_for_error (WAIT_FAILED != - (result = WaitForSingleObject (*(HANDLE *)mutex, 0))); - return result != WAIT_TIMEOUT; -} - -static void -g_mutex_unlock_win32_impl (GMutex *mutex) -{ - ReleaseMutex (*(HANDLE *) mutex); -} - -static GCond * -g_cond_new_win32_impl (void) -{ - GCond *retval = g_new (GCond, 1); - - retval->array = g_ptr_array_new (); - InitializeCriticalSection (&retval->lock); - - return retval; -} - -static void -g_cond_signal_win32_impl (GCond * cond) -{ - EnterCriticalSection (&cond->lock); - - if (cond->array->len > 0) - { - SetEvent (g_ptr_array_index (cond->array, 0)); - g_ptr_array_remove_index (cond->array, 0); - } - - LeaveCriticalSection (&cond->lock); -} - -static void -g_cond_broadcast_win32_impl (GCond * cond) -{ - guint i; - EnterCriticalSection (&cond->lock); - - for (i = 0; i < cond->array->len; i++) - SetEvent (g_ptr_array_index (cond->array, i)); - - g_ptr_array_set_size (cond->array, 0); - LeaveCriticalSection (&cond->lock); -} - -static gboolean -g_cond_wait_internal (GCond *cond, - GMutex *entered_mutex, - gulong milliseconds) -{ - gulong retval; - HANDLE event = TlsGetValue (g_cond_event_tls); - - if (!event) - { - win32_check_for_error (event = CreateEvent (0, FALSE, FALSE, NULL)); - TlsSetValue (g_cond_event_tls, event); - } - - EnterCriticalSection (&cond->lock); - - /* The event must not be signaled. Check this */ - g_assert (WaitForSingleObject (event, 0) == WAIT_TIMEOUT); - - g_ptr_array_add (cond->array, event); - LeaveCriticalSection (&cond->lock); - - g_thread_functions_for_glib_use_default.mutex_unlock (entered_mutex); - - win32_check_for_error (WAIT_FAILED != - (retval = WaitForSingleObject (event, milliseconds))); - - g_thread_functions_for_glib_use_default.mutex_lock (entered_mutex); - - if (retval == WAIT_TIMEOUT) - { - EnterCriticalSection (&cond->lock); - g_ptr_array_remove (cond->array, event); - - /* In the meantime we could have been signaled, so we must again - * wait for the signal, this time with no timeout, to reset - * it. retval is set again to honour the late arrival of the - * signal */ - win32_check_for_error (WAIT_FAILED != - (retval = WaitForSingleObject (event, 0))); - - LeaveCriticalSection (&cond->lock); - } - -#ifndef G_DISABLE_ASSERT - EnterCriticalSection (&cond->lock); - - /* Now event must not be inside the array, check this */ - g_assert (g_ptr_array_remove (cond->array, event) == FALSE); - - LeaveCriticalSection (&cond->lock); -#endif /* !G_DISABLE_ASSERT */ - - return retval != WAIT_TIMEOUT; -} - -static void -g_cond_wait_win32_impl (GCond *cond, - GMutex *entered_mutex) -{ - g_return_if_fail (cond != NULL); - g_return_if_fail (entered_mutex != NULL); - - g_cond_wait_internal (cond, entered_mutex, INFINITE); -} - -static gboolean -g_cond_timed_wait_win32_impl (GCond *cond, - GMutex *entered_mutex, - GTimeVal *abs_time) -{ - GTimeVal current_time; - gulong to_wait; - - g_return_val_if_fail (cond != NULL, FALSE); - g_return_val_if_fail (entered_mutex != NULL, FALSE); - - if (!abs_time) - to_wait = INFINITE; - else - { - g_get_current_time (¤t_time); - if (abs_time->tv_sec < current_time.tv_sec || - (abs_time->tv_sec == current_time.tv_sec && - abs_time->tv_usec <= current_time.tv_usec)) - to_wait = 0; - else - to_wait = (abs_time->tv_sec - current_time.tv_sec) * 1000 + - (abs_time->tv_usec - current_time.tv_usec) / 1000; - } - - return g_cond_wait_internal (cond, entered_mutex, to_wait); -} - -static void -g_cond_free_win32_impl (GCond * cond) -{ - DeleteCriticalSection (&cond->lock); - g_ptr_array_free (cond->array, TRUE); - g_free (cond); -} - -static GPrivate * -g_private_new_win32_impl (GDestroyNotify destructor) -{ - GPrivate *result; - EnterCriticalSection (&g_thread_global_spinlock); - if (g_private_next >= G_PRIVATE_MAX) - { - char buf[100]; - sprintf (buf, - "Too many GPrivate allocated. Their number is limited to %d.", - G_PRIVATE_MAX); - MessageBox (NULL, buf, NULL, MB_ICONERROR|MB_SETFOREGROUND); - if (IsDebuggerPresent ()) - G_BREAKPOINT (); - abort (); - } - g_private_destructors[g_private_next] = destructor; - result = GUINT_TO_POINTER (g_private_next); - g_private_next++; - LeaveCriticalSection (&g_thread_global_spinlock); - - return result; -} - -/* NOTE: the functions g_private_get and g_private_set may not use - functions from gmem.c and gmessages.c */ - -static void -g_private_set_win32_impl (GPrivate * private_key, gpointer value) -{ - gpointer* array = TlsGetValue (g_private_tls); - guint index = GPOINTER_TO_UINT (private_key); - - if (index >= G_PRIVATE_MAX) - return; - - if (!array) - { - array = (gpointer*) calloc (G_PRIVATE_MAX, sizeof (gpointer)); - TlsSetValue (g_private_tls, array); - } - - array[index] = value; -} - -static gpointer -g_private_get_win32_impl (GPrivate * private_key) -{ - gpointer* array = TlsGetValue (g_private_tls); - guint index = GPOINTER_TO_UINT (private_key); - - if (index >= G_PRIVATE_MAX || !array) - return NULL; - - return array[index]; -} - -static void -g_thread_set_priority_win32_impl (gpointer thread, GThreadPriority priority) -{ - GThreadData *target = *(GThreadData **)thread; - - g_return_if_fail (priority >= G_THREAD_PRIORITY_LOW); - g_return_if_fail (priority <= G_THREAD_PRIORITY_URGENT); - - win32_check_for_error (SetThreadPriority (target->thread, - g_thread_priority_map [priority])); -} - -static void -g_thread_self_win32_impl (gpointer thread) -{ - GThreadData *self = TlsGetValue (g_thread_self_tls); - - if (!self) - { - /* This should only happen for the main thread! */ - HANDLE handle = GetCurrentThread (); - HANDLE process = GetCurrentProcess (); - self = g_new (GThreadData, 1); - win32_check_for_error (DuplicateHandle (process, handle, process, - &self->thread, 0, FALSE, - DUPLICATE_SAME_ACCESS)); - win32_check_for_error (TlsSetValue (g_thread_self_tls, self)); - self->func = NULL; - self->data = NULL; - self->joinable = FALSE; - } - - *(GThreadData **)thread = self; -} - -static void -g_thread_exit_win32_impl (void) -{ - GThreadData *self = TlsGetValue (g_thread_self_tls); - guint i, private_max; - gpointer *array = TlsGetValue (g_private_tls); - HANDLE event = TlsGetValue (g_cond_event_tls); - - EnterCriticalSection (&g_thread_global_spinlock); - private_max = g_private_next; - LeaveCriticalSection (&g_thread_global_spinlock); - - if (array) - { - gboolean some_data_non_null; - - do { - some_data_non_null = FALSE; - for (i = 0; i < private_max; i++) - { - GDestroyNotify destructor = g_private_destructors[i]; - GDestroyNotify data = array[i]; - - if (data) - some_data_non_null = TRUE; - - array[i] = NULL; - - if (destructor && data) - destructor (data); - } - } while (some_data_non_null); - - free (array); - - win32_check_for_error (TlsSetValue (g_private_tls, NULL)); - } - - if (self) - { - if (!self->joinable) - { - win32_check_for_error (CloseHandle (self->thread)); - g_free (self); - } - win32_check_for_error (TlsSetValue (g_thread_self_tls, NULL)); - } - - if (event) - { - CloseHandle (event); - win32_check_for_error (TlsSetValue (g_cond_event_tls, NULL)); - } - - _endthreadex (0); -} - -static guint __stdcall -g_thread_proxy (gpointer data) -{ - GThreadData *self = (GThreadData*) data; - - win32_check_for_error (TlsSetValue (g_thread_self_tls, self)); - - self->func (self->data); - - g_thread_exit_win32_impl (); - - g_assert_not_reached (); - - return 0; -} - -static void -g_thread_create_win32_impl (GThreadFunc func, - gpointer data, - gulong stack_size, - gboolean joinable, - gboolean bound, - GThreadPriority priority, - gpointer thread, - GError **error) -{ - guint ignore; - GThreadData *retval; - - g_return_if_fail (func); - g_return_if_fail (priority >= G_THREAD_PRIORITY_LOW); - g_return_if_fail (priority <= G_THREAD_PRIORITY_URGENT); - - retval = g_new(GThreadData, 1); - retval->func = func; - retval->data = data; - - retval->joinable = joinable; - - retval->thread = (HANDLE) _beginthreadex (NULL, stack_size, g_thread_proxy, - retval, 0, &ignore); - - if (retval->thread == NULL) - { - gchar *win_error = g_win32_error_message (GetLastError ()); - g_set_error (error, G_THREAD_ERROR, G_THREAD_ERROR_AGAIN, - "Error creating thread: %s", win_error); - g_free (retval); - g_free (win_error); - return; - } - - *(GThreadData **)thread = retval; - - g_thread_set_priority_win32_impl (thread, priority); -} - -static void -g_thread_yield_win32_impl (void) -{ - Sleep(0); -} - -static void -g_thread_join_win32_impl (gpointer thread) -{ - GThreadData *target = *(GThreadData **)thread; - - g_return_if_fail (target->joinable); - - win32_check_for_error (WAIT_FAILED != - WaitForSingleObject (target->thread, INFINITE)); - - win32_check_for_error (CloseHandle (target->thread)); - g_free (target); -} - -static guint64 -g_thread_gettime_impl (void) -{ - guint64 v; - - /* Returns 100s of nanoseconds since start of 1601 */ - GetSystemTimeAsFileTime ((FILETIME *)&v); - - /* Offset to Unix epoch */ - v -= G_GINT64_CONSTANT (116444736000000000); - /* Convert to nanoseconds */ - v *= 100; - - return v; -} - -static GThreadFunctions g_thread_functions_for_glib_use_default = -{ - g_mutex_new_win32_impl, /* mutex */ - g_mutex_lock_win32_impl, - g_mutex_trylock_win32_impl, - g_mutex_unlock_win32_impl, - g_mutex_free_win32_impl, - g_cond_new_win32_impl, /* condition */ - g_cond_signal_win32_impl, - g_cond_broadcast_win32_impl, - g_cond_wait_win32_impl, - g_cond_timed_wait_win32_impl, - g_cond_free_win32_impl, - g_private_new_win32_impl, /* private thread data */ - g_private_get_win32_impl, - g_private_set_win32_impl, - g_thread_create_win32_impl, /* thread */ - g_thread_yield_win32_impl, - g_thread_join_win32_impl, - g_thread_exit_win32_impl, - g_thread_set_priority_win32_impl, - g_thread_self_win32_impl, - NULL /* no equal function necessary */ -}; - -#define HAVE_G_THREAD_IMPL_INIT -static void -g_thread_impl_init () -{ - static gboolean beenhere = FALSE; - HMODULE kernel32; - - if (beenhere) - return; - - beenhere = TRUE; - - win32_check_for_error (TLS_OUT_OF_INDEXES != - (g_thread_self_tls = TlsAlloc ())); - win32_check_for_error (TLS_OUT_OF_INDEXES != - (g_private_tls = TlsAlloc ())); - win32_check_for_error (TLS_OUT_OF_INDEXES != - (g_cond_event_tls = TlsAlloc ())); - InitializeCriticalSection (&g_thread_global_spinlock); - - /* Here we are looking for TryEnterCriticalSection in KERNEL32.DLL, - * if it is found, we can use the in general faster critical - * sections instead of mutexes. See - * http://world.std.com/~jmhart/csmutx.htm for some discussion. - */ - kernel32 = GetModuleHandle ("KERNEL32.DLL"); - if (kernel32) - { - try_enter_critical_section = (GTryEnterCriticalSectionFunc) - GetProcAddress(kernel32, "TryEnterCriticalSection"); - - /* Even if TryEnterCriticalSection is found, it is not - * necessarily working..., we have to check it */ - if (try_enter_critical_section && - try_enter_critical_section (&g_thread_global_spinlock)) - { - LeaveCriticalSection (&g_thread_global_spinlock); - - g_thread_functions_for_glib_use_default.mutex_new = - g_mutex_new_win32_cs_impl; - g_thread_functions_for_glib_use_default.mutex_lock = - g_mutex_lock_win32_cs_impl; - g_thread_functions_for_glib_use_default.mutex_trylock = - g_mutex_trylock_win32_cs_impl; - g_thread_functions_for_glib_use_default.mutex_unlock = - g_mutex_unlock_win32_cs_impl; - g_thread_functions_for_glib_use_default.mutex_free = - g_mutex_free_win32_cs_impl; - } - } -} diff --git a/gthread/tests/1bit-mutex.c b/gthread/tests/1bit-mutex.c deleted file mode 100644 index dff095c..0000000 --- a/gthread/tests/1bit-mutex.c +++ /dev/null @@ -1,127 +0,0 @@ -/* - * Copyright © 2008 Ryan Lortie - * Copyright © 2010 Codethink Limited - * - * This program 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. - * - * See the included COPYING file for more information. - */ - -/* LOCKS should be more than the number of contention - * counters in gthread.c in order to ensure we exercise - * the case where they overlap. - */ -#define LOCKS 48 -#define ITERATIONS 10000 -#define THREADS 100 - - -#if TEST_EMULATED_FUTEX - /* this is defined for the 1bit-mutex-emufutex test. - * - * we want to test the emulated futex even if futex(2) is available. - */ - - /* side-step some glib build stuff */ - #define DISABLE_VISIBILITY - #define GLIB_COMPILATION - - /* rebuild gbitlock.c without futex support, - defining our own version of the g_bit_*lock symbols - */ - #define g_bit_lock _emufutex_g_bit_lock - #define g_bit_trylock _emufutex_g_bit_trylock - #define g_bit_unlock _emufutex_g_bit_unlock - #define _g_futex_thread_init _emufutex_g_futex_thread_init - - #define G_BIT_LOCK_FORCE_FUTEX_EMULATION - - #include -#endif - -#include - -volatile GThread *owners[LOCKS]; -volatile gint locks[LOCKS]; -volatile gint bits[LOCKS]; - -static void -acquire (int nr) -{ - GThread *self; - - self = g_thread_self (); - - g_bit_lock (&locks[nr], bits[nr]); - g_assert (owners[nr] == NULL); /* hopefully nobody else is here */ - owners[nr] = self; - - /* let some other threads try to ruin our day */ - g_thread_yield (); - g_thread_yield (); - g_thread_yield (); - - g_assert (owners[nr] == self); /* hopefully this is still us... */ - owners[nr] = NULL; /* make way for the next guy */ - g_bit_unlock (&locks[nr], bits[nr]); -} - -static gpointer -thread_func (gpointer data) -{ - gint i; - - for (i = 0; i < ITERATIONS; i++) - acquire (g_random_int () % LOCKS); - - return NULL; -} - -static void -testcase (void) -{ - GThread *threads[THREADS]; - int i; - - g_thread_init (NULL); - -#ifdef TEST_EMULATED_FUTEX - _g_futex_thread_init (); - #define SUFFIX "-emufutex" - - /* ensure that we are using the emulated futex by checking - * (at compile-time) for the existance of 'g_futex_mutex' - */ - g_assert (g_futex_mutex != NULL); -#else - #define SUFFIX "" -#endif - - for (i = 0; i < LOCKS; i++) - bits[i] = g_random_int () % 32; - - for (i = 0; i < THREADS; i++) - threads[i] = g_thread_create (thread_func, NULL, TRUE, NULL); - - for (i = 0; i < THREADS; i++) - g_thread_join (threads[i]); - - for (i = 0; i < LOCKS; i++) - { - g_assert (owners[i] == NULL); - g_assert (locks[i] == 0); - } -} - -int -main (int argc, char **argv) -{ - g_test_init (&argc, &argv, NULL); - - g_test_add_func ("/glib/1bit-mutex" SUFFIX, testcase); - - return g_test_run (); -} diff --git a/gthread/tests/Makefile.am b/gthread/tests/Makefile.am deleted file mode 100644 index c5fb653..0000000 --- a/gthread/tests/Makefile.am +++ /dev/null @@ -1,15 +0,0 @@ -include $(top_srcdir)/Makefile.decl - -INCLUDES = -g -I$(top_srcdir) -I$(top_srcdir)/glib $(GLIB_DEBUG_FLAGS) - -noinst_PROGRAMS = $(TEST_PROGS) -progs_ldadd = $(top_builddir)/glib/libglib-2.0.la \ - $(top_builddir)/gthread/libgthread-2.0.la - -TEST_PROGS += 1bit-mutex -1bit_mutex_LDADD = $(progs_ldadd) $(top_builddir)/gthread/libgthread-2.0.la - -TEST_PROGS += 1bit-emufutex -1bit_emufutex_SOURCES = 1bit-mutex.c -1bit_emufutex_CFLAGS = -DTEST_EMULATED_FUTEX -1bit_emufutex_LDADD = $(progs_ldadd) $(top_builddir)/gthread/libgthread-2.0.la diff --git a/gthread/tests/Makefile.in b/gthread/tests/Makefile.in deleted file mode 100644 index 7b11399..0000000 --- a/gthread/tests/Makefile.in +++ /dev/null @@ -1,688 +0,0 @@ -# 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@ - -# GLIB - Library of useful C routines - -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)/Makefile.decl -noinst_PROGRAMS = $(am__EXEEXT_1) -subdir = gthread/tests -ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ - $(top_srcdir)/acglib.m4 \ - $(top_srcdir)/glib/libcharset/codeset.m4 \ - $(top_srcdir)/glib/libcharset/glibc21.m4 \ - $(top_srcdir)/m4macros/glib-gettext.m4 \ - $(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__EXEEXT_1 = 1bit-mutex$(EXEEXT) 1bit-emufutex$(EXEEXT) -PROGRAMS = $(noinst_PROGRAMS) -am_1bit_emufutex_OBJECTS = 1bit_emufutex-1bit-mutex.$(OBJEXT) -1bit_emufutex_OBJECTS = $(am_1bit_emufutex_OBJECTS) -1bit_emufutex_DEPENDENCIES = $(progs_ldadd) \ - $(top_builddir)/gthread/libgthread-2.0.la -AM_V_lt = $(am__v_lt_$(V)) -am__v_lt_ = $(am__v_lt_$(AM_DEFAULT_VERBOSITY)) -am__v_lt_0 = --silent -1bit_emufutex_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=link $(CCLD) $(1bit_emufutex_CFLAGS) \ - $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ -1bit_mutex_SOURCES = 1bit-mutex.c -1bit_mutex_OBJECTS = 1bit-mutex.$(OBJEXT) -1bit_mutex_DEPENDENCIES = $(progs_ldadd) \ - $(top_builddir)/gthread/libgthread-2.0.la -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 = $(1bit_emufutex_SOURCES) 1bit-mutex.c -DIST_SOURCES = $(1bit_emufutex_SOURCES) 1bit-mutex.c -ETAGS = etags -CTAGS = ctags -DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ABS_GLIB_RUNTIME_LIBDIR = @ABS_GLIB_RUNTIME_LIBDIR@ -ACLOCAL = @ACLOCAL@ -ALLOCA = @ALLOCA@ -AMTAR = @AMTAR@ -AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ -AR = @AR@ -AS = @AS@ -AUTOCONF = @AUTOCONF@ -AUTOHEADER = @AUTOHEADER@ -AUTOMAKE = @AUTOMAKE@ -AWK = @AWK@ -CATALOGS = @CATALOGS@ -CATOBJEXT = @CATOBJEXT@ -CC = @CC@ -CCDEPMODE = @CCDEPMODE@ -CFLAGS = @CFLAGS@ -CONFIG_STATUS_DEPENDENCIES = @CONFIG_STATUS_DEPENDENCIES@ -CPP = @CPP@ -CPPFLAGS = @CPPFLAGS@ -CXX = @CXX@ -CXXCPP = @CXXCPP@ -CXXDEPMODE = @CXXDEPMODE@ -CXXFLAGS = @CXXFLAGS@ -CYGPATH_W = @CYGPATH_W@ -DATADIRNAME = @DATADIRNAME@ -DEFS = @DEFS@ -DEPDIR = @DEPDIR@ -DISABLE_MEM_POOLS = @DISABLE_MEM_POOLS@ -DLLTOOL = @DLLTOOL@ -DSYMUTIL = @DSYMUTIL@ -DUMPBIN = @DUMPBIN@ -ECHO_C = @ECHO_C@ -ECHO_N = @ECHO_N@ -ECHO_T = @ECHO_T@ -EGREP = @EGREP@ -EXEEXT = @EXEEXT@ -FAM_LIBS = @FAM_LIBS@ -FGREP = @FGREP@ -GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ -GIO = @GIO@ -GIO_MODULE_DIR = @GIO_MODULE_DIR@ -GLIBC21 = @GLIBC21@ -GLIB_BINARY_AGE = @GLIB_BINARY_AGE@ -GLIB_DEBUG_FLAGS = @GLIB_DEBUG_FLAGS@ -GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ -GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ -GLIB_INTERFACE_AGE = @GLIB_INTERFACE_AGE@ -GLIB_MAJOR_VERSION = @GLIB_MAJOR_VERSION@ -GLIB_MICRO_VERSION = @GLIB_MICRO_VERSION@ -GLIB_MINOR_VERSION = @GLIB_MINOR_VERSION@ -GLIB_RUNTIME_LIBDIR = @GLIB_RUNTIME_LIBDIR@ -GLIB_VERSION = @GLIB_VERSION@ -GLIB_WIN32_STATIC_COMPILATION_DEFINE = @GLIB_WIN32_STATIC_COMPILATION_DEFINE@ -GMOFILES = @GMOFILES@ -GMSGFMT = @GMSGFMT@ -GREP = @GREP@ -GSPAWN = @GSPAWN@ -GTHREAD_COMPILE_IMPL_DEFINES = @GTHREAD_COMPILE_IMPL_DEFINES@ -GTKDOC_CHECK = @GTKDOC_CHECK@ -GTKDOC_MKPDF = @GTKDOC_MKPDF@ -GTKDOC_REBASE = @GTKDOC_REBASE@ -G_LIBS_EXTRA = @G_LIBS_EXTRA@ -G_MODULE_BROKEN_RTLD_GLOBAL = @G_MODULE_BROKEN_RTLD_GLOBAL@ -G_MODULE_HAVE_DLERROR = @G_MODULE_HAVE_DLERROR@ -G_MODULE_IMPL = @G_MODULE_IMPL@ -G_MODULE_LDFLAGS = @G_MODULE_LDFLAGS@ -G_MODULE_LIBS = @G_MODULE_LIBS@ -G_MODULE_LIBS_EXTRA = @G_MODULE_LIBS_EXTRA@ -G_MODULE_NEED_USCORE = @G_MODULE_NEED_USCORE@ -G_MODULE_PLUGIN_LIBS = @G_MODULE_PLUGIN_LIBS@ -G_MODULE_SUPPORTED = @G_MODULE_SUPPORTED@ -G_THREAD_CFLAGS = @G_THREAD_CFLAGS@ -G_THREAD_LIBS = @G_THREAD_LIBS@ -G_THREAD_LIBS_EXTRA = @G_THREAD_LIBS_EXTRA@ -G_THREAD_LIBS_FOR_GTHREAD = @G_THREAD_LIBS_FOR_GTHREAD@ -HTML_DIR = @HTML_DIR@ -ICONV_LIBS = @ICONV_LIBS@ -INDENT = @INDENT@ -INSTALL = @INSTALL@ -INSTALL_DATA = @INSTALL_DATA@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ -INSTALL_SCRIPT = @INSTALL_SCRIPT@ -INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ -INSTOBJEXT = @INSTOBJEXT@ -INTLLIBS = @INTLLIBS@ -LD = @LD@ -LDFLAGS = @LDFLAGS@ -LIBASYNCNS_LIBADD = @LIBASYNCNS_LIBADD@ -LIBOBJS = @LIBOBJS@ -LIBS = @LIBS@ -LIBTOOL = @LIBTOOL@ -LIBTOOL_EXPORT_OPTIONS = @LIBTOOL_EXPORT_OPTIONS@ -LIB_EXE_MACHINE_FLAG = @LIB_EXE_MACHINE_FLAG@ -LIPO = @LIPO@ -LN_S = @LN_S@ -LTLIBOBJS = @LTLIBOBJS@ -LT_AGE = @LT_AGE@ -LT_CURRENT = @LT_CURRENT@ -LT_CURRENT_MINUS_AGE = @LT_CURRENT_MINUS_AGE@ -LT_RELEASE = @LT_RELEASE@ -LT_REVISION = @LT_REVISION@ -MAINT = @MAINT@ -MAKEINFO = @MAKEINFO@ -MKDIR_P = @MKDIR_P@ -MKINSTALLDIRS = @MKINSTALLDIRS@ -MSGFMT = @MSGFMT@ -MSGFMT_OPTS = @MSGFMT_OPTS@ -NM = @NM@ -NMEDIT = @NMEDIT@ -OBJDUMP = @OBJDUMP@ -OBJEXT = @OBJEXT@ -OTOOL = @OTOOL@ -OTOOL64 = @OTOOL64@ -PACKAGE = @PACKAGE@ -PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ -PACKAGE_NAME = @PACKAGE_NAME@ -PACKAGE_STRING = @PACKAGE_STRING@ -PACKAGE_TARNAME = @PACKAGE_TARNAME@ -PACKAGE_URL = @PACKAGE_URL@ -PACKAGE_VERSION = @PACKAGE_VERSION@ -PATH_SEPARATOR = @PATH_SEPARATOR@ -PCRE_CFLAGS = @PCRE_CFLAGS@ -PCRE_LIBS = @PCRE_LIBS@ -PCRE_REQUIRES = @PCRE_REQUIRES@ -PCRE_WARN_CFLAGS = @PCRE_WARN_CFLAGS@ -PERL = @PERL@ -PERL_PATH = @PERL_PATH@ -PKG_CONFIG = @PKG_CONFIG@ -PLATFORMDEP = @PLATFORMDEP@ -POFILES = @POFILES@ -POSUB = @POSUB@ -PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ -PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ -PYTHON = @PYTHON@ -PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@ -PYTHON_PLATFORM = @PYTHON_PLATFORM@ -PYTHON_PREFIX = @PYTHON_PREFIX@ -PYTHON_VERSION = @PYTHON_VERSION@ -RANLIB = @RANLIB@ -REBUILD = @REBUILD@ -SED = @SED@ -SELINUX_LIBS = @SELINUX_LIBS@ -SET_MAKE = @SET_MAKE@ -SHELL = @SHELL@ -STRIP = @STRIP@ -USE_NLS = @USE_NLS@ -VERSION = @VERSION@ -WINDRES = @WINDRES@ -XATTR_LIBS = @XATTR_LIBS@ -XGETTEXT = @XGETTEXT@ -XMLCATALOG = @XMLCATALOG@ -XML_CATALOG_FILE = @XML_CATALOG_FILE@ -XSLTPROC = @XSLTPROC@ -ZLIB_LIBS = @ZLIB_LIBS@ -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_CXX = @ac_ct_CXX@ -ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ -am__include = @am__include@ -am__leading_dot = @am__leading_dot@ -am__quote = @am__quote@ -am__tar = @am__tar@ -am__untar = @am__untar@ -bindir = @bindir@ -build = @build@ -build_alias = @build_alias@ -build_cpu = @build_cpu@ -build_os = @build_os@ -build_vendor = @build_vendor@ -builddir = @builddir@ -datadir = @datadir@ -datarootdir = @datarootdir@ -docdir = @docdir@ -dvidir = @dvidir@ -exec_prefix = @exec_prefix@ -host = @host@ -host_alias = @host_alias@ -host_cpu = @host_cpu@ -host_os = @host_os@ -host_vendor = @host_vendor@ -htmldir = @htmldir@ -includedir = @includedir@ -infodir = @infodir@ -install_sh = @install_sh@ -libdir = @libdir@ -libexecdir = @libexecdir@ -localedir = @localedir@ -localstatedir = @localstatedir@ -lt_ECHO = @lt_ECHO@ -mandir = @mandir@ -mkdir_p = @mkdir_p@ -ms_librarian = @ms_librarian@ -oldincludedir = @oldincludedir@ -pdfdir = @pdfdir@ -pkgpyexecdir = @pkgpyexecdir@ -pkgpythondir = @pkgpythondir@ -prefix = @prefix@ -program_transform_name = @program_transform_name@ -psdir = @psdir@ -pyexecdir = @pyexecdir@ -pythondir = @pythondir@ -sbindir = @sbindir@ -sharedstatedir = @sharedstatedir@ -srcdir = @srcdir@ -sysconfdir = @sysconfdir@ -target_alias = @target_alias@ -top_build_prefix = @top_build_prefix@ -top_builddir = @top_builddir@ -top_srcdir = @top_srcdir@ - -#GTESTER = gtester # for non-GLIB packages -GTESTER = $(top_builddir)/glib/gtester # for the GLIB package -GTESTER_REPORT = $(top_builddir)/glib/gtester-report # for the GLIB package - -# initialize variables for unconditional += appending -EXTRA_DIST = -TEST_PROGS = 1bit-mutex 1bit-emufutex -INCLUDES = -g -I$(top_srcdir) -I$(top_srcdir)/glib $(GLIB_DEBUG_FLAGS) -progs_ldadd = $(top_builddir)/glib/libglib-2.0.la \ - $(top_builddir)/gthread/libgthread-2.0.la - -1bit_mutex_LDADD = $(progs_ldadd) $(top_builddir)/gthread/libgthread-2.0.la -1bit_emufutex_SOURCES = 1bit-mutex.c -1bit_emufutex_CFLAGS = -DTEST_EMULATED_FUTEX -1bit_emufutex_LDADD = $(progs_ldadd) $(top_builddir)/gthread/libgthread-2.0.la -all: all-am - -.SUFFIXES: -.SUFFIXES: .c .lo .o .obj -$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/Makefile.decl $(am__configure_deps) - @for dep in $?; do \ - case '$(am__configure_deps)' in \ - *$$dep*) \ - ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ - && { if test -f $@; then exit 0; else break; fi; }; \ - exit 1;; \ - esac; \ - done; \ - echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu gthread/tests/Makefile'; \ - $(am__cd) $(top_srcdir) && \ - $(AUTOMAKE) --gnu gthread/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-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 -1bit-emufutex$(EXEEXT): $(1bit_emufutex_OBJECTS) $(1bit_emufutex_DEPENDENCIES) - @rm -f 1bit-emufutex$(EXEEXT) - $(AM_V_CCLD)$(1bit_emufutex_LINK) $(1bit_emufutex_OBJECTS) $(1bit_emufutex_LDADD) $(LIBS) -1bit-mutex$(EXEEXT): $(1bit_mutex_OBJECTS) $(1bit_mutex_DEPENDENCIES) - @rm -f 1bit-mutex$(EXEEXT) - $(AM_V_CCLD)$(LINK) $(1bit_mutex_OBJECTS) $(1bit_mutex_LDADD) $(LIBS) - -mostlyclean-compile: - -rm -f *.$(OBJEXT) - -distclean-compile: - -rm -f *.tab.c - -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/1bit-mutex.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/1bit_emufutex-1bit-mutex.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 $@ $< - -1bit_emufutex-1bit-mutex.o: 1bit-mutex.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(1bit_emufutex_CFLAGS) $(CFLAGS) -MT 1bit_emufutex-1bit-mutex.o -MD -MP -MF $(DEPDIR)/1bit_emufutex-1bit-mutex.Tpo -c -o 1bit_emufutex-1bit-mutex.o `test -f '1bit-mutex.c' || echo '$(srcdir)/'`1bit-mutex.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/1bit_emufutex-1bit-mutex.Tpo $(DEPDIR)/1bit_emufutex-1bit-mutex.Po -@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='1bit-mutex.c' object='1bit_emufutex-1bit-mutex.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(1bit_emufutex_CFLAGS) $(CFLAGS) -c -o 1bit_emufutex-1bit-mutex.o `test -f '1bit-mutex.c' || echo '$(srcdir)/'`1bit-mutex.c - -1bit_emufutex-1bit-mutex.obj: 1bit-mutex.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(1bit_emufutex_CFLAGS) $(CFLAGS) -MT 1bit_emufutex-1bit-mutex.obj -MD -MP -MF $(DEPDIR)/1bit_emufutex-1bit-mutex.Tpo -c -o 1bit_emufutex-1bit-mutex.obj `if test -f '1bit-mutex.c'; then $(CYGPATH_W) '1bit-mutex.c'; else $(CYGPATH_W) '$(srcdir)/1bit-mutex.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/1bit_emufutex-1bit-mutex.Tpo $(DEPDIR)/1bit_emufutex-1bit-mutex.Po -@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='1bit-mutex.c' object='1bit_emufutex-1bit-mutex.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(1bit_emufutex_CFLAGS) $(CFLAGS) -c -o 1bit_emufutex-1bit-mutex.obj `if test -f '1bit-mutex.c'; then $(CYGPATH_W) '1bit-mutex.c'; else $(CYGPATH_W) '$(srcdir)/1bit-mutex.c'; fi` - -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 - $(MAKE) $(AM_MAKEFLAGS) check-local -check: check-am -all-am: Makefile $(PROGRAMS) -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 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-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: - -.MAKE: check-am install-am install-strip - -.PHONY: CTAGS GTAGS all all-am check check-am check-local clean \ - clean-generic clean-libtool clean-noinstPROGRAMS ctags \ - distclean distclean-compile distclean-generic \ - distclean-libtool distclean-tags distdir dvi dvi-am html \ - html-am info info-am install install-am install-data \ - install-data-am install-dvi install-dvi-am install-exec \ - install-exec-am install-html install-html-am install-info \ - install-info-am install-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 - - -### testing rules - -# test: run all tests in cwd and subdirs -test: ${TEST_PROGS} -@OS_UNIX_TRUE@ @test -z "${TEST_PROGS}" || ${GTESTER} --verbose ${TEST_PROGS} -@OS_UNIX_TRUE@ @ for subdir in $(SUBDIRS) . ; do \ -@OS_UNIX_TRUE@ test "$$subdir" = "." -o "$$subdir" = "po" || \ -@OS_UNIX_TRUE@ ( cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $@ ) || exit $? ; \ -@OS_UNIX_TRUE@ done - -# test-report: run tests in subdirs and generate report -# perf-report: run tests in subdirs with -m perf and generate report -# full-report: like test-report: with -m perf and -m slow -test-report perf-report full-report: ${TEST_PROGS} - @test -z "${TEST_PROGS}" || { \ - case $@ in \ - test-report) test_options="-k";; \ - perf-report) test_options="-k -m=perf";; \ - full-report) test_options="-k -m=perf -m=slow";; \ - esac ; \ - if test -z "$$GTESTER_LOGDIR" ; then \ - ${GTESTER} --verbose $$test_options -o test-report.xml ${TEST_PROGS} ; \ - elif test -n "${TEST_PROGS}" ; then \ - ${GTESTER} --verbose $$test_options -o `mktemp "$$GTESTER_LOGDIR/log-XXXXXX"` ${TEST_PROGS} ; \ - fi ; \ - } - @ ignore_logdir=true ; \ - if test -z "$$GTESTER_LOGDIR" ; then \ - GTESTER_LOGDIR=`mktemp -d "\`pwd\`/.testlogs-XXXXXX"`; export GTESTER_LOGDIR ; \ - ignore_logdir=false ; \ - fi ; \ - for subdir in $(SUBDIRS) . ; do \ - test "$$subdir" = "." -o "$$subdir" = "po" || \ - ( cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $@ ) || exit $? ; \ - done ; \ - $$ignore_logdir || { \ - echo '' > $@.xml ; \ - echo '' >> $@.xml ; \ - for lf in `ls -L "$$GTESTER_LOGDIR"/.` ; do \ - sed '1,1s/^?]*?>//' <"$$GTESTER_LOGDIR"/"$$lf" >> $@.xml ; \ - done ; \ - echo >> $@.xml ; \ - echo '' >> $@.xml ; \ - rm -rf "$$GTESTER_LOGDIR"/ ; \ - ${GTESTER_REPORT} --version 2>/dev/null 1>&2 ; test "$$?" != 0 || ${GTESTER_REPORT} $@.xml >$@.html ; \ - } -.PHONY: test test-report perf-report full-report -# run make test as part of make check -check-local: test - -# 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: diff --git a/tests/base64-test.c b/tests/base64-test.c deleted file mode 100644 index a021435..0000000 --- a/tests/base64-test.c +++ /dev/null @@ -1,138 +0,0 @@ -#include "config.h" - -#include -#include -#ifdef HAVE_UNISTD_H -#include -#endif -#include - -#define DATA_SIZE 1024 -#define BLOCK_SIZE 32 -#define NUM_BLOCKS 32 -static guchar data[DATA_SIZE]; - -static void -test_incremental (gboolean line_break, - gint length) -{ - char *p; - gsize len, decoded_len, max, input_len, block_size; - int state, save; - guint decoder_save; - char *text; - guchar *data2; - - data2 = g_malloc (length); - text = g_malloc (length * 4); - - len = 0; - state = 0; - save = 0; - input_len = 0; - while (input_len < length) - { - block_size = MIN (BLOCK_SIZE, length - input_len); - len += g_base64_encode_step (data + input_len, block_size, - line_break, text + len, &state, &save); - input_len += block_size; - } - len += g_base64_encode_close (line_break, text + len, &state, &save); - - if (line_break) - max = length * 4 / 3 + length * 4 / (3 * 72) + 7; - else - max = length * 4 / 3 + 6; - if (len > max) - { - g_print ("Too long encoded length: got %d, expected max %d\n", - len, max); - exit (1); - } - - decoded_len = 0; - state = 0; - decoder_save = 0; - p = text; - while (len > 0) - { - int chunk_len = MIN (BLOCK_SIZE, len); - decoded_len += g_base64_decode_step (p, - chunk_len, - data2 + decoded_len, - &state, &decoder_save); - p += chunk_len; - len -= chunk_len; - } - - if (decoded_len != length) - { - g_print ("Wrong decoded length: got %d, expected %d\n", - decoded_len, length); - exit (1); - } - - if (memcmp (data, data2, length) != 0) - { - g_print ("Wrong decoded base64 data\n"); - exit (1); - } - - g_free (text); - g_free (data2); -} - -static void -test_full (gint length) -{ - char *text; - guchar *data2; - gsize len; - - text = g_base64_encode (data, length); - data2 = g_base64_decode (text, &len); - g_free (text); - - if (len != length) - { - g_print ("Wrong decoded length: got %d, expected %d\n", - len, length); - exit (1); - } - - if (memcmp (data, data2, length) != 0) - { - g_print ("Wrong decoded base64 data\n"); - exit (1); - } - - g_free (data2); -} - -int -main (int argc, char *argv[]) -{ - int i; - for (i = 0; i < DATA_SIZE; i++) - data[i] = (guchar)i; - - test_full (DATA_SIZE); - test_full (1); - test_full (2); - test_full (3); - - test_incremental (FALSE, DATA_SIZE); - test_incremental (TRUE, DATA_SIZE); - - test_incremental (FALSE, DATA_SIZE - 1); - test_incremental (TRUE, DATA_SIZE - 1); - - test_incremental (FALSE, DATA_SIZE - 2); - test_incremental (TRUE, DATA_SIZE - 2); - - test_incremental (FALSE, 1); - test_incremental (FALSE, 2); - test_incremental (FALSE, 3); - - return 0; -} diff --git a/tests/bookmarkfile-test.c b/tests/bookmarkfile-test.c deleted file mode 100644 index 40e9a05..0000000 --- a/tests/bookmarkfile-test.c +++ /dev/null @@ -1,188 +0,0 @@ -#undef G_DISABLE_ASSERT - -#include -#include -#include -#include -#include -#include - -#define TEST_URI_0 "file:///abc/defgh/ijklmnopqrstuvwxyz" -#define TEST_URI_1 "file:///test/uri/1" -#define TEST_URI_2 "file:///test/uri/2" - -#define TEST_MIME "text/plain" - -#define TEST_APP_NAME "bookmarkfile-test" -#define TEST_APP_EXEC "bookmarkfile-test %f" - -static gboolean -test_load (GBookmarkFile *bookmark, - const gchar *filename) -{ - GError *error = NULL; - gboolean res; - - res = g_bookmark_file_load_from_file (bookmark, filename, &error); - if (error) - { - g_print ("Load error: %s\n", error->message); - g_error_free (error); - } - - return res; -} - -static gboolean -test_query (GBookmarkFile *bookmark) -{ - gint size; - gchar **uris; - gsize uris_len, i; - gboolean res = TRUE; - - size = g_bookmark_file_get_size (bookmark); - uris = g_bookmark_file_get_uris (bookmark, &uris_len); - - if (uris_len != size) - { - g_print ("URI/size mismatch: URI count is %d (should be %d)\n", uris_len, size); - - res = FALSE; - } - - for (i = 0; i < uris_len; i++) - if (!g_bookmark_file_has_item (bookmark, uris[i])) - { - g_print ("URI/bookmark mismatch: bookmark for '%s' does not exist\n", uris[i]); - - res = FALSE; - } - - g_strfreev (uris); - - return res; -} - -static gboolean -test_modify (GBookmarkFile *bookmark) -{ - gchar *text; - guint count; - time_t stamp; - GError *error = NULL; - - g_print ("\t=> check global title/description..."); - g_bookmark_file_set_title (bookmark, NULL, "a file"); - g_bookmark_file_set_description (bookmark, NULL, "a bookmark file"); - - text = g_bookmark_file_get_title (bookmark, NULL, &error); - g_assert_no_error (error); - g_assert_cmpstr (text, ==, "a file"); - g_free (text); - - text = g_bookmark_file_get_description (bookmark, NULL, &error); - g_assert_no_error (error); - g_assert_cmpstr (text, ==, "a bookmark file"); - g_free (text); - g_print ("ok\n"); - - g_print ("\t=> check bookmark title/description..."); - g_bookmark_file_set_title (bookmark, TEST_URI_0, "a title"); - g_bookmark_file_set_description (bookmark, TEST_URI_0, "a description"); - - text = g_bookmark_file_get_title (bookmark, TEST_URI_0, &error); - g_assert_no_error (error); - g_assert_cmpstr (text, ==, "a title"); - g_free (text); - g_print ("ok\n"); - - g_print ("\t=> check non existing bookmark..."); - g_bookmark_file_get_description (bookmark, TEST_URI_1, &error); - g_assert_error (error, G_BOOKMARK_FILE_ERROR, G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND); - g_clear_error (&error); - g_print ("ok\n"); - - g_print ("\t=> check application..."); - g_bookmark_file_set_mime_type (bookmark, TEST_URI_0, TEST_MIME); - g_bookmark_file_add_application (bookmark, TEST_URI_0, - TEST_APP_NAME, - TEST_APP_EXEC); - g_assert (g_bookmark_file_has_application (bookmark, TEST_URI_0, TEST_APP_NAME, NULL) == TRUE); - g_bookmark_file_get_app_info (bookmark, TEST_URI_0, TEST_APP_NAME, - &text, - &count, - &stamp, - &error); - g_assert_no_error (error); - g_assert (count == 1); - g_assert (stamp == g_bookmark_file_get_modified (bookmark, TEST_URI_0, NULL)); - g_free (text); - - g_bookmark_file_get_app_info (bookmark, TEST_URI_0, "fail", - &text, - &count, - &stamp, - &error); - g_assert_error (error, G_BOOKMARK_FILE_ERROR, G_BOOKMARK_FILE_ERROR_APP_NOT_REGISTERED); - g_clear_error (&error); - g_print ("ok\n"); - - g_print ("\t=> check groups..."); - g_bookmark_file_add_group (bookmark, TEST_URI_1, "Test"); - g_assert (g_bookmark_file_has_group (bookmark, TEST_URI_1, "Test", NULL) == TRUE); - g_assert (g_bookmark_file_has_group (bookmark, TEST_URI_1, "Fail", NULL) == FALSE); - g_print ("ok\n"); - - g_print ("\t=> check remove..."); - g_assert (g_bookmark_file_remove_item (bookmark, TEST_URI_1, &error) == TRUE); - g_assert_no_error (error); - g_assert (g_bookmark_file_remove_item (bookmark, TEST_URI_1, &error) == FALSE); - g_assert_error (error, G_BOOKMARK_FILE_ERROR, G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND); - g_clear_error (&error); - g_print ("ok\n"); - - return TRUE; -} - -static gint -test_file (const gchar *filename) -{ - GBookmarkFile *bookmark_file; - gboolean success; - - g_return_val_if_fail (filename != NULL, 1); - - g_print ("checking GBookmarkFile...\n"); - - bookmark_file = g_bookmark_file_new (); - g_assert (bookmark_file != NULL); - - success = test_load (bookmark_file, filename); - - if (success) - { - success = test_query (bookmark_file); - success = test_modify (bookmark_file); - } - - g_bookmark_file_free (bookmark_file); - - g_print ("ok\n"); - - return (success == TRUE ? 0 : 1); -} - -int -main (int argc, - char *argv[]) -{ - if (argc > 1) - return test_file (argv[1]); - else - { - fprintf (stderr, "Usage: bookmarkfile-test \n"); - - return 1; - } -} diff --git a/tests/bookmarks/fail-01.xbel b/tests/bookmarks/fail-01.xbel deleted file mode 100644 index e69de29..0000000 diff --git a/tests/bookmarks/fail-02.xbel b/tests/bookmarks/fail-02.xbel deleted file mode 100644 index 39f0094..0000000 --- a/tests/bookmarks/fail-02.xbel +++ /dev/null @@ -1,2 +0,0 @@ - - diff --git a/tests/bookmarks/fail-03.xbel b/tests/bookmarks/fail-03.xbel deleted file mode 100644 index 563dd54..0000000 --- a/tests/bookmarks/fail-03.xbel +++ /dev/null @@ -1,18 +0,0 @@ - - - Singleton - A file containing a single bookmark element - - - - - - - - - - - diff --git a/tests/bookmarks/fail-04.xbel b/tests/bookmarks/fail-04.xbel deleted file mode 100644 index 86f1e90..0000000 --- a/tests/bookmarks/fail-04.xbel +++ /dev/null @@ -1,21 +0,0 @@ - - - - Singleton - A file containing a single bookmark element - - - - - - - - - - - diff --git a/tests/bookmarks/fail-05.xbel b/tests/bookmarks/fail-05.xbel deleted file mode 100644 index 355f172..0000000 --- a/tests/bookmarks/fail-05.xbel +++ /dev/null @@ -1,21 +0,0 @@ - - - - Singleton - A file & containing a single bookmark element - - - - - - - - - - - diff --git a/tests/bookmarks/fail-06.xbel b/tests/bookmarks/fail-06.xbel deleted file mode 100644 index d1e288b..0000000 --- a/tests/bookmarks/fail-06.xbel +++ /dev/null @@ -1,19 +0,0 @@ - - - - Singleton - A file containing a single bookmark element - - - - - - - - - diff --git a/tests/bookmarks/fail-07.xbel b/tests/bookmarks/fail-07.xbel deleted file mode 100644 index 8e24c64..0000000 --- a/tests/bookmarks/fail-07.xbel +++ /dev/null @@ -1,21 +0,0 @@ - - - - Singleton - A file containing a single bookmark element - - - - - - - - - - - diff --git a/tests/bookmarks/fail-08.xbel b/tests/bookmarks/fail-08.xbel deleted file mode 100644 index d26f752..0000000 --- a/tests/bookmarks/fail-08.xbel +++ /dev/null @@ -1,18 +0,0 @@ - - - - Singleton - A file containing a single bookmark element - - - - - - - - diff --git a/tests/bookmarks/fail-09.xbel b/tests/bookmarks/fail-09.xbel deleted file mode 100644 index 5e1ce64..0000000 --- a/tests/bookmarks/fail-09.xbel +++ /dev/null @@ -1,20 +0,0 @@ - - - - Singleton - A file containing a single bookmark element - - - - - - - - - - diff --git a/tests/bookmarks/fail-10.xbel b/tests/bookmarks/fail-10.xbel deleted file mode 100644 index f4eef12..0000000 --- a/tests/bookmarks/fail-10.xbel +++ /dev/null @@ -1,21 +0,0 @@ - - - - Singleton - A file containing a single bookmark element - - - - - - - - - - - diff --git a/tests/bookmarks/fail-11.xbel b/tests/bookmarks/fail-11.xbel deleted file mode 100644 index 520693b..0000000 --- a/tests/bookmarks/fail-11.xbel +++ /dev/null @@ -1,22 +0,0 @@ - - - - Singleton - A file containing a single bookmark element - - & - - - - - - - - - - diff --git a/tests/bookmarks/fail-12.xbel b/tests/bookmarks/fail-12.xbel deleted file mode 100644 index 9ba280e..0000000 --- a/tests/bookmarks/fail-12.xbel +++ /dev/null @@ -1,22 +0,0 @@ - - - - Singleton - A file containing a single bookmark element - - - - - - - - - - - - diff --git a/tests/bookmarks/fail-13.xbel b/tests/bookmarks/fail-13.xbel deleted file mode 100644 index cdd1aff..0000000 --- a/tests/bookmarks/fail-13.xbel +++ /dev/null @@ -1,22 +0,0 @@ - - - - Singleton - A file containing a single bookmark element - - - - - - - - - - - - diff --git a/tests/bookmarks/fail-14.xbel b/tests/bookmarks/fail-14.xbel deleted file mode 100644 index 2161632..0000000 --- a/tests/bookmarks/fail-14.xbel +++ /dev/null @@ -1,24 +0,0 @@ - - - - Singleton - A file containing a single bookmark element - - - - - - - - - Test - - - - - diff --git a/tests/bookmarks/fail-15.xbel b/tests/bookmarks/fail-15.xbel deleted file mode 100644 index 9a2ac12..0000000 --- a/tests/bookmarks/fail-15.xbel +++ /dev/null @@ -1,23 +0,0 @@ - - - - Singleton - A file containing a single bookmark element - - - - - - - - - Test - - - - diff --git a/tests/bookmarks/fail-16.xbel b/tests/bookmarks/fail-16.xbel deleted file mode 100644 index 18f55b3..0000000 --- a/tests/bookmarks/fail-16.xbel +++ /dev/null @@ -1,24 +0,0 @@ - - - - Singleton - A file containing a single bookmark element - - - - - - - - - Test - - - - - diff --git a/tests/bookmarks/fail-17.xbel b/tests/bookmarks/fail-17.xbel deleted file mode 100644 index 9ad97bd..0000000 --- a/tests/bookmarks/fail-17.xbel +++ /dev/null @@ -1,22 +0,0 @@ - - - - Singleton - A file containing a single bookmark element - - - - - - - - - - - - diff --git a/tests/bookmarks/valid-01.xbel b/tests/bookmarks/valid-01.xbel deleted file mode 100644 index 6ab98ba..0000000 --- a/tests/bookmarks/valid-01.xbel +++ /dev/null @@ -1,21 +0,0 @@ - - - - Singleton - A file containing a single bookmark element - - - - - - - - - - - diff --git a/tests/bookmarks/valid-02.xbel b/tests/bookmarks/valid-02.xbel deleted file mode 100644 index 85a84a0..0000000 --- a/tests/bookmarks/valid-02.xbel +++ /dev/null @@ -1,15 +0,0 @@ - - - Singleton - A file containing a single bookmark element - - - - - - - - - - - diff --git a/tests/bookmarks/valid-03.xbel b/tests/bookmarks/valid-03.xbel deleted file mode 100644 index 32f431d..0000000 --- a/tests/bookmarks/valid-03.xbel +++ /dev/null @@ -1,21 +0,0 @@ - - - - Singleton - A file containing a single bookmark element - - - - - - - - - - - diff --git a/tests/checksum-test.c b/tests/checksum-test.c deleted file mode 100644 index dc1a61e..0000000 --- a/tests/checksum-test.c +++ /dev/null @@ -1,676 +0,0 @@ -#include "config.h" - -#include -#include -#ifdef HAVE_UNISTD_H -#include -#endif -#include - -/* Test GChecksum by computing the checksums of every initial - * substring of this string, calling g_checksum_update with chunks of - * every possible size. That is, first it computes the checksums of - * "", then "T". Then it computes the checksums of "Th", first by - * feeding the GChecksum 1 letter a time, then 2. Then it does "The", - * first feeding it one letter at a time, then 2, then 3. Etc. - * - * MD5, SHA1, and SHA256 all use a 64-byte buffer internally; this - * string is intentionally more than twice that length. - */ - -#define FIXED_STR "The quick brown fox jumps over the lazy dog. Jackdaws love my big sphinx of quartz. Pack my box with five dozen liquor jugs. How razorback-jumping frogs can level six piqued gymnasts!" -#define FIXED_LEN (strlen (FIXED_STR)) - -const char *MD5_sums[] = { - "d41d8cd98f00b204e9800998ecf8427e", - "b9ece18c950afbfa6b0fdbfa4ff731d3", - "eeeb9a8eb45dd351d9ec0eb4acce66ce", - "a4704fd35f0308287f2937ba3eccf5fe", - "02edd93949f6d3c57d9822691b59f649", - "6131a51747610d0ae4e86c3a3416788c", - "8c871099d54c09d4099fa7a0e77c9113", - "bbb9873bad399cd1cc0d5e336ca5beee", - "b9b926544b8ecd5c3ef553a87170b726", - "912d57cea222bc1730dd531b9d6afbb6", - "03c729679ca3252a4735c4148b7c11e3", - "d7027ce01f22eb9d2bb32d9a153a7e29", - "e05e6a516c92259691cf9194dfdeff92", - "dd1ac3c70b6f51dd545cdf64053209d4", - "caa1e1e79c65480a48cf08a38ac1d87d", - "5aa207e85988921b8733912c4f526c80", - "b0e45b65d9e1d88169c40dc47605e2d9", - "e4b6d6fabe9dfcbe83a51d19df5f0ac3", - "168534eca593b6cef86aea9081f0f5bf", - "a2004f37730b9445670a738fa0fc9ee5", - "c4314972a672ded8759cafdca9af3238", - "29dcbbf4add427ccba06d3c37ad44aa9", - "d0312d0e9e2d8c063d95a06fbbba9cb1", - "770fd972e360cb8538ce6a880741936e", - "8e53cb84ef3d981a86fbb69b24827c46", - "83de97cab1f553eb3acc22866a4f6942", - "a2829f93d701f36d808d0a698dcebf02", - "efcead92aba26426db84b75413f17c10", - "60a0732774106c2348eb576596668eb9", - "d44f138aa2f39488c03391771eea258c", - "f85199fa76594dfb190fab5dfe42a769", - "cd4c02f190df2372cb703994dd84e881", - "566cb723d4fb7a7dd38163532fe760b7", - "4433001bd59da157c18b09f6c10d4163", - "b76b517e01f5b708af50af906adb2dac", - "0f611396bcfe9ab7666c45ebd37e59ba", - "4c6606c2117565959048d356c1d7f6cc", - "5f7f3f510b8a8f0a5e1d6193c6c7f3af", - "542560ce828579cfe777aa165b4d1bed", - "171e092149d366acca00d1cd783e61cd", - "4ed8b5a69f7c329f498320947db666f2", - "eb4c251a5abb3c59d306276ba2dc644d", - "2b6e07526e77047d7935681efc3b9f90", - "9e107d9d372bb6826bd81d3542a419d6", - "e4d909c290d0fb1ca068ffaddf22cbd0", - "1c6d98786bea70b9c34ce7f33201120c", - "bdda04a65a37f97d3ac3be6b0d5f58ea", - "954c69b280f0b5eed4b36eb714d26f82", - "e5fad54e00d29bf5b1671b3d351624e9", - "1a0b3d4eec1bd869af85945f60ff19c3", - "055031167bd9f17448623653eb4b27ed", - "4ca7c851615ea3abc43b5e1df410b84a", - "774873408e0032f8c56106dc28d489e2", - "fc44cc8ad9ff4aef8a4187688cb65378", - "b939f1b04b296ac8ff8261876ae86704", - "de9362af59e6e23688a243f909e9fdbd", - "6827a93d7492d3da381d7b45f2a0b94f", - "459ade91c05ca5f8bfdc8c3f6014ce04", - "55b143ec7d943b04666010e165d753e0", - "04ad29c207b52f46fd50f208744d936d", - "8d26f6529919e3d3e33b5e147e96bd8c", - "de98a267f5acd95c52bf439be075f360", - "4a8a2b0f0cc485c957992c6c9865b33d", - "566f00c9d7ac74a1daeb2925de2aca23", - "6ebee39c52840729c65d815fbdb9e9c7", - "7dc322a68ec5881e78cb718a3ca9a557", - "b00112c2c7844e0c6c0cab1fdc7a12ab", - "6f78ec779e96448daa9675bf06a0dbe3", - "8bba94005e06aefd071ed8a5c1b89068", - "220316718ce3875281be580a731ef0a1", - "7dd175908a4fce0e510287a9f884ef1d", - "030d864e63a6b67e11084f27ac5a422f", - "cad084c9d6c71aa60c414b3df22e4ef2", - "a10296630814335017df32f94b5202ff", - "de23bdf63d07cc75716e1e303df0677c", - "9718898182f2ba3a4428d9e357f5788e", - "9dfc12c4b82dcf727fc6599a0696a48c", - "6cca243870d308ffe8ae51993258e9ef", - "6b425096ac7743989c9744ff45ea027f", - "742a87784ffd6e2b0697aabf6b453309", - "b9b7f74d898d1fe768777bd7fb7844e7", - "4717614d82c1df37d608111953c75912", - "43298b7db8498f89b9aa1bcb410a8ed2", - "1b3621f615f0861d672d406257f5a97b", - "9ef3e55a2eb9d5d41f9f850cc86f8fea", - "3ec2cbcec99a048d9410c64a61796b0f", - "e75f9f48ac684c1c49a256df39ac118b", - "3518518b7b3b87f298d0518ccab65534", - "d936105bf33a89e00fe8ed8711b732d3", - "70858151e61f8862decb044c2050ae40", - "81491684aa39d20b064ceff099a3175b", - "bd73078b5a0a3a6d40fb1376347d64a6", - "9da1f6dc1bc2ffb5ccafa14a04ff5f84", - "a5c9c51a8981234ef59a969e3ad147ef", - "c105573b4d5ef469c7867094b4e589e1", - "d479c97efb06a112534196e257192c4a", - "fc7b07eb35cc515c1beb93aaa4e51a64", - "83470666e83e382a35d97f406f79eb70", - "e2ecf716fa93c1e1764a8e584cbffe04", - "534a7c131ee92bd5c9105cd293a9fa6e", - "5afea20e81c95d55e70bb0805158d207", - "8bb0ebc08bd51a0f62808c76005d5d33", - "c689312f4c99858ba414b63b61408f7b", - "cf1636f7d96fae80a428db4dbd93450d", - "963b816a27e6432c8200f35c11cb3d18", - "2dcd8661e650a8efe99642df35e1c0a4", - "2f6207c7ae99db3da286ebdb98b10f60", - "b515b746e01836e24966ff679f9dde6b", - "5b53b6ca7982077b891b03ae9546984d", - "4c57e9d52f8e782b44304f2d4613456d", - "7f28eb1a0f03dd38c73da46973299d00", - "997d1c07005040126addd2dbecc623fc", - "817dbe3e415b05eca731e27ca792adbc", - "ebffcb6fd54cfc146afe9485884b540e", - "2d6394332758bd5411eada08d85af3d6", - "27e0d08eda3a775290e0962483fa5ec8", - "d444cd632037609ccb972ce79009b16e", - "31c0453b13e1dd83f6ea55b7be54da15", - "aa95999a313b3794d7902a751ee77c05", - "cd30f6386d09f62f49537b2d23ea713e", - "149a308e31876049d76b7393512451d6", - "d0d4a7c2254d9f8c18668c103a3d7f82", - "1f822faa98bc97d382fb28019730daf3", - "a59e31843f29f63c8ec857084fd91161", - "e871798ecb332a9a082ab69d747c624d", - "dba105cfd9294cbc4269096d9c682b89", - "c9cbdc59fb3afff3051b33788d1e946a", - "890247b165402b325ac88212b21e4e42", - "777c5b13c598663f136be27451b5379a", - "888e851163704b4fed2d9b82e51aff16", - "3069f2cddd3a17dd655c61372def9c0d", - "39ae3b6ae2e9ecf5f0c25eff8d52ddef", - "058dcd07dc12be85774e7f72587bfe43", - "522c5460f239de773cdbcefb4d55b129", - "c6b5babfeaae6d7bb86c1c2b64fa1b56", - "fffa674d8c9bcb251c0ab3cf9d7aec89", - "7aabad234a1f9f05ef6c5fb6ddc15b0a", - "9b3ca93cfa10b081de65516d67170e3b", - "1990bf44ba11b087af262e017d8c823e", - "072e4bc6ef0ee5d9e7c56dafb9f65088", - "e2825a9231a65676a7b79b648fd94fcb", - "ab864a28e6eac29000429a5536fd9cf9", - "decfbab07f8d11187365c385f12d038b", - "1f0dd358531e06187d33964d0e0e115f", - "acdf4cc64f0c62013621d6ebc69687d2", - "6827965643e24616e892e5636f1265c9", - "2daed5786790d38ede194d351b383d46", - "eb05cb49a9e01e2c0a1329c2d1859394", - "83065746806dbca73e787939d359e74c", - "0a318bc9d7e2d4d03a96e755fd2214f6", - "85421302d14c37029512ab3e848c4498", - "02ee794a181044b80588bd14f76ea4dd", - "abeca493fed89cd65ed112e069a695c1", - "e5828e0a11268c9baaaac24bd46d1e15", - "e0a8b89702312967460ad9940aa108d5", - "6e5c8f2aacd19e70d15be253369cdfc4", - "eabc6ce71e74b5b48150ceda5a916948", - "5c263ad8e8dc1fd66e9b35daf7f74c48", - "030b2b56e20c53b75191369104b9509a", - "1225f4418731a8e7944d1366efd89234", - "9085ba0fe1c64c3dce45708de32c3440", - "49efb746a4938e7da19ecb3bb2c8e1d3", - "833095be66f1f7b5942a817846c97ed5", - "28f9f64eba29e57a7bd4bc0840aedf90", - "9b5984b93bd951a70dea62942634c009", - "ddb73667065d5ab761612be590e339e5", - "59c4b46e73c2679610b7a4e9b3a04bc1", - "fcc2a983de8f0ebb193864e0c60a00a6", - "af8f1f4bb88555d688508eb9f3c876ac", - "814e087171d6a45ac4fb4a110e889a38", - "733130f693a1c3a24703052717330807", - "b319f375927ed3f197a26c1112df86ae", - "ace1c7e7c2ffcfe31a042d2b9ae00905", - "5231c151c22b31180e900647fd5097ed", - "07e7238f4f3d8b3a279a2d9f78fa8b08", - "208b1f437aac92a96eef5ec9ca5d53da", - "3a675752c5faa15bd61c63499684c570", - "efa1debf8fb84e142c83c0dcf221d247", - "d940ea701a781a4ff62a99d831c2286a", - "d88294e690a6375d22b12fcc88bebb56", - "f209ebcae30e147ccd9e42d32cfe33b4", - "fbf1e18620fe5a9c40a65cbbd50af177", - "4e682a50db552d15bfe109a1147f6770", - "407b72260377f77f8e63e13dc09bda2c" -}; - -const char *SHA1_sums[] = { - "da39a3ee5e6b4b0d3255bfef95601890afd80709", - "c2c53d66948214258a26ca9ca845d7ac0c17f8e7", - "6929e765f6bd128088cdf81ba4805d3a84da4e5e", - "93ef0dd827103681fcee453b78be2ff14e1a261d", - "9f7ed32a201bab6d11f7be88b9335973d93de3f5", - "a2b847dd0e90bca83b418103baa63c67c85b5a30", - "ee4801c9d009963ac6dda49b100f0d9a9f3983b2", - "0dab89aa7606af6df94d1c3f8872ca98440ce299", - "2eb3456b1b4fb96df1309eff21b02814663f939a", - "30b59bc6c7c1622283a23950f2984bc5cd4fdd51", - "4d39faadbf264f3fb59268228994276c36fc3172", - "8312b76dd9300bcbbd9c5148461949f31f593bdc", - "0d12bfd71a11c686cf53adaacf0bec05c557e768", - "ca150c0c3372de80daa720b7d4081022b7befbe4", - "d2ac2275af550efdde0aca4713835f3480498387", - "07bb8c8ec36e16d57141fbf95fb8478a668b451f", - "6ad802395de4400a9892c9f65868879bee5d1bf6", - "569c7018c812f0cc51c093dbc026baebaab1eb22", - "b8cfd76b506e7aaeb55c3d4e73e8868df8c4dfb1", - "c519c1a06cdbeb2bc499e22137fb48683858b345", - "3e3436a073e72c5300cdca6ce5c321e49dfc412e", - "e2b72fb64787db45dc11bca1f194bef40b5be347", - "52f4aaab2d5f9bc918700c517253e5bd6981ba95", - "001233b5471e0bfa33f8133cf3cc3b97351033a5", - "b2cc1f24e2599121adf86c5161dfe43fd5486985", - "743e27565bb39d4cf6cdf7b19450f94ef12b2206", - "6b57e81439c46aca165e5eacd44c0829670c9bb5", - "4bbe681b61206e8689fce488662e7be67053ad03", - "332ffb34a55ebf0b01beb604bca729887fd4c047", - "b09b432ae19ca6971bb28a3705c9be3b02ec388f", - "051605798e587fd98b428b88077d015494978bda", - "33d579648c883c1b3a2ba91b7d4efd79d2d04e65", - "d035de80a23137cd473991fea53b6b1b1f22e57d", - "4ed82184201c1063c9f89d83b01d277e2db0847c", - "1477d62ad76e1d543380ce2f4253a701fe039af2", - "df72568859f54940e93ba5ace28430d38e4ab10f", - "65ebceacd76a51d7076728d8ecbfcb1a4014fe3d", - "0f5f0f1c642e616224d356a835ed3d054935608a", - "caa9daf50b65b3739eb9a88547c516d89b72ac11", - "1e9c81970164a681a35993d773e1d55d328ed64b", - "8aefdcfcbaa21522fb39162d7507492e47b30f25", - "a374c23022eea446300e1b3303272bdb8f6cfab3", - "f2f38c31109f8a9421f301e9d554193bc4274a32", - "2fd4e1c67a2d28fced849ee1bb76e7391b93eb12", - "408d94384216f890ff7a0c3528e8bed1e0b01621", - "22b759d30862cc7c7eb3ce9616a9d4e853b1e14d", - "97e2821bba8dbd62f7823b7ecf095dad5d152371", - "190c9e3674d72f3abfa027a38a425de21ea124a5", - "8a9f1acbeb7dea1bdb61c0e5885043caa84c3812", - "8431fa593176872aea33d2ece77fff42f22c409b", - "08efef7adec17bd8d97f24cc373bfeab4b602d7a", - "669f7e46d635f02a355635d9a09bf3bf2936bcf8", - "695ed476d76f489707db6862a6411973d0207558", - "084ef870fa0d4674d8488040a3d147235cfcb50d", - "2a7d533528fcdaa6795ece88ab526b3e077f4f52", - "4546fb23d600a7e358edf7033eef05af19b4fb1f", - "59c3623fbc8c29341481a7fead82ef6b3aa43d93", - "806b2e0c9be4502325b23d20f085b6d8dd8f559b", - "113382ddaeee3a9880b3328b4240ae9e750be3cd", - "543bef2867245f702b77470bfe08350cff1090ab", - "977eb8d9219bae5415e13656113e30d66c2f5b45", - "58153daaa0ec2e5f3e96879a33aee162f0c1283c", - "6663fde567230f1d0247dc7ea3144b3aedac160e", - "b418a310c03a4795b9ed4577c876b9dc50c18481", - "75c2add8fd09dedee1f2728426f5e94f9860d062", - "3f188f1a66fd317b645ea7eecebcae844bba9944", - "049296261ba622294ec83fbe8f5cb0d2cc3c475e", - "c60fe6fe0ea55fb34b3b5e740400c495e305597b", - "64df347932a61deb5ed0e41e811d24cdf745c7a8", - "eaaf91d87507541a572b693cd53cb31a4ff3ac2b", - "712424206790276862399340047ca6d6028ab2e0", - "2cc40cd0dd42274998746980844a8df708a3af94", - "da0ba0bed525b2a41d906aaf078f7da4c53bfad4", - "ee16dc82f66d8f069d83b76f1c433d658367dd27", - "64fe9ccff8f5235dd72a85e6c7676bc091f34038", - "20e9001f77c5454f9b9a9fa681f40067e4e1b8c2", - "40cce478fceb688eea9d9385f00acfc73ecb2f9d", - "21955259821de3bf9de7c8708d7a4d037d244c92", - "b922eb3c6a86c38717535220cbafffe3032803a3", - "be386c5615669fb19a05101d90df850569a366a1", - "c733de72b09be501a6d8555a51bab2ca9d65b203", - "740eaaab9d5ac5a9854260b09a1127c520b7b27c", - "0b3e8e2cf27e492dfb0bfbe9b8d6a3b2e2bc17f9", - "2516ba614aced5f991fc2f67e66fa90f3dec756f", - "5abe738e94964292a2bd38e6cf048138bb593fe4", - "1c5d0b73e977edfe89b447bfca585e8826b5783a", - "e3096837858dc2247961a29fb59164d5e39d8cd1", - "9a6d5ce05968464a6c00426a5d18595e5e0c2534", - "e74f03f5e56d5a9926c6f6351fd8131242a84ef1", - "573b84daad0e7149c3b128f65d75120095a1d3c5", - "5facae19039c0444d188729f5eeaa58440b55d7a", - "e617e14b9abc583b5e31b9ee315217cf52e7053f", - "62bbd3fc168a7bbd4703fb1778d72214115dc200", - "f9fc375d30b5626eced981d4ba80d2fcf6fba368", - "01227f21040de0e7be4979604d23aaeb2d220d50", - "1e53d5126a6f21a5cd9945ce4ae79a856d1c2aa6", - "def7d9867c9ed2bcf49984cbe78066456175afa2", - "2e1fc20df269fd7c6894c61c01f6fe0518029d38", - "5d6c196729f7c0eb0850bd9093d0a018b62168ba", - "062b7865763fd8cd0ad6079ec51a97c1bc35f88c", - "4630931b71697d8ffbe6154c45be34251811e205", - "a09166918a47fbda6c96df9a83f2e3b0df9057dd", - "036e1c39411e8eb6fa3d616fcad19f92188de807", - "8e6aee80cbffd0c0a3895a29bb029f57e1d76aec", - "483a716335fd7a07acb9a8fdf759add85cd55ffb", - "b1b1d87b55275de0f3b9c1a759ec6b543282cd5b", - "cded9ffcab1c2fc873af9650ae35004160b39410", - "37cc453cada7173368bfd3ed7c86c053557e5926", - "8538eda858022257c393f2b7d72291b2a133f452", - "d68841c1696583e487cc09a4e01a27afc4753bb9", - "c29fa22be5cbc683d781ce42d325830b4337a62f", - "28863c5a458f53c87559603b6bdb2e890ff002da", - "5e4e15446aeee7ea6989e2502b20b1278ee81768", - "25cf8915d7e4510f14f83d5317e6535d6e473bfb", - "3e602c716c72f31569c1ead4ca6b8781d15f9866", - "67e03a7960ccb911c4394671aec77d22f07cb495", - "e2b3f1d1f69d2b555083899700cadb4a971349b5", - "6c423e4662e730b3885e3375ee6d914612d5867e", - "1694013c7d8caf3b3c577c8024ef1c58f94b7955", - "91630edf6358ff0411a23f0a95ffa693bae1323b", - "028454e0ff1e27ebd16cae59b2da633d377204c7", - "0d07cb105767718dcaf998f307d4a97a38b35dea", - "23c3569fc657d3a4b1bdde834df0c8f6ffacab11", - "73c30d2754cfd13d6ac47ef28af974bfb021a121", - "055890aeb6273f7a6ab5176722418048a03d3461", - "3b89112c4fdc7e3fb8dded5157ae95c6afb68da3", - "7cb3cfae1db1575b52d02afd3d12f27fbfd6b56c", - "a310e3d7c808c74a9a2dd611d0bd6eda1f5f5340", - "f329178028da5004aabd83549936ea9728326736", - "5578dbecf4f35c97fc8762721ae16e010e42330a", - "14020d1fc290f5a4c1feb06d970b395aa2d60518", - "a1b2ffe5722b3d68d3dfbd1d3135c98681f1b480", - "f3b3996a94517365815ba8bfd31306483c453afb", - "cba0a45d7202f78c1e1ec5f150a1361df0565553", - "dbe1feeba6cebaa82465ff34ac85324eb99bbd96", - "067fac1d8369638e135bebaa5fc24648efe539a4", - "18983e0eba9f797a5602dacb9e3a1fdb1b0e5b8c", - "9f5445a4bbfd237564917d8749986798d61964c1", - "79025990785dd192d5732f072e29a37728a05109", - "a7caf5831836aef6ac5e6726a05f807ac20bbebb", - "23027cde1334d6db48868b8dadb94cd027b9b7bb", - "d0b280d64748bfc59a7da25bf640aa2d5462266e", - "8a9c5dac4ddf028916e6feef81ec0cb670f1e713", - "3790e9a57245215e68c06879cfb3d49ddf511f11", - "a5004ed91303ead3670260a0e682726c42cee57c", - "23e829a6706142d16305cc8f7f8c8b9bd8ffc040", - "7e592d0d2c566b32b7c1e44b3413354cfae15e4e", - "2e7a1685959b20ba75ddbce3db38798fc18becab", - "82218944dfd3501a3d4705c5132ad06506372a0f", - "ef4930e12ae3838d6059cf4990c8a0c2f6669c59", - "574f7a6ca7a130635f84701294f347ce26d2d586", - "5c91c2f83ca9daa19786263acd958bff2c79ca44", - "65d838dfb75cda0055db5fb03f12008ede246a3f", - "3c29ee4da5392eb1bdc9eb39068ab6a870d0c16a", - "f17a673f3438bc7d8e0b0b22ccf20e4b868f0ad7", - "653bf84319d61c7b41ad67b7648c8ee8571b6a16", - "3187b6d0e15a37687fa6a8683d54e2fc5c3a13da", - "4c29e4987613d1b30fdeff0a6af7a91b3be543f2", - "ee68df44ba84a65ec112d289100ecf978485c7d0", - "59283ef51d65bf7f7b7f430059aea19533f780b4", - "7694f04e3be4bea0e35f95d4728fd65cc9ef46a7", - "dcca8b27811f93142ec2bc14762593193ea69147", - "20115938f5b50616fca15cc1816b28423c2e016b", - "07b7e2a3f9733cbff1035533d0f2ba66008266b6", - "cd2d04dd8bd78ac250a2adebede35802ad117110", - "06e86e3d4a3f735c915a770fdff73ca8bc610476", - "3014039565f5e568630f7e463c35475bdbe697c9", - "eb729c4de8839c4123d0eb24d1d35886286ffff0", - "c990f68c512ecc7c23ec6ff428d51300d6425dc2", - "f3df0f4508b4cfe7e720f830f560c4e10f900703", - "43ff171136ab1855eb37721075a9208c1de3ad20", - "5d487b6bd25daa126e8edcb23f70a87ce4f7a27f", - "84f6f72a57317242849131eb3c6aac28cb01abd3", - "fd583ad477087f488eacd4ca243f1c93f5dac09b", - "ef3cb487cb03dfde3a33b592c24dff439ce9b783", - "7bd47a7efc8448f750163b07c812654bfadbe91d", - "b9de6e1facedee977ccd4b30aea8fe957a0ae09a", - "4ae009c0577ce4d0c87dcd743de9039ef050210f", - "04280ea8afacc8b46982710da67a835b92275625", - "ba7939b877ef0c1f066f0f6944b8c834f96fb67c", - "bd735f759f8c653a215f2e9d2cc1d8a248a25567", - "e9c70b7ab18d0b07580b80f2d92c43b11be5f71e", - "795c10dada7dd963603073be205325324a1dc205", - "8802f1d217906250585b75187b1ebfbb5c6cbcae" -}; - -const char *SHA256_sums[] = { - "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", - "e632b7095b0bf32c260fa4c539e9fd7b852d0de454e9be26f24d0d6f91d069d3", - "3bff939c10f4d9bc21c6944606bcb81901cbad80fc6801b257fd8aa127881687", - "b344d80e24a3679999fa964450b34bc24d1578a35509f934c1418b0a20d21a67", - "103c5169871d49be7a2ebf9e6fe4720244cbf1fdbccdbfaca489898ea069504c", - "5845d549b3465df3c1fe755ccd99a9252858b448fa85fbd29139c3a33418a9ba", - "2363ecd70a265e2233d2b8b0a703bcd6aa71dbf47a8716fcdb4b35ac4fded6c7", - "883dbdc815a382a8ac863a990b4a33b601acfce6286df588b1e10416ca9934c1", - "10ae0f24c936bc39be215f80c343c6e870f640fd56b0aeb842c3cd49a4e6dfa3", - "3ba62773d07dd21b5712a1c221207bf2f46e459d862e7b7062b3b9e0073bbb1e", - "1a90011d5a17cbd702ea49cddd28190439dfeec1710e0efe52315e034ef449bc", - "030b6b1f71e51020e7b34f753d26741e7ed7c5cac3324b4fb237bf7f190326a1", - "a83b8899ae591254330a059b8c5c5a0d61b8a5cb1e20cd43cf62ea950861a108", - "8536a46b036db54a1f68389081f4c5dfb36c005ca655c0d005ade052e074fefc", - "3b6052bcafcb593a2b44229d6418f3638a1040ede220a06186948e0bc2378e10", - "9bc94b608c3636f6dbd12a7a08e586f2529c1910465cf764e5a2a16260a15c3b", - "1b0b70a113cd4065b095bae73fba840f3b93912e89dd535f7f795912e9b307d6", - "33a753c1d23f6a539b55c5c35dc0174ae048bbe517c701f3959495d509b862c1", - "99159403f98a4d80adb6234c336029f32c17efdc70f1d412b7e6008d6623f3fd", - "5cac4f980fedc3d3f1f99b4be3472c9b30d56523e632d151237ec9309048bda9", - "b29d66e56ed90cce9b0165c43fedec612b60a071974d8be4513e18580d55b5bd", - "60985d1eccaf8f3b95df873307d4727bc7af67dedaca6ea3d00d7e80dbb9d95c", - "0ec4cdc3ab31a48025746379b070b1af6b152e6dd1eefe8a16d1855c85711d72", - "76169b1e79ed4d640a78d664fdaced5035e7e0f116d7f044169763763a73d6b2", - "cebf42910d175773a31cd23fc7c08eaddba11c267105e51688728efd6152f798", - "8df831769cd51e4f57808343603e97c1ea44fcab46bb595a5000b9ad1d03bd70", - "4e866f068eb39bb4465a3185badc58f8be565b3cbe0d8e79d0c893dd92ca99ae", - "4a7b18fd0454f18d0ad320d8cf874e0466490e327bc3ca3beb13b1cb0fb01fff", - "a5e86ccb68457b2e8e5591e3c132ed5f824480ab3b34e8b798b1b4e955cc2bad", - "6c007ec72ab6d8bd1e7e2b90ab06095d38d042c172100b5364687985cccb71d5", - "588f6b03a29d124ef050bc1e46bb60cd983e3d75bff45b6f1438cb58baaf1a9b", - "ce32c090e5e13b6e5967e71e0d0025ca61fb6bcd54502221e354535ee7504fbe", - "5f48828a7ecafc69180e8e9607b277b3dd17e53acc043412a06d8f170711c74b", - "2d79fab9bb7d5b49e4c7eb28c14334f9d014129ce43d1252636b23ecaa569771", - "acbe47d52e08dc6ae67b0bc249c6fe92c2fea7cb5d168d089bdb4e5f012a70dd", - "177264d66f016c32fc7a4bf3d6a18fe64f3b92aa25dee9c3b84e6e2d3dba2467", - "41555a329cd561031b7f79aa7ffe614aa341fa4c8f67be9d3169ca02ac513951", - "6c450daf0a44317b850ab800b2986e3bfa19b118d82de07331c59b4461e08bb4", - "72a0280b4079082c4823f72d5847038ca4b3d689b8d4de7f4b8565ca5cc59ad0", - "e79df309e6b0e98a1b677e5d47765063170fd0fbe136d305230dca2ca1ade525", - "119ef8154ecb9f78200ab9a95930877811261da37f9cad9e533ad34a57275fad", - "fd535438ba7bc96dc5aae8b19059fc4307c0e2df4b252dd0d4d10dedd3116fd9", - "677b9fdbe2bd79af033c224b32803a77dd284885f8655aff914ac63fb65c0a70", - "d7a8fbb307d7809469ca9abcb0082e4f8d5651e46d3cdb762d02d0bf37c9e592", - "ef537f25c895bfa782526529a9b63d97aa631564d5d789c2b765448c8635fb6c", - "88e197dce3e2562b9fb62bfdfb92c525328742af370fa2cd7c7bafaefb38f09c", - "6e186b825513e046ba1d030f5bd31caa27a486bab8933e3799e8fc8c7a0be919", - "ffe66f70564e2ef5b55cc4083aa1bbc24169c799a624d98182f99b8a7c950a82", - "381ba8d74f62ef53fe4d22511c9d7c9f182d719e8073a5ab0201f91676a2ee86", - "0147a26010960f5db71fcfa15c6f9278f2556905aa9fce122bbd5fe787e3d934", - "fb736023fbce2dd88d6eeffa02dc975f5b3cfa0d2c0641382ace3cf92975bda8", - "7c17ff3bf15c19d9a78f5c3f60dc38fab533ece520c8b8c73fcb0fba670c76b3", - "e32271566d6a71b90285b5d00447d1f27737d56bc14b17efea026c78e27af416", - "6867916bb6e48ee4f3b3a9eb4630233ec89fcf3722ea429ef300139d74f1f18a", - "5a0e44a7c154b01f19a6cf5d83d8ea556d17ba1ffeb05bfcacdb7c477dd1c912", - "0e9bc14d279f681c01eca319b7c22bf6e313186865a4d2111712f29ecc0223bf", - "1be2cb604f04f8538e1ab595dcceccf0b838041e72a4dfde8df53d84fc841828", - "0415d70cae1ca48b070e789748e8f3982a209a0c4b8070e2d3a26f729f04b0a6", - "0e29d748b4cca4b372d587ab8164361aa127664635f956fbbdf076c36ffb0c9b", - "8b0ccd3d72a10e396b16b67980f31823972b7114059d0d780b7c6c1d11aaab73", - "7105f8ae45fcb1a1829053f98681b526616e1d6028d1f72a6a0cea1e079c2aaf", - "5ab206331d14b2216b02eb0a58388e8209ffb396bc54eb22a47634cf236a03b9", - "71daf2e02b4b542a8064567793b62fed41f2241dd284163b15d02d279910e1d6", - "795a664f3ecfa5003b7d18e8ac44d88ed49a8ad731238e381f76cc72451e5d49", - "0d01316239b68e707e8079f02588bba156906aa0a8b328a2103f3dbe79464272", - "53798a699aaf9b5992322e27a7c48802ff41d04acc52c1e6657fdee037f9c0b0", - "250676ab47b392eaeb3bd8f7640c676e5a9fcfed22dc08948601c68d7eb867e5", - "c8c295b3179d555b5e04c82f8834b031d4dcb5df9409081e6e9b23be4d1aeb93", - "a6265afb2182630750a70887a35072908c048d5f9c831a2155da1887f1dd7709", - "78ba265740cc1335d27530a52dc456668c9475250d83f3e1c3041ab3d0856338", - "490b607d2009507689d5ce40f964e9b5c56ee54d13d99666eec256439a5d7691", - "012c3b2137fbb69e1b1457499923622d7a6639c3fcfd0c1889de9f1ae9a5224c", - "47f57d4c0eef68f4b14a02295da342bba8be6ddf901ed4ae1eaf7c3306672593", - "33eea677868305f597087e15be83723efd51e1f55342dac47afb604579fa0f74", - "f9aab1fa5ed80cd385cf625ec808339d819bd1faee979c3ee008db68db19e6bc", - "1e6279781c1a757c9cd3aaf2665c0c1d235e514065f57dff455256896313c5ae", - "fcad8c2b8ab78e1eb313f9a77b85e29ed86d4468d78e845fe7b197cff28889a0", - "0cc46a7fba1d7b1e7a7c6c438352fdde342c573550eac5a177e38d0cfd854b91", - "7d64ff1a21b7194e2a34f718bf536f4fbb636ea2d50b9de9423c1a64da67a566", - "624097dd2a64d12dbd7a9d15d58b6a31a8c11e0be67f20afd388e61ab316d6d5", - "c10ed525d528079a6ac6e6ebc51bb439a48df167c6860da2dcd8ef5a101a4bf9", - "b9ce9b34346f2d83dc60927231c14d1af0b1a915514d610cbdd69a8928ae1b57", - "4a3194983f551da64720e60b91e0bfcca2c5f7277b97ceb813b6665cbecf5078", - "cac95b35edebc00cb109d4726befb06adbadec365e102f8c9c024fec2efedd93", - "bd284ce312ff8f71a8fffd5737733c72dee0199eb5d9dea29875b02fe7dec138", - "888f4d527281b7ca77fb63651ea8c28850d62f38d6918a178bc7de7ecd61aca1", - "50839952e08506f523696a35e758eed06d7fce0a8e4c079242bd15b476dc2632", - "ce6b0b2e2494ba591909f5971d4a326c395f47d45ab2389fc5980a8d7c160373", - "328524b5f7c5de2b6fda754cd634480d2ae9953514e208d93c7b0493de3c376f", - "00e6bbca7e9f230b903d0029a603831688e37e141d283a88ff65f8a8de711214", - "e9419c75509f476ecd71c0ce5de42b13b70665182d470dc6b9389992e71ca610", - "bc93bf4ac98f5e62a180219b7cae5fe4b1a33700d1abd8769310f1b9c458052e", - "b59cbe76a3a993a8a5e93e7fae2277a99c52b27570f8cec0fc27c6407b87a863", - "7b977d99df79f3c123a551339a3584e1dbf8c6b220489c94e8b5ef241a2f4f32", - "42da1a65ef28c00d30b63128ad839782daf8437da50eaedf9e40c05daa324030", - "27b7b244d0a284afc02b21ddf8818d4934bf7d4a96db6c9be02b9a29f1d3e877", - "69e8ebc88995bfb9af4938fac297e7cc87f516d91ee3db9c385051aa67bfa291", - "e97ec334ea0e600801845a004cf943282716e537d2fb41edd3252ecc604cb868", - "61ddc6c83fcded7492a0b4e6682a2ec54ea79bd832ffacebd13eec490ae9c513", - "b1b2e4d6d5f02ab694d8be129dbf9f7fb345190927fd2732ab24e395ef877a95", - "036d3ac977186da97d849ae8706f573bae36822a83a8b820b0b09bfa7a4fde52", - "244dd1e7818cc1fc0b1790e5bdd79df79720b5ca4b30ddfbc6e03d2fa80edf24", - "025dd4c8ae7d9f3aec6b2e3014eda38ec54898c67de9ee68578ec7cc8254c345", - "e29858f925c90e19c49336f52a8acf57e7a0f10fbf1b0254ec9926afc77d34dd", - "e6ece3c684d5874497b83f6b486f0dddef4377f914e19ea717b82426d6ca37e3", - "952c6da8834e0c4c127269a6e69c59a23af9e35ed70577715979075324776eb0", - "675a0a83882910ca29d9a4b72e278afa307a2661bee3f28dee7faa7db73dde73", - "4102eada32bbc31c13f1fbf2f039bb7a46bdb3589e9bb3915046de72c0c2ead1", - "305793f522114ca65e243f80b82199425286a07585deff0d132223506c54c48a", - "c666ec59da13eae8361c08bae009f114641bb3bed6f6c88c69c888ab9b9bd2d7", - "115ad98815bdfbc2e9aa0922a63c530f2f49bb36bf339345694b6cfadc5a25bd", - "1186297e299b427c8ce24e20670156fe85eb9102f8ed7104154fbd10ad28b49a", - "2d02d02abca735d371fa9fbe2ec1fcf5c02a8eb5186140b849d13d5667c8588b", - "c8357ae61f0c6107d48ffd35b791f2a96c36d9004acbf97a7a6fe1941096e74c", - "e2f783571644ff40bb649ee1a6c7481e288eae50bd9621c638102c1222f02695", - "b057d8b05d77dfd016c7820ee32b3dcf8c0af73f79a003a68f7b344bff5f9489", - "f98a7811608e9f78df7c1dcc6765ad672d907ab49e3ab756b6ad2ff392ae3cb0", - "06727bbca9d6e47cbd4e2f61b313627cf0489c5f84850dfb45cb496f11e0d880", - "62e011d19bbb328c57808bb4dcb1fd25551a642df179615559a654e91b233afb", - "18811c3a1798f207c75d895a6deb4b2ee05a27749e5d4dab02f5299f8f62e43a", - "a2eec6a9e819ca9ae6accd714273210cad3a98ea104661b841b8b18fd695115a", - "b745658efb45b83211abaffe3af0e5fd3769866d154194c9078da9491f793bae", - "bef6454bcf2dd622f73ab849166a95f56be540ff05cc2b79412f40c60cfec3b3", - "13f42a4a6df75f6b09a53eff4a92b824b8212ce99b54169774958debe92ba00f", - "f6addf5f0a754434e6767535ee8cd12a57d3c78eb5925d421e43870ddc0c4b02", - "abbd74e4444bcf0a33da28cd9b74483d19c07c0c84c7a217ed1d8d143da44c4c", - "18c5fb1bfd33fc27a0b7799eb14d502e8b59acd5da0be6f9a7fbabd96608c61d", - "91a32360bd0152180990285fd7cb3145207d33f866c9d99e7f8bb7331a12d03a", - "3324ebb8bfd51c9ac3f3994a56b7e0c0106d9d938c147edb391a4bf812d6afb1", - "914e88337910ee43d63f77d91502eebb35ae38ac6138bd7af4d879dbb730ac85", - "bc73865737be6195981507338ef06ec2a5f34d3f12580b4f89d5e28ef8283969", - "0b41f57008120081011a2ba580d8cff17f9c1f3b2e811359cd3ecfa9b36dc5e9", - "a1702789897f4e641bf00d505549c6dc9df9daf904f3267e0cb583c7fb49e832", - "70737787a53182c78152e845e0d803171d27105c7ef9407b48ae51280b0b1ed3", - "683a017524f641b4c38c26db0df5046fbc38e30fbbe7fb7a6804e2e039c9d353", - "8bbd8c3f3c6911a3e73ba7a480f902a95fdf4c8a7c554b68e7330e4914481f15", - "66e62f07828e8a8a6ce821cb29fe34f2ec551d4422b593380e5209ee4a3a3e57", - "2aa054e91da4874329ac8946922323c8d5b114b4ddd714f54cb1fb069dc56646", - "47db1856215834b20d70031695491a4a90416bac8d231646bba8754585f67d08", - "eab539981a22c36e481b71d2c828b848b9b127963d7b5eb56c4903f5cf004296", - "cf43ef0749885e4108f8fc2774a840264980e4f2be51d1c803bbb90965745034", - "fd6847b7d5ea924beb8e7d43d0e87d4866f9744629f2768cf32e7f37efd23253", - "1c3d53f1a7fe78c34a4c33331126375e57f4f8f732d39e0ff550fb717e683724", - "f03b454c7bf5ddfe083798a85ac46bc671ef76b381b969ab4f333c74397693ab", - "0c7255ee15ceac49e1281447b159ed1ccb8fa09d3d002fe3337c80f75a247b86", - "4c69c21e1afa642423a660359e058c8d6a2dae61c1083b7dea46471ebf24f0da", - "b984e785026dabfa52ece12495df98bf80ba831ea316c08fc4b39c5fc00b50ed", - "40b33b1a89820917e19e95bf5abae2121b8f200c826a3559440010d2863a5acd", - "053de20a192f3205f46e3f68d8b9926abcf64df55d01cf166e7f8e8c8d042487", - "ababd9164d854d8a7b56fc4e6980dbafcd5aa017f5e2b5777a6e6e47460fc716", - "f3982fa10d2353163d644ab33e2c5af7264c0c9c8b14cd88d91331b5d01ae3c7", - "0d7c2df609dc5c44677d62b8839576b98ec78fa8b5913add17b7e9cfaa6aa75d", - "3b86e1a3a4e3cf19734b693cc3d9b24d4173b5e8ace1be3daa303755ce8d5737", - "dfcdb86a6ec326f0f4c8b167b5945979a5cf3a2ef20970c47b46ddd47f8fd6d1", - "e2a696a14922cdeb99abe04a66576e65142be3b0e53cf0c0f05c86acf63bc83a", - "780646dc52688aead41076d4906e17b42eb5593565f179a6bb5135143d40d03d", - "847ed344db2cdbfb7f69f9b2c9a5359e13df72c2485345a80fa9b114ec7c8c03", - "a4f5b2a505437424c3382e2d534ed2fdb55af631c5b211871f2e62acb5dd722f", - "e6e8883f5c8d840d7895afac181c6d9fb154672fb2c7ba9757ca8528242bef64", - "c89e7de64979fcbf929148c7b44322047e820219854600e88f7a7ce805971c38", - "591555d8d3936620ebb6be7549ea9eaafa9e6a562b9ebbbf4c04eb4f926d5060", - "2ec1da3a8252e21834db7c90077b12547f70890b853b5b269a38f74b421f3a4f", - "3b05f141c3855409941c6596a92ea7a3ab59764bda3cdcc6812060a5e5d1f48c", - "82b21ff095df092358450698e7a534453105014f3b227a210cb5d523191570e8", - "229da5c29efe0885663587fe0080862ef52e7504ca64f5d6ff1c26f5a7b1c0c7", - "cd3c1d86961be993a150c1126a958ef14a3e47ef21507492ffdee8b089774505", - "e346ecc2f3e8cbcbbead67341edb971f2a9e152f8c1e086693dce431d9e14335", - "5e5c06dc93c409e935b87373f2647f57a951118851b226f908751bcafb496b2a", - "2f5ded0589de3ef9f5e5b05df0a19b02fcee0e686900c5eb9e3153ba3ccdf685", - "6a0335f78e0fea8e4cdf747d6464f2de78e659b9de5be37ccf8f81f1e775ca79", - "8adfeb35e7d07f4aece0f8b4b282a303e45b11c9b4f9b1798cbcf8cf0dc5f48a", - "94dc98b89a5b498d7c7eb0fb0524af296d0181e7a4dac82c3bd7ce147019b52d", - "4b2dae26d837294c81e00c6c28692235a9ea046bc8038ea78ce1819cb5f54be4", - "77d9e99e3a956c9b52742b498b8811cb721ad798866d36d269b4b554a707e63a", - "652082a8998da5439cb5e695104febfa81d3d3a0bb4dfd49120b82e350b48f6f", - "43bf07481f0bc237e1ed2ce2b0b3cca1989f9bdbbc7cf1e78879984ff927b3e1", - "648f7216f324f0a46648d757a21dc25c9382c64a095ea95b62aed37596bdf842", - "34c3d02b75da5d2739bb8d4916110469e1b854a8104aeec7ccfef52a02f234e1", - "0d0b8d475cb50a40e2cb999757106f4576c5b69176df4c30e1c4659de1468ff8", - "63d7e84cef1bc8c74ebdf53fe795766f0fd32a9c6246586f8217010db1c2c9f5", - "99525cf2ec889a1628576099f34ece6d60de03fa85ade70a3d0913033934dc1f", - "8aa3e3cd4d678c9623caebac79ecd62fdcd15de5960c7fbffc3ab8e77788109a", - "c71259d6ad975ada31990fb7b3aa958248bd88d3563b581959acf4f18310f266", - "df3a0c35d5345d6d792415c1310bd4589cdf68bac96ed599d6bb0c1545ffc86c" -}; - -static void -test_checksum (GChecksumType checksum_type, - const gchar *type, - const gchar *sum, - int length) -{ - GChecksum *checksum; - const char *p; - int chunk_length; - - for (chunk_length = MIN (length, 1); chunk_length < length; chunk_length++) - { - checksum = g_checksum_new (checksum_type); - for (p = FIXED_STR; p < FIXED_STR + length; p += chunk_length) - { - g_checksum_update (checksum, (const guchar *)p, - MIN (chunk_length, length - (p - FIXED_STR))); - } - - if (strcmp (g_checksum_get_string (checksum), sum) != 0) - { - g_print ("Invalid %s checksum for `%.*s' (length %d) counting by %d:\n" - "%s (expecting: %s)\n", - type, - length, FIXED_STR, - length, chunk_length, - g_checksum_get_string (checksum), - sum); - exit (1); - } - - g_checksum_free (checksum); - } -} - -static void -test_checksum_string (GChecksumType checksum_type, - const gchar *type, - const gchar **sums) -{ - int length; - - for (length = 0; length <= FIXED_LEN; length++) - { - const char *expected = sums[length]; - char *checksum; - - checksum = g_compute_checksum_for_string (checksum_type, - FIXED_STR, - length); - if (strcmp (checksum, expected) != 0) - { - g_print ("Invalid %s checksum for `%.*s' (length %d):\n" - "%s (expecting: %s)\n", - type, - length, FIXED_STR, length, - checksum, - expected); - exit (1); - } - - g_free (checksum); - } -} - -#define test(type, length) test_checksum (G_CHECKSUM_##type, \ - #type, \ - type##_sums[length], \ - length) - -#define test_string(type) test_checksum_string (G_CHECKSUM_##type, \ - #type, \ - type##_sums) - -int -main (int argc, char *argv[]) -{ - int length; - - for (length = 0; length <= FIXED_LEN; length++) - { - test (MD5, length); - test (SHA1, length); - test (SHA256, length); - } - - test_string (MD5); - test_string (SHA1); - test_string (SHA256); - - return EXIT_SUCCESS; -} diff --git a/tests/convert-test.c b/tests/convert-test.c deleted file mode 100644 index 10b8c00..0000000 --- a/tests/convert-test.c +++ /dev/null @@ -1,662 +0,0 @@ -/* GLIB - Library of useful routines for C programming - * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald - * - * 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., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. - */ - -/* - * Modified by the GLib Team and others 1997-2000. See the AUTHORS - * file for a list of people on the GLib Team. See the ChangeLog - * files for a list of changes. These files are distributed with - * GLib at ftp://ftp.gtk.org/pub/gtk/. - */ - -#undef G_DISABLE_ASSERT -#undef G_LOG_DOMAIN - -#include - -#include - -/* Bug 311337 */ -static void -test_iconv_state (void) -{ - gchar *in = "\xf4\xe5\xf8\xe5\xed"; - gchar *expected = "\xd7\xa4\xd7\x95\xd7\xa8\xd7\x95\xd7\x9d"; - gchar *out; - gsize bytes_read = 0; - gsize bytes_written = 0; - GError *error = NULL; - - out = g_convert (in, -1, "UTF-8", "CP1255", - &bytes_read, &bytes_written, &error); - - if (error && error->code == G_CONVERT_ERROR_NO_CONVERSION) - return; /* silently skip if CP1255 is not supported, see bug 467707 */ - - g_assert_no_error (error); - g_assert (bytes_read == 5); - g_assert (bytes_written == 10); - g_assert (strcmp (out, expected) == 0); - g_free (out); -} - -/* some tests involving "vulgar fraction one half" */ -static void -test_one_half (void) -{ - gchar *in = "\xc2\xbd"; - gchar *out; - gsize bytes_read = 0; - gsize bytes_written = 0; - GError *error = NULL; - - out = g_convert (in, -1, - "ISO-8859-1", "UTF-8", - &bytes_read, &bytes_written, - &error); - - g_assert_no_error (error); - g_assert (bytes_read == 2); - g_assert (bytes_written == 1); - g_assert (strcmp (out, "\xbd") == 0); - g_free (out); - - out = g_convert (in, -1, - "ISO-8859-15", "UTF-8", - &bytes_read, &bytes_written, - &error); - - g_assert_error (error, G_CONVERT_ERROR, G_CONVERT_ERROR_ILLEGAL_SEQUENCE); - g_assert (bytes_read == 0); - g_assert (bytes_written == 0); - g_assert (out == NULL); - g_clear_error (&error); - g_free (out); - - out = g_convert_with_fallback (in, -1, - "ISO8859-15", "UTF-8", - "a", - &bytes_read, &bytes_written, - &error); - - g_assert_no_error (error); - g_assert (bytes_read == 2); - g_assert (bytes_written == 1); - g_assert (strcmp (out, "a") == 0); - g_free (out); -} - -static void -test_byte_order (void) -{ - gchar in_be[4] = { 0xfe, 0xff, 0x03, 0x93}; /* capital gamma */ - gchar in_le[4] = { 0xff, 0xfe, 0x93, 0x03}; - gchar *expected = "\xce\x93"; - gchar *out; - gsize bytes_read = 0; - gsize bytes_written = 0; - GError *error = NULL; - - out = g_convert (in_be, sizeof (in_be), - "UTF-8", "UTF-16", - &bytes_read, &bytes_written, - &error); - - g_assert_no_error (error); - g_assert (bytes_read == 4); - g_assert (bytes_written == 2); - g_assert (strcmp (out, expected) == 0); - g_free (out); - - out = g_convert (in_le, sizeof (in_le), - "UTF-8", "UTF-16", - &bytes_read, &bytes_written, - &error); - - g_assert_no_error (error); - g_assert (bytes_read == 4); - g_assert (bytes_written == 2); - g_assert (strcmp (out, expected) == 0); - g_free (out); -} - -static void -check_utf8_to_ucs4 (const char *utf8, - glong utf8_len, - const gunichar *ucs4, - glong ucs4_len, - glong error_pos) -{ - gunichar *result, *result2, *result3; - glong items_read, items_read2; - glong items_written, items_written2; - GError *error, *error2, *error3; - gint i; - - if (!error_pos) - { - /* check the fast conversion */ - result = g_utf8_to_ucs4_fast (utf8, utf8_len, &items_written); - - g_assert (items_written == ucs4_len); - g_assert (result); - for (i = 0; i <= items_written; i++) - g_assert (result[i] == ucs4[i]); - - g_free (result); - } - - error = NULL; - result = g_utf8_to_ucs4 (utf8, utf8_len, &items_read, &items_written, &error); - - if (utf8_len == strlen (utf8)) - { - /* check that len == -1 yields identical results */ - error2 = NULL; - result2 = g_utf8_to_ucs4 (utf8, -1, &items_read2, &items_written2, &error2); - g_assert (error || items_read2 == items_read); - g_assert (error || items_written2 == items_written2); - g_assert (!!result == !!result2); - g_assert (!!error == !!error2); - if (result) - for (i = 0; i <= items_written; i++) - g_assert (result[i] == result2[i]); - - g_free (result2); - if (error2) - g_error_free (error2); - } - - error3 = NULL; - result3 = g_utf8_to_ucs4 (utf8, utf8_len, NULL, NULL, &error3); - - if (error3 && error3->code == G_CONVERT_ERROR_PARTIAL_INPUT) - { - g_assert_no_error (error); - g_assert (items_read == error_pos); - g_assert (items_written == ucs4_len); - g_assert (result); - for (i = 0; i <= items_written; i++) - g_assert (result[i] == ucs4[i]); - } - else if (error_pos) - { - g_assert (error != NULL); - g_assert (result == NULL); - g_assert (items_read == error_pos); - g_error_free (error); - - g_assert (error3 != NULL); - g_assert (result3 == NULL); - g_error_free (error3); - } - else - { - g_assert_no_error (error); - g_assert (items_read == utf8_len); - g_assert (items_written == ucs4_len); - g_assert (result); - for (i = 0; i <= items_written; i++) - g_assert (result[i] == ucs4[i]); - - g_assert_no_error (error3); - g_assert (result3); - for (i = 0; i <= ucs4_len; i++) - g_assert (result3[i] == ucs4[i]); - } - - g_free (result); - g_free (result3); -} - -static void -check_ucs4_to_utf8 (const gunichar *ucs4, - glong ucs4_len, - const char *utf8, - glong utf8_len, - glong error_pos) -{ - gchar *result, *result2, *result3; - glong items_read, items_read2; - glong items_written, items_written2; - GError *error, *error2, *error3; - - error = NULL; - result = g_ucs4_to_utf8 (ucs4, ucs4_len, &items_read, &items_written, &error); - - if (ucs4[ucs4_len] == 0) - { - /* check that len == -1 yields identical results */ - error2 = NULL; - result2 = g_ucs4_to_utf8 (ucs4, -1, &items_read2, &items_written2, &error2); - - g_assert (error || items_read2 == items_read); - g_assert (error || items_written2 == items_written); - g_assert (!!result == !!result2); - g_assert (!!error == !!error2); - if (result) - g_assert (strcmp (result, result2) == 0); - - g_free (result2); - if (error2) - g_error_free (error2); - } - - error3 = NULL; - result3 = g_ucs4_to_utf8 (ucs4, ucs4_len, NULL, NULL, &error3); - - if (error_pos) - { - g_assert (error != NULL); - g_assert (result == NULL); - g_assert (items_read == error_pos); - g_error_free (error); - - g_assert (error3 != NULL); - g_assert (result3 == NULL); - g_error_free (error3); - } - else - { - g_assert_no_error (error); - g_assert (items_read == ucs4_len); - g_assert (items_written == utf8_len); - g_assert (result); - g_assert (strcmp (result, utf8) == 0); - - g_assert_no_error (error3); - g_assert (result3); - g_assert (strcmp (result3, utf8) == 0); - } - - g_free (result); - g_free (result3); -} - -static void -check_utf8_to_utf16 (const char *utf8, - glong utf8_len, - const gunichar2 *utf16, - glong utf16_len, - glong error_pos) -{ - gunichar2 *result, *result2, *result3; - glong items_read, items_read2; - glong items_written, items_written2; - GError *error, *error2, *error3; - gint i; - - error = NULL; - result = g_utf8_to_utf16 (utf8, utf8_len, &items_read, &items_written, &error); - - if (utf8_len == strlen (utf8)) - { - /* check that len == -1 yields identical results */ - error2 = NULL; - result2 = g_utf8_to_utf16 (utf8, -1, &items_read2, &items_written2, &error2); - g_assert (error || items_read2 == items_read); - g_assert (error || items_written2 == items_written2); - g_assert (!!result == !!result2); - g_assert (!!error == !!error2); - if (result) - for (i = 0; i <= items_written; i++) - g_assert (result[i] == result2[i]); - - g_free (result2); - if (error2) - g_error_free (error2); - } - - error3 = NULL; - result3 = g_utf8_to_utf16 (utf8, utf8_len, NULL, NULL, &error3); - - if (error3 && error3->code == G_CONVERT_ERROR_PARTIAL_INPUT) - { - g_assert_no_error (error); - g_assert (items_read == error_pos); - g_assert (items_written == utf16_len); - g_assert (result); - for (i = 0; i <= items_written; i++) - g_assert (result[i] == utf16[i]); - } - else if (error_pos) - { - g_assert (error != NULL); - g_assert (result == NULL); - g_assert (items_read == error_pos); - g_error_free (error); - - g_assert (error3 != NULL); - g_assert (result3 == NULL); - g_error_free (error3); - } - else - { - g_assert_no_error (error); - g_assert (items_read == utf8_len); - g_assert (items_written == utf16_len); - g_assert (result); - for (i = 0; i <= items_written; i++) - g_assert (result[i] == utf16[i]); - - g_assert_no_error (error3); - g_assert (result3); - for (i = 0; i <= utf16_len; i++) - g_assert (result3[i] == utf16[i]); - } - - g_free (result); - g_free (result3); -} - -static void -check_utf16_to_utf8 (const gunichar2 *utf16, - glong utf16_len, - const char *utf8, - glong utf8_len, - glong error_pos) -{ - gchar *result, *result2, *result3; - glong items_read, items_read2; - glong items_written, items_written2; - GError *error, *error2, *error3; - - error = NULL; - result = g_utf16_to_utf8 (utf16, utf16_len, &items_read, &items_written, &error); - if (utf16[utf16_len] == 0) - { - /* check that len == -1 yields identical results */ - error2 = NULL; - result2 = g_utf16_to_utf8 (utf16, -1, &items_read2, &items_written2, &error2); - - g_assert (error || items_read2 == items_read); - g_assert (error || items_written2 == items_written); - g_assert (!!result == !!result2); - g_assert (!!error == !!error2); - if (result) - g_assert (strcmp (result, result2) == 0); - - g_free (result2); - if (error2) - g_error_free (error2); - } - - error3 = NULL; - result3 = g_utf16_to_utf8 (utf16, utf16_len, NULL, NULL, &error3); - - if (error3 && error3->code == G_CONVERT_ERROR_PARTIAL_INPUT) - { - g_assert_no_error (error); - g_assert (items_read == error_pos); - g_assert (items_read + 1 == utf16_len); - g_assert (items_written == utf8_len); - g_assert (result); - g_assert (strcmp (result, utf8) == 0); - } - else if (error_pos) - { - g_assert (error != NULL); - g_assert (result == NULL); - g_assert (items_read == error_pos); - g_error_free (error); - - g_assert (error3 != NULL); - g_assert (result3 == NULL); - g_error_free (error3); - } - else - { - g_assert_no_error (error); - g_assert (items_read == utf16_len); - g_assert (items_written == utf8_len); - g_assert (result); - g_assert (strcmp (result, utf8) == 0); - - g_assert_no_error (error3); - g_assert (result3); - g_assert (strcmp (result3, utf8) == 0); - } - - g_free (result); - g_free (result3); -} - -static void -check_ucs4_to_utf16 (const gunichar *ucs4, - glong ucs4_len, - const gunichar2 *utf16, - glong utf16_len, - glong error_pos) -{ - gunichar2 *result, *result2, *result3; - glong items_read, items_read2; - glong items_written, items_written2; - GError *error, *error2, *error3; - gint i; - - error = NULL; - result = g_ucs4_to_utf16 (ucs4, ucs4_len, &items_read, &items_written, &error); - - if (ucs4[ucs4_len] == 0) - { - /* check that len == -1 yields identical results */ - error2 = NULL; - result2 = g_ucs4_to_utf16 (ucs4, -1, &items_read2, &items_written2, &error2); - - g_assert (error || items_read2 == items_read); - g_assert (error || items_written2 == items_written); - g_assert (!!result == !!result2); - g_assert (!!error == !!error2); - if (result) - for (i = 0; i <= utf16_len; i++) - g_assert (result[i] == result2[i]); - - g_free (result2); - if (error2) - g_error_free (error2); - } - - error3 = NULL; - result3 = g_ucs4_to_utf16 (ucs4, -1, NULL, NULL, &error3); - - if (error_pos) - { - g_assert (error != NULL); - g_assert (result == NULL); - g_assert (items_read == error_pos); - g_error_free (error); - - g_assert (error3 != NULL); - g_assert (result3 == NULL); - g_error_free (error3); - } - else - { - g_assert_no_error (error); - g_assert (items_read == ucs4_len); - g_assert (items_written == utf16_len); - g_assert (result); - for (i = 0; i <= utf16_len; i++) - g_assert (result[i] == utf16[i]); - - g_assert_no_error (error3); - g_assert (result3); - for (i = 0; i <= utf16_len; i++) - g_assert (result3[i] == utf16[i]); - } - - g_free (result); - g_free (result3); -} - -static void -check_utf16_to_ucs4 (const gunichar2 *utf16, - glong utf16_len, - const gunichar *ucs4, - glong ucs4_len, - glong error_pos) -{ - gunichar *result, *result2, *result3; - glong items_read, items_read2; - glong items_written, items_written2; - GError *error, *error2, *error3; - gint i; - - error = NULL; - result = g_utf16_to_ucs4 (utf16, utf16_len, &items_read, &items_written, &error); - if (utf16[utf16_len] == 0) - { - /* check that len == -1 yields identical results */ - error2 = NULL; - result2 = g_utf16_to_ucs4 (utf16, -1, &items_read2, &items_written2, &error2); - g_assert (error || items_read2 == items_read); - g_assert (error || items_written2 == items_written2); - g_assert (!!result == !!result2); - g_assert (!!error == !!error2); - if (result) - for (i = 0; i <= items_written; i++) - g_assert (result[i] == result2[i]); - - g_free (result2); - if (error2) - g_error_free (error2); - } - - error3 = NULL; - result3 = g_utf16_to_ucs4 (utf16, utf16_len, NULL, NULL, &error3); - - if (error3 && error3->code == G_CONVERT_ERROR_PARTIAL_INPUT) - { - g_assert_no_error (error); - g_assert (items_read == error_pos); - g_assert (items_read + 1 == utf16_len); - g_assert (items_written == ucs4_len); - g_assert (result); - for (i = 0; i <= items_written; i++) - g_assert (result[i] == ucs4[i]); - } - else if (error_pos) - { - g_assert (error != NULL); - g_assert (result == NULL); - g_assert (items_read == error_pos); - g_error_free (error); - - g_assert (error3 != NULL); - g_assert (result3 == NULL); - g_error_free (error3); - } - else - { - g_assert_no_error (error); - g_assert (items_read == utf16_len); - g_assert (items_written == ucs4_len); - g_assert (result); - for (i = 0; i <= ucs4_len; i++) - g_assert (result[i] == ucs4[i]); - - g_assert_no_error (error3); - g_assert (result3); - for (i = 0; i <= ucs4_len; i++) - g_assert (result3[i] == ucs4[i]); - } - - g_free (result); - g_free (result3); -} - -static void -test_unicode_conversions (void) -{ - char *utf8; - gunichar ucs4[100]; - gunichar2 utf16[100]; - - utf8 = "abc"; - ucs4[0] = 0x61; ucs4[1] = 0x62; ucs4[2] = 0x63; ucs4[3] = 0; - utf16[0] = 0x61; utf16[1] = 0x62; utf16[2] = 0x63; utf16[3] = 0; - - check_utf8_to_ucs4 (utf8, 3, ucs4, 3, 0); - check_ucs4_to_utf8 (ucs4, 3, utf8, 3, 0); - check_utf8_to_utf16 (utf8, 3, utf16, 3, 0); - check_utf16_to_utf8 (utf16, 3, utf8, 3, 0); - check_ucs4_to_utf16 (ucs4, 3, utf16, 3, 0); - check_utf16_to_ucs4 (utf16, 3, ucs4, 3, 0); - - utf8 = "\316\261\316\262\316\263"; - ucs4[0] = 0x03b1; ucs4[1] = 0x03b2; ucs4[2] = 0x03b3; ucs4[3] = 0; - utf16[0] = 0x03b1; utf16[1] = 0x03b2; utf16[2] = 0x03b3; utf16[3] = 0; - - check_utf8_to_ucs4 (utf8, 6, ucs4, 3, 0); - check_ucs4_to_utf8 (ucs4, 3, utf8, 6, 0); - check_utf8_to_utf16 (utf8, 6, utf16, 3, 0); - check_utf16_to_utf8 (utf16, 3, utf8, 6, 0); - check_ucs4_to_utf16 (ucs4, 3, utf16, 3, 0); - check_utf16_to_ucs4 (utf16, 3, ucs4, 3, 0); - - /* partial utf8 character */ - utf8 = "abc\316"; - ucs4[0] = 0x61; ucs4[1] = 0x62; ucs4[2] = 0x63; ucs4[3] = 0; - utf16[0] = 0x61; utf16[1] = 0x62; utf16[2] = 0x63; utf16[3] = 0; - - check_utf8_to_ucs4 (utf8, 4, ucs4, 3, 3); - check_utf8_to_utf16 (utf8, 4, utf16, 3, 3); - - /* invalid utf8 */ - utf8 = "abc\316\316"; - ucs4[0] = 0; - utf16[0] = 0; - - check_utf8_to_ucs4 (utf8, 5, ucs4, 0, 3); - check_utf8_to_utf16 (utf8, 5, utf16, 0, 3); - - /* partial utf16 character */ - utf8 = "ab"; - ucs4[0] = 0x61; ucs4[1] = 0x62; ucs4[2] = 0; - utf16[0] = 0x61; utf16[1] = 0x62; utf16[2] = 0xd801; utf16[3] = 0; - - check_utf16_to_utf8 (utf16, 3, utf8, 2, 2); - check_utf16_to_ucs4 (utf16, 3, ucs4, 2, 2); - - /* invalid utf16 */ - utf8 = NULL; - ucs4[0] = 0; - utf16[0] = 0x61; utf16[1] = 0x62; utf16[2] = 0xdc01; utf16[3] = 0; - - check_utf16_to_utf8 (utf16, 3, utf8, 0, 2); - check_utf16_to_ucs4 (utf16, 3, ucs4, 0, 2); - - /* invalid ucs4 */ - utf8 = NULL; - ucs4[0] = 0x61; ucs4[1] = 0x62; ucs4[2] = 0x80000000; ucs4[3] = 0; - utf16[0] = 0; - - check_ucs4_to_utf8 (ucs4, 3, utf8, 0, 2); - check_ucs4_to_utf16 (ucs4, 3, utf16, 0, 2); -} - -int -main (int argc, char *argv[]) -{ - test_iconv_state (); - test_one_half (); - test_byte_order (); - test_unicode_conversions (); - - return 0; -} diff --git a/tests/date-test.c b/tests/date-test.c deleted file mode 100644 index 1a35030..0000000 --- a/tests/date-test.c +++ /dev/null @@ -1,499 +0,0 @@ -#undef G_DISABLE_ASSERT -#undef G_LOG_DOMAIN - -#include "glib.h" - -#include -#include -#include -#include -#include - -gboolean failed = FALSE; -guint32 passed = 0; -guint32 notpassed = 0; - -#define TEST(m,cond) G_STMT_START { failed = !(cond); \ -if (failed) \ - exit(1); \ -} G_STMT_END - -void g_date_debug_print(GDate* d) -{ -} - -void g_print_dummy(const char *format, ...) -{ -} - -void fflush_dummy (FILE *f) -{ -} - - -#define g_print g_print_dummy -#define fflush fflush_dummy - -int main(int argc, char** argv) -{ - GDate* d; - guint32 j; - GDateMonth m; - GDateYear y, prev_y; - GDateDay day; - gchar buf[101]; - gchar* loc; - - /* Try to get all the leap year cases. */ - GDateYear check_years[] = { - 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, - 11, 12, 13, 14, 98, 99, 100, 101, 102, 103, 397, - 398, 399, 400, 401, 402, 403, 404, 405, 406, - 1598, 1599, 1600, 1601, 1602, 1650, 1651, - 1897, 1898, 1899, 1900, 1901, 1902, 1903, - 1961, 1962, 1963, 1964, 1965, 1967, - 1968, 1969, 1970, 1971, 1972, 1973, 1974, 1975, 1976, - 1977, 1978, 1979, 1980, 1981, 1982, 1983, 1984, 1985, - 1986, 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994, - 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, - 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, - 3000, 3001, 3002, 3998, 3999, 4000, 4001, 4002, 4003 - }; - - guint n_check_years = sizeof(check_years)/sizeof(GDateYear); - - guint i = 0; - gboolean discontinuity = FALSE; - - g_print("checking GDate..."); - - TEST("sizeof(GDate) is not more than 8 bytes on this platform", sizeof(GDate) < 9); - - d = g_date_new(); - - TEST("Empty constructor produces invalid date", !g_date_valid(d)); - - g_date_free(d); - - d = g_date_new_dmy(1,1,1); - - TEST("January 1, Year 1 created and valid", g_date_valid(d)); - - j = g_date_get_julian(d); - - TEST("January 1, Year 1 is Julian date 1", j == 1); - - TEST("Returned month is January", g_date_get_month(d) == G_DATE_JANUARY); - TEST("Returned day is 1", g_date_get_day(d) == 1); - TEST("Returned year is 1", g_date_get_year(d) == 1); - - TEST("Bad month is invalid", !g_date_valid_month(G_DATE_BAD_MONTH)); - TEST("Month 13 is invalid", !g_date_valid_month(13)); - TEST("Bad day is invalid", !g_date_valid_day(G_DATE_BAD_DAY)); - TEST("Day 32 is invalid", !g_date_valid_day(32)); - TEST("Bad year is invalid", !g_date_valid_year(G_DATE_BAD_YEAR)); - TEST("Bad julian is invalid", !g_date_valid_julian(G_DATE_BAD_JULIAN)); - TEST("Bad weekday is invalid", !g_date_valid_weekday(G_DATE_BAD_WEEKDAY)); - TEST("Year 2000 is a leap year", g_date_is_leap_year(2000)); - TEST("Year 1999 is not a leap year", !g_date_is_leap_year(1999)); - TEST("Year 1996 is a leap year", g_date_is_leap_year(1996)); - TEST("Year 1600 is a leap year", g_date_is_leap_year(1600)); - TEST("Year 2100 is not a leap year", !g_date_is_leap_year(2100)); - TEST("Year 1800 is not a leap year", !g_date_is_leap_year(1800)); - - g_date_free(d); - - loc = setlocale(LC_ALL,""); - if (loc) - g_print("\nLocale set to %s\n", loc); - else - g_print("\nLocale unchanged\n"); - - d = g_date_new(); - g_date_set_time(d, time(NULL)); - TEST("Today is valid", g_date_valid(d)); - - g_date_strftime(buf,100,"Today is a %A, %x\n", d); - g_print("%s", buf); - - g_date_set_time(d, 1); - TEST("Beginning of Unix epoch is valid", g_date_valid(d)); - - g_date_strftime(buf,100,"1 second into the Unix epoch it was a %A, in the month of %B, %x\n", d); - g_print("%s", buf); - - g_date_set_julian(d, 1); - TEST("GDate's \"Julian\" epoch's first day is valid", g_date_valid(d)); - - g_date_strftime(buf,100,"Our \"Julian\" epoch begins on a %A, in the month of %B, %x\n", - d); - g_print("%s", buf); - - g_date_set_dmy(d, 10, 1, 2000); - - g_date_strftime(buf,100,"%x", d); - - g_date_set_parse(d, buf); - /* Note: this test will hopefully work, but no promises. */ - TEST("Successfully parsed a %x-formatted string", - g_date_valid(d) && - g_date_get_month(d) == 1 && - g_date_get_day(d) == 10 && - g_date_get_year(d) == 2000); - if (failed) - g_date_debug_print(d); - - g_date_free(d); - - j = G_DATE_BAD_JULIAN; - - i = 0; - discontinuity = TRUE; - y = check_years[0]; - prev_y = G_DATE_BAD_YEAR; - while (i < n_check_years) - { - guint32 first_day_of_year = G_DATE_BAD_JULIAN; - guint16 days_in_year = g_date_is_leap_year(y) ? 366 : 365; - guint sunday_week_of_year = 0; - guint sunday_weeks_in_year = g_date_get_sunday_weeks_in_year(y); - guint monday_week_of_year = 0; - guint monday_weeks_in_year = g_date_get_monday_weeks_in_year(y); - guint iso8601_week_of_year = 0; - - if (discontinuity) - g_print(" (Break in sequence of requested years to check)\n"); - - g_print("Checking year %u", y); - - TEST("Year is valid", g_date_valid_year(y)); - - TEST("Number of Sunday weeks in year is 52 or 53", - sunday_weeks_in_year == 52 || sunday_weeks_in_year == 53); - - TEST("Number of Monday weeks in year is 52 or 53", - monday_weeks_in_year == 52 || monday_weeks_in_year == 53); - - m = 1; - while (m < 13) - { - guint8 dim = g_date_get_days_in_month(m,y); - GDate days[31]; /* This is the fast way, no allocation */ - - TEST("Sensible number of days in month", (dim > 0 && dim < 32)); - - TEST("Month between 1 and 12 is valid", g_date_valid_month(m)); - - day = 1; - - g_date_clear(days, 31); - - while (day <= dim) - { - guint i; - GDate tmp; - - TEST("DMY triplet is valid", g_date_valid_dmy(day,m,y)); - - /* Create GDate with triplet */ - - d = &days[day-1]; - - TEST("Cleared day is invalid", !g_date_valid(d)); - - g_date_set_dmy(d,day,m,y); - - TEST("Set day is valid", g_date_valid(d)); - - if (m == G_DATE_JANUARY && day == 1) - { - first_day_of_year = g_date_get_julian(d); - } - - g_assert(first_day_of_year != G_DATE_BAD_JULIAN); - - TEST("Date with DMY triplet is valid", g_date_valid(d)); - TEST("Month accessor works", g_date_get_month(d) == m); - TEST("Year accessor works", g_date_get_year(d) == y); - TEST("Day of month accessor works", g_date_get_day(d) == day); - - TEST("Day of year is consistent with Julian dates", - ((g_date_get_julian(d) + 1 - first_day_of_year) == - (g_date_get_day_of_year(d)))); - - if (failed) - { - g_print("first day: %u this day: %u day of year: %u\n", - first_day_of_year, - g_date_get_julian(d), - g_date_get_day_of_year(d)); - } - - if (m == G_DATE_DECEMBER && day == 31) - { - TEST("Last day of year equals number of days in year", - g_date_get_day_of_year(d) == days_in_year); - if (failed) - { - g_print("last day: %u days in year: %u\n", - g_date_get_day_of_year(d), days_in_year); - } - } - - TEST("Day of year is not more than number of days in the year", - g_date_get_day_of_year(d) <= days_in_year); - - TEST("Monday week of year is not more than number of weeks in the year", - g_date_get_monday_week_of_year(d) <= monday_weeks_in_year); - if (failed) - { - g_print("Weeks in year: %u\n", monday_weeks_in_year); - g_date_debug_print(d); - } - TEST("Monday week of year is >= than last week of year", - g_date_get_monday_week_of_year(d) >= monday_week_of_year); - - if (g_date_get_weekday(d) == G_DATE_MONDAY) - { - - TEST("Monday week of year on Monday 1 more than previous day's week of year", - (g_date_get_monday_week_of_year(d) - monday_week_of_year) == 1); - if ((m == G_DATE_JANUARY && day <= 4) || - (m == G_DATE_DECEMBER && day >= 29)) { - TEST("ISO 8601 week of year on Monday Dec 29 - Jan 4 is 1", - (g_date_get_iso8601_week_of_year(d) == 1)); - } else { - TEST("ISO 8601 week of year on Monday 1 more than previous day's week of year", - (g_date_get_iso8601_week_of_year(d) - iso8601_week_of_year) == 1); - } - } - else - { - TEST("Monday week of year on non-Monday 0 more than previous day's week of year", - (g_date_get_monday_week_of_year(d) - monday_week_of_year) == 0); - if (!(day == 1 && m == G_DATE_JANUARY)) { - TEST("ISO 8601 week of year on non-Monday 0 more than previous day's week of year (", - (g_date_get_iso8601_week_of_year(d) - iso8601_week_of_year) == 0); - } - } - - - monday_week_of_year = g_date_get_monday_week_of_year(d); - iso8601_week_of_year = g_date_get_iso8601_week_of_year(d); - - - TEST("Sunday week of year is not more than number of weeks in the year", - g_date_get_sunday_week_of_year(d) <= sunday_weeks_in_year); - if (failed) - { - g_date_debug_print(d); - } - TEST("Sunday week of year is >= than last week of year", - g_date_get_sunday_week_of_year(d) >= sunday_week_of_year); - - if (g_date_get_weekday(d) == G_DATE_SUNDAY) - { - TEST("Sunday week of year on Sunday 1 more than previous day's week of year", - (g_date_get_sunday_week_of_year(d) - sunday_week_of_year) == 1); - } - else - { - TEST("Sunday week of year on non-Sunday 0 more than previous day's week of year", - (g_date_get_sunday_week_of_year(d) - sunday_week_of_year) == 0); - } - - sunday_week_of_year = g_date_get_sunday_week_of_year(d); - - TEST("Date is equal to itself", - g_date_compare(d,d) == 0); - - - /*************** Increments ***********/ - - i = 1; - while (i < 402) /* Need to get 400 year increments in */ - { - - /***** Days ******/ - tmp = *d; - g_date_add_days(d, i); - - TEST("Adding days gives a value greater than previous", - g_date_compare(d, &tmp) > 0); - - g_date_subtract_days(d, i); - TEST("Forward days then backward days returns us to current day", - g_date_get_day(d) == day); - - if (failed) - { - g_print(" (increment %u, dmy %u %u %u) ", i, day, m, y); - g_date_debug_print(d); - } - - TEST("Forward days then backward days returns us to current month", - g_date_get_month(d) == m); - - if (failed) - { - g_print(" (increment %u, dmy %u %u %u) ", i, day, m, y); - g_date_debug_print(d); - } - - TEST("Forward days then backward days returns us to current year", - g_date_get_year(d) == y); - - if (failed) - { - g_print(" (increment %u, dmy %u %u %u) ", i, day, m, y); - g_date_debug_print(d); - } - - /******* Months ********/ - - tmp = *d; - g_date_add_months(d, i); - TEST("Adding months gives a larger value", - g_date_compare(d, &tmp) > 0); - g_date_subtract_months(d, i); - - TEST("Forward months then backward months returns us to current month", - g_date_get_month(d) == m); - - if (failed) - { - g_print(" (increment %u, dmy %u %u %u) ", i, day, m, y); - g_date_debug_print(d); - } - - TEST("Forward months then backward months returns us to current year", - g_date_get_year(d) == y); - - if (failed) - { - g_print(" (increment %u, dmy %u %u %u) ", i, day, m, y); - g_date_debug_print(d); - } - - - if (day < 29) - { - /* Day should be unchanged */ - - TEST("Forward months then backward months returns us to current day", - g_date_get_day(d) == day); - - if (failed) - { - g_print(" (increment %u, dmy %u %u %u) ", i, day, m, y); - g_date_debug_print(d); - } - } - else - { - /* reset the day for later tests */ - g_date_set_day(d, day); - } - - /******* Years ********/ - - tmp = *d; - g_date_add_years(d, i); - - TEST("Adding years gives a larger value", - g_date_compare(d,&tmp) > 0); - - g_date_subtract_years(d, i); - - TEST("Forward years then backward years returns us to current month", - g_date_get_month(d) == m); - - if (failed) - { - g_print(" (increment %u, dmy %u %u %u) ", i, day, m, y); - g_date_debug_print(d); - } - - TEST("Forward years then backward years returns us to current year", - g_date_get_year(d) == y); - - if (failed) - { - g_print(" (increment %u, dmy %u %u %u) ", i, day, m, y); - g_date_debug_print(d); - } - - if (m != 2 && day != 29) - { - TEST("Forward years then backward years returns us to current day", - g_date_get_day(d) == day); - - if (failed) - { - g_print(" (increment %u, dmy %u %u %u) ", i, day, m, y); - g_date_debug_print(d); - } - } - else - { - g_date_set_day(d, day); /* reset */ - } - - i += 10; - } - - /***** increment test relative to our local Julian count */ - - if (!discontinuity) { - - /* We can only run sequence tests between sequential years */ - - TEST("Julians are sequential with increment 1", - j+1 == g_date_get_julian(d)); - if (failed) - { - g_print("Out of sequence, prev: %u expected: %u got: %u\n", - j, j+1, g_date_get_julian(d)); - } - - g_date_add_days(d,1); - TEST("Next day has julian 1 higher", - g_date_get_julian(d) == j + 2); - g_date_subtract_days(d, 1); - - if (j != G_DATE_BAD_JULIAN) - { - g_date_subtract_days(d, 1); - - TEST("Previous day has julian 1 lower", - g_date_get_julian(d) == j); - - g_date_add_days(d, 1); /* back to original */ - } - } - discontinuity = FALSE; /* goes away now */ - - fflush(stdout); - fflush(stderr); - - j = g_date_get_julian(d); /* inc current julian */ - - ++day; - } - ++m; - } - g_print(" done\n"); - ++i; - prev_y = y; - y = check_years[i]; - if (prev_y == G_DATE_BAD_YEAR || - (prev_y + 1) != y) discontinuity = TRUE; - } - - - g_print("\n%u tests passed, %u failed\n",passed, notpassed); - - return 0; -} - - diff --git a/tests/errorcheck-mutex-test.c b/tests/errorcheck-mutex-test.c deleted file mode 100644 index 5b30057..0000000 --- a/tests/errorcheck-mutex-test.c +++ /dev/null @@ -1,131 +0,0 @@ -#undef G_DISABLE_ASSERT -#undef G_LOG_DOMAIN -#define G_ERRORCHECK_MUTEXES - -#include -#include -#include - -static gpointer -locking_thread (gpointer mutex) -{ - g_mutex_lock ((GMutex*)mutex); - - return NULL; -} - -static void -lock_locked_mutex (void) -{ - GMutex* mutex = g_mutex_new (); - g_mutex_lock (mutex); - g_mutex_lock (mutex); -} - -static void -trylock_locked_mutex (void) -{ - GMutex* mutex = g_mutex_new (); - g_mutex_lock (mutex); - g_mutex_trylock (mutex); -} - -static void -unlock_unlocked_mutex (void) -{ - GMutex* mutex = g_mutex_new (); - g_mutex_lock (mutex); - g_mutex_unlock (mutex); - g_mutex_unlock (mutex); -} - -static void -free_locked_mutex (void) -{ - GMutex* mutex = g_mutex_new (); - g_mutex_lock (mutex); - g_mutex_free (mutex); -} - -static void -wait_on_unlocked_mutex (void) -{ - GMutex* mutex = g_mutex_new (); - GCond* cond = g_cond_new (); - g_cond_wait (cond, mutex); -} - -static void -wait_on_otherwise_locked_mutex (void) -{ - GMutex* mutex = g_mutex_new (); - GCond* cond = g_cond_new (); - GThread* thread = g_thread_create (locking_thread, mutex, TRUE, NULL); - g_assert (thread != NULL); - g_usleep (G_USEC_PER_SEC); - g_cond_wait (cond, mutex); -} - -static void -timed_wait_on_unlocked_mutex (void) -{ - GMutex* mutex = g_mutex_new (); - GCond* cond = g_cond_new (); - g_cond_timed_wait (cond, mutex, NULL); -} - -static void -timed_wait_on_otherwise_locked_mutex (void) -{ - GMutex* mutex = g_mutex_new (); - GCond* cond = g_cond_new (); - GThread* thread = g_thread_create (locking_thread, mutex, TRUE, NULL); - g_assert (thread != NULL); - g_usleep (G_USEC_PER_SEC); - g_cond_timed_wait (cond, mutex, NULL); -} - -struct -{ - char *name; - void (*func)(); -} func_table[] = -{ - {"lock_locked_mutex", lock_locked_mutex}, - {"trylock_locked_mutex", trylock_locked_mutex}, - {"unlock_unlocked_mutex", unlock_unlocked_mutex}, - {"free_locked_mutex", free_locked_mutex}, - {"wait_on_unlocked_mutex", wait_on_unlocked_mutex}, - {"wait_on_otherwise_locked_mutex", wait_on_otherwise_locked_mutex}, - {"timed_wait_on_unlocked_mutex", timed_wait_on_unlocked_mutex}, - {"timed_wait_on_otherwise_locked_mutex", - timed_wait_on_otherwise_locked_mutex} -}; - -int -main (int argc, char* argv[]) -{ - int i; - - if (argc == 2) - { - for (i = 0; i < G_N_ELEMENTS (func_table); i++) - { - if (strcmp (func_table[i].name, argv[1]) == 0) - { - g_thread_init (NULL); - func_table[i].func (); - g_assert_not_reached (); - } - } - } - - fprintf (stderr, "Usage: errorcheck-mutex-test [TEST]\n\n"); - fprintf (stderr, " where TEST can be one of:\n\n"); - for (i = 0; i < G_N_ELEMENTS (func_table); i++) - { - fprintf (stderr, " %s\n", func_table[i].name); - } - - return 0; -} diff --git a/tests/gobject/ifaceproperties.c b/tests/gobject/ifaceproperties.c deleted file mode 100644 index 382edd5..0000000 --- a/tests/gobject/ifaceproperties.c +++ /dev/null @@ -1,507 +0,0 @@ -/* GObject - GLib Type, Object, Parameter and Signal Library - * Copyright (C) 2001, 2003 Red Hat, Inc. - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2 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. - */ - -#undef G_LOG_DOMAIN -#define G_LOG_DOMAIN "TestIfaceProperties" - -#undef G_DISABLE_ASSERT -#undef G_DISABLE_CHECKS -#undef G_DISABLE_CAST_CHECKS - -#include - -#include - -#include "testcommon.h" - -/* This test tests interface properties, implementing interface - * properties and #GParamSpecOverride. - * - * Four properties are tested: - * - * prop1: Defined in TestIface, Implemented in BaseObject with a GParamSpecOverride - * prop2: Defined in TestIface, Implemented in BaseObject with a new property - * prop3: Defined in TestIface, Implemented in BaseObject, Overridden in DerivedObject - * prop4: Defined in BaseObject, Overridden in DerivedObject - */ - -static GType base_object_get_type (); -static GType derived_object_get_type (); - -enum { - BASE_PROP_0, - BASE_PROP1, - BASE_PROP2, - BASE_PROP3, - BASE_PROP4 -}; - -enum { - DERIVED_PROP_0, - DERIVED_PROP3, - DERIVED_PROP4 -}; - -/* - * BaseObject, a parent class for DerivedObject - */ -#define BASE_TYPE_OBJECT (base_object_get_type ()) -#define BASE_OBJECT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BASE_TYPE_OBJECT, BaseObject)) -typedef struct _BaseObject BaseObject; -typedef struct _BaseObjectClass BaseObjectClass; - -struct _BaseObject -{ - GObject parent_instance; - - gint val1; - gint val2; - gint val3; - gint val4; -}; -struct _BaseObjectClass -{ - GObjectClass parent_class; -}; - -GObjectClass *base_parent_class; - -/* - * DerivedObject, the child class of DerivedObject - */ -#define DERIVED_TYPE_OBJECT (derived_object_get_type ()) -typedef struct _DerivedObject DerivedObject; -typedef struct _DerivedObjectClass DerivedObjectClass; - -struct _DerivedObject -{ - BaseObject parent_instance; -}; -struct _DerivedObjectClass -{ - BaseObjectClass parent_class; -}; - -/* - * The interface - */ -typedef struct _TestIfaceClass TestIfaceClass; - -struct _TestIfaceClass -{ - GTypeInterface base_iface; -}; - -#define TEST_TYPE_IFACE (test_iface_get_type ()) - -/* The paramspecs installed on our interface - */ -static GParamSpec *iface_spec1, *iface_spec2, *iface_spec3; - -/* The paramspecs inherited by our derived object - */ -static GParamSpec *inherited_spec1, *inherited_spec2, *inherited_spec3, *inherited_spec4; - -static void -test_iface_default_init (TestIfaceClass *iface_vtable) -{ - inherited_spec1 = iface_spec1 = g_param_spec_int ("prop1", - "Prop1", - "Property 1", - G_MININT, /* min */ - 0xFFFF, /* max */ - 42, /* default */ - G_PARAM_READWRITE | G_PARAM_CONSTRUCT); - g_object_interface_install_property (iface_vtable, iface_spec1); - - iface_spec2 = g_param_spec_int ("prop2", - "Prop2", - "Property 2", - G_MININT, /* min */ - G_MAXINT, /* max */ - 0, /* default */ - G_PARAM_WRITABLE); - g_object_interface_install_property (iface_vtable, iface_spec2); - - inherited_spec3 = iface_spec3 = g_param_spec_int ("prop3", - "Prop3", - "Property 3", - G_MININT, /* min */ - G_MAXINT, /* max */ - 0, /* default */ - G_PARAM_READWRITE); - g_object_interface_install_property (iface_vtable, iface_spec3); -} - -static DEFINE_IFACE (TestIface, test_iface, NULL, test_iface_default_init) - - -static GObject* -base_object_constructor (GType type, - guint n_construct_properties, - GObjectConstructParam *construct_properties) -{ - /* The constructor is the one place where a GParamSpecOverride is visible - * to the outside world, so we do a bunch of checks here - */ - GValue value1 = { 0, }; - GValue value2 = { 0, }; - GParamSpec *pspec; - - g_assert (n_construct_properties == 1); - - pspec = construct_properties->pspec; - - /* Check we got the param spec we expected - */ - g_assert (G_IS_PARAM_SPEC_OVERRIDE (pspec)); - g_assert (pspec->param_id == BASE_PROP1); - g_assert (strcmp (g_param_spec_get_name (pspec), "prop1") == 0); - g_assert (g_param_spec_get_redirect_target (pspec) == iface_spec1); - - /* Test redirection of the nick and blurb to the redirect target - */ - g_assert (strcmp (g_param_spec_get_nick (pspec), "Prop1") == 0); - g_assert (strcmp (g_param_spec_get_blurb (pspec), "Property 1") == 0); - - /* Test forwarding of the various GParamSpec methods to the redirect target - */ - g_value_init (&value1, G_TYPE_INT); - g_value_init (&value2, G_TYPE_INT); - - g_param_value_set_default (pspec, &value1); - g_assert (g_value_get_int (&value1) == 42); - - g_value_reset (&value1); - g_value_set_int (&value1, 0x10000); - g_assert (g_param_value_validate (pspec, &value1)); - g_assert (g_value_get_int (&value1) == 0xFFFF); - g_assert (!g_param_value_validate (pspec, &value1)); - - g_value_reset (&value1); - g_value_set_int (&value1, 1); - g_value_set_int (&value2, 2); - g_assert (g_param_values_cmp (pspec, &value1, &value2) < 0); - g_assert (g_param_values_cmp (pspec, &value2, &value1) > 0); - - g_value_unset (&value1); - g_value_unset (&value2); - - return base_parent_class->constructor (type, - n_construct_properties, - construct_properties); -} - -static void -base_object_set_property (GObject *object, - guint prop_id, - const GValue *value, - GParamSpec *pspec) -{ - BaseObject *base_object = BASE_OBJECT (object); - - switch (prop_id) - { - case BASE_PROP1: - g_assert (pspec == inherited_spec1); - base_object->val1 = g_value_get_int (value); - break; - case BASE_PROP2: - g_assert (pspec == inherited_spec2); - base_object->val2 = g_value_get_int (value); - break; - case BASE_PROP3: - g_assert_not_reached (); - break; - case BASE_PROP4: - g_assert_not_reached (); - break; - default: - G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); - break; - } -} - -static void -base_object_get_property (GObject *object, - guint prop_id, - GValue *value, - GParamSpec *pspec) -{ - BaseObject *base_object = BASE_OBJECT (object); - - switch (prop_id) - { - case BASE_PROP1: - g_assert (pspec == inherited_spec1); - g_value_set_int (value, base_object->val1); - break; - case BASE_PROP2: - g_assert (pspec == inherited_spec2); - g_value_set_int (value, base_object->val2); - break; - case BASE_PROP3: - g_assert_not_reached (); - break; - case BASE_PROP4: - g_assert_not_reached (); - break; - default: - G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); - break; - } -} - -static void -base_object_notify (GObject *object, - GParamSpec *pspec) -{ - /* The property passed to notify is the redirect target, not the - * GParamSpecOverride - */ - g_assert (pspec == inherited_spec1 || - pspec == inherited_spec2 || - pspec == inherited_spec3 || - pspec == inherited_spec4); -} - -static void -base_object_class_init (BaseObjectClass *class) -{ - GObjectClass *object_class = G_OBJECT_CLASS (class); - - base_parent_class= g_type_class_peek_parent (class); - - object_class->constructor = base_object_constructor; - object_class->set_property = base_object_set_property; - object_class->get_property = base_object_get_property; - object_class->notify = base_object_notify; - - g_object_class_override_property (object_class, BASE_PROP1, "prop1"); - - /* We override this one using a real property, not GParamSpecOverride - * We change the flags from READONLY to READWRITE to show that we - * can make the flags less restrictive - */ - inherited_spec2 = g_param_spec_int ("prop2", - "Prop2", - "Property 2", - G_MININT, /* min */ - G_MAXINT, /* max */ - 0, /* default */ - G_PARAM_READWRITE); - g_object_class_install_property (object_class, BASE_PROP2, inherited_spec2); - - g_object_class_override_property (object_class, BASE_PROP3, "prop3"); - - inherited_spec4 = g_param_spec_int ("prop4", - "Prop4", - "Property 4", - G_MININT, /* min */ - G_MAXINT, /* max */ - 0, /* default */ - G_PARAM_READWRITE); - g_object_class_install_property (object_class, BASE_PROP4, inherited_spec4); -} - -static void -base_object_init (BaseObject *base_object) -{ - base_object->val1 = 42; -} - -static DEFINE_TYPE_FULL (BaseObject, base_object, - base_object_class_init, NULL, base_object_init, - G_TYPE_OBJECT, - INTERFACE (NULL, TEST_TYPE_IFACE)) - -static void -derived_object_set_property (GObject *object, - guint prop_id, - const GValue *value, - GParamSpec *pspec) -{ - BaseObject *base_object = BASE_OBJECT (object); - - switch (prop_id) - { - case DERIVED_PROP3: - g_assert (pspec == inherited_spec3); - base_object->val3 = g_value_get_int (value); - break; - case DERIVED_PROP4: - g_assert (pspec == inherited_spec4); - base_object->val4 = g_value_get_int (value); - break; - default: - G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); - break; - } -} - -static void -derived_object_get_property (GObject *object, - guint prop_id, - GValue *value, - GParamSpec *pspec) -{ - BaseObject *base_object = BASE_OBJECT (object); - - switch (prop_id) - { - case DERIVED_PROP3: - g_assert (pspec == inherited_spec3); - g_value_set_int (value, base_object->val3); - break; - case DERIVED_PROP4: - g_assert (pspec == inherited_spec4); - g_value_set_int (value, base_object->val4); - break; - default: - G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); - break; - } -} - -static void -derived_object_class_init (DerivedObjectClass *class) -{ - GObjectClass *object_class = G_OBJECT_CLASS (class); - - object_class->set_property = derived_object_set_property; - object_class->get_property = derived_object_get_property; - - /* Overriding a property that is itself overridding an interface property */ - g_object_class_override_property (object_class, DERIVED_PROP3, "prop3"); - - /* Overriding a property not from an interface */ - g_object_class_override_property (object_class, DERIVED_PROP4, "prop4"); -} - -static DEFINE_TYPE (DerivedObject, derived_object, - derived_object_class_init, NULL, NULL, - BASE_TYPE_OBJECT) - -/* Helper function for testing ...list_properties() - */ -static void -assert_in_properties (GParamSpec *param_spec, - GParamSpec **properties, - gint n_properties) -{ - gint i; - gboolean found = FALSE; - - for (i = 0; i < n_properties; i++) - { - if (properties[i] == param_spec) - found = TRUE; - } - - g_assert (found); -} - -int -main (gint argc, - gchar *argv[]) -{ - BaseObject *object; - GObjectClass *object_class; - TestIfaceClass *iface_vtable; - GParamSpec **properties; - gint n_properties; - - gint val1, val2, val3, val4; - - g_log_set_always_fatal (g_log_set_always_fatal (G_LOG_FATAL_MASK) | - G_LOG_LEVEL_WARNING | - G_LOG_LEVEL_CRITICAL); - g_type_init (); - - object = g_object_new (DERIVED_TYPE_OBJECT, NULL); - - /* Test setting and getting the properties - */ - g_object_set (object, - "prop1", 0x0101, - "prop2", 0x0202, - "prop3", 0x0303, - "prop4", 0x0404, - NULL); - g_object_get (object, - "prop1", &val1, - "prop2", &val2, - "prop3", &val3, - "prop4", &val4, - NULL); - - g_assert (val1 == 0x0101); - g_assert (val2 == 0x0202); - g_assert (val3 == 0x0303); - g_assert (val4 == 0x0404); - - /* Test that the right spec is passed on explicit notifications - */ - g_object_freeze_notify (G_OBJECT (object)); - g_object_notify (G_OBJECT (object), "prop1"); - g_object_notify (G_OBJECT (object), "prop2"); - g_object_notify (G_OBJECT (object), "prop3"); - g_object_notify (G_OBJECT (object), "prop4"); - g_object_thaw_notify (G_OBJECT (object)); - - /* Test g_object_class_find_property() for overridden properties - */ - object_class = G_OBJECT_GET_CLASS (object); - - g_assert (g_object_class_find_property (object_class, "prop1") == inherited_spec1); - g_assert (g_object_class_find_property (object_class, "prop2") == inherited_spec2); - g_assert (g_object_class_find_property (object_class, "prop3") == inherited_spec3); - g_assert (g_object_class_find_property (object_class, "prop4") == inherited_spec4); - - /* Test g_object_class_list_properties() for overridden properties - */ - properties = g_object_class_list_properties (object_class, &n_properties); - g_assert (n_properties == 4); - assert_in_properties (inherited_spec1, properties, n_properties); - assert_in_properties (inherited_spec2, properties, n_properties); - assert_in_properties (inherited_spec3, properties, n_properties); - assert_in_properties (inherited_spec4, properties, n_properties); - g_free (properties); - - /* Test g_object_interface_find_property() - */ - iface_vtable = g_type_default_interface_peek (TEST_TYPE_IFACE); - - g_assert (g_object_interface_find_property (iface_vtable, "prop1") == iface_spec1); - g_assert (g_object_interface_find_property (iface_vtable, "prop2") == iface_spec2); - g_assert (g_object_interface_find_property (iface_vtable, "prop3") == iface_spec3); - - /* Test g_object_interface_list_properties() - */ - properties = g_object_interface_list_properties (iface_vtable, &n_properties); - g_assert (n_properties == 3); - assert_in_properties (iface_spec1, properties, n_properties); - assert_in_properties (iface_spec2, properties, n_properties); - assert_in_properties (iface_spec3, properties, n_properties); - g_free (properties); - - g_object_unref (object); - - return 0; -} diff --git a/tests/hash-test.c b/tests/hash-test.c deleted file mode 100644 index 23411c3..0000000 --- a/tests/hash-test.c +++ /dev/null @@ -1,459 +0,0 @@ -/* GLIB - Library of useful routines for C programming - * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald - * Copyright (C) 1999 The Free Software Foundation - * - * 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., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. - */ - -/* - * Modified by the GLib Team and others 1997-2000. See the AUTHORS - * file for a list of people on the GLib Team. See the ChangeLog - * files for a list of changes. These files are distributed with - * GLib at ftp://ftp.gtk.org/pub/gtk/. - */ - -#undef G_DISABLE_ASSERT -#undef G_LOG_DOMAIN - -#ifdef HAVE_CONFIG_H -# include -#endif - -#if STDC_HEADERS -#include -#include -#include -#endif - -#include - - - -int array[10000]; - -static void -fill_hash_table_and_array (GHashTable *hash_table) -{ - int i; - - for (i = 0; i < 10000; i++) - { - array[i] = i; - g_hash_table_insert (hash_table, &array[i], &array[i]); - } -} - -static void -init_result_array (int result_array[10000]) -{ - int i; - - for (i = 0; i < 10000; i++) - result_array[i] = -1; -} - -static void -verify_result_array (int array[10000]) -{ - int i; - - for (i = 0; i < 10000; i++) - g_assert (array[i] == i); -} - -static void -handle_pair (gpointer key, gpointer value, int result_array[10000]) -{ - int n; - - g_assert (key == value); - - n = *((int *) value); - - g_assert (n >= 0 && n < 10000); - g_assert (result_array[n] == -1); - - result_array[n] = n; -} - -static gboolean -my_hash_callback_remove (gpointer key, - gpointer value, - gpointer user_data) -{ - int *d = value; - - if ((*d) % 2) - return TRUE; - - return FALSE; -} - -static void -my_hash_callback_remove_test (gpointer key, - gpointer value, - gpointer user_data) -{ - int *d = value; - - if ((*d) % 2) - g_assert_not_reached (); -} - -static void -my_hash_callback (gpointer key, - gpointer value, - gpointer user_data) -{ - handle_pair (key, value, user_data); -} - -static guint -my_hash (gconstpointer key) -{ - return (guint) *((const gint*) key); -} - -static gboolean -my_hash_equal (gconstpointer a, - gconstpointer b) -{ - return *((const gint*) a) == *((const gint*) b); -} - - - -/* - * This is a simplified version of the pathalias hashing function. - * Thanks to Steve Belovin and Peter Honeyman - * - * hash a string into a long int. 31 bit crc (from andrew appel). - * the crc table is computed at run time by crcinit() -- we could - * precompute, but it takes 1 clock tick on a 750. - * - * This fast table calculation works only if POLY is a prime polynomial - * in the field of integers modulo 2. Since the coefficients of a - * 32-bit polynomial won't fit in a 32-bit word, the high-order bit is - * implicit. IT MUST ALSO BE THE CASE that the coefficients of orders - * 31 down to 25 are zero. Happily, we have candidates, from - * E. J. Watson, "Primitive Polynomials (Mod 2)", Math. Comp. 16 (1962): - * x^32 + x^7 + x^5 + x^3 + x^2 + x^1 + x^0 - * x^31 + x^3 + x^0 - * - * We reverse the bits to get: - * 111101010000000000000000000000001 but drop the last 1 - * f 5 0 0 0 0 0 0 - * 010010000000000000000000000000001 ditto, for 31-bit crc - * 4 8 0 0 0 0 0 0 - */ - -#define POLY 0x48000000L /* 31-bit polynomial (avoids sign problems) */ - -static guint CrcTable[128]; - -/* - - crcinit - initialize tables for hash function - */ -static void crcinit(void) -{ - int i, j; - guint sum; - - for (i = 0; i < 128; ++i) { - sum = 0L; - for (j = 7 - 1; j >= 0; --j) - if (i & (1 << j)) - sum ^= POLY >> j; - CrcTable[i] = sum; - } -} - -/* - - hash - Honeyman's nice hashing function - */ -static guint honeyman_hash(gconstpointer key) -{ - const gchar *name = (const gchar *) key; - gint size; - guint sum = 0; - - g_assert (name != NULL); - g_assert (*name != 0); - - size = strlen(name); - - while (size--) { - sum = (sum >> 7) ^ CrcTable[(sum ^ (*name++)) & 0x7f]; - } - - return(sum); -} - - -static gboolean second_hash_cmp (gconstpointer a, gconstpointer b) -{ - return (strcmp (a, b) == 0); -} - - - -static guint one_hash(gconstpointer key) -{ - return 1; -} - - -static void not_even_foreach (gpointer key, - gpointer value, - gpointer user_data) -{ - const char *_key = (const char *) key; - const char *_value = (const char *) value; - int i; - char val [20]; - - g_assert (_key != NULL); - g_assert (*_key != 0); - g_assert (_value != NULL); - g_assert (*_value != 0); - - i = atoi (_key); - - sprintf (val, "%d value", i); - g_assert (strcmp (_value, val) == 0); - - g_assert ((i % 2) != 0); - g_assert (i != 3); -} - - -static gboolean remove_even_foreach (gpointer key, - gpointer value, - gpointer user_data) -{ - const char *_key = (const char *) key; - const char *_value = (const char *) value; - int i; - char val [20]; - - g_assert (_key != NULL); - g_assert (*_key != 0); - g_assert (_value != NULL); - g_assert (*_value != 0); - - i = atoi (_key); - - sprintf (val, "%d value", i); - g_assert (strcmp (_value, val) == 0); - - return ((i % 2) == 0) ? TRUE : FALSE; -} - - - - -static void second_hash_test (gboolean simple_hash) -{ - int i; - char key[20] = "", val[20]="", *v, *orig_key, *orig_val; - GHashTable *h; - gboolean found; - - crcinit (); - - h = g_hash_table_new_full (simple_hash ? one_hash : honeyman_hash, - second_hash_cmp, - g_free, g_free); - g_assert (h != NULL); - for (i=0; i<20; i++) - { - sprintf (key, "%d", i); - g_assert (atoi (key) == i); - - sprintf (val, "%d value", i); - g_assert (atoi (val) == i); - - g_hash_table_insert (h, g_strdup (key), g_strdup (val)); - } - - g_assert (g_hash_table_size (h) == 20); - - for (i=0; i<20; i++) - { - sprintf (key, "%d", i); - g_assert (atoi(key) == i); - - v = (char *) g_hash_table_lookup (h, key); - - g_assert (v != NULL); - g_assert (*v != 0); - g_assert (atoi (v) == i); - } - - sprintf (key, "%d", 3); - g_hash_table_remove (h, key); - g_assert (g_hash_table_size (h) == 19); - g_hash_table_foreach_remove (h, remove_even_foreach, NULL); - g_assert (g_hash_table_size (h) == 9); - g_hash_table_foreach (h, not_even_foreach, NULL); - - for (i=0; i<20; i++) - { - sprintf (key, "%d", i); - g_assert (atoi(key) == i); - - sprintf (val, "%d value", i); - g_assert (atoi (val) == i); - - orig_key = orig_val = NULL; - found = g_hash_table_lookup_extended (h, key, - (gpointer)&orig_key, - (gpointer)&orig_val); - if ((i % 2) == 0 || i == 3) - { - g_assert (!found); - continue; - } - - g_assert (found); - - g_assert (orig_key != NULL); - g_assert (strcmp (key, orig_key) == 0); - - g_assert (orig_val != NULL); - g_assert (strcmp (val, orig_val) == 0); - } - - g_hash_table_destroy (h); -} - -static gboolean find_first (gpointer key, - gpointer value, - gpointer user_data) -{ - gint *v = value; - gint *test = user_data; - return (*v == *test); -} - - -static void direct_hash_test (void) -{ - gint i, rc; - GHashTable *h; - - h = g_hash_table_new (NULL, NULL); - g_assert (h != NULL); - for (i=1; i<=20; i++) - { - g_hash_table_insert (h, GINT_TO_POINTER (i), - GINT_TO_POINTER (i + 42)); - } - - g_assert (g_hash_table_size (h) == 20); - - for (i=1; i<=20; i++) - { - rc = GPOINTER_TO_INT ( - g_hash_table_lookup (h, GINT_TO_POINTER (i))); - - g_assert (rc != 0); - g_assert ((rc - 42) == i); - } - - g_hash_table_destroy (h); -} - - - -int -main (int argc, - char *argv[]) -{ - GHashTable *hash_table; - gint i; - gint value = 120; - gint *pvalue; - GList *keys, *values; - gint keys_len, values_len; - GHashTableIter iter; - gpointer ikey, ivalue; - int result_array[10000]; - - hash_table = g_hash_table_new (my_hash, my_hash_equal); - fill_hash_table_and_array (hash_table); - pvalue = g_hash_table_find (hash_table, find_first, &value); - if (!pvalue || *pvalue != value) - g_assert_not_reached(); - - keys = g_hash_table_get_keys (hash_table); - if (!keys) - g_assert_not_reached (); - - values = g_hash_table_get_values (hash_table); - if (!values) - g_assert_not_reached (); - - keys_len = g_list_length (keys); - values_len = g_list_length (values); - if (values_len != keys_len && keys_len != g_hash_table_size (hash_table)) - g_assert_not_reached (); - - g_list_free (keys); - g_list_free (values); - - init_result_array (result_array); - g_hash_table_iter_init (&iter, hash_table); - for (i = 0; i < 10000; i++) - { - g_assert (g_hash_table_iter_next (&iter, &ikey, &ivalue)); - - handle_pair (ikey, ivalue, result_array); - - if (i % 2) - g_hash_table_iter_remove (&iter); - } - g_assert (! g_hash_table_iter_next (&iter, &ikey, &ivalue)); - g_assert (g_hash_table_size (hash_table) == 5000); - verify_result_array (result_array); - - fill_hash_table_and_array (hash_table); - - init_result_array (result_array); - g_hash_table_foreach (hash_table, my_hash_callback, result_array); - verify_result_array (result_array); - - for (i = 0; i < 10000; i++) - g_hash_table_remove (hash_table, &array[i]); - - fill_hash_table_and_array (hash_table); - - if (g_hash_table_foreach_remove (hash_table, my_hash_callback_remove, NULL) != 5000 || - g_hash_table_size (hash_table) != 5000) - g_assert_not_reached(); - - g_hash_table_foreach (hash_table, my_hash_callback_remove_test, NULL); - - - g_hash_table_destroy (hash_table); - - second_hash_test (TRUE); - second_hash_test (FALSE); - direct_hash_test (); - - return 0; - -} diff --git a/tests/list-test.c b/tests/list-test.c deleted file mode 100644 index 6e274fc..0000000 --- a/tests/list-test.c +++ /dev/null @@ -1,212 +0,0 @@ -#undef G_DISABLE_ASSERT -#undef G_LOG_DOMAIN - -#include - -#define DEBUG_MSG(args) -/* #define DEBUG_MSG(args) g_printerr args ; g_printerr ("\n"); */ -#define PRINT_MSG(args) -/* #define PRINT_MSG(args) g_print args ; g_print ("\n"); */ - -#define SIZE 50 -#define NUMBER_MIN 0000 -#define NUMBER_MAX 9999 - - -static guint32 array[SIZE]; - - -static gint -sort (gconstpointer p1, gconstpointer p2) -{ - gint32 a, b; - - a = GPOINTER_TO_INT (p1); - b = GPOINTER_TO_INT (p2); - - return (a > b ? +1 : a == b ? 0 : -1); -} - -/* - * glist sort tests - */ -static void -test_list_sort (void) -{ - GList *list = NULL; - gint i; - - PRINT_MSG (("testing g_list_sort()")); - - for (i = 0; i < SIZE; i++) { - list = g_list_append (list, GINT_TO_POINTER (array[i])); - } - - list = g_list_sort (list, sort); - for (i = 0; i < SIZE - 1; i++) { - gpointer p1, p2; - - p1 = g_list_nth_data (list, i); - p2 = g_list_nth_data (list, i+1); - - g_assert (GPOINTER_TO_INT (p1) <= GPOINTER_TO_INT (p2)); - DEBUG_MSG (("list_sort #%3.3d ---> %d", i, GPOINTER_TO_INT (p1))); - } - - g_list_free (list); -} - -static void -test_list_sort_with_data (void) -{ - GList *list = NULL; - gint i; - - PRINT_MSG (("testing g_list_sort_with_data()")); - - for (i = 0; i < SIZE; i++) { - list = g_list_append (list, GINT_TO_POINTER (array[i])); - } - - list = g_list_sort_with_data (list, (GCompareDataFunc)sort, NULL); - for (i = 0; i < SIZE - 1; i++) { - gpointer p1, p2; - - p1 = g_list_nth_data (list, i); - p2 = g_list_nth_data (list, i+1); - - g_assert (GPOINTER_TO_INT (p1) <= GPOINTER_TO_INT (p2)); - DEBUG_MSG (("list_sort_with_data #%3.3d ---> %d", i, GPOINTER_TO_INT (p1))); - } - - g_list_free (list); -} - -static void -test_list_insert_sorted (void) -{ - GList *list = NULL; - gint i; - - PRINT_MSG (("testing g_list_insert_sorted()")); - - for (i = 0; i < SIZE; i++) { - list = g_list_insert_sorted (list, GINT_TO_POINTER (array[i]), sort); - } - - for (i = 0; i < SIZE - 1; i++) { - gpointer p1, p2; - - p1 = g_list_nth_data (list, i); - p2 = g_list_nth_data (list, i+1); - - g_assert (GPOINTER_TO_INT (p1) <= GPOINTER_TO_INT (p2)); - DEBUG_MSG (("list_insert_sorted #%3.3d ---> %d", i, GPOINTER_TO_INT (p1))); - } - - g_list_free (list); -} - -static void -test_list_insert_sorted_with_data (void) -{ - GList *list = NULL; - gint i; - - PRINT_MSG (("testing g_list_insert_sorted_with_data()")); - - for (i = 0; i < SIZE; i++) { - list = g_list_insert_sorted_with_data (list, - GINT_TO_POINTER (array[i]), - (GCompareDataFunc)sort, - NULL); - } - - for (i = 0; i < SIZE - 1; i++) { - gpointer p1, p2; - - p1 = g_list_nth_data (list, i); - p2 = g_list_nth_data (list, i+1); - - g_assert (GPOINTER_TO_INT (p1) <= GPOINTER_TO_INT (p2)); - DEBUG_MSG (("list_insert_sorted_with_data #%3.3d ---> %d", i, GPOINTER_TO_INT (p1))); - } - - g_list_free (list); -} - -static void -test_list_reverse (void) -{ - GList *list = NULL; - GList *st; - gint nums[10] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 }; - gint i; - - PRINT_MSG (("testing g_list_reverse()")); - - for (i = 0; i < 10; i++) { - list = g_list_append (list, &nums[i]); - } - - list = g_list_reverse (list); - - for (i = 0; i < 10; i++) { - st = g_list_nth (list, i); - g_assert (*((gint*) st->data) == (9 - i)); - } - - g_list_free (list); -} - -static void -test_list_nth (void) -{ - GList *list = NULL; - GList *st; - gint nums[10] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 }; - gint i; - - PRINT_MSG (("testing g_list_nth()")); - - for (i = 0; i < 10; i++) { - list = g_list_append (list, &nums[i]); - } - - for (i = 0; i < 10; i++) { - st = g_list_nth (list, i); - g_assert (*((gint*) st->data) == i); - } - - g_list_free (list); -} - -int -main (int argc, char *argv[]) -{ - gint i; - - DEBUG_MSG (("debugging messages turned on")); - - DEBUG_MSG (("creating %d random numbers", SIZE)); - - /* Create an array of random numbers. */ - for (i = 0; i < SIZE; i++) { - array[i] = g_random_int_range (NUMBER_MIN, NUMBER_MAX); - DEBUG_MSG (("number #%3.3d ---> %d", i, array[i])); - } - - /* Start tests. */ - test_list_sort (); - test_list_sort_with_data (); - - test_list_insert_sorted (); - test_list_insert_sorted_with_data (); - - test_list_reverse (); - test_list_nth (); - - PRINT_MSG (("testing finished")); - - return 0; -} diff --git a/tests/markup-collect.c b/tests/markup-collect.c deleted file mode 100644 index 70c4b71..0000000 --- a/tests/markup-collect.c +++ /dev/null @@ -1,221 +0,0 @@ -/* - * Copyright © 2007 Ryan Lortie - * - * This program 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. - * - * See the included COPYING file for more information. - */ - -#include -#include - -static void -start (GMarkupParseContext *context, - const char *element_name, - const char **attribute_names, - const char **attribute_values, - gpointer user_data, - GError **error) -{ - GString *string = user_data; - gboolean result; - -#define collect(...) \ - g_markup_collect_attributes (element_name, attribute_names, \ - attribute_values, error, __VA_ARGS__, \ - G_MARKUP_COLLECT_INVALID) -#define BOOL G_MARKUP_COLLECT_BOOLEAN -#define OPTBOOL G_MARKUP_COLLECT_BOOLEAN | G_MARKUP_COLLECT_OPTIONAL -#define TRI G_MARKUP_COLLECT_TRISTATE -#define STR G_MARKUP_COLLECT_STRING -#define STRDUP G_MARKUP_COLLECT_STRDUP -#define OPTSTR G_MARKUP_COLLECT_STRING | G_MARKUP_COLLECT_OPTIONAL -#define OPTDUP G_MARKUP_COLLECT_STRDUP | G_MARKUP_COLLECT_OPTIONAL -#define n(x) ((x)?(x):"(null)") - - if (strcmp (element_name, "bool") == 0) - { - gboolean mb = 2, ob = 2, tri = 2; - - result = collect (BOOL, "mb", &mb, - OPTBOOL, "ob", &ob, - TRI, "tri", &tri); - - g_assert (result || - (mb == FALSE && ob == FALSE && tri != TRUE && tri != FALSE)); - - if (tri != FALSE && tri != TRUE) - tri = -1; - - g_string_append_printf (string, "", - result, mb, ob, tri); - } - - else if (strcmp (element_name, "str") == 0) - { - const char *cm, *co; - char *am, *ao; - - result = collect (STR, "cm", &cm, - STRDUP, "am", &am, - OPTDUP, "ao", &ao, - OPTSTR, "co", &co); - - g_assert (result || - (cm == NULL && am == NULL && ao == NULL && co == NULL)); - - g_string_append_printf (string, "", - result, n (cm), n (am), n (ao), n (co)); - - g_free (am); - g_free (ao); - } -} - -static GMarkupParser parser = { start }; - -struct test -{ - const char *document; - const char *result; - GMarkupError error_code; - const char *error_info; -}; - -static struct test tests[] = -{ - { "", "", - G_MARKUP_ERROR_PARSE, "'bool'" }, - - { "", "" }, - { "", "" }, - { "", "" }, - { "", "" }, - - { "", "", - G_MARKUP_ERROR_MISSING_ATTRIBUTE, "'mb'" }, - - { "", "", - G_MARKUP_ERROR_INVALID_CONTENT, "'mb'" }, - - { "", "", - G_MARKUP_ERROR_INVALID_CONTENT, "'tri'" }, - - { "", "" }, - - { "", "", - G_MARKUP_ERROR_MISSING_ATTRIBUTE, "'cm'" }, - - { "", "", - G_MARKUP_ERROR_MISSING_ATTRIBUTE, "'cm'" }, - - { "", "", - G_MARKUP_ERROR_INVALID_CONTENT, "'am'" }, - - { "", "", - G_MARKUP_ERROR_UNKNOWN_ATTRIBUTE, "'qm'" }, - - { "", "", - G_MARKUP_ERROR_INVALID_CONTENT, "'am'" }, - - { "", "", - G_MARKUP_ERROR_INVALID_CONTENT, "'am'" }, - - { "", - "", - G_MARKUP_ERROR_UNKNOWN_ATTRIBUTE, "'a'" }, - - { "", "", - G_MARKUP_ERROR_INVALID_CONTENT, "'mb'" }, - - { "", "", - G_MARKUP_ERROR_INVALID_CONTENT, "'mb'" } -}; - -int -main (int argc, char **argv) -{ - gboolean verbose = FALSE; - int i; - - if (argc > 1) - { - if (argc != 2 || strcmp (argv[1], "-v") != 0) - { - g_print ("error: call with no arguments or '-v' for verbose\n"); - return 1; - } - - verbose = TRUE; - } - - for (i = 0; i < G_N_ELEMENTS (tests); i++) - { - GMarkupParseContext *ctx; - GError *error = NULL; - GString *string; - gboolean result; - - string = g_string_new (""); - ctx = g_markup_parse_context_new (&parser, 0, string, NULL); - result = g_markup_parse_context_parse (ctx, - tests[i].document, - -1, &error); - if (result) - result = g_markup_parse_context_end_parse (ctx, &error); - - if (verbose) - g_print ("%d: %s:\n (error %d, \"%s\")\n %s\n\n", - i, tests[i].document, - error ? error->code : 0, - error ? error->message : "(no error)", - string->str); - - if (result) - { - if (error != NULL) - g_error ("parser successful but error is set: " - "%s(%d) '%s'", g_quark_to_string (error->domain), - error->code, error->message); - - if (tests[i].error_code != 0) - g_error ("parser succeeded on test %d ('%s') but " - "we expected a failure with code %d\n", i, - tests[i].document, tests[i].error_code); - } - else - { - if (error->domain != G_MARKUP_ERROR) - g_error ("error occured on test %d ('%s') but is not in " - "the GMarkupError domain, but rather '%s'", i, - tests[i].document, g_quark_to_string (error->domain)); - - if (error->code != tests[i].error_code) - g_error ("failure expected with test %d ('%s') but it " - "has error code %d (we expected code %d)", i, - tests[i].document, error->code, tests[i].error_code); - - if (strstr (error->message, tests[i].error_info) == NULL) - g_error ("failure message on test %d ('%s') fails " - "to mention '%s' in the error message", i, - tests[i].document, tests[i].error_info); - } - - if (strcmp (tests[i].result, string->str) != 0) - g_error ("result on test %d ('%s') expected to be '%s' " - "but came out as '%s'", i, tests[i].document, - tests[i].result, string->str); - - g_markup_parse_context_free (ctx); - g_string_free (string, TRUE); - g_clear_error (&error); - } - - if (verbose) - g_print ("\n*** all tests passed ***\n\n"); - - return 0; -} diff --git a/tests/markup-escape-test.c b/tests/markup-escape-test.c deleted file mode 100644 index 2734162..0000000 --- a/tests/markup-escape-test.c +++ /dev/null @@ -1,132 +0,0 @@ -#undef G_DISABLE_ASSERT -#undef G_LOG_DOMAIN - -#include -#include -#include - -static void test_format (const gchar *format, - const gchar *expected, ...) G_GNUC_PRINTF (1, 3); - -static gboolean error = FALSE; - -static void -test (const gchar *original, - const gchar *expected) -{ - gchar *result = g_markup_escape_text (original, -1); - - if (strcmp (result, expected) != 0) - { - g_printerr ("g_markup_escape_text(): expected '%s', got '%s'\n", - expected, result); - error = TRUE; - } - - g_free (result); -} - -static void -test_unichar (gunichar c, - gboolean entity) -{ - gint len; - gchar outbuf[7], expected[12]; - - len = g_unichar_to_utf8 (c, outbuf); - outbuf[len] = 0; - - if (entity) - g_snprintf (expected, 12, "&#x%x;", c); - else - strcpy (expected, outbuf); - - test (outbuf, expected); -} - -static void -test_format (const gchar *format, - const gchar *expected, - ...) -{ - gchar *result; - - va_list args; - - va_start (args, expected); - result = g_markup_vprintf_escaped (format, args); - va_end (args); - - if (strcmp (result, expected) != 0) - { - g_printerr ("g_markup_printf_escaped(): expected '%s', got '%s'\n", - expected, result); - error = TRUE; - } - - g_free (result); -} - -int main (int argc, char **argv) -{ - /* Tests for g_markup_escape_text() */ - test ("&", "&"); - test ("<", "<"); - test (">", ">"); - test ("'", "'"); - test ("\"", """); - - test ("", ""); - test ("A", "A"); - test ("A&", "A&"); - test ("&A", "&A"); - test ("A&A", "A&A"); - test ("&&A", "&&A"); - test ("A&&", "A&&"); - test ("A&&A", "A&&A"); - test ("A&A&A", "A&A&A"); - test ("AA", "A&#23;A"); - test ("A A", "A&#xa;A"); - test_unichar (0x1, TRUE); - test_unichar (0x8, TRUE); - test_unichar (0x9, FALSE); - test_unichar (0xa, FALSE); - test_unichar (0xb, TRUE); - test_unichar (0xc, TRUE); - test_unichar (0xd, FALSE); - test_unichar (0xe, TRUE); - test_unichar (0x1f, TRUE); - test_unichar (0x20, FALSE); - test_unichar (0x7e, FALSE); - test_unichar (0x7f, TRUE); - test_unichar (0x84, TRUE); - test_unichar (0x85, FALSE); - test_unichar (0x86, TRUE); - test_unichar (0x9f, TRUE); - test_unichar (0xa0, FALSE); - - /* Tests for g_markup_printf_escaped() */ - test_format ("A", "A"); - test_format ("A%s", "A&", "&"); - test_format ("%sA", "&A", "&"); - test_format ("A%sA", "A&A", "&"); - test_format ("%s%sA", "&&A", "&", "&"); - test_format ("A%s%s", "A&&", "&", "&"); - test_format ("A%s%sA", "A&&A", "&", "&"); - test_format ("A%sA%sA", "A&A&A", "&", "&"); - - test_format ("%s", "<B>&", - "&"); - test_format ("%c%c", "<&", - '<', '&'); - test_format (".%c.%c.", ".<.&.", - '<', '&'); - test_format ("%s", "", - ""); - test_format ("%-5s", "A ", - "A"); - test_format ("%2$s%1$s", "B.A.", - "A.", "B."); - - return error ? 1 : 0; -} diff --git a/tests/markup-test.c b/tests/markup-test.c deleted file mode 100644 index 6d5f44b..0000000 --- a/tests/markup-test.c +++ /dev/null @@ -1,214 +0,0 @@ -#undef G_DISABLE_ASSERT -#undef G_LOG_DOMAIN - -#include -#include - -static int depth = 0; - -static void -indent (int extra) -{ - int i = 0; - while (i < depth) - { - fputs (" ", stdout); - ++i; - } -} - -static void -start_element_handler (GMarkupParseContext *context, - const gchar *element_name, - const gchar **attribute_names, - const gchar **attribute_values, - gpointer user_data, - GError **error) -{ - int i; - - indent (0); - printf ("ELEMENT '%s'\n", element_name); - - i = 0; - while (attribute_names[i] != NULL) - { - indent (1); - - printf ("%s=\"%s\"\n", - attribute_names[i], - attribute_values[i]); - - ++i; - } - - ++depth; -} - -static void -end_element_handler (GMarkupParseContext *context, - const gchar *element_name, - gpointer user_data, - GError **error) -{ - --depth; - indent (0); - printf ("END '%s'\n", element_name); - } - -static void -text_handler (GMarkupParseContext *context, - const gchar *text, - gsize text_len, - gpointer user_data, - GError **error) -{ - indent (0); - printf ("TEXT '%.*s'\n", (int)text_len, text); -} - - -static void -passthrough_handler (GMarkupParseContext *context, - const gchar *passthrough_text, - gsize text_len, - gpointer user_data, - GError **error) -{ - indent (0); - - printf ("PASS '%.*s'\n", (int)text_len, passthrough_text); -} - -static void -error_handler (GMarkupParseContext *context, - GError *error, - gpointer user_data) -{ - fprintf (stderr, " %s\n", error->message); -} - -static const GMarkupParser parser = { - start_element_handler, - end_element_handler, - text_handler, - passthrough_handler, - error_handler -}; - -static const GMarkupParser silent_parser = { - NULL, - NULL, - NULL, - NULL, - error_handler -}; - -static int -test_in_chunks (const gchar *contents, - gint length, - gint chunk_size) -{ - GMarkupParseContext *context; - int i = 0; - - context = g_markup_parse_context_new (&silent_parser, 0, NULL, NULL); - - while (i < length) - { - int this_chunk = MIN (length - i, chunk_size); - - if (!g_markup_parse_context_parse (context, - contents + i, - this_chunk, - NULL)) - { - g_markup_parse_context_free (context); - return 1; - } - - i += this_chunk; - } - - if (!g_markup_parse_context_end_parse (context, NULL)) - { - g_markup_parse_context_free (context); - return 1; - } - - g_markup_parse_context_free (context); - - return 0; -} - -static int -test_file (const gchar *filename) -{ - gchar *contents; - gsize length; - GError *error; - GMarkupParseContext *context; - - error = NULL; - if (!g_file_get_contents (filename, - &contents, - &length, - &error)) - { - fprintf (stderr, "%s\n", error->message); - g_error_free (error); - return 1; - } - - context = g_markup_parse_context_new (&parser, 0, NULL, NULL); - - if (!g_markup_parse_context_parse (context, contents, length, NULL)) - { - g_markup_parse_context_free (context); - return 1; - } - - if (!g_markup_parse_context_end_parse (context, NULL)) - { - g_markup_parse_context_free (context); - return 1; - } - - g_markup_parse_context_free (context); - - /* A byte at a time */ - if (test_in_chunks (contents, length, 1) != 0) - return 1; - - /* 2 bytes */ - if (test_in_chunks (contents, length, 2) != 0) - return 1; - - /*5 bytes */ - if (test_in_chunks (contents, length, 5) != 0) - return 1; - - /* 12 bytes */ - if (test_in_chunks (contents, length, 12) != 0) - return 1; - - /* 1024 bytes */ - if (test_in_chunks (contents, length, 1024) != 0) - return 1; - - return 0; -} - -int -main (int argc, - char *argv[]) -{ - if (argc > 1) - return test_file (argv[1]); - else - { - fprintf (stderr, "Give a markup file on the command line\n"); - return 1; - } -} - diff --git a/tests/markups/expected-1 b/tests/markups/expected-1 deleted file mode 100644 index 8b6cdd7..0000000 --- a/tests/markups/expected-1 +++ /dev/null @@ -1,37 +0,0 @@ -PASS '' -PASS '' -ELEMENT 'foobar' - TEXT ' -' - ELEMENT 'e1' - TEXT 'Hi & this is some text inside an element Two 'E' chars as character refs: E E and some 'J': J J' - END 'e1' - TEXT ' -' - ELEMENT 'e2:foo' - TEXT ' Text ' - ELEMENT 'childfree' - END 'childfree' - TEXT ' with some ' - ELEMENT 'nested' - TEXT 'nested elements' - END 'nested' - TEXT ' and entities "& < >> ' and whitespace ' - END 'e2:foo' - TEXT ' -' - ELEMENT 'tag' - ab="fo' -ELEMENT 'foo' - TEXT '' -END 'foo' diff --git a/tests/markups/expected-6 b/tests/markups/expected-6 deleted file mode 100644 index bfb41ce..0000000 --- a/tests/markups/expected-6 +++ /dev/null @@ -1,6 +0,0 @@ -PASS ' -]>' -ELEMENT 'foo' - TEXT '' -END 'foo' diff --git a/tests/markups/expected-7 b/tests/markups/expected-7 deleted file mode 100644 index 2fe1975..0000000 --- a/tests/markups/expected-7 +++ /dev/null @@ -1,4 +0,0 @@ -PASS '' -ELEMENT 'foo' - TEXT '' -END 'foo' diff --git a/tests/markups/expected-8 b/tests/markups/expected-8 deleted file mode 100644 index 5bbda04..0000000 --- a/tests/markups/expected-8 +++ /dev/null @@ -1,5 +0,0 @@ -ELEMENT 'foo' - TEXT '' - PASS '>>> CDATA ]]>' - TEXT '' -END 'foo' diff --git a/tests/markups/expected-9 b/tests/markups/expected-9 deleted file mode 100644 index 7810394..0000000 --- a/tests/markups/expected-9 +++ /dev/null @@ -1,3 +0,0 @@ -ELEMENT 'foo' - TEXT 'data' -END 'foo' diff --git a/tests/markups/fail-1.gmarkup b/tests/markups/fail-1.gmarkup deleted file mode 100644 index e69de29..0000000 diff --git a/tests/markups/fail-10.gmarkup b/tests/markups/fail-10.gmarkup deleted file mode 100644 index fe16558..0000000 --- a/tests/markups/fail-10.gmarkup +++ /dev/null @@ -1,2 +0,0 @@ - - \ No newline at end of file diff --git a/tests/markups/fail-11.gmarkup b/tests/markups/fail-11.gmarkup deleted file mode 100644 index 216f40c..0000000 --- a/tests/markups/fail-11.gmarkup +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/tests/markups/fail-12.gmarkup b/tests/markups/fail-12.gmarkup deleted file mode 100644 index a640299..0000000 --- a/tests/markups/fail-12.gmarkup +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/tests/markups/fail-13.gmarkup b/tests/markups/fail-13.gmarkup deleted file mode 100644 index a719288..0000000 --- a/tests/markups/fail-13.gmarkup +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/tests/markups/fail-14.gmarkup b/tests/markups/fail-14.gmarkup deleted file mode 100644 index ed52a60..0000000 --- a/tests/markups/fail-14.gmarkup +++ /dev/null @@ -1,2 +0,0 @@ - -< \ No newline at end of file diff --git a/tests/markups/fail-15.gmarkup b/tests/markups/fail-15.gmarkup deleted file mode 100644 index c3b59e0..0000000 --- a/tests/markups/fail-15.gmarkup +++ /dev/null @@ -1,3 +0,0 @@ - - - \ No newline at end of file diff --git a/tests/markups/fail-16.gmarkup b/tests/markups/fail-16.gmarkup deleted file mode 100644 index 20f0148..0000000 --- a/tests/markups/fail-16.gmarkup +++ /dev/null @@ -1 +0,0 @@ - - \ No newline at end of file diff --git a/tests/markups/fail-8.gmarkup b/tests/markups/fail-8.gmarkup deleted file mode 100644 index b355951..0000000 --- a/tests/markups/fail-8.gmarkup +++ /dev/null @@ -1,2 +0,0 @@ - - \ No newline at end of file diff --git a/tests/markups/fail-9.gmarkup b/tests/markups/fail-9.gmarkup deleted file mode 100644 index edd5596..0000000 --- a/tests/markups/fail-9.gmarkup +++ /dev/null @@ -1,2 +0,0 @@ - - \ No newline at end of file diff --git a/tests/markups/valid-1.gmarkup b/tests/markups/valid-1.gmarkup deleted file mode 100644 index 6745c5c..0000000 --- a/tests/markups/valid-1.gmarkup +++ /dev/null @@ -1,9 +0,0 @@ - - - -Hi & this is some text inside an element Two 'E' chars as character refs: E E and some 'J': J J - Text with some nested elements and entities "& < >> ' and whitespace -This element has attributes - - - \ No newline at end of file diff --git a/tests/markups/valid-10.gmarkup b/tests/markups/valid-10.gmarkup deleted file mode 100644 index cbeb68e..0000000 --- a/tests/markups/valid-10.gmarkup +++ /dev/null @@ -1,6 +0,0 @@ -data diff --git a/tests/markups/valid-11.gmarkup b/tests/markups/valid-11.gmarkup deleted file mode 100644 index fe1cc4e..0000000 --- a/tests/markups/valid-11.gmarkup +++ /dev/null @@ -1,2 +0,0 @@ -data diff --git a/tests/markups/valid-2.gmarkup b/tests/markups/valid-2.gmarkup deleted file mode 100644 index 4a3fa69..0000000 --- a/tests/markups/valid-2.gmarkup +++ /dev/null @@ -1,49 +0,0 @@ - -Παν語 - -This is a list of ways to say hello in various languages. Its purpose is to illustrate a number of scripts. - -(Converted into UTF-8) - ---------------------------------------------------------- -Arabic السلام عليكم -Czech (česky) Dobrý den -Danish (Dansk) Hej, Goddag -English Hello -Esperanto Saluton -Estonian Tere, Tervist -FORTRAN PROGRAM -Finnish (Suomi) Hei -French (Français) Bonjour, Salut -German (Deutsch Nord) Guten Tag -German (Deutsch Süd) Grüß Gott -Greek (Ελληνικά) Γειά σας -Hebrew שלום -Hindi नमस्ते, नमस्कार। -Italiano Ciao, Buon giorno -Maltese Ċaw, Saħħa -Nederlands, Vlaams Hallo, Dag -Norwegian (Norsk) Hei, God dag -Polish Dzień dobry, Hej -Russian (Русский) Здравствуйте!‎ -Slovak Dobrý deň -Spanish (Español) ‎¡Hola!‎ -Swedish (Svenska) Hej, Goddag -Thai (ภาษาไทย) สวัสดีครับ, สวัสดีค่ะ -Turkish (Türkçe) Merhaba -Vietnamese (Tiếng Việt) Xin Chào -Yiddish (ײַדישע) דאָס הײַזעלע - -Japanese (日本語) こんにちは, コンニチハ -Chinese (中文,普通话,汉语) 你好 -Cantonese (粵語,廣東話) 早晨, 你好 -Korean (한글) 안녕하세요, 안녕하십니까 - -Difference among chinese characters in GB, JIS, KSC, BIG5:‎ - GB -- 元气 开发 - JIS -- 元気 開発 - KSC -- 元氣 開發 - BIG5 -- 元氣 開發 - - - \ No newline at end of file diff --git a/tests/markups/valid-3.gmarkup b/tests/markups/valid-3.gmarkup deleted file mode 100644 index aed984e..0000000 --- a/tests/markups/valid-3.gmarkup +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - - - diff --git a/tests/markups/valid-4.gmarkup b/tests/markups/valid-4.gmarkup deleted file mode 100644 index 2036162..0000000 --- a/tests/markups/valid-4.gmarkup +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - diff --git a/tests/markups/valid-5.gmarkup b/tests/markups/valid-5.gmarkup deleted file mode 100644 index 3b861de..0000000 --- a/tests/markups/valid-5.gmarkup +++ /dev/null @@ -1,2 +0,0 @@ - - diff --git a/tests/markups/valid-6.gmarkup b/tests/markups/valid-6.gmarkup deleted file mode 100644 index d7c065a..0000000 --- a/tests/markups/valid-6.gmarkup +++ /dev/null @@ -1,4 +0,0 @@ - -]> - diff --git a/tests/markups/valid-7.gmarkup b/tests/markups/valid-7.gmarkup deleted file mode 100644 index 832445d..0000000 --- a/tests/markups/valid-7.gmarkup +++ /dev/null @@ -1,2 +0,0 @@ - - diff --git a/tests/markups/valid-8.gmarkup b/tests/markups/valid-8.gmarkup deleted file mode 100644 index a75aee0..0000000 --- a/tests/markups/valid-8.gmarkup +++ /dev/null @@ -1 +0,0 @@ ->>> CDATA ]]> diff --git a/tests/markups/valid-9.gmarkup b/tests/markups/valid-9.gmarkup deleted file mode 100644 index 90a99a0..0000000 --- a/tests/markups/valid-9.gmarkup +++ /dev/null @@ -1,2 +0,0 @@ -data diff --git a/tests/node-test.c b/tests/node-test.c deleted file mode 100644 index a49eddf..0000000 --- a/tests/node-test.c +++ /dev/null @@ -1,223 +0,0 @@ -/* GLIB - Library of useful routines for C programming - * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald - * - * 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., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. - */ - -/* - * Modified by the GLib Team and others 1997-2000. See the AUTHORS - * file for a list of people on the GLib Team. See the ChangeLog - * files for a list of changes. These files are distributed with - * GLib at ftp://ftp.gtk.org/pub/gtk/. - */ - -#undef G_DISABLE_ASSERT -#undef G_LOG_DOMAIN - -#ifdef HAVE_CONFIG_H -#include "config.h" -#endif - -#include -#include -#include - -#ifdef HAVE_UNISTD_H -#include -#endif - -#include "glib.h" - -int array[10000]; -gboolean failed = FALSE; - -#define TEST(m,cond) G_STMT_START { failed = !(cond); \ -if (failed) \ - { if (!m) \ - g_print ("\n(%s:%d) failed for: %s\n", __FILE__, __LINE__, ( # cond )); \ - else \ - g_print ("\n(%s:%d) failed for: %s: (%s)\n", __FILE__, __LINE__, ( # cond ), (gchar*)m); \ - exit(1); \ - } \ -} G_STMT_END - -#define C2P(c) ((gpointer) ((long) (c))) -#define P2C(p) ((gchar) ((long) (p))) - -#define GLIB_TEST_STRING "el dorado " -#define GLIB_TEST_STRING_5 "el do" - -typedef struct { - guint age; - gchar name[40]; -} GlibTestInfo; - -static gboolean -node_build_string (GNode *node, - gpointer data) -{ - gchar **p = data; - gchar *string; - gchar c[2] = "_"; - - c[0] = P2C (node->data); - - string = g_strconcat (*p ? *p : "", c, NULL); - g_free (*p); - *p = string; - - return FALSE; -} - -static void -g_node_test (void) -{ - GNode *root; - GNode *node; - GNode *node_B; - GNode *node_D; - GNode *node_F; - GNode *node_G; - GNode *node_J; - guint i; - gchar *tstring; - - failed = FALSE; - - root = g_node_new (C2P ('A')); - TEST (NULL, g_node_depth (root) == 1 && g_node_max_height (root) == 1); - - node_B = g_node_new (C2P ('B')); - g_node_append (root, node_B); - TEST (NULL, root->children == node_B); - - g_node_append_data (node_B, C2P ('E')); - g_node_prepend_data (node_B, C2P ('C')); - node_D = g_node_new (C2P ('D')); - g_node_insert (node_B, 1, node_D); - - node_F = g_node_new (C2P ('F')); - g_node_append (root, node_F); - TEST (NULL, root->children->next == node_F); - - node_G = g_node_new (C2P ('G')); - g_node_append (node_F, node_G); - node_J = g_node_new (C2P ('J')); - g_node_prepend (node_G, node_J); - g_node_insert (node_G, 42, g_node_new (C2P ('K'))); - g_node_insert_data (node_G, 0, C2P ('H')); - g_node_insert (node_G, 1, g_node_new (C2P ('I'))); - - TEST (NULL, g_node_depth (root) == 1); - TEST (NULL, g_node_max_height (root) == 4); - TEST (NULL, g_node_depth (node_G->children->next) == 4); - TEST (NULL, g_node_n_nodes (root, G_TRAVERSE_LEAFS) == 7); - TEST (NULL, g_node_n_nodes (root, G_TRAVERSE_NON_LEAFS) == 4); - TEST (NULL, g_node_n_nodes (root, G_TRAVERSE_ALL) == 11); - TEST (NULL, g_node_max_height (node_F) == 3); - TEST (NULL, g_node_n_children (node_G) == 4); - TEST (NULL, g_node_find_child (root, G_TRAVERSE_ALL, C2P ('F')) == node_F); - TEST (NULL, g_node_find (root, G_LEVEL_ORDER, G_TRAVERSE_NON_LEAFS, C2P ('I')) == NULL); - TEST (NULL, g_node_find (root, G_IN_ORDER, G_TRAVERSE_LEAFS, C2P ('J')) == node_J); - - for (i = 0; i < g_node_n_children (node_B); i++) - { - node = g_node_nth_child (node_B, i); - TEST (NULL, P2C (node->data) == ('C' + i)); - } - - for (i = 0; i < g_node_n_children (node_G); i++) - TEST (NULL, g_node_child_position (node_G, g_node_nth_child (node_G, i)) == i); - - /* we have built: A - * / \ - * B F - * / | \ \ - * C D E G - * / /\ \ - * H I J K - * - * for in-order traversal, 'G' is considered to be the "left" - * child of 'F', which will cause 'F' to be the last node visited. - */ - - tstring = NULL; - g_node_traverse (root, G_PRE_ORDER, G_TRAVERSE_ALL, -1, node_build_string, &tstring); - TEST (tstring, strcmp (tstring, "ABCDEFGHIJK") == 0); - g_free (tstring); tstring = NULL; - g_node_traverse (root, G_POST_ORDER, G_TRAVERSE_ALL, -1, node_build_string, &tstring); - TEST (tstring, strcmp (tstring, "CDEBHIJKGFA") == 0); - g_free (tstring); tstring = NULL; - g_node_traverse (root, G_IN_ORDER, G_TRAVERSE_ALL, -1, node_build_string, &tstring); - TEST (tstring, strcmp (tstring, "CBDEAHGIJKF") == 0); - g_free (tstring); tstring = NULL; - g_node_traverse (root, G_LEVEL_ORDER, G_TRAVERSE_ALL, -1, node_build_string, &tstring); - TEST (tstring, strcmp (tstring, "ABFCDEGHIJK") == 0); - g_free (tstring); tstring = NULL; - - g_node_traverse (root, G_LEVEL_ORDER, G_TRAVERSE_LEAFS, -1, node_build_string, &tstring); - TEST (tstring, strcmp (tstring, "CDEHIJK") == 0); - g_free (tstring); tstring = NULL; - g_node_traverse (root, G_PRE_ORDER, G_TRAVERSE_NON_LEAFS, -1, node_build_string, &tstring); - TEST (tstring, strcmp (tstring, "ABFG") == 0); - g_free (tstring); tstring = NULL; - - g_node_reverse_children (node_B); - g_node_reverse_children (node_G); - - g_node_traverse (root, G_LEVEL_ORDER, G_TRAVERSE_ALL, -1, node_build_string, &tstring); - TEST (tstring, strcmp (tstring, "ABFEDCGKJIH") == 0); - g_free (tstring); tstring = NULL; - - g_node_append (node_D, g_node_new (C2P ('L'))); - g_node_append (node_D, g_node_new (C2P ('M'))); - - g_node_traverse (root, G_LEVEL_ORDER, G_TRAVERSE_ALL, -1, node_build_string, &tstring); - TEST (tstring, strcmp (tstring, "ABFEDCGLMKJIH") == 0); - g_free (tstring); tstring = NULL; - - g_node_destroy (root); - - /* allocation tests */ - - root = g_node_new (NULL); - node = root; - - for (i = 0; i < 2048; i++) - { - g_node_append (node, g_node_new (NULL)); - if ((i%5) == 4) - node = node->children->next; - } - TEST (NULL, g_node_max_height (root) > 100); - TEST (NULL, g_node_n_nodes (root, G_TRAVERSE_ALL) == 1 + 2048); - - g_node_destroy (root); - - if (failed) - exit(1); -} - - -int -main (int argc, - char *argv[]) -{ - g_node_test (); - - return 0; -} - diff --git a/tests/patterntest.c b/tests/patterntest.c deleted file mode 100644 index 2625438..0000000 --- a/tests/patterntest.c +++ /dev/null @@ -1,308 +0,0 @@ -/* GLIB - Library of useful routines for C programming - * Copyright (C) 2001 Matthias Clasen - * - * 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., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. - */ - -#undef G_DISABLE_ASSERT -#undef G_LOG_DOMAIN - -#include -#include - -static gboolean noisy = FALSE; - -static void -verbose (const gchar *format, ...) -{ - gchar *msg; - va_list args; - - va_start (args, format); - msg = g_strdup_vprintf (format, args); - va_end (args); - - if (noisy) - g_print (msg); - g_free (msg); -} - -/* keep enum and structure of gpattern.c and patterntest.c in sync */ -typedef enum -{ - G_MATCH_ALL, /* "*A?A*" */ - G_MATCH_ALL_TAIL, /* "*A?AA" */ - G_MATCH_HEAD, /* "AAAA*" */ - G_MATCH_TAIL, /* "*AAAA" */ - G_MATCH_EXACT, /* "AAAAA" */ - G_MATCH_LAST -} GMatchType; - -struct _GPatternSpec -{ - GMatchType match_type; - guint pattern_length; - guint min_length; - guint max_length; - gchar *pattern; -}; - - -static gchar * -match_type_name (GMatchType match_type) -{ - switch (match_type) - { - case G_MATCH_ALL: - return "G_MATCH_ALL"; - break; - case G_MATCH_ALL_TAIL: - return "G_MATCH_ALL_TAIL"; - break; - case G_MATCH_HEAD: - return "G_MATCH_HEAD"; - break; - case G_MATCH_TAIL: - return "G_MATCH_TAIL"; - break; - case G_MATCH_EXACT: - return "G_MATCH_EXACT"; - break; - default: - return "unknown GMatchType"; - break; - } -} - -static gboolean -test_compilation (gchar *src, - GMatchType match_type, - gchar *pattern, - guint min) -{ - GPatternSpec *spec; - - verbose ("compiling \"%s\" \t", src); - spec = g_pattern_spec_new (src); - - if (spec->match_type != match_type) - { - g_print ("failed \t(match_type: %s, expected %s)\n", - match_type_name (spec->match_type), - match_type_name (match_type)); - g_pattern_spec_free (spec); - return FALSE; - } - - if (strcmp (spec->pattern, pattern) != 0) - { - g_print ("failed \t(pattern: \"%s\", expected \"%s\")\n", - spec->pattern, - pattern); - g_pattern_spec_free (spec); - return FALSE; - } - - if (spec->pattern_length != strlen (spec->pattern)) - { - g_print ("failed \t(pattern_length: %d, expected %d)\n", - spec->pattern_length, - (gint)strlen (spec->pattern)); - g_pattern_spec_free (spec); - return FALSE; - } - - if (spec->min_length != min) - { - g_print ("failed \t(min_length: %d, expected %d)\n", - spec->min_length, - min); - g_pattern_spec_free (spec); - return FALSE; - } - - verbose ("passed (%s: \"%s\")\n", - match_type_name (spec->match_type), - spec->pattern); - - g_pattern_spec_free (spec); - - return TRUE; -} - -static gboolean -test_match (gchar *pattern, - gchar *string, - gboolean match) -{ - verbose ("matching \"%s\" against \"%s\" \t", string, pattern); - - if (g_pattern_match_simple (pattern, string) != match) - { - g_print ("failed \t(unexpected %s)\n", (match ? "mismatch" : "match")); - return FALSE; - } - - verbose ("passed (%s)\n", match ? "match" : "nomatch"); - - return TRUE; -} - -static gboolean -test_equal (gchar *pattern1, - gchar *pattern2, - gboolean expected) -{ - GPatternSpec *p1 = g_pattern_spec_new (pattern1); - GPatternSpec *p2 = g_pattern_spec_new (pattern2); - gboolean equal = g_pattern_spec_equal (p1, p2); - - verbose ("comparing \"%s\" with \"%s\" \t", pattern1, pattern2); - - if (expected != equal) - { - g_print ("failed \t{%s, %u, \"%s\"} %s {%s, %u, \"%s\"}\n", - match_type_name (p1->match_type), p1->pattern_length, p1->pattern, - expected ? "!=" : "==", - match_type_name (p2->match_type), p2->pattern_length, p2->pattern); - } - else - verbose ("passed (%s)\n", equal ? "equal" : "unequal"); - - g_pattern_spec_free (p1); - g_pattern_spec_free (p2); - - return expected == equal; -} - -#define TEST_COMPILATION(src, type, pattern, min) { \ - total++; \ - if (test_compilation (src, type, pattern, min)) \ - passed++; \ - else \ - failed++; \ -} - -#define TEST_MATCH(pattern, string, match) { \ - total++; \ - if (test_match (pattern, string, match)) \ - passed++; \ - else \ - failed++; \ -} - -#define TEST_EQUAL(pattern1, pattern2, match) { \ - total++; \ - if (test_equal (pattern1, pattern2, match)) \ - passed++; \ - else \ - failed++; \ -} - -int -main (int argc, char** argv) -{ - gint total = 0; - gint passed = 0; - gint failed = 0; - gint i; - - for (i = 1; i < argc; i++) - if (strcmp ("--noisy", argv[i]) == 0) - noisy = TRUE; - - TEST_COMPILATION("*A?B*", G_MATCH_ALL, "*A?B*", 3); - TEST_COMPILATION("ABC*DEFGH", G_MATCH_ALL_TAIL, "HGFED*CBA", 8); - TEST_COMPILATION("ABCDEF*GH", G_MATCH_ALL, "ABCDEF*GH", 8); - TEST_COMPILATION("ABC**?***??**DEF*GH", G_MATCH_ALL, "ABC*???DEF*GH", 11); - TEST_COMPILATION("*A?AA", G_MATCH_ALL_TAIL, "AA?A*", 4); - TEST_COMPILATION("ABCD*", G_MATCH_HEAD, "ABCD", 4); - TEST_COMPILATION("*ABCD", G_MATCH_TAIL, "ABCD", 4); - TEST_COMPILATION("ABCDE", G_MATCH_EXACT, "ABCDE", 5); - TEST_COMPILATION("A?C?E", G_MATCH_ALL, "A?C?E", 5); - TEST_COMPILATION("*?x", G_MATCH_ALL_TAIL, "x?*", 2); - TEST_COMPILATION("?*x", G_MATCH_ALL_TAIL, "x?*", 2); - TEST_COMPILATION("*?*x", G_MATCH_ALL_TAIL, "x?*", 2); - TEST_COMPILATION("x*??", G_MATCH_ALL_TAIL, "??*x", 3); - - TEST_EQUAL("*A?B*", "*A?B*", TRUE); - TEST_EQUAL("A*BCD", "A*BCD", TRUE); - TEST_EQUAL("ABCD*", "ABCD****", TRUE); - TEST_EQUAL("A1*", "A1*", TRUE); - TEST_EQUAL("*YZ", "*YZ", TRUE); - TEST_EQUAL("A1x", "A1x", TRUE); - TEST_EQUAL("AB*CD", "AB**CD", TRUE); - TEST_EQUAL("AB*?*CD", "AB*?CD", TRUE); - TEST_EQUAL("AB*?CD", "AB?*CD", TRUE); - TEST_EQUAL("AB*CD", "AB*?*CD", FALSE); - TEST_EQUAL("ABC*", "ABC?", FALSE); - - TEST_MATCH("*x", "x", TRUE); - TEST_MATCH("*x", "xx", TRUE); - TEST_MATCH("*x", "yyyx", TRUE); - TEST_MATCH("*x", "yyxy", FALSE); - TEST_MATCH("?x", "x", FALSE); - TEST_MATCH("?x", "xx", TRUE); - TEST_MATCH("?x", "yyyx", FALSE); - TEST_MATCH("?x", "yyxy", FALSE); - TEST_MATCH("*?x", "xx", TRUE); - TEST_MATCH("?*x", "xx", TRUE); - TEST_MATCH("*?x", "x", FALSE); - TEST_MATCH("?*x", "x", FALSE); - TEST_MATCH("*?*x", "yx", TRUE); - TEST_MATCH("*?*x", "xxxx", TRUE); - TEST_MATCH("x*??", "xyzw", TRUE); - TEST_MATCH("*x", "\xc3\x84x", TRUE); - TEST_MATCH("?x", "\xc3\x84x", TRUE); - TEST_MATCH("??x", "\xc3\x84x", FALSE); - TEST_MATCH("ab\xc3\xa4\xc3\xb6", "ab\xc3\xa4\xc3\xb6", TRUE); - TEST_MATCH("ab\xc3\xa4\xc3\xb6", "abao", FALSE); - TEST_MATCH("ab?\xc3\xb6", "ab\xc3\xa4\xc3\xb6", TRUE); - TEST_MATCH("ab?\xc3\xb6", "abao", FALSE); - TEST_MATCH("ab\xc3\xa4?", "ab\xc3\xa4\xc3\xb6", TRUE); - TEST_MATCH("ab\xc3\xa4?", "abao", FALSE); - TEST_MATCH("ab??", "ab\xc3\xa4\xc3\xb6", TRUE); - TEST_MATCH("ab*", "ab\xc3\xa4\xc3\xb6", TRUE); - TEST_MATCH("ab*\xc3\xb6", "ab\xc3\xa4\xc3\xb6", TRUE); - TEST_MATCH("ab*\xc3\xb6", "aba\xc3\xb6x\xc3\xb6", TRUE); - TEST_MATCH("", "abc", FALSE); - - TEST_MATCH("", "", TRUE); - TEST_MATCH("abc", "abc", TRUE); - TEST_MATCH("*fo1*bar", "yyyfoxfo1bar", TRUE); - TEST_MATCH("12*fo1g*bar", "12yyyfoxfo1gbar", TRUE); - TEST_MATCH("__________:*fo1g*bar", "__________:yyyfoxfo1gbar", TRUE); - TEST_MATCH("*abc*cde", "abcde", FALSE); - TEST_MATCH("*abc*cde", "abccde", TRUE); - TEST_MATCH("*abc*cde", "abcxcde", TRUE); - TEST_MATCH("*abc*?cde", "abccde", FALSE); - TEST_MATCH("*abc*?cde", "abcxcde", TRUE); - TEST_MATCH("*abc*def", "abababcdededef", TRUE); - TEST_MATCH("*abc*def", "abcbcbcdededef", TRUE); - TEST_MATCH("*acbc*def", "acbcbcbcdededef", TRUE); - TEST_MATCH("*a?bc*def", "acbcbcbcdededef", TRUE); - TEST_MATCH("*abc*def", "bcbcbcdefdef", FALSE); - TEST_MATCH("*abc*def*ghi", "abcbcbcbcbcbcdefefdefdefghi", TRUE); - TEST_MATCH("*abc*def*ghi", "bcbcbcbcbcbcdefdefdefdefghi", FALSE); - TEST_MATCH("_1_2_3_4_5_6_7_8_9_0_1_2_3_4_5_*abc*def*ghi", "_1_2_3_4_5_6_7_8_9_0_1_2_3_4_5_abcbcbcbcbcbcdefefdefdefghi", TRUE); - TEST_MATCH("fooooooo*a*bc", "fooooooo_a_bd_a_bc", TRUE); - - verbose ("\n%u tests passed, %u failed\n", passed, failed); - - return failed; -} - - diff --git a/tests/queue-test.c b/tests/queue-test.c deleted file mode 100644 index 448e8bd..0000000 --- a/tests/queue-test.c +++ /dev/null @@ -1,962 +0,0 @@ -#undef G_DISABLE_ASSERT -#undef G_LOG_DOMAIN - -#include -#include - -#include - - -static gboolean verbose = FALSE; - - -static void -check_integrity (GQueue *queue) -{ - GList *list; - GList *last; - GList *links; - GList *link; - gint n; - - g_assert (queue->length < 4000000000u); - - g_assert (g_queue_get_length (queue) == queue->length); - - if (!queue->head) - g_assert (!queue->tail); - if (!queue->tail) - g_assert (!queue->head); - - n = 0; - last = NULL; - for (list = queue->head; list != NULL; list = list->next) - { - if (!list->next) - last = list; - ++n; - } - g_assert (n == queue->length); - g_assert (last == queue->tail); - - n = 0; - last = NULL; - for (list = queue->tail; list != NULL; list = list->prev) - { - if (!list->prev) - last = list; - ++n; - } - g_assert (n == queue->length); - g_assert (last == queue->head); - - links = NULL; - for (list = queue->head; list != NULL; list = list->next) - links = g_list_prepend (links, list); - - link = links; - for (list = queue->tail; list != NULL; list = list->prev) - { - g_assert (list == link->data); - link = link->next; - } - g_list_free (links); - - links = NULL; - for (list = queue->tail; list != NULL; list = list->prev) - links = g_list_prepend (links, list); - - link = links; - for (list = queue->head; list != NULL; list = list->next) - { - g_assert (list == link->data); - link = link->next; - } - g_list_free (links); -} - -static gboolean -rnd_bool (void) -{ - return g_random_int_range (0, 2); -} - -static void -check_max (gpointer elm, gpointer user_data) -{ - gint *best = user_data; - gint element = GPOINTER_TO_INT (elm); - - if (element > *best) - *best = element; -} - -static void -check_min (gpointer elm, gpointer user_data) -{ - gint *best = user_data; - gint element = GPOINTER_TO_INT (elm); - - if (element < *best) - *best = element; -} - -static gint -find_min (GQueue *queue) -{ - gint min = G_MAXINT; - - g_queue_foreach (queue, check_min, &min); - - return min; -} - -static gint -find_max (GQueue *queue) -{ - gint max = G_MININT; - - g_queue_foreach (queue, check_max, &max); - - return max; -} - -static void -delete_elm (gpointer elm, gpointer user_data) -{ - g_queue_remove ((GQueue *)user_data, elm); - check_integrity ((GQueue *)user_data); -} - -static void -delete_all (GQueue *queue) -{ - g_queue_foreach (queue, delete_elm, queue); -} - -static int -compare_int (gconstpointer a, gconstpointer b, gpointer data) -{ - int ai = GPOINTER_TO_INT (a); - int bi = GPOINTER_TO_INT (b); - - if (ai > bi) - return 1; - else if (ai == bi) - return 0; - else - return -1; -} - -static gint -get_random_position (GQueue *queue, gboolean allow_offlist) -{ - int n; - enum { OFF_QUEUE, HEAD, TAIL, MIDDLE, LAST } where; - - if (allow_offlist) - where = g_random_int_range (OFF_QUEUE, LAST); - else - where = g_random_int_range (HEAD, LAST); - - switch (where) - { - case OFF_QUEUE: - n = g_random_int (); - break; - - case HEAD: - n = 0; - break; - - case TAIL: - if (allow_offlist) - n = queue->length; - else - n = queue->length - 1; - break; - - case MIDDLE: - if (queue->length == 0) - n = 0; - else - n = g_random_int_range (0, queue->length); - break; - - default: - g_assert_not_reached(); - n = 100; - break; - - } - - return n; -} - -static void -random_test (int seed) -{ - typedef enum { - IS_EMPTY, GET_LENGTH, REVERSE, COPY, - FOREACH, FIND, FIND_CUSTOM, SORT, - PUSH_HEAD, PUSH_TAIL, PUSH_NTH, POP_HEAD, - POP_TAIL, POP_NTH, PEEK_HEAD, PEEK_TAIL, - PEEK_NTH, INDEX, REMOVE, REMOVE_ALL, - INSERT_BEFORE, INSERT_AFTER, INSERT_SORTED, PUSH_HEAD_LINK, - PUSH_TAIL_LINK, PUSH_NTH_LINK, POP_HEAD_LINK, POP_TAIL_LINK, - POP_NTH_LINK, PEEK_HEAD_LINK, PEEK_TAIL_LINK, PEEK_NTH_LINK, - LINK_INDEX, UNLINK, DELETE_LINK, LAST_OP - } QueueOp; - -#define N_ITERATIONS 500000 -#define N_QUEUES 3 - -#define RANDOM_QUEUE() &(queues[g_random_int_range(0, N_QUEUES)]) - - typedef struct QueueInfo QueueInfo; - struct QueueInfo - { - GQueue *queue; - GList *tail; - GList *head; - guint length; - }; - - gint i; - QueueOp op; - QueueInfo queues[N_QUEUES]; - - if (verbose) - g_print ("seed: %d\n", seed); - - g_random_set_seed (seed); - - for (i = 0; i < N_QUEUES; ++i) - { - queues[i].queue = g_queue_new (); - queues[i].head = NULL; - queues[i].tail = NULL; - queues[i].length = 0; - } - - for (i = 0; i < N_ITERATIONS; ++i) - { - int j; - QueueInfo *qinf = RANDOM_QUEUE(); - GQueue *q = qinf->queue; - op = g_random_int_range (IS_EMPTY, LAST_OP); - - g_assert (qinf->head == q->head); - g_assert (qinf->tail == q->tail); - g_assert (qinf->length == q->length); - - switch (op) - { - case IS_EMPTY: - { - if (g_queue_is_empty (qinf->queue)) - { - g_assert (q->head == NULL); - g_assert (q->tail == NULL); - g_assert (q->length == 0); - } - else - { - g_assert (q->head); - g_assert (q->tail); - g_assert (q->length > 0); - } - } - break; - case GET_LENGTH: - { - int l; - - l = g_queue_get_length (q); - - g_assert (qinf->length == q->length); - g_assert (qinf->length == l); - } - break; - case REVERSE: - g_queue_reverse (q); - g_assert (qinf->tail == q->head); - g_assert (qinf->head == q->tail); - g_assert (qinf->length == q->length); - qinf->tail = q->tail; - qinf->head = q->head; - break; - case COPY: - { - QueueInfo *random_queue = RANDOM_QUEUE(); - GQueue *new_queue = g_queue_copy (random_queue->queue); - - g_queue_free (qinf->queue); - q = qinf->queue = new_queue; - qinf->head = new_queue->head; - qinf->tail = g_list_last (new_queue->head); - qinf->length = new_queue->length; - } - break; - case FOREACH: - delete_all (q); - qinf->head = NULL; - qinf->tail = NULL; - qinf->length = 0; - break; - case FIND: - { - gboolean find_existing = rnd_bool (); - int first = find_max (q); - int second = find_min (q); - - if (q->length == 0) - find_existing = FALSE; - - if (!find_existing) - first++; - if (!find_existing) - second--; - - if (find_existing) - { - g_assert (g_queue_find (q, GINT_TO_POINTER (first))); - g_assert (g_queue_find (q, GINT_TO_POINTER (second))); - } - else - { - g_assert (!g_queue_find (q, GINT_TO_POINTER (first))); - g_assert (!g_queue_find (q, GINT_TO_POINTER (second))); - } - } - break; - case FIND_CUSTOM: - break; - case SORT: - { - if (!g_queue_is_empty (q)) - { - int max = find_max (q); - int min = find_min (q); - g_queue_remove_all (q, GINT_TO_POINTER (max)); - check_integrity (q); - g_queue_remove_all (q, GINT_TO_POINTER (min)); - check_integrity (q); - g_queue_push_head (q, GINT_TO_POINTER (max)); - if (max != min) - g_queue_push_head (q, GINT_TO_POINTER (min)); - qinf->length = q->length; - } - - check_integrity (q); - - g_queue_sort (q, compare_int, NULL); - - check_integrity (q); - - qinf->head = g_queue_find (q, GINT_TO_POINTER (find_min(q))); - qinf->tail = g_queue_find (q, GINT_TO_POINTER (find_max(q))); - - g_assert (qinf->tail == q->tail); - } - break; - case PUSH_HEAD: - { - int x = g_random_int_range (0, 435435); - g_queue_push_head (q, GINT_TO_POINTER (x)); - if (!qinf->head) - qinf->tail = qinf->head = q->head; - else - qinf->head = qinf->head->prev; - qinf->length++; - } - break; - case PUSH_TAIL: - { - int x = g_random_int_range (0, 236546); - g_queue_push_tail (q, GINT_TO_POINTER (x)); - if (!qinf->tail) - qinf->tail = qinf->head = q->head; - else - qinf->tail = qinf->tail->next; - qinf->length++; - } - break; - case PUSH_NTH: - { - int pos = get_random_position (q, TRUE); - int x = g_random_int_range (0, 236546); - g_queue_push_nth (q, GINT_TO_POINTER (x), pos); - if (qinf->head && qinf->head->prev) - qinf->head = qinf->head->prev; - else - qinf->head = q->head; - if (qinf->tail && qinf->tail->next) - qinf->tail = qinf->tail->next; - else - qinf->tail = g_list_last (qinf->head); - qinf->length++; - } - break; - case POP_HEAD: - if (qinf->head) - qinf->head = qinf->head->next; - if (!qinf->head) - qinf->tail = NULL; - qinf->length = (qinf->length == 0)? 0 : qinf->length - 1; - g_queue_pop_head (q); - break; - case POP_TAIL: - if (qinf->tail) - qinf->tail = qinf->tail->prev; - if (!qinf->tail) - qinf->head = NULL; - qinf->length = (qinf->length == 0)? 0 : qinf->length - 1; - g_queue_pop_tail (q); - break; - case POP_NTH: - if (!g_queue_is_empty (q)) - { - int n = get_random_position (q, TRUE); - gpointer elm = g_queue_peek_nth (q, n); - - if (n == q->length - 1) - qinf->tail = qinf->tail->prev; - - if (n == 0) - qinf->head = qinf->head->next; - - if (n >= 0 && n < q->length) - qinf->length--; - - g_assert (elm == g_queue_pop_nth (q, n)); - } - break; - case PEEK_HEAD: - if (qinf->head) - g_assert (qinf->head->data == g_queue_peek_head (q)); - else - g_assert (g_queue_peek_head (q) == NULL); - break; - case PEEK_TAIL: - if (qinf->head) - g_assert (qinf->tail->data == g_queue_peek_tail (q)); - else - g_assert (g_queue_peek_tail (q) == NULL); - break; - case PEEK_NTH: - if (g_queue_is_empty (q)) - { - for (j = -10; j < 10; ++j) - g_assert (g_queue_peek_nth (q, j) == NULL); - } - else - { - GList *list; - int n = get_random_position (q, TRUE); - if (n < 0 || n >= q->length) - { - g_assert (g_queue_peek_nth (q, n) == NULL); - } - else - { - list = qinf->head; - for (j = 0; j < n; ++j) - list = list->next; - - g_assert (list->data == g_queue_peek_nth (q, n)); - } - } - break; - case INDEX: - case LINK_INDEX: - { - int x = g_random_int_range (0, 386538); - int n; - GList *list; - - g_queue_remove_all (q, GINT_TO_POINTER (x)); - check_integrity (q); - g_queue_push_tail (q, GINT_TO_POINTER (x)); - check_integrity (q); - g_queue_sort (q, compare_int, NULL); - check_integrity (q); - - n = 0; - for (list = q->head; list != NULL; list = list->next) - { - if (list->data == GINT_TO_POINTER (x)) - break; - n++; - } - g_assert (list); - g_assert (g_queue_index (q, GINT_TO_POINTER (x)) == - g_queue_link_index (q, list)); - g_assert (g_queue_link_index (q, list) == n); - - qinf->head = q->head; - qinf->tail = q->tail; - qinf->length = q->length; - } - break; - case REMOVE: - if (!g_queue_is_empty (q)) - g_queue_remove (q, qinf->tail->data); - if (!g_queue_is_empty (q)) - g_queue_remove (q, qinf->head->data); - if (!g_queue_is_empty (q)) - g_queue_remove (q, g_queue_peek_nth (q, get_random_position (q, TRUE))); - - qinf->head = q->head; - qinf->tail = q->tail; - qinf->length = q->length; - break; - case REMOVE_ALL: - if (!g_queue_is_empty (q)) - g_queue_remove_all (q, qinf->tail->data); - if (!g_queue_is_empty (q)) - g_queue_remove_all (q, qinf->head->data); - if (!g_queue_is_empty (q)) - g_queue_remove_all (q, g_queue_peek_nth (q, get_random_position (q, TRUE))); - - qinf->head = q->head; - qinf->tail = q->tail; - qinf->length = q->length; - break; - case INSERT_BEFORE: - if (!g_queue_is_empty (q)) - { - gpointer x = GINT_TO_POINTER (g_random_int_range (0, 386538)); - - g_queue_insert_before (q, qinf->tail, x); - g_queue_insert_before (q, qinf->head, x); - g_queue_insert_before (q, g_queue_find (q, x), x); - } - qinf->head = q->head; - qinf->tail = q->tail; - qinf->length = q->length; - break; - case INSERT_AFTER: - if (!g_queue_is_empty (q)) - { - gpointer x = GINT_TO_POINTER (g_random_int_range (0, 386538)); - - g_queue_insert_after (q, qinf->tail, x); - g_queue_insert_after (q, qinf->head, x); - g_queue_insert_after (q, g_queue_find (q, x), x); - } - qinf->head = q->head; - qinf->tail = q->tail; - qinf->length = q->length; - break; - case INSERT_SORTED: - { - int max = find_max (q); - int min = find_min (q); - - if (g_queue_is_empty (q)) - { - max = 345; - min = -12; - } - - g_queue_sort (q, compare_int, NULL); - check_integrity (q); - g_queue_insert_sorted (q, GINT_TO_POINTER (max + 1), compare_int, NULL); - check_integrity (q); - g_assert (GPOINTER_TO_INT (q->tail->data) == max + 1); - g_queue_insert_sorted (q, GINT_TO_POINTER (min - 1), compare_int, NULL); - check_integrity (q); - g_assert (GPOINTER_TO_INT (q->head->data) == min - 1); - qinf->head = q->head; - qinf->tail = q->tail; - qinf->length = q->length; - } - break; - case PUSH_HEAD_LINK: - { - GList *link = g_list_prepend (NULL, GINT_TO_POINTER (i)); - g_queue_push_head_link (q, link); - if (!qinf->tail) - qinf->tail = link; - qinf->head = link; - qinf->length++; - } - break; - case PUSH_TAIL_LINK: - { - GList *link = g_list_prepend (NULL, GINT_TO_POINTER (i)); - g_queue_push_tail_link (q, link); - if (!qinf->head) - qinf->head = link; - qinf->tail = link; - qinf->length++; - } - break; - case PUSH_NTH_LINK: - { - GList *link = g_list_prepend (NULL, GINT_TO_POINTER (i)); - gint n = get_random_position (q, TRUE); - g_queue_push_nth_link (q, n, link); - - if (qinf->head && qinf->head->prev) - qinf->head = qinf->head->prev; - else - qinf->head = q->head; - if (qinf->tail && qinf->tail->next) - qinf->tail = qinf->tail->next; - else - qinf->tail = g_list_last (qinf->head); - qinf->length++; - } - break; - case POP_HEAD_LINK: - if (!g_queue_is_empty (q)) - { - qinf->head = qinf->head->next; - if (!qinf->head) - qinf->tail = NULL; - qinf->length--; - g_list_free (g_queue_pop_head_link (q)); - } - break; - case POP_TAIL_LINK: - if (!g_queue_is_empty (q)) - { - qinf->tail = qinf->tail->prev; - if (!qinf->tail) - qinf->head = NULL; - qinf->length--; - g_list_free (g_queue_pop_tail_link (q)); - } - break; - case POP_NTH_LINK: - if (g_queue_is_empty (q)) - g_assert (g_queue_pop_nth_link (q, 200) == NULL); - else - { - int n = get_random_position (q, FALSE); - - if (n == g_queue_get_length (q) - 1) - qinf->tail = qinf->tail->prev; - - if (n == 0) - qinf->head = qinf->head->next; - - qinf->length--; - - g_list_free (g_queue_pop_nth_link (q, n)); - } - break; - case PEEK_HEAD_LINK: - if (g_queue_is_empty (q)) - g_assert (g_queue_peek_head_link (q) == NULL); - else - g_assert (g_queue_peek_head_link (q) == qinf->head); - break; - case PEEK_TAIL_LINK: - if (g_queue_is_empty (q)) - g_assert (g_queue_peek_tail_link (q) == NULL); - else - g_assert (g_queue_peek_tail_link (q) == qinf->tail); - break; - case PEEK_NTH_LINK: - if (g_queue_is_empty(q)) - g_assert (g_queue_peek_nth_link (q, 1000) == NULL); - else - { - gint n = get_random_position (q, FALSE); - GList *link; - - link = q->head; - for (j = 0; j < n; ++j) - link = link->next; - - g_assert (g_queue_peek_nth_link (q, n) == link); - } - break; - case UNLINK: - if (!g_queue_is_empty (q)) - { - gint n = g_random_int_range (0, g_queue_get_length (q)); - GList *link; - - link = q->head; - for (j = 0; j < n; ++j) - link = link->next; - - g_queue_unlink (q, link); - check_integrity (q); - - g_list_free (link); - - qinf->head = q->head; - qinf->tail = q->tail; - qinf->length--; - } - break; - case DELETE_LINK: - if (!g_queue_is_empty (q)) - { - gint n = g_random_int_range (0, g_queue_get_length (q)); - GList *link; - - link = q->head; - for (j = 0; j < n; ++j) - link = link->next; - - g_queue_delete_link (q, link); - check_integrity (q); - - qinf->head = q->head; - qinf->tail = q->tail; - qinf->length--; - } - break; - case LAST_OP: - default: - g_assert_not_reached(); - break; - } - - if (qinf->head != q->head || - qinf->tail != q->tail || - qinf->length != q->length) - g_print ("op: %d\n", op); - - g_assert (qinf->head == q->head); - g_assert (qinf->tail == q->tail); - g_assert (qinf->length == q->length); - - for (j = 0; j < N_QUEUES; ++j) - check_integrity (queues[j].queue); - } - - for (i = 0; i < N_QUEUES; ++i) - g_queue_free (queues[i].queue); -} - -static void -remove_item (gpointer data, gpointer q) -{ - GQueue *queue = q; - - g_queue_remove (queue, data); -} - -int main(int argc, gchar *args[]) -{ - GQueue *q, *q2; - GList *node; - gpointer data; - int i; - - if (argc > 1 && args[1][0] == '-' && args[1][1] == 'v') - verbose = TRUE; - - q = g_queue_new (); - - g_assert (g_queue_is_empty (q) == TRUE); - - g_queue_push_head (q, GINT_TO_POINTER (2)); - check_integrity (q); - g_assert (g_queue_peek_head (q) == GINT_TO_POINTER (2)); - check_integrity (q); - g_assert (g_queue_is_empty (q) == FALSE); - check_integrity (q); - g_assert (g_list_length (q->head) == 1); - g_assert (q->head == q->tail); - g_queue_push_head (q, GINT_TO_POINTER (1)); - check_integrity (q); - g_assert (q->head->next == q->tail); - g_assert (q->tail->prev == q->head); - g_assert (g_list_length (q->head) == 2); - check_integrity (q); - g_assert (q->tail->data == GINT_TO_POINTER (2)); - g_assert (q->head->data == GINT_TO_POINTER (1)); - check_integrity (q); - g_queue_push_tail (q, GINT_TO_POINTER (3)); - g_assert (g_list_length (q->head) == 3); - g_assert (q->head->data == GINT_TO_POINTER (1)); - g_assert (q->head->next->data == GINT_TO_POINTER (2)); - g_assert (q->head->next->next == q->tail); - g_assert (q->head->next == q->tail->prev); - g_assert (q->tail->data == GINT_TO_POINTER (3)); - g_queue_push_tail (q, GINT_TO_POINTER (4)); - check_integrity (q); - g_assert (g_list_length (q->head) == 4); - g_assert (q->head->data == GINT_TO_POINTER (1)); - g_assert (g_queue_peek_tail (q) == GINT_TO_POINTER (4)); - g_queue_push_tail (q, GINT_TO_POINTER (5)); - check_integrity (q); - g_assert (g_list_length (q->head) == 5); - - g_assert (g_queue_is_empty (q) == FALSE); - check_integrity (q); - - g_assert (q->length == 5); - g_assert (q->head->prev == NULL); - g_assert (q->head->data == GINT_TO_POINTER (1)); - g_assert (q->head->next->data == GINT_TO_POINTER (2)); - g_assert (q->head->next->next->data == GINT_TO_POINTER (3)); - g_assert (q->head->next->next->next->data == GINT_TO_POINTER (4)); - g_assert (q->head->next->next->next->next->data == GINT_TO_POINTER (5)); - g_assert (q->head->next->next->next->next->next == NULL); - g_assert (q->head->next->next->next->next == q->tail); - g_assert (q->tail->data == GINT_TO_POINTER (5)); - g_assert (q->tail->prev->data == GINT_TO_POINTER (4)); - g_assert (q->tail->prev->prev->data == GINT_TO_POINTER (3)); - g_assert (q->tail->prev->prev->prev->data == GINT_TO_POINTER (2)); - g_assert (q->tail->prev->prev->prev->prev->data == GINT_TO_POINTER (1)); - g_assert (q->tail->prev->prev->prev->prev->prev == NULL); - g_assert (q->tail->prev->prev->prev->prev == q->head); - g_assert (g_queue_peek_tail (q) == GINT_TO_POINTER (5)); - g_assert (g_queue_peek_head (q) == GINT_TO_POINTER (1)); - - g_assert (g_queue_pop_head (q) == GINT_TO_POINTER (1)); - check_integrity (q); - g_assert (g_list_length (q->head) == 4 && q->length == 4); - g_assert (g_queue_pop_tail (q) == GINT_TO_POINTER (5)); - check_integrity (q); - g_assert (g_list_length (q->head) == 3); - g_assert (g_queue_pop_head_link (q)->data == GINT_TO_POINTER (2)); - check_integrity (q); - g_assert (g_list_length (q->head) == 2); - g_assert (g_queue_pop_tail (q) == GINT_TO_POINTER (4)); - check_integrity (q); - g_assert (g_list_length (q->head) == 1); - g_assert (g_queue_pop_head_link (q)->data == GINT_TO_POINTER (3)); - check_integrity (q); - g_assert (g_list_length (q->head) == 0); - g_assert (g_queue_pop_tail (q) == NULL); - check_integrity (q); - g_assert (g_list_length (q->head) == 0); - g_assert (g_queue_pop_head (q) == NULL); - check_integrity (q); - g_assert (g_list_length (q->head) == 0); - - g_assert (g_queue_is_empty (q) == TRUE); - check_integrity (q); - - /************************/ - - g_queue_push_head (q, GINT_TO_POINTER (1)); - check_integrity (q); - g_assert (g_list_length (q->head) == 1 && 1 == q->length); - g_queue_push_head (q, GINT_TO_POINTER (2)); - check_integrity (q); - g_assert (g_list_length (q->head) == 2 && 2 == q->length); - g_queue_push_head (q, GINT_TO_POINTER (3)); - check_integrity (q); - g_assert (g_list_length (q->head) == 3 && 3 == q->length); - g_queue_push_head (q, GINT_TO_POINTER (4)); - check_integrity (q); - g_assert (g_list_length (q->head) == 4 && 4 == q->length); - g_queue_push_head (q, GINT_TO_POINTER (5)); - check_integrity (q); - g_assert (g_list_length (q->head) == 5 && 5 == q->length); - - g_assert (g_queue_pop_head (q) == GINT_TO_POINTER (5)); - check_integrity (q); - g_assert (g_list_length (q->head) == 4); - node = q->tail; - g_assert (node == g_queue_pop_tail_link (q)); - check_integrity (q); - g_assert (g_list_length (q->head) == 3); - data = q->head->data; - g_assert (data == g_queue_pop_head (q)); - check_integrity (q); - g_assert (g_list_length (q->head) == 2); - g_assert (g_queue_pop_tail (q) == GINT_TO_POINTER (2)); - check_integrity (q); - g_assert (g_list_length (q->head) == 1); - g_assert (q->head == q->tail); - g_assert (g_queue_pop_tail (q) == GINT_TO_POINTER (3)); - check_integrity (q); - g_assert (g_list_length (q->head) == 0); - g_assert (g_queue_pop_head (q) == NULL); - check_integrity (q); - g_assert (g_queue_pop_head_link (q) == NULL); - check_integrity (q); - g_assert (g_list_length (q->head) == 0); - g_assert (g_queue_pop_tail_link (q) == NULL); - check_integrity (q); - g_assert (g_list_length (q->head) == 0); - - /* */ - g_queue_reverse (q); - check_integrity (q); - g_assert (g_list_length (q->head) == 0); - - q2 = g_queue_copy (q); - check_integrity (q); - check_integrity (q2); - g_assert (g_list_length (q->head) == 0); - g_assert (g_list_length (q2->head) == 0); - g_queue_sort (q, compare_int, NULL); - check_integrity (q2); - check_integrity (q); - g_queue_sort (q2, compare_int, NULL); - check_integrity (q2); - check_integrity (q); - - for (i = 0; i < 200; ++i) - { - g_queue_push_nth (q, GINT_TO_POINTER (i), i); - g_assert (g_queue_find (q, GINT_TO_POINTER (i))); - check_integrity (q); - check_integrity (q2); - } - - for (i = 0; i < 200; ++i) - { - g_queue_remove (q, GINT_TO_POINTER (i)); - check_integrity (q); - check_integrity (q2); - } - - for (i = 0; i < 200; ++i) - { - GList *l = g_list_prepend (NULL, GINT_TO_POINTER (i)); - - g_queue_push_nth_link (q, i, l); - check_integrity (q); - check_integrity (q2); - g_queue_reverse (q); - check_integrity (q); - check_integrity (q2); - } - - g_queue_free (q2); - q2 = g_queue_copy (q); - - g_queue_foreach (q2, remove_item, q2); - check_integrity (q2); - check_integrity (q); - - /* some checks for off by one errors */ - g_queue_push_tail (q, GINT_TO_POINTER (1234)); - check_integrity (q); - node = g_queue_peek_tail_link (q); - g_assert (node != NULL && node->data == GINT_TO_POINTER (1234)); - node = g_queue_peek_nth_link (q, g_queue_get_length (q)); - g_assert (node == NULL); - node = g_queue_peek_nth_link (q, g_queue_get_length (q) - 1); - g_assert (node->data == GINT_TO_POINTER (1234)); - node = g_queue_pop_nth_link (q, g_queue_get_length (q)); - g_assert (node == NULL); - node = g_queue_pop_nth_link (q, g_queue_get_length (q) - 1); - g_assert (node != NULL && node->data == GINT_TO_POINTER (1234)); - - g_queue_free (q); - - if (argc > 2 && args[1][0] == '-' && args[1][1] == 'v') - random_test (strtol (args[2], NULL, 0)); - if (argc > 1) - random_test (strtol (args[1], NULL, 0)); - else - random_test (time (0)); - - return 0; -} - diff --git a/tests/regex-test.c b/tests/regex-test.c deleted file mode 100644 index 6ad9ceb..0000000 --- a/tests/regex-test.c +++ /dev/null @@ -1,2122 +0,0 @@ -/* - * Copyright (C) 2005 - 2006, Marco Barisione - * - * 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., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. - */ - -#undef G_DISABLE_ASSERT -#undef G_LOG_DOMAIN - -#include "config.h" - -#include -#include -#include "glib.h" - -#ifdef ENABLE_REGEX - -/* U+20AC EURO SIGN (symbol, currency) */ -#define EURO "\xe2\x82\xac" -/* U+00E0 LATIN SMALL LETTER A WITH GRAVE (letter, lowercase) */ -#define AGRAVE "\xc3\xa0" -/* U+00C0 LATIN CAPITAL LETTER A WITH GRAVE (letter, uppercase) */ -#define AGRAVE_UPPER "\xc3\x80" -/* U+00E8 LATIN SMALL LETTER E WITH GRAVE (letter, lowercase) */ -#define EGRAVE "\xc3\xa8" -/* U+00F2 LATIN SMALL LETTER O WITH GRAVE (letter, lowercase) */ -#define OGRAVE "\xc3\xb2" -/* U+014B LATIN SMALL LETTER ENG (letter, lowercase) */ -#define ENG "\xc5\x8b" -/* U+0127 LATIN SMALL LETTER H WITH STROKE (letter, lowercase) */ -#define HSTROKE "\xc4\xa7" -/* U+0634 ARABIC LETTER SHEEN (letter, other) */ -#define SHEEN "\xd8\xb4" -/* U+1374 ETHIOPIC NUMBER THIRTY (number, other) */ -#define ETH30 "\xe1\x8d\xb4" - -/* A random value use to mark untouched integer variables. */ -#define UNTOUCHED -559038737 - -static gboolean noisy = FALSE; -static gboolean abort_on_fail = FALSE; - -#define PASS passed++ -#define FAIL \ - G_STMT_START \ - { \ - failed++; \ - if (abort_on_fail) \ - goto end; \ - } \ - G_STMT_END - -/* A replacement for strcmp that doesn't crash with null pointers. */ -static gboolean -streq (const gchar *s1, const gchar *s2) -{ - if (s1 == NULL && s2 == NULL) - return TRUE; - else if (s1 == NULL) - return FALSE; - else if (s2 == NULL) - return FALSE; - else - return strcmp (s1, s2) == 0; -} - -static void -verbose (const gchar *format, ...) -{ - /* Function copied from glib/tests/patterntest.c by Matthias Clasen. */ - gchar *msg; - va_list args; - - va_start (args, format); - msg = g_strdup_vprintf (format, args); - va_end (args); - - if (noisy) - g_print ("%s", msg); - g_free (msg); -} - -static gboolean -test_new (const gchar *pattern, - GRegexCompileFlags compile_opts, - GRegexMatchFlags match_opts) -{ - GRegex *regex; - - verbose ("compiling \"%s\" \t", pattern); - - regex = g_regex_new (pattern, compile_opts, match_opts, NULL); - if (regex == NULL) - { - g_print ("failed \t(pattern: \"%s\", compile: %d, match %d)\n", - pattern, compile_opts, match_opts); - return FALSE; - } - - if (!streq (g_regex_get_pattern (regex), pattern)) - { - g_print ("failed \t(pattern: \"%s\")\n", - pattern); - g_regex_unref (regex); - return FALSE; - } - - g_regex_unref (regex); - - verbose ("passed\n"); - return TRUE; -} - -#define TEST_NEW(pattern, compile_opts, match_opts) { \ - total++; \ - if (test_new (pattern, compile_opts, match_opts)) \ - PASS; \ - else \ - FAIL; \ -} - -static gboolean -test_new_fail (const gchar *pattern, - GRegexCompileFlags compile_opts, - GRegexError expected_error) -{ - GRegex *regex; - GError *error = NULL; - - verbose ("compiling \"%s\" (expected a failure) \t", pattern); - - regex = g_regex_new (pattern, compile_opts, 0, &error); - - if (regex != NULL) - { - g_print ("failed \t(pattern: \"%s\", compile: %d)\n", - pattern, compile_opts); - g_regex_unref (regex); - return FALSE; - } - - if (error->code != expected_error) - { - g_print ("failed \t(pattern: \"%s\", compile: %d, got error: %d, " - "expected error: %d)\n", - pattern, compile_opts, error->code, expected_error); - g_error_free (error); - return FALSE; - } - - verbose ("passed\n"); - return TRUE; -} - -#define TEST_NEW_FAIL(pattern, compile_opts, expected_error) { \ - total++; \ - if (test_new_fail (pattern, compile_opts, expected_error)) \ - PASS; \ - else \ - FAIL; \ -} - -static gboolean -test_match_simple (const gchar *pattern, - const gchar *string, - GRegexCompileFlags compile_opts, - GRegexMatchFlags match_opts, - gboolean expected) -{ - gboolean match; - - verbose ("matching \"%s\" against \"%s\" \t", string, pattern); - - match = g_regex_match_simple (pattern, string, compile_opts, match_opts); - if (match != expected) - { - g_print ("failed \t(unexpected %s)\n", match ? "match" : "mismatch"); - return FALSE; - } - else - { - verbose ("passed (%s)\n", match ? "match" : "nomatch"); - return TRUE; - } -} - -#define TEST_MATCH_SIMPLE(pattern, string, compile_opts, match_opts, expected) { \ - total++; \ - if (test_match_simple (pattern, string, compile_opts, match_opts, expected)) \ - PASS; \ - else \ - FAIL; \ -} - -static gboolean -test_match (const gchar *pattern, - GRegexCompileFlags compile_opts, - GRegexMatchFlags match_opts, - const gchar *string, - gssize string_len, - gint start_position, - GRegexMatchFlags match_opts2, - gboolean expected) -{ - GRegex *regex; - gboolean match; - - verbose ("matching \"%s\" against \"%s\" (start: %d, len: %d) \t", - string, pattern, start_position, string_len); - - regex = g_regex_new (pattern, compile_opts, match_opts, NULL); - match = g_regex_match_full (regex, string, string_len, - start_position, match_opts2, NULL, NULL); - if (match != expected) - { - gchar *e1 = g_strescape (pattern, NULL); - gchar *e2 = g_strescape (string, NULL); - g_print ("failed \t(unexpected %s) '%s' against '%s'\n", match ? "match" : "mismatch", e1, e2); - g_free (e1); - g_free (e2); - g_regex_unref (regex); - return FALSE; - } - - if (string_len == -1 && start_position == 0) - { - match = g_regex_match (regex, string, match_opts2, NULL); - if (match != expected) - { - g_print ("failed \t(pattern: \"%s\", string: \"%s\")\n", - pattern, string); - g_regex_unref (regex); - return FALSE; - } - } - - g_regex_unref (regex); - - verbose ("passed (%s)\n", match ? "match" : "nomatch"); - return TRUE; -} - -#define TEST_MATCH(pattern, compile_opts, match_opts, string, \ - string_len, start_position, match_opts2, expected) { \ - total++; \ - if (test_match (pattern, compile_opts, match_opts, string, \ - string_len, start_position, match_opts2, expected)) \ - PASS; \ - else \ - FAIL; \ -} - -struct _Match -{ - gchar *string; - gint start, end; -}; -typedef struct _Match Match; - -static void -free_match (gpointer data, gpointer user_data) -{ - Match *match = data; - if (match == NULL) - return; - g_free (match->string); - g_free (match); -} - -static gboolean -test_match_next (const gchar *pattern, - const gchar *string, - gssize string_len, - gint start_position, - ...) -{ - GRegex *regex; - GMatchInfo *match_info; - va_list args; - GSList *matches = NULL; - GSList *expected = NULL; - GSList *l_exp, *l_match; - gboolean ret = TRUE; - - verbose ("matching \"%s\" against \"%s\" (start: %d, len: %d) \t", - string, pattern, start_position, string_len); - - /* The va_list is a NULL-terminated sequence of: extected matched string, - * expected start and expected end. */ - va_start (args, start_position); - while (TRUE) - { - Match *match; - const gchar *expected_string = va_arg (args, const gchar *); - if (expected_string == NULL) - break; - match = g_new0 (Match, 1); - match->string = g_strdup (expected_string); - match->start = va_arg (args, gint); - match->end = va_arg (args, gint); - expected = g_slist_prepend (expected, match); - } - expected = g_slist_reverse (expected); - va_end (args); - - regex = g_regex_new (pattern, 0, 0, NULL); - - g_regex_match_full (regex, string, string_len, - start_position, 0, &match_info, NULL); - while (g_match_info_matches (match_info)) - { - Match *match = g_new0 (Match, 1); - match->string = g_match_info_fetch (match_info, 0); - match->start = UNTOUCHED; - match->end = UNTOUCHED; - g_match_info_fetch_pos (match_info, 0, &match->start, &match->end); - matches = g_slist_prepend (matches, match); - g_match_info_next (match_info, NULL); - } - g_assert (regex == g_match_info_get_regex (match_info)); - g_assert (string == g_match_info_get_string (match_info)); - g_match_info_free (match_info); - matches = g_slist_reverse (matches); - - if (g_slist_length (matches) != g_slist_length (expected)) - { - gint match_count = g_slist_length (matches); - g_print ("failed \t(got %d %s, expected %d)\n", match_count, - match_count == 1 ? "match" : "matches", - g_slist_length (expected)); - ret = FALSE; - goto exit; - } - - l_exp = expected; - l_match = matches; - while (l_exp != NULL) - { - Match *exp = l_exp->data; - Match *match = l_match->data; - - if (!streq(exp->string, match->string)) - { - g_print ("failed \t(got \"%s\", expected \"%s\")\n", - match->string, exp->string); - ret = FALSE; - goto exit; - } - - if (exp->start != match->start || exp->end != match->end) - { - g_print ("failed \t(got [%d, %d], expected [%d, %d])\n", - match->start, match->end, exp->start, exp->end); - ret = FALSE; - goto exit; - } - - l_exp = g_slist_next (l_exp); - l_match = g_slist_next (l_match); - } - -exit: - if (ret) - { - gint count = g_slist_length (matches); - verbose ("passed (%d %s)\n", count, count == 1 ? "match" : "matches"); - } - - g_regex_unref (regex); - g_slist_foreach (expected, free_match, NULL); - g_slist_free (expected); - g_slist_foreach (matches, free_match, NULL); - g_slist_free (matches); - - return ret; -} - -#define TEST_MATCH_NEXT0(pattern, string, string_len, start_position) { \ - total++; \ - if (test_match_next (pattern, string, string_len, start_position, NULL)) \ - PASS; \ - else \ - FAIL; \ -} - -#define TEST_MATCH_NEXT1(pattern, string, string_len, start_position, \ - t1, s1, e1) { \ - total++; \ - if (test_match_next (pattern, string, string_len, start_position, \ - t1, s1, e1, NULL)) \ - PASS; \ - else \ - FAIL; \ -} - -#define TEST_MATCH_NEXT2(pattern, string, string_len, start_position, \ - t1, s1, e1, t2, s2, e2) { \ - total++; \ - if (test_match_next (pattern, string, string_len, start_position, \ - t1, s1, e1, t2, s2, e2, NULL)) \ - PASS; \ - else \ - FAIL; \ -} - -#define TEST_MATCH_NEXT3(pattern, string, string_len, start_position, \ - t1, s1, e1, t2, s2, e2, t3, s3, e3) { \ - total++; \ - if (test_match_next (pattern, string, string_len, start_position, \ - t1, s1, e1, t2, s2, e2, t3, s3, e3, NULL)) \ - PASS; \ - else \ - FAIL; \ -} - -#define TEST_MATCH_NEXT4(pattern, string, string_len, start_position, \ - t1, s1, e1, t2, s2, e2, t3, s3, e3, t4, s4, e4) { \ - total++; \ - if (test_match_next (pattern, string, string_len, start_position, \ - t1, s1, e1, t2, s2, e2, t3, s3, e3, t4, s4, e4, NULL)) \ - PASS; \ - else \ - FAIL; \ -} - -static gboolean -test_match_count (const gchar *pattern, - const gchar *string, - gint start_position, - GRegexMatchFlags match_opts, - gint expected_count) -{ - GRegex *regex; - GMatchInfo *match_info; - gint count; - - verbose ("fetching match count (string: \"%s\", pattern: \"%s\", start: %d) \t", - string, pattern, start_position); - - regex = g_regex_new (pattern, 0, 0, NULL); - - g_regex_match_full (regex, string, -1, start_position, - match_opts, &match_info, NULL); - count = g_match_info_get_match_count (match_info); - - if (count != expected_count) - { - g_print ("failed \t(got %d, expected: %d)\n", count, expected_count); - return FALSE; - } - - g_match_info_free (match_info); - g_regex_unref (regex); - - verbose ("passed\n"); - return TRUE; -} - -#define TEST_MATCH_COUNT(pattern, string, start_position, match_opts, expected_count) { \ - total++; \ - if (test_match_count (pattern, string, start_position, match_opts, expected_count)) \ - PASS; \ - else \ - FAIL; \ -} - -static gboolean -test_partial (const gchar *pattern, - const gchar *string, - gboolean expected) -{ - GRegex *regex; - GMatchInfo *match_info; - - verbose ("partial matching (string: \"%s\", pattern: \"%s\") \t", - string, pattern); - - regex = g_regex_new (pattern, 0, 0, NULL); - - g_regex_match (regex, string, G_REGEX_MATCH_PARTIAL, &match_info); - if (expected != g_match_info_is_partial_match (match_info)) - { - g_print ("failed \t(got %d, expected: %d)\n", !expected, expected); - g_regex_unref (regex); - return FALSE; - } - - if (expected && g_match_info_fetch_pos (match_info, 0, NULL, NULL)) - { - g_print ("failed \t(got sub-pattern 0)\n"); - g_regex_unref (regex); - return FALSE; - } - - if (expected && g_match_info_fetch_pos (match_info, 1, NULL, NULL)) - { - g_print ("failed \t(got sub-pattern 1)\n"); - g_regex_unref (regex); - return FALSE; - } - - g_match_info_free (match_info); - g_regex_unref (regex); - - verbose ("passed\n"); - return TRUE; -} - -#define TEST_PARTIAL(pattern, string, expected) { \ - total++; \ - if (test_partial (pattern, string, expected)) \ - PASS; \ - else \ - FAIL; \ -} - -static gboolean -test_sub_pattern (const gchar *pattern, - const gchar *string, - gint start_position, - gint sub_n, - const gchar *expected_sub, - gint expected_start, - gint expected_end) -{ - GRegex *regex; - GMatchInfo *match_info; - gchar *sub_expr; - gint start = UNTOUCHED, end = UNTOUCHED; - - verbose ("fetching sub-pattern %d from \"%s\" (pattern: \"%s\") \t", - sub_n, string, pattern); - - regex = g_regex_new (pattern, 0, 0, NULL); - g_regex_match_full (regex, string, -1, start_position, 0, &match_info, NULL); - - sub_expr = g_match_info_fetch (match_info, sub_n); - if (!streq(sub_expr, expected_sub)) - { - g_print ("failed \t(got \"%s\", expected \"%s\")\n", - sub_expr, expected_sub); - g_free (sub_expr); - g_regex_unref (regex); - return FALSE; - } - g_free (sub_expr); - - g_match_info_fetch_pos (match_info, sub_n, &start, &end); - if (start != expected_start || end != expected_end) - { - g_print ("failed \t(got [%d, %d], expected [%d, %d])\n", - start, end, expected_start, expected_end); - g_regex_unref (regex); - return FALSE; - } - - g_match_info_free (match_info); - g_regex_unref (regex); - - verbose ("passed\n"); - return TRUE; -} - -#define TEST_SUB_PATTERN(pattern, string, start_position, sub_n, expected_sub, \ - expected_start, expected_end) { \ - total++; \ - if (test_sub_pattern (pattern, string, start_position, sub_n, expected_sub, \ - expected_start, expected_end)) \ - PASS; \ - else \ - FAIL; \ -} - -static gboolean -test_named_sub_pattern (const gchar *pattern, - GRegexCompileFlags flags, - const gchar *string, - gint start_position, - const gchar *sub_name, - const gchar *expected_sub, - gint expected_start, - gint expected_end) -{ - GRegex *regex; - GMatchInfo *match_info; - gint start = UNTOUCHED, end = UNTOUCHED; - gchar *sub_expr; - - verbose ("fetching sub-pattern \"%s\" from \"%s\" (pattern: \"%s\") \t", - sub_name, string, pattern); - - regex = g_regex_new (pattern, flags, 0, NULL); - - g_regex_match_full (regex, string, -1, start_position, 0, &match_info, NULL); - sub_expr = g_match_info_fetch_named (match_info, sub_name); - if (!streq (sub_expr, expected_sub)) - { - g_print ("failed \t(got \"%s\", expected \"%s\")\n", - sub_expr, expected_sub); - g_free (sub_expr); - g_regex_unref (regex); - return FALSE; - } - g_free (sub_expr); - - g_match_info_fetch_named_pos (match_info, sub_name, &start, &end); - if (start != expected_start || end != expected_end) - { - g_print ("failed \t(got [%d, %d], expected [%d, %d])\n", - start, end, expected_start, expected_end); - g_regex_unref (regex); - return FALSE; - } - - g_match_info_free (match_info); - g_regex_unref (regex); - - verbose ("passed\n"); - return TRUE; -} - -#define TEST_NAMED_SUB_PATTERN(pattern, string, start_position, sub_name, \ - expected_sub, expected_start, expected_end) { \ - total++; \ - if (test_named_sub_pattern (pattern, 0, string, start_position, sub_name, \ - expected_sub, expected_start, expected_end)) \ - PASS; \ - else \ - FAIL; \ -} - -#define TEST_NAMED_SUB_PATTERN_DUPNAMES(pattern, string, start_position, sub_name, \ - expected_sub, expected_start, expected_end) { \ - total++; \ - if (test_named_sub_pattern (pattern, G_REGEX_DUPNAMES, string, start_position, \ - sub_name, expected_sub, expected_start, expected_end)) \ - PASS; \ - else \ - FAIL; \ -} - -static gboolean -test_fetch_all (const gchar *pattern, - const gchar *string, - ...) -{ - GRegex *regex; - GMatchInfo *match_info; - va_list args; - GSList *expected = NULL; - GSList *l_exp; - gchar **matches; - gint match_count; - gboolean ret = TRUE; - gint i; - - verbose ("fetching all sub-patterns from \"%s\" (pattern: \"%s\") \t", - string, pattern); - - /* The va_list is a NULL-terminated sequence of extected strings. */ - va_start (args, string); - while (TRUE) - { - gchar *expected_string = va_arg (args, gchar *); - if (expected_string == NULL) - break; - else - expected = g_slist_prepend (expected, g_strdup (expected_string)); - } - expected = g_slist_reverse (expected); - va_end (args); - - regex = g_regex_new (pattern, 0, 0, NULL); - g_regex_match (regex, string, 0, &match_info); - matches = g_match_info_fetch_all (match_info); - if (matches) - match_count = g_strv_length (matches); - else - match_count = 0; - - if (match_count != g_slist_length (expected)) - { - g_print ("failed \t(got %d %s, expected %d)\n", match_count, - match_count == 1 ? "match" : "matches", - g_slist_length (expected)); - ret = FALSE; - goto exit; - } - - l_exp = expected; - for (i = 0; l_exp != NULL; i++, l_exp = g_slist_next (l_exp)) - { - if (!streq(l_exp->data, matches [i])) - { - g_print ("failed \t(got \"%s\", expected \"%s\")\n", - matches [i], (gchar *)l_exp->data); - ret = FALSE; - goto exit; - } - } - - verbose ("passed (%d %s)\n", match_count, - match_count == 1 ? "match" : "matches"); - -exit: - g_match_info_free (match_info); - g_regex_unref (regex); - g_slist_foreach (expected, (GFunc)g_free, NULL); - g_slist_free (expected); - g_strfreev (matches); - - return ret; -} - -#define TEST_FETCH_ALL0(pattern, string) { \ - total++; \ - if (test_fetch_all (pattern, string, NULL)) \ - PASS; \ - else \ - FAIL; \ -} - -#define TEST_FETCH_ALL1(pattern, string, e1) { \ - total++; \ - if (test_fetch_all (pattern, string, e1, NULL)) \ - PASS; \ - else \ - FAIL; \ -} - -#define TEST_FETCH_ALL2(pattern, string, e1, e2) { \ - total++; \ - if (test_fetch_all (pattern, string, e1, e2, NULL)) \ - PASS; \ - else \ - FAIL; \ -} - -#define TEST_FETCH_ALL3(pattern, string, e1, e2, e3) { \ - total++; \ - if (test_fetch_all (pattern, string, e1, e2, e3, NULL)) \ - PASS; \ - else \ - FAIL; \ -} - -static gboolean -test_split_simple (const gchar *pattern, - const gchar *string, - ...) -{ - va_list args; - GSList *expected = NULL; - GSList *l_exp; - gchar **tokens; - gint token_count; - gboolean ret = TRUE; - gint i; - - verbose ("splitting \"%s\" against \"%s\" \t", string, pattern); - - /* The va_list is a NULL-terminated sequence of extected strings. */ - va_start (args, string); - while (TRUE) - { - gchar *expected_string = va_arg (args, gchar *); - if (expected_string == NULL) - break; - else - expected = g_slist_prepend (expected, g_strdup (expected_string)); - } - expected = g_slist_reverse (expected); - va_end (args); - - tokens = g_regex_split_simple (pattern, string, 0, 0); - if (tokens) - token_count = g_strv_length (tokens); - else - token_count = 0; - - if (token_count != g_slist_length (expected)) - { - g_print ("failed \t(got %d %s, expected %d)\n", token_count, - token_count == 1 ? "match" : "matches", - g_slist_length (expected)); - ret = FALSE; - goto exit; - } - - l_exp = expected; - for (i = 0; l_exp != NULL; i++, l_exp = g_slist_next (l_exp)) - { - if (!streq(l_exp->data, tokens [i])) - { - g_print ("failed \t(got \"%s\", expected \"%s\")\n", - tokens[i], (gchar *)l_exp->data); - ret = FALSE; - goto exit; - } - } - - verbose ("passed (%d %s)\n", token_count, - token_count == 1 ? "token" : "tokens"); - -exit: - g_slist_foreach (expected, (GFunc)g_free, NULL); - g_slist_free (expected); - g_strfreev (tokens); - - return ret; -} - -#define TEST_SPLIT_SIMPLE0(pattern, string) { \ - total++; \ - if (test_split_simple (pattern, string, NULL)) \ - PASS; \ - else \ - FAIL; \ -} - -#define TEST_SPLIT_SIMPLE1(pattern, string, e1) { \ - total++; \ - if (test_split_simple (pattern, string, e1, NULL)) \ - PASS; \ - else \ - FAIL; \ -} - -#define TEST_SPLIT_SIMPLE2(pattern, string, e1, e2) { \ - total++; \ - if (test_split_simple (pattern, string, e1, e2, NULL)) \ - PASS; \ - else \ - FAIL; \ -} - -#define TEST_SPLIT_SIMPLE3(pattern, string, e1, e2, e3) { \ - total++; \ - if (test_split_simple (pattern, string, e1, e2, e3, NULL)) \ - PASS; \ - else \ - FAIL; \ -} - -static gboolean -test_split_full (const gchar *pattern, - const gchar *string, - gint start_position, - gint max_tokens, - ...) -{ - GRegex *regex; - va_list args; - GSList *expected = NULL; - GSList *l_exp; - gchar **tokens; - gint token_count; - gboolean ret = TRUE; - gint i; - - verbose ("splitting \"%s\" against \"%s\" (start: %d, max: %d) \t", - string, pattern, start_position, max_tokens); - - /* The va_list is a NULL-terminated sequence of extected strings. */ - va_start (args, max_tokens); - while (TRUE) - { - gchar *expected_string = va_arg (args, gchar *); - if (expected_string == NULL) - break; - else - expected = g_slist_prepend (expected, g_strdup (expected_string)); - } - expected = g_slist_reverse (expected); - va_end (args); - - regex = g_regex_new (pattern, 0, 0, NULL); - tokens = g_regex_split_full (regex, string, -1, start_position, - 0, max_tokens, NULL); - if (tokens) - token_count = g_strv_length (tokens); - else - token_count = 0; - - if (token_count != g_slist_length (expected)) - { - g_print ("failed \t(got %d %s, expected %d)\n", token_count, - token_count == 1 ? "match" : "matches", - g_slist_length (expected)); - ret = FALSE; - goto exit; - } - - l_exp = expected; - for (i = 0; l_exp != NULL; i++, l_exp = g_slist_next (l_exp)) - { - if (!streq(l_exp->data, tokens [i])) - { - g_print ("failed \t(got \"%s\", expected \"%s\")\n", - tokens[i], (gchar *)l_exp->data); - ret = FALSE; - goto exit; - } - } - - verbose ("passed (%d %s)\n", token_count, - token_count == 1 ? "token" : "tokens"); - -exit: - g_regex_unref (regex); - g_slist_foreach (expected, (GFunc)g_free, NULL); - g_slist_free (expected); - g_strfreev (tokens); - - return ret; -} - -static gboolean -test_split (const gchar *pattern, - const gchar *string, - ...) -{ - GRegex *regex; - va_list args; - GSList *expected = NULL; - GSList *l_exp; - gchar **tokens; - gint token_count; - gboolean ret = TRUE; - gint i; - - verbose ("splitting \"%s\" against \"%s\" \t", string, pattern); - - /* The va_list is a NULL-terminated sequence of extected strings. */ - va_start (args, string); - while (TRUE) - { - gchar *expected_string = va_arg (args, gchar *); - if (expected_string == NULL) - break; - else - expected = g_slist_prepend (expected, g_strdup (expected_string)); - } - expected = g_slist_reverse (expected); - va_end (args); - - regex = g_regex_new (pattern, 0, 0, NULL); - tokens = g_regex_split (regex, string, 0); - if (tokens) - token_count = g_strv_length (tokens); - else - token_count = 0; - - if (token_count != g_slist_length (expected)) - { - g_print ("failed \t(got %d %s, expected %d)\n", token_count, - token_count == 1 ? "match" : "matches", - g_slist_length (expected)); - ret = FALSE; - goto exit; - } - - l_exp = expected; - for (i = 0; l_exp != NULL; i++, l_exp = g_slist_next (l_exp)) - { - if (!streq(l_exp->data, tokens [i])) - { - g_print ("failed \t(got \"%s\", expected \"%s\")\n", - tokens[i], (gchar *)l_exp->data); - ret = FALSE; - goto exit; - } - } - - verbose ("passed (%d %s)\n", token_count, - token_count == 1 ? "token" : "tokens"); - -exit: - g_regex_unref (regex); - g_slist_foreach (expected, (GFunc)g_free, NULL); - g_slist_free (expected); - g_strfreev (tokens); - - return ret; -} - -#define TEST_SPLIT0(pattern, string, start_position, max_tokens) { \ - total++; \ - if (test_split_full (pattern, string, start_position, max_tokens, NULL)) \ - PASS; \ - else \ - FAIL; \ - if (start_position == 0 && max_tokens <= 0) \ - { \ - total++; \ - if (test_split (pattern, string, NULL)) \ - PASS; \ - else \ - FAIL; \ - } \ -} - -#define TEST_SPLIT1(pattern, string, start_position, max_tokens, e1) { \ - total++; \ - if (test_split_full (pattern, string, start_position, max_tokens, e1, NULL)) \ - PASS; \ - else \ - FAIL; \ - if (start_position == 0 && max_tokens <= 0) \ - { \ - total++; \ - if (test_split (pattern, string, e1, NULL)) \ - PASS; \ - else \ - FAIL; \ - } \ -} - -#define TEST_SPLIT2(pattern, string, start_position, max_tokens, e1, e2) { \ - total++; \ - if (test_split_full (pattern, string, start_position, max_tokens, e1, e2, NULL)) \ - PASS; \ - else \ - FAIL; \ - if (start_position == 0 && max_tokens <= 0) \ - { \ - total++; \ - if (test_split (pattern, string, e1, e2, NULL)) \ - PASS; \ - else \ - FAIL; \ - } \ -} - -#define TEST_SPLIT3(pattern, string, start_position, max_tokens, e1, e2, e3) { \ - total++; \ - if (test_split_full (pattern, string, start_position, max_tokens, e1, e2, e3, NULL)) \ - PASS; \ - else \ - FAIL; \ - if (start_position == 0 && max_tokens <= 0) \ - { \ - total++; \ - if (test_split (pattern, string, e1, e2, e3, NULL)) \ - PASS; \ - else \ - FAIL; \ - } \ -} - -static gboolean -test_check_replacement (const gchar *string_to_expand, - gboolean expected, - gboolean expected_refs) -{ - gboolean result; - gboolean has_refs; - - verbose ("checking replacement string \"%s\" \t", string_to_expand); - - result = g_regex_check_replacement (string_to_expand, &has_refs, NULL); - if (expected != result) - { - g_print ("failed \t(got \"%s\", expected \"%s\")\n", - result ? "TRUE" : "FALSE", - expected ? "TRUE" : "FALSE"); - return FALSE; - } - - if (expected && expected_refs != has_refs) - { - g_print ("failed \t(got has_references \"%s\", expected \"%s\")\n", - has_refs ? "TRUE" : "FALSE", - expected_refs ? "TRUE" : "FALSE"); - return FALSE; - } - - verbose ("passed\n"); - return TRUE; -} - -#define TEST_CHECK_REPLACEMENT(string_to_expand, expected, expected_refs) { \ - total++; \ - if (test_check_replacement (string_to_expand, expected, expected_refs)) \ - PASS; \ - else \ - FAIL; \ -} -static gboolean -test_expand (const gchar *pattern, - const gchar *string, - const gchar *string_to_expand, - gboolean raw, - const gchar *expected) -{ - GRegex *regex = NULL; - GMatchInfo *match_info = NULL; - gchar *res; - - verbose ("expanding the references in \"%s\" (pattern: \"%s\", string: \"%s\") \t", - string_to_expand, - pattern ? pattern : "(null)", - string ? string : "(null)"); - - if (pattern) - { - regex = g_regex_new (pattern, raw ? G_REGEX_RAW : 0, 0, NULL); - g_regex_match (regex, string, 0, &match_info); - } - - res = g_match_info_expand_references (match_info, string_to_expand, NULL); - if (!streq (res, expected)) - { - g_print ("failed \t(got \"%s\", expected \"%s\")\n", res, expected); - g_free (res); - g_match_info_free (match_info); - g_regex_unref (regex); - return FALSE; - } - - g_free (res); - g_match_info_free (match_info); - if (regex) - g_regex_unref (regex); - - verbose ("passed\n"); - return TRUE; -} - -#define TEST_EXPAND(pattern, string, string_to_expand, raw, expected) { \ - total++; \ - if (test_expand (pattern, string, string_to_expand, raw, expected)) \ - PASS; \ - else \ - FAIL; \ -} - -static gboolean -test_replace (const gchar *pattern, - const gchar *string, - gint start_position, - const gchar *replacement, - const gchar *expected) -{ - GRegex *regex; - gchar *res; - - verbose ("replacing \"%s\" in \"%s\" (pattern: \"%s\", start: %d) \t", - replacement, string, pattern, start_position); - - regex = g_regex_new (pattern, 0, 0, NULL); - res = g_regex_replace (regex, string, -1, start_position, replacement, 0, NULL); - if (!streq (res, expected)) - { - g_print ("failed \t(got \"%s\", expected \"%s\")\n", res, expected); - g_free (res); - g_regex_unref (regex); - return FALSE; - } - - g_free (res); - g_regex_unref (regex); - - verbose ("passed\n"); - return TRUE; -} - -#define TEST_REPLACE(pattern, string, start_position, replacement, expected) { \ - total++; \ - if (test_replace (pattern, string, start_position, replacement, expected)) \ - PASS; \ - else \ - FAIL; \ -} - -static gboolean -test_replace_lit (const gchar *pattern, - const gchar *string, - gint start_position, - const gchar *replacement, - const gchar *expected) -{ - GRegex *regex; - gchar *res; - - verbose ("replacing literally \"%s\" in \"%s\" (pattern: \"%s\", start: %d) \t", - replacement, string, pattern, start_position); - - regex = g_regex_new (pattern, 0, 0, NULL); - res = g_regex_replace_literal (regex, string, -1, start_position, - replacement, 0, NULL); - if (!streq (res, expected)) - { - g_print ("failed \t(got \"%s\", expected \"%s\")\n", res, expected); - g_free (res); - g_regex_unref (regex); - return FALSE; - } - - g_free (res); - g_regex_unref (regex); - - verbose ("passed\n"); - return TRUE; -} - -#define TEST_REPLACE_LIT(pattern, string, start_position, replacement, expected) { \ - total++; \ - if (test_replace_lit (pattern, string, start_position, replacement, expected)) \ - PASS; \ - else \ - FAIL; \ -} - -static gboolean -test_get_string_number (const gchar *pattern, - const gchar *name, - gint expected_num) -{ - GRegex *regex; - gint num; - - verbose ("getting the number of \"%s\" (pattern: \"%s\") \t", - name, pattern); - - regex = g_regex_new (pattern, 0, 0, NULL); - num = g_regex_get_string_number (regex, name); - g_regex_unref (regex); - - if (num != expected_num) - { - g_print ("failed \t(got %d, expected %d)\n", num, expected_num); - return FALSE; - } - else - { - verbose ("passed\n"); - return TRUE; - } -} - -#define TEST_GET_STRING_NUMBER(pattern, name, expected_num) { \ - total++; \ - if (test_get_string_number (pattern, name, expected_num)) \ - PASS; \ - else \ - FAIL; \ -} - -static gboolean -test_escape (const gchar *string, - gint length, - const gchar *expected) -{ - gchar *escaped; - - verbose ("escaping \"%s\" (len: %d) \t", string, length); - - escaped = g_regex_escape_string (string, length); - - if (!streq (escaped, expected)) - { - g_print ("failed \t(got \"%s\", expected \"%s\")\n", escaped, expected); - g_free (escaped); - return FALSE; - } - - g_free (escaped); - - verbose ("passed\n"); - return TRUE; -} - -#define TEST_ESCAPE(string, length, expected) { \ - total++; \ - if (test_escape (string, length, expected)) \ - PASS; \ - else \ - FAIL; \ -} - -static gboolean -test_match_all_full (const gchar *pattern, - const gchar *string, - gssize string_len, - gint start_position, - ...) -{ - GRegex *regex; - GMatchInfo *match_info; - va_list args; - GSList *expected = NULL; - GSList *l_exp; - gboolean match_ok; - gboolean ret = TRUE; - gint match_count; - gint i; - - verbose ("matching all in \"%s\" against \"%s\" (start: %d, len: %d) \t", - string, pattern, start_position, string_len); - - /* The va_list is a NULL-terminated sequence of: extected matched string, - * expected start and expected end. */ - va_start (args, start_position); - while (TRUE) - { - Match *match; - const gchar *expected_string = va_arg (args, const gchar *); - if (expected_string == NULL) - break; - match = g_new0 (Match, 1); - match->string = g_strdup (expected_string); - match->start = va_arg (args, gint); - match->end = va_arg (args, gint); - expected = g_slist_prepend (expected, match); - } - expected = g_slist_reverse (expected); - va_end (args); - - regex = g_regex_new (pattern, 0, 0, NULL); - match_ok = g_regex_match_all_full (regex, string, string_len, start_position, - 0, &match_info, NULL); - - if (match_ok && g_slist_length (expected) == 0) - { - g_print ("failed\n"); - ret = FALSE; - goto exit; - } - if (!match_ok && g_slist_length (expected) != 0) - { - g_print ("failed\n"); - ret = FALSE; - goto exit; - } - - match_count = g_match_info_get_match_count (match_info); - if (match_count != g_slist_length (expected)) - { - g_print ("failed \t(got %d %s, expected %d)\n", match_count, - match_count == 1 ? "match" : "matches", - g_slist_length (expected)); - ret = FALSE; - goto exit; - } - - l_exp = expected; - for (i = 0; i < match_count; i++) - { - gint start, end; - gchar *matched_string; - Match *exp = l_exp->data; - - matched_string = g_match_info_fetch (match_info, i); - g_match_info_fetch_pos (match_info, i, &start, &end); - - if (!streq(exp->string, matched_string)) - { - g_print ("failed \t(got \"%s\", expected \"%s\")\n", - matched_string, exp->string); - g_free (matched_string); - ret = FALSE; - goto exit; - } - g_free (matched_string); - - if (exp->start != start || exp->end != end) - { - g_print ("failed \t(got [%d, %d], expected [%d, %d])\n", - start, end, exp->start, exp->end); - ret = FALSE; - goto exit; - } - - l_exp = g_slist_next (l_exp); - } - -exit: - if (ret) - { - verbose ("passed (%d %s)\n", match_count, match_count == 1 ? "match" : "matches"); - } - - g_match_info_free (match_info); - g_regex_unref (regex); - g_slist_foreach (expected, free_match, NULL); - g_slist_free (expected); - - return ret; -} - -static gboolean -test_match_all (const gchar *pattern, - const gchar *string, - ...) -{ - GRegex *regex; - GMatchInfo *match_info; - va_list args; - GSList *expected = NULL; - GSList *l_exp; - gboolean match_ok; - gboolean ret = TRUE; - gint match_count; - gint i; - - verbose ("matching all in \"%s\" against \"%s\" \t", string, pattern); - - /* The va_list is a NULL-terminated sequence of: extected matched string, - * expected start and expected end. */ - va_start (args, string); - while (TRUE) - { - Match *match; - const gchar *expected_string = va_arg (args, const gchar *); - if (expected_string == NULL) - break; - match = g_new0 (Match, 1); - match->string = g_strdup (expected_string); - match->start = va_arg (args, gint); - match->end = va_arg (args, gint); - expected = g_slist_prepend (expected, match); - } - expected = g_slist_reverse (expected); - va_end (args); - - regex = g_regex_new (pattern, 0, 0, NULL); - match_ok = g_regex_match_all (regex, string, 0, &match_info); - - if (match_ok && g_slist_length (expected) == 0) - { - g_print ("failed\n"); - ret = FALSE; - goto exit; - } - if (!match_ok && g_slist_length (expected) != 0) - { - g_print ("failed\n"); - ret = FALSE; - goto exit; - } - - match_count = g_match_info_get_match_count (match_info); - if (match_count != g_slist_length (expected)) - { - g_print ("failed \t(got %d %s, expected %d)\n", match_count, - match_count == 1 ? "match" : "matches", - g_slist_length (expected)); - ret = FALSE; - goto exit; - } - - l_exp = expected; - for (i = 0; i < match_count; i++) - { - gint start, end; - gchar *matched_string; - Match *exp = l_exp->data; - - matched_string = g_match_info_fetch (match_info, i); - g_match_info_fetch_pos (match_info, i, &start, &end); - - if (!streq(exp->string, matched_string)) - { - g_print ("failed \t(got \"%s\", expected \"%s\")\n", - matched_string, exp->string); - g_free (matched_string); - ret = FALSE; - goto exit; - } - g_free (matched_string); - - if (exp->start != start || exp->end != end) - { - g_print ("failed \t(got [%d, %d], expected [%d, %d])\n", - start, end, exp->start, exp->end); - ret = FALSE; - goto exit; - } - - l_exp = g_slist_next (l_exp); - } - -exit: - if (ret) - { - verbose ("passed (%d %s)\n", match_count, match_count == 1 ? "match" : "matches"); - } - - g_match_info_free (match_info); - g_regex_unref (regex); - g_slist_foreach (expected, free_match, NULL); - g_slist_free (expected); - - return ret; -} - -#define TEST_MATCH_ALL0(pattern, string, string_len, start_position) { \ - total++; \ - if (test_match_all_full (pattern, string, string_len, start_position, NULL)) \ - PASS; \ - else \ - FAIL; \ - if (string_len == -1 && start_position == 0) \ - { \ - total++; \ - if (test_match_all (pattern, string, NULL)) \ - PASS; \ - else \ - FAIL; \ - } \ -} - -#define TEST_MATCH_ALL1(pattern, string, string_len, start_position, \ - t1, s1, e1) { \ - total++; \ - if (test_match_all_full (pattern, string, string_len, start_position, \ - t1, s1, e1, NULL)) \ - PASS; \ - else \ - FAIL; \ - if (string_len == -1 && start_position == 0) \ - { \ - total++; \ - if (test_match_all (pattern, string, t1, s1, e1, NULL)) \ - PASS; \ - else \ - FAIL; \ - } \ -} - -#define TEST_MATCH_ALL2(pattern, string, string_len, start_position, \ - t1, s1, e1, t2, s2, e2) { \ - total++; \ - if (test_match_all_full (pattern, string, string_len, start_position, \ - t1, s1, e1, t2, s2, e2, NULL)) \ - PASS; \ - else \ - FAIL; \ - if (string_len == -1 && start_position == 0) \ - { \ - total++; \ - if (test_match_all (pattern, string, t1, s1, e1, t2, s2, e2, NULL)) \ - PASS; \ - else \ - FAIL; \ - } \ -} - -#define TEST_MATCH_ALL3(pattern, string, string_len, start_position, \ - t1, s1, e1, t2, s2, e2, t3, s3, e3) { \ - total++; \ - if (test_match_all_full (pattern, string, string_len, start_position, \ - t1, s1, e1, t2, s2, e2, t3, s3, e3, NULL)) \ - PASS; \ - else \ - FAIL; \ - if (string_len == -1 && start_position == 0) \ - { \ - total++; \ - if (test_match_all (pattern, string, t1, s1, e1, t2, s2, e2, t3, s3, e3, NULL)) \ - PASS; \ - else \ - FAIL; \ - } \ -} - -int -main (int argc, char *argv[]) -{ - gint total = 0; - gint passed = 0; - gint failed = 0; - gint i = 0; - - setlocale (LC_ALL, ""); - - for (i = 1; i < argc; i++) - { - if (streq ("--noisy", argv[i])) - noisy = TRUE; - else if (streq ("--abort", argv[i])) - abort_on_fail = TRUE; - } - - g_setenv ("G_DEBUG", "fatal_warnings", TRUE); - - /* TEST_NEW(pattern, compile_opts, match_opts) */ - TEST_NEW("", 0, 0); - TEST_NEW(".*", 0, 0); - TEST_NEW(".*", G_REGEX_OPTIMIZE, 0); - TEST_NEW(".*", G_REGEX_MULTILINE, 0); - TEST_NEW(".*", G_REGEX_DOTALL, 0); - TEST_NEW(".*", G_REGEX_DOTALL, G_REGEX_MATCH_NOTBOL); - TEST_NEW("(123\\d*)[a-zA-Z]+(?P.*)", 0, 0); - TEST_NEW("(123\\d*)[a-zA-Z]+(?P.*)", G_REGEX_CASELESS, 0); - TEST_NEW("(123\\d*)[a-zA-Z]+(?P.*)", G_REGEX_CASELESS | G_REGEX_OPTIMIZE, 0); - TEST_NEW("(?Px)|(?Py)", G_REGEX_DUPNAMES, 0); - TEST_NEW("(?Px)|(?Py)", G_REGEX_DUPNAMES | G_REGEX_OPTIMIZE, 0); - /* This gives "internal error: code overflow" with pcre 6.0 */ - TEST_NEW("(?i)(?-i)", 0, 0); - - /* TEST_NEW_FAIL(pattern, compile_opts, expected_error) */ - TEST_NEW_FAIL("(", 0, G_REGEX_ERROR_UNMATCHED_PARENTHESIS); - TEST_NEW_FAIL(")", 0, G_REGEX_ERROR_UNMATCHED_PARENTHESIS); - TEST_NEW_FAIL("[", 0, G_REGEX_ERROR_UNTERMINATED_CHARACTER_CLASS); - TEST_NEW_FAIL("*", 0, G_REGEX_ERROR_NOTHING_TO_REPEAT); - TEST_NEW_FAIL("?", 0, G_REGEX_ERROR_NOTHING_TO_REPEAT); - TEST_NEW_FAIL("(?Px)|(?Py)", 0, G_REGEX_ERROR_DUPLICATE_SUBPATTERN_NAME); - - /* TEST_MATCH_SIMPLE(pattern, string, compile_opts, match_opts, expected) */ - TEST_MATCH_SIMPLE("a", "", 0, 0, FALSE); - TEST_MATCH_SIMPLE("a", "a", 0, 0, TRUE); - TEST_MATCH_SIMPLE("a", "ba", 0, 0, TRUE); - TEST_MATCH_SIMPLE("^a", "ba", 0, 0, FALSE); - TEST_MATCH_SIMPLE("a", "ba", G_REGEX_ANCHORED, 0, FALSE); - TEST_MATCH_SIMPLE("a", "ba", 0, G_REGEX_MATCH_ANCHORED, FALSE); - TEST_MATCH_SIMPLE("a", "ab", G_REGEX_ANCHORED, 0, TRUE); - TEST_MATCH_SIMPLE("a", "ab", 0, G_REGEX_MATCH_ANCHORED, TRUE); - TEST_MATCH_SIMPLE("a", "a", G_REGEX_CASELESS, 0, TRUE); - TEST_MATCH_SIMPLE("a", "A", G_REGEX_CASELESS, 0, TRUE); - /* These are needed to test extended properties. */ - TEST_MATCH_SIMPLE(AGRAVE, AGRAVE, G_REGEX_CASELESS, 0, TRUE); - TEST_MATCH_SIMPLE(AGRAVE, AGRAVE_UPPER, G_REGEX_CASELESS, 0, TRUE); - TEST_MATCH_SIMPLE("\\p{L}", "a", 0, 0, TRUE); - TEST_MATCH_SIMPLE("\\p{L}", "1", 0, 0, FALSE); - TEST_MATCH_SIMPLE("\\p{L}", AGRAVE, 0, 0, TRUE); - TEST_MATCH_SIMPLE("\\p{L}", AGRAVE_UPPER, 0, 0, TRUE); - TEST_MATCH_SIMPLE("\\p{L}", SHEEN, 0, 0, TRUE); - TEST_MATCH_SIMPLE("\\p{L}", ETH30, 0, 0, FALSE); - TEST_MATCH_SIMPLE("\\p{Ll}", "a", 0, 0, TRUE); - TEST_MATCH_SIMPLE("\\p{Ll}", AGRAVE, 0, 0, TRUE); - TEST_MATCH_SIMPLE("\\p{Ll}", AGRAVE_UPPER, 0, 0, FALSE); - TEST_MATCH_SIMPLE("\\p{Ll}", ETH30, 0, 0, FALSE); - TEST_MATCH_SIMPLE("\\p{Sc}", AGRAVE, 0, 0, FALSE); - TEST_MATCH_SIMPLE("\\p{Sc}", EURO, 0, 0, TRUE); - TEST_MATCH_SIMPLE("\\p{Sc}", ETH30, 0, 0, FALSE); - TEST_MATCH_SIMPLE("\\p{N}", "a", 0, 0, FALSE); - TEST_MATCH_SIMPLE("\\p{N}", "1", 0, 0, TRUE); - TEST_MATCH_SIMPLE("\\p{N}", AGRAVE, 0, 0, FALSE); - TEST_MATCH_SIMPLE("\\p{N}", AGRAVE_UPPER, 0, 0, FALSE); - TEST_MATCH_SIMPLE("\\p{N}", SHEEN, 0, 0, FALSE); - TEST_MATCH_SIMPLE("\\p{N}", ETH30, 0, 0, TRUE); - TEST_MATCH_SIMPLE("\\p{Nd}", "a", 0, 0, FALSE); - TEST_MATCH_SIMPLE("\\p{Nd}", "1", 0, 0, TRUE); - TEST_MATCH_SIMPLE("\\p{Nd}", AGRAVE, 0, 0, FALSE); - TEST_MATCH_SIMPLE("\\p{Nd}", AGRAVE_UPPER, 0, 0, FALSE); - TEST_MATCH_SIMPLE("\\p{Nd}", SHEEN, 0, 0, FALSE); - TEST_MATCH_SIMPLE("\\p{Nd}", ETH30, 0, 0, FALSE); - TEST_MATCH_SIMPLE("\\p{Common}", SHEEN, 0, 0, FALSE); - TEST_MATCH_SIMPLE("\\p{Common}", "a", 0, 0, FALSE); - TEST_MATCH_SIMPLE("\\p{Common}", AGRAVE, 0, 0, FALSE); - TEST_MATCH_SIMPLE("\\p{Common}", AGRAVE_UPPER, 0, 0, FALSE); - TEST_MATCH_SIMPLE("\\p{Common}", ETH30, 0, 0, FALSE); - TEST_MATCH_SIMPLE("\\p{Common}", "%", 0, 0, TRUE); - TEST_MATCH_SIMPLE("\\p{Common}", "1", 0, 0, TRUE); - TEST_MATCH_SIMPLE("\\p{Arabic}", SHEEN, 0, 0, TRUE); - TEST_MATCH_SIMPLE("\\p{Arabic}", "a", 0, 0, FALSE); - TEST_MATCH_SIMPLE("\\p{Arabic}", AGRAVE, 0, 0, FALSE); - TEST_MATCH_SIMPLE("\\p{Arabic}", AGRAVE_UPPER, 0, 0, FALSE); - TEST_MATCH_SIMPLE("\\p{Arabic}", ETH30, 0, 0, FALSE); - TEST_MATCH_SIMPLE("\\p{Arabic}", "%", 0, 0, FALSE); - TEST_MATCH_SIMPLE("\\p{Arabic}", "1", 0, 0, FALSE); - TEST_MATCH_SIMPLE("\\p{Latin}", SHEEN, 0, 0, FALSE); - TEST_MATCH_SIMPLE("\\p{Latin}", "a", 0, 0, TRUE); - TEST_MATCH_SIMPLE("\\p{Latin}", AGRAVE, 0, 0, TRUE); - TEST_MATCH_SIMPLE("\\p{Latin}", AGRAVE_UPPER, 0, 0, TRUE); - TEST_MATCH_SIMPLE("\\p{Latin}", ETH30, 0, 0, FALSE); - TEST_MATCH_SIMPLE("\\p{Latin}", "%", 0, 0, FALSE); - TEST_MATCH_SIMPLE("\\p{Latin}", "1", 0, 0, FALSE); - TEST_MATCH_SIMPLE("\\p{Ethiopic}", SHEEN, 0, 0, FALSE); - TEST_MATCH_SIMPLE("\\p{Ethiopic}", "a", 0, 0, FALSE); - TEST_MATCH_SIMPLE("\\p{Ethiopic}", AGRAVE, 0, 0, FALSE); - TEST_MATCH_SIMPLE("\\p{Ethiopic}", AGRAVE_UPPER, 0, 0, FALSE); - TEST_MATCH_SIMPLE("\\p{Ethiopic}", ETH30, 0, 0, TRUE); - TEST_MATCH_SIMPLE("\\p{Ethiopic}", "%", 0, 0, FALSE); - TEST_MATCH_SIMPLE("\\p{Ethiopic}", "1", 0, 0, FALSE); - TEST_MATCH_SIMPLE("\\p{L}(?<=\\p{Arabic})", SHEEN, 0, 0, TRUE); - TEST_MATCH_SIMPLE("\\p{L}(?<=\\p{Latin})", SHEEN, 0, 0, FALSE); - /* Invalid patterns. */ - TEST_MATCH_SIMPLE("\\", "a", 0, 0, FALSE); - TEST_MATCH_SIMPLE("[", "", 0, 0, FALSE); - - /* TEST_MATCH(pattern, compile_opts, match_opts, string, - * string_len, start_position, match_opts2, expected) */ - TEST_MATCH("a", 0, 0, "a", -1, 0, 0, TRUE); - TEST_MATCH("a", 0, 0, "A", -1, 0, 0, FALSE); - TEST_MATCH("a", G_REGEX_CASELESS, 0, "A", -1, 0, 0, TRUE); - TEST_MATCH("a", 0, 0, "ab", -1, 1, 0, FALSE); - TEST_MATCH("a", 0, 0, "ba", 1, 0, 0, FALSE); - TEST_MATCH("a", 0, 0, "bab", -1, 0, 0, TRUE); - TEST_MATCH("a", 0, 0, "b", -1, 0, 0, FALSE); - TEST_MATCH("a", 0, G_REGEX_ANCHORED, "a", -1, 0, 0, TRUE); - TEST_MATCH("a", 0, G_REGEX_ANCHORED, "ab", -1, 1, 0, FALSE); - TEST_MATCH("a", 0, G_REGEX_ANCHORED, "ba", 1, 0, 0, FALSE); - TEST_MATCH("a", 0, G_REGEX_ANCHORED, "bab", -1, 0, 0, FALSE); - TEST_MATCH("a", 0, G_REGEX_ANCHORED, "b", -1, 0, 0, FALSE); - TEST_MATCH("a", 0, 0, "a", -1, 0, G_REGEX_ANCHORED, TRUE); - TEST_MATCH("a", 0, 0, "ab", -1, 1, G_REGEX_ANCHORED, FALSE); - TEST_MATCH("a", 0, 0, "ba", 1, 0, G_REGEX_ANCHORED, FALSE); - TEST_MATCH("a", 0, 0, "bab", -1, 0, G_REGEX_ANCHORED, FALSE); - TEST_MATCH("a", 0, 0, "b", -1, 0, G_REGEX_ANCHORED, FALSE); - TEST_MATCH("a|b", 0, 0, "a", -1, 0, 0, TRUE); - TEST_MATCH("\\d", 0, 0, EURO, -1, 0, 0, FALSE); - TEST_MATCH("^.$", 0, 0, EURO, -1, 0, 0, TRUE); - TEST_MATCH("^.{3}$", 0, 0, EURO, -1, 0, 0, FALSE); - TEST_MATCH("^.$", G_REGEX_RAW, 0, EURO, -1, 0, 0, FALSE); - TEST_MATCH("^.{3}$", G_REGEX_RAW, 0, EURO, -1, 0, 0, TRUE); - TEST_MATCH(AGRAVE, G_REGEX_CASELESS, 0, AGRAVE_UPPER, -1, 0, 0, TRUE); - - /* New lines handling. */ - TEST_MATCH("^a\\Rb$", 0, 0, "a\r\nb", -1, 0, 0, TRUE); - TEST_MATCH("^a\\Rb$", 0, 0, "a\nb", -1, 0, 0, TRUE); - TEST_MATCH("^a\\Rb$", 0, 0, "a\rb", -1, 0, 0, TRUE); - TEST_MATCH("^a\\Rb$", 0, 0, "a\n\rb", -1, 0, 0, FALSE); - TEST_MATCH("^a\\R\\Rb$", 0, 0, "a\n\rb", -1, 0, 0, TRUE); - TEST_MATCH("^a\\nb$", 0, 0, "a\r\nb", -1, 0, 0, FALSE); - TEST_MATCH("^a\\r\\nb$", 0, 0, "a\r\nb", -1, 0, 0, TRUE); - - TEST_MATCH("^b$", 0, 0, "a\nb\nc", -1, 0, 0, FALSE); - TEST_MATCH("^b$", G_REGEX_MULTILINE, 0, "a\nb\nc", -1, 0, 0, TRUE); - TEST_MATCH("^b$", G_REGEX_MULTILINE, 0, "a\r\nb\r\nc", -1, 0, 0, TRUE); - TEST_MATCH("^b$", G_REGEX_MULTILINE, 0, "a\rb\rc", -1, 0, 0, TRUE); - TEST_MATCH("^b$", G_REGEX_MULTILINE | G_REGEX_NEWLINE_CR, 0, "a\nb\nc", -1, 0, 0, FALSE); - TEST_MATCH("^b$", G_REGEX_MULTILINE | G_REGEX_NEWLINE_LF, 0, "a\nb\nc", -1, 0, 0, TRUE); - TEST_MATCH("^b$", G_REGEX_MULTILINE | G_REGEX_NEWLINE_CRLF, 0, "a\nb\nc", -1, 0, 0, FALSE); - TEST_MATCH("^b$", G_REGEX_MULTILINE | G_REGEX_NEWLINE_CR, 0, "a\r\nb\r\nc", -1, 0, 0, FALSE); - TEST_MATCH("^b$", G_REGEX_MULTILINE | G_REGEX_NEWLINE_LF, 0, "a\r\nb\r\nc", -1, 0, 0, FALSE); - TEST_MATCH("^b$", G_REGEX_MULTILINE | G_REGEX_NEWLINE_CRLF, 0, "a\r\nb\r\nc", -1, 0, 0, TRUE); - TEST_MATCH("^b$", G_REGEX_MULTILINE | G_REGEX_NEWLINE_CR, 0, "a\rb\rc", -1, 0, 0, TRUE); - TEST_MATCH("^b$", G_REGEX_MULTILINE | G_REGEX_NEWLINE_LF, 0, "a\rb\rc", -1, 0, 0, FALSE); - TEST_MATCH("^b$", G_REGEX_MULTILINE | G_REGEX_NEWLINE_CRLF, 0, "a\rb\rc", -1, 0, 0, FALSE); - TEST_MATCH("^b$", G_REGEX_MULTILINE, G_REGEX_MATCH_NEWLINE_CR, "a\nb\nc", -1, 0, 0, FALSE); - TEST_MATCH("^b$", G_REGEX_MULTILINE, G_REGEX_MATCH_NEWLINE_LF, "a\nb\nc", -1, 0, 0, TRUE); - TEST_MATCH("^b$", G_REGEX_MULTILINE, G_REGEX_MATCH_NEWLINE_CRLF, "a\nb\nc", -1, 0, 0, FALSE); - TEST_MATCH("^b$", G_REGEX_MULTILINE, G_REGEX_MATCH_NEWLINE_CR, "a\r\nb\r\nc", -1, 0, 0, FALSE); - TEST_MATCH("^b$", G_REGEX_MULTILINE, G_REGEX_MATCH_NEWLINE_LF, "a\r\nb\r\nc", -1, 0, 0, FALSE); - TEST_MATCH("^b$", G_REGEX_MULTILINE, G_REGEX_MATCH_NEWLINE_CRLF, "a\r\nb\r\nc", -1, 0, 0, TRUE); - TEST_MATCH("^b$", G_REGEX_MULTILINE, G_REGEX_MATCH_NEWLINE_CR, "a\rb\rc", -1, 0, 0, TRUE); - TEST_MATCH("^b$", G_REGEX_MULTILINE, G_REGEX_MATCH_NEWLINE_LF, "a\rb\rc", -1, 0, 0, FALSE); - TEST_MATCH("^b$", G_REGEX_MULTILINE, G_REGEX_MATCH_NEWLINE_CRLF, "a\rb\rc", -1, 0, 0, FALSE); - - TEST_MATCH("^b$", G_REGEX_MULTILINE | G_REGEX_NEWLINE_CR, G_REGEX_MATCH_NEWLINE_ANY, "a\nb\nc", -1, 0, 0, TRUE); - TEST_MATCH("^b$", G_REGEX_MULTILINE | G_REGEX_NEWLINE_CR, G_REGEX_MATCH_NEWLINE_ANY, "a\rb\rc", -1, 0, 0, TRUE); - TEST_MATCH("^b$", G_REGEX_MULTILINE | G_REGEX_NEWLINE_CR, G_REGEX_MATCH_NEWLINE_ANY, "a\r\nb\r\nc", -1, 0, 0, TRUE); - TEST_MATCH("^b$", G_REGEX_MULTILINE | G_REGEX_NEWLINE_CR, G_REGEX_MATCH_NEWLINE_LF, "a\nb\nc", -1, 0, 0, TRUE); - TEST_MATCH("^b$", G_REGEX_MULTILINE | G_REGEX_NEWLINE_CR, G_REGEX_MATCH_NEWLINE_LF, "a\rb\rc", -1, 0, 0, FALSE); - TEST_MATCH("^b$", G_REGEX_MULTILINE | G_REGEX_NEWLINE_CR, G_REGEX_MATCH_NEWLINE_CRLF, "a\r\nb\r\nc", -1, 0, 0, TRUE); - TEST_MATCH("^b$", G_REGEX_MULTILINE | G_REGEX_NEWLINE_CR, G_REGEX_MATCH_NEWLINE_CRLF, "a\rb\rc", -1, 0, 0, FALSE); - - TEST_MATCH("a#\nb", G_REGEX_EXTENDED, 0, "a", -1, 0, 0, FALSE); - TEST_MATCH("a#\r\nb", G_REGEX_EXTENDED, 0, "a", -1, 0, 0, FALSE); - TEST_MATCH("a#\rb", G_REGEX_EXTENDED, 0, "a", -1, 0, 0, FALSE); - TEST_MATCH("a#\nb", G_REGEX_EXTENDED, G_REGEX_MATCH_NEWLINE_CR, "a", -1, 0, 0, FALSE); - TEST_MATCH("a#\nb", G_REGEX_EXTENDED | G_REGEX_NEWLINE_CR, 0, "a", -1, 0, 0, TRUE); - - /* TEST_MATCH_NEXT#(pattern, string, string_len, start_position, ...) */ - TEST_MATCH_NEXT0("a", "x", -1, 0); - TEST_MATCH_NEXT0("a", "ax", -1, 1); - TEST_MATCH_NEXT0("a", "xa", 1, 0); - TEST_MATCH_NEXT0("a", "axa", 1, 2); - TEST_MATCH_NEXT1("a", "a", -1, 0, "a", 0, 1); - TEST_MATCH_NEXT1("a", "xax", -1, 0, "a", 1, 2); - TEST_MATCH_NEXT1(EURO, ENG EURO, -1, 0, EURO, 2, 5); - TEST_MATCH_NEXT1("a*", "", -1, 0, "", 0, 0); - TEST_MATCH_NEXT2("a*", "aa", -1, 0, "aa", 0, 2, "", 2, 2); - TEST_MATCH_NEXT2(EURO "*", EURO EURO, -1, 0, EURO EURO, 0, 6, "", 6, 6); - TEST_MATCH_NEXT2("a", "axa", -1, 0, "a", 0, 1, "a", 2, 3); - TEST_MATCH_NEXT2("a+", "aaxa", -1, 0, "aa", 0, 2, "a", 3, 4); - TEST_MATCH_NEXT2("a", "aa", -1, 0, "a", 0, 1, "a", 1, 2); - TEST_MATCH_NEXT2("a", "ababa", -1, 2, "a", 2, 3, "a", 4, 5); - TEST_MATCH_NEXT2(EURO "+", EURO "-" EURO, -1, 0, EURO, 0, 3, EURO, 4, 7); - TEST_MATCH_NEXT3("", "ab", -1, 0, "", 0, 0, "", 1, 1, "", 2, 2); - TEST_MATCH_NEXT3("", AGRAVE "b", -1, 0, "", 0, 0, "", 2, 2, "", 3, 3); - TEST_MATCH_NEXT3("a", "aaxa", -1, 0, "a", 0, 1, "a", 1, 2, "a", 3, 4); - TEST_MATCH_NEXT3("a", "aa" OGRAVE "a", -1, 0, "a", 0, 1, "a", 1, 2, "a", 4, 5); - TEST_MATCH_NEXT3("a*", "aax", -1, 0, "aa", 0, 2, "", 2, 2, "", 3, 3); - TEST_MATCH_NEXT3("(?=[A-Z0-9])", "RegExTest", -1, 0, "", 0, 0, "", 3, 3, "", 5, 5); - TEST_MATCH_NEXT4("a*", "aaxa", -1, 0, "aa", 0, 2, "", 2, 2, "a", 3, 4, "", 4, 4); - - /* TEST_MATCH_COUNT(pattern, string, start_position, match_opts, expected_count) */ - TEST_MATCH_COUNT("a", "", 0, 0, 0); - TEST_MATCH_COUNT("a", "a", 0, 0, 1); - TEST_MATCH_COUNT("a", "a", 1, 0, 0); - TEST_MATCH_COUNT("(.)", "a", 0, 0, 2); - TEST_MATCH_COUNT("(.)", EURO, 0, 0, 2); - TEST_MATCH_COUNT("(?:.)", "a", 0, 0, 1); - TEST_MATCH_COUNT("(?P.)", "a", 0, 0, 2); - TEST_MATCH_COUNT("a$", "a", 0, G_REGEX_MATCH_NOTEOL, 0); - TEST_MATCH_COUNT("(a)?(b)", "b", 0, 0, 3); - TEST_MATCH_COUNT("(a)?(b)", "ab", 0, 0, 3); - - /* TEST_PARTIAL(pattern, string, expected) */ - TEST_PARTIAL("^ab", "a", TRUE); - TEST_PARTIAL("^ab", "xa", FALSE); - TEST_PARTIAL("ab", "xa", TRUE); - TEST_PARTIAL("ab", "ab", FALSE); /* normal match. */ - TEST_PARTIAL("a+b", "aa", FALSE); /* PCRE_ERROR_BAD_PARTIAL */ - TEST_PARTIAL("(a)+b", "aa", TRUE); - TEST_PARTIAL("a?b", "a", TRUE); - - /* TEST_SUB_PATTERN(pattern, string, start_position, sub_n, expected_sub, - * expected_start, expected_end) */ - TEST_SUB_PATTERN("a", "a", 0, 0, "a", 0, 1); - TEST_SUB_PATTERN("a(.)", "ab", 0, 1, "b", 1, 2); - TEST_SUB_PATTERN("a(.)", "a" EURO, 0, 1, EURO, 1, 4); - TEST_SUB_PATTERN("(?:.*)(a)(.)", "xxa" ENG, 0, 2, ENG, 3, 5); - TEST_SUB_PATTERN("(" HSTROKE ")", "a" HSTROKE ENG, 0, 1, HSTROKE, 1, 3); - TEST_SUB_PATTERN("a", "a", 0, 1, NULL, UNTOUCHED, UNTOUCHED); - TEST_SUB_PATTERN("a", "a", 0, 1, NULL, UNTOUCHED, UNTOUCHED); - TEST_SUB_PATTERN("(a)?(b)", "b", 0, 0, "b", 0, 1); - TEST_SUB_PATTERN("(a)?(b)", "b", 0, 1, "", -1, -1); - TEST_SUB_PATTERN("(a)?(b)", "b", 0, 2, "b", 0, 1); - - /* TEST_NAMED_SUB_PATTERN(pattern, string, start_position, sub_name, - * expected_sub, expected_start, expected_end) */ - TEST_NAMED_SUB_PATTERN("a(?P.)(?P.)?", "ab", 0, "A", "b", 1, 2); - TEST_NAMED_SUB_PATTERN("a(?P.)(?P.)?", "aab", 1, "A", "b", 2, 3); - TEST_NAMED_SUB_PATTERN("a(?P.)(?P.)?", EURO "ab", 0, "A", "b", 4, 5); - TEST_NAMED_SUB_PATTERN("a(?P.)(?P.)?", EURO "ab", 0, "B", NULL, UNTOUCHED, UNTOUCHED); - TEST_NAMED_SUB_PATTERN("a(?P.)(?P.)?", EURO "ab", 0, "C", NULL, UNTOUCHED, UNTOUCHED); - TEST_NAMED_SUB_PATTERN("a(?P.)(?P.)?", "a" EGRAVE "x", 0, "A", EGRAVE, 1, 3); - TEST_NAMED_SUB_PATTERN("a(?P.)(?P.)?", "a" EGRAVE "x", 0, "B", "x", 3, 4); - TEST_NAMED_SUB_PATTERN("(?Pa)?(?Pb)", "b", 0, "A", "", -1, -1); - TEST_NAMED_SUB_PATTERN("(?Pa)?(?Pb)", "b", 0, "B", "b", 0, 1); - - /* TEST_NAMED_SUB_PATTERN_DUPNAMES(pattern, string, start_position, sub_name, - * expected_sub, expected_start, expected_end) */ - TEST_NAMED_SUB_PATTERN_DUPNAMES("(?Pa)|(?Pb)", "ab", 0, "N", "a", 0, 1); - TEST_NAMED_SUB_PATTERN_DUPNAMES("(?Paa)|(?Pa)", "aa", 0, "N", "aa", 0, 2); - TEST_NAMED_SUB_PATTERN_DUPNAMES("(?Paa)(?Pa)", "aaa", 0, "N", "aa", 0, 2); - TEST_NAMED_SUB_PATTERN_DUPNAMES("(?Px)|(?Pa)", "a", 0, "N", "a", 0, 1); - TEST_NAMED_SUB_PATTERN_DUPNAMES("(?Px)y|(?Pa)b", "ab", 0, "N", "a", 0, 1); - - /* DUPNAMES option inside the pattern */ - TEST_NAMED_SUB_PATTERN("(?J)(?Pa)|(?Pb)", "ab", 0, "N", "a", 0, 1); - TEST_NAMED_SUB_PATTERN("(?J)(?Paa)|(?Pa)", "aa", 0, "N", "aa", 0, 2); - TEST_NAMED_SUB_PATTERN("(?J)(?Paa)(?Pa)", "aaa", 0, "N", "aa", 0, 2); - TEST_NAMED_SUB_PATTERN("(?J)(?Px)|(?Pa)", "a", 0, "N", "a", 0, 1); - TEST_NAMED_SUB_PATTERN("(?J)(?Px)y|(?Pa)b", "ab", 0, "N", "a", 0, 1); - - /* TEST_FETCH_ALL#(pattern, string, ...) */ - TEST_FETCH_ALL0("a", ""); - TEST_FETCH_ALL0("a", "b"); - TEST_FETCH_ALL1("a", "a", "a"); - TEST_FETCH_ALL1("a+", "aa", "aa"); - TEST_FETCH_ALL1("(?:a)", "a", "a"); - TEST_FETCH_ALL2("(a)", "a", "a", "a"); - TEST_FETCH_ALL2("a(.)", "ab", "ab", "b"); - TEST_FETCH_ALL2("a(.)", "a" HSTROKE, "a" HSTROKE, HSTROKE); - TEST_FETCH_ALL3("(?:.*)(a)(.)", "xyazk", "xyaz", "a", "z"); - TEST_FETCH_ALL3("(?P.)(a)", "xa", "xa", "x", "a"); - TEST_FETCH_ALL3("(?P.)(a)", ENG "a", ENG "a", ENG, "a"); - TEST_FETCH_ALL3("(a)?(b)", "b", "b", "", "b"); - TEST_FETCH_ALL3("(a)?(b)", "ab", "ab", "a", "b"); - - /* TEST_SPLIT_SIMPLE#(pattern, string, ...) */ - TEST_SPLIT_SIMPLE0("", ""); - TEST_SPLIT_SIMPLE0("a", ""); - TEST_SPLIT_SIMPLE1(",", "a", "a"); - TEST_SPLIT_SIMPLE1("(,)\\s*", "a", "a"); - TEST_SPLIT_SIMPLE2(",", "a,b", "a", "b"); - TEST_SPLIT_SIMPLE3(",", "a,b,c", "a", "b", "c"); - TEST_SPLIT_SIMPLE3(",\\s*", "a,b,c", "a", "b", "c"); - TEST_SPLIT_SIMPLE3(",\\s*", "a, b, c", "a", "b", "c"); - TEST_SPLIT_SIMPLE3("(,)\\s*", "a,b", "a", ",", "b"); - TEST_SPLIT_SIMPLE3("(,)\\s*", "a, b", "a", ",", "b"); - /* Not matched sub-strings. */ - TEST_SPLIT_SIMPLE2("a|(b)", "xay", "x", "y"); - TEST_SPLIT_SIMPLE3("a|(b)", "xby", "x", "b", "y"); - /* Empty matches. */ - TEST_SPLIT_SIMPLE3("", "abc", "a", "b", "c"); - TEST_SPLIT_SIMPLE3(" *", "ab c", "a", "b", "c"); - /* Invalid patterns. */ - TEST_SPLIT_SIMPLE0("\\", ""); - TEST_SPLIT_SIMPLE0("[", ""); - - /* TEST_SPLIT#(pattern, string, start_position, max_tokens, ...) */ - TEST_SPLIT0("", "", 0, 0); - TEST_SPLIT0("a", "", 0, 0); - TEST_SPLIT0("a", "", 0, 1); - TEST_SPLIT0("a", "", 0, 2); - TEST_SPLIT0("a", "a", 1, 0); - TEST_SPLIT1(",", "a", 0, 0, "a"); - TEST_SPLIT1(",", "a,b", 0, 1, "a,b"); - TEST_SPLIT1("(,)\\s*", "a", 0, 0, "a"); - TEST_SPLIT1(",", "a,b", 2, 0, "b"); - TEST_SPLIT2(",", "a,b", 0, 0, "a", "b"); - TEST_SPLIT2(",", "a,b,c", 0, 2, "a", "b,c"); - TEST_SPLIT2(",", "a,b", 1, 0, "", "b"); - TEST_SPLIT2(",", "a,", 0, 0, "a", ""); - TEST_SPLIT3(",", "a,b,c", 0, 0, "a", "b", "c"); - TEST_SPLIT3(",\\s*", "a,b,c", 0, 0, "a", "b", "c"); - TEST_SPLIT3(",\\s*", "a, b, c", 0, 0, "a", "b", "c"); - TEST_SPLIT3("(,)\\s*", "a,b", 0, 0, "a", ",", "b"); - TEST_SPLIT3("(,)\\s*", "a, b", 0, 0, "a", ",", "b"); - /* Not matched sub-strings. */ - TEST_SPLIT2("a|(b)", "xay", 0, 0, "x", "y"); - TEST_SPLIT3("a|(b)", "xby", 0, -1, "x", "b", "y"); - /* Empty matches. */ - TEST_SPLIT2(" *", "ab c", 1, 0, "b", "c"); - TEST_SPLIT3("", "abc", 0, 0, "a", "b", "c"); - TEST_SPLIT3(" *", "ab c", 0, 0, "a", "b", "c"); - TEST_SPLIT1(" *", "ab c", 0, 1, "ab c"); - TEST_SPLIT2(" *", "ab c", 0, 2, "a", "b c"); - TEST_SPLIT3(" *", "ab c", 0, 3, "a", "b", "c"); - TEST_SPLIT3(" *", "ab c", 0, 4, "a", "b", "c"); - - /* TEST_CHECK_REPLACEMENT(string_to_expand, expected, expected_refs) */ - TEST_CHECK_REPLACEMENT("", TRUE, FALSE); - TEST_CHECK_REPLACEMENT("a", TRUE, FALSE); - TEST_CHECK_REPLACEMENT("\\t\\n\\v\\r\\f\\a\\b\\\\\\x{61}", TRUE, FALSE); - TEST_CHECK_REPLACEMENT("\\0", TRUE, TRUE); - TEST_CHECK_REPLACEMENT("\\n\\2", TRUE, TRUE); - TEST_CHECK_REPLACEMENT("\\g", TRUE, TRUE); - /* Invalid strings */ - TEST_CHECK_REPLACEMENT("\\Q", FALSE, FALSE); - TEST_CHECK_REPLACEMENT("x\\Ay", FALSE, FALSE); - - /* TEST_EXPAND(pattern, string, string_to_expand, raw, expected) */ - TEST_EXPAND("a", "a", "", FALSE, ""); - TEST_EXPAND("a", "a", "\\0", FALSE, "a"); - TEST_EXPAND("a", "a", "\\1", FALSE, ""); - TEST_EXPAND("(a)", "ab", "\\1", FALSE, "a"); - TEST_EXPAND("(a)", "a", "\\1", FALSE, "a"); - TEST_EXPAND("(a)", "a", "\\g<1>", FALSE, "a"); - TEST_EXPAND("a", "a", "\\0130", FALSE, "X"); - TEST_EXPAND("a", "a", "\\\\\\0", FALSE, "\\a"); - TEST_EXPAND("a(?P.)c", "xabcy", "X\\gX", FALSE, "XbX"); - TEST_EXPAND("(.)(?P<1>.)", "ab", "\\1", FALSE, "a"); - TEST_EXPAND("(.)(?P<1>.)", "ab", "\\g<1>", FALSE, "a"); - TEST_EXPAND(".", EURO, "\\0", FALSE, EURO); - TEST_EXPAND("(.)", EURO, "\\1", FALSE, EURO); - TEST_EXPAND("(?P.)", EURO, "\\g", FALSE, EURO); - TEST_EXPAND(".", "a", EURO, FALSE, EURO); - TEST_EXPAND(".", "a", EURO "\\0", FALSE, EURO "a"); - TEST_EXPAND(".", "", "\\Lab\\Ec", FALSE, "abc"); - TEST_EXPAND(".", "", "\\LaB\\EC", FALSE, "abC"); - TEST_EXPAND(".", "", "\\Uab\\Ec", FALSE, "ABc"); - TEST_EXPAND(".", "", "a\\ubc", FALSE, "aBc"); - TEST_EXPAND(".", "", "a\\lbc", FALSE, "abc"); - TEST_EXPAND(".", "", "A\\uBC", FALSE, "ABC"); - TEST_EXPAND(".", "", "A\\lBC", FALSE, "AbC"); - TEST_EXPAND(".", "", "A\\l\\\\BC", FALSE, "A\\BC"); - TEST_EXPAND(".", "", "\\L" AGRAVE "\\E", FALSE, AGRAVE); - TEST_EXPAND(".", "", "\\U" AGRAVE "\\E", FALSE, AGRAVE_UPPER); - TEST_EXPAND(".", "", "\\u" AGRAVE "a", FALSE, AGRAVE_UPPER "a"); - TEST_EXPAND(".", "ab", "x\\U\\0y\\Ez", FALSE, "xAYz"); - TEST_EXPAND(".(.)", "AB", "x\\L\\1y\\Ez", FALSE, "xbyz"); - TEST_EXPAND(".", "ab", "x\\u\\0y\\Ez", FALSE, "xAyz"); - TEST_EXPAND(".(.)", "AB", "x\\l\\1y\\Ez", FALSE, "xbyz"); - TEST_EXPAND(".(.)", "a" AGRAVE_UPPER, "x\\l\\1y", FALSE, "x" AGRAVE "y"); - TEST_EXPAND("a", "bab", "\\x{61}", FALSE, "a"); - TEST_EXPAND("a", "bab", "\\x61", FALSE, "a"); - TEST_EXPAND("a", "bab", "\\x5a", FALSE, "Z"); - TEST_EXPAND("a", "bab", "\\0\\x5A", FALSE, "aZ"); - TEST_EXPAND("a", "bab", "\\1\\x{5A}", FALSE, "Z"); - TEST_EXPAND("a", "bab", "\\x{00E0}", FALSE, AGRAVE); - TEST_EXPAND("", "bab", "\\x{0634}", FALSE, SHEEN); - TEST_EXPAND("", "bab", "\\x{634}", FALSE, SHEEN); - TEST_EXPAND("", "", "\\t", FALSE, "\t"); - TEST_EXPAND("", "", "\\v", FALSE, "\v"); - TEST_EXPAND("", "", "\\r", FALSE, "\r"); - TEST_EXPAND("", "", "\\n", FALSE, "\n"); - TEST_EXPAND("", "", "\\f", FALSE, "\f"); - TEST_EXPAND("", "", "\\a", FALSE, "\a"); - TEST_EXPAND("", "", "\\b", FALSE, "\b"); - TEST_EXPAND("a(.)", "abc", "\\0\\b\\1", FALSE, "ab\bb"); - TEST_EXPAND("a(.)", "abc", "\\0141", FALSE, "a"); - TEST_EXPAND("a(.)", "abc", "\\078", FALSE, "\a8"); - TEST_EXPAND("a(.)", "abc", "\\077", FALSE, "?"); - TEST_EXPAND("a(.)", "abc", "\\0778", FALSE, "?8"); - TEST_EXPAND("a(.)", "a" AGRAVE "b", "\\1", FALSE, AGRAVE); - TEST_EXPAND("a(.)", "a" AGRAVE "b", "\\1", TRUE, "\xc3"); - TEST_EXPAND("a(.)", "a" AGRAVE "b", "\\0", TRUE, "a\xc3"); - /* Invalid strings. */ - TEST_EXPAND("", "", "\\Q", FALSE, NULL); - TEST_EXPAND("", "", "x\\Ay", FALSE, NULL); - TEST_EXPAND("", "", "\\g<", FALSE, NULL); - TEST_EXPAND("", "", "\\g<>", FALSE, NULL); - TEST_EXPAND("", "", "\\g<1a>", FALSE, NULL); - TEST_EXPAND("", "", "\\g", FALSE, NULL); - TEST_EXPAND("", "", "\\", FALSE, NULL); - TEST_EXPAND("a", "a", "\\x{61", FALSE, NULL); - TEST_EXPAND("a", "a", "\\x6X", FALSE, NULL); - /* Pattern-less. */ - TEST_EXPAND(NULL, NULL, "", FALSE, ""); - TEST_EXPAND(NULL, NULL, "\\n", FALSE, "\n"); - /* Invalid strings */ - TEST_EXPAND(NULL, NULL, "\\Q", FALSE, NULL); - TEST_EXPAND(NULL, NULL, "x\\Ay", FALSE, NULL); - - /* TEST_REPLACE(pattern, string, start_position, replacement, expected) */ - TEST_REPLACE("a", "ababa", 0, "A", "AbAbA"); - TEST_REPLACE("a", "ababa", 1, "A", "abAbA"); - TEST_REPLACE("a", "ababa", 2, "A", "abAbA"); - TEST_REPLACE("a", "ababa", 3, "A", "ababA"); - TEST_REPLACE("a", "ababa", 4, "A", "ababA"); - TEST_REPLACE("a", "ababa", 5, "A", "ababa"); - TEST_REPLACE("a", "ababa", 6, "A", "ababa"); - TEST_REPLACE("a", "abababa", 2, "A", "abAbAbA"); - TEST_REPLACE("a", "abab", 0, "A", "AbAb"); - TEST_REPLACE("a", "baba", 0, "A", "bAbA"); - TEST_REPLACE("a", "bab", 0, "A", "bAb"); - TEST_REPLACE("$^", "abc", 0, "X", "abc"); - TEST_REPLACE("(.)a", "ciao", 0, "a\\1", "caio"); - TEST_REPLACE("a.", "abc", 0, "\\0\\0", "ababc"); - TEST_REPLACE("a", "asd", 0, "\\0101", "Asd"); - TEST_REPLACE("(a).\\1", "aba cda", 0, "\\1\\n", "a\n cda"); - TEST_REPLACE("a" AGRAVE "a", "a" AGRAVE "a", 0, "x", "x"); - TEST_REPLACE("a" AGRAVE "a", "a" AGRAVE "a", 0, OGRAVE, OGRAVE); - TEST_REPLACE("[^-]", "-" EURO "-x-" HSTROKE, 0, "a", "-a-a-a"); - TEST_REPLACE("[^-]", "-" EURO "-" HSTROKE, 0, "a\\g<0>a", "-a" EURO "a-a" HSTROKE "a"); - TEST_REPLACE("-", "-" EURO "-" HSTROKE, 0, "", EURO HSTROKE); - TEST_REPLACE(".*", "hello", 0, "\\U\\0\\E", "HELLO"); - TEST_REPLACE(".*", "hello", 0, "\\u\\0", "Hello"); - TEST_REPLACE("\\S+", "hello world", 0, "\\U-\\0-", "-HELLO- -WORLD-"); - TEST_REPLACE(".", "a", 0, "\\A", NULL); - TEST_REPLACE(".", "a", 0, "\\g", NULL); - - /* TEST_REPLACE_LIT(pattern, string, start_position, replacement, expected) */ - TEST_REPLACE_LIT("a", "ababa", 0, "A", "AbAbA"); - TEST_REPLACE_LIT("a", "ababa", 1, "A", "abAbA"); - TEST_REPLACE_LIT("a", "ababa", 2, "A", "abAbA"); - TEST_REPLACE_LIT("a", "ababa", 3, "A", "ababA"); - TEST_REPLACE_LIT("a", "ababa", 4, "A", "ababA"); - TEST_REPLACE_LIT("a", "ababa", 5, "A", "ababa"); - TEST_REPLACE_LIT("a", "ababa", 6, "A", "ababa"); - TEST_REPLACE_LIT("a", "abababa", 2, "A", "abAbAbA"); - TEST_REPLACE_LIT("a", "abcadaa", 0, "A", "AbcAdAA"); - TEST_REPLACE_LIT("$^", "abc", 0, "X", "abc"); - TEST_REPLACE_LIT("(.)a", "ciao", 0, "a\\1", "ca\\1o"); - TEST_REPLACE_LIT("a.", "abc", 0, "\\0\\0\\n", "\\0\\0\\nc"); - TEST_REPLACE_LIT("a" AGRAVE "a", "a" AGRAVE "a", 0, "x", "x"); - TEST_REPLACE_LIT("a" AGRAVE "a", "a" AGRAVE "a", 0, OGRAVE, OGRAVE); - TEST_REPLACE_LIT(AGRAVE, "-" AGRAVE "-" HSTROKE, 0, "a" ENG "a", "-a" ENG "a-" HSTROKE); - TEST_REPLACE_LIT("[^-]", "-" EURO "-" AGRAVE "-" HSTROKE, 0, "a", "-a-a-a"); - TEST_REPLACE_LIT("[^-]", "-" EURO "-" AGRAVE, 0, "a\\g<0>a", "-a\\g<0>a-a\\g<0>a"); - TEST_REPLACE_LIT("-", "-" EURO "-" AGRAVE "-" HSTROKE, 0, "", EURO AGRAVE HSTROKE); - TEST_REPLACE_LIT("(?=[A-Z0-9])", "RegExTest", 0, "_", "_Reg_Ex_Test"); - TEST_REPLACE_LIT("(?=[A-Z0-9])", "RegExTest", 1, "_", "Reg_Ex_Test"); - - /* TEST_GET_STRING_NUMBER(pattern, name, expected_num) */ - TEST_GET_STRING_NUMBER("", "A", -1); - TEST_GET_STRING_NUMBER("(?P.)", "A", 1); - TEST_GET_STRING_NUMBER("(?P.)", "B", -1); - TEST_GET_STRING_NUMBER("(?P.)(?Pa)", "A", 1); - TEST_GET_STRING_NUMBER("(?P.)(?Pa)", "B", 2); - TEST_GET_STRING_NUMBER("(?P.)(?Pa)", "C", -1); - TEST_GET_STRING_NUMBER("(?P.)(.)(?Pa)", "A", 1); - TEST_GET_STRING_NUMBER("(?P.)(.)(?Pa)", "B", 3); - TEST_GET_STRING_NUMBER("(?P.)(.)(?Pa)", "C", -1); - TEST_GET_STRING_NUMBER("(?:a)(?P.)", "A", 1); - TEST_GET_STRING_NUMBER("(?:a)(?P.)", "B", -1); - - /* TEST_ESCAPE(string, length, expected) */ - TEST_ESCAPE("hello world", -1, "hello world"); - TEST_ESCAPE("hello world", 5, "hello"); - TEST_ESCAPE("hello.world", -1, "hello\\.world"); - TEST_ESCAPE("a(b\\b.$", -1, "a\\(b\\\\b\\.\\$"); - TEST_ESCAPE("hello\0world", -1, "hello"); - TEST_ESCAPE("hello\0world", 11, "hello\\0world"); - TEST_ESCAPE(EURO "*" ENG, -1, EURO "\\*" ENG); - TEST_ESCAPE("a$", -1, "a\\$"); - TEST_ESCAPE("$a", -1, "\\$a"); - TEST_ESCAPE("a$a", -1, "a\\$a"); - TEST_ESCAPE("$a$", -1, "\\$a\\$"); - TEST_ESCAPE("$a$", 0, ""); - TEST_ESCAPE("$a$", 1, "\\$"); - TEST_ESCAPE("$a$", 2, "\\$a"); - TEST_ESCAPE("$a$", 3, "\\$a\\$"); - TEST_ESCAPE("$a$", 4, "\\$a\\$\\0"); - TEST_ESCAPE("|()[]{}^$*+?.", -1, "\\|\\(\\)\\[\\]\\{\\}\\^\\$\\*\\+\\?\\."); - TEST_ESCAPE("a|a(a)a[a]a{a}a^a$a*a+a?a.a", -1, - "a\\|a\\(a\\)a\\[a\\]a\\{a\\}a\\^a\\$a\\*a\\+a\\?a\\.a"); - - /* TEST_MATCH_ALL#(pattern, string, string_len, start_position, ...) */ - TEST_MATCH_ALL0("<.*>", "", -1, 0); - TEST_MATCH_ALL0("a+", "", -1, 0); - TEST_MATCH_ALL0("a+", "a", 0, 0); - TEST_MATCH_ALL0("a+", "a", -1, 1); - TEST_MATCH_ALL1("<.*>", "", -1, 0, "", 0, 3); - TEST_MATCH_ALL1("a+", "a", -1, 0, "a", 0, 1); - TEST_MATCH_ALL1("a+", "aa", 1, 0, "a", 0, 1); - TEST_MATCH_ALL1("a+", "aa", -1, 1, "a", 1, 2); - TEST_MATCH_ALL1("a+", "aa", 2, 1, "a", 1, 2); - TEST_MATCH_ALL1(".+", ENG, -1, 0, ENG, 0, 2); - TEST_MATCH_ALL2("<.*>", "", -1, 0, "", 0, 6, "", 0, 3); - TEST_MATCH_ALL2("a+", "aa", -1, 0, "aa", 0, 2, "a", 0, 1); - TEST_MATCH_ALL2(".+", ENG EURO, -1, 0, ENG EURO, 0, 5, ENG, 0, 2); - TEST_MATCH_ALL3("<.*>", "", -1, 0, "", 0, 9, - "", 0, 6, "", 0, 3); - TEST_MATCH_ALL3("a+", "aaa", -1, 0, "aaa", 0, 3, "aa", 0, 2, "a", 0, 1); - -end: /* if abort_on_fail is TRUE the flow passes to this label. */ - verbose ("\n%u tests passed, %u failed\n", passed, failed); - return failed; -} - -#else /* ENABLE_REGEX false */ - -int -main (int argc, char *argv[]) -{ - g_print ("GRegex is disabled.\n"); - return 0; -} - -#endif /* ENABLE_REGEX */ diff --git a/tests/run-bookmark-test.sh b/tests/run-bookmark-test.sh deleted file mode 100755 index 3bed44d..0000000 --- a/tests/run-bookmark-test.sh +++ /dev/null @@ -1,34 +0,0 @@ -#! /bin/sh - -fail () -{ - echo "Test failed: $*" - exit 1 -} - -echo_v () -{ - if [ "$verbose" = "1" ]; then - echo "$*" - fi -} - -error_out=/dev/null -if [ "$1" = "-v" ]; then - verbose=1 - error_out=/dev/stderr -fi -for I in ${srcdir:-.}/bookmarks/fail-*.xbel; do - echo_v "Parsing $I, should fail" - ./bookmarkfile-test $I > /dev/null 2> $error_out && fail "failed to generate error on $I" - if test "$?" != "1"; then - fail "unexpected error on $I" - fi -done - -for I in ${srcdir:-.}/bookmarks/valid-*.xbel; do - echo_v "Parsing $I, should succeed" - ./bookmarkfile-test $I > /dev/null 2> $error_out || fail "failed on $I" -done - -echo_v "All tests passed." diff --git a/tests/run-markup-tests.sh b/tests/run-markup-tests.sh deleted file mode 100755 index 38074cc..0000000 --- a/tests/run-markup-tests.sh +++ /dev/null @@ -1,41 +0,0 @@ -#! /bin/sh - -fail () -{ - echo "Test failed: $*" - exit 1 -} - -echo_v () -{ - if [ "$verbose" = "1" ]; then - echo "$*" - fi -} - -error_out=/dev/null -if [ "$1" = "-v" ]; then - verbose=1 - error_out=/dev/stderr -fi -for I in ${srcdir:-.}/markups/fail-*.gmarkup; do - echo_v "Parsing $I, should fail" - ./markup-test $I > /dev/null 2> $error_out && fail "failed to generate error on $I" - if test "$?" != "1"; then - fail "unexpected error on $I" - fi -done - -I=1 -while test $I -lt 100 ; do - F=${srcdir:-.}/markups/valid-$I.gmarkup - if [ -f $F ] ; then - echo_v "Parsing $F, should succeed" - ./markup-test $F > actual 2> $error_out || fail "failed on $F" - diff ${srcdir:-.}/markups/expected-$I actual || fail "unexpected output on $F" - rm actual - fi - I=`expr $I + 1` -done - -echo_v "All tests passed." diff --git a/tests/scannerapi.c b/tests/scannerapi.c deleted file mode 100644 index d33fed9..0000000 --- a/tests/scannerapi.c +++ /dev/null @@ -1,139 +0,0 @@ -/* Gtk+ object tests - * Copyright (C) 2007 Patrick Hulin - * Copyright (C) 2007 Imendio AB - * Authors: Tim Janik - * - * 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., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. - */ -#include -#include -#include - - -/* GScanner fixture */ -typedef struct { - GScanner *scanner; -} ScannerFixture; -static void -scanner_fixture_setup (ScannerFixture *fix, - gconstpointer test_data) -{ - fix->scanner = g_scanner_new (NULL); - g_assert (fix->scanner != NULL); -} -static void -scanner_fixture_teardown (ScannerFixture *fix, - gconstpointer test_data) -{ - g_assert (fix->scanner != NULL); - g_scanner_destroy (fix->scanner); -} - -static void -scanner_msg_func (GScanner *scanner, - gchar *message, - gboolean error) -{ - g_assert_cmpstr (message, ==, "test"); -} - -static void -test_scanner_warn (ScannerFixture *fix, - gconstpointer test_data) -{ - fix->scanner->msg_handler = scanner_msg_func; - g_scanner_warn (fix->scanner, "test"); -} - -static void -test_scanner_error (ScannerFixture *fix, - gconstpointer test_data) -{ - if (g_test_trap_fork (0, G_TEST_TRAP_SILENCE_STDOUT | G_TEST_TRAP_SILENCE_STDERR)) - { - int pe = fix->scanner->parse_errors; - g_scanner_error (fix->scanner, "scanner-error-message-test"); - g_assert_cmpint (fix->scanner->parse_errors, ==, pe + 1); - exit (0); - } - g_test_trap_assert_passed(); - g_test_trap_assert_stderr ("*scanner-error-message-test*"); -} - -static void -check_keys (gpointer key, - gpointer value, - gpointer user_data) -{ - g_assert_cmpint (GPOINTER_TO_INT (value), ==, g_ascii_strtoull (key, NULL, 0)); -} - -static void -test_scanner_symbols (ScannerFixture *fix, - gconstpointer test_data) -{ - gint i; - gchar buf[2]; - - g_scanner_set_scope (fix->scanner, 1); - - for (i = 0; i < 10; i++) - g_scanner_scope_add_symbol (fix->scanner, - 1, - g_ascii_dtostr (buf, 2, (gdouble)i), - GINT_TO_POINTER (i)); - g_scanner_scope_foreach_symbol (fix->scanner, 1, check_keys, NULL); - g_scanner_scope_remove_symbol (fix->scanner, 1, "5"); - g_assert_cmpint (GPOINTER_TO_INT (g_scanner_scope_lookup_symbol (fix->scanner, 1, "4")), ==, 4); - g_assert_cmpint (GPOINTER_TO_INT (g_scanner_scope_lookup_symbol (fix->scanner, 1, "5")), ==, 0); -} - -static void -test_scanner_tokens (ScannerFixture *fix, - gconstpointer test_data) -{ - gchar buf[] = "(\t\n\r\\){}"; - const gint buflen = strlen (buf); - gchar tokbuf[] = "(\\){}"; - const gint tokbuflen = strlen (tokbuf); - guint i; - - g_scanner_input_text (fix->scanner, buf, buflen); - - g_assert_cmpint (g_scanner_cur_token (fix->scanner), ==, G_TOKEN_NONE); - g_scanner_get_next_token (fix->scanner); - g_assert_cmpint (g_scanner_cur_token (fix->scanner), ==, tokbuf[0]); - g_assert_cmpint (g_scanner_cur_line (fix->scanner), ==, 1); - - for (i = 1; i < tokbuflen; i++) - g_assert_cmpint (g_scanner_get_next_token (fix->scanner), ==, tokbuf[i]); - g_assert_cmpint (g_scanner_get_next_token (fix->scanner), ==, G_TOKEN_EOF); - return; -} - -int -main (int argc, - char *argv[]) -{ - g_test_init (&argc, &argv, NULL); - - g_test_add ("/scanner/warn", ScannerFixture, 0, scanner_fixture_setup, test_scanner_warn, scanner_fixture_teardown); - g_test_add ("/scanner/error", ScannerFixture, 0, scanner_fixture_setup, test_scanner_error, scanner_fixture_teardown); - g_test_add ("/scanner/symbols", ScannerFixture, 0, scanner_fixture_setup, test_scanner_symbols, scanner_fixture_teardown); - g_test_add ("/scanner/tokens", ScannerFixture, 0, scanner_fixture_setup, test_scanner_tokens, scanner_fixture_teardown); - - return g_test_run(); -} diff --git a/tests/sequence-test.c b/tests/sequence-test.c deleted file mode 100644 index 2a88c7d..0000000 --- a/tests/sequence-test.c +++ /dev/null @@ -1,1301 +0,0 @@ -#include -#include -#include - -/* Keep this in sync with gsequence.c !!! */ -typedef struct _GSequenceNode GSequenceNode; - -struct _GSequence -{ - GSequenceNode * end_node; - GDestroyNotify data_destroy_notify; - gboolean access_prohibited; - GSequence * real_sequence; -}; - -struct _GSequenceNode -{ - gint n_nodes; - GSequenceNode * parent; - GSequenceNode * left; - GSequenceNode * right; - gpointer data; -}; - -static guint -get_priority (GSequenceNode *node) -{ - guint key = GPOINTER_TO_UINT (node); - - key = (key << 15) - key - 1; - key = key ^ (key >> 12); - key = key + (key << 2); - key = key ^ (key >> 4); - key = key + (key << 3) + (key << 11); - key = key ^ (key >> 16); - - return key? key : 1; -} - -static void -check_node (GSequenceNode *node) -{ - if (node) - { - g_assert (node->parent != node); - if (node->parent) - g_assert (node->parent->left == node || node->parent->right == node); - g_assert (node->n_nodes == 1 + (node->left ? node->left->n_nodes : 0) + (node->right ? node->right->n_nodes : 0)); - if (node->left) - g_assert (get_priority (node) >= get_priority (node->left)); - if (node->right) - g_assert (get_priority (node) >= get_priority (node->right)); - check_node (node->left); - check_node (node->right); - } -} - -void -g_sequence_check (GSequence *seq) -{ - GSequenceNode *node = seq->end_node; - - while (node->parent) - node = node->parent; - - check_node (node); - - while (node->right) - node = node->right; - - g_assert (seq->end_node == node); - g_assert (node->data == seq); - -} - - -enum { - NEW, FREE, GET_LENGTH, FOREACH, FOREACH_RANGE, SORT, SORT_ITER, - - /* Getting iters */ - GET_BEGIN_ITER, GET_END_ITER, GET_ITER_AT_POS, APPEND, PREPEND, - INSERT_BEFORE, MOVE, SWAP, INSERT_SORTED, INSERT_SORTED_ITER, SORT_CHANGED, - SORT_CHANGED_ITER, REMOVE, REMOVE_RANGE, MOVE_RANGE, SEARCH, SEARCH_ITER, - - /* dereferencing */ - GET, SET, - - /* operations on GSequenceIter * */ - ITER_IS_BEGIN, ITER_IS_END, ITER_NEXT, ITER_PREV, ITER_GET_POSITION, - ITER_MOVE, ITER_GET_SEQUENCE, - - /* search */ - ITER_COMPARE, RANGE_GET_MIDPOINT, - N_OPS -}; - -typedef struct SequenceInfo -{ - GQueue * queue; - GSequence * sequence; - int n_items; -} SequenceInfo; - -typedef struct -{ - SequenceInfo *seq; - int number; -} Item; - -void g_sequence_check (GSequence *sequence); - -static Item * -fix_pointer (gconstpointer data) -{ - return (Item *)((char *)data - 1); -} - -static Item * -get_item (GSequenceIter *iter) -{ - return fix_pointer (g_sequence_get (iter)); -} - -static void -check_integrity (SequenceInfo *info) -{ - GList *list; - GSequenceIter *iter; - int i; - - g_sequence_check (info->sequence); - - if (g_sequence_get_length (info->sequence) != info->n_items) - g_print ("%d %d\n", - g_sequence_get_length (info->sequence), info->n_items); - g_assert (info->n_items == g_queue_get_length (info->queue)); - g_assert (g_sequence_get_length (info->sequence) == info->n_items); - - iter = g_sequence_get_begin_iter (info->sequence); - list = info->queue->head; - i = 0; - while (iter != g_sequence_get_end_iter (info->sequence)) - { - Item *item; - g_assert (list->data == iter); - item = get_item (list->data); - g_assert (item->seq == info); - - iter = g_sequence_iter_next (iter); - list = list->next; - i++; - } - - g_assert (info->n_items == g_queue_get_length (info->queue)); - g_assert (g_sequence_get_length (info->sequence) == info->n_items); -} - -static gpointer -new_item (SequenceInfo *seq) -{ - Item *item = g_new (Item, 1); - seq->n_items++; - item->seq = seq; - item->number = g_random_int (); - - /* There have been bugs in the past where the GSequence would - * dereference the user pointers. This will make sure such - * behavior causes crashes - */ - return ((char *)item + 1); -} - -static void -free_item (gpointer data) -{ - Item *item = fix_pointer (data); - item->seq->n_items--; - g_free (item); -} - -static void -seq_foreach (gpointer data, - gpointer user_data) -{ - Item *item = fix_pointer (data); - GList **link = user_data; - GSequenceIter *iter; - - g_assert (*link != NULL); - - iter = (*link)->data; - - g_assert (get_item (iter) == item); - - item->number = g_random_int(); - - *link = (*link)->next; -} - -static gint -compare_items (gconstpointer a, - gconstpointer b, - gpointer data) -{ - const Item *item_a = fix_pointer (a); - const Item *item_b = fix_pointer (b); - - if (item_a->number < item_b->number) - { - return -1; - } - else if (item_a->number == item_b->number) - { - /* Force an arbitrary order on the items - * We have to do this, since g_queue_insert_sorted() and - * g_sequence_insert_sorted() do not agree on the exact - * position the item is inserted if the new item is - * equal to an existing one. - */ - if (item_a < item_b) - return -1; - else if (item_a == item_b) - return 0; - else - return 1; - } - else - { - return 1; - } -} - -static void -check_sorted (SequenceInfo *info) -{ - GList *list; - int last; - GSequenceIter *last_iter; - - check_integrity (info); - - last = G_MININT; - last_iter = NULL; - for (list = info->queue->head; list != NULL; list = list->next) - { - GSequenceIter *iter = list->data; - Item *item = get_item (iter); - - g_assert (item->number >= last); - /* Check that the ordering is the same as that of the queue, - * ie. that the sort is stable - */ - if (last_iter) - g_assert (iter == g_sequence_iter_next (last_iter)); - - last = item->number; - last_iter = iter; - } -} - -static gint -compare_iters (gconstpointer a, - gconstpointer b, - gpointer data) -{ - GSequence *seq = data; - GSequenceIter *iter_a = (GSequenceIter *)a; - GSequenceIter *iter_b = (GSequenceIter *)b; - /* compare_items() will fix up the pointers */ - Item *item_a = g_sequence_get (iter_a); - Item *item_b = g_sequence_get (iter_b); - - if (seq) - { - g_assert (g_sequence_iter_get_sequence (iter_a) == seq); - g_assert (g_sequence_iter_get_sequence (iter_b) == seq); - } - - return compare_items (item_a, item_b, data); -} - -/* A version of g_queue_link_index() that treats NULL as just - * beyond the queue - */ -static int -queue_link_index (SequenceInfo *seq, GList *link) -{ - if (link) - return g_queue_link_index (seq->queue, link); - else - return g_queue_get_length (seq->queue); -} - -static void -get_random_range (SequenceInfo *seq, - GSequenceIter **begin_iter, - GSequenceIter **end_iter, - GList **begin_link, - GList **end_link) -{ - int length = g_queue_get_length (seq->queue); - int b = g_random_int_range (0, length + 1); - int e = g_random_int_range (b, length + 1); - - g_assert (length == g_sequence_get_length (seq->sequence)); - - if (begin_iter) - *begin_iter = g_sequence_get_iter_at_pos (seq->sequence, b); - if (end_iter) - *end_iter = g_sequence_get_iter_at_pos (seq->sequence, e); - if (begin_link) - *begin_link = g_queue_peek_nth_link (seq->queue, b); - if (end_link) - *end_link = g_queue_peek_nth_link (seq->queue, e); - if (begin_iter && begin_link) - { - g_assert ( - queue_link_index (seq, *begin_link) == - g_sequence_iter_get_position (*begin_iter)); - } - if (end_iter && end_link) - { - g_assert ( - queue_link_index (seq, *end_link) == - g_sequence_iter_get_position (*end_iter)); - } -} - -static gint -get_random_position (SequenceInfo *seq) -{ - int length = g_queue_get_length (seq->queue); - - g_assert (length == g_sequence_get_length (seq->sequence)); - - return g_random_int_range (-2, length + 5); -} - -static GSequenceIter * -get_random_iter (SequenceInfo *seq, - GList **link) -{ - GSequenceIter *iter; - int pos = get_random_position (seq); - if (link) - *link = g_queue_peek_nth_link (seq->queue, pos); - iter = g_sequence_get_iter_at_pos (seq->sequence, pos); - if (link) - g_assert (queue_link_index (seq, *link) == g_sequence_iter_get_position (iter)); - return iter; -} - -static void -dump_info (SequenceInfo *seq) -{ -#if 0 - GSequenceIter *iter; - GList *list; - - iter = g_sequence_get_begin_iter (seq->sequence); - list = seq->queue->head; - - while (iter != g_sequence_get_end_iter (seq->sequence)) - { - Item *item = get_item (iter); - g_print ("%p %p %d\n", list->data, iter, item->number); - - iter = g_sequence_iter_next (iter); - list = list->next; - } -#endif -} - -/* A version of g_queue_insert_before() that appends if link is NULL */ -static void -queue_insert_before (SequenceInfo *seq, GList *link, gpointer data) -{ - if (link) - g_queue_insert_before (seq->queue, link, data); - else - g_queue_push_tail (seq->queue, data); -} - -static void -run_random_tests (guint32 seed) -{ -#define N_ITERATIONS 60000 -#define N_SEQUENCES 8 -#define N_TIMES 24 - - SequenceInfo sequences[N_SEQUENCES]; - int k; - - g_print (" seed: %u\n", seed); - - g_random_set_seed (seed); - - for (k = 0; k < N_SEQUENCES; ++k) - { - sequences[k].queue = g_queue_new (); - sequences[k].sequence = g_sequence_new (free_item); - sequences[k].n_items = 0; - } - -#define RANDOM_SEQUENCE() &(sequences[g_random_int_range (0, N_SEQUENCES)]) - - for (k = 0; k < N_ITERATIONS; ++k) - { - int i; - SequenceInfo *seq = RANDOM_SEQUENCE(); - int op = g_random_int_range (0, N_OPS); - -#if 0 - g_print ("%d on %p\n", op, seq); -#endif - - switch (op) - { - case NEW: - case FREE: - { - g_queue_free (seq->queue); - g_sequence_free (seq->sequence); - - g_assert (seq->n_items == 0); - - seq->queue = g_queue_new (); - seq->sequence = g_sequence_new (free_item); - - check_integrity (seq); - } - break; - case GET_LENGTH: - { - int slen = g_sequence_get_length (seq->sequence); - int qlen = g_queue_get_length (seq->queue); - - g_assert (slen == qlen); - } - break; - case FOREACH: - { - GList *link = seq->queue->head; - g_sequence_foreach (seq->sequence, seq_foreach, &link); - g_assert (link == NULL); - } - break; - case FOREACH_RANGE: - { - GSequenceIter *begin_iter, *end_iter; - GList *begin_link, *end_link; - - get_random_range (seq, &begin_iter, &end_iter, &begin_link, &end_link); - - check_integrity (seq); - - g_sequence_foreach_range (begin_iter, end_iter, seq_foreach, &begin_link); - - g_assert (begin_link == end_link); - } - break; - case SORT: - { - dump_info (seq); - - g_sequence_sort (seq->sequence, compare_items, NULL); - g_queue_sort (seq->queue, compare_iters, NULL); - - check_sorted (seq); - - dump_info (seq); - } - break; - case SORT_ITER: - { - check_integrity (seq); - g_sequence_sort_iter (seq->sequence, - (GSequenceIterCompareFunc)compare_iters, seq->sequence); - g_queue_sort (seq->queue, compare_iters, NULL); - check_sorted (seq); - } - break; - - /* Getting iters */ - case GET_END_ITER: - case GET_BEGIN_ITER: - { - GSequenceIter *begin_iter; - GSequenceIter *end_iter; - GSequenceIter *penultimate_iter; - - begin_iter = g_sequence_get_begin_iter (seq->sequence); - check_integrity (seq); - - end_iter = g_sequence_get_end_iter (seq->sequence); - check_integrity (seq); - - penultimate_iter = g_sequence_iter_prev (end_iter); - check_integrity (seq); - - if (g_sequence_get_length (seq->sequence) > 0) - { - g_assert (seq->queue->head); - g_assert (seq->queue->head->data == begin_iter); - g_assert (seq->queue->tail); - g_assert (seq->queue->tail->data == penultimate_iter); - } - else - { - g_assert (penultimate_iter == end_iter); - g_assert (begin_iter == end_iter); - g_assert (penultimate_iter == begin_iter); - g_assert (seq->queue->head == NULL); - g_assert (seq->queue->tail == NULL); - } - } - break; - case GET_ITER_AT_POS: - { - int i; - - g_assert (g_queue_get_length (seq->queue) == g_sequence_get_length (seq->sequence)); - - for (i = 0; i < 10; ++i) - { - int pos = get_random_position (seq); - GSequenceIter *iter = g_sequence_get_iter_at_pos (seq->sequence, pos); - GList *link = g_queue_peek_nth_link (seq->queue, pos); - check_integrity (seq); - if (pos >= g_sequence_get_length (seq->sequence) || pos < 0) - { - g_assert (iter == g_sequence_get_end_iter (seq->sequence)); - g_assert (link == NULL); - } - else - { - g_assert (link); - g_assert (link->data == iter); - } - } - } - break; - case APPEND: - { - for (i = 0; i < 10; ++i) - { - GSequenceIter *iter = g_sequence_append (seq->sequence, new_item (seq)); - g_queue_push_tail (seq->queue, iter); - } - } - break; - case PREPEND: - { - for (i = 0; i < 10; ++i) - { - GSequenceIter *iter = g_sequence_prepend (seq->sequence, new_item (seq)); - g_queue_push_head (seq->queue, iter); - } - } - break; - case INSERT_BEFORE: - { - for (i = 0; i < 10; ++i) - { - GList *link; - GSequenceIter *iter = get_random_iter (seq, &link); - GSequenceIter *new_iter; - check_integrity (seq); - - new_iter = g_sequence_insert_before (iter, new_item (seq)); - - queue_insert_before (seq, link, new_iter); - } - } - break; - case MOVE: - { - GList *link1, *link2; - SequenceInfo *seq1 = RANDOM_SEQUENCE(); - SequenceInfo *seq2 = RANDOM_SEQUENCE(); - GSequenceIter *iter1 = get_random_iter (seq1, &link1); - GSequenceIter *iter2 = get_random_iter (seq2, &link2); - - if (!g_sequence_iter_is_end (iter1)) - { - g_sequence_move (iter1, iter2); - - if (!link2) - g_assert (g_sequence_iter_is_end (iter2)); - - queue_insert_before (seq2, link2, link1->data); - - g_queue_delete_link (seq1->queue, link1); - - get_item (iter1)->seq = seq2; - - seq1->n_items--; - seq2->n_items++; - } - - check_integrity (seq); - - iter1 = get_random_iter (seq, NULL); - - /* Moving an iter to itself should have no effect */ - if (!g_sequence_iter_is_end (iter1)) - g_sequence_move (iter1, iter1); - } - break; - case SWAP: - { - GList *link1, *link2; - SequenceInfo *seq1 = RANDOM_SEQUENCE(); - SequenceInfo *seq2 = RANDOM_SEQUENCE(); - GSequenceIter *iter1 = get_random_iter (seq1, &link1); - GSequenceIter *iter2 = get_random_iter (seq2, &link2); - - if (!g_sequence_iter_is_end (iter1) && - !g_sequence_iter_is_end (iter2)) - { - gpointer tmp; - - g_sequence_swap (iter1, iter2); - - get_item (iter1)->seq = seq2; - get_item (iter2)->seq = seq1; - - tmp = link1->data; - link1->data = link2->data; - link2->data = tmp; - } - } - break; - case INSERT_SORTED: - { - int i; - dump_info (seq); - - g_sequence_sort (seq->sequence, compare_items, NULL); - g_queue_sort (seq->queue, compare_iters, NULL); - - check_sorted (seq); - - for (i = 0; i < N_TIMES; ++i) - { - GSequenceIter *iter = - g_sequence_insert_sorted (seq->sequence, new_item(seq), compare_items, NULL); - - g_queue_insert_sorted (seq->queue, iter, compare_iters, NULL); - } - - check_sorted (seq); - - dump_info (seq); - } - break; - case INSERT_SORTED_ITER: - { - int i; - dump_info (seq); - - g_sequence_sort (seq->sequence, compare_items, NULL); - g_queue_sort (seq->queue, compare_iters, NULL); - - check_sorted (seq); - - for (i = 0; i < N_TIMES; ++i) - { - GSequenceIter *iter; - - iter = g_sequence_insert_sorted_iter (seq->sequence, - new_item (seq), - (GSequenceIterCompareFunc)compare_iters, - seq->sequence); - - g_queue_insert_sorted (seq->queue, iter, compare_iters, NULL); - } - - check_sorted (seq); - - dump_info (seq); - } - break; - case SORT_CHANGED: - { - int i; - - g_sequence_sort (seq->sequence, compare_items, NULL); - g_queue_sort (seq->queue, compare_iters, NULL); - - check_sorted (seq); - - for (i = 0; i < N_TIMES; ++i) - { - GList *link; - GSequenceIter *iter = get_random_iter (seq, &link); - - if (!g_sequence_iter_is_end (iter)) - { - g_sequence_set (iter, new_item (seq)); - g_sequence_sort_changed (iter, compare_items, NULL); - - g_queue_delete_link (seq->queue, link); - g_queue_insert_sorted (seq->queue, iter, compare_iters, NULL); - } - - check_sorted (seq); - } - } - break; - case SORT_CHANGED_ITER: - { - int i; - - g_sequence_sort (seq->sequence, compare_items, NULL); - g_queue_sort (seq->queue, compare_iters, NULL); - - check_sorted (seq); - - for (i = 0; i < N_TIMES; ++i) - { - GList *link; - GSequenceIter *iter = get_random_iter (seq, &link); - - if (!g_sequence_iter_is_end (iter)) - { - g_sequence_set (iter, new_item (seq)); - g_sequence_sort_changed_iter (iter, - (GSequenceIterCompareFunc)compare_iters, seq->sequence); - - g_queue_delete_link (seq->queue, link); - g_queue_insert_sorted (seq->queue, iter, compare_iters, NULL); - } - - check_sorted (seq); - } - } - break; - case REMOVE: - { - int i; - - for (i = 0; i < N_TIMES; ++i) - { - GList *link; - GSequenceIter *iter = get_random_iter (seq, &link); - - if (!g_sequence_iter_is_end (iter)) - { - g_sequence_remove (iter); - g_queue_delete_link (seq->queue, link); - } - } - } - break; - case REMOVE_RANGE: - { - GSequenceIter *begin_iter, *end_iter; - GList *begin_link, *end_link; - GList *list; - - get_random_range (seq, &begin_iter, &end_iter, &begin_link, &end_link); - - g_sequence_remove_range (begin_iter, end_iter); - - list = begin_link; - while (list != end_link) - { - GList *next = list->next; - - g_queue_delete_link (seq->queue, list); - - list = next; - } - } - break; - case MOVE_RANGE: - { - SequenceInfo *src = RANDOM_SEQUENCE(); - SequenceInfo *dst = RANDOM_SEQUENCE(); - - GSequenceIter *begin_iter, *end_iter; - GList *begin_link, *end_link; - - GSequenceIter *dst_iter; - GList *dst_link; - - GList *list; - - g_assert (src->queue); - g_assert (dst->queue); - - get_random_range (src, &begin_iter, &end_iter, &begin_link, &end_link); - dst_iter = get_random_iter (dst, &dst_link); - - g_sequence_move_range (dst_iter, begin_iter, end_iter); - - if (dst_link == begin_link || (src == dst && dst_link == end_link)) - { - check_integrity (src); - check_integrity (dst); - break; - } - - if (queue_link_index (src, begin_link) >= - queue_link_index (src, end_link)) - { - break; - } - - if (src == dst && - queue_link_index (src, dst_link) >= queue_link_index (src, begin_link) && - queue_link_index (src, dst_link) <= queue_link_index (src, end_link)) - { - break; - } - - list = begin_link; - while (list != end_link) - { - GList *next = list->next; - Item *item = get_item (list->data); - - g_assert (dst->queue); - queue_insert_before (dst, dst_link, list->data); - g_queue_delete_link (src->queue, list); - - g_assert (item->seq == src); - - src->n_items--; - dst->n_items++; - item->seq = dst; - - list = next; - } - } - break; - case SEARCH: - { - Item *item; - GSequenceIter *search_iter; - GSequenceIter *insert_iter; - - g_sequence_sort (seq->sequence, compare_items, NULL); - g_queue_sort (seq->queue, compare_iters, NULL); - - check_sorted (seq); - - item = new_item (seq); - search_iter = g_sequence_search (seq->sequence, item, compare_items, NULL); - - insert_iter = g_sequence_insert_sorted (seq->sequence, item, compare_items, NULL); - - g_assert (search_iter == g_sequence_iter_next (insert_iter)); - - g_queue_insert_sorted (seq->queue, insert_iter, compare_iters, NULL); - } - break; - case SEARCH_ITER: - { - Item *item; - GSequenceIter *search_iter; - GSequenceIter *insert_iter; - - g_sequence_sort (seq->sequence, compare_items, NULL); - g_queue_sort (seq->queue, compare_iters, NULL); - - check_sorted (seq); - - item = new_item (seq); - search_iter = g_sequence_search_iter (seq->sequence, - item, - (GSequenceIterCompareFunc)compare_iters, seq->sequence); - - insert_iter = g_sequence_insert_sorted (seq->sequence, item, compare_items, NULL); - - g_assert (search_iter == g_sequence_iter_next (insert_iter)); - - g_queue_insert_sorted (seq->queue, insert_iter, compare_iters, NULL); - } - break; - - /* dereferencing */ - case GET: - case SET: - { - GSequenceIter *iter; - GList *link; - - iter = get_random_iter (seq, &link); - - if (!g_sequence_iter_is_end (iter)) - { - Item *item; - int i; - - check_integrity (seq); - - /* Test basic functionality */ - item = new_item (seq); - g_sequence_set (iter, item); - g_assert (g_sequence_get (iter) == item); - - /* Make sure that existing items are freed */ - for (i = 0; i < N_TIMES; ++i) - g_sequence_set (iter, new_item (seq)); - - check_integrity (seq); - - g_sequence_set (iter, new_item (seq)); - } - } - break; - - /* operations on GSequenceIter * */ - case ITER_IS_BEGIN: - { - GSequenceIter *iter; - - iter = g_sequence_get_iter_at_pos (seq->sequence, 0); - - g_assert (g_sequence_iter_is_begin (iter)); - - check_integrity (seq); - - if (g_sequence_get_length (seq->sequence) > 0) - { - g_assert (!g_sequence_iter_is_begin (g_sequence_get_end_iter (seq->sequence))); - } - else - { - g_assert (g_sequence_iter_is_begin (g_sequence_get_end_iter (seq->sequence))); - } - - g_assert (g_sequence_iter_is_begin (g_sequence_get_begin_iter (seq->sequence))); - } - break; - case ITER_IS_END: - { - GSequenceIter *iter; - int len = g_sequence_get_length (seq->sequence); - - iter = g_sequence_get_iter_at_pos (seq->sequence, len); - - g_assert (g_sequence_iter_is_end (iter)); - - if (len > 0) - { - g_assert (!g_sequence_iter_is_end (g_sequence_get_begin_iter (seq->sequence))); - } - else - { - g_assert (g_sequence_iter_is_end (g_sequence_get_begin_iter (seq->sequence))); - } - - g_assert (g_sequence_iter_is_end (g_sequence_get_end_iter (seq->sequence))); - } - break; - case ITER_NEXT: - { - GSequenceIter *iter1, *iter2, *iter3, *end; - - iter1 = g_sequence_append (seq->sequence, new_item (seq)); - iter2 = g_sequence_append (seq->sequence, new_item (seq)); - iter3 = g_sequence_append (seq->sequence, new_item (seq)); - - end = g_sequence_get_end_iter (seq->sequence); - - g_assert (g_sequence_iter_next (iter1) == iter2); - g_assert (g_sequence_iter_next (iter2) == iter3); - g_assert (g_sequence_iter_next (iter3) == end); - g_assert (g_sequence_iter_next (end) == end); - - g_queue_push_tail (seq->queue, iter1); - g_queue_push_tail (seq->queue, iter2); - g_queue_push_tail (seq->queue, iter3); - } - break; - case ITER_PREV: - { - GSequenceIter *iter1, *iter2, *iter3, *begin; - - iter1 = g_sequence_prepend (seq->sequence, new_item (seq)); - iter2 = g_sequence_prepend (seq->sequence, new_item (seq)); - iter3 = g_sequence_prepend (seq->sequence, new_item (seq)); - - begin = g_sequence_get_begin_iter (seq->sequence); - - g_assert (g_sequence_iter_prev (iter1) == iter2); - g_assert (g_sequence_iter_prev (iter2) == iter3); - g_assert (iter3 == begin); - g_assert (g_sequence_iter_prev (iter3) == begin); - g_assert (g_sequence_iter_prev (begin) == begin); - - g_queue_push_head (seq->queue, iter1); - g_queue_push_head (seq->queue, iter2); - g_queue_push_head (seq->queue, iter3); - } - break; - case ITER_GET_POSITION: - { - GList *link; - GSequenceIter *iter = get_random_iter (seq, &link); - - g_assert (g_sequence_iter_get_position (iter) == - queue_link_index (seq, link)); - } - break; - case ITER_MOVE: - { - int len = g_sequence_get_length (seq->sequence); - GSequenceIter *iter; - int pos; - - iter = get_random_iter (seq, NULL); - pos = g_sequence_iter_get_position (iter); - iter = g_sequence_iter_move (iter, len - pos); - g_assert (g_sequence_iter_is_end (iter)); - - - iter = get_random_iter (seq, NULL); - pos = g_sequence_iter_get_position (iter); - while (pos < len) - { - g_assert (!g_sequence_iter_is_end (iter)); - pos++; - iter = g_sequence_iter_move (iter, 1); - } - g_assert (g_sequence_iter_is_end (iter)); - } - break; - case ITER_GET_SEQUENCE: - { - GSequenceIter *iter = get_random_iter (seq, NULL); - - g_assert (g_sequence_iter_get_sequence (iter) == seq->sequence); - } - break; - - /* search */ - case ITER_COMPARE: - { - GList *link1, *link2; - GSequenceIter *iter1 = get_random_iter (seq, &link1); - GSequenceIter *iter2 = get_random_iter (seq, &link2); - - int cmp = g_sequence_iter_compare (iter1, iter2); - int pos1 = queue_link_index (seq, link1); - int pos2 = queue_link_index (seq, link2); - - if (cmp == 0) - { - g_assert (pos1 == pos2); - } - else if (cmp < 0) - { - g_assert (pos1 < pos2); - } - else - { - g_assert (pos1 > pos2); - } - } - break; - case RANGE_GET_MIDPOINT: - { - GSequenceIter *iter1 = get_random_iter (seq, NULL); - GSequenceIter *iter2 = get_random_iter (seq, NULL); - GSequenceIter *iter3; - int cmp; - - cmp = g_sequence_iter_compare (iter1, iter2); - - if (cmp > 0) - { - GSequenceIter *tmp; - - tmp = iter1; - iter1 = iter2; - iter2 = tmp; - } - - iter3 = g_sequence_range_get_midpoint (iter1, iter2); - - if (cmp == 0) - { - g_assert (iter3 == iter1); - g_assert (iter3 == iter2); - } - - g_assert (g_sequence_iter_get_position (iter3) >= - g_sequence_iter_get_position (iter1)); - g_assert (g_sequence_iter_get_position (iter2) >= - g_sequence_iter_get_position (iter3)); - } - break; - - } - - check_integrity (seq); - } -} - -/* Random seeds known to have failed at one point - */ -static gulong seeds[] = - { - 825541564u, - 801678400u, - 1477639090u, - 3369132895u, - 1192944867u, - 770458294u, - 1099575817u, - 590523467u, - 3583571454u, - 579241222u - }; - -static void standalone_tests (void); - -static guint32 -get_seed (int argc, char **argv) -{ - if (argc > 1) - { - char *endptr; - - return strtol (argv[1], &endptr, 0); - } - else - { - return g_random_int(); - } -} - -int -main (int argc, - char **argv) -{ - guint32 seed = get_seed (argc, argv); - int i; - - /* Run stand alone tests */ - g_print ("running standalone tests\n"); - standalone_tests(); - - g_print ("running regression tests:\n"); - /* Run regression tests */ - for (i = 0; i < G_N_ELEMENTS (seeds); ++i) - { - run_random_tests (seeds[i]); - } - - /* Run with a new random seed */ - g_print ("random seed:\n"); - run_random_tests (seed); - - - return 0; -} - - -/* Single, stand-alone tests */ - -static void -test_out_of_range_jump (void) -{ - GSequence *seq = g_sequence_new (NULL); - GSequenceIter *iter = g_sequence_get_begin_iter (seq); - - g_sequence_iter_move (iter, 5); - - g_assert (g_sequence_iter_is_begin (iter)); - g_assert (g_sequence_iter_is_end (iter)); -} - -static int -compare (gconstpointer a, gconstpointer b, gpointer userdata) -{ - int ai, bi; - - ai = GPOINTER_TO_INT (a); - bi = GPOINTER_TO_INT (b); - - if (ai < bi) - return -1; - else if (ai > bi) - return 1; - else - return 0; -} - -static int -compare_iter (GSequenceIter *a, - GSequenceIter *b, - gpointer data) -{ - return compare (g_sequence_get (a), - g_sequence_get (b), - data); -} - -static void -test_insert_sorted_non_pointer (void) -{ - int i; - - for (i = 0; i < 10; i++) - { - GSequence *seq = g_sequence_new (NULL); - int j; - - for (j = 0; j < 10000; j++) - { - g_sequence_insert_sorted (seq, GINT_TO_POINTER (g_random_int()), - compare, NULL); - - g_sequence_insert_sorted_iter (seq, GINT_TO_POINTER (g_random_int()), - compare_iter, NULL); - } - - g_sequence_check (seq); - - g_sequence_free (seq); - } -} - -static void -test_stable_sort (void) -{ - int i; - GSequence *seq = g_sequence_new (NULL); - -#define N_ITEMS 1000 - - GSequenceIter *iters[N_ITEMS]; - GSequenceIter *iter; - - for (i = 0; i < N_ITEMS; ++i) - { - iters[i] = g_sequence_append (seq, GINT_TO_POINTER (3000)); - g_sequence_check (seq); - g_assert (g_sequence_iter_get_sequence (iters[i]) == seq); - } - - i = 0; - iter = g_sequence_get_begin_iter (seq); - g_assert (g_sequence_iter_get_sequence (iter) == seq); - g_sequence_check (seq); - while (!g_sequence_iter_is_end (iter)) - { - g_assert (g_sequence_iter_get_sequence (iters[i]) == seq); - g_assert (iters[i++] == iter); - - iter = g_sequence_iter_next (iter); - g_sequence_check (seq); - } - - g_sequence_sort (seq, compare, NULL); - - i = 0; - iter = g_sequence_get_begin_iter (seq); - while (!g_sequence_iter_is_end (iter)) - { - g_assert (g_sequence_iter_get_sequence (iters[i]) == seq); - g_assert (iters[i] == iter); - - iter = g_sequence_iter_next (iter); - g_sequence_check (seq); - - i++; - } - - for (i = N_ITEMS - 1; i >= 0; --i) - { - g_sequence_check (seq); - g_assert (g_sequence_iter_get_sequence (iters[i]) == seq); - g_assert (g_sequence_get_end_iter (seq) != iters[i]); - g_sequence_sort_changed (iters[i], compare, NULL); - } - - i = 0; - iter = g_sequence_get_begin_iter (seq); - while (!g_sequence_iter_is_end (iter)) - { - g_assert (iters[i++] == iter); - - iter = g_sequence_iter_next (iter); - g_sequence_check (seq); - } -} - -static void -standalone_tests (void) -{ - test_out_of_range_jump (); - test_insert_sorted_non_pointer (); - test_stable_sort (); -} - diff --git a/tests/shell-test.c b/tests/shell-test.c deleted file mode 100644 index 437f20e..0000000 --- a/tests/shell-test.c +++ /dev/null @@ -1,297 +0,0 @@ -/* GLIB - Library of useful routines for C programming - * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald - * - * 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., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. - */ - -/* - * Modified by the GLib Team and others 1997-2000. See the AUTHORS - * file for a list of people on the GLib Team. See the ChangeLog - * files for a list of changes. These files are distributed with - * GLib at ftp://ftp.gtk.org/pub/gtk/. - */ - -#undef G_DISABLE_ASSERT -#undef G_LOG_DOMAIN - -#include -#include -#include -#include - - -typedef struct _TestResult TestResult; - -struct _TestResult -{ - gint argc; - const gchar **argv; -}; - -static const gchar * -test_command_lines[] = -{ - /* 0 */ "foo bar", - /* 1 */ "foo 'bar'", - /* 2 */ "foo \"bar\"", - /* 3 */ "foo '' 'bar'", - /* 4 */ "foo \"bar\"'baz'blah'foo'\\''blah'\"boo\"", - /* 5 */ "foo \t \tblah\tfoo\t\tbar baz", - /* 6 */ "foo ' spaces more spaces lots of spaces in this ' \t", - /* 7 */ "foo \\\nbar", - /* 8 */ "foo '' ''", - /* 9 */ "foo \\\" la la la", - /* 10 */ "foo \\ foo woo woo\\ ", - /* 11 */ "foo \"yada yada \\$\\\"\"", - /* 12 */ "foo \"c:\\\\\"", - NULL -}; - -static const gchar *result0[] = { "foo", "bar", NULL }; -static const gchar *result1[] = { "foo", "bar", NULL }; -static const gchar *result2[] = { "foo", "bar", NULL }; -static const gchar *result3[] = { "foo", "", "bar", NULL }; -static const gchar *result4[] = { "foo", "barbazblahfoo'blahboo", NULL }; -static const gchar *result5[] = { "foo", "blah", "foo", "bar", "baz", NULL }; -static const gchar *result6[] = { "foo", " spaces more spaces lots of spaces in this ", NULL }; -static const gchar *result7[] = { "foo", "bar", NULL }; -static const gchar *result8[] = { "foo", "", "", NULL }; -static const gchar *result9[] = { "foo", "\"", "la", "la", "la", NULL }; -static const gchar *result10[] = { "foo", " foo", "woo", "woo ", NULL }; -static const gchar *result11[] = { "foo", "yada yada $\"", NULL }; -static const gchar *result12[] = { "foo", "c:\\", NULL }; - -static const TestResult -correct_results[] = -{ - { G_N_ELEMENTS (result0) - 1, result0 }, - { G_N_ELEMENTS (result1) - 1, result1 }, - { G_N_ELEMENTS (result2) - 1, result2 }, - { G_N_ELEMENTS (result3) - 1, result3 }, - { G_N_ELEMENTS (result4) - 1, result4 }, - { G_N_ELEMENTS (result5) - 1, result5 }, - { G_N_ELEMENTS (result6) - 1, result6 }, - { G_N_ELEMENTS (result7) - 1, result7 }, - { G_N_ELEMENTS (result8) - 1, result8 }, - { G_N_ELEMENTS (result9) - 1, result9 }, - { G_N_ELEMENTS (result10) - 1, result10 }, - { G_N_ELEMENTS (result11) - 1, result11 }, - { G_N_ELEMENTS (result12) - 1, result12 } -}; - -static void -print_test (const gchar *cmdline, gint argc, gchar **argv, - const TestResult *result) -{ - gint i; - - fprintf (stderr, "Command line was: '%s'\n", cmdline); - - fprintf (stderr, "Expected result (%d args):\n", result->argc); - - i = 0; - while (result->argv[i]) - { - fprintf (stderr, " %3d '%s'\n", i, result->argv[i]); - ++i; - } - - fprintf (stderr, "Actual result (%d args):\n", argc); - - i = 0; - while (argv[i]) - { - fprintf (stderr, " %3d '%s'\n", i, argv[i]); - ++i; - } -} - -static void -do_argv_test (const gchar *cmdline, const TestResult *result) -{ - gint argc; - gchar **argv; - GError *err; - gint i; - - err = NULL; - if (!g_shell_parse_argv (cmdline, &argc, &argv, &err)) - { - fprintf (stderr, "Error parsing command line that should work fine: %s\n", - err->message); - - exit (1); - } - - if (argc != result->argc) - { - fprintf (stderr, "Expected and actual argc don't match\n"); - print_test (cmdline, argc, argv, result); - exit (1); - } - - i = 0; - while (argv[i]) - { - if (strcmp (argv[i], result->argv[i]) != 0) - { - fprintf (stderr, "Expected and actual arg %d do not match\n", i); - print_test (cmdline, argc, argv, result); - exit (1); - } - - ++i; - } - - if (argv[i] != NULL) - { - fprintf (stderr, "argv didn't get NULL-terminated\n"); - exit (1); - } - g_strfreev (argv); -} - -static void -run_tests (void) -{ - gint i; - - i = 0; - while (test_command_lines[i]) - { - do_argv_test (test_command_lines[i], &correct_results[i]); - ++i; - } -} - -static gboolean any_test_failed = FALSE; - -#define CHECK_STRING_RESULT(expression, expected_value) \ - check_string_result (#expression, __FILE__, __LINE__, expression, expected_value) - -static void -check_string_result (const char *expression, - const char *file_name, - int line_number, - char *result, - const char *expected) -{ - gboolean match; - - if (expected == NULL) - match = result == NULL; - else - match = result != NULL && strcmp (result, expected) == 0; - - if (!match) - { - if (!any_test_failed) - fprintf (stderr, "\n"); - - fprintf (stderr, "FAIL: check failed in %s, line %d\n", file_name, line_number); - fprintf (stderr, " evaluated: %s\n", expression); - fprintf (stderr, " expected: %s\n", expected == NULL ? "NULL" : expected); - fprintf (stderr, " got: %s\n", result == NULL ? "NULL" : result); - - any_test_failed = TRUE; - } - - g_free (result); -} - -static char * -test_shell_unquote (const char *str) -{ - char *result; - GError *error; - - error = NULL; - result = g_shell_unquote (str, &error); - if (error == NULL) - return result; - - /* Leaks the error, which is no big deal and easy to fix if we - * decide it matters. - */ - - if (error->domain != G_SHELL_ERROR) - return g_strdup ("error in domain other than G_SHELL_ERROR"); - - /* It would be nice to check the error message too, but that's - * localized, so it's too much of a pain. - */ - switch (error->code) - { - case G_SHELL_ERROR_BAD_QUOTING: - return g_strdup ("G_SHELL_ERROR_BAD_QUOTING"); - case G_SHELL_ERROR_EMPTY_STRING: - return g_strdup ("G_SHELL_ERROR_EMPTY_STRING"); - case G_SHELL_ERROR_FAILED: - return g_strdup ("G_SHELL_ERROR_FAILED"); - default: - return g_strdup ("bad error code in G_SHELL_ERROR domain"); - } -} - -int -main (int argc, - char *argv[]) -{ - run_tests (); - - CHECK_STRING_RESULT (g_shell_quote (""), "''"); - CHECK_STRING_RESULT (g_shell_quote ("a"), "'a'"); - CHECK_STRING_RESULT (g_shell_quote ("("), "'('"); - CHECK_STRING_RESULT (g_shell_quote ("'"), "''\\'''"); - CHECK_STRING_RESULT (g_shell_quote ("'a"), "''\\''a'"); - CHECK_STRING_RESULT (g_shell_quote ("a'"), "'a'\\'''"); - CHECK_STRING_RESULT (g_shell_quote ("a'a"), "'a'\\''a'"); - - CHECK_STRING_RESULT (test_shell_unquote (""), ""); - CHECK_STRING_RESULT (test_shell_unquote ("a"), "a"); - CHECK_STRING_RESULT (test_shell_unquote ("'a'"), "a"); - CHECK_STRING_RESULT (test_shell_unquote ("'('"), "("); - CHECK_STRING_RESULT (test_shell_unquote ("''\\'''"), "'"); - CHECK_STRING_RESULT (test_shell_unquote ("''\\''a'"), "'a"); - CHECK_STRING_RESULT (test_shell_unquote ("'a'\\'''"), "a'"); - CHECK_STRING_RESULT (test_shell_unquote ("'a'\\''a'"), "a'a"); - - CHECK_STRING_RESULT (test_shell_unquote ("\\\\"), "\\"); - CHECK_STRING_RESULT (test_shell_unquote ("\\\n"), ""); - - CHECK_STRING_RESULT (test_shell_unquote ("'\\''"), "G_SHELL_ERROR_BAD_QUOTING"); - -#if defined (_MSC_VER) && (_MSC_VER <= 1200) - /* using \x22 instead of \" to work around a msvc 5.0, 6.0 compiler bug */ - CHECK_STRING_RESULT (test_shell_unquote ("\x22\\\x22\""), "\""); -#else - CHECK_STRING_RESULT (test_shell_unquote ("\"\\\"\""), "\""); -#endif - - CHECK_STRING_RESULT (test_shell_unquote ("\""), "G_SHELL_ERROR_BAD_QUOTING"); - CHECK_STRING_RESULT (test_shell_unquote ("'"), "G_SHELL_ERROR_BAD_QUOTING"); - - CHECK_STRING_RESULT (test_shell_unquote ("\x22\\\\\""), "\\"); - CHECK_STRING_RESULT (test_shell_unquote ("\x22\\`\""), "`"); - CHECK_STRING_RESULT (test_shell_unquote ("\x22\\$\""), "$"); - CHECK_STRING_RESULT (test_shell_unquote ("\x22\\\n\""), "\n"); - - CHECK_STRING_RESULT (test_shell_unquote ("\"\\'\""), "\\'"); - CHECK_STRING_RESULT (test_shell_unquote ("\x22\\\r\""), "\\\r"); - CHECK_STRING_RESULT (test_shell_unquote ("\x22\\n\""), "\\n"); - - return any_test_failed ? 1 : 0; -} diff --git a/tests/slist-test.c b/tests/slist-test.c deleted file mode 100644 index c269809..0000000 --- a/tests/slist-test.c +++ /dev/null @@ -1,204 +0,0 @@ -#undef G_DISABLE_ASSERT -#undef G_LOG_DOMAIN - -#include - -#define DEBUG_MSG(args) -/* #define DEBUG_MSG(args) g_printerr args ; g_printerr ("\n"); */ -#define PRINT_MSG(args) -/* #define PRINT_MSG(args) g_print args ; g_print ("\n"); */ - -#define SIZE 50 -#define NUMBER_MIN 0000 -#define NUMBER_MAX 9999 - - -static guint32 array[SIZE]; - - -static gint -sort (gconstpointer p1, gconstpointer p2) -{ - gint32 a, b; - - a = GPOINTER_TO_INT (p1); - b = GPOINTER_TO_INT (p2); - - return (a > b ? +1 : a == b ? 0 : -1); -} - -/* - * gslist sort tests - */ -static void -test_slist_sort (void) -{ - GSList *slist = NULL; - gint i; - - PRINT_MSG (("testing g_slist_sort()")); - - for (i = 0; i < SIZE; i++) { - slist = g_slist_append (slist, GINT_TO_POINTER (array[i])); - } - - slist = g_slist_sort (slist, sort); - for (i = 0; i < SIZE - 1; i++) { - gpointer p1, p2; - - p1 = g_slist_nth_data (slist, i); - p2 = g_slist_nth_data (slist, i+1); - - g_assert (GPOINTER_TO_INT (p1) <= GPOINTER_TO_INT (p2)); - DEBUG_MSG (("slist_sort #%3.3d ---> %d", i, GPOINTER_TO_INT (p1))); - } -} - -static void -test_slist_sort_with_data (void) -{ - GSList *slist = NULL; - gint i; - - PRINT_MSG (("testing g_slist_sort_with_data()")); - - for (i = 0; i < SIZE; i++) { - slist = g_slist_append (slist, GINT_TO_POINTER (array[i])); - } - - slist = g_slist_sort_with_data (slist, (GCompareDataFunc)sort, NULL); - for (i = 0; i < SIZE - 1; i++) { - gpointer p1, p2; - - p1 = g_slist_nth_data (slist, i); - p2 = g_slist_nth_data (slist, i+1); - - g_assert (GPOINTER_TO_INT (p1) <= GPOINTER_TO_INT (p2)); - DEBUG_MSG (("slist_sort_with_data #%3.3d ---> %d", i, GPOINTER_TO_INT (p1))); - } -} - -static void -test_slist_insert_sorted (void) -{ - GSList *slist = NULL; - gint i; - - PRINT_MSG (("testing g_slist_insert_sorted()")); - - for (i = 0; i < SIZE; i++) { - slist = g_slist_insert_sorted (slist, GINT_TO_POINTER (array[i]), sort); - } - - for (i = 0; i < SIZE - 1; i++) { - gpointer p1, p2; - - p1 = g_slist_nth_data (slist, i); - p2 = g_slist_nth_data (slist, i+1); - - g_assert (GPOINTER_TO_INT (p1) <= GPOINTER_TO_INT (p2)); - DEBUG_MSG (("slist_insert_sorted #%3.3d ---> %d", i, GPOINTER_TO_INT (p1))); - } -} - -static void -test_slist_insert_sorted_with_data (void) -{ - GSList *slist = NULL; - gint i; - - PRINT_MSG (("testing g_slist_insert_sorted_with_data()")); - - for (i = 0; i < SIZE; i++) { - slist = g_slist_insert_sorted_with_data (slist, - GINT_TO_POINTER (array[i]), - (GCompareDataFunc)sort, - NULL); - } - - for (i = 0; i < SIZE - 1; i++) { - gpointer p1, p2; - - p1 = g_slist_nth_data (slist, i); - p2 = g_slist_nth_data (slist, i+1); - - g_assert (GPOINTER_TO_INT (p1) <= GPOINTER_TO_INT (p2)); - DEBUG_MSG (("slist_insert_sorted_with_data #%3.3d ---> %d", i, GPOINTER_TO_INT (p1))); - } -} - -static void -test_slist_reverse (void) -{ - GSList *slist = NULL; - GSList *st; - gint nums[10] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 }; - gint i; - - PRINT_MSG (("testing g_slist_reverse()")); - - for (i = 0; i < 10; i++) { - slist = g_slist_append (slist, &nums[i]); - } - - slist = g_slist_reverse (slist); - - for (i = 0; i < 10; i++) { - st = g_slist_nth (slist, i); - g_assert (*((gint*) st->data) == (9 - i)); - } - - g_slist_free (slist); -} - -static void -test_slist_nth (void) -{ - GSList *slist = NULL; - GSList *st; - gint nums[10] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 }; - gint i; - - PRINT_MSG (("testing g_slist_nth()")); - - for (i = 0; i < 10; i++) { - slist = g_slist_append (slist, &nums[i]); - } - - for (i = 0; i < 10; i++) { - st = g_slist_nth (slist, i); - g_assert (*((gint*) st->data) == i); - } - - g_slist_free (slist); -} - -int -main (int argc, char *argv[]) -{ - gint i; - - DEBUG_MSG (("debugging messages turned on")); - - DEBUG_MSG (("creating %d random numbers", SIZE)); - - /* Create an array of random numbers. */ - for (i = 0; i < SIZE; i++) { - array[i] = g_random_int_range (NUMBER_MIN, NUMBER_MAX); - DEBUG_MSG (("number #%3.3d ---> %d", i, array[i])); - } - - /* Start tests. */ - test_slist_sort (); - test_slist_sort_with_data (); - - test_slist_insert_sorted (); - test_slist_insert_sorted_with_data (); - - test_slist_reverse (); - test_slist_nth (); - - PRINT_MSG (("testing finished")); - - return 0; -} diff --git a/tests/testingbase64.c b/tests/testingbase64.c deleted file mode 100644 index 3e64d1a..0000000 --- a/tests/testingbase64.c +++ /dev/null @@ -1,236 +0,0 @@ -/* GLib testing framework examples and tests - * Copyright (C) 2008 Asbjoern Pettersen - * - * This work is provided "as is"; redistribution and modification - * in whole or in part, in any medium, physical or electronic is - * permitted without restriction. - * - * This work 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. - * - * In no event shall the authors or contributors be liable for any - * direct, indirect, incidental, special, exemplary, or consequential - * damages (including, but not limited to, procurement of substitute - * goods or services; loss of use, data, or profits; or business - * interruption) however caused and on any theory of liability, whether - * in contract, strict liability, or tort (including negligence or - * otherwise) arising in any way out of the use of this software, even - * if advised of the possibility of such damage. - */ - -#include -#include -#include -#include -#ifdef HAVE_UNISTD_H -#include -#endif - -#define DATA_SIZE 1024 - -struct MyRawData -{ - gint length; /* of data */ - guchar data[DATA_SIZE]; -}; - -/* 100 pre-encoded string from data[] buffer. Data length from 1..100 - */ -static const char *ok_100_encode_strs[] = { - "AA==", - "AAE=", - "AAEC", - "AAECAw==", - "AAECAwQ=", - "AAECAwQF", - "AAECAwQFBg==", - "AAECAwQFBgc=", - "AAECAwQFBgcI", - "AAECAwQFBgcICQ==", - "AAECAwQFBgcICQo=", - "AAECAwQFBgcICQoL", - "AAECAwQFBgcICQoLDA==", - "AAECAwQFBgcICQoLDA0=", - "AAECAwQFBgcICQoLDA0O", - "AAECAwQFBgcICQoLDA0ODw==", - "AAECAwQFBgcICQoLDA0ODxA=", - "AAECAwQFBgcICQoLDA0ODxAR", - "AAECAwQFBgcICQoLDA0ODxAREg==", - "AAECAwQFBgcICQoLDA0ODxAREhM=", - "AAECAwQFBgcICQoLDA0ODxAREhMU", - "AAECAwQFBgcICQoLDA0ODxAREhMUFQ==", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRY=", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYX", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGA==", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBk=", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBka", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGw==", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxw=", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwd", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHg==", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8=", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8g", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gIQ==", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISI=", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIj", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJA==", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCU=", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUm", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJw==", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJyg=", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygp", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKg==", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKis=", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKiss", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLQ==", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4=", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4v", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMA==", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDE=", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEy", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMw==", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ=", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1Ng==", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1Njc=", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1Njc4", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1Njc4OQ==", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo=", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7PA==", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7PD0=", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7PD0+", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7PD0+Pw==", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7PD0+P0A=", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7PD0+P0BB", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7PD0+P0BBQg==", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7PD0+P0BBQkM=", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7PD0+P0BBQkNE", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7PD0+P0BBQkNERQ==", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7PD0+P0BBQkNERUY=", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7PD0+P0BBQkNERUZH", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7PD0+P0BBQkNERUZHSA==", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7PD0+P0BBQkNERUZHSEk=", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7PD0+P0BBQkNERUZHSElK", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7PD0+P0BBQkNERUZHSElKSw==", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7PD0+P0BBQkNERUZHSElKS0w=", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7PD0+P0BBQkNERUZHSElKS0xN", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7PD0+P0BBQkNERUZHSElKS0xNTg==", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7PD0+P0BBQkNERUZHSElKS0xNTk8=", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7PD0+P0BBQkNERUZHSElKS0xNTk9Q", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7PD0+P0BBQkNERUZHSElKS0xNTk9QUQ==", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7PD0+P0BBQkNERUZHSElKS0xNTk9QUVI=", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7PD0+P0BBQkNERUZHSElKS0xNTk9QUVJT", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7PD0+P0BBQkNERUZHSElKS0xNTk9QUVJTVA==", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7PD0+P0BBQkNERUZHSElKS0xNTk9QUVJTVFU=", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7PD0+P0BBQkNERUZHSElKS0xNTk9QUVJTVFVW", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7PD0+P0BBQkNERUZHSElKS0xNTk9QUVJTVFVWVw==", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7PD0+P0BBQkNERUZHSElKS0xNTk9QUVJTVFVWV1g=", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7PD0+P0BBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZ", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7PD0+P0BBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWg==", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7PD0+P0BBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWls=", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7PD0+P0BBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWltc", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7PD0+P0BBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWltcXQ==", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7PD0+P0BBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWltcXV4=", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7PD0+P0BBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWltcXV5f", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7PD0+P0BBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWltcXV5fYA==", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7PD0+P0BBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWltcXV5fYGE=", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7PD0+P0BBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWltcXV5fYGFi", - "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7PD0+P0BBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWltcXV5fYGFiYw==", - NULL -}; - -static void -generate_databuffer_for_base64 (struct MyRawData *p) -{ - int i; - for (i = 0; i < DATA_SIZE; i++) - p->data[i] = i; -} - -static void -test_base64_encode (void) -{ - int i; - gint length = 1; - char *text; - struct MyRawData myraw; - - generate_databuffer_for_base64 (&myraw); - - for (i = 0; ok_100_encode_strs[i]; i++) - { - length = i + 1; - text = g_base64_encode (myraw.data, length); - g_assert_cmpstr (text, ==, ok_100_encode_strs[i]); - /* printf ("\"%s\",\n",text); */ - g_free (text); - } -} - - -static void -decode_and_compare (const gchar *datap, - const struct MyRawData *p) -{ - guchar *data2; - gsize len; - int memcmp_decode; - - data2 = g_base64_decode (datap, &len); - g_assert_cmpint (len, ==, p->length); - /* g_print ("length: got %d, expected %d\n",len, length); */ - memcmp_decode = memcmp (p->data, data2, p->length); - g_assert_cmpint (memcmp_decode, ==, 0); - g_free (data2); -} - -static void -test_base64_decode (void) -{ - int i; - struct MyRawData myraw; - - generate_databuffer_for_base64 (&myraw); - - for (i = 0; ok_100_encode_strs[i]; i++) - { - myraw.length = i + 1; - decode_and_compare (ok_100_encode_strs[i], &myraw); - } -} - -static void -test_base64_encode_decode (void) -{ - int i; - char *text; - struct MyRawData myraw; - - generate_databuffer_for_base64 (&myraw); - - for (i = 0; i < DATA_SIZE; i++) - { - myraw.length = i + 1; - text = g_base64_encode (myraw.data, myraw.length); - - decode_and_compare (text, &myraw); - - g_free (text); - } -} - - -int -main (int argc, - char *argv[]) -{ - g_test_init (&argc, &argv, NULL); - - g_test_add_func ("/misc/base64/encode", test_base64_encode); - g_test_add_func ("/misc/base64/decode", test_base64_decode); - g_test_add_func ("/misc/base64/encode_decode", test_base64_encode_decode); - - return g_test_run(); -} diff --git a/tests/tree-test.c b/tests/tree-test.c deleted file mode 100644 index c5cb105..0000000 --- a/tests/tree-test.c +++ /dev/null @@ -1,246 +0,0 @@ -/* GLIB - Library of useful routines for C programming - * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald - * - * 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., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. - */ - -/* - * Modified by the GLib Team and others 1997-2000. See the AUTHORS - * file for a list of people on the GLib Team. See the ChangeLog - * files for a list of changes. These files are distributed with - * GLib at ftp://ftp.gtk.org/pub/gtk/. - */ - -#undef G_DISABLE_ASSERT -#undef G_LOG_DOMAIN - -#include -#include -#include "glib.h" - - -static gint -my_compare (gconstpointer a, - gconstpointer b) -{ - const char *cha = a; - const char *chb = b; - - return *cha - *chb; -} - -static gint -my_search (gconstpointer a, - gconstpointer b) -{ - return my_compare (b, a); -} - -static gpointer destroyed_key = NULL; -static gpointer destroyed_value = NULL; - -static void -my_key_destroy (gpointer key) -{ - destroyed_key = key; -} - -static void -my_value_destroy (gpointer value) -{ - destroyed_value = value; -} - -static gint -my_traverse (gpointer key, - gpointer value, - gpointer data) -{ - char *ch = key; - g_assert ((*ch) > 0); - return FALSE; -} - -char chars[] = - "0123456789" - "ABCDEFGHIJKLMNOPQRSTUVWXYZ" - "abcdefghijklmnopqrstuvwxyz"; - -char chars2[] = - "0123456789" - "abcdefghijklmnopqrstuvwxyz"; - -static gint -check_order (gpointer key, - gpointer value, - gpointer data) -{ - char **p = data; - char *ch = key; - - g_assert (**p == *ch); - - (*p)++; - - return FALSE; -} - - - -int -main (int argc, - char *argv[]) -{ - gint i; - GTree *tree; - gboolean removed; - char c, d; - char *p; - - tree = g_tree_new (my_compare); - - for (i = 0; chars[i]; i++) - g_tree_insert (tree, &chars[i], &chars[i]); - - g_tree_foreach (tree, my_traverse, NULL); - - g_assert (g_tree_nnodes (tree) == strlen (chars)); - g_assert (g_tree_height (tree) == 6); - - p = chars; - g_tree_foreach (tree, check_order, &p); - - for (i = 0; i < 26; i++) - { - removed = g_tree_remove (tree, &chars[i + 10]); - g_assert (removed); - } - - c = '\0'; - removed = g_tree_remove (tree, &c); - g_assert (removed == FALSE); - - g_tree_foreach (tree, my_traverse, NULL); - - g_assert (g_tree_nnodes (tree) == strlen (chars2)); - g_assert (g_tree_height (tree) == 6); - - p = chars2; - g_tree_foreach (tree, check_order, &p); - - for (i = 25; i >= 0; i--) - g_tree_insert (tree, &chars[i + 10], &chars[i + 10]); - - p = chars; - g_tree_foreach (tree, check_order, &p); - - c = '0'; - p = g_tree_lookup (tree, &c); - g_assert (p && *p == c); - - c = 'A'; - p = g_tree_lookup (tree, &c); - g_assert (p && *p == c); - - c = 'a'; - p = g_tree_lookup (tree, &c); - g_assert (p && *p == c); - - c = 'z'; - p = g_tree_lookup (tree, &c); - g_assert (p && *p == c); - - c = '!'; - p = g_tree_lookup (tree, &c); - g_assert (p == NULL); - - c = '='; - p = g_tree_lookup (tree, &c); - g_assert (p == NULL); - - c = '|'; - p = g_tree_lookup (tree, &c); - g_assert (p == NULL); - - c = '0'; - p = g_tree_search (tree, my_search, &c); - g_assert (p && *p == c); - - c = 'A'; - p = g_tree_search (tree, my_search, &c); - g_assert (p && *p == c); - - c = 'a'; - p = g_tree_search (tree, my_search, &c); - g_assert (p &&*p == c); - - c = 'z'; - p = g_tree_search (tree, my_search, &c); - g_assert (p && *p == c); - - c = '!'; - p = g_tree_search (tree, my_search, &c); - g_assert (p == NULL); - - c = '='; - p = g_tree_search (tree, my_search, &c); - g_assert (p == NULL); - - c = '|'; - p = g_tree_search (tree, my_search, &c); - g_assert (p == NULL); - - - g_tree_destroy (tree); - - tree = g_tree_new_full ((GCompareDataFunc)my_compare, NULL, - my_key_destroy, - my_value_destroy); - - for (i = 0; chars[i]; i++) - g_tree_insert (tree, &chars[i], &chars[i]); - - c = '0'; - g_tree_insert (tree, &c, &c); - g_assert (destroyed_key == &c); - g_assert (destroyed_value == &chars[0]); - destroyed_key = NULL; - destroyed_value = NULL; - - d = '1'; - g_tree_replace (tree, &d, &d); - g_assert (destroyed_key == &chars[1]); - g_assert (destroyed_value == &chars[1]); - destroyed_key = NULL; - destroyed_value = NULL; - - c = '2'; - removed = g_tree_remove (tree, &c); - g_assert (removed); - g_assert (destroyed_key == &chars[2]); - g_assert (destroyed_value == &chars[2]); - destroyed_key = NULL; - destroyed_value = NULL; - - c = '3'; - removed = g_tree_steal (tree, &c); - g_assert (removed); - g_assert (destroyed_key == NULL); - g_assert (destroyed_value == NULL); - - return 0; -} - diff --git a/tests/uri-test.c b/tests/uri-test.c deleted file mode 100644 index eb46676..0000000 --- a/tests/uri-test.c +++ /dev/null @@ -1,477 +0,0 @@ -/* GLIB - Library of useful routines for C programming - * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald - * - * 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., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. - */ - -/* - * Modified by the GLib Team and others 1997-2000. See the AUTHORS - * file for a list of people on the GLib Team. See the ChangeLog - * files for a list of changes. These files are distributed with - * GLib at ftp://ftp.gtk.org/pub/gtk/. - */ - -#undef G_DISABLE_ASSERT -#undef G_LOG_DOMAIN - -#include "config.h" - -#include -#include -#include -#include - -typedef struct -{ - char *filename; - char *hostname; - char *expected_result; - GConvertError expected_error; /* If failed */ -} ToUriTest; - -ToUriTest -to_uri_tests[] = { - { "/etc", NULL, "file:///etc"}, - { "/etc", "", "file:///etc"}, - { "/etc", "otherhost", "file://otherhost/etc"}, -#ifdef G_OS_WIN32 - { "/etc", "localhost", "file:///etc"}, - { "c:\\windows", NULL, "file:///c:/windows"}, - { "c:\\windows", "localhost", "file:///c:/windows"}, - { "c:\\windows", "otherhost", "file://otherhost/c:/windows"}, - { "\\\\server\\share\\dir", NULL, "file:////server/share/dir"}, - { "\\\\server\\share\\dir", "localhost", "file:////server/share/dir"}, -#else - { "/etc", "localhost", "file://localhost/etc"}, - { "c:\\windows", NULL, NULL, G_CONVERT_ERROR_NOT_ABSOLUTE_PATH}, /* it's important to get this error on Unix */ - { "c:\\windows", "localhost", NULL, G_CONVERT_ERROR_NOT_ABSOLUTE_PATH}, - { "c:\\windows", "otherhost", NULL, G_CONVERT_ERROR_NOT_ABSOLUTE_PATH}, -#endif - { "etc", "localhost", NULL, G_CONVERT_ERROR_NOT_ABSOLUTE_PATH}, -#ifndef G_PLATFORM_WIN32 - { "/etc/\xE5\xE4\xF6", NULL, "file:///etc/%E5%E4%F6" }, - { "/etc/\xC3\xB6\xC3\xA4\xC3\xA5", NULL, "file:///etc/%C3%B6%C3%A4%C3%A5"}, -#endif - { "/etc", "\xC3\xB6\xC3\xA4\xC3\xA5", NULL, G_CONVERT_ERROR_ILLEGAL_SEQUENCE}, - { "/etc", "\xE5\xE4\xF6", NULL, G_CONVERT_ERROR_ILLEGAL_SEQUENCE}, - { "/etc/file with #%", NULL, "file:///etc/file%20with%20%23%25"}, - { "", NULL, NULL, G_CONVERT_ERROR_NOT_ABSOLUTE_PATH}, - { "", "", NULL, G_CONVERT_ERROR_NOT_ABSOLUTE_PATH}, - { "", "localhost", NULL, G_CONVERT_ERROR_NOT_ABSOLUTE_PATH}, - { "", "otherhost", NULL, G_CONVERT_ERROR_NOT_ABSOLUTE_PATH}, - { "/0123456789", NULL, "file:///0123456789"}, - { "/ABCDEFGHIJKLMNOPQRSTUVWXYZ", NULL, "file:///ABCDEFGHIJKLMNOPQRSTUVWXYZ"}, - { "/abcdefghijklmnopqrstuvwxyz", NULL, "file:///abcdefghijklmnopqrstuvwxyz"}, - { "/-_.!~*'()", NULL, "file:///-_.!~*'()"}, -#ifdef G_OS_WIN32 - /* As '\\' is a path separator on Win32, it gets turned into '/' in the URI */ - { "/\"#%<>[\\]^`{|}\x7F", NULL, "file:///%22%23%25%3C%3E%5B/%5D%5E%60%7B%7C%7D%7F"}, -#else - /* On Unix, '\\' is a normal character in the file name */ - { "/\"#%<>[\\]^`{|}\x7F", NULL, "file:///%22%23%25%3C%3E%5B%5C%5D%5E%60%7B%7C%7D%7F"}, -#endif - { "/;@+$,", NULL, "file:///%3B@+$,"}, - /* This and some of the following are of course as such illegal file names on Windows, - * and would not occur in real life. - */ - { "/:", NULL, "file:///:"}, - { "/?&=", NULL, "file:///%3F&="}, - { "/", "0123456789-", NULL, G_CONVERT_ERROR_ILLEGAL_SEQUENCE}, - { "/", "ABCDEFGHIJKLMNOPQRSTUVWXYZ", "file://ABCDEFGHIJKLMNOPQRSTUVWXYZ/"}, - { "/", "abcdefghijklmnopqrstuvwxyz", "file://abcdefghijklmnopqrstuvwxyz/"}, - { "/", "_.!~*'()", NULL, G_CONVERT_ERROR_ILLEGAL_SEQUENCE}, - { "/", "\"#%<>[\\]^`{|}\x7F", NULL, G_CONVERT_ERROR_ILLEGAL_SEQUENCE}, - { "/", ";?&=+$,", NULL, G_CONVERT_ERROR_ILLEGAL_SEQUENCE}, - { "/", "/", NULL, G_CONVERT_ERROR_ILLEGAL_SEQUENCE}, - { "/", "@:", NULL, G_CONVERT_ERROR_ILLEGAL_SEQUENCE}, - { "/", "\x80\xFF", NULL, G_CONVERT_ERROR_ILLEGAL_SEQUENCE}, - { "/", "\xC3\x80\xC3\xBF", NULL, G_CONVERT_ERROR_ILLEGAL_SEQUENCE}, -}; - - -typedef struct -{ - char *uri; - char *expected_filename; - char *expected_hostname; - GConvertError expected_error; /* If failed */ -} FromUriTest; - -FromUriTest -from_uri_tests[] = { - { "file:///etc", "/etc"}, - { "file:/etc", "/etc"}, -#ifdef G_OS_WIN32 - /* On Win32 we don't return "localhost" hostames, just in case - * it isn't recognized anyway. - */ - { "file://localhost/etc", "/etc", NULL}, - { "file://localhost/etc/%23%25%20file", "/etc/#% file", NULL}, - { "file://localhost/\xE5\xE4\xF6", "/\xe5\xe4\xf6", NULL}, - { "file://localhost/%E5%E4%F6", "/\xe5\xe4\xf6", NULL}, -#else - { "file://localhost/etc", "/etc", "localhost"}, - { "file://localhost/etc/%23%25%20file", "/etc/#% file", "localhost"}, - { "file://localhost/\xE5\xE4\xF6", "/\xe5\xe4\xf6", "localhost"}, - { "file://localhost/%E5%E4%F6", "/\xe5\xe4\xf6", "localhost"}, -#endif - { "file://otherhost/etc", "/etc", "otherhost"}, - { "file://otherhost/etc/%23%25%20file", "/etc/#% file", "otherhost"}, - { "file://%C3%B6%C3%A4%C3%A5/etc", NULL, NULL, G_CONVERT_ERROR_BAD_URI}, - { "file:////etc/%C3%B6%C3%C3%C3%A5", "//etc/\xc3\xb6\xc3\xc3\xc3\xa5", NULL}, - { "file://\xE5\xE4\xF6/etc", NULL, NULL, G_CONVERT_ERROR_BAD_URI}, - { "file://%E5%E4%F6/etc", NULL, NULL, G_CONVERT_ERROR_BAD_URI}, - { "file:///some/file#bad", NULL, NULL, G_CONVERT_ERROR_BAD_URI}, - { "file://some", NULL, NULL, G_CONVERT_ERROR_BAD_URI}, - { "", NULL, NULL, G_CONVERT_ERROR_BAD_URI}, - { "file:test", NULL, NULL, G_CONVERT_ERROR_BAD_URI}, - { "http://www.yahoo.com/", NULL, NULL, G_CONVERT_ERROR_BAD_URI}, - { "file:////etc", "//etc"}, - { "file://///etc", "///etc"}, -#ifdef G_OS_WIN32 - /* URIs with backslashes come from some nonstandard application, but accept them anyhow */ - { "file:///c:\\foo", "c:\\foo"}, - { "file:///c:/foo\\bar", "c:\\foo\\bar"}, - /* Accept also the old Netscape drive-letter-and-vertical bar convention */ - { "file:///c|/foo", "c:\\foo"}, - { "file:////server/share/dir", "\\\\server\\share\\dir"}, - { "file://localhost//server/share/foo", "\\\\server\\share\\foo"}, - { "file://otherhost//server/share/foo", "\\\\server\\share\\foo", "otherhost"}, -#else - { "file:///c:\\foo", "/c:\\foo"}, - { "file:///c:/foo", "/c:/foo"}, - { "file:////c:/foo", "//c:/foo"}, -#endif - { "file://0123456789/", NULL, NULL, G_CONVERT_ERROR_BAD_URI}, - { "file://ABCDEFGHIJKLMNOPQRSTUVWXYZ/", "/", "ABCDEFGHIJKLMNOPQRSTUVWXYZ"}, - { "file://abcdefghijklmnopqrstuvwxyz/", "/", "abcdefghijklmnopqrstuvwxyz"}, - { "file://-_.!~*'()/", NULL, NULL, G_CONVERT_ERROR_BAD_URI}, - { "file://\"<>[\\]^`{|}\x7F/", NULL, NULL, G_CONVERT_ERROR_BAD_URI}, - { "file://;?&=+$,/", NULL, NULL, G_CONVERT_ERROR_BAD_URI}, - { "file://%C3%80%C3%BF/", NULL, NULL, G_CONVERT_ERROR_BAD_URI}, - { "file://@/", NULL, NULL, G_CONVERT_ERROR_BAD_URI}, - { "file://:/", NULL, NULL, G_CONVERT_ERROR_BAD_URI}, - { "file://#/", NULL, NULL, G_CONVERT_ERROR_BAD_URI}, - { "file://%23/", NULL, NULL, G_CONVERT_ERROR_BAD_URI}, - { "file://%2F/", NULL, NULL, G_CONVERT_ERROR_BAD_URI}, -}; - - -static gboolean any_failed = FALSE; - -static void -run_to_uri_tests (void) -{ - int i; - gchar *res; - GError *error; - - for (i = 0; i < G_N_ELEMENTS (to_uri_tests); i++) - { - error = NULL; - res = g_filename_to_uri (to_uri_tests[i].filename, - to_uri_tests[i].hostname, - &error); - - if (to_uri_tests[i].expected_result == NULL) - { - if (res != NULL) - { - g_print ("\ng_filename_to_uri() test %d failed, expected to return NULL, actual result: %s\n", i, res); - any_failed = TRUE; - } - else - { - if (error == NULL) - { - g_print ("\ng_filename_to_uri() test %d failed, returned NULL, but didn't set error\n", i); - any_failed = TRUE; - } - else if (error->domain != G_CONVERT_ERROR) - { - g_print ("\ng_filename_to_uri() test %d failed, returned NULL, set non G_CONVERT_ERROR error\n", i); - any_failed = TRUE; - } - else if (error->code != to_uri_tests[i].expected_error) - { - g_print ("\ng_filename_to_uri() test %d failed as expected, but set wrong errorcode %d instead of expected %d \n", - i, error->code, to_uri_tests[i].expected_error); - any_failed = TRUE; - } - } - } - else if (res == NULL || strcmp (res, to_uri_tests[i].expected_result) != 0) - { - g_print ("\ng_filename_to_uri() test %d failed, expected result: %s, actual result: %s\n", - i, to_uri_tests[i].expected_result, (res) ? res : "NULL"); - if (error) - g_print ("Error message: %s\n", error->message); - any_failed = TRUE; - } - g_free (res); - } -} - -static void -run_from_uri_tests (void) -{ - int i; - gchar *res; - gchar *hostname; - GError *error; - - for (i = 0; i < G_N_ELEMENTS (from_uri_tests); i++) - { - error = NULL; - res = g_filename_from_uri (from_uri_tests[i].uri, - &hostname, - &error); - - if (from_uri_tests[i].expected_filename == NULL) - { - if (res != NULL) - { - g_print ("\ng_filename_from_uri() test %d failed, expected to return NULL, actual result: %s\n", i, res); - any_failed = TRUE; - } - else - { - if (error == NULL) - { - g_print ("\ng_filename_from_uri() test %d failed, returned NULL, but didn't set error\n", i); - any_failed = TRUE; - } - else if (error->domain != G_CONVERT_ERROR) - { - g_print ("\ng_filename_from_uri() test %d failed, returned NULL, set non G_CONVERT_ERROR error\n", i); - any_failed = TRUE; - } - else if (error->code != from_uri_tests[i].expected_error) - { - g_print ("\ng_filename_from_uri() test %d failed as expected, but set wrong errorcode %d instead of expected %d \n", - i, error->code, from_uri_tests[i].expected_error); - any_failed = TRUE; - } - } - } - else - { -#ifdef G_OS_WIN32 - gchar *slash, *p; - - p = from_uri_tests[i].expected_filename = g_strdup (from_uri_tests[i].expected_filename); - while ((slash = strchr (p, '/')) != NULL) - { - *slash = '\\'; - p = slash + 1; - } -#endif - if (res == NULL || strcmp (res, from_uri_tests[i].expected_filename) != 0) - { - g_print ("\ng_filename_from_uri() test %d failed, expected result: %s, actual result: %s\n", - i, from_uri_tests[i].expected_filename, (res) ? res : "NULL"); - any_failed = TRUE; - } - - if (from_uri_tests[i].expected_hostname == NULL) - { - if (hostname != NULL) - { - g_print ("\ng_filename_from_uri() test %d failed, expected no hostname, got: %s\n", - i, hostname); - any_failed = TRUE; - } - } - else if (hostname == NULL || - strcmp (hostname, from_uri_tests[i].expected_hostname) != 0) - { - g_print ("\ng_filename_from_uri() test %d failed, expected hostname: %s, actual result: %s\n", - i, from_uri_tests[i].expected_hostname, (hostname) ? hostname : "NULL"); - any_failed = TRUE; - } - } - } -} - -static gint -safe_strcmp (const gchar *a, const gchar *b) -{ - return strcmp (a ? a : "", b ? b : ""); -} - -static gint -safe_strcmp_filename (const gchar *a, const gchar *b) -{ -#ifndef G_OS_WIN32 - return safe_strcmp (a, b); -#else - if (!a || !b) - return safe_strcmp (a, b); - else - { - while (*a && *b) - { - if ((G_IS_DIR_SEPARATOR (*a) && G_IS_DIR_SEPARATOR (*b)) || - *a == *b) - a++, b++; - else - return (*a - *b); - } - return (*a - *b); - } -#endif -} - -static gint -safe_strcmp_hostname (const gchar *a, const gchar *b) -{ -#ifndef G_OS_WIN32 - return safe_strcmp (a, b); -#else - if (safe_strcmp (a, "localhost") == 0 && b == NULL) - return 0; - else - return safe_strcmp (a, b); -#endif -} - -static void -run_roundtrip_tests (void) -{ - int i; - gchar *uri, *hostname, *res; - GError *error; - - for (i = 0; i < G_N_ELEMENTS (to_uri_tests); i++) - { - if (to_uri_tests[i].expected_error != 0) - continue; - - error = NULL; - uri = g_filename_to_uri (to_uri_tests[i].filename, - to_uri_tests[i].hostname, - &error); - - if (error != NULL) - { - g_print ("g_filename_to_uri failed unexpectedly: %s\n", - error->message); - any_failed = TRUE; - continue; - } - - error = NULL; - res = g_filename_from_uri (uri, &hostname, &error); - if (error != NULL) - { - g_print ("g_filename_from_uri failed unexpectedly: %s\n", - error->message); - any_failed = TRUE; - continue; - } - - if (safe_strcmp_filename (to_uri_tests[i].filename, res)) - { - g_print ("roundtrip test %d failed, filename modified: " - " expected \"%s\", but got \"%s\"\n", - i, to_uri_tests[i].filename, res); - any_failed = TRUE; - } - - if (safe_strcmp_hostname (to_uri_tests[i].hostname, hostname)) - { - g_print ("roundtrip test %d failed, hostname modified: " - " expected \"%s\", but got \"%s\"\n", - i, to_uri_tests[i].hostname, hostname); - any_failed = TRUE; - } - } -} - -static void -run_uri_list_tests (void) -{ - /* straight from the RFC */ - gchar *list = - "# urn:isbn:0-201-08372-8\r\n" - "http://www.huh.org/books/foo.html\r\n" - "http://www.huh.org/books/foo.pdf \r\n" - " ftp://ftp.foo.org/books/foo.txt\r\n"; - gchar *expected_uris[] = { - "http://www.huh.org/books/foo.html", - "http://www.huh.org/books/foo.pdf", - "ftp://ftp.foo.org/books/foo.txt" - }; - - gchar **uris; - gint j; - - uris = g_uri_list_extract_uris (list); - - if (g_strv_length (uris) != 3) - { - g_print ("uri list test failed: " - " expected %d uris, but got %d\n", - 3, g_strv_length (uris)); - any_failed = TRUE; - } - - for (j = 0; j < 3; j++) - { - if (safe_strcmp (uris[j], expected_uris[j])) - { - g_print ("uri list test failed: " - " expected \"%s\", but got \"%s\"\n", - expected_uris[j], uris[j]); - any_failed = TRUE; - } - } - - g_strfreev (uris); - - uris = g_uri_list_extract_uris ("# just hot air\r\n# more hot air"); - if (g_strv_length (uris) != 0) - { - g_print ("uri list test 2 failed: " - " expected %d uris, but got %d (first is \"%s\")\n", - 0, g_strv_length (uris), uris[0]); - any_failed = TRUE; - } - -} - -int -main (int argc, - char *argv[]) -{ -#ifdef G_OS_UNIX -# ifdef HAVE_UNSETENV - unsetenv ("G_BROKEN_FILENAMES"); -# else - /* putenv with no = isn't standard, but works to unset the variable - * on some systems - */ - putenv ("G_BROKEN_FILENAMES"); -# endif -#endif - - run_to_uri_tests (); - run_from_uri_tests (); - run_roundtrip_tests (); - run_uri_list_tests (); - - return any_failed ? 1 : 0; -} diff --git a/tests/utf8-pointer.c b/tests/utf8-pointer.c deleted file mode 100644 index 91df96e..0000000 --- a/tests/utf8-pointer.c +++ /dev/null @@ -1,112 +0,0 @@ -/* GLIB - Library of useful routines for C programming - * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald - * - * 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., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. - */ - -/* - * Modified by the GLib Team and others 1997-2000. See the AUTHORS - * file for a list of people on the GLib Team. See the ChangeLog - * files for a list of changes. These files are distributed with - * GLib at ftp://ftp.gtk.org/pub/gtk/. - */ - -#include -#include - -/* Test conversions between offsets and pointers */ - -static void test_utf8 (gchar *string) -{ - gint num_chars; - gchar **p; - gint i, j; - - g_assert (g_utf8_validate (string, -1, NULL)); - - num_chars = g_utf8_strlen (string, -1); - - p = (gchar **) g_malloc (num_chars * sizeof (gchar *)); - - p[0] = string; - for (i = 1; i < num_chars; i++) - p[i] = g_utf8_next_char (p[i-1]); - - for (i = 0; i < num_chars; i++) - for (j = 0; j < num_chars; j++) - { - g_assert (g_utf8_offset_to_pointer (p[i], j - i) == p[j]); - g_assert (g_utf8_pointer_to_offset (p[i], p[j]) == j - i); - } - - g_free (p); -} - -gchar *longline = "asdasdas dsaf asfd as fdasdf asfd asdf as dfas dfasdf a" -"asd fasdf asdf asdf asd fasfd as fdasfd asdf as fdççççççççças ffsd asfd as fdASASASAs As" -"Asfdsf sdfg sdfg dsfg dfg sdfgsdfgsdfgsdfg sdfgsdfg sdfg sdfg sdf gsdfg sdfg sd" -"asd fasdf asdf asdf asd fasfd as fdaèèèèèèè òòòòòòòòòòòòsfd asdf as fdas ffsd asfd as fdASASASAs D" -"Asfdsf sdfg sdfg dsfg dfg sdfgsdfgsdfgsdfg sdfgsdfg sdfgùùùùùùùùùùùùùù sdfg sdf gsdfg sdfg sd" -"asd fasdf asdf asdf asd fasfd as fdasfd asd@@@@@@@f as fdas ffsd asfd as fdASASASAs D " -"Asfdsf sdfg sdfg dsfg dfg sdfgsdfgsdfgsdfg sdfgsdf€€€€€€€€€€€€€€€€€€g sdfg sdfg sdf gsdfg sdfg sd" -"asd fasdf asdf asdf asd fasfd as fdasfd asdf as fdas ffsd asfd as fdASASASAs D" -"Asfdsf sdfg sdfg dsfg dfg sdfgsdfgsdfgsdfg sdfgsdfg sdfg sdfg sdf gsdfg sdfg sd\n\nlalala\n"; - -static void -test_length (void) -{ - g_assert (g_utf8_strlen ("1234", -1) == 4); - g_assert (g_utf8_strlen ("1234", 0) == 0); - g_assert (g_utf8_strlen ("1234", 1) == 1); - g_assert (g_utf8_strlen ("1234", 2) == 2); - g_assert (g_utf8_strlen ("1234", 3) == 3); - g_assert (g_utf8_strlen ("1234", 4) == 4); - g_assert (g_utf8_strlen ("1234", 5) == 4); - - g_assert (g_utf8_strlen (longline, -1) == 762); - g_assert (g_utf8_strlen (longline, strlen (longline)) == 762); - g_assert (g_utf8_strlen (longline, 1024) == 762); - - g_assert (g_utf8_strlen (NULL, 0) == 0); - - g_assert (g_utf8_strlen ("a\340\250\201c", -1) == 3); - g_assert (g_utf8_strlen ("a\340\250\201c", 1) == 1); - g_assert (g_utf8_strlen ("a\340\250\201c", 2) == 1); - g_assert (g_utf8_strlen ("a\340\250\201c", 3) == 1); - g_assert (g_utf8_strlen ("a\340\250\201c", 4) == 2); - g_assert (g_utf8_strlen ("a\340\250\201c", 5) == 3); -} - -static void -test_misc (void) -{ - char *s; - s = g_utf8_strreverse ("1234", -1); - g_assert (strcmp (s, "4321") == 0); - g_free (s); - s = g_utf8_strreverse ("1234", 3); - g_assert (strcmp (s, "321") == 0); - g_free (s); -} - -int main (int argc, char *argv[]) -{ - test_utf8 (longline); - test_length (); - test_misc (); - - return 0; -} diff --git a/tests/utf8-validate.c b/tests/utf8-validate.c deleted file mode 100644 index 98f0b1f..0000000 --- a/tests/utf8-validate.c +++ /dev/null @@ -1,319 +0,0 @@ -/* GLIB - Library of useful routines for C programming - * Copyright (C) 2001 Matthias Clasen - * - * 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., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. - */ - -#include "glib.h" - -#define UNICODE_VALID(Char) \ - ((Char) < 0x110000 && \ - (((Char) & 0xFFFFF800) != 0xD800) && \ - ((Char) < 0xFDD0 || (Char) > 0xFDEF) && \ - ((Char) & 0xFFFE) != 0xFFFE) - - - -static gboolean any_failed = FALSE; - -struct { - const gchar *text; - gint max_len; - gint offset; - gboolean valid; -} test[] = { - /* some tests to check max_len handling */ - /* length 1 */ - { "abcde", -1, 5, TRUE }, - { "abcde", 3, 3, TRUE }, - { "abcde", 5, 5, TRUE }, - { "abcde", 7, 5, FALSE }, - /* length 2 */ - { "\xc2\xa9\xc2\xa9\xc2\xa9", -1, 6, TRUE }, - { "\xc2\xa9\xc2\xa9\xc2\xa9", 1, 0, FALSE }, - { "\xc2\xa9\xc2\xa9\xc2\xa9", 2, 2, TRUE }, - { "\xc2\xa9\xc2\xa9\xc2\xa9", 3, 2, FALSE }, - { "\xc2\xa9\xc2\xa9\xc2\xa9", 4, 4, TRUE }, - { "\xc2\xa9\xc2\xa9\xc2\xa9", 5, 4, FALSE }, - { "\xc2\xa9\xc2\xa9\xc2\xa9", 6, 6, TRUE }, - { "\xc2\xa9\xc2\xa9\xc2\xa9", 7, 6, FALSE }, - /* length 3 */ - { "\xe2\x89\xa0\xe2\x89\xa0", -1, 6, TRUE }, - { "\xe2\x89\xa0\xe2\x89\xa0", 1, 0, FALSE }, - { "\xe2\x89\xa0\xe2\x89\xa0", 2, 0, FALSE }, - { "\xe2\x89\xa0\xe2\x89\xa0", 3, 3, TRUE }, - { "\xe2\x89\xa0\xe2\x89\xa0", 4, 3, FALSE }, - { "\xe2\x89\xa0\xe2\x89\xa0", 5, 3, FALSE }, - { "\xe2\x89\xa0\xe2\x89\xa0", 6, 6, TRUE }, - { "\xe2\x89\xa0\xe2\x89\xa0", 7, 6, FALSE }, - - /* examples from http://www.cl.cam.ac.uk/~mgk25/ucs/examples/UTF-8-test.txt */ - /* greek 'kosme' */ - { "\xce\xba\xe1\xbd\xb9\xcf\x83\xce\xbc\xce\xb5", -1, 11, TRUE }, - /* first sequence of each length */ - { "\x00", -1, 0, TRUE }, - { "\xc2\x80", -1, 2, TRUE }, - { "\xe0\xa0\x80", -1, 3, TRUE }, - { "\xf0\x90\x80\x80", -1, 4, TRUE }, - { "\xf8\x88\x80\x80\x80", -1, 0, FALSE }, - { "\xfc\x84\x80\x80\x80\x80", -1, 0, FALSE }, - /* last sequence of each length */ - { "\x7f", -1, 1, TRUE }, - { "\xdf\xbf", -1, 2, TRUE }, - { "\xef\xbf\xbf", -1, 0, FALSE }, - { "\xf7\xbf\xbf\xbf", -1, 0, FALSE }, - { "\xfb\xbf\xbf\xbf\xbf", -1, 0, FALSE }, - { "\xfd\xbf\xbf\xbf\xbf\xbf", -1, 0, FALSE }, - /* other boundary conditions */ - { "\xed\x9f\xbf", -1, 3, TRUE }, - { "\xee\x80\x80", -1, 3, TRUE }, - { "\xef\xbf\xbd", -1, 3, TRUE }, - { "\xf4\x8f\xbf\xbf", -1, 0, FALSE }, - { "\xf4\x90\x80\x80", -1, 0, FALSE }, - /* malformed sequences */ - /* continuation bytes */ - { "\x80", -1, 0, FALSE }, - { "\xbf", -1, 0, FALSE }, - { "\x80\xbf", -1, 0, FALSE }, - { "\x80\xbf\x80", -1, 0, FALSE }, - { "\x80\xbf\x80\xbf", -1, 0, FALSE }, - { "\x80\xbf\x80\xbf\x80", -1, 0, FALSE }, - { "\x80\xbf\x80\xbf\x80\xbf", -1, 0, FALSE }, - { "\x80\xbf\x80\xbf\x80\xbf\x80", -1, 0, FALSE }, - - /* all possible continuation byte */ - { "\x80", -1, 0, FALSE }, - { "\x81", -1, 0, FALSE }, - { "\x82", -1, 0, FALSE }, - { "\x83", -1, 0, FALSE }, - { "\x84", -1, 0, FALSE }, - { "\x85", -1, 0, FALSE }, - { "\x86", -1, 0, FALSE }, - { "\x87", -1, 0, FALSE }, - { "\x88", -1, 0, FALSE }, - { "\x89", -1, 0, FALSE }, - { "\x8a", -1, 0, FALSE }, - { "\x8b", -1, 0, FALSE }, - { "\x8c", -1, 0, FALSE }, - { "\x8d", -1, 0, FALSE }, - { "\x8e", -1, 0, FALSE }, - { "\x8f", -1, 0, FALSE }, - { "\x90", -1, 0, FALSE }, - { "\x91", -1, 0, FALSE }, - { "\x92", -1, 0, FALSE }, - { "\x93", -1, 0, FALSE }, - { "\x94", -1, 0, FALSE }, - { "\x95", -1, 0, FALSE }, - { "\x96", -1, 0, FALSE }, - { "\x97", -1, 0, FALSE }, - { "\x98", -1, 0, FALSE }, - { "\x99", -1, 0, FALSE }, - { "\x9a", -1, 0, FALSE }, - { "\x9b", -1, 0, FALSE }, - { "\x9c", -1, 0, FALSE }, - { "\x9d", -1, 0, FALSE }, - { "\x9e", -1, 0, FALSE }, - { "\x9f", -1, 0, FALSE }, - { "\xa0", -1, 0, FALSE }, - { "\xa1", -1, 0, FALSE }, - { "\xa2", -1, 0, FALSE }, - { "\xa3", -1, 0, FALSE }, - { "\xa4", -1, 0, FALSE }, - { "\xa5", -1, 0, FALSE }, - { "\xa6", -1, 0, FALSE }, - { "\xa7", -1, 0, FALSE }, - { "\xa8", -1, 0, FALSE }, - { "\xa9", -1, 0, FALSE }, - { "\xaa", -1, 0, FALSE }, - { "\xab", -1, 0, FALSE }, - { "\xac", -1, 0, FALSE }, - { "\xad", -1, 0, FALSE }, - { "\xae", -1, 0, FALSE }, - { "\xaf", -1, 0, FALSE }, - { "\xb0", -1, 0, FALSE }, - { "\xb1", -1, 0, FALSE }, - { "\xb2", -1, 0, FALSE }, - { "\xb3", -1, 0, FALSE }, - { "\xb4", -1, 0, FALSE }, - { "\xb5", -1, 0, FALSE }, - { "\xb6", -1, 0, FALSE }, - { "\xb7", -1, 0, FALSE }, - { "\xb8", -1, 0, FALSE }, - { "\xb9", -1, 0, FALSE }, - { "\xba", -1, 0, FALSE }, - { "\xbb", -1, 0, FALSE }, - { "\xbc", -1, 0, FALSE }, - { "\xbd", -1, 0, FALSE }, - { "\xbe", -1, 0, FALSE }, - { "\xbf", -1, 0, FALSE }, - /* lone start characters */ - { "\xc0\x20", -1, 0, FALSE }, - { "\xc1\x20", -1, 0, FALSE }, - { "\xc2\x20", -1, 0, FALSE }, - { "\xc3\x20", -1, 0, FALSE }, - { "\xc4\x20", -1, 0, FALSE }, - { "\xc5\x20", -1, 0, FALSE }, - { "\xc6\x20", -1, 0, FALSE }, - { "\xc7\x20", -1, 0, FALSE }, - { "\xc8\x20", -1, 0, FALSE }, - { "\xc9\x20", -1, 0, FALSE }, - { "\xca\x20", -1, 0, FALSE }, - { "\xcb\x20", -1, 0, FALSE }, - { "\xcc\x20", -1, 0, FALSE }, - { "\xcd\x20", -1, 0, FALSE }, - { "\xce\x20", -1, 0, FALSE }, - { "\xcf\x20", -1, 0, FALSE }, - { "\xd0\x20", -1, 0, FALSE }, - { "\xd1\x20", -1, 0, FALSE }, - { "\xd2\x20", -1, 0, FALSE }, - { "\xd3\x20", -1, 0, FALSE }, - { "\xd4\x20", -1, 0, FALSE }, - { "\xd5\x20", -1, 0, FALSE }, - { "\xd6\x20", -1, 0, FALSE }, - { "\xd7\x20", -1, 0, FALSE }, - { "\xd8\x20", -1, 0, FALSE }, - { "\xd9\x20", -1, 0, FALSE }, - { "\xda\x20", -1, 0, FALSE }, - { "\xdb\x20", -1, 0, FALSE }, - { "\xdc\x20", -1, 0, FALSE }, - { "\xdd\x20", -1, 0, FALSE }, - { "\xde\x20", -1, 0, FALSE }, - { "\xdf\x20", -1, 0, FALSE }, - { "\xe0\x20", -1, 0, FALSE }, - { "\xe1\x20", -1, 0, FALSE }, - { "\xe2\x20", -1, 0, FALSE }, - { "\xe3\x20", -1, 0, FALSE }, - { "\xe4\x20", -1, 0, FALSE }, - { "\xe5\x20", -1, 0, FALSE }, - { "\xe6\x20", -1, 0, FALSE }, - { "\xe7\x20", -1, 0, FALSE }, - { "\xe8\x20", -1, 0, FALSE }, - { "\xe9\x20", -1, 0, FALSE }, - { "\xea\x20", -1, 0, FALSE }, - { "\xeb\x20", -1, 0, FALSE }, - { "\xec\x20", -1, 0, FALSE }, - { "\xed\x20", -1, 0, FALSE }, - { "\xee\x20", -1, 0, FALSE }, - { "\xef\x20", -1, 0, FALSE }, - { "\xf0\x20", -1, 0, FALSE }, - { "\xf1\x20", -1, 0, FALSE }, - { "\xf2\x20", -1, 0, FALSE }, - { "\xf3\x20", -1, 0, FALSE }, - { "\xf4\x20", -1, 0, FALSE }, - { "\xf5\x20", -1, 0, FALSE }, - { "\xf6\x20", -1, 0, FALSE }, - { "\xf7\x20", -1, 0, FALSE }, - { "\xf8\x20", -1, 0, FALSE }, - { "\xf9\x20", -1, 0, FALSE }, - { "\xfa\x20", -1, 0, FALSE }, - { "\xfb\x20", -1, 0, FALSE }, - { "\xfc\x20", -1, 0, FALSE }, - { "\xfd\x20", -1, 0, FALSE }, - /* missing continuation bytes */ - { "\x20\xc0", -1, 1, FALSE }, - { "\x20\xe0\x80", -1, 1, FALSE }, - { "\x20\xf0\x80\x80", -1, 1, FALSE }, - { "\x20\xf8\x80\x80\x80", -1, 1, FALSE }, - { "\x20\xfc\x80\x80\x80\x80", -1, 1, FALSE }, - { "\x20\xdf", -1, 1, FALSE }, - { "\x20\xef\xbf", -1, 1, FALSE }, - { "\x20\xf7\xbf\xbf", -1, 1, FALSE }, - { "\x20\xfb\xbf\xbf\xbf", -1, 1, FALSE }, - { "\x20\xfd\xbf\xbf\xbf\xbf", -1, 1, FALSE }, - /* impossible bytes */ - { "\x20\xfe\x20", -1, 1, FALSE }, - { "\x20\xff\x20", -1, 1, FALSE }, - /* overlong sequences */ - { "\x20\xc0\xaf\x20", -1, 1, FALSE }, - { "\x20\xe0\x80\xaf\x20", -1, 1, FALSE }, - { "\x20\xf0\x80\x80\xaf\x20", -1, 1, FALSE }, - { "\x20\xf8\x80\x80\x80\xaf\x20", -1, 1, FALSE }, - { "\x20\xfc\x80\x80\x80\x80\xaf\x20", -1, 1, FALSE }, - { "\x20\xc1\xbf\x20", -1, 1, FALSE }, - { "\x20\xe0\x9f\xbf\x20", -1, 1, FALSE }, - { "\x20\xf0\x8f\xbf\xbf\x20", -1, 1, FALSE }, - { "\x20\xf8\x87\xbf\xbf\xbf\x20", -1, 1, FALSE }, - { "\x20\xfc\x83\xbf\xbf\xbf\xbf\x20", -1, 1, FALSE }, - { "\x20\xc0\x80\x20", -1, 1, FALSE }, - { "\x20\xe0\x80\x80\x20", -1, 1, FALSE }, - { "\x20\xf0\x80\x80\x80\x20", -1, 1, FALSE }, - { "\x20\xf8\x80\x80\x80\x80\x20", -1, 1, FALSE }, - { "\x20\xfc\x80\x80\x80\x80\x80\x20", -1, 1, FALSE }, - /* illegal code positions */ - { "\x20\xed\xa0\x80\x20", -1, 1, FALSE }, - { "\x20\xed\xad\xbf\x20", -1, 1, FALSE }, - { "\x20\xed\xae\x80\x20", -1, 1, FALSE }, - { "\x20\xed\xaf\xbf\x20", -1, 1, FALSE }, - { "\x20\xed\xb0\x80\x20", -1, 1, FALSE }, - { "\x20\xed\xbe\x80\x20", -1, 1, FALSE }, - { "\x20\xed\xbf\xbf\x20", -1, 1, FALSE }, - { "\x20\xed\xa0\x80\xed\xb0\x80\x20", -1, 1, FALSE }, - { "\x20\xed\xa0\x80\xed\xbf\xbf\x20", -1, 1, FALSE }, - { "\x20\xed\xad\xbf\xed\xb0\x80\x20", -1, 1, FALSE }, - { "\x20\xed\xad\xbf\xed\xbf\xbf\x20", -1, 1, FALSE }, - { "\x20\xed\xae\x80\xed\xb0\x80\x20", -1, 1, FALSE }, - { "\x20\xed\xae\x80\xed\xbf\xbf\x20", -1, 1, FALSE }, - { "\x20\xed\xaf\xbf\xed\xb0\x80\x20", -1, 1, FALSE }, - { "\x20\xed\xaf\xbf\xed\xbf\xbf\x20", -1, 1, FALSE }, - { "\x20\xef\xbf\xbe\x20", -1, 1, FALSE }, - { "\x20\xef\xbf\xbf\x20", -1, 1, FALSE }, - - { NULL, } -}; - -static void -do_test (gint index, - const gchar *text, - gint max_len, - gint offset, - gboolean valid) -{ - const gchar *end; - gboolean result; - - result = g_utf8_validate (text, max_len, &end); - - if (result != valid || end - text != offset) - { - GString *str; - const gchar *p; - - any_failed = TRUE; - - str = g_string_new (0); - for (p = text; *p; p++) - g_string_append_printf (str, "\\x%02hhx", *p); - g_print ("%d: g_utf8_validate (\"%s\", %d) failed, " - "expected %s %d, got %s %d\n", - index, - str->str, max_len, - valid ? "TRUE" : "FALSE", offset, - result ? "TRUE" : "FALSE", (gint) (end - text)); - g_string_free (str, FALSE); - } -} - -int -main (int argc, char *argv[]) -{ - gint i; - - for (i = 0; test[i].text; i++) - do_test (i, test[i].text, test[i].max_len, - test[i].offset, test[i].valid); - - return any_failed ? 1 : 0; -}