Implement the same PLT reduction technique used in GTK+:

Thu Sep 16 02:03:15 2004  Matthias Clasen  <maclas@gmx.de>

	Implement the same PLT reduction technique used in GTK+:
This commit is contained in:
Matthias Clasen 2004-09-16 06:05:53 +00:00 committed by Matthias Clasen
parent e0811a5e15
commit dafdffd751
60 changed files with 1151 additions and 839 deletions

View File

@ -1,3 +1,24 @@
Thu Sep 16 02:03:15 2004 Matthias Clasen <maclas@gmx.de>
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 <tml@iki.fi>
* glib/gwin32.c (g_win32_error_message): Convert message to

View File

@ -1,3 +1,24 @@
Thu Sep 16 02:03:15 2004 Matthias Clasen <maclas@gmx.de>
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 <tml@iki.fi>
* glib/gwin32.c (g_win32_error_message): Convert message to

View File

@ -1,3 +1,24 @@
Thu Sep 16 02:03:15 2004 Matthias Clasen <maclas@gmx.de>
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 <tml@iki.fi>
* glib/gwin32.c (g_win32_error_message): Convert message to

View File

@ -1,3 +1,24 @@
Thu Sep 16 02:03:15 2004 Matthias Clasen <maclas@gmx.de>
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 <tml@iki.fi>
* glib/gwin32.c (g_win32_error_message): Convert message to

View File

@ -1,3 +1,24 @@
Thu Sep 16 02:03:15 2004 Matthias Clasen <maclas@gmx.de>
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 <tml@iki.fi>
* glib/gwin32.c (g_win32_error_message): Convert message to

View File

@ -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

View File

@ -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@

5
glib/abicheck.sh Executable file
View File

@ -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

View File

@ -32,6 +32,7 @@
#include <string.h>
#include <stdlib.h>
#include "galias.h"
#include "glib.h"

View File

@ -26,6 +26,7 @@
#include "config.h"
#include "galias.h"
#include "glib.h"

View File

@ -22,6 +22,7 @@
#include "config.h"
#include "galias.h"
#include "glib.h"
#include "gthreadinit.h"

View File

@ -35,6 +35,7 @@
#include <stdarg.h>
#include <stdio.h>
#include <stdlib.h>
#include "galias.h"
#include "glib.h"
#include "gprintfint.h"

View File

@ -30,6 +30,7 @@
#include "config.h"
#include "galias.h"
#include "glib.h"

View File

@ -32,6 +32,7 @@
#include <string.h>
#include "galias.h"
#include "glib.h"

View File

@ -28,6 +28,7 @@
#include <string.h>
#include <stdlib.h>
#include "galias.h"
#include "glib.h"
#include "gprintfint.h"
#include "gthreadinit.h"

View File

@ -34,7 +34,7 @@
#include "config.h"
#include <string.h>
#include "galias.h"
#include "glib.h"

View File

@ -35,6 +35,7 @@
/* #define DEBUG_MSG(args) g_message args ; */
#endif
#include "galias.h"
#include "glib.h"
#include <time.h>

View File

@ -31,6 +31,7 @@
#include <dirent.h>
#endif
#include "galias.h"
#include "glib.h"
#include "gdir.h"

View File

@ -26,6 +26,7 @@
#include "config.h"
#include "galias.h"
#include "glib.h"

View File

@ -20,6 +20,7 @@
#include "config.h"
#include "galias.h"
#include "glib.h"
#include <sys/stat.h>

View File

@ -30,6 +30,7 @@
#include "config.h"
#include "galias.h"
#include "glib.h"

View File

@ -33,6 +33,7 @@
#include "config.h"
#include "galias.h"
#include "glib.h"

View File

@ -42,6 +42,7 @@
#undef G_DISABLE_DEPRECATED
#include "galias.h"
#include "glib.h"
#include "giochannel.h"

View File

