build.h   build.h 
/* /*
(c) Copyright 2000-2002 convergence integrated media GmbH. (c) Copyright 2001-2011 The world wide DirectFB Open Source Community (
(c) Copyright 2002-2004 convergence GmbH. directfb.org)
(c) Copyright 2000-2004 Convergence (integrated media) GmbH
All rights reserved. All rights reserved.
Written by Denis Oliver Kropp <dok@directfb.org>, Written by Denis Oliver Kropp <dok@directfb.org>,
Andreas Hundt <andi@fischlustig.de>, Andreas Hundt <andi@fischlustig.de>,
Sven Neumann <neo@directfb.org> and Sven Neumann <neo@directfb.org>,
Ville Syrjälä <syrjala@sci.fi>. Ville Syrjälä <syrjala@sci.fi> and
Claudio Ciccani <klan@users.sf.net>.
This library is free software; you can redistribute it and/or This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either License as published by the Free Software Foundation; either
version 2 of the License, or (at your option) any later version. version 2 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details. Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the License along with this library; if not, write to the
Free Software Foundation, Inc., 59 Temple Place - Suite 330, Free Software Foundation, Inc., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. Boston, MA 02111-1307, USA.
*/ */
#ifndef __FUSION__BUILD_H__ #ifndef __DIRECT__BUILD_H__
#define __FUSION__BUILD_H__ #define __DIRECT__BUILD_H__
#define FUSION_BUILD_MULTI (0) #define DIRECT_OS_LINUX_GNU_LIBC (0)
#define FUSION_BUILD_KERNEL (1) #define DIRECT_OS_LINUX_KERNEL (1)
#define FUSION_MESSAGE_SIZE (16384) #define DIRECT_OS_PSP (2)
#define DIRECT_OS_WIN32 (3)
#define DIRECT_OS_FAMOS (4)
#define DIRECT_BUILD_DEBUG (0)
#define DIRECT_BUILD_DEBUGS (1)
#define DIRECT_BUILD_TRACE (0)
#define DIRECT_BUILD_TEXT (1)
#define DIRECT_BUILD_GETTID (1)
#define DIRECT_BUILD_NETWORK (1)
#define DIRECT_BUILD_STDBOOL (1)
#define DIRECT_BUILD_DYNLOAD (1)
#define DIRECT_BUILD_MULTICORE (1)
#define DIRECT_BUILD_OSTYPE (DIRECT_OS_LINUX_GNU_LIBC)
#define DIRECT_BUILD_GCC_ATOMICS (0)
#if !DIRECT_BUILD_DEBUGS
#if defined(DIRECT_ENABLE_DEBUG) || defined(DIRECT_FORCE_DEBUG)
#define DIRECT_MINI_DEBUG
#endif
#undef DIRECT_ENABLE_DEBUG
#ifdef DIRECT_FORCE_DEBUG
#warning DIRECT_FORCE_DEBUG used with 'pure release' library headers.
#undef DIRECT_FORCE_DEBUG
#endif
#endif
#endif #endif
 End of changes. 4 change blocks. 
9 lines changed or deleted 36 lines changed or added


 conf.h   conf.h 
