Added. Added. Added. Added.

2007-11-28  Alexander Larsson  <alexl@redhat.com>

        * Makefile.am:
        * abicheck.sh: Added.
        * makegioalias.pl: Added.
        * pltcheck.sh: Added.
        * gio.symbols: Added.
	* *.c:
        * inotify/*.c
	Initial work on adding symbol handling.

	* gvfs.h:
	Correct ifdef guard name

        * fam/Makefile.am:
        * inotify/Makefile.am:
        * xdgmime/Makefile.am:
	Include toplevel Makefile.decl


svn path=/trunk/; revision=5972
This commit is contained in:
Alexander Larsson 2007-11-28 12:39:07 +00:00 committed by Alexander Larsson
parent 61582bd91c
commit 7f3280230b
71 changed files with 1147 additions and 10 deletions

View File

@ -1,3 +1,22 @@
2007-11-28 Alexander Larsson <alexl@redhat.com>
* Makefile.am:
* abicheck.sh: Added.
* makegioalias.pl: Added.
* pltcheck.sh: Added.
* gio.symbols: Added.
* *.c:
* inotify/*.c
Initial work on adding symbol handling.
* gvfs.h:
Correct ifdef guard name
* fam/Makefile.am:
* inotify/Makefile.am:
* xdgmime/Makefile.am:
Include toplevel Makefile.decl
2007-11-27 Matthias Clasen <mclasen@redhat.com>
* gcontenttype.c: Move doc comments to the unix section.

View File

@ -1,3 +1,5 @@
include $(top_srcdir)/Makefile.decl
NULL =
SUBDIRS=
@ -6,6 +8,21 @@ if OS_UNIX
SUBDIRS += xdgmime
endif
gio.def: gio.symbols
(echo -e EXPORTS; $(CPP) -P -DINCLUDE_VARIABLES -DINCLUDE_INTERNAL_SYMBOLS -DG_OS_WIN32 -DALL_FILES - <$(srcdir)/gobject.symbols | sed -e '/^$$/d' -e 's/^/ /' -e 's/G_GNUC_[^ ]*//g' | sort) > gobject.def
gioalias.h: gio.symbols
$(PERL) $(srcdir)/makegioalias.pl < $(srcdir)/gio.symbols > gioalias.h
gioaliasdef.c: gio.symbols
$(PERL) $(srcdir)/makegioalias.pl -def < $(srcdir)/gio.symbols > gioaliasdef.c
if OS_LINUX
if HAVE_GNUC_VISIBILITY
TESTS = abicheck.sh pltcheck.sh
endif
endif
AM_CPPFLAGS = \
-DG_LOG_DOMAIN=\"GLib-GIO\" \
-I$(top_builddir) \
@ -19,8 +36,9 @@ AM_CPPFLAGS = \
lib_LTLIBRARIES = libgio-2.0.la
marshal_sources = \
gio-marshal.h \
gio-marshal.c \
gio-marshal.h \
gio-marshal.c \
makegioalias.pl \
$(NULL)
if CROSS_COMPILING
@ -215,8 +233,13 @@ gioinclude_HEADERS = \
gvolumemonitor.h \
$(NULL)
# these sources (also mentioned above) are generated.
BUILT_SOURCES = gio-marshal.h gio-marshal.c gioalias.h gioaliasdef.c
EXTRA_DIST = \
gio-marshal.list \
gio.symbols \
$(NULL)
CLEANFILES = \

13
gio/abicheck.sh Executable file
View File

@ -0,0 +1,13 @@
#! /bin/sh
egrep '^#([^i]|if).*[^\]$' "${top_builddir:-..}/glibconfig.h" > glibconfig.cpp
INCLUDES="-include ${top_builddir:-..}/config.h"
INCLUDES="$INCLUDES -include glibconfig.cpp"
cpp -DINCLUDE_VARIABLES -P $INCLUDES -DALL_FILES ${srcdir:-.}/gobject.symbols | sed -e '/^$/d' -e 's/ G_GNUC.*$//' -e 's/ PRIVATE$//' | sort > expected-abi
rm glibconfig.cpp
nm -D -g --defined-only .libs/libgio-2.0.so | cut -d ' ' -f 3 | sort > actual-abi
diff -u expected-abi actual-abi && rm expected-abi actual-abi

View File

@ -1,3 +1,5 @@
include $(top_srcdir)/Makefile.decl
NULL =
module_flags = -export_dynamic -avoid-version -module -no-undefined -export-symbols-regex '^g_io_module_(load|unload)'

View File

@ -25,6 +25,8 @@
#include "glibintl.h"
#include <gioerror.h>
#include "gioalias.h"
/**
* SECTION:gappinfo
* @short_description: Application information and launch contexts
@ -33,8 +35,6 @@
* #GAppInfo and #GAppLaunchContext are used for describing and launching
* installed system applications.
*
* @Note: These may/will be moved to Gtk+ in the future.
*
**/
static void g_app_info_base_init (gpointer g_class);
@ -594,3 +594,6 @@ g_app_launch_context_launch_failed (GAppLaunchContext *context,
if (class->launch_failed != NULL)
class->launch_failed (context, startup_notify_id);
}
#define __G_APP_INFO_C__
#include "gioaliasdef.c"

View File

@ -24,6 +24,8 @@
#include "gasynchelper.h"
#include "gioalias.h"
/**
* SECTION:gasynchelper
* @short_description: Asynchronous Helper Functions

View File

@ -24,6 +24,8 @@
#include "gasyncresult.h"
#include "glibintl.h"
#include "gioalias.h"
/**
* SECTION:gasyncresult
* @short_description: Asynchronous Function Results
@ -167,3 +169,6 @@ g_async_result_get_source_object (GAsyncResult *res)
return (* iface->get_source_object) (res);
}
#define __G_ASYNC_RESULT_C__
#include "gioaliasdef.c"

View File

@ -28,6 +28,8 @@
#include <string.h>
#include "glibintl.h"
#include "gioalias.h"
/**
* SECTION:gbufferedinputstream
* @short_description: Buffered Input Stream
@ -1359,4 +1361,8 @@ g_buffered_input_stream_skip_finish (GInputStream *stream,
return data->bytes_skipped;
}
#define __G_BUFFERED_INPUT_STREAM_C__
#include "gioaliasdef.c"
/* vim: ts=2 sw=2 et */

View File

@ -27,6 +27,8 @@
#include "string.h"
#include "glibintl.h"
#include <gioalias.h>
/**
* SECTION:gbufferedoutputstream
* @short_description: Buffered Output Stream
@ -758,4 +760,7 @@ g_buffered_output_stream_close_finish (GOutputStream *stream,
return TRUE;
}
#define __G_BUFFERED_OUTPUT_STREAM_C__
#include "gioaliasdef.c"
/* vim: ts=2 sw=2 et */

View File

