Binary compatibility report for the DirectFB library  between 1.0.1 and 1.2.0 versions on x86

Test Info


Library NameDirectFB
Version #11.0.1
Version #21.2.0
CPU Typex86
GCC Version4.6.1

Test Results


Total Header Files47
Total Shared Libraries3
Total Symbols / Types212 / 225
VerdictIncompatible
(10.1%)

Problem Summary


SeverityCount
Added Symbols-28
Removed SymbolsHigh0
Problems with
Data Types
High0
Medium36
Low28
Problems with
Symbols
High1
Medium0
Low83
Problems with
Constants
Low1
Other Changes
in Data Types
-2

Added Symbols (28)


call.h, libfusion-1.2.so.0.0.0
fusion_call_return ( FusionCall* call, unsigned int serial, int val )

conf.h, libdirect-1.2.so.0.0.0
direct_config_set ( char const* name, char const* value )
direct_config_usage [data]

conf.h, libfusion-1.2.so.0.0.0
fusion_config_set ( char const* name, char const* value )
fusion_config_usage [data]

debug.h, libdirect-1.2.so.0.0.0
direct_debug_at_always ( DirectDebugDomain* domain, char const* format, ... )

direct.h, libdirect-1.2.so.0.0.0
direct_cleanup_handler_add ( DirectCleanupHandlerFunc func, void* ctx, DirectCleanupHandler** ret_handler )
direct_cleanup_handler_remove DirectCleanupHandler* handler )

directfb_util.h, libdirectfb-1.2.so.0.0.0
dfb_input_event_type_name DFBInputEventType type )
dfb_window_event_type_name DFBWindowEventType type )

fusion.h, libfusion-1.2.so.0.0.0
fusion_is_multi FusionWorld const* world )
fusion_world_get_fork_action FusionWorld* world )
fusion_world_set_fork_callback ( FusionWorld* world, FusionForkCallback callback )

lock.h, libfusion-1.2.so.0.0.0
fusion_skirmish_lock_count ( FusionSkirmish* skirmish, int* lock_count )
fusion_skirmish_notify FusionSkirmish* skirmish )
fusion_skirmish_wait ( FusionSkirmish* skirmish, unsigned int timeout )

log.h, libdirect-1.2.so.0.0.0
direct_log_default ( )
direct_log_lock DirectLog* log )
direct_log_unlock DirectLog* log )

reactor.h, libfusion-1.2.so.0.0.0
fusion_reactor_attach_channel ( FusionReactor* reactor, int channel, ReactionFunc func, void* ctx, Reaction* reaction )
fusion_reactor_dispatch_channel ( FusionReactor* reactor, int channel, void const* msg_data, int msg_size, bool self, ReactionFunc const* globals )
fusion_reactor_set_dispatch_callback ( FusionReactor* reactor, FusionCall* call, void* call_ptr )
fusion_reactor_set_name ( FusionReactor* reactor, char const* name )

shm.h, libfusion-1.2.so.0.0.0
fusion_shm_enum_pools ( FusionWorld* world, FusionSHMPoolCallback callback, void* ctx )

system.h, libdirect-1.2.so.0.0.0
direct_page_align unsigned long value )

thread.h, libdirect-1.2.so.0.0.0
direct_thread_policy_name int policy )
direct_thread_scheduler_name DirectConfigThreadScheduler scheduler )
direct_thread_type_name DirectThreadType type )

to the top

Problems with Symbols, High Severity (1)


object.h, libfusion-1.0.so.0.1.0
[+] fusion_object_pool_create ( char const* name, int object_size, int message_size, void(*destructor)(FusionObject*, bool), FusionWorld const* world ) (1)

to the top

Problems with Data Types, Medium Severity (36)


conf.h
[+] struct __D_DirectConfig (1)
[+] struct __Fusion_FusionConfig (2)

directfb.h
[+] enum DFBResult (28)

lock.h
[+] union FusionSkirmish (2)

object.h
[+] struct __Fusion_FusionObject (1)

property.h
[+] union FusionProperty (1)

ref.h
[+] union FusionRef (1)

to the top

Problems with Data Types, Low Severity (28)


call.h
[+] struct FusionCall (1)
[+] typedef FusionCallHandler (1)

conf.h
[+] struct __D_DirectConfig (7)
[+] struct __Fusion_FusionConfig (1)

debug.h
[+] struct DirectDebugDomain (2)

directfb.h
[+] enum DFBResult (1)
[+] struct _IDirectFB (2)

lock.h
[+] struct anon-struct-lock.h-41 (2)
[+] struct anon-struct-lock.h-47 (3)
[+] union FusionSkirmish (1)

object.h
[+] struct __Fusion_FusionObject (1)
[+] typedef FusionObjectDestructor (1)

property.h
[+] struct anon-struct-property.h-45 (2)

ref.h
[+] struct anon-struct-ref.h-39 (2)
[+] union FusionRef (1)

to the top

Problems with Symbols, Low Severity (83)