skipping to change at line 31 skipping to change at line 31
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details. Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the License along with this library; if not, write to the
Free Software Foundation, Inc., 59 Temple Place - Suite 330, Free Software Foundation, Inc., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. Boston, MA 02111-1307, USA.
*/ */
#ifndef __DIRECT__CONF_H__ #ifndef __FUSION__CONF_H__
#define __DIRECT__CONF_H__ #define __FUSION__CONF_H__
#include <direct/log_domain.h> #include <fusion/types.h>
typedef enum { struct __Fusion_FusionConfig {
DCFL_NONE, /* None is fatal. */ char *tmpfs; /* location of shm file */
DCFL_ASSERT, /* ASSERT is fatal. */
DCFL_ASSUME /* ASSERT and ASSUME are fatal. */
} DirectConfigFatalLevel;
typedef enum { bool debugshm;
DCTS_OTHER, bool madv_remove;
DCTS_FIFO, bool madv_remove_force;
DCTS_RR bool force_slave;
} DirectConfigThreadScheduler;
typedef enum { gid_t shmfile_gid; /* group that owns shm file */
DMT_NONE = 0x00000000, /* No message type. */
DMT_BANNER = 0x00000001, /* Startup banner. */ bool secure_fusion;
DMT_INFO = 0x00000002, /* Info messages. */
DMT_WARNING = 0x00000004, /* Warnings. */
DMT_ERROR = 0x00000008, /* Error messages: regular, with DFBR
esult, bugs,
system call errors, dlopen errors
*/
DMT_UNIMPLEMENTED = 0x00000010, /* Messages notifying unimplemented f
unctionality. */
DMT_ONCE = 0x00000020, /* One-shot messages .*/
DMT_UNTESTED = 0x00000040, /* Messages notifying unimplemented f
unctionality. */
DMT_BUG = 0x00000080, /* A bug occurred. */
DMT_ALL = 0x000000FF /* All types. */ bool defer_destructors;
} DirectMessageType;
struct __D_DirectConfig { int trace_ref;
DirectMessageType quiet;
DirectLogLevel log_level; bool fork_handler;
bool log_all;
bool log_none;
bool trace; unsigned int call_bin_max_num;
unsigned int call_bin_max_data;
char *memcpy; /* Don't probe for me pid_t skirmish_warn_on_thread;
mcpy routines to save a lot of
startup time. Use
this one instead if it's set. */
char **disable_module; /* Never load these m
odules. */
char *module_dir; /* module dir overrid
e */
bool sighandler;
sigset_t dont_catch; /* don't catch these
signals */
DirectLog *log;
DirectConfigFatalLevel fatal;
// @deprecated / FIXME: maybe adapt?
bool debug;
bool debugmem;
bool thread_block_signals;
bool fatal_break; /* Should D_BREAK()
cause a trap? */
int thread_priority;
DirectConfigThreadScheduler thread_scheduler;
int thread_stack_size;
int thread_priority_scale;
char **default_interface_implementation_types;
char **default_interface_implementation_names;
unsigned int perf_dump_interval;
int log_delay_rand_loops;
int log_delay_rand_us;
int log_delay_min_loops;
int log_delay_min_us;
DirectMessageType fatal_messages;
bool nm_for_trace;
}; };
extern DirectConfig DIRECT_API *direct_config; extern FusionConfig FUSION_API *fusion_config;
extern const char DIRECT_API *direct_config_usage;
DirectResult DIRECT_API direct_config_set( const char *name, const
char *value );
/* Retrieve all values set on option 'name'. */
/* Pass an array of char* pointers and number of pointers in 'num'. */
/* The actual returned number of values gets returned in 'ret_num' */
/* The returned option/values respect directfbrc, cmdline options and DFBAR
GS envvar. */
/* The returned pointers are not extra allocated so do not free them! */
DirectResult DIRECT_API direct_config_get( const char *name, char *
*values, const int values_len, int *ret_num );
/* Return the integer value for the last occurrance of the passed option's extern const char FUSION_API *fusion_config_usage;
setting. */
/* Note that 0 is also retuned in case the passed option was not found ot s
et. */
long long DIRECT_API direct_config_get_int_value( const char *na
me );
long long DIRECT_API direct_config_get_int_value_with_default( c DirectResult FUSION_API fusion_config_set( const char *name, const
onst char *name, char *value );
l
ong long def );
void __D_conf_init( void ); void __Fusion_conf_init( void );
void __D_conf_deinit( void ); void __Fusion_conf_deinit( void );
#endif #endif
 End of changes. 14 change blocks. 
109 lines changed or deleted 23 lines changed or added


 directfb_version.h   directfb_version.h 
