From dafdffd7516324a67db519372e9dcfddfd4fdeb0 Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Thu, 16 Sep 2004 06:05:53 +0000 Subject: [PATCH] Implement the same PLT reduction technique used in GTK+: Thu Sep 16 02:03:15 2004 Matthias Clasen Implement the same PLT reduction technique used in GTK+: --- ChangeLog | 21 ++ ChangeLog.pre-2-10 | 21 ++ ChangeLog.pre-2-12 | 21 ++ ChangeLog.pre-2-6 | 21 ++ ChangeLog.pre-2-8 | 21 ++ configure.in | 19 + glib/Makefile.am | 21 +- glib/abicheck.sh | 5 + glib/garray.c | 1 + glib/gasyncqueue.c | 1 + glib/gatomic.c | 1 + glib/gbacktrace.c | 1 + glib/gcache.c | 1 + glib/gcompletion.c | 1 + glib/gconvert.c | 1 + glib/gdataset.c | 2 +- glib/gdate.c | 1 + glib/gdir.c | 1 + glib/gerror.c | 1 + glib/gfileutils.c | 1 + glib/ghash.c | 1 + glib/ghook.c | 1 + glib/giochannel.c | 1 + glib/giounix.c | 1 + glib/giowin32.c | 1 + glib/glib.def | 836 ------------------------------------------- glib/glib.symbols | 849 ++++++++++++++++++++++++++++++++++++++++++++ glib/glist.c | 1 + glib/gmain.c | 1 + glib/gmarkup.c | 1 + glib/gmem.c | 1 + glib/gmessages.c | 1 + glib/gnode.c | 1 + glib/goption.c | 1 + glib/gpattern.c | 1 + glib/gprimes.c | 1 + glib/gprintf.c | 1 + glib/gqsort.c | 1 + glib/gqueue.c | 1 + glib/grand.c | 1 + glib/grel.c | 1 + glib/gscanner.c | 1 + glib/gshell.c | 1 + glib/gslist.c | 1 + glib/gspawn-win32.c | 1 + glib/gspawn.c | 1 + glib/gstrfuncs.c | 1 + glib/gstring.c | 1 + glib/gthread.c | 1 + glib/gthreadpool.c | 1 + glib/gtimer.c | 1 + glib/gtree.c | 1 + glib/gunibreak.c | 1 + glib/gunicollate.c | 1 + glib/gunidecomp.c | 1 + glib/guniprop.c | 1 + glib/gutf8.c | 1 + glib/gutils.c | 1 + glib/gwin32.c | 1 + glib/makegalias.pl | 105 ++++++ 60 files changed, 1151 insertions(+), 839 deletions(-) create mode 100755 glib/abicheck.sh delete mode 100644 glib/glib.def create mode 100644 glib/glib.symbols create mode 100755 glib/makegalias.pl diff --git a/ChangeLog b/ChangeLog index 5bd3ead91..ae92a3756 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,24 @@ +Thu Sep 16 02:03:15 2004 Matthias Clasen + + Implement the same PLT reduction technique used in GTK+: + + * glib/glib.symbols: Master list of symbols + + * glib/makegalias.pl: Perl script which creates galias.h + + * glib/abicheck.sh: Compares actual exports against glib.symbols + + * glib/glib.def: Removed. This file is now generated from + glib.symbols + + * glib/Makefile.am: Add rules to generate galias.h and glib.def, + and add abicheck.sh to TESTS. Don't export _-prefixed symbols. + + * configure.in: Add --disable-visibility to suppress the + use of ELF visibility attributes. + + * glib/*.c: Include galias.h + 2004-09-15 Tor Lillqvist * glib/gwin32.c (g_win32_error_message): Convert message to diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10 index 5bd3ead91..ae92a3756 100644 --- a/ChangeLog.pre-2-10 +++ b/ChangeLog.pre-2-10 @@ -1,3 +1,24 @@ +Thu Sep 16 02:03:15 2004 Matthias Clasen + + Implement the same PLT reduction technique used in GTK+: + + * glib/glib.symbols: Master list of symbols + + * glib/makegalias.pl: Perl script which creates galias.h + + * glib/abicheck.sh: Compares actual exports against glib.symbols + + * glib/glib.def: Removed. This file is now generated from + glib.symbols + + * glib/Makefile.am: Add rules to generate galias.h and glib.def, + and add abicheck.sh to TESTS. Don't export _-prefixed symbols. + + * configure.in: Add --disable-visibility to suppress the + use of ELF visibility attributes. + + * glib/*.c: Include galias.h + 2004-09-15 Tor Lillqvist * glib/gwin32.c (g_win32_error_message): Convert message to diff --git a/ChangeLog.pre-2-12 b/ChangeLog.pre-2-12 index 5bd3ead91..ae92a3756 100644 --- a/ChangeLog.pre-2-12 +++ b/ChangeLog.pre-2-12 @@ -1,3 +1,24 @@ +Thu Sep 16 02:03:15 2004 Matthias Clasen + + Implement the same PLT reduction technique used in GTK+: + + * glib/glib.symbols: Master list of symbols + + * glib/makegalias.pl: Perl script which creates galias.h + + * glib/abicheck.sh: Compares actual exports against glib.symbols + + * glib/glib.def: Removed. This file is now generated from + glib.symbols + + * glib/Makefile.am: Add rules to generate galias.h and glib.def, + and add abicheck.sh to TESTS. Don't export _-prefixed symbols. + + * configure.in: Add --disable-visibility to suppress the + use of ELF visibility attributes. + + * glib/*.c: Include galias.h + 2004-09-15 Tor Lillqvist * glib/gwin32.c (g_win32_error_message): Convert message to diff --git a/ChangeLog.pre-2-6 b/ChangeLog.pre-2-6 index 5bd3ead91..ae92a3756 100644 --- a/ChangeLog.pre-2-6 +++ b/ChangeLog.pre-2-6 @@ -1,3 +1,24 @@ +Thu Sep 16 02:03:15 2004 Matthias Clasen + + Implement the same PLT reduction technique used in GTK+: + + * glib/glib.symbols: Master list of symbols + + * glib/makegalias.pl: Perl script which creates galias.h + + * glib/abicheck.sh: Compares actual exports against glib.symbols + + * glib/glib.def: Removed. This file is now generated from + glib.symbols + + * glib/Makefile.am: Add rules to generate galias.h and glib.def, + and add abicheck.sh to TESTS. Don't export _-prefixed symbols. + + * configure.in: Add --disable-visibility to suppress the + use of ELF visibility attributes. + + * glib/*.c: Include galias.h + 2004-09-15 Tor Lillqvist * glib/gwin32.c (g_win32_error_message): Convert message to diff --git a/ChangeLog.pre-2-8 b/ChangeLog.pre-2-8 index 5bd3ead91..ae92a3756 100644 --- a/ChangeLog.pre-2-8 +++ b/ChangeLog.pre-2-8 @@ -1,3 +1,24 @@ +Thu Sep 16 02:03:15 2004 Matthias Clasen + + Implement the same PLT reduction technique used in GTK+: + + * glib/glib.symbols: Master list of symbols + + * glib/makegalias.pl: Perl script which creates galias.h + + * glib/abicheck.sh: Compares actual exports against glib.symbols + + * glib/glib.def: Removed. This file is now generated from + glib.symbols + + * glib/Makefile.am: Add rules to generate galias.h and glib.def, + and add abicheck.sh to TESTS. Don't export _-prefixed symbols. + + * configure.in: Add --disable-visibility to suppress the + use of ELF visibility attributes. + + * glib/*.c: Include galias.h + 2004-09-15 Tor Lillqvist * glib/gwin32.c (g_win32_error_message): Convert message to diff --git a/configure.in b/configure.in index 0457368f9..7a492adc9 100644 --- a/configure.in +++ b/configure.in @@ -149,6 +149,7 @@ case "$host" in esac AC_MSG_RESULT([$glib_native_win32]) AM_CONDITIONAL(OS_WIN32, [test "$glib_native_win32" = "yes"]) +AM_CONDITIONAL(OS_UNIX, [test "$glib_native_win32" != "yes"]) AC_SUBST(G_LIB_WIN32_RESOURCE) AC_SUBST(G_MODULE_WIN32_RESOURCE) AC_SUBST(G_OBJECT_WIN32_RESOURCE) @@ -164,6 +165,16 @@ if test "$glib_native_win32" = "yes"; then 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 "^[[^_]].*"' +else + # We currently use .def files on Windows + LIBTOOL_EXPORT_OPTIONS= +fi +AC_SUBST(LIBTOOL_EXPORT_OPTIONS) + dnl declare --enable-* args and collect ac_help strings AC_ARG_ENABLE(debug, AC_HELP_STRING([--enable-debug=@<:@no/minimum/yes@:>@], @@ -191,6 +202,10 @@ 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 @@ -275,6 +290,10 @@ else 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 diff --git a/glib/Makefile.am b/glib/Makefile.am index 827a1f3ab..536464883 100644 --- a/glib/Makefile.am +++ b/glib/Makefile.am @@ -13,16 +13,31 @@ DIST_SUBDIRS = libcharset gnulib INCLUDES = -I$(top_srcdir) -DG_LOG_DOMAIN=\"GLib\" \ $(GLIB_DEBUG_FLAGS) -DG_DISABLE_DEPRECATED -DGLIB_COMPILATION +glib.def: glib.symbols + (echo -e EXPORTS; cpp -P -DINCLUDE_VARIABLES -DINCLUDE_INTERNAL_SYMBOLS -DG_OS_WIN32 $(srcdir)/glib.symbols | sed -e '/^$$/d' -e 's/^/\t/') > glib.def + +galias.h: glib.symbols + ./makegalias.pl < $(srcdir)/glib.symbols > galias.h + +if OS_UNIX +TESTS = abicheck.sh +endif + +BUILT_SOURCES = galias.h + EXTRA_DIST = \ makefile.msc.in \ glib.rc.in \ gen-unicode-tables.pl \ - glib.def + makegalias.pl \ + glib.symbols # These may be in the builddir too BUILT_EXTRA_DIST = \ makefile.msc \ - glib.rc + glib.rc \ + glib.def \ + galias.h lib_LTLIBRARIES = libglib-2.0.la @@ -184,6 +199,8 @@ uninstall-libtool-import-lib: else install-libtool-import-lib: uninstall-libtool-import-lib: + +export_symbols = $(LIBTOOL_EXPORT_OPTIONS) endif libglib_2_0_la_LIBADD = libcharset/libcharset.la $(printf_la) @GIO@ @GSPAWN@ @PLATFORMDEP@ @G_LIB_WIN32_RESOURCE@ @ICONV_LIBS@ @G_LIBS_EXTRA@ diff --git a/glib/abicheck.sh b/glib/abicheck.sh new file mode 100755 index 000000000..77c721c89 --- /dev/null +++ b/glib/abicheck.sh @@ -0,0 +1,5 @@ +#! /bin/sh + +cpp -P -DG_OS_UNIX -DINCLUDE_INTERNAL_SYMBOLS ${srcdir:-.}/glib.symbols | sed -e '/^$/d' | sort > expected-abi +nm -D .libs/libglib-2.0.so | grep " T " | cut -c12- | sort > actual-abi +diff -u expected-abi actual-abi && rm expected-abi actual-abi diff --git a/glib/garray.c b/glib/garray.c index 8869236c6..70a836a23 100644 --- a/glib/garray.c +++ b/glib/garray.c @@ -32,6 +32,7 @@ #include #include +#include "galias.h" #include "glib.h" diff --git a/glib/gasyncqueue.c b/glib/gasyncqueue.c index 9e9f9a681..75baaa39f 100644 --- a/glib/gasyncqueue.c +++ b/glib/gasyncqueue.c @@ -26,6 +26,7 @@ #include "config.h" +#include "galias.h" #include "glib.h" diff --git a/glib/gatomic.c b/glib/gatomic.c index d9bb2d779..2cb93782d 100644 --- a/glib/gatomic.c +++ b/glib/gatomic.c @@ -22,6 +22,7 @@ #include "config.h" +#include "galias.h" #include "glib.h" #include "gthreadinit.h" diff --git a/glib/gbacktrace.c b/glib/gbacktrace.c index e4b3fdba3..004a6aa9c 100644 --- a/glib/gbacktrace.c +++ b/glib/gbacktrace.c @@ -35,6 +35,7 @@ #include #include #include +#include "galias.h" #include "glib.h" #include "gprintfint.h" diff --git a/glib/gcache.c b/glib/gcache.c index a462b0275..6d506d80c 100644 --- a/glib/gcache.c +++ b/glib/gcache.c @@ -30,6 +30,7 @@ #include "config.h" +#include "galias.h" #include "glib.h" diff --git a/glib/gcompletion.c b/glib/gcompletion.c index e8fc0ca78..5bd8007ec 100644 --- a/glib/gcompletion.c +++ b/glib/gcompletion.c @@ -32,6 +32,7 @@ #include +#include "galias.h" #include "glib.h" diff --git a/glib/gconvert.c b/glib/gconvert.c index dd811e562..c7d888096 100644 --- a/glib/gconvert.c +++ b/glib/gconvert.c @@ -28,6 +28,7 @@ #include #include +#include "galias.h" #include "glib.h" #include "gprintfint.h" #include "gthreadinit.h" diff --git a/glib/gdataset.c b/glib/gdataset.c index fc0a92b42..9aed3a6dc 100644 --- a/glib/gdataset.c +++ b/glib/gdataset.c @@ -34,7 +34,7 @@ #include "config.h" #include - +#include "galias.h" #include "glib.h" diff --git a/glib/gdate.c b/glib/gdate.c index 8e12a8dd2..8d2bb2447 100644 --- a/glib/gdate.c +++ b/glib/gdate.c @@ -35,6 +35,7 @@ /* #define DEBUG_MSG(args) g_message args ; */ #endif +#include "galias.h" #include "glib.h" #include diff --git a/glib/gdir.c b/glib/gdir.c index c9e011ef2..ba5199506 100644 --- a/glib/gdir.c +++ b/glib/gdir.c @@ -31,6 +31,7 @@ #include #endif +#include "galias.h" #include "glib.h" #include "gdir.h" diff --git a/glib/gerror.c b/glib/gerror.c index 9a0729f25..412e5a44c 100644 --- a/glib/gerror.c +++ b/glib/gerror.c @@ -26,6 +26,7 @@ #include "config.h" +#include "galias.h" #include "glib.h" diff --git a/glib/gfileutils.c b/glib/gfileutils.c index 061b3214e..cfe1a09cd 100644 --- a/glib/gfileutils.c +++ b/glib/gfileutils.c @@ -20,6 +20,7 @@ #include "config.h" +#include "galias.h" #include "glib.h" #include diff --git a/glib/ghash.c b/glib/ghash.c index 829a24c2c..a979329cc 100644 --- a/glib/ghash.c +++ b/glib/ghash.c @@ -30,6 +30,7 @@ #include "config.h" +#include "galias.h" #include "glib.h" diff --git a/glib/ghook.c b/glib/ghook.c index b1545a0e2..70d3e36bd 100644 --- a/glib/ghook.c +++ b/glib/ghook.c @@ -33,6 +33,7 @@ #include "config.h" +#include "galias.h" #include "glib.h" diff --git a/glib/giochannel.c b/glib/giochannel.c index 48b6b66eb..8a3c2da6a 100644 --- a/glib/giochannel.c +++ b/glib/giochannel.c @@ -42,6 +42,7 @@ #undef G_DISABLE_DEPRECATED +#include "galias.h" #include "glib.h" #include "giochannel.h" diff --git a/glib/giounix.c b/glib/giounix.c index ecd32ecd3..44e029412 100644 --- a/glib/giounix.c +++ b/glib/giounix.c @@ -43,6 +43,7 @@ #include #include +#include "galias.h" #include "glib.h" /* diff --git a/glib/giowin32.c b/glib/giowin32.c index 8d435538e..8fcb82709 100644 --- a/glib/giowin32.c +++ b/glib/giowin32.c @@ -34,6 +34,7 @@ #include "config.h" +#include "galias.h" #include "glib.h" #include diff --git a/glib/glib.def b/glib/glib.def deleted file mode 100644 index 6c9abced1..000000000 --- a/glib/glib.def +++ /dev/null @@ -1,836 +0,0 @@ -EXPORTS - g_allocator_free - g_allocator_new - g_array_append_vals - g_array_free - g_array_insert_vals - g_array_new - g_array_prepend_vals - g_array_remove_index - g_array_remove_index_fast - g_array_remove_range - g_array_set_size - g_array_sized_new - g_array_sort - g_array_sort_with_data - g_ascii_digit_value - g_ascii_dtostr - g_ascii_formatd - g_ascii_strcasecmp - g_ascii_strdown - g_ascii_strncasecmp - g_ascii_strtod - g_ascii_strtoull - g_ascii_strup - g_ascii_table - g_ascii_tolower - g_ascii_toupper - g_ascii_xdigit_value - g_async_queue_length - g_async_queue_length_unlocked - g_async_queue_lock - g_async_queue_new - g_async_queue_pop - g_async_queue_pop_unlocked - g_async_queue_push - g_async_queue_push_unlocked - g_async_queue_ref - g_async_queue_ref_unlocked - g_async_queue_timed_pop - g_async_queue_timed_pop_unlocked - g_async_queue_try_pop - g_async_queue_try_pop_unlocked - g_async_queue_unlock - g_async_queue_unref - g_async_queue_unref_and_unlock - g_atexit - g_atomic_int_add - g_atomic_int_compare_and_exchange - g_atomic_int_exchange_and_add -; g_atomic_int_get - g_atomic_pointer_compare_and_exchange -; g_atomic_pointer_get - g_basename - g_bit_nth_lsf - g_bit_nth_msf - g_bit_storage - g_blow_chunks - g_build_filename - g_build_path - g_byte_array_append - g_byte_array_free - g_byte_array_new - g_byte_array_prepend - g_byte_array_remove_index - g_byte_array_remove_index_fast - g_byte_array_remove_range - g_byte_array_set_size - g_byte_array_sized_new - g_byte_array_sort - g_byte_array_sort_with_data - g_cache_destroy - g_cache_insert - g_cache_key_foreach - g_cache_new - g_cache_remove - g_cache_value_foreach - g_child_watch_add - g_child_watch_add_full - g_child_watch_source_new - g_clear_error - g_completion_add_items - g_completion_clear_items - g_completion_complete - g_completion_complete_utf8 - g_completion_free - g_completion_new - g_completion_remove_items - g_completion_set_compare - g_convert - g_convert_error_quark - g_convert_with_fallback - g_convert_with_iconv - g_datalist_clear - g_datalist_foreach - g_datalist_id_get_data - g_datalist_id_remove_no_notify - g_datalist_id_set_data_full - g_datalist_init - g_dataset_destroy - g_dataset_foreach - g_dataset_id_get_data - g_dataset_id_remove_no_notify - g_dataset_id_set_data_full - g_date_add_days - g_date_add_months - g_date_add_years - g_date_clamp - g_date_clear - g_date_compare - g_date_days_between - g_date_free - g_date_get_day - g_date_get_day_of_year - g_date_get_days_in_month - g_date_get_iso8601_week_of_year - g_date_get_julian - g_date_get_monday_week_of_year - g_date_get_monday_weeks_in_year - g_date_get_month - g_date_get_sunday_week_of_year - g_date_get_sunday_weeks_in_year - g_date_get_weekday - g_date_get_year - g_date_is_first_of_month - g_date_is_last_of_month - g_date_is_leap_year - g_date_new - g_date_new_dmy - g_date_new_julian - g_date_order - g_date_set_day - g_date_set_dmy - g_date_set_julian - g_date_set_month - g_date_set_parse - g_date_set_time - g_date_set_year - g_date_strftime - g_date_subtract_days - g_date_subtract_months - g_date_subtract_years - g_date_to_struct_tm - g_date_valid - g_date_valid_day - g_date_valid_dmy - g_date_valid_julian - g_date_valid_month - g_date_valid_weekday - g_date_valid_year - g_dir_close - g_dir_open - g_dir_read_name - g_dir_rewind - g_direct_equal - g_direct_hash - g_error_copy - g_error_free - g_error_matches - g_error_new - g_error_new_literal - g_file_error_from_errno - g_file_error_quark - g_file_get_contents - g_file_open_tmp - g_file_read_link - g_file_test - g_filename_from_uri - g_filename_from_utf8 - g_filename_to_uri - g_filename_to_utf8 - g_find_program_in_path - g_fprintf - g_free - g_get_application_name - g_get_charset - g_get_codeset - g_get_current_dir - g_get_current_time - g_get_home_dir - g_get_language_names - g_get_prgname - g_get_real_name - g_get_system_config_dirs - g_get_system_data_dirs - g_get_tmp_dir - g_get_user_cache_dir - g_get_user_config_dir - g_get_user_data_dir - g_get_user_name - g_getenv - g_hash_table_destroy - g_hash_table_find - g_hash_table_foreach - g_hash_table_foreach_remove - g_hash_table_foreach_steal - g_hash_table_insert - g_hash_table_lookup - g_hash_table_lookup_extended - g_hash_table_new - g_hash_table_new_full - g_hash_table_remove - g_hash_table_replace - g_hash_table_size - g_hash_table_steal - g_hook_alloc - g_hook_compare_ids - g_hook_destroy - g_hook_destroy_link - g_hook_find - g_hook_find_data - g_hook_find_func - g_hook_find_func_data - g_hook_first_valid - g_hook_free - g_hook_get - g_hook_insert_before - g_hook_insert_sorted - g_hook_list_clear - g_hook_list_init - g_hook_list_invoke - g_hook_list_invoke_check - g_hook_list_marshal - g_hook_list_marshal_check - g_hook_next_valid - g_hook_prepend - g_hook_ref - g_hook_unref - g_iconv - g_iconv_close - g_iconv_open - g_idle_add - g_idle_add_full - g_idle_funcs - g_idle_remove_by_data - g_idle_source_new - g_int_equal - g_int_hash - g_io_add_watch - g_io_add_watch_full - g_io_channel_close - g_io_channel_error_from_errno - g_io_channel_error_quark - g_io_channel_flush - g_io_channel_get_buffer_condition - g_io_channel_get_buffer_size - g_io_channel_get_buffered - g_io_channel_get_close_on_unref - g_io_channel_get_encoding - g_io_channel_get_flags - g_io_channel_get_line_term - g_io_channel_init - g_io_channel_new_file - g_io_channel_read - g_io_channel_read_chars - g_io_channel_read_line - g_io_channel_read_line_string - g_io_channel_read_to_end - g_io_channel_read_unichar - g_io_channel_ref - g_io_channel_seek - g_io_channel_seek_position - g_io_channel_set_buffer_size - g_io_channel_set_buffered - g_io_channel_set_close_on_unref - g_io_channel_set_encoding - g_io_channel_set_flags - g_io_channel_set_line_term - g_io_channel_shutdown - g_io_channel_unix_get_fd - g_io_channel_unix_new - g_io_channel_unref - g_io_channel_win32_get_fd - g_io_channel_win32_make_pollfd - g_io_channel_win32_new_fd - g_io_channel_win32_new_messages - g_io_channel_win32_new_socket - g_io_channel_win32_new_stream_socket - g_io_channel_win32_poll - g_io_channel_win32_set_debug - g_io_channel_write - g_io_channel_write_chars - g_io_channel_write_unichar - g_io_create_watch - g_io_watch_funcs - g_list_alloc - g_list_append - g_list_concat - g_list_copy - g_list_delete_link - g_list_find - g_list_find_custom - g_list_first - g_list_foreach - g_list_free - g_list_free_1 - g_list_index - g_list_insert - g_list_insert_before - g_list_insert_sorted - g_list_last - g_list_length - g_list_nth - g_list_nth_data - g_list_nth_prev - g_list_pop_allocator - g_list_position - g_list_prepend - g_list_push_allocator - g_list_remove - g_list_remove_all - g_list_remove_link - g_list_reverse - g_list_sort - g_list_sort_with_data - g_locale_from_utf8 - g_locale_to_utf8 - g_log - g_log_default_handler - g_log_remove_handler - g_log_set_always_fatal - g_log_set_default_handler - g_log_set_fatal_mask - g_log_set_handler - g_logv - g_main_context_acquire - g_main_context_add_poll - g_main_context_check - g_main_context_default - g_main_context_dispatch - g_main_context_find_source_by_funcs_user_data - g_main_context_find_source_by_id - g_main_context_find_source_by_user_data - g_main_context_get_poll_func - g_main_context_iteration - g_main_context_new - g_main_context_pending - g_main_context_prepare - g_main_context_query - g_main_context_ref - g_main_context_release - g_main_context_remove_poll - g_main_context_set_poll_func - g_main_context_unref - g_main_context_wait - g_main_context_wakeup - g_main_depth - g_main_loop_get_context - g_main_loop_is_running - g_main_loop_new - g_main_loop_quit - g_main_loop_ref - g_main_loop_run - g_main_loop_unref - g_malloc - g_malloc0 - g_markup_error_quark - g_markup_escape_text - g_markup_parse_context_end_parse - g_markup_parse_context_free - g_markup_parse_context_get_element - g_markup_parse_context_get_position - g_markup_parse_context_new - g_markup_parse_context_parse - g_markup_printf_escaped - g_markup_vprintf_escaped - g_mem_chunk_alloc - g_mem_chunk_alloc0 - g_mem_chunk_clean - g_mem_chunk_destroy - g_mem_chunk_free - g_mem_chunk_info - g_mem_chunk_new - g_mem_chunk_print - g_mem_chunk_reset - g_mem_is_system_malloc - g_mem_profile - g_mem_set_vtable - g_memdup - g_mkstemp - g_node_child_index - g_node_child_position - g_node_children_foreach - g_node_copy - g_node_copy_deep - g_node_depth - g_node_destroy - g_node_find - g_node_find_child - g_node_first_sibling - g_node_get_root - g_node_insert - g_node_insert_after - g_node_insert_before - g_node_is_ancestor - g_node_last_child - g_node_last_sibling - g_node_max_height - g_node_n_children - g_node_n_nodes - g_node_new - g_node_nth_child - g_node_pop_allocator - g_node_prepend - g_node_push_allocator - g_node_reverse_children - g_node_traverse - g_node_unlink - g_nullify_pointer - g_on_error_query - g_on_error_stack_trace - g_once_impl - g_option_context_add_group - g_option_context_add_main_entries - g_option_context_error_quark - g_option_context_free - g_option_context_get_help_enabled - g_option_context_get_ignore_unknown_options - g_option_context_get_main_group - g_option_context_new - g_option_context_parse - g_option_context_set_help_enabled - g_option_context_set_ignore_unknown_options - g_option_context_set_main_group - g_option_group_add_entries - g_option_group_free - g_option_group_new - g_option_group_set_error_hook - g_option_group_set_parse_hooks - g_option_group_set_translate_func - g_option_group_set_translation_domain - g_parse_debug_string - g_path_get_basename - g_path_get_dirname - g_path_is_absolute - g_path_skip_root - g_pattern_match - g_pattern_match_simple - g_pattern_match_string - g_pattern_spec_equal - g_pattern_spec_free - g_pattern_spec_new - g_print - g_printerr - g_printf - g_printf_string_upper_bound - g_propagate_error - g_ptr_array_add - g_ptr_array_foreach - g_ptr_array_free - g_ptr_array_new - g_ptr_array_remove - g_ptr_array_remove_fast - g_ptr_array_remove_index - g_ptr_array_remove_index_fast - g_ptr_array_remove_range - g_ptr_array_set_size - g_ptr_array_sized_new - g_ptr_array_sort - g_ptr_array_sort_with_data - g_qsort_with_data - g_quark_from_static_string - g_quark_from_string - g_quark_to_string - g_quark_try_string - g_queue_copy - g_queue_delete_link - g_queue_find - g_queue_find_custom - g_queue_foreach - g_queue_free - g_queue_get_length - g_queue_index - g_queue_insert_after - g_queue_insert_before - g_queue_insert_sorted - g_queue_is_empty - g_queue_link_index - g_queue_new - g_queue_peek_head - g_queue_peek_head_link - g_queue_peek_nth - g_queue_peek_nth_link - g_queue_peek_tail - g_queue_peek_tail_link - g_queue_pop_head - g_queue_pop_head_link - g_queue_pop_nth - g_queue_pop_nth_link - g_queue_pop_tail - g_queue_pop_tail_link - g_queue_push_head - g_queue_push_head_link - g_queue_push_nth - g_queue_push_nth_link - g_queue_push_tail - g_queue_push_tail_link - g_queue_remove - g_queue_remove_all - g_queue_reverse - g_queue_sort - g_queue_unlink - g_rand_copy - g_rand_double - g_rand_double_range - g_rand_free - g_rand_int - g_rand_int_range - g_rand_new - g_rand_new_with_seed - g_rand_new_with_seed_array - g_rand_set_seed - g_rand_set_seed_array - g_random_double - g_random_double_range - g_random_int - g_random_int_range - g_random_set_seed - g_realloc - g_relation_count - g_relation_delete - g_relation_destroy - g_relation_exists - g_relation_index - g_relation_insert - g_relation_new - g_relation_print - g_relation_select - g_scanner_cur_line - g_scanner_cur_position - g_scanner_cur_token - g_scanner_cur_value - g_scanner_destroy - g_scanner_eof - g_scanner_error - g_scanner_get_next_token - g_scanner_input_file - g_scanner_input_text - g_scanner_lookup_symbol - g_scanner_new - g_scanner_peek_next_token - g_scanner_scope_add_symbol - g_scanner_scope_foreach_symbol - g_scanner_scope_lookup_symbol - g_scanner_scope_remove_symbol - g_scanner_set_scope - g_scanner_sync_file_offset - g_scanner_unexp_token - g_scanner_warn - g_set_application_name - g_set_error - g_set_prgname - g_set_print_handler - g_set_printerr_handler - g_setenv - g_shell_error_quark - g_shell_parse_argv - g_shell_quote - g_shell_unquote - g_slist_alloc - g_slist_append - g_slist_concat - g_slist_copy - g_slist_delete_link - g_slist_find - g_slist_find_custom - g_slist_foreach - g_slist_free - g_slist_free_1 - g_slist_index - g_slist_insert - g_slist_insert_before - g_slist_insert_sorted - g_slist_last - g_slist_length - g_slist_nth - g_slist_nth_data - g_slist_pop_allocator - g_slist_position - g_slist_prepend - g_slist_push_allocator - g_slist_remove - g_slist_remove_all - g_slist_remove_link - g_slist_reverse - g_slist_sort - g_slist_sort_with_data - g_snprintf - g_source_add_poll - g_source_attach - g_source_destroy - g_source_get_can_recurse - g_source_get_context - g_source_get_current_time - g_source_get_id - g_source_get_priority - g_source_new - g_source_ref - g_source_remove - g_source_remove_by_funcs_user_data - g_source_remove_by_user_data - g_source_remove_poll - g_source_set_callback - g_source_set_callback_indirect - g_source_set_can_recurse - g_source_set_priority - g_source_unref - g_spaced_primes_closest - g_spawn_async - g_spawn_async_with_pipes - g_spawn_close_pid - g_spawn_command_line_async - g_spawn_command_line_sync - g_spawn_error_quark - g_spawn_sync - g_sprintf - g_static_mutex_free - g_static_mutex_get_mutex_impl - g_static_mutex_init - g_static_private_free - g_static_private_get - g_static_private_init - g_static_private_set - g_static_rec_mutex_free - g_static_rec_mutex_init - g_static_rec_mutex_lock - g_static_rec_mutex_lock_full - g_static_rec_mutex_trylock - g_static_rec_mutex_unlock - g_static_rec_mutex_unlock_full - g_static_rw_lock_free - g_static_rw_lock_init - g_static_rw_lock_reader_lock - g_static_rw_lock_reader_trylock - g_static_rw_lock_reader_unlock - g_static_rw_lock_writer_lock - g_static_rw_lock_writer_trylock - g_static_rw_lock_writer_unlock - g_stpcpy - g_str_equal - g_str_has_prefix - g_str_has_suffix - g_str_hash - g_strcanon - g_strcasecmp - g_strchomp - g_strchug - g_strcompress - g_strconcat - g_strdelimit - g_strdown - g_strdup - g_strdup_printf - g_strdup_vprintf - g_strdupv - g_strerror - g_strescape - g_strfreev - g_string_append - g_string_append_c - g_string_append_len - g_string_append_printf - g_string_append_unichar - g_string_ascii_down - g_string_ascii_up - g_string_assign - g_string_chunk_free - g_string_chunk_insert - g_string_chunk_insert_const - g_string_chunk_insert_len - g_string_chunk_new - g_string_down - g_string_equal - g_string_erase - g_string_free - g_string_hash - g_string_insert - g_string_insert_c - g_string_insert_len - g_string_insert_unichar - g_string_new - g_string_new_len - g_string_prepend - g_string_prepend_c - g_string_prepend_len - g_string_prepend_unichar - g_string_printf - g_string_set_size - g_string_sized_new - g_string_truncate - g_string_up - g_strip_context - g_strjoin - g_strjoinv - g_strlcat - g_strlcpy - g_strncasecmp - g_strndup - g_strnfill - g_strreverse - g_strrstr - g_strrstr_len - g_strsignal - g_strsplit - g_strsplit_set - g_strstr_len - g_strtod - g_strup - g_thread_create_full - g_thread_error_quark - g_thread_exit - g_thread_functions_for_glib_use - g_thread_init_glib - g_thread_join - g_thread_pool_free - g_thread_pool_get_max_threads - g_thread_pool_get_max_unused_threads - g_thread_pool_get_num_threads - g_thread_pool_get_num_unused_threads - g_thread_pool_new - g_thread_pool_push - g_thread_pool_set_max_threads - g_thread_pool_set_max_unused_threads - g_thread_pool_stop_unused_threads - g_thread_pool_unprocessed - g_thread_self - g_thread_set_priority - g_thread_use_default_impl - g_threads_got_initialized - g_time_val_add - g_timeout_add - g_timeout_add_full - g_timeout_funcs - g_timeout_source_new - g_timer_continue - g_timer_destroy - g_timer_elapsed - g_timer_new - g_timer_reset - g_timer_start - g_timer_stop - g_trash_stack_height - g_trash_stack_peek - g_trash_stack_pop - g_trash_stack_push - g_tree_destroy - g_tree_foreach - g_tree_height - g_tree_insert - g_tree_lookup - g_tree_lookup_extended - g_tree_new - g_tree_new_full - g_tree_new_with_data - g_tree_nnodes - g_tree_remove - g_tree_replace - g_tree_search - g_tree_steal - g_tree_traverse - g_try_malloc - g_try_realloc - g_tuples_destroy - g_tuples_index - g_ucs4_to_utf16 - g_ucs4_to_utf8 - g_unichar_break_type - g_unichar_digit_value - g_unichar_get_mirror_char - g_unichar_isalnum - g_unichar_isalpha - g_unichar_iscntrl - g_unichar_isdefined - g_unichar_isdigit - g_unichar_isgraph - g_unichar_islower - g_unichar_isprint - g_unichar_ispunct - g_unichar_isspace - g_unichar_istitle - g_unichar_isupper - g_unichar_iswide - g_unichar_isxdigit - g_unichar_to_utf8 - g_unichar_tolower - g_unichar_totitle - g_unichar_toupper - g_unichar_type - g_unichar_validate - g_unichar_xdigit_value - g_unicode_canonical_decomposition - g_unicode_canonical_ordering - g_unsetenv - g_usleep - g_utf16_to_ucs4 - g_utf16_to_utf8 - g_utf8_casefold - g_utf8_collate - g_utf8_collate_key - g_utf8_find_next_char - g_utf8_find_prev_char - g_utf8_get_char - g_utf8_get_char_validated - g_utf8_normalize - g_utf8_offset_to_pointer - g_utf8_pointer_to_offset - g_utf8_prev_char - g_utf8_skip - g_utf8_strchr - g_utf8_strdown - g_utf8_strlen - g_utf8_strncpy - g_utf8_strrchr - g_utf8_strreverse - g_utf8_strup - g_utf8_to_ucs4 - g_utf8_to_ucs4_fast - g_utf8_to_utf16 - g_utf8_validate - g_vasprintf - g_vfprintf - g_vprintf - g_vsnprintf - g_vsprintf - g_win32_error_message - g_win32_ftruncate - g_win32_get_package_installation_directory - g_win32_get_package_installation_subdirectory - g_win32_get_windows_version - g_win32_getlocale - glib_binary_age - glib_check_version - glib_interface_age - glib_major_version - glib_mem_profiler_table - glib_micro_version - glib_minor_version diff --git a/glib/glib.symbols b/glib/glib.symbols new file mode 100644 index 000000000..216c817a7 --- /dev/null +++ b/glib/glib.symbols @@ -0,0 +1,849 @@ +g_allocator_free +g_allocator_new +g_array_append_vals +g_array_free +g_array_insert_vals +g_array_new +g_array_prepend_vals +g_array_remove_index +g_array_remove_index_fast +g_array_remove_range +g_array_set_size +g_array_sized_new +g_array_sort +g_array_sort_with_data +g_ascii_digit_value +g_ascii_dtostr +g_ascii_formatd +g_ascii_strcasecmp +g_ascii_strdown +g_ascii_strncasecmp +g_ascii_strtod +g_ascii_strtoull +g_ascii_strup +g_ascii_tolower +g_ascii_toupper +g_ascii_xdigit_value +g_async_queue_length +g_async_queue_length_unlocked +g_async_queue_lock +g_async_queue_new +g_async_queue_pop +g_async_queue_pop_unlocked +g_async_queue_push +g_async_queue_push_unlocked +g_async_queue_ref +g_async_queue_ref_unlocked +g_async_queue_timed_pop +g_async_queue_timed_pop_unlocked +g_async_queue_try_pop +g_async_queue_try_pop_unlocked +g_async_queue_unlock +g_async_queue_unref +g_async_queue_unref_and_unlock +g_atexit +g_atomic_int_add +g_atomic_int_compare_and_exchange +g_atomic_int_exchange_and_add +g_atomic_pointer_compare_and_exchange +#ifdef G_ATOMIC_OP_MEMORY_BARRIER_NEEDED +g_atomic_int_get +g_atomic_pointer_get +#endif +g_basename +g_blow_chunks +g_build_filename +g_build_path +g_byte_array_append +g_byte_array_free +g_byte_array_new +g_byte_array_prepend +g_byte_array_remove_index +g_byte_array_remove_index_fast +g_byte_array_remove_range +g_byte_array_set_size +g_byte_array_sized_new +g_byte_array_sort +g_byte_array_sort_with_data +g_cache_destroy +g_cache_insert +g_cache_key_foreach +g_cache_new +g_cache_remove +g_cache_value_foreach +g_child_watch_add +g_child_watch_add_full +g_child_watch_source_new +g_clear_error +g_completion_add_items +g_completion_clear_items +g_completion_complete +g_completion_complete_utf8 +g_completion_free +g_completion_new +g_completion_remove_items +g_completion_set_compare +g_convert +g_convert_error_quark +g_convert_with_fallback +g_convert_with_iconv +g_datalist_clear +g_datalist_foreach +g_datalist_id_get_data +g_datalist_id_remove_no_notify +g_datalist_id_set_data_full +g_datalist_init +g_dataset_destroy +g_dataset_foreach +g_dataset_id_get_data +g_dataset_id_remove_no_notify +g_dataset_id_set_data_full +g_date_add_days +g_date_add_months +g_date_add_years +g_date_clamp +g_date_clear +g_date_compare +g_date_days_between +g_date_free +g_date_get_day +g_date_get_day_of_year +g_date_get_days_in_month +g_date_get_iso8601_week_of_year +g_date_get_julian +g_date_get_monday_week_of_year +g_date_get_monday_weeks_in_year +g_date_get_month +g_date_get_sunday_week_of_year +g_date_get_sunday_weeks_in_year +g_date_get_weekday +g_date_get_year +g_date_is_first_of_month +g_date_is_last_of_month +g_date_is_leap_year +g_date_new +g_date_new_dmy +g_date_new_julian +g_date_order +g_date_set_day +g_date_set_dmy +g_date_set_julian +g_date_set_month +g_date_set_parse +g_date_set_time +g_date_set_year +g_date_strftime +g_date_subtract_days +g_date_subtract_months +g_date_subtract_years +g_date_to_struct_tm +g_date_valid +g_date_valid_day +g_date_valid_dmy +g_date_valid_julian +g_date_valid_month +g_date_valid_weekday +g_date_valid_year +g_dir_close +g_direct_equal +g_direct_hash +g_dir_open +g_dir_read_name +g_dir_rewind +g_error_copy +g_error_free +g_error_matches +g_error_new +g_error_new_literal +g_file_error_from_errno +g_file_error_quark +g_file_get_contents +g_filename_from_uri +g_filename_from_utf8 +g_filename_to_uri +g_filename_to_utf8 +g_file_open_tmp +g_file_read_link +g_file_test +g_find_program_in_path +g_fprintf +g_free +g_get_application_name +g_get_charset +g_get_current_dir +g_get_current_time +g_getenv +g_get_home_dir +g_get_language_names +g_get_prgname +g_get_real_name +g_get_system_config_dirs +g_get_system_data_dirs +g_get_tmp_dir +g_get_user_cache_dir +g_get_user_config_dir +g_get_user_data_dir +g_get_user_name +g_hash_table_destroy +g_hash_table_find +g_hash_table_foreach +g_hash_table_foreach_remove +g_hash_table_foreach_steal +g_hash_table_insert +g_hash_table_lookup +g_hash_table_lookup_extended +g_hash_table_new +g_hash_table_new_full +g_hash_table_remove +g_hash_table_replace +g_hash_table_size +g_hash_table_steal +g_hook_alloc +g_hook_compare_ids +g_hook_destroy +g_hook_destroy_link +g_hook_find +g_hook_find_data +g_hook_find_func +g_hook_find_func_data +g_hook_first_valid +g_hook_free +g_hook_get +g_hook_insert_before +g_hook_insert_sorted +g_hook_list_clear +g_hook_list_init +g_hook_list_invoke +g_hook_list_invoke_check +g_hook_list_marshal +g_hook_list_marshal_check +g_hook_next_valid +g_hook_prepend +g_hook_ref +g_hook_unref +g_iconv +g_iconv_close +g_iconv_open +g_idle_add +g_idle_add_full +g_idle_remove_by_data +g_idle_source_new +g_int_equal +g_int_hash +g_io_add_watch +g_io_add_watch_full +g_io_channel_close +g_io_channel_error_from_errno +g_io_channel_error_quark +g_io_channel_flush +g_io_channel_get_buffer_condition +g_io_channel_get_buffered +g_io_channel_get_buffer_size +g_io_channel_get_close_on_unref +g_io_channel_get_encoding +g_io_channel_get_flags +g_io_channel_get_line_term +g_io_channel_init +g_io_channel_new_file +g_io_channel_read +g_io_channel_read_chars +g_io_channel_read_line +g_io_channel_read_line_string +g_io_channel_read_to_end +g_io_channel_read_unichar +g_io_channel_ref +g_io_channel_seek +g_io_channel_seek_position +g_io_channel_set_buffered +g_io_channel_set_buffer_size +g_io_channel_set_close_on_unref +g_io_channel_set_encoding +g_io_channel_set_flags +g_io_channel_set_line_term +g_io_channel_shutdown +g_io_channel_unix_get_fd +g_io_channel_unix_new +g_io_channel_unref +#ifdef G_OS_WIN32 +g_io_channel_win32_get_fd +g_io_channel_win32_make_pollfd +g_io_channel_win32_new_fd +g_io_channel_win32_new_messages +g_io_channel_win32_new_socket +g_io_channel_win32_new_stream_socket +g_io_channel_win32_poll +g_io_channel_win32_set_debug +#endif +g_io_channel_write +g_io_channel_write_chars +g_io_channel_write_unichar +g_io_create_watch +glib_check_version +g_list_alloc +g_list_append +g_list_concat +g_list_copy +g_list_delete_link +g_list_find +g_list_find_custom +g_list_first +g_list_foreach +g_list_free +g_list_free_1 +g_list_index +g_list_insert +g_list_insert_before +g_list_insert_sorted +g_list_last +g_list_length +g_list_nth +g_list_nth_data +g_list_nth_prev +g_list_pop_allocator +g_list_position +g_list_prepend +g_list_push_allocator +g_list_remove +g_list_remove_all +g_list_remove_link +g_list_reverse +g_list_sort +g_list_sort_with_data +g_locale_from_utf8 +g_locale_to_utf8 +g_log +g_log_default_handler +g_log_remove_handler +g_log_set_always_fatal +g_log_set_default_handler +g_log_set_fatal_mask +g_log_set_handler +g_logv +g_main_context_acquire +g_main_context_add_poll +g_main_context_check +g_main_context_default +g_main_context_dispatch +g_main_context_find_source_by_funcs_user_data +g_main_context_find_source_by_id +g_main_context_find_source_by_user_data +g_main_context_get_poll_func +g_main_context_iteration +g_main_context_new +g_main_context_pending +g_main_context_prepare +g_main_context_query +g_main_context_ref +g_main_context_release +g_main_context_remove_poll +g_main_context_set_poll_func +g_main_context_unref +g_main_context_wait +g_main_context_wakeup +g_main_depth +g_main_loop_get_context +g_main_loop_is_running +g_main_loop_new +g_main_loop_quit +g_main_loop_ref +g_main_loop_run +g_main_loop_unref +g_malloc +g_malloc0 +g_markup_error_quark +g_markup_escape_text +g_markup_parse_context_end_parse +g_markup_parse_context_free +g_markup_parse_context_get_element +g_markup_parse_context_get_position +g_markup_parse_context_new +g_markup_parse_context_parse +g_markup_printf_escaped +g_markup_vprintf_escaped +g_mem_chunk_alloc +g_mem_chunk_alloc0 +g_mem_chunk_clean +g_mem_chunk_destroy +g_mem_chunk_free +g_mem_chunk_info +g_mem_chunk_new +g_mem_chunk_print +g_mem_chunk_reset +g_memdup +g_mem_is_system_malloc +g_mem_profile +g_mem_set_vtable +g_mkstemp +g_node_child_index +g_node_child_position +g_node_children_foreach +g_node_copy +g_node_copy_deep +g_node_depth +g_node_destroy +g_node_find +g_node_find_child +g_node_first_sibling +g_node_get_root +g_node_insert +g_node_insert_after +g_node_insert_before +g_node_is_ancestor +g_node_last_child +g_node_last_sibling +g_node_max_height +g_node_n_children +g_node_new +g_node_n_nodes +g_node_nth_child +g_node_pop_allocator +g_node_prepend +g_node_push_allocator +g_node_reverse_children +g_node_traverse +g_node_unlink +g_nullify_pointer +g_once_impl +g_on_error_query +g_on_error_stack_trace +g_option_context_add_group +g_option_context_add_main_entries +g_option_context_error_quark +g_option_context_free +g_option_context_get_help_enabled +g_option_context_get_ignore_unknown_options +g_option_context_get_main_group +g_option_context_new +g_option_context_parse +g_option_context_set_help_enabled +g_option_context_set_ignore_unknown_options +g_option_context_set_main_group +g_option_group_add_entries +g_option_group_free +g_option_group_new +g_option_group_set_error_hook +g_option_group_set_parse_hooks +g_option_group_set_translate_func +g_option_group_set_translation_domain +g_parse_debug_string +g_path_get_basename +g_path_get_dirname +g_path_is_absolute +g_path_skip_root +g_pattern_match +g_pattern_match_simple +g_pattern_match_string +g_pattern_spec_equal +g_pattern_spec_free +g_pattern_spec_new +g_print +g_printerr +g_printf +g_printf_string_upper_bound +g_propagate_error +g_ptr_array_add +g_ptr_array_foreach +g_ptr_array_free +g_ptr_array_new +g_ptr_array_remove +g_ptr_array_remove_fast +g_ptr_array_remove_index +g_ptr_array_remove_index_fast +g_ptr_array_remove_range +g_ptr_array_set_size +g_ptr_array_sized_new +g_ptr_array_sort +g_ptr_array_sort_with_data +g_qsort_with_data +g_quark_from_static_string +g_quark_from_string +g_quark_to_string +g_quark_try_string +g_queue_copy +g_queue_delete_link +g_queue_find +g_queue_find_custom +g_queue_foreach +g_queue_free +g_queue_get_length +g_queue_index +g_queue_insert_after +g_queue_insert_before +g_queue_insert_sorted +g_queue_is_empty +g_queue_link_index +g_queue_new +g_queue_peek_head +g_queue_peek_head_link +g_queue_peek_nth +g_queue_peek_nth_link +g_queue_peek_tail +g_queue_peek_tail_link +g_queue_pop_head +g_queue_pop_head_link +g_queue_pop_nth +g_queue_pop_nth_link +g_queue_pop_tail +g_queue_pop_tail_link +g_queue_push_head +g_queue_push_head_link +g_queue_push_nth +g_queue_push_nth_link +g_queue_push_tail +g_queue_push_tail_link +g_queue_remove +g_queue_remove_all +g_queue_reverse +g_queue_sort +g_queue_unlink +g_rand_copy +g_rand_double +g_rand_double_range +g_rand_free +g_rand_int +g_rand_int_range +g_rand_new +g_rand_new_with_seed +g_rand_new_with_seed_array +g_random_double +g_random_double_range +g_random_int +g_random_int_range +g_random_set_seed +g_rand_set_seed +g_rand_set_seed_array +g_realloc +g_relation_count +g_relation_delete +g_relation_destroy +g_relation_exists +g_relation_index +g_relation_insert +g_relation_new +g_relation_print +g_relation_select +g_return_if_fail_warning +g_scanner_cur_line +g_scanner_cur_position +g_scanner_cur_token +g_scanner_cur_value +g_scanner_destroy +g_scanner_eof +g_scanner_error +g_scanner_get_next_token +g_scanner_input_file +g_scanner_input_text +g_scanner_lookup_symbol +g_scanner_new +g_scanner_peek_next_token +g_scanner_scope_add_symbol +g_scanner_scope_foreach_symbol +g_scanner_scope_lookup_symbol +g_scanner_scope_remove_symbol +g_scanner_set_scope +g_scanner_sync_file_offset +g_scanner_unexp_token +g_scanner_warn +g_set_application_name +g_setenv +g_set_error +g_set_prgname +g_set_printerr_handler +g_set_print_handler +g_shell_error_quark +g_shell_parse_argv +g_shell_quote +g_shell_unquote +g_slist_alloc +g_slist_append +g_slist_concat +g_slist_copy +g_slist_delete_link +g_slist_find +g_slist_find_custom +g_slist_foreach +g_slist_free +g_slist_free_1 +g_slist_index +g_slist_insert +g_slist_insert_before +g_slist_insert_sorted +g_slist_last +g_slist_length +g_slist_nth +g_slist_nth_data +g_slist_pop_allocator +g_slist_position +g_slist_prepend +g_slist_push_allocator +g_slist_remove +g_slist_remove_all +g_slist_remove_link +g_slist_reverse +g_slist_sort +g_slist_sort_with_data +g_snprintf +g_source_add_poll +g_source_attach +g_source_destroy +g_source_get_can_recurse +g_source_get_context +g_source_get_current_time +g_source_get_id +g_source_get_priority +g_source_new +g_source_ref +g_source_remove +g_source_remove_by_funcs_user_data +g_source_remove_by_user_data +g_source_remove_poll +g_source_set_callback +g_source_set_callback_indirect +g_source_set_can_recurse +g_source_set_priority +g_source_unref +g_spaced_primes_closest +g_spawn_async +g_spawn_async_with_pipes +g_spawn_close_pid +g_spawn_command_line_async +g_spawn_command_line_sync +g_spawn_error_quark +g_spawn_sync +g_sprintf +g_static_mutex_free +g_static_mutex_get_mutex_impl +g_static_mutex_init +g_static_private_free +g_static_private_get +g_static_private_init +g_static_private_set +g_static_rec_mutex_free +g_static_rec_mutex_init +g_static_rec_mutex_lock +g_static_rec_mutex_lock_full +g_static_rec_mutex_trylock +g_static_rec_mutex_unlock +g_static_rec_mutex_unlock_full +g_static_rw_lock_free +g_static_rw_lock_init +g_static_rw_lock_reader_lock +g_static_rw_lock_reader_trylock +g_static_rw_lock_reader_unlock +g_static_rw_lock_writer_lock +g_static_rw_lock_writer_trylock +g_static_rw_lock_writer_unlock +g_stpcpy +g_strcanon +g_strcasecmp +g_strchomp +g_strchug +g_strcompress +g_strconcat +g_strdelimit +g_strdown +g_strdup +g_strdup_printf +g_strdupv +g_strdup_vprintf +g_str_equal +g_strerror +g_strescape +g_strfreev +g_str_hash +g_str_has_prefix +g_str_has_suffix +g_string_append +g_string_append_len +g_string_append_printf +g_string_append_unichar +g_string_ascii_down +g_string_ascii_up +g_string_assign +g_string_chunk_free +g_string_chunk_insert +g_string_chunk_insert_const +g_string_chunk_insert_len +g_string_chunk_new +g_string_down +g_string_equal +g_string_erase +g_string_free +g_string_hash +g_string_insert +g_string_insert_c +g_string_insert_len +g_string_insert_unichar +g_string_new +g_string_new_len +g_string_prepend +g_string_prepend_c +g_string_prepend_len +g_string_prepend_unichar +g_string_printf +g_string_set_size +g_string_sized_new +g_string_truncate +g_string_up +g_strip_context +g_strjoin +g_strjoinv +g_strlcat +g_strlcpy +g_strncasecmp +g_strndup +g_strnfill +g_strreverse +g_strrstr +g_strrstr_len +g_strsignal +g_strsplit +g_strsplit_set +g_strstr_len +g_strtod +g_strup +g_strv_length +g_thread_create_full +g_thread_error_quark +g_thread_exit +g_thread_join +g_thread_pool_free +g_thread_pool_get_max_threads +g_thread_pool_get_max_unused_threads +g_thread_pool_get_num_threads +g_thread_pool_get_num_unused_threads +g_thread_pool_new +g_thread_pool_push +g_thread_pool_set_max_threads +g_thread_pool_set_max_unused_threads +g_thread_pool_stop_unused_threads +g_thread_pool_unprocessed +g_thread_self +g_thread_set_priority +g_timeout_add +g_timeout_add_full +g_timeout_source_new +g_timer_continue +g_timer_destroy +g_timer_elapsed +g_timer_new +g_timer_reset +g_timer_start +g_timer_stop +g_time_val_add +g_tree_destroy +g_tree_foreach +g_tree_height +g_tree_insert +g_tree_lookup +g_tree_lookup_extended +g_tree_new +g_tree_new_full +g_tree_new_with_data +g_tree_nnodes +g_tree_remove +g_tree_replace +g_tree_search +g_tree_steal +g_tree_traverse +g_try_malloc +g_try_realloc +g_tuples_destroy +g_tuples_index +g_ucs4_to_utf16 +g_ucs4_to_utf8 +g_unichar_break_type +g_unichar_digit_value +g_unichar_get_mirror_char +g_unichar_isalnum +g_unichar_isalpha +g_unichar_iscntrl +g_unichar_isdefined +g_unichar_isdigit +g_unichar_isgraph +g_unichar_islower +g_unichar_isprint +g_unichar_ispunct +g_unichar_isspace +g_unichar_istitle +g_unichar_isupper +g_unichar_iswide +g_unichar_isxdigit +g_unichar_tolower +g_unichar_totitle +g_unichar_toupper +g_unichar_to_utf8 +g_unichar_type +g_unichar_validate +g_unichar_xdigit_value +g_unicode_canonical_decomposition +g_unicode_canonical_ordering +g_unsetenv +g_usleep +g_utf16_to_ucs4 +g_utf16_to_utf8 +g_utf8_casefold +g_utf8_collate +g_utf8_collate_key +g_utf8_find_next_char +g_utf8_find_prev_char +g_utf8_get_char +g_utf8_get_char_validated +g_utf8_normalize +g_utf8_offset_to_pointer +g_utf8_pointer_to_offset +g_utf8_prev_char +g_utf8_strchr +g_utf8_strdown +g_utf8_strlen +g_utf8_strncpy +g_utf8_strrchr +g_utf8_strreverse +g_utf8_strup +g_utf8_to_ucs4 +g_utf8_to_ucs4_fast +g_utf8_to_utf16 +g_utf8_validate +g_vasprintf +g_vfprintf +g_vprintf +g_vsnprintf +g_vsprintf +#ifdef G_OS_WIN32 +g_win32_error_message +g_win32_ftruncate +g_win32_get_package_installation_directory +g_win32_get_package_installation_subdirectory +g_win32_get_windows_version +g_win32_getlocale +#endif +#ifdef INCLUDE_VARIABLES +g_ascii_table +g_utf8_skip +g_idle_funcs +g_timeout_funcs +g_io_watch_funcs +g_child_watch_funcs +g_thread_functions_for_glib_use +g_thread_use_default_impl +g_threads_got_initialized +glib_binary_age +glib_interface_age +glib_major_version +glib_mem_profiler_table +glib_micro_version +glib_minor_version +#endif +#ifdef INCLUDE_INTERNAL_SYMBOLS +/* internal or inline symbols */ +g_get_codeset +g_string_append_c +g_thread_init_glib +g_trash_stack_height +g_trash_stack_peek +g_trash_stack_pop +g_trash_stack_push +g_bit_nth_lsf +g_bit_nth_msf +g_bit_storage +#endif diff --git a/glib/glist.c b/glib/glist.c index 842167bc3..2a4f74d74 100644 --- a/glib/glist.c +++ b/glib/glist.c @@ -30,6 +30,7 @@ #include "config.h" +#include "galias.h" #include "glib.h" diff --git a/glib/gmain.c b/glib/gmain.c index e33067f62..55fb9a734 100644 --- a/glib/gmain.c +++ b/glib/gmain.c @@ -36,6 +36,7 @@ /* uncomment the next line to get poll() debugging info */ /* #define G_MAIN_POLL_DEBUG */ +#include "galias.h" #include "glib.h" #include "gthreadinit.h" #include diff --git a/glib/gmarkup.c b/glib/gmarkup.c index 9503a53e6..31411a90d 100644 --- a/glib/gmarkup.c +++ b/glib/gmarkup.c @@ -26,6 +26,7 @@ #include #include +#include "galias.h" #include "glib.h" #include "glibintl.h" diff --git a/glib/gmem.c b/glib/gmem.c index d9304857e..d114927aa 100644 --- a/glib/gmem.c +++ b/glib/gmem.c @@ -34,6 +34,7 @@ #include #include +#include "galias.h" #include "glib.h" #include "gthreadinit.h" diff --git a/glib/gmessages.c b/glib/gmessages.c index 8e33e080a..0aac03666 100644 --- a/glib/gmessages.c +++ b/glib/gmessages.c @@ -41,6 +41,7 @@ #include #include +#include "galias.h" #include "glib.h" #include "gdebug.h" #include "gprintfint.h" diff --git a/glib/gnode.c b/glib/gnode.c index b5bce67fc..90dde6fef 100644 --- a/glib/gnode.c +++ b/glib/gnode.c @@ -33,6 +33,7 @@ #include "config.h" +#include "galias.h" #include "glib.h" #ifndef DISABLE_MEM_POOLS diff --git a/glib/goption.c b/glib/goption.c index 507a84a24..ea9ce086c 100644 --- a/glib/goption.c +++ b/glib/goption.c @@ -21,6 +21,7 @@ #include "goption.h" +#include "galias.h" #include "glib.h" #include "gi18n.h" diff --git a/glib/gpattern.c b/glib/gpattern.c index 68bafe81d..b619501d8 100644 --- a/glib/gpattern.c +++ b/glib/gpattern.c @@ -21,6 +21,7 @@ #include +#include "galias.h" #include "gpattern.h" #include "gmacros.h" diff --git a/glib/gprimes.c b/glib/gprimes.c index 439c1c89e..013ace3a5 100644 --- a/glib/gprimes.c +++ b/glib/gprimes.c @@ -30,6 +30,7 @@ #include "config.h" +#include "galias.h" #include "glib.h" diff --git a/glib/gprintf.c b/glib/gprintf.c index 522a7f66c..a6a1e22ca 100644 --- a/glib/gprintf.c +++ b/glib/gprintf.c @@ -27,6 +27,7 @@ #include #include +#include "galias.h" #include "glib.h" #include "gprintf.h" #include "gprintfint.h" diff --git a/glib/gqsort.c b/glib/gqsort.c index b44785be6..ac45e8b59 100644 --- a/glib/gqsort.c +++ b/glib/gqsort.c @@ -36,6 +36,7 @@ #include +#include "galias.h" #include "glib.h" diff --git a/glib/gqueue.c b/glib/gqueue.c index b81167022..0d57b4877 100644 --- a/glib/gqueue.c +++ b/glib/gqueue.c @@ -26,6 +26,7 @@ #include "config.h" +#include "galias.h" #include "glib.h" diff --git a/glib/grand.c b/glib/grand.c index d2a00f59a..7650836e7 100644 --- a/glib/grand.c +++ b/glib/grand.c @@ -47,6 +47,7 @@ #include #endif +#include "galias.h" #include "glib.h" #include "gthreadinit.h" diff --git a/glib/grel.c b/glib/grel.c index d45deb641..54fab40ef 100644 --- a/glib/grel.c +++ b/glib/grel.c @@ -32,6 +32,7 @@ #include #include +#include "galias.h" #include "glib.h" diff --git a/glib/gscanner.c b/glib/gscanner.c index d9c730982..c54b3ac66 100644 --- a/glib/gscanner.c +++ b/glib/gscanner.c @@ -42,6 +42,7 @@ #include #endif +#include "galias.h" #include "glib.h" #include "gprintfint.h" diff --git a/glib/gshell.c b/glib/gshell.c index 849e015dc..679ebf2c6 100644 --- a/glib/gshell.c +++ b/glib/gshell.c @@ -24,6 +24,7 @@ #include +#include "galias.h" #include "glib.h" #ifdef _ diff --git a/glib/gslist.c b/glib/gslist.c index 4cac78fbc..2fca5e075 100644 --- a/glib/gslist.c +++ b/glib/gslist.c @@ -30,6 +30,7 @@ #include "config.h" +#include "galias.h" #include "glib.h" diff --git a/glib/gspawn-win32.c b/glib/gspawn-win32.c index 3c2a944c4..70eaaa8ef 100644 --- a/glib/gspawn-win32.c +++ b/glib/gspawn-win32.c @@ -44,6 +44,7 @@ #include +#include "galias.h" #include "glib.h" #include "gprintfint.h" diff --git a/glib/gspawn.c b/glib/gspawn.c index 2fd31b8ba..b683cdf2f 100644 --- a/glib/gspawn.c +++ b/glib/gspawn.c @@ -35,6 +35,7 @@ #include #endif /* HAVE_SYS_SELECT_H */ +#include "galias.h" #include "glib.h" #include "glibintl.h" diff --git a/glib/gstrfuncs.c b/glib/gstrfuncs.c index f551145bc..d3d4c488d 100644 --- a/glib/gstrfuncs.c +++ b/glib/gstrfuncs.c @@ -43,6 +43,7 @@ #include #endif +#include "galias.h" #include "glib.h" #include "gprintf.h" #include "gprintfint.h" diff --git a/glib/gstring.c b/glib/gstring.c index 6a4a9db67..9b6aaffa5 100644 --- a/glib/gstring.c +++ b/glib/gstring.c @@ -39,6 +39,7 @@ #include #include +#include "galias.h" #include "glib.h" #include "gprintf.h" diff --git a/glib/gthread.c b/glib/gthread.c index 5d507448e..9505b1593 100644 --- a/glib/gthread.c +++ b/glib/gthread.c @@ -40,6 +40,7 @@ #include +#include "galias.h" #include "glib.h" #include "gthreadinit.h" diff --git a/glib/gthreadpool.c b/glib/gthreadpool.c index 39cdd0f16..101e5e30a 100644 --- a/glib/gthreadpool.c +++ b/glib/gthreadpool.c @@ -26,6 +26,7 @@ #include "config.h" +#include "galias.h" #include "glib.h" diff --git a/glib/gtimer.c b/glib/gtimer.c index b2f516bc4..6a05198c1 100644 --- a/glib/gtimer.c +++ b/glib/gtimer.c @@ -29,6 +29,7 @@ */ #include "config.h" +#include "galias.h" #include "glibconfig.h" #ifdef HAVE_UNISTD_H diff --git a/glib/gtree.c b/glib/gtree.c index 6d4f1083c..bbdc7d55d 100644 --- a/glib/gtree.c +++ b/glib/gtree.c @@ -30,6 +30,7 @@ #include "config.h" +#include "galias.h" #include "glib.h" diff --git a/glib/gunibreak.c b/glib/gunibreak.c index 2087d1ed2..1d4c20e97 100644 --- a/glib/gunibreak.c +++ b/glib/gunibreak.c @@ -22,6 +22,7 @@ #include +#include "galias.h" #include "glib.h" #include "gunibreak.h" diff --git a/glib/gunicollate.c b/glib/gunicollate.c index ff7ad3d68..22e802562 100644 --- a/glib/gunicollate.c +++ b/glib/gunicollate.c @@ -26,6 +26,7 @@ #include #endif +#include "galias.h" #include "glib.h" #include "gunicodeprivate.h" diff --git a/glib/gunidecomp.c b/glib/gunidecomp.c index 8c32b1062..d4cf0ec37 100644 --- a/glib/gunidecomp.c +++ b/glib/gunidecomp.c @@ -23,6 +23,7 @@ #include +#include "galias.h" #include "glib.h" #include "gunidecomp.h" #include "gunicomp.h" diff --git a/glib/guniprop.c b/glib/guniprop.c index bd5fc4e8f..1c3fb9f50 100644 --- a/glib/guniprop.c +++ b/glib/guniprop.c @@ -25,6 +25,7 @@ #include #include +#include "galias.h" #include "glib.h" #include "gunichartables.h" #include "gunicodeprivate.h" diff --git a/glib/gutf8.c b/glib/gutf8.c index 88627a21e..b958a45fe 100644 --- a/glib/gutf8.c +++ b/glib/gutf8.c @@ -27,6 +27,7 @@ #endif #include +#include "galias.h" #include "glib.h" #ifdef G_PLATFORM_WIN32 diff --git a/glib/gutils.c b/glib/gutils.c index fe7d44a6a..83a753c25 100644 --- a/glib/gutils.c +++ b/glib/gutils.c @@ -53,6 +53,7 @@ */ #define G_IMPLEMENT_INLINES 1 #define __G_UTILS_C__ +#include "galias.h" #include "glib.h" #include "gprintfint.h" diff --git a/glib/gwin32.c b/glib/gwin32.c index 14509e469..05d49b32d 100644 --- a/glib/gwin32.c +++ b/glib/gwin32.c @@ -31,6 +31,7 @@ #include "config.h" +#include "galias.h" #include "glibconfig.h" #include diff --git a/glib/makegalias.pl b/glib/makegalias.pl new file mode 100755 index 000000000..d3d1a456b --- /dev/null +++ b/glib/makegalias.pl @@ -0,0 +1,105 @@ +#!/usr/bin/perl -w + +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)/) + { + $in_skipped_section = 1; + } + + if ($in_skipped_section) + { + next; + } + + if ($_ =~ /^\#ifdef\s+G/) + { + print $_; + + next; + } + + + my $str = $_; + chomp($str); + my $alias = "IA__".$str; + + print <