arena.h, libfusion-1.0.so.0.1.0
[+] fusion_arena_add_shared_field ( FusionArena* arena, char const* name, void* data ) (1)
[+] fusion_arena_enter ( FusionWorld* world, char const* name, ArenaEnterFunc initialize, ArenaEnterFunc join, void* ctx, FusionArena** ret_arena, int* ret_error ) (1)
[+] fusion_arena_exit ( FusionArena* arena, ArenaExitFunc shutdown, ArenaExitFunc leave, void* ctx, bool emergency, int* ret_error ) (1)
[+] fusion_arena_get_shared_field ( FusionArena* arena, char const* name, void** data ) (1)

call.h, libfusion-1.0.so.0.1.0
[+] fusion_call_destroy FusionCall* call ) (1)
[+] fusion_call_execute ( FusionCall* call, FusionCallExecFlags flags, int call_arg, void* call_ptr, int* ret_val ) (1)
[+] fusion_call_init ( FusionCall* call, int(*handler)(int, int, void*, void*), void* ctx, FusionWorld const* world ) (1)

direct.h, libdirect-1.0.so.0.1.0
[+] direct_initialize ( ) (1)
[+] direct_shutdown ( ) (1)

fusion.h, libfusion-1.0.so.0.1.0
[+] fusion_enter int world_index, int abi_version, FusionEnterRole role, FusionWorld** ret_world ) (1)
[+] fusion_exit ( FusionWorld* world, bool emergency ) (1)
[+] fusion_kill ( FusionWorld* world, FusionID fusion_id, int signal, int timeout_ms ) (1)
[+] fusion_sync FusionWorld const* world ) (1)

interface.h, libdirect-1.0.so.0.1.0
[+] DirectGetInterface ( DirectInterfaceFuncs** funcs, char const* type, char const* implementation, DirectInterfaceProbeFunc probe, void* probe_ctx ) (1)
[+] DirectProbeInterface ( DirectInterfaceFuncs* funcs, void* ctx ) (1)

lock.h, libfusion-1.0.so.0.1.0
[+] fusion_skirmish_destroy FusionSkirmish* skirmish ) (1)
[+] fusion_skirmish_dismiss FusionSkirmish* skirmish ) (1)
[+] fusion_skirmish_init ( FusionSkirmish* skirmish, char const* name, FusionWorld const* world ) (1)
[+] fusion_skirmish_prevail FusionSkirmish* skirmish ) (1)
[+] fusion_skirmish_swoop FusionSkirmish* skirmish ) (1)

log.h, libdirect-1.0.so.0.1.0
[+] direct_log_create ( DirectLogType type, char const* param, DirectLog** ret_log ) (1)
[+] direct_log_destroy DirectLog* log ) (1)
[+] direct_log_printf DirectLog* log, char const* format, ... ) (1)
[+] direct_log_set_default DirectLog* log ) (1)

messages.h, libdirect-1.0.so.0.1.0
[+] direct_messages_derror ( DirectResult result, char const* format, ... ) (1)

object.h, libfusion-1.0.so.0.1.0
[+] fusion_object_activate FusionObject* object ) (1)
[+] fusion_object_destroy FusionObject* object ) (1)
[+] fusion_object_get ( FusionObjectPool* pool, FusionObjectID object_id, FusionObject** ret_object ) (1)
[+] fusion_object_pool_destroy ( FusionObjectPool* pool, FusionWorld const* world ) (1)
[+] fusion_object_pool_enum ( FusionObjectPool* pool, FusionObjectCallback callback, void* ctx ) (1)
[+] fusion_object_set_int_property ( FusionObject* object, char const* key, int value ) (1)
[+] fusion_object_set_lock ( FusionObject* object, FusionSkirmish* lock ) (1)
[+] fusion_object_set_property ( FusionObject* object, char const* key, void* value, void** old_value ) (1)
[+] fusion_object_set_string_property ( FusionObject* object, char const* key, char* value ) (1)

pool.h, libfusion-1.0.so.0.1.0
[+] fusion_shm_pool_allocate ( FusionSHMPoolShared* pool, int size, bool clear, bool lock, void** ret_data ) (1)
[+] fusion_shm_pool_attach FusionSHM* shm, FusionSHMPoolShared* pool ) (1)
[+] fusion_shm_pool_create ( FusionWorld* world, char const* name, unsigned int max_size, bool debug, FusionSHMPoolShared** ret_pool ) (1)
[+] fusion_shm_pool_deallocate ( FusionSHMPoolShared* pool, void* data, bool lock ) (1)
[+] fusion_shm_pool_destroy ( FusionWorld* world, FusionSHMPoolShared* pool ) (1)
[+] fusion_shm_pool_detach FusionSHM* shm, FusionSHMPoolShared* pool ) (1)
[+] fusion_shm_pool_reallocate ( FusionSHMPoolShared* pool, void* data, int size, bool lock, void** ret_data ) (1)

property.h, libfusion-1.0.so.0.1.0
[+] fusion_property_cede FusionProperty* property ) (1)
[+] fusion_property_destroy FusionProperty* property ) (1)
[+] fusion_property_holdup FusionProperty* property ) (1)
[+] fusion_property_init ( FusionProperty* property, FusionWorld const* world ) (1)
[+] fusion_property_lease FusionProperty* property ) (1)
[+] fusion_property_purchase FusionProperty* property ) (1)