skipping to change at line 34 skipping to change at line 34
License along with this library; if not, write to the License along with this library; if not, write to the
Free Software Foundation, Inc., 59 Temple Place - Suite 330, Free Software Foundation, Inc., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. Boston, MA 02111-1307, USA.
*/ */
#ifndef __DIRECTFB_VERSION_H__ #ifndef __DIRECTFB_VERSION_H__
#define __DIRECTFB_VERSION_H__ #define __DIRECTFB_VERSION_H__
#define DIRECTFB_MAJOR_VERSION (1) #define DIRECTFB_MAJOR_VERSION (1)
#define DIRECTFB_MINOR_VERSION (7) #define DIRECTFB_MINOR_VERSION (7)
#define DIRECTFB_MICRO_VERSION (3) #define DIRECTFB_MICRO_VERSION (4)
#define DIRECTFB_BINARY_AGE (0) #define DIRECTFB_BINARY_AGE (0)
#define DIRECTFB_INTERFACE_AGE (0) #define DIRECTFB_INTERFACE_AGE (0)
#endif /* __DIRECTFB_VERSION_H__ */ #endif /* __DIRECTFB_VERSION_H__ */
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 init.h   init.h 
skipping to change at line 31 skipping to change at line 31
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details. Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the License along with this library; if not, write to the
Free Software Foundation, Inc., 59 Temple Place - Suite 330, Free Software Foundation, Inc., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. Boston, MA 02111-1307, USA.
*/ */
#ifndef __FUSION__INIT_H__ #ifndef __DIRECT__INIT_H__
#define __FUSION__INIT_H__ #define __DIRECT__INIT_H__
#include <fusion/types.h> #include <direct/types.h>
__constructor__ void __Fusion_init_all ( void ); __constructor__ void __D_init_all ( void );
__destructor__ void __Fusion_deinit_all( void ); __destructor__ void __D_deinit_all( void );
#endif #endif
 End of changes. 3 change blocks. 
5 lines changed or deleted 5 lines changed or added


 types.h   types.h 