@ -27,6 +27,7 @@
#include "gcancellable.h"
#include "glibintl.h"
#include "gioalias.h"
/**
* SECTION:gcancellable
@ -334,4 +335,5 @@ g_cancellable_cancel (GCancellable *cancellable)
}
}
#define __G_CANCELLABLE_C__
#include "gioaliasdef.c"

View File

@ -28,6 +28,8 @@
#include "gcontenttypeprivate.h"
#include "glibintl.h"
#include "gioalias.h"
/**
* SECTION:gcontenttype
* @short_description: platform specific content typing
@ -868,3 +870,6 @@ g_content_types_get_registered (void)
}
#endif /* Unix version */
#define __G_CONTENT_TYPE_C__
#include "gioaliasdef.c"

View File

@ -25,6 +25,8 @@
#include "gdatainputstream.h"
#include "glibintl.h"
#include "gioalias.h"
/**
* SECTION:gdatainputstream
* @short_description: Data Input Stream
@ -854,3 +856,6 @@ g_data_input_stream_read_until (GDataInputStream *stream,
return data_until;
}
#define __G_DATA_INPUT_STREAM_C__
#include "gioaliasdef.c"

View File

@ -25,6 +25,8 @@
#include "gdataoutputstream.h"
#include "glibintl.h"
#include "gioalias.h"
/**
* SECTION:gdataoutputstream
* @short_description: Data Output Stream
@ -473,3 +475,6 @@ g_data_output_stream_put_string (GDataOutputStream *stream,
&bytes_written,
cancellable, error);
}
#define __G_DATA_OUTPUT_STREAM_C__
#include "gioaliasdef.c"

View File

@ -74,8 +74,6 @@ GDataOutputStream* g_data_output_stream_new (GOutputStream *base_stream)
void g_data_output_stream_set_byte_order (GDataOutputStream *stream,
GDataStreamByteOrder order);
GDataStreamByteOrder g_data_output_stream_get_byte_order (GDataOutputStream *stream);
void g_data_output_stream_set_expand_buffer (GDataOutputStream *stream,
gboolean expand_buffer);
gboolean g_data_output_stream_put_byte (GDataOutputStream *stream,
guchar data,

View File

@ -36,6 +36,8 @@
#include <glib/gstdio.h>
#include "glibintl.h"
#include "gioalias.h"
#define DEFAULT_APPLICATIONS_GROUP "Default Applications"
#define MIME_CACHE_GROUP "MIME Cache"
@ -2190,3 +2192,6 @@ get_all_desktop_entries_for_mime_type (const char *base_mime_type)
return desktop_entries;
}
#define __G_DESKTOP_APP_INFO_C__
#include "gioaliasdef.c"

View File

@ -29,6 +29,8 @@
#include "gvfs.h"
#include "glibintl.h"
#include "gioalias.h"
/**
* SECTION:gdirectorymonitor
* @short_description: Directory Monitor
@ -489,3 +491,6 @@ g_directory_monitor_emit_event (GDirectoryMonitor *monitor,
update_rate_limiter_timeout (monitor, limiter->send_virtual_changes_done_at);
}
}
#define __G_DIRECTORY_MONITOR_C__
#include "gioaliasdef.c"

View File

@ -25,6 +25,8 @@
#include "gsimpleasyncresult.h"
#include "glibintl.h"
#include "gioalias.h"
/**
* SECTION:gdrive
* @short_description: Virtual File System drive management
@ -383,3 +385,6 @@ g_drive_eject_finish (GDrive *drive,
return (* iface->mount_finish) (drive, result, error);
}
#define __G_DRIVE_C__
#include "gioaliasdef.c"

View File

@ -32,6 +32,8 @@
#include "gdummyfile.h"
#include "gioalias.h"
static void g_dummy_file_file_iface_init (GFileIface *iface);
typedef struct {

View File

@ -34,6 +34,8 @@
#include "gpollfilemonitor.h"
#include "glibintl.h"
#include "gioalias.h"
/**
* SECTION:gfile
* @short_description: File and Directory Handling
@ -4605,3 +4607,6 @@ g_file_replace_contents_finish (GFile *file,
return TRUE;
}
#define __G_FILE_C__
#include "gioaliasdef.c"

View File

@ -28,6 +28,8 @@
#include <glib-object.h>
#include "glibintl.h"
#include "gioalias.h"
/**
* SECTION:gfileattribute
* @short_description: Key-Value Paired File Attributes
@ -906,3 +908,6 @@ g_file_attribute_info_list_add (GFileAttributeInfoList *list,
list_update_public (priv);
}
#define __G_FILE_ATTRIBUTE_C__
#include "gioaliasdef.c"

View File

@ -27,6 +27,8 @@
#include "gsimpleasyncresult.h"
#include "glibintl.h"
#include "gioalias.h"
/**
* SECTION:gfileenumerator
* @short_description: Enumerated Files Routines
@ -628,3 +630,6 @@ g_file_enumerator_real_close_finish (GFileEnumerator *enumerator,
g_file_enumerator_real_close_async);
return TRUE;
}
#define __G_FILE_ENUMERATOR_C__
#include "gioaliasdef.c"

View File

@ -25,6 +25,8 @@
#include "gfileicon.h"
#include "gsimpleasyncresult.h"
#include "gioalias.h"
/**
* SECTION:gfileicon
* @short_description: Icons for given files
@ -269,3 +271,6 @@ g_file_icon_loadable_icon_iface_init (GLoadableIconIface *iface)
iface->load_async = g_file_icon_load_async;
iface->load_finish = g_file_icon_load_finish;
}
#define __G_FILE_ICON_C__
#include "gioaliasdef.c"

View File

@ -42,6 +42,8 @@
#include "gfileinfo.h"
#include "glibintl.h"
#include "gioalias.h"
/* We use this nasty thing, because NULL is a valid attribute matcher (matches nothing) */
#define NO_ATTRIBUTE_MASK ((GFileAttributeMatcher *)1)
@ -2083,3 +2085,6 @@ g_file_attribute_matcher_enumerate_next (GFileAttributeMatcher *matcher)
return get_attribute_for_id (sub_matcher->id);
}
}
#define __G_FILE_INFO_C__
#include "gioaliasdef.c"

View File