@ -43,6 +43,7 @@
#include <string.h>
#include <fcntl.h>
#include "galias.h"
#include "glib.h"
/*

View File

@ -34,6 +34,7 @@
#include "config.h"
#include "galias.h"
#include "glib.h"
#include <stdlib.h>

View File

@ -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

849
glib/glib.symbols Normal file
View File

@ -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

View File

@ -30,6 +30,7 @@
#include "config.h"
#include "galias.h"
#include "glib.h"

View File

@ -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 <signal.h>

View File

@ -26,6 +26,7 @@
#include <stdlib.h>
#include <errno.h>
#include "galias.h"
#include "glib.h"
#include "glibintl.h"

View File

@ -34,6 +34,7 @@
#include <string.h>
#include <signal.h>
#include "galias.h"
#include "glib.h"
#include "gthreadinit.h"

View File

@ -41,6 +41,7 @@
#include <locale.h>
#include <errno.h>
#include "galias.h"
#include "glib.h"
#include "gdebug.h"
#include "gprintfint.h"

View File

@ -33,6 +33,7 @@
#include "config.h"
#include "galias.h"
#include "glib.h"
#ifndef DISABLE_MEM_POOLS

View File

@ -21,6 +21,7 @@
#include "goption.h"
#include "galias.h"
#include "glib.h"
#include "gi18n.h"

View File

@ -21,6 +21,7 @@
#include <string.h>
#include "galias.h"
#include "gpattern.h"
#include "gmacros.h"

View File

@ -30,6 +30,7 @@
#include "config.h"
#include "galias.h"
#include "glib.h"

View File

@ -27,6 +27,7 @@
#include <stdlib.h>
#include <stdio.h>
#include "galias.h"
#include "glib.h"
#include "gprintf.h"
#include "gprintfint.h"

View File

@ -36,6 +36,7 @@
#include <string.h>
#include "galias.h"
#include "glib.h"

View File

@ -26,6 +26,7 @@
#include "config.h"
#include "galias.h"
#include "glib.h"

View File

@ -47,6 +47,7 @@
#include <unistd.h>
#endif
#include "galias.h"
#include "glib.h"
#include "gthreadinit.h"

View File

@ -32,6 +32,7 @@
#include <stdarg.h>
#include <string.h>
#include "galias.h"
#include "glib.h"

View File

@ -42,6 +42,7 @@
#include <unistd.h>
#endif
#include "galias.h"
#include "glib.h"
#include "gprintfint.h"

View File

@ -24,6 +24,7 @@
#include <string.h>
#include "galias.h"
#include "glib.h"
#ifdef _

View File

@ -30,6 +30,7 @@
#include "config.h"
#include "galias.h"
#include "glib.h"

View File

@ -44,6 +44,7 @@
#include <config.h>
#include "galias.h"
#include "glib.h"
#include "gprintfint.h"

View File

@ -35,6 +35,7 @@
#include <sys/select.h>
#endif /* HAVE_SYS_SELECT_H */
#include "galias.h"
#include "glib.h"
#include "glibintl.h"

View File

@ -43,6 +43,7 @@
#include <signal.h>
#endif
#include "galias.h"
#include "glib.h"
#include "gprintf.h"
#include "gprintfint.h"

View File

@ -39,6 +39,7 @@
#include <string.h>
#include <ctype.h>
#include "galias.h"
#include "glib.h"
#include "gprintf.h"

View File

@ -40,6 +40,7 @@
#include <string.h>
#include "galias.h"
#include "glib.h"
#include "gthreadinit.h"

View File

@ -26,6 +26,7 @@
#include "config.h"
#include "galias.h"
#include "glib.h"

View File

@ -29,6 +29,7 @@
*/
#include "config.h"
#include "galias.h"
#include "glibconfig.h"
#ifdef HAVE_UNISTD_H

View File

@ -30,6 +30,7 @@
#include "config.h"
#include "galias.h"
#include "glib.h"

View File

@ -22,6 +22,7 @@
#include <stdlib.h>
#include "galias.h"
#include "glib.h"
#include "gunibreak.h"

View File

@ -26,6 +26,7 @@
#include <wchar.h>
#endif
#include "galias.h"
#include "glib.h"
#include "gunicodeprivate.h"

View File

@ -23,6 +23,7 @@
#include <stdlib.h>
#include "galias.h"
#include "glib.h"
#include "gunidecomp.h"
#include "gunicomp.h"

View File

@ -25,6 +25,7 @@
#include <string.h>
#include <locale.h>
#include "galias.h"
#include "glib.h"
#include "gunichartables.h"
#include "gunicodeprivate.h"

View File

@ -27,6 +27,7 @@
#endif
#include <string.h>
#include "galias.h"
#include "glib.h"
#ifdef G_PLATFORM_WIN32

View File

@ -53,6 +53,7 @@
*/
#define G_IMPLEMENT_INLINES 1
#define __G_UTILS_C__
#include "galias.h"
#include "glib.h"
#include "gprintfint.h"

View File

@ -31,6 +31,7 @@
#include "config.h"
#include "galias.h"
#include "glibconfig.h"
#include <stdlib.h>

105
glib/makegalias.pl Executable file
View File

@ -0,0 +1,105 @@
#!/usr/bin/perl -w
print <<EOF;
/* Generated by makegalias.pl */
#ifndef DISABLE_VISIBILITY
#include "glibconfig.h"
#ifdef G_HAVE_GNUC_VISIBILITY
#ifdef G_DISABLE_DEPRECATED
#define WAS_NO_G_DEPR
#endif
#undef G_DISABLE_DEPRECATED
#include "glib.h"
#include "gprintf.h"
#ifdef G_OS_WIN32
#include "gwin32.h"
#endif
EOF
my $in_comment = 0;
my $in_skipped_section = 0;
while (<>) {
# 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 <<EOF
extern __typeof ($str) $alias __attribute((visibility("hidden")));
extern __typeof ($str) $str __attribute((alias("$alias"), visibility("default")));
\#define $str $alias
EOF
}
print <<EOF;
#ifdef WAS_NO_G_DEPR
#define G_DISABLE_DEPRECATED
#undef WAS_NO_G_DEPR
#endif
#endif /* G_HAVE_GNUC_VISIBILITY */
#endif /* DISABLE_VISIBILITY */
EOF