skipping to change at line 31 skipping to change at line 31
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details. Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the License along with this library; if not, write to the
Free Software Foundation, Inc., 59 Temple Place - Suite 330, Free Software Foundation, Inc., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. Boston, MA 02111-1307, USA.
*/ */
#ifndef __DIRECT__TYPES_H__ #ifndef __FUSION__TYPES_H__
#define __DIRECT__TYPES_H__ #define __FUSION__TYPES_H__
#include <direct/os/types.h> #include <fusion/build.h>
#include <direct/types.h>
#ifdef WIN32 #ifdef WIN32
// The following ifdef block is the standard way of creating macros which m ake exporting // The following ifdef block is the standard way of creating macros which m ake exporting
// from a DLL simpler. All files within this DLL are compiled with the DIRE CT_EXPORTS // from a DLL simpler. All files within this DLL are compiled with the FUSI ON_EXPORTS
// symbol defined on the command line. This symbol should not be defined on any project // symbol defined on the command line. This symbol should not be defined on any project
// that uses this DLL. This way any other project whose source files includ e this file see // that uses this DLL. This way any other project whose source files includ e this file see
// DIRECT_API functions as being imported from a DLL, whereas this DLL sees symbols // FUSION_API functions as being imported from a DLL, whereas this DLL sees symbols
// defined with this macro as being exported. // defined with this macro as being exported.
#ifdef DIRECT_EXPORTS #ifdef FUSION_EXPORTS
#define DIRECT_API __declspec(dllexport) #define FUSION_API __declspec(dllexport)
#else #else
#define DIRECT_API __declspec(dllimport) #define FUSION_API __declspec(dllimport)
#endif #endif
#else #else
#define DIRECT_API #define FUSION_API
#endif
#if FUSION_BUILD_MULTI && FUSION_BUILD_KERNEL
#include <sys/types.h>
#include <linux/fusion.h>
#define FUSION_API_MAJOR_REQUIRED 9
#define FUSION_API_MINOR_REQUIRED 0
#if FUSION_API_MAJOR_REQUIRED > FUSION_API_MAJOR_PROVIDED
#error Major version of Fusion Kernel Module too low! Upgrade your kernel.
#else
#if FUSION_API_MAJOR_REQUIRED == FUSION_API_MAJOR_PROVIDED
#if FUSION_API_MINOR_REQUIRED > FUSION_API_MINOR_PROVIDED
#error Minor version of Fusion Kernel Module too low! Upgrade your kernel.
#endif
#endif
#endif
#if FUSION_API_MAJOR_PROVIDED == 8 && FUSION_API_MINOR_PROVIDED == 8 && FUS
ION_API_MICRO_PROVIDED == 0
#define FCEF_QUEUE (0)
#endif #endif
#include <direct/result.h> #define FUSION_CALL_MAX_LENGTH (FUSION_MESSAGE_SIZE-sizeof(FusionReadMe ssage))
/************************************************************************** #else
********************************************/ typedef unsigned long FusionID;
#define FUSION_ID_MASTER 1L
/*
* Return value of enumeration callbacks
*/
typedef enum { typedef enum {
DENUM_OK = 0x00000000, /* Proceed with enumeration */ FCEF_NONE = 0x00000000,
DENUM_CANCEL = 0x00000001, /* Cancel enumeration */ FCEF_ONEWAY = 0x00000001,
DENUM_REMOVE = 0x00000002 /* Remove item */ FCEF_QUEUE = 0x00000002,
} DirectEnumerationResult; FCEF_ALL = 0x00000003
} FusionCallExecFlags;
typedef struct __D_DirectCleanupHandler DirectCleanupHandler;
typedef struct __D_DirectConfig DirectConfig; #define FUSION_CALL_MAX_LENGTH (64 * 1024)
typedef struct __D_DirectFifo DirectFifo;
typedef struct __D_DirectFifoItem DirectFifoItem; #endif
typedef struct __D_DirectFile DirectFile;
typedef struct __D_DirectHash DirectHash; #define FCEF_NODIRECT 0x80000000
typedef struct __D_DirectOnce DirectOnce;
typedef struct __D_DirectLink DirectLink; #include <direct/types.h>
typedef struct __D_DirectLog DirectLog;
typedef struct __D_DirectMap DirectMap; typedef struct __Fusion_FusionConfig FusionConfig;
typedef struct __D_DirectModuleDir DirectModuleDir;
typedef struct __D_DirectModuleEntry DirectModuleEntry; typedef struct __Fusion_FusionArena FusionArena;
typedef struct __D_DirectMutex DirectMutex; typedef struct __Fusion_FusionReactor FusionReactor;
typedef struct __D_DirectProcessor DirectProcessor; typedef struct __Fusion_FusionWorld FusionWorld;
typedef struct __D_DirectSerial DirectSerial; typedef struct __Fusion_FusionWorldShared FusionWorldShared;
typedef struct __D_DirectSignalHandler DirectSignalHandler;
typedef struct __D_DirectStream DirectStream; typedef struct __Fusion_FusionObject FusionObject;
typedef struct __D_DirectTLS DirectTLS; typedef struct __Fusion_FusionObjectPool FusionObjectPool;
typedef struct __D_DirectTraceBuffer DirectTraceBuffer;
typedef struct __D_DirectTree DirectTree; typedef struct __Fusion_FusionSHM FusionSHM;
typedef struct __D_DirectThread DirectThread; typedef struct __Fusion_FusionSHMShared FusionSHMShared;
typedef struct __D_DirectThreadHandle DirectThreadHandle;
typedef struct __D_DirectThreadInitHandler DirectThreadInitHandler;
typedef struct __D_DirectWaitQueue DirectWaitQueue;
typedef void D_String; typedef struct __Fusion_FusionSHMPool FusionSHMPool;
typedef struct __Fusion_FusionSHMPoolShared FusionSHMPoolShared;
typedef struct __Fusion_FusionHash FusionHash;
#endif #endif
 End of changes. 12 change blocks. 
45 lines changed or deleted 68 lines changed or added

This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/