Dear All, Hello!

I have tried to build EFL on Windows 7 and met a problem when I had build
evas_ddraw_buffer.cpp

evas_ddraw_buffer.cpp includes its evas_engine.h
And evas_engine.h includes evas_common_soft16.h that includes evas_private.h
finally.
(evas_ddraw_buffer.cpp -> evas_engine.h -> evas_common_soft16.h ->
evas_private.h)


g++ is used for compile the evas_ddraw_buffer.cpp.
it gives some error message as the followings.

1) evas_prevate.h:50:14: error: use of enum '_Evas_Font_Style' without
previous declaration
    you would be able to test using gcc and g++ to compile following code.
g++ will give error message as above.
     #include <stdio.h>
     typedef enum _myenum myenum;
     enum _myenum
     {
         A, B, C
     };
     int main()
     {
         printf("%d\n", B);
         return 0;
     }

2) evas_prevate.h:651:14: error: expected unqualified-id before 'new'
    you would be able to test using gcc and g++ to compile following code.
g++ will give error message.
     #include <stdio.h>
     struct ex1
     {
      int new;
     };
     int main()
     {
      struct ex1 ev;
      ev.new = 9;
      printf("%d\n", ev.new);
      return 0;
     }

Anyhow I have attached patch to resolve this issue.
Please review this and give your opinion. Thanks.
Index: src/lib/include/evas_private.h
===================================================================
--- src/lib/include/evas_private.h	(revision 63050)
+++ src/lib/include/evas_private.h	(working copy)
@@ -47,6 +47,48 @@ typedef struct _Evas_Map_Point              Evas_M
 typedef struct _Evas_Smart_Cb_Description_Array Evas_Smart_Cb_Description_Array;
 typedef struct _Evas_Post_Callback          Evas_Post_Callback;
 
+enum _Evas_Font_Style
+{
+   EVAS_FONT_STYLE_SLANT,
+   EVAS_FONT_STYLE_WEIGHT,
+   EVAS_FONT_STYLE_WIDTH
+};
+
+enum _Evas_Font_Slant
+{
+   EVAS_FONT_SLANT_NORMAL,
+   EVAS_FONT_SLANT_OBLIQUE,
+   EVAS_FONT_SLANT_ITALIC
+};
+
+enum _Evas_Font_Weight
+{
+   EVAS_FONT_WEIGHT_NORMAL,
+   EVAS_FONT_WEIGHT_THIN,
+   EVAS_FONT_WEIGHT_ULTRALIGHT,
+   EVAS_FONT_WEIGHT_LIGHT,
+   EVAS_FONT_WEIGHT_BOOK,
+   EVAS_FONT_WEIGHT_MEDIUM,
+   EVAS_FONT_WEIGHT_SEMIBOLD,
+   EVAS_FONT_WEIGHT_BOLD,
+   EVAS_FONT_WEIGHT_ULTRABOLD,
+   EVAS_FONT_WEIGHT_BLACK,
+   EVAS_FONT_WEIGHT_EXTRABLACK
+};
+
+enum _Evas_Font_Width
+{
+   EVAS_FONT_WIDTH_NORMAL,
+   EVAS_FONT_WIDTH_ULTRACONDENSED,
+   EVAS_FONT_WIDTH_EXTRACONDENSED,
+   EVAS_FONT_WIDTH_CONDENSED,
+   EVAS_FONT_WIDTH_SEMICONDENSED,
+   EVAS_FONT_WIDTH_SEMIEXPANDED,
+   EVAS_FONT_WIDTH_EXPANDED,
+   EVAS_FONT_WIDTH_EXTRAEXPANDED,
+   EVAS_FONT_WIDTH_ULTRAEXPANDED
+};
+
 typedef enum _Evas_Font_Style               Evas_Font_Style;
 typedef enum _Evas_Font_Slant               Evas_Font_Slant;
 typedef enum _Evas_Font_Weight              Evas_Font_Weight;
@@ -595,48 +637,6 @@ struct _Evas_Font_Alias
    Evas_Font  *fn;
 };
 
