File ft2-stream-compat.diff of Package freetype2

---
 src/base/ftstream.c |   58 ++++++++++++++++++++++++++++++++++++++++++++++++++--
 1 file changed, 56 insertions(+), 2 deletions(-)

Index: freetype-2.4.2/src/base/ftstream.c
===================================================================
--- freetype-2.4.2.orig/src/base/ftstream.c
+++ freetype-2.4.2/src/base/ftstream.c
@@ -44,6 +44,17 @@
     stream->close  = 0;
   }
 
+  FT_BASE_DEF( void )
+  FT_New_Memory_Stream( FT_Library, FT_Byte*, FT_ULong, FT_Stream ) __attribute__((weak));
+  FT_BASE_DEF( void )
+  FT_New_Memory_Stream( FT_Library  library,
+                        FT_Byte*    base,
+                        FT_ULong    size,
+                        FT_Stream   stream )
+  { 
+    stream->memory  = library->memory;
+    FT_Stream_OpenMemory( stream, (const FT_Byte*) base, size );
+  }
 
   FT_BASE_DEF( void )
   FT_Stream_Close( FT_Stream  stream )
@@ -87,6 +98,8 @@
     return error;
   }
 
+  FT_BASE_DEF( FT_Error )
+  FT_Seek_Stream(FT_Stream, FT_ULong) __attribute__((weak, alias("FT_Stream_Seek")));
 
   FT_BASE_DEF( FT_Error )
   FT_Stream_Skip( FT_Stream  stream,
@@ -98,6 +111,8 @@
     return FT_Stream_Seek( stream, (FT_ULong)( stream->pos + distance ) );
   }
 
+  FT_BASE_DEF( FT_Error )
+  FT_Skip_Stream(FT_Stream, FT_Long) __attribute__((weak, alias("FT_Stream_Skip")));
 
   FT_BASE_DEF( FT_Long )
   FT_Stream_Pos( FT_Stream  stream )
@@ -114,6 +129,8 @@
     return FT_Stream_ReadAt( stream, stream->pos, buffer, count );
   }
 
+  FT_BASE_DEF( FT_Error )
+  FT_Read_Stream( FT_Stream, FT_Byte*, FT_ULong ) __attribute__((weak, alias("FT_Stream_Read")));
 
   FT_BASE_DEF( FT_Error )
   FT_Stream_ReadAt( FT_Stream  stream,
@@ -188,6 +205,8 @@
     return read_bytes;
   }
 
+  FT_BASE_DEF( FT_Error )
+  FT_Read_Stream_At( FT_Stream, FT_ULong, FT_Byte*, FT_ULong) __attribute__((weak, alias("FT_Stream_ReadAt")));
 
   FT_BASE_DEF( FT_Error )
   FT_Stream_ExtractFrame( FT_Stream  stream,
@@ -210,7 +229,9 @@
     return error;
   }
 
-
+  FT_BASE_DEF( FT_Error )
+  FT_Extract_Frame( FT_Stream, FT_ULong, FT_Byte** ) __attribute__((weak, alias("FT_Stream_ExtractFrame")));
+ 
   FT_BASE_DEF( void )
   FT_Stream_ReleaseFrame( FT_Stream  stream,
                           FT_Byte**  pbytes )
@@ -229,6 +250,8 @@
     *pbytes = 0;
   }
 
+  FT_BASE_DEF( void )
+  FT_Release_Frame( FT_Stream, FT_Byte** ) __attribute__((weak, alias("FT_Stream_ReleaseFrame")));
 
   FT_BASE_DEF( FT_Error )
   FT_Stream_EnterFrame( FT_Stream  stream,
@@ -307,6 +330,8 @@
     return error;
   }
 
+  FT_BASE_DEF( FT_Error )
+  FT_Access_Frame( FT_Stream, FT_ULong ) __attribute__((weak, alias("FT_Stream_EnterFrame")));
 
   FT_BASE_DEF( void )
   FT_Stream_ExitFrame( FT_Stream  stream )
@@ -337,6 +362,8 @@
     stream->limit  = 0;
   }
 
+  FT_BASE_DEF( void )
+  FT_Forget_Frame( FT_Stream ) __attribute__((weak, alias("FT_Stream_ExitFrame")));
 
   FT_BASE_DEF( FT_Char )
   FT_Stream_GetChar( FT_Stream  stream )
@@ -353,6 +380,8 @@
     return result;
   }
 