@ -28,6 +28,8 @@
#include "gsimpleasyncresult.h"
#include "glibintl.h"
#include "gioalias.h"
/**
* SECTION:gfileinputstream
* @short_description: file input streaming operations
@ -518,3 +520,7 @@ g_file_input_stream_real_query_info_finish (GFileInputStream *stream,
return NULL;
}
#define __G_FILE_INPUT_STREAM_C__
#include "gioaliasdef.c"

View File

@ -28,6 +28,8 @@
#include "gvfs.h"
#include "glibintl.h"
#include "gioalias.h"
/**
* SECTION:gfilemonitor
* @short_description: File Monitor
@ -403,3 +405,6 @@ g_file_monitor_emit_event (GFileMonitor *monitor,
schedule_virtual_change_done (monitor, file);
}
}
#define __G_FILE_MONITOR_C__
#include "gioaliasdef.c"

View File

@ -27,6 +27,8 @@
#include <string.h>
#include "glibintl.h"
#include "gioalias.h"
/**
* SECTION:gfilenamecompleter
* @short_description: Filename Completer
@ -508,3 +510,6 @@ g_filename_completer_set_dirs_only (GFilenameCompleter *completer,
completer->dirs_only = dirs_only;
}
#define __G_FILENAME_COMPLETER_C__
#include "gioaliasdef.c"

View File

@ -28,6 +28,8 @@
#include "gsimpleasyncresult.h"
#include "glibintl.h"
#include "gioalias.h"
/**
* SECTION:gfileoutputstream
* @short_description: file output streaming operations
@ -645,3 +647,6 @@ g_file_output_stream_real_query_info_finish (GFileOutputStream *stream,
return NULL;
}
#define __G_FILE_OUTPUT_STREAM_C__
#include "gioaliasdef.c"

View File

@ -25,6 +25,8 @@
#include "ginputstream.h"
#include "glibintl.h"
#include "gioalias.h"
/**
* SECTION:gfilterinputstream
* @short_description: Filter Input Stream
@ -396,4 +398,7 @@ g_filter_input_stream_close_finish (GInputStream *stream,
return res;
}
#define __G_FILTER_INPUT_STREAM_C__
#include "gioaliasdef.c"
/* vim: ts=2 sw=2 et */

View File

@ -25,6 +25,8 @@
#include "goutputstream.h"
#include "glibintl.h"
#include "gioalias.h"
/**
* SECTION:gfilteroutputstream
* @short_description: Filter Output Stream
@ -376,5 +378,7 @@ g_filter_output_stream_close_finish (GOutputStream *stream,
return res;
}
#define __G_FILTER_OUTPUT_STREAM_C__
#include "gioaliasdef.c"
/* vim: ts=2 sw=2 et */

View File

@ -25,6 +25,8 @@
#include "glibintl.h"
#include "gioalias.h"
static void g_icon_base_init (gpointer g_class);
static void g_icon_class_init (gpointer g_class,
gpointer class_data);
@ -120,3 +122,5 @@ g_icon_equal (GIcon *icon1,
return (* iface->equal) (icon1, icon2);
}
#define __G_ICON_C__
#include "gioaliasdef.c"

View File

