sdlpango: new package sdlpango
authorwoglinde <heinold@inf.fu-berlin.de>
Sat, 10 Jan 2009 01:31:39 +0000 (02:31 +0100)
committerwoglinde <heinold@inf.fu-berlin.de>
Sat, 10 Jan 2009 01:31:39 +0000 (02:31 +0100)
* recipe was provided by gnutoo
* closes bug 4966

packages/sdlpango/files/SDL_Pango-0.1.2-API-adds.patch [new file with mode: 0644]
packages/sdlpango/sdlpango_0.1.2.bb [new file with mode: 0644]

diff --git a/packages/sdlpango/files/SDL_Pango-0.1.2-API-adds.patch b/packages/sdlpango/files/SDL_Pango-0.1.2-API-adds.patch
new file mode 100644 (file)
index 0000000..1535a56
--- /dev/null
@@ -0,0 +1,116 @@
+--- src/SDL_Pango.c    2004-12-10 10:06:33.000000000 +0100
++++ src/SDL_Pango.c    2006-09-24 22:46:24.000000000 +0200
+@@ -723,13 +723,8 @@
+     SDL_UnlockSurface(surface);\r
+ }\r
\r
+-/*!\r
+-    Create a context which contains Pango objects.\r
+-\r
+-    @return A pointer to the context as a SDLPango_Context*.\r
+-*/\r
+ SDLPango_Context*\r
+-SDLPango_CreateContext()\r
++SDLPango_CreateContext_GivenFontDesc(const char* font_desc)\r
+ {\r
+     SDLPango_Context *context = g_malloc(sizeof(SDLPango_Context));\r
+     G_CONST_RETURN char *charset;\r
+@@ -743,8 +738,7 @@
+     pango_context_set_language (context->context, pango_language_from_string (charset));\r
+     pango_context_set_base_dir (context->context, PANGO_DIRECTION_LTR);\r
\r
+-    context->font_desc = pango_font_description_from_string(\r
+-      MAKE_FONT_NAME (DEFAULT_FONT_FAMILY, DEFAULT_FONT_SIZE));\r
++    context->font_desc = pango_font_description_from_string(font_desc);\r
\r
+     context->layout = pango_layout_new (context->context);\r
\r
+@@ -762,6 +756,17 @@
+ }\r
\r
+ /*!\r
++    Create a context which contains Pango objects.\r
++\r
++    @return A pointer to the context as a SDLPango_Context*.\r
++*/\r
++SDLPango_Context*\r
++SDLPango_CreateContext()\r
++{\r
++     SDLPango_CreateContext_GivenFontDesc(MAKE_FONT_NAME(DEFAULT_FONT_FAMILY, DEFAULT_FONT_SIZE));\r
++}\r
++\r
++/*!\r
+     Free a context.\r
\r
+     @param *context [i/o] Context to be free\r
+@@ -1053,6 +1058,20 @@
+     pango_layout_set_font_description (context->layout, context->font_desc);\r
+ }\r
\r
++void\r
++SDLPango_SetText_GivenAlignment(\r
++    SDLPango_Context *context,\r
++    const char *text,\r
++    int length,\r
++    SDLPango_Alignment alignment)\r
++{\r
++    pango_layout_set_attributes(context->layout, NULL);\r
++    pango_layout_set_text (context->layout, text, length);\r
++    pango_layout_set_auto_dir (context->layout, TRUE);\r
++    pango_layout_set_alignment (context->layout, alignment);\r
++    pango_layout_set_font_description (context->layout, context->font_desc);\r
++}\r
++\r
+ /*!\r
+     Set plain text to context.\r
+     Text must be utf-8.\r
+@@ -1067,11 +1086,7 @@
+     const char *text,\r
+     int length)\r
+ {\r
+-    pango_layout_set_attributes(context->layout, NULL);\r
+-    pango_layout_set_text (context->layout, text, length);\r
+-    pango_layout_set_auto_dir (context->layout, TRUE);\r
+-    pango_layout_set_alignment (context->layout, PANGO_ALIGN_LEFT);\r
+-    pango_layout_set_font_description (context->layout, context->font_desc);\r
++     SDLPango_SetText_GivenAlignment(context, text, length, SDLPANGO_ALIGN_LEFT);\r
+ }\r
\r
+ /*!\r
+--- src/SDL_Pango.h    2004-12-10 10:06:33.000000000 +0100
++++ src/SDL_Pango.h    2006-09-24 22:46:01.000000000 +0200
+@@ -109,12 +109,20 @@
+     SDLPANGO_DIRECTION_NEUTRAL        /*! Neutral */\r
+ } SDLPango_Direction;\r
\r
+-\r
++/*!\r
++    Specifies alignment of text. See Pango reference for detail\r
++*/\r
++typedef enum {\r
++    SDLPANGO_ALIGN_LEFT,\r
++    SDLPANGO_ALIGN_CENTER,\r
++    SDLPANGO_ALIGN_RIGHT\r
++} SDLPango_Alignment;\r
\r
+ extern DECLSPEC int SDLCALL SDLPango_Init();\r
\r
+ extern DECLSPEC int SDLCALL SDLPango_WasInit();\r
\r
++extern DECLSPEC SDLPango_Context* SDLCALL SDLPango_CreateContext_GivenFontDesc(const char* font_desc);\r
+ extern DECLSPEC SDLPango_Context* SDLCALL SDLPango_CreateContext();\r
\r
+ extern DECLSPEC void SDLCALL SDLPango_FreeContext(\r
+@@ -157,6 +165,12 @@
+     const char *markup,\r
+     int length);\r
\r
++extern DECLSPEC void SDLCALL SDLPango_SetText_GivenAlignment(\r
++    SDLPango_Context *context,\r
++    const char *text,\r
++    int length,\r
++    SDLPango_Alignment alignment);\r
++\r
+ extern DECLSPEC void SDLCALL SDLPango_SetText(\r
+     SDLPango_Context *context,\r
+     const char *markup,\r
diff --git a/packages/sdlpango/sdlpango_0.1.2.bb b/packages/sdlpango/sdlpango_0.1.2.bb
new file mode 100644 (file)
index 0000000..8a0a3c6
--- /dev/null
@@ -0,0 +1,18 @@
+DESCRIPTION = "connect the text rendering engine of GNOME to SDL"
+HOMEPAGE = "http://sdlpango.sourceforge.net/"
+SECTION = "libs"
+LICENSE = "GPL"
+DEPENDS = "virtual/libsdl pango"
+PR="r0"
+
+SRC_URI = "${SOURCEFORGE_MIRROR}/sdlpango/SDL_Pango-${PV}.tar.gz \
+          file://SDL_Pango-0.1.2-API-adds.patch;patch=1;pnum=0 \
+         "
+
+inherit autotools
+
+S = "${WORKDIR}/SDL_Pango-${PV}"
+
+do_stage() {
+        autotools_stage_all
+}