reactor.h, libfusion-1.0.so.0.1.0
[+] fusion_reactor_attach ( FusionReactor* reactor, ReactionFunc func, void* ctx, Reaction* reaction ) (1)
[+] fusion_reactor_attach_global ( FusionReactor* reactor, int index, void* ctx, GlobalReaction* reaction ) (1)
[+] fusion_reactor_destroy FusionReactor* reactor ) (1)
[+] fusion_reactor_detach ( FusionReactor* reactor, Reaction* reaction ) (1)
[+] fusion_reactor_detach_global ( FusionReactor* reactor, GlobalReaction* reaction ) (1)
[+] fusion_reactor_direct ( FusionReactor* reactor, bool direct ) (1)
[+] fusion_reactor_dispatch ( FusionReactor* reactor, void const* msg_data, bool self, ReactionFunc const* globals ) (1)
[+] fusion_reactor_free FusionReactor* reactor ) (1)
[+] fusion_reactor_set_lock ( FusionReactor* reactor, FusionSkirmish* skirmish ) (1)
[+] fusion_reactor_set_lock_only ( FusionReactor* reactor, FusionSkirmish* lock ) (1)

ref.h, libfusion-1.0.so.0.1.0
[+] fusion_ref_destroy FusionRef* ref ) (1)
[+] fusion_ref_down FusionRef* ref, bool global ) (1)
[+] fusion_ref_inherit FusionRef* ref, FusionRef* from ) (1)
[+] fusion_ref_init FusionRef* ref, char const* name, FusionWorld const* world ) (1)
[+] fusion_ref_stat FusionRef* ref, int* refs ) (1)
[+] fusion_ref_unlock FusionRef* ref ) (1)
[+] fusion_ref_up FusionRef* ref, bool global ) (1)
[+] fusion_ref_watch FusionRef* ref, FusionCall* call, int call_arg ) (1)
[+] fusion_ref_zero_lock FusionRef* ref ) (1)
[+] fusion_ref_zero_trylock FusionRef* ref ) (1)

signals.h, libdirect-1.0.so.0.1.0
[+] direct_signal_handler_add int num, DirectSignalHandlerFunc func, void* ctx, DirectSignalHandler** ret_handler ) (1)
[+] direct_signal_handler_remove DirectSignalHandler* handler ) (1)
[+] direct_signals_initialize ( ) (1)
[+] direct_signals_shutdown ( ) (1)

stream.h, libdirect-1.0.so.0.1.0
[+] direct_stream_create ( char const* filename, DirectStream** ret_stream ) (1)
[+] direct_stream_peek ( DirectStream* stream, unsigned int length, int offset, void* buf, unsigned int* read_out ) (1)
[+] direct_stream_read ( DirectStream* stream, unsigned int length, void* buf, unsigned int* read_out ) (1)
[+] direct_stream_seek ( DirectStream* stream, unsigned int offset ) (1)
[+] direct_stream_wait ( DirectStream* stream, unsigned int length, timeval* timeout ) (1)

util.h, libdirect-1.0.so.0.1.0
[+] DirectResultString DirectResult result ) (1)
[+] errno2result int erno ) (1)

vector.h, libfusion-1.0.so.0.1.0
[+] fusion_vector_add ( FusionVector* vector, void* element ) (1)
[+] fusion_vector_insert ( FusionVector* vector, void* element, int index ) (1)
[+] fusion_vector_move ( FusionVector* vector, int from, int to ) (1)
[+] fusion_vector_remove ( FusionVector* vector, int index ) (1)
[+] fusion_vector_remove_last FusionVector* vector ) (1)

to the top

Problems with Constants (1)


directfb.h
[+] DFB_NUM_PIXELFORMATS

to the top

Other Changes in Data Types (2)


directfb.h
[+] enum DFBResult (2)

to the top

Header Files (47)


arena.h
call.h
clock.h
debug.h
dfb_types.h
dfiff.h
dgiff.h
direct.h
build.h (direct/build.h)
conf.h (direct/conf.h)
types.h (direct/types.h)
directfb.h
directfb_keyboard.h
directfb_keynames.h
directfb_strings.h
directfb_util.h
directfb_version.h
directfbgl.h
fusion.h
build.h (fusion/build.h)
conf.h (fusion/conf.h)
types.h (fusion/types.h)
interface.h
list.h
lock.h
log.h
mem.h
memcpy.h
messages.h
modules.h
object.h
pool.h
property.h
reactor.h
ref.h
serial.h
shm.h
shmalloc.h
signals.h
stream.h
system.h
thread.h
trace.h
tree.h
utf8.h
util.h
vector.h

to the top

Shared Libraries (3)


libdirect-1.0.so.0.1.0
libdirectfb-1.0.so.0.1.0
libfusion-1.0.so.0.1.0

to the top




Generated on Thu Mar 29 16:31:13 2012 for DirectFB by ABI Compliance Checker 1.97.2  
A tool for checking backward compatibility of a C/C++ library API