@ -28,6 +28,8 @@
#include "gseekable.h"
#include "gsimpleasyncresult.h"
#include "gioalias.h"
/**
* SECTION:ginputstream
* @short_description: base class for implementing streaming input
@ -1204,3 +1206,6 @@ g_input_stream_real_close_finish (GInputStream *stream,
g_assert (g_simple_async_result_get_source_tag (simple) == g_input_stream_real_close_async);
return TRUE;
}
#define __G_INPUT_STREAM_C__
#include "gioaliasdef.c"

688
gio/gio.symbols Normal file
View File

@ -0,0 +1,688 @@
/* This file lists all exported symbols. It is used to generate
* the gio.def file used to control exports on Windows and the
* gioalias.h/gioaliasdef.c files used to avoid PLT entries for
* internal uses of exported functions (see makegioalias.pl).
*
* Every symbol must be included in the right
* #ifdef IN_HEADER(sym) #endif and
* #ifdef IN_FILE(sym) #endif sections.
*/
#ifdef ALL_FILES
#define IN_FILE(x) 1
#define IN_HEADER(x) 1
#endif
#if IN_HEADER(__G_VFS_H__)
#if IN_FILE(__G_VFS_C__)
g_vfs_get_type G_GNUC_CONST
g_vfs_is_active
g_vfs_get_file_for_path
g_vfs_get_file_for_uri
g_vfs_get_supported_uri_schemes
g_vfs_parse_name
g_vfs_get_default
g_vfs_get_local
#endif
#endif
#if IN_HEADER(__G_APP_INFO_H__)
#if IN_FILE(__G_APP_INFO_C__)
g_app_info_get_type G_GNUC_CONST
g_app_launch_context_get_type G_GNUC_CONST
g_app_info_dup
g_app_info_equal
g_app_info_get_id
g_app_info_get_name
g_app_info_get_description
g_app_info_get_executable
g_app_info_get_icon
g_app_info_launch
g_app_info_supports_uris
g_app_info_launch_uris
g_app_info_should_show
g_app_info_set_as_default_for_type
g_app_info_set_as_default_for_extension
g_app_info_add_supports_type
g_app_info_can_remove_supports_type
g_app_info_remove_supports_type
g_app_launch_context_new
g_app_launch_context_get_display
g_app_launch_context_get_startup_notify_id
g_app_launch_context_launch_failed
#endif
#if IN_FILE(__G_DESKTOP_APP_INFO_C__)
g_app_info_create_from_commandline
g_app_info_get_all
g_app_info_get_all_for_type
g_app_info_get_default_for_type
g_app_info_get_default_for_uri_scheme
#endif
#endif
#if IN_HEADER(__G_ASYNC_RESULT_H__)
#if IN_FILE(__G_ASYNC_RESULT_C__)
g_async_result_get_type G_GNUC_CONST
g_async_result_get_user_data
g_async_result_get_source_object
#endif
#endif
#if IN_HEADER(__G_BUFFERED_INPUT_STREAM_H__)
#if IN_FILE(__G_BUFFERED_INPUT_STREAM_C__)
g_buffered_input_stream_get_type G_GNUC_CONST
g_buffered_input_stream_new
g_buffered_input_stream_new_sized
g_buffered_input_stream_get_buffer_size
g_buffered_input_stream_set_buffer_size
g_buffered_input_stream_get_available
g_buffered_input_stream_peek
g_buffered_input_stream_peek_buffer
g_buffered_input_stream_fill
g_buffered_input_stream_fill_async
g_buffered_input_stream_fill_finish
g_buffered_input_stream_read_byte
#endif
#endif
#if IN_HEADER(__G_BUFFERED_OUTPUT_STREAM_H__)
#if IN_FILE(__G_BUFFERED_OUTPUT_STREAM_C__)
g_buffered_output_stream_get_type G_GNUC_CONST;
g_buffered_output_stream_new
g_buffered_output_stream_new_sized
g_buffered_output_stream_get_buffer_size
g_buffered_output_stream_set_buffer_size
g_buffered_output_stream_get_auto_grow
g_buffered_output_stream_set_auto_grow
#endif
#endif
#if IN_HEADER(__G_CANCELLABLE_H__)
#if IN_FILE(__G_CANCELLABLE_C__)
g_cancellable_get_type G_GNUC_CONST
g_cancellable_new
g_cancellable_is_cancelled
g_cancellable_set_error_if_cancelled
g_cancellable_get_fd
g_cancellable_get_current
g_push_current_cancellable
g_pop_current_cancellable
g_cancellable_reset
g_cancellable_cancel
#endif
#endif
#if IN_HEADER(__G_CONTENT_TYPE_H__)
#if IN_FILE(__G_CONTENT_TYPE_C__)
g_content_type_equals
g_content_type_is_a
g_content_type_is_unknown
g_content_type_get_description
g_content_type_get_mime_type
g_content_type_get_icon
g_content_type_can_be_executable
g_content_type_guess
g_content_types_get_registered
#endif
#endif
#if IN_HEADER(__G_DATA_INPUT_STREAM_H__)
#if IN_FILE(__G_DATA_INPUT_STREAM_C__)
g_data_input_stream_get_type G_GNUC_CONST
g_data_input_stream_new
g_data_input_stream_set_byte_order
g_data_input_stream_get_byte_order
g_data_input_stream_set_newline_type
g_data_input_stream_get_newline_type
g_data_input_stream_read_byte
g_data_input_stream_read_int16
g_data_input_stream_read_uint16
g_data_input_stream_read_int32
g_data_input_stream_read_uint32
g_data_input_stream_read_int64
g_data_input_stream_read_uint64
g_data_input_stream_read_line
g_data_input_stream_read_until
#endif
#endif
#if IN_HEADER(__G_DATA_OUTPUT_STREAM_H__)
#if IN_FILE(__G_DATA_OUTPUT_STREAM_C__)
g_data_output_stream_get_type G_GNUC_CONST
g_data_output_stream_new
g_data_output_stream_set_byte_order
g_data_output_stream_get_byte_order
g_data_output_stream_put_byte
g_data_output_stream_put_int16
g_data_output_stream_put_uint16
g_data_output_stream_put_int32
g_data_output_stream_put_uint32
g_data_output_stream_put_int64
g_data_output_stream_put_uint64
g_data_output_stream_put_string
#endif
#endif
#if IN_HEADER(__G_DIRECTORY_MONITOR_H__)
#if IN_FILE(__G_DIRECTORY_MONITOR_C__)
g_directory_monitor_get_type G_GNUC_CONST
g_directory_monitor_cancel
g_directory_monitor_is_cancelled
g_directory_monitor_set_rate_limit
g_directory_monitor_emit_event
#endif
#endif
#if IN_HEADER(__G_DRIVE_H__)
#if IN_FILE(__G_DRIVE_C__)
g_drive_get_type G_GNUC_CONST
g_drive_get_name
g_drive_get_icon
g_drive_has_volumes
g_drive_get_volumes
g_drive_is_automounted
g_drive_can_mount
g_drive_can_eject
g_drive_mount
g_drive_mount_finish
g_drive_eject
g_drive_eject_finish
#endif
#endif
#if IN_HEADER(__G_FILE_ATTRIBUTE_H__)
#if IN_FILE(__G_FILE_ATTRIBUTE_C__)
g_file_attribute_value_new
g_file_attribute_value_free
g_file_attribute_value_clear
g_file_attribute_value_set
g_file_attribute_value_dup
g_file_attribute_value_as_string
g_file_attribute_value_get_string
g_file_attribute_value_get_byte_string
g_file_attribute_value_get_boolean
g_file_attribute_value_get_uint32
g_file_attribute_value_get_int32
g_file_attribute_value_get_uint64
g_file_attribute_value_get_int64
g_file_attribute_value_get_object
g_file_attribute_value_set_string
g_file_attribute_value_set_byte_string
g_file_attribute_value_set_boolean
g_file_attribute_value_set_uint32
g_file_attribute_value_set_int32
g_file_attribute_value_set_uint64
g_file_attribute_value_set_int64
g_file_attribute_value_set_object
g_file_attribute_info_list_new
g_file_attribute_info_list_ref
g_file_attribute_info_list_unref
g_file_attribute_info_list_dup
g_file_attribute_info_list_lookup
g_file_attribute_info_list_add
#endif
#endif
#if IN_HEADER(__G_FILE_H__)
#if IN_FILE(__G_FILE_C__)
g_file_get_type G_GNUC_CONST
g_file_new_for_path
g_file_new_for_uri
g_file_new_for_commandline_arg
g_file_parse_name
g_file_dup
g_file_hash
g_file_equal
g_file_get_basename
g_file_get_path
g_file_get_uri
g_file_get_parse_name
g_file_get_parent
g_file_get_child
g_file_get_child_for_display_name
g_file_contains_file
g_file_get_relative_path
g_file_resolve_relative_path
g_file_is_native
g_file_has_uri_scheme
g_file_get_uri_scheme
g_file_read
g_file_read_async
g_file_read_finish
g_file_append_to
g_file_create
g_file_replace
g_file_append_to_async
g_file_append_to_finish
g_file_create_async
g_file_create_finish
g_file_replace_async
g_file_replace_finish
g_file_query_info
g_file_query_info_async
g_file_query_info_finish
g_file_query_filesystem_info
g_file_find_enclosing_volume
g_file_enumerate_children
g_file_enumerate_children_async
g_file_enumerate_children_finish
g_file_set_display_name
g_file_set_display_name_async
g_file_set_display_name_finish
g_file_delete
g_file_trash
g_file_copy
g_file_move
g_file_make_directory
g_file_make_symbolic_link
g_file_query_settable_attributes
g_file_query_writable_namespaces
g_file_set_attribute
g_file_set_attributes_from_info
g_file_set_attributes_async
g_file_set_attributes_finish
g_file_set_attribute_string
g_file_set_attribute_byte_string
g_file_set_attribute_uint32
g_file_set_attribute_int32
g_file_set_attribute_uint64
g_file_set_attribute_int64
g_mount_for_location
g_mount_for_location_finish
g_file_mount_mountable
g_file_mount_mountable_finish
g_file_unmount_mountable
g_file_unmount_mountable_finish
g_file_eject_mountable
g_file_eject_mountable_finish
g_file_copy_attributes
g_file_monitor_directory
g_file_monitor_file
g_file_load_contents
g_file_load_contents_async
g_file_load_contents_finish
g_file_load_partial_contents_async
g_file_load_partial_contents_finish
g_file_replace_contents
g_file_replace_contents_async
g_file_replace_contents_finish
#endif
#endif
#if IN_HEADER(__G_FILE_ENUMERATOR_H__)
#if IN_FILE(__G_FILE_ENUMERATOR_C__)
g_file_enumerator_get_type G_GNUC_CONST
g_file_enumerator_next_file
g_file_enumerator_close
g_file_enumerator_next_files_async
g_file_enumerator_next_files_finish
g_file_enumerator_close_async
g_file_enumerator_close_finish
g_file_enumerator_is_closed
g_file_enumerator_has_pending
g_file_enumerator_set_pending
#endif
#endif
#if IN_HEADER(__G_FILE_ICON_H__)
#if IN_FILE(__G_FILE_ICON_C__)
g_file_icon_get_type G_GNUC_CONST
g_file_icon_new
g_file_icon_get_file
#endif
#endif
#if IN_HEADER(__G_FILE_INFO_H__)
#if IN_FILE(__G_FILE_INFO_C__)
g_file_info_get_type G_GNUC_CONST
g_file_info_new
g_file_info_dup
g_file_info_copy_into
g_file_info_has_attribute
g_file_info_list_attributes
g_file_info_get_attribute_type
g_file_info_remove_attribute
g_file_info_get_attribute
g_file_info_get_attribute_string
g_file_info_get_attribute_byte_string
g_file_info_get_attribute_boolean
g_file_info_get_attribute_object
g_file_info_set_attribute
g_file_info_set_attribute_string
g_file_info_set_attribute_byte_string
g_file_info_set_attribute_boolean
g_file_info_set_attribute_object
g_file_info_clear_status
g_file_info_get_file_type
g_file_info_get_is_hidden
g_file_info_get_is_backup
g_file_info_get_is_symlink
g_file_info_get_name
g_file_info_get_display_name
g_file_info_get_edit_name
g_file_info_get_icon
g_file_info_get_content_type
g_file_info_get_size
g_file_info_get_modification_time
g_file_info_get_symlink_target
g_file_info_get_etag
g_file_info_get_sort_order
g_file_info_set_attribute_mask
g_file_info_unset_attribute_mask
g_file_info_set_file_type
g_file_info_set_is_hidden
g_file_info_set_is_symlink
g_file_info_set_name
g_file_info_set_display_name
g_file_info_set_edit_name
g_file_info_set_icon
g_file_info_set_content_type
g_file_info_set_size
g_file_info_set_modification_time
g_file_info_set_symlink_target
g_file_info_set_sort_order
g_file_attribute_matcher_unref
g_file_attribute_matcher_matches
g_file_attribute_matcher_matches_only
g_file_attribute_matcher_enumerate_namespace
g_file_attribute_matcher_enumerate_next
#endif
#endif
#if IN_HEADER(__G_FILE_INPUT_STREAM_H__)
#if IN_FILE(__G_FILE_INPUT_STREAM_C__)
g_file_input_stream_get_type G_GNUC_CONST
g_file_input_stream_query_info
g_file_input_stream_query_info_async
g_file_input_stream_query_info_finish
g_file_input_stream_tell
g_file_input_stream_can_seek
g_file_input_stream_seek
#endif
#endif
#if IN_HEADER(__G_FILE_MONITOR_H__)
#if IN_FILE(__G_FILE_MONITOR_C__)
g_file_monitor_get_type G_GNUC_CONST
g_file_monitor_cancel
g_file_monitor_is_cancelled
g_file_monitor_set_rate_limit
g_file_monitor_emit_event
#endif
#endif
#if IN_HEADER(__G_FILENAME_COMPLETER_H__)
#if IN_FILE(__G_FILENAME_COMPLETER_C__)
g_filename_completer_get_type G_GNUC_CONST
g_filename_completer_new
g_filename_completer_get_completion_suffix
g_filename_completer_get_completions
g_filename_completer_set_dirs_only
#endif
#endif
#if IN_HEADER(__G_FILE_OUTPUT_STREAM_H__)
#if IN_FILE(__G_FILE_OUTPUT_STREAM_C__)
g_file_output_stream_get_type G_GNUC_CONST
g_file_output_stream_query_info
g_file_output_stream_query_info_async
g_file_output_stream_query_info_finish
g_file_output_stream_get_etag
g_file_output_stream_tell
g_file_output_stream_can_seek
g_file_output_stream_seek
g_file_output_stream_can_truncate
g_file_output_stream_truncate
#endif
#endif
#if IN_HEADER(__G_FILTER_INPUT_STREAM_H__)
#if IN_FILE(__G_FILTER_INPUT_STREAM_C__)
g_filter_input_stream_get_type G_GNUC_CONST
g_filter_input_stream_get_base_stream
#endif
#endif
#if IN_HEADER(__G_FILTER_OUTPUT_STREAM_H__)
#if IN_FILE(__G_FILTER_OUTPUT_STREAM_C__)
g_filter_output_stream_get_type G_GNUC_CONST
g_filter_output_stream_get_base_stream
#endif
#endif
#if IN_HEADER(__G_ICON_H__)
#if IN_FILE(__G_ICON_C__)
g_icon_get_type G_GNUC_CONST
g_icon_hash
g_icon_equal
#endif
#endif
#if IN_HEADER(__G_INPUT_STREAM_H__)
#if IN_FILE(__G_INPUT_STREAM_C__)
g_input_stream_get_type G_GNUC_CONST
g_input_stream_read
g_input_stream_read_all
g_input_stream_skip
g_input_stream_close
g_input_stream_read_async
g_input_stream_read_finish
g_input_stream_skip_async
g_input_stream_skip_finish
g_input_stream_close_async
g_input_stream_close_finish
g_input_stream_is_closed
g_input_stream_has_pending
g_input_stream_set_pending
#endif
#endif
#if IN_HEADER(__G_IO_ERROR_H__)
#if IN_FILE(__G_IO_ERROR_C__)
g_io_error_quark
g_io_error_from_errno
#endif
#endif
#if IN_HEADER(__G_IO_MODULE_H__)
#if IN_FILE(__G_IO_MODULE_C__)
g_io_module_get_type G_GNUC_CONST
g_io_module_new
g_io_modules_ensure_loaded
#endif
#endif
#if IN_HEADER(__G_IO_SCHEDULER_H__)
#if IN_FILE(__G_IO_SCHEDULER_C__)
g_schedule_io_job
g_cancel_all_io_jobs
g_io_job_send_to_mainloop
#endif
#endif
#if IN_HEADER(__G_LOADABLE_ICON_H__)
#if IN_FILE(__G_LOADABLE_ICON_C__)
g_loadable_icon_get_type G_GNUC_CONST
g_loadable_icon_load
g_loadable_icon_load_async
g_loadable_icon_load_finish
#endif
#endif
#if IN_HEADER(__G_MEMORY_INPUT_STREAM_H__)
#if IN_FILE(__G_MEMORY_INPUT_STREAM_C__)
g_memory_input_stream_get_type G_GNUC_CONST
g_memory_input_stream_from_data
g_memory_input_stream_set_free_data
g_memory_input_stream_get_data
g_memory_input_stream_get_data_size
#endif
#endif
#if IN_HEADER(__G_MEMORY_OUTPUT_STREAM_H__)
#if IN_FILE(__G_MEMORY_OUTPUT_STREAM_C__)
g_memory_output_stream_get_type G_GNUC_CONST
g_memory_output_stream_new
g_memory_output_stream_set_max_size
g_memory_output_stream_get_data
g_memory_output_stream_set_free_data
#endif
#endif
#if IN_HEADER(__G_MOUNT_OPERATION_H__)
#if IN_FILE(__G_MOUNT_OPERATION_C__)
g_mount_operation_get_type G_GNUC_CONST
g_mount_operation_new
g_mount_operation_get_username
g_mount_operation_set_username
g_mount_operation_get_password
g_mount_operation_set_password
g_mount_operation_get_anonymous
g_mount_operation_set_anonymous
g_mount_operation_get_domain
g_mount_operation_set_domain
g_mount_operation_get_password_save
g_mount_operation_set_password_save
g_mount_operation_get_choice
g_mount_operation_set_choice
g_mount_operation_reply
#endif
#endif
#if IN_HEADER(__G_OUTPUT_STREAM_H__)
#if IN_FILE(__G_OUTPUT_STREAM_C__)
g_output_stream_get_type G_GNUC_CONST
g_output_stream_write
g_output_stream_write_all
g_output_stream_splice
g_output_stream_flush
g_output_stream_close
g_output_stream_write_async
g_output_stream_write_finish
g_output_stream_splice_async
g_output_stream_splice_finish
g_output_stream_flush_async
g_output_stream_flush_finish
g_output_stream_close_async
g_output_stream_close_finish
g_output_stream_is_closed
g_output_stream_has_pending
g_output_stream_set_pending
#endif
#endif
#if IN_HEADER(__G_SEEKABLE_H__)
#if IN_FILE(__G_SEEKABLE_C__)
g_seekable_get_type G_GNUC_CONST
g_seekable_tell
g_seekable_can_seek
g_seekable_seek
g_seekable_can_truncate
g_seekable_truncate
#endif
#endif
#if IN_HEADER(__G_SIMPLE_ASYNC_RESULT_H__)
#if IN_FILE(__G_SIMPLE_ASYNC_RESULT_C__)
g_simple_async_result_get_type G_GNUC_CONST
g_simple_async_result_new
g_simple_async_result_new_error
g_simple_async_result_new_from_error
g_simple_async_result_set_op_res_gpointer
g_simple_async_result_get_op_res_gpointer
g_simple_async_result_set_op_res_gssize
g_simple_async_result_get_op_res_gssize
g_simple_async_result_set_op_res_gboolean
g_simple_async_result_get_op_res_gboolean
g_simple_async_result_get_source_tag
g_simple_async_result_set_handle_cancellation
g_simple_async_result_complete
g_simple_async_result_complete_in_idle
g_simple_async_result_run_in_thread
g_simple_async_result_set_from_error
g_simple_async_result_propagate_error
g_simple_async_result_set_error
g_simple_async_result_set_error_va
g_simple_async_report_error_in_idle
#endif
#endif
#if IN_HEADER(__G_THEMED_ICON_H__)
#if IN_FILE(__G_THEMED_ICON_C__)
g_themed_icon_get_type G_GNUC_CONST
g_themed_icon_new
g_themed_icon_new_from_names
g_themed_icon_get_names
#endif
#endif
#if IN_HEADER(__G_UNIX_MOUNTS_H__)
#if IN_FILE(__G_UNIX_MOUNTS_C__)
g_unix_mount_free
g_unix_mount_point_free
g_unix_mount_compare
g_unix_mount_get_mount_path
g_unix_mount_get_device_path
g_unix_mount_get_fs_type
g_unix_mount_is_readonly
g_unix_mount_is_system_internal
g_unix_mount_guess_type
g_unix_mount_point_compare
g_unix_mount_point_get_mount_path
g_unix_mount_point_get_device_path
g_unix_mount_point_get_fs_type
g_unix_mount_point_is_readonly
g_unix_mount_point_is_user_mountable
g_unix_mount_point_is_loopback
g_unix_mount_point_guess_type
g_get_unix_mount_points
g_get_unix_mounts
g_get_unix_mount_at
g_unix_mounts_changed_since
g_unix_mount_points_changed_since
g_unix_mount_monitor_get_type G_GNUC_CONST
g_unix_mount_monitor_new
#endif
#endif
#if IN_HEADER(__G_UNIX_INPUT_STREAM_H__)
#if IN_FILE(__G_UNIX_INPUT_STREAM_C__)
g_unix_input_stream_get_type G_GNUC_CONST
g_unix_input_stream_new
#endif
#endif
#if IN_HEADER(__G_UNIX_OUTPUT_STREAM_H__)
#if IN_FILE(__G_UNIX_OUTPUT_STREAM_C__)
g_unix_output_stream_get_type G_GNUC_CONST
g_unix_output_stream_new
#endif
#endif
#if IN_HEADER(__G_VOLUME_H__)
#if IN_FILE(__G_VOLUME_C__)
g_volume_get_type G_GNUC_CONST
g_volume_get_root
g_volume_get_name
g_volume_get_icon
g_volume_get_drive
g_volume_can_unmount
g_volume_can_eject
g_volume_unmount
g_volume_unmount_finish
g_volume_eject
g_volume_eject_finish
#endif
#endif
#if IN_HEADER(__G_VOLUME_MONITOR_H__)
#if IN_FILE(__G_VOLUME_MONITOR_C__)
g_volume_monitor_get_type G_GNUC_CONST
g_volume_monitor_get_mounted_volumes
g_volume_monitor_get_connected_drives
#endif
#if IN_FILE(__G_UNION_VOLUME_MONITOR_C__)
g_volume_monitor_get
#endif
#endif