+  FT_BASE_DEF( FT_Char )
+  FT_Get_Char( FT_Stream ) __attribute__((weak, alias("FT_Stream_GetChar")));
 
   FT_BASE_DEF( FT_Short )
   FT_Stream_GetShort( FT_Stream  stream )
@@ -372,6 +401,8 @@
     return result;
   }
 
+  FT_BASE_DEF( FT_Short )
+  FT_Get_Short( FT_Stream ) __attribute__((weak, alias("FT_Stream_GetShort")));
 
   FT_BASE_DEF( FT_Short )
   FT_Stream_GetShortLE( FT_Stream  stream )
@@ -391,6 +422,8 @@
     return result;
   }
 
+  FT_BASE_DEF( FT_Short )
+  FT_Get_ShortLE( FT_Stream ) __attribute__((weak, alias("FT_Stream_GetShortLE")));
 
   FT_BASE_DEF( FT_Long )
   FT_Stream_GetOffset( FT_Stream  stream )
@@ -409,6 +442,8 @@
     return result;
   }
 
+  FT_BASE_DEF( FT_Long )
+  FT_Get_Offset( FT_Stream ) __attribute__((weak, alias("FT_Stream_GetOffset")));
 
   FT_BASE_DEF( FT_Long )
   FT_Stream_GetLong( FT_Stream  stream )
@@ -427,6 +462,8 @@
     return result;
   }
 
+  FT_BASE_DEF( FT_Long )
+  FT_Get_Long( FT_Stream ) __attribute__((weak, alias("FT_Stream_GetLong")));
 
   FT_BASE_DEF( FT_Long )
   FT_Stream_GetLongLE( FT_Stream  stream )
@@ -445,6 +482,8 @@
     return result;
   }
 
+  FT_BASE_DEF( FT_Long )
+  FT_Get_LongLE( FT_Stream ) __attribute__((weak, alias("FT_Stream_GetLongLE")));
 
   FT_BASE_DEF( FT_Char )
   FT_Stream_ReadChar( FT_Stream  stream,
@@ -482,6 +521,8 @@
     return 0;
   }
 
+  FT_BASE_DEF( FT_Char )
+  FT_Read_Char( FT_Stream, FT_Error* ) __attribute__((weak, alias("FT_Stream_ReadChar")));
 
   FT_BASE_DEF( FT_Short )
   FT_Stream_ReadShort( FT_Stream  stream,
@@ -529,6 +570,9 @@
     return 0;
   }
 
+  FT_BASE_DEF( FT_Short )
+  FT_Read_Short( FT_Stream, FT_Error* ) __attribute__((weak, alias("FT_Stream_ReadShort")));
+
 
   FT_BASE_DEF( FT_Short )
   FT_Stream_ReadShortLE( FT_Stream  stream,
@@ -576,6 +620,8 @@
     return 0;
   }
 
+  FT_BASE_DEF( FT_Short )
+  FT_Read_ShortLE( FT_Stream, FT_Error* ) __attribute__((weak, alias("FT_Stream_ReadShortLE")));
 
   FT_BASE_DEF( FT_Long )
   FT_Stream_ReadOffset( FT_Stream  stream,
@@ -623,6 +669,8 @@
     return 0;
   }
 
+  FT_BASE_DEF( FT_Long )
+  FT_Read_Offset( FT_Stream, FT_Error* ) __attribute__((weak, alias("FT_Stream_ReadOffset")));
 
   FT_BASE_DEF( FT_Long )
   FT_Stream_ReadLong( FT_Stream  stream,
@@ -670,6 +718,8 @@
     return 0;
   }
 
+  FT_BASE_DEF( FT_Long )
+  FT_Read_Long( FT_Stream, FT_Error* ) __attribute__((weak, alias("FT_Stream_ReadLong")));
 
   FT_BASE_DEF( FT_Long )
   FT_Stream_ReadLongLE( FT_Stream  stream,
@@ -717,6 +767,9 @@
     return 0;
   }
 
+  FT_BASE_DEF( FT_Long )
+  FT_Read_LongLE( FT_Stream, FT_Error* ) __attribute__((weak, alias("FT_Stream_ReadLongLE")));
+
 
   FT_BASE_DEF( FT_Error )
   FT_Stream_ReadFields( FT_Stream              stream,
@@ -860,5 +913,6 @@
     return error;
   }
 
-
+  FT_BASE_DEF( FT_Error )
+  FT_Read_Fields( FT_Stream, const FT_Frame_Field*, void* ) __attribute__((weak, alias("FT_Stream_ReadFields")));
 /* END */
openSUSE Build Service is sponsored by