-enum _Evas_Font_Style
-{
-   EVAS_FONT_STYLE_SLANT,
-   EVAS_FONT_STYLE_WEIGHT,
-   EVAS_FONT_STYLE_WIDTH
-};
-
-enum _Evas_Font_Slant
-{
-   EVAS_FONT_SLANT_NORMAL,
-   EVAS_FONT_SLANT_OBLIQUE,
-   EVAS_FONT_SLANT_ITALIC
-};
-
-enum _Evas_Font_Weight
-{
-   EVAS_FONT_WEIGHT_NORMAL,
-   EVAS_FONT_WEIGHT_THIN,
-   EVAS_FONT_WEIGHT_ULTRALIGHT,
-   EVAS_FONT_WEIGHT_LIGHT,
-   EVAS_FONT_WEIGHT_BOOK,
-   EVAS_FONT_WEIGHT_MEDIUM,
-   EVAS_FONT_WEIGHT_SEMIBOLD,
-   EVAS_FONT_WEIGHT_BOLD,
-   EVAS_FONT_WEIGHT_ULTRABOLD,
-   EVAS_FONT_WEIGHT_BLACK,
-   EVAS_FONT_WEIGHT_EXTRABLACK
-};
-
-enum _Evas_Font_Width
-{
-   EVAS_FONT_WIDTH_NORMAL,
-   EVAS_FONT_WIDTH_ULTRACONDENSED,
-   EVAS_FONT_WIDTH_EXTRACONDENSED,
-   EVAS_FONT_WIDTH_CONDENSED,
-   EVAS_FONT_WIDTH_SEMICONDENSED,
-   EVAS_FONT_WIDTH_SEMIEXPANDED,
-   EVAS_FONT_WIDTH_EXPANDED,
-   EVAS_FONT_WIDTH_EXTRAEXPANDED,
-   EVAS_FONT_WIDTH_ULTRAEXPANDED
-};
-
 struct _Evas_Font_Description
 {
    int ref;
@@ -649,7 +649,7 @@ struct _Evas_Font_Description
    Evas_Font_Weight weight;
    Evas_Font_Width width;
 
-   Eina_Bool new : 1;
+   Eina_Bool is_new : 1;
 };
 
 struct _Evas_Object_Func
Index: src/lib/canvas/evas_object_textblock.c
===================================================================
--- src/lib/canvas/evas_object_textblock.c	(revision 63050)
+++ src/lib/canvas/evas_object_textblock.c	(working copy)
@@ -1164,7 +1164,7 @@ _format_command(Evas_Object *obj, Evas_Object_Text
           {
              fmt->font.fdesc = evas_font_desc_new();
           }
-        else if (!fmt->font.fdesc->new)
+        else if (!fmt->font.fdesc->is_new)
           {
              Evas_Font_Description *old = fmt->font.fdesc;
              fmt->font.fdesc = evas_font_desc_dup(fmt->font.fdesc);
Index: src/lib/canvas/evas_font_dir.c
===================================================================
--- src/lib/canvas/evas_font_dir.c	(revision 63050)
+++ src/lib/canvas/evas_font_dir.c	(working copy)
@@ -417,7 +417,7 @@ evas_font_desc_new(void)
    Evas_Font_Description *fdesc;
    fdesc = calloc(1, sizeof(*fdesc));
    fdesc->ref = 1;
-   fdesc->new = EINA_TRUE;
+   fdesc->is_new = EINA_TRUE;
 
    return fdesc;
 }
@@ -429,7 +429,7 @@ evas_font_desc_dup(const Evas_Font_Description *fd
    new = evas_font_desc_new();
    memcpy(new, fdesc, sizeof(*new));
    new->ref = 1;
-   new->new = EINA_TRUE;
+   new->is_new = EINA_TRUE;
    new->name = eina_stringshare_ref(new->name);
 
    return new;
@@ -499,7 +499,7 @@ evas_font_load(Evas *evas, Evas_Font_Description *
    Font_Rend_Flags wanted_rend = 0;
 
    if (!fdesc) return NULL;
-   fdesc->new = EINA_FALSE;
+   fdesc->is_new = EINA_FALSE;
 
    if (fdesc->slant != EVAS_FONT_SLANT_NORMAL)
       wanted_rend |= FONT_REND_SLANT;
------------------------------------------------------------------------------
Special Offer -- Download ArcSight Logger for FREE!
Finally, a world-class log management solution at an even better 
price-free! And you'll get a free "Love Thy Logs" t-shirt when you
download Logger. Secure your free ArcSight Logger TODAY!
http://p.sf.net/sfu/arcsisghtdev2dev
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to