View File

@ -24,6 +24,8 @@
#include <errno.h>
#include "gioerror.h"
#include "gioalias.h"
/**
* SECTION:gioerror
* @short_description: Error helper functions
@ -169,3 +171,6 @@ g_io_error_from_errno (gint err_no)
break;
}
}
#define __G_IO_ERROR_C__
#include "gioaliasdef.c"

View File

@ -24,6 +24,8 @@
#include "giomodule.h"
#include "gioalias.h"
/**
* SECTION:giomodule
* @short_description: Loadable GIO Modules
@ -247,3 +249,6 @@ g_io_modules_ensure_loaded (const char *directory)
G_UNLOCK (loaded_dirs);
}
#define __G_IO_MODULE_C__
#include "gioaliasdef.c"

View File

@ -24,6 +24,8 @@
#include "gioscheduler.h"
#include "gioalias.h"
/**
* SECTION:gioscheduler
* @short_description: I/O Scheduler
@ -380,3 +382,6 @@ g_io_job_send_to_mainloop (GIOJob *job,
mainloop_proxy_free (proxy);
}
}
#define __G_IO_SCHEDULER_C__
#include "gioaliasdef.c"

View File

@ -25,6 +25,8 @@
#include "gloadableicon.h"
#include "glibintl.h"
#include "gioalias.h"
/**
* SECTION:gloadableicon
* @short_description: Loadable Icons
@ -276,3 +278,6 @@ g_loadable_icon_real_load_finish (GLoadableIcon *icon,
return g_object_ref (data->stream);
}
#define __G_LOADABLE_ICON_C__
#include "gioaliasdef.c"

View File

@ -29,6 +29,8 @@
#include <string.h>
#include "gioalias.h"
enum
{
PROP_0,

View File

@ -77,6 +77,8 @@
#include <glib/gstdio.h>
#include "glibintl.h"
#include "gioalias.h"
static void g_local_file_file_iface_init (GFileIface *iface);
static GFileAttributeInfoList *local_writable_attributes = NULL;

View File

@ -27,6 +27,8 @@
#include <glocalfileinfo.h>
#include "glibintl.h"
#include "gioalias.h"
/* TODO:
* It would be nice to use the dirent->d_type to check file type without
* needing to stat each files on linux and other systems that support it.

View File

@ -60,6 +60,8 @@
#include "gcontenttype.h"
#include "gcontenttypeprivate.h"
#include "gioalias.h"
struct ThumbMD5Context {
guint32 buf[4];
guint32 bits[2];

View File

@ -35,6 +35,7 @@
#include "glocalfileinfo.h"
#include "glibintl.h"
#include "gioalias.h"
G_DEFINE_TYPE (GLocalFileInputStream, g_local_file_input_stream, G_TYPE_FILE_INPUT_STREAM);

View File

@ -27,6 +27,8 @@
#include <string.h>
#include "gioalias.h"
enum
{
PROP_0,

View File

@ -36,6 +36,8 @@
#include "glocalfileoutputstream.h"
#include "glocalfileinfo.h"
#include "gioalias.h"
G_DEFINE_TYPE (GLocalFileOutputStream, g_local_file_output_stream, G_TYPE_FILE_OUTPUT_STREAM);
/* Some of the file replacement code was based on the code from gedit,

View File

@ -27,6 +27,8 @@
#include <sys/types.h>
#include <pwd.h>
#include "gioalias.h"
struct _GLocalVfs
{
GVfs parent;

View File

@ -28,6 +28,8 @@
#include "gsimpleasyncresult.h"
#include "glibintl.h"
#include "gioalias.h"
/**
* SECTION:gmemoryinputstream
* @short_description: streaming input operations on memory chunks
@ -465,5 +467,7 @@ g_memory_input_stream_truncate (GSeekable *seekable,
return FALSE;
}
/* vim: ts=2 sw=2 et */
#define __G_MEMORY_INPUT_STREAM_C__
#include "gioaliasdef.c"
/* vim: ts=2 sw=2 et */

View File

@ -28,6 +28,8 @@
#include "string.h"
#include "glibintl.h"
#include "gioalias.h"
/**
* SECTION:gmemoryoutputstream
* @short_description: streaming output operations on memory chunks
@ -685,4 +687,7 @@ g_memory_output_stream_truncate (GSeekable *seekable,
return TRUE;
}
#define __G_MEMORY_OUTPUT_STREAM_C__
#include "gioaliasdef.c"
/* vim: ts=2 sw=2 et */

View File

@ -28,6 +28,8 @@
#include "gio-marshal.h"
#include "glibintl.h"
#include "gioalias.h"
/**
* SECTION:gmountoperation
* @short_description: Authentication methods for mountable locations
@ -408,3 +410,6 @@ g_mount_operation_reply (GMountOperation *op,
g_return_if_fail (G_IS_MOUNT_OPERATION (op));
g_signal_emit (op, signals[REPLY], 0, abort);
}
#define __G_MOUNT_OPERATION_C__
#include "gioaliasdef.c"

View File

@ -5,6 +5,7 @@
#include <glib.h>
#include "gnativevolumemonitor.h"
#include "gioalias.h"
G_DEFINE_ABSTRACT_TYPE (GNativeVolumeMonitor, g_native_volume_monitor, G_TYPE_VOLUME_MONITOR);

View File

@ -25,6 +25,8 @@
#include "gsimpleasyncresult.h"
#include "glibintl.h"
#include "gioalias.h"
/**
* SECTION:goutputstream
* @short_description: base class for implementing streaming output
@ -1343,3 +1345,6 @@ g_output_stream_real_close_finish (GOutputStream *stream,
g_assert (g_simple_async_result_get_source_tag (simple) == g_output_stream_real_close_async);
return TRUE;
}
#define __G_OUTPUT_STREAM_C__
#include "gioaliasdef.c"

View File

@ -26,6 +26,8 @@
#include "gpollfilemonitor.h"
#include "gfilemonitor.h"
#include "gioalias.h"
static gboolean g_poll_file_monitor_cancel (GFileMonitor* monitor);
static void schedule_poll_timeout (GPollFileMonitor* poll_monitor);

View File

@ -24,6 +24,8 @@
#include "gseekable.h"
#include "glibintl.h"
#include "gioalias.h"
/**
* SECTION:gseekable
* @short_description: Stream seeking interface
@ -203,3 +205,5 @@ g_seekable_truncate (GSeekable *seekable,
return (* iface->truncate) (seekable, offset, cancellable, error);
}
#define __G_SEEKABLE_C__
#include "gioaliasdef.c"

View File

@ -34,6 +34,8 @@
#include <gio/gioerror.h>
#include "glibintl.h"
#include "gioalias.h"
/**
* SECTION:gsimpleasyncresult
* @short_description: simple asynchronous results implementation
@ -680,3 +682,6 @@ g_simple_async_report_error_in_idle (GObject *object,
g_simple_async_result_complete_in_idle (simple);
g_object_unref (simple);
}
#define __G_SIMPLE_ASYNC_RESULT_C__
#include "gioaliasdef.c"

View File

@ -24,6 +24,8 @@
#include "gthemedicon.h"
#include "gioalias.h"
/**
* SECTION:gthemedicon
* @short_description: Themed Icons
@ -184,3 +186,6 @@ g_themed_icon_icon_iface_init (GIconIface *iface)
iface->hash = g_themed_icon_hash;
iface->equal = g_themed_icon_equal;
}
#define __G_THEMED_ICON_C__
#include "gioaliasdef.c"

View File

@ -35,6 +35,8 @@
#include "glibintl.h"
#include "gioalias.h"
struct _GUnionVolumeMonitor {
GVolumeMonitor parent;
@ -393,3 +395,6 @@ g_volume_get_for_mount_path (const char *mountpoint)
return volume;
}
#define __G_UNION_VOLUME_MONITOR_C__
#include "gioaliasdef.c"

View File

@ -32,6 +32,8 @@
#include "gvolumemonitor.h"
#include "glibintl.h"
#include "gioalias.h"
struct _GUnixDrive {
GObject parent;

View File

@ -39,6 +39,8 @@
#include "gasynchelper.h"
#include "glibintl.h"
#include "gioalias.h"
/**
* SECTION:gunixinputstream
* @short_description: Unix Input Stream
@ -478,3 +480,5 @@ g_unix_input_stream_close_finish (GInputStream *stream,
return TRUE;
}
#define __G_UNIX_INPUT_STREAM_C__
#include "gioaliasdef.c"

View File

@ -47,6 +47,8 @@
#include "gfile.h"
#include "gfilemonitor.h"
#include "gioalias.h"
/**
* SECTION:gunixmounts
* @short_description: Unix Mounts
@ -1589,3 +1591,6 @@ g_unix_mount_point_guess_type (GUnixMountPoint *mount_point)
mount_point->device_path,
mount_point->filesystem_type);
}
#define __G_UNIX_MOUNTS_C__
#include "gioaliasdef.c"

View File

@ -39,6 +39,8 @@
#include "gasynchelper.h"
#include "glibintl.h"
#include "gioalias.h"
/**
* SECTION:gunixoutputstream
* @short_description: Unix Output Stream
@ -436,3 +438,6 @@ g_unix_output_stream_close_finish (GOutputStream *stream,
/* Failures handled in generic close_finish code */
return TRUE;
}
#define __G_UNIX_OUTPUT_STREAM_C__
#include "gioaliasdef.c"

View File

@ -33,6 +33,8 @@
#include "gthemedicon.h"
#include "glibintl.h"
#include "gioalias.h"
struct _GUnixVolume {
GObject parent;

View File

@ -32,6 +32,8 @@
#include "gvolumeprivate.h"
#include "glibintl.h"
#include "gioalias.h"
struct _GUnixVolumeMonitor {
GNativeVolumeMonitor parent;

View File

@ -27,6 +27,8 @@
#include "giomodule.h"
#include "glibintl.h"
#include "gioalias.h"
/**
* SECTION:gvfs
* @short_description: Virtual File System
@ -274,3 +276,5 @@ g_vfs_get_local (void)
return G_VFS (vfs);
}
#define __G_VFS_C__
#include "gioaliasdef.c"

View File

@ -20,8 +20,8 @@
* Author: Alexander Larsson <alexl@redhat.com>
*/
#ifndef __G_VFS_IMPLEMENTATION_H__
#define __G_VFS_IMPLEMENTATION_H__
#ifndef __G_VFS_H__
#define __G_VFS_H__
#include <glib-object.h>
#include <gio/gfile.h>

View File

@ -26,6 +26,8 @@
#include "gsimpleasyncresult.h"
#include "glibintl.h"
#include "gioalias.h"
/**
* SECTION:gvolume
* @short_description: mounted volume management
@ -377,3 +379,6 @@ g_volume_eject_finish (GVolume *volume,
iface = G_VOLUME_GET_IFACE (volume);
return (* iface->eject_finish) (volume, result, error);
}
#define __G_VOLUME_C__
#include "gioaliasdef.c"

View File

@ -24,6 +24,8 @@
#include "gvolumemonitor.h"
#include "glibintl.h"
#include "gioalias.h"
/**
* SECTION:gvolumemonitor
* @short_description: Volume Monitor
@ -183,3 +185,5 @@ g_volume_monitor_get_connected_drives (GVolumeMonitor *volume_monitor)
return class->get_connected_drives (volume_monitor);
}
#define __G_VOLUME_MONITOR_C__
#include "gioaliasdef.c"

View File

@ -33,6 +33,8 @@
#include <windows.h>
#include <shlwapi.h>
#include "gioalias.h"
#ifndef ASSOCF_INIT_BYEXENAME
#define ASSOCF_INIT_BYEXENAME 0x00000002
#endif

View File

@ -1,3 +1,5 @@
include $(top_srcdir)/Makefile.decl
NULL =
noinst_LTLIBRARIES = libinotify.la

View File

@ -31,6 +31,8 @@
#define USE_INOTIFY 1
#include "inotify-helper.h"
#include "gioalias.h"
struct _GInotifyDirectoryMonitor
{
GLocalDirectoryMonitor parent_instance;

View File

@ -31,6 +31,8 @@
#define USE_INOTIFY 1
#include "inotify-helper.h"
#include "gioalias.h"
struct _GInotifyFileMonitor
{
GLocalFileMonitor parent_instance;

137
gio/makegioalias.pl Executable file
View File

@ -0,0 +1,137 @@
#!/usr/bin/perl -w
my $do_def = 0;
if (($#ARGV >= 0) && ($ARGV[0] eq "-def")) {
shift;
$do_def = 1;
}
print <<EOF;
/* Generated by makegioalias.pl */
#ifndef DISABLE_VISIBILITY
#include "glibconfig.h"
#ifdef G_HAVE_GNUC_VISIBILITY
EOF
if ($do_def) {
print <<EOF
#undef IN_FILE
#define IN_FILE defined
#undef IN_HEADER
#define IN_HEADER(x) 1
EOF
}
else {
print <<EOF
#define IN_FILE(x) 1
#define IN_HEADER defined
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|ALL_FILES)/)
{
$in_skipped_section = 1;
}
if ($in_skipped_section)
{
next;
}
if ($_ =~ /^\#ifn?def\s+G/)
{
print $_;
next;
}
if ($_ =~ /^\#if.*(IN_FILE|IN_HEADER)/)
{
print $_;
next;
}
chop;
my $str = $_;
my @words;
my $attributes = "";
@words = split(/ /, $str);
$str = shift(@words);
chomp($str);
my $alias = "IA__".$str;
# Drop any Win32 specific .def file syntax, but keep attributes
foreach $word (@words) {
$attributes = "$attributes $word" unless $word eq "PRIVATE";
}
if (!$do_def) {
print <<EOF
extern __typeof ($str) $alias __attribute((visibility("hidden")))$attributes;
\#define $str $alias
EOF
}
else {
print <<EOF
\#undef $str
extern __typeof ($str) $str __attribute((alias("$alias"), visibility("default")));
EOF
}
}
print <<EOF;
#endif /* G_HAVE_GNUC_VISIBILITY */
#endif /* DISABLE_VISIBILITY */
EOF

19
gio/pltcheck.sh Executable file
View File

@ -0,0 +1,19 @@
#!/bin/sh
LANG=C
status=0
if ! which readelf 2>/dev/null >/dev/null; then
echo "'readelf' not found; skipping test"
exit 0
fi
SKIP='\<g_access\|\<g_array_\|\<g_ascii\|\<g_list_\|\<g_assert_warning\|\<g_atomic_int\|\<g_build_filename\|\<g_byte_array\|\<g_child_watch\|\<g_convert\|\<g_dir_\|\<g_error_\|\<g_file_error_quark\|\<g_file_get_contents\|\<g_file_set_contents\|\<g_file_test\|\<g_filename_\|\<g_find_program_in_path\|\<g_free\|\<g_get_\|\<g_getenv\|\<g_hash_table_\|\<g_idle_\|\<g_intern_static_string\|\<g_io_channel_\|\<g_key_file_\|\<g_listenv\|\<g_locale_to_utf8\|\<g_log\|\<g_main_context_wakeup\|\<g_malloc\|\<g_markup_\|\<g_mkdir_\|\<g_mkstemp\|\<g_module_\|\<g_object_\|\<g_once_\|\<g_param_spec_\|\<g_path_\|\<g_printerr\|\<g_propagate_error\|\<g_ptr_array_\|\<g_qsort_\|\<g_quark_\|\<g_queue_\|\<g_realloc\|\<g_return_if_fail\|\<g_set_error\|\<g_shell_\|\<g_signal_\|\<g_slice_\|\<g_slist_\|\<g_snprintf\|\<g_source_\|\<g_spawn_\|\<g_static_\|\<g_str\|\<g_thread_pool_\|\<g_time_val_add\|\<g_timeout_\|\<g_type_\|\<g_unlink\|\<g_uri_\|\<g_utf8_\|\<g_value_'
for so in .libs/lib*.so; do
echo Checking $so for local PLT entries
readelf -r $so | grep 'JU\?MP_SLOT' | grep '\<g_' | grep -v $SKIP && status=1
done
exit $status

View File

@ -1,3 +1,5 @@
include $(top_srcdir)/Makefile.decl
AM_CPPFLAGS = -DXDG_PREFIX=_gio_xdg
noinst_LTLIBRARIES = libxdgmime.la