summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVincent Torri <vincent.torri@gmail.com>2009-01-22 21:43:07 +0000
committerVincent Torri <vincent.torri@gmail.com>2009-01-22 21:43:07 +0000
commit738e3f482be1ed59ce3374d3f5328b906f31e514 (patch)
treecea8f7121189dad4164db1ee4eef5670cd40582b
parent62108d951ca285fa81ea73b76b4496171b5c19f9 (diff)
add Windows XP support
SVN revision: 38701
Diffstat (limited to '')
-rw-r--r--configure.in34
-rw-r--r--elementary.pc.in2
-rw-r--r--src/bin/Makefile.am5
-rw-r--r--src/lib/Makefile.am7
-rw-r--r--src/lib/elm_main.c6
-rw-r--r--src/lib/elm_priv.h1
-rw-r--r--src/lib/elm_win.c7
7 files changed, 55 insertions, 7 deletions
diff --git a/configure.in b/configure.in
index 47d7c2c86..06c6c2c7d 100644
--- a/configure.in
+++ b/configure.in
@@ -31,30 +31,33 @@ SNAP=`echo $PACKAGE_VERSION | awk -F. '{printf("%s", $4);}'`
31version_info=`expr $VMAJ + $VMIN`":$VMIC:$VMIN" 31version_info=`expr $VMAJ + $VMIN`":$VMIC:$VMIN"
32AC_SUBST(version_info) 32AC_SUBST(version_info)
33 33
34requirement_elm=""
35
34PKG_PROG_PKG_CONFIG 36PKG_PROG_PKG_CONFIG
35 37
36lt_enable_auto_import="" 38lt_enable_auto_import=""
37ELM_UNIX_DEF="#undef" 39ELM_UNIX_DEF="#undef"
38ELM_WIN32_DEF="#undef" 40ELM_WIN32_DEF="#undef"
39ELM_WINCE_DEF="#undef" 41ELM_WINCE_DEF="#undef"
42have_windows="no"
40case "$host_os" in 43case "$host_os" in
41 mingw32* | cegcc*) 44 mingw32ce* | cegcc*)
42 PKG_CHECK_MODULES([EVIL], [evil]) 45 PKG_CHECK_MODULES([EVIL], [evil])
43 AC_DEFINE(HAVE_EVIL, 1, [Set to 1 if evil package is installed.]) 46 AC_DEFINE(HAVE_EVIL, 1, [Set to 1 if evil package is installed.])
44 dnl needed for correct definition of EAPI
45 AC_DEFINE(ELEMENTARY_BUILD, 1, [Define to mention that evas is built])
46 lt_enable_auto_import="-Wl,--enable-auto-import" 47 lt_enable_auto_import="-Wl,--enable-auto-import"
47 ELM_WINCE_DEF="#define" 48 ELM_WINCE_DEF="#define"
49 have_windows="yes"
48dnl managed by evil 50dnl managed by evil
49 AC_DEFINE(HAVE_DLADDR) 51 AC_DEFINE(HAVE_DLADDR)
52 requirement_elm="evil"
50 ;; 53 ;;
51 mingw*) 54 mingw*)
52 PKG_CHECK_MODULES([EVIL], [evil]) 55 PKG_CHECK_MODULES([EVIL], [evil])
53 AC_DEFINE(HAVE_EVIL, 1, [Set to 1 if evil package is installed.]) 56 AC_DEFINE(HAVE_EVIL, 1, [Set to 1 if evil package is installed.])
54 dnl needed for correct definition of EAPI
55 AC_DEFINE(ELEMENTARY_BUILD, 1, [Define to mention that evas is built])
56 lt_enable_auto_import="-Wl,--enable-auto-import" 57 lt_enable_auto_import="-Wl,--enable-auto-import"
57 ELM_WIN32_DEF="#define" 58 ELM_WIN32_DEF="#define"
59 have_windows="yes"
60 requirement_elm="evil"
58 ;; 61 ;;
59 *) 62 *)
60 ELM_UNIX_DEF="#define" 63 ELM_UNIX_DEF="#define"
@@ -78,6 +81,8 @@ AC_SUBST(ELM_UNIX_DEF)
78AC_SUBST(ELM_WIN32_DEF) 81AC_SUBST(ELM_WIN32_DEF)
79AC_SUBST(ELM_WINCE_DEF) 82AC_SUBST(ELM_WINCE_DEF)
80 83
84AM_CONDITIONAL([ELEMENTARY_WINDOWS_BUILD], [test "x${have_windows}" = "xyes"])
85
81PKG_CHECK_MODULES([ELEMENTARY], 86PKG_CHECK_MODULES([ELEMENTARY],
82 [ 87 [
83 eina-0 88 eina-0
@@ -92,12 +97,15 @@ PKG_CHECK_MODULES([ELEMENTARY],
92 ] 97 ]
93) 98)
94 99
100requirement_elm="edje ecore-file ecore-txt ecore-job ecore-evas ecore evas eet eina-0 ${requirement_elm}"
101
95have_elementary_x="no" 102have_elementary_x="no"
96PKG_CHECK_MODULES([ELEMENTARY_X], 103PKG_CHECK_MODULES([ELEMENTARY_X],
97 [ecore-x], 104 [ecore-x],
98 [ 105 [
99 AC_DEFINE(HAVE_ELEMENTARY_X, 1, [X11 support for Elementary]) 106 AC_DEFINE(HAVE_ELEMENTARY_X, 1, [X11 support for Elementary])
100 have_elementary_x="yes" 107 have_elementary_x="yes"
108 requirement_elm="ecore-x ${requirement_elm}"
101 ], 109 ],
102 [have_elementary_x="no"] 110 [have_elementary_x="no"]
103) 111)
@@ -108,16 +116,29 @@ PKG_CHECK_MODULES([ELEMENTARY_FB],
108 [ 116 [
109 AC_DEFINE(HAVE_ELEMENTARY_FB, 1, [FB support for Elementary]) 117 AC_DEFINE(HAVE_ELEMENTARY_FB, 1, [FB support for Elementary])
110 have_elementary_fb="yes" 118 have_elementary_fb="yes"
119 requirement_elm="ecore-fb ${requirement_elm}"
111 ], 120 ],
112 [have_elementary_fb="no"] 121 [have_elementary_fb="no"]
113) 122)
114 123
124have_elementary_win32="no"
125PKG_CHECK_MODULES([ELEMENTARY_WIN32],
126 [ecore-win32],
127 [
128 AC_DEFINE(HAVE_ELEMENTARY_WIN32, 1, [Windows XP support for Elementary])
129 have_elementary_win32="yes"
130 requirement_elm="ecore-win32 ${requirement_elm}"
131 ],
132 [have_elementary_win32="no"]
133)
134
115have_elementary_wince="no" 135have_elementary_wince="no"
116PKG_CHECK_MODULES([ELEMENTARY_WINCE], 136PKG_CHECK_MODULES([ELEMENTARY_WINCE],
117 [ecore-wince], 137 [ecore-wince],
118 [ 138 [
119 AC_DEFINE(HAVE_ELEMENTARY_WINCE, 1, [Windows CE support for Elementary]) 139 AC_DEFINE(HAVE_ELEMENTARY_WINCE, 1, [Windows CE support for Elementary])
120 have_elementary_wince="yes" 140 have_elementary_wince="yes"
141 requirement_elm="ecore-wince ${requirement_elm}"
121 ], 142 ],
122 [have_elementary_wince="no"] 143 [have_elementary_wince="no"]
123) 144)
@@ -133,6 +154,7 @@ PKG_CHECK_MODULES([ELEMENTARY_EDBUS],
133 AC_DEFINE(HAVE_ELEMENTARY_EDBUS, 1, [EDBus support for Elementary]) 154 AC_DEFINE(HAVE_ELEMENTARY_EDBUS, 1, [EDBus support for Elementary])
134 have_elementary_edbus="yes" 155 have_elementary_edbus="yes"
135 ELM_EDBUS_DEF="#define" 156 ELM_EDBUS_DEF="#define"
157 requirement_elm="ehal edbus ${requirement_elm}"
136 ], 158 ],
137 [have_elementary_edbus="no"] 159 [have_elementary_edbus="no"]
138) 160)
@@ -144,6 +166,7 @@ AC_SUBST(ELM_ALLOCA_H_DEF)
144 166
145my_libs="-lm" 167my_libs="-lm"
146AC_SUBST(my_libs) 168AC_SUBST(my_libs)
169AC_SUBST(requirement_elm)
147 170
148AC_OUTPUT([ 171AC_OUTPUT([
149Makefile 172Makefile
@@ -174,6 +197,7 @@ echo
174echo "Engines:" 197echo "Engines:"
175echo " X11...........: ${have_elementary_x}" 198echo " X11...........: ${have_elementary_x}"
176echo " Framebuffer...: ${have_elementary_fb}" 199echo " Framebuffer...: ${have_elementary_fb}"
200echo " Windows XP....: ${have_elementary_win32}"
177echo " Windows CE....: ${have_elementary_wince}" 201echo " Windows CE....: ${have_elementary_wince}"
178echo 202echo
179echo "Features:" 203echo "Features:"
diff --git a/elementary.pc.in b/elementary.pc.in
index 0564b12e5..5fe7c28cb 100644
--- a/elementary.pc.in
+++ b/elementary.pc.in
@@ -5,7 +5,7 @@ includedir=@includedir@
5 5
6Name: elementary 6Name: elementary
7Description: Mobile device touchscreen widget library 7Description: Mobile device touchscreen widget library
8Requires: evas ecore ecore-x ecore-evas ecore-job ecore-txt ecore-file eet edje 8Requires: @requirement_elm@
9Version: @VERSION@ 9Version: @VERSION@
10Libs: -L${libdir} -lelementary 10Libs: -L${libdir} -lelementary
11Libs.private: @dlopen_libs@ @my_libs@ @ELEMENTARY_LIBS@ @ELEMENTARY_X_LIBS@ @ELEMENTARY_FB_LIBS@ @ELEMENTARY_WINCE_LIBS@ @ELEMENTARY_EDBUS_LIBS@ 11Libs.private: @dlopen_libs@ @my_libs@ @ELEMENTARY_LIBS@ @ELEMENTARY_X_LIBS@ @ELEMENTARY_FB_LIBS@ @ELEMENTARY_WINCE_LIBS@ @ELEMENTARY_EDBUS_LIBS@
diff --git a/src/bin/Makefile.am b/src/bin/Makefile.am
index 421e5495a..b307f74ba 100644
--- a/src/bin/Makefile.am
+++ b/src/bin/Makefile.am
@@ -10,9 +10,14 @@ AM_CPPFLAGS = \
10@ELEMENTARY_CFLAGS@ \ 10@ELEMENTARY_CFLAGS@ \
11@ELEMENTARY_X_CFLAGS@ \ 11@ELEMENTARY_X_CFLAGS@ \
12@ELEMENTARY_FB_CFLAGS@ \ 12@ELEMENTARY_FB_CFLAGS@ \
13@ELEMENTARY_WIN32_CFLAGS@ \
13@ELEMENTARY_WINCE_CFLAGS@ \ 14@ELEMENTARY_WINCE_CFLAGS@ \
14@ELEMENTARY_EDBUS_CFLAGS@ 15@ELEMENTARY_EDBUS_CFLAGS@
15 16
17if ELEMENTARY_WINDOWS_BUILD
18AM_CPPFLAGS += -DELEMENTARY_BUILD
19endif
20
16bin_PROGRAMS = elementary_test 21bin_PROGRAMS = elementary_test
17 22
18elementary_test_SOURCES = test.c 23elementary_test_SOURCES = test.c
diff --git a/src/lib/Makefile.am b/src/lib/Makefile.am
index 0998a7a99..d80dc5768 100644
--- a/src/lib/Makefile.am
+++ b/src/lib/Makefile.am
@@ -10,9 +10,14 @@ AM_CPPFLAGS = \
10@ELEMENTARY_CFLAGS@ \ 10@ELEMENTARY_CFLAGS@ \
11@ELEMENTARY_X_CFLAGS@ \ 11@ELEMENTARY_X_CFLAGS@ \
12@ELEMENTARY_FB_CFLAGS@ \ 12@ELEMENTARY_FB_CFLAGS@ \
13@ELEMENTARY_WIN32_CFLAGS@ \
13@ELEMENTARY_WINCE_CFLAGS@ \ 14@ELEMENTARY_WINCE_CFLAGS@ \
14@ELEMENTARY_EDBUS_CFLAGS@ 15@ELEMENTARY_EDBUS_CFLAGS@
15 16
17if ELEMENTARY_WINDOWS_BUILD
18AM_CPPFLAGS += -DELEMENTARY_BUILD
19endif
20
16lib_LTLIBRARIES = libelementary.la 21lib_LTLIBRARIES = libelementary.la
17 22
18include_HEADERS = Elementary.h 23include_HEADERS = Elementary.h
@@ -61,5 +66,5 @@ els_icon.h
61 66
62 67
63libelementary_la_CFLAGS = 68libelementary_la_CFLAGS =
64libelementary_la_LIBADD = @my_libs@ @dlopen_libs@ @ELEMENTARY_LIBS@ @ELEMENTARY_X_LIBS@ @ELEMENTARY_FB_LIBS@ @ELEMENTARY_WINCE_LIBS@ @ELEMENTARY_EDBUS_LIBS@ 69libelementary_la_LIBADD = @my_libs@ @dlopen_libs@ @ELEMENTARY_LIBS@ @ELEMENTARY_X_LIBS@ @ELEMENTARY_FB_LIBS@ @ELEMENTARY_WIN32_LIBS@ @ELEMENTARY_WINCE_LIBS@ @ELEMENTARY_EDBUS_LIBS@
65libelementary_la_LDFLAGS = -no-undefined @lt_enable_auto_import@ -version-info @version_info@ 70libelementary_la_LDFLAGS = -no-undefined @lt_enable_auto_import@ -version-info @version_info@
diff --git a/src/lib/elm_main.c b/src/lib/elm_main.c
index ab6ddf340..3bf82a4d3 100644
--- a/src/lib/elm_main.c
+++ b/src/lib/elm_main.c
@@ -173,6 +173,10 @@ elm_init(int argc, char **argv)
173 (!strcasecmp(elm_engine, "opengl-x11")) || 173 (!strcasecmp(elm_engine, "opengl-x11")) ||
174 (!strcasecmp(elm_engine, "opengl_x11"))) 174 (!strcasecmp(elm_engine, "opengl_x11")))
175 _elm_config->engine = ELM_OPENGL_X11; 175 _elm_config->engine = ELM_OPENGL_X11;
176 else if ((!strcasecmp(elm_engine, "ddraw")) ||
177 (!strcasecmp(elm_engine, "software-ddraw")) ||
178 (!strcasecmp(elm_engine, "software_ddraw")))
179 _elm_config->engine = ELM_SOFTWARE_WIN32;
176 else if ((!strcasecmp(elm_engine, "wince-gdi")) || 180 else if ((!strcasecmp(elm_engine, "wince-gdi")) ||
177 (!strcasecmp(elm_engine, "software-16-wince-gdi")) || 181 (!strcasecmp(elm_engine, "software-16-wince-gdi")) ||
178 (!strcasecmp(elm_engine, "software_16_wince_gdi"))) 182 (!strcasecmp(elm_engine, "software_16_wince_gdi")))
@@ -192,6 +196,7 @@ elm_init(int argc, char **argv)
192 (_elm_config->engine == ELM_SOFTWARE_16_X11) || 196 (_elm_config->engine == ELM_SOFTWARE_16_X11) ||
193 (_elm_config->engine == ELM_XRENDER_X11) || 197 (_elm_config->engine == ELM_XRENDER_X11) ||
194 (_elm_config->engine == ELM_OPENGL_X11) || 198 (_elm_config->engine == ELM_OPENGL_X11) ||
199 (_elm_config->engine == ELM_SOFTWARE_WIN32) ||
195 (_elm_config->engine == ELM_SOFTWARE_16_WINCE)) 200 (_elm_config->engine == ELM_SOFTWARE_16_WINCE))
196 { 201 {
197#ifdef HAVE_ELEMENTARY_X 202#ifdef HAVE_ELEMENTARY_X
@@ -255,6 +260,7 @@ elm_shutdown(void)
255 (_elm_config->engine == ELM_SOFTWARE_16_X11) || 260 (_elm_config->engine == ELM_SOFTWARE_16_X11) ||
256 (_elm_config->engine == ELM_XRENDER_X11) || 261 (_elm_config->engine == ELM_XRENDER_X11) ||
257 (_elm_config->engine == ELM_OPENGL_X11) || 262 (_elm_config->engine == ELM_OPENGL_X11) ||
263 (_elm_config->engine == ELM_SOFTWARE_WIN32) ||
258 (_elm_config->engine == ELM_SOFTWARE_16_WINCE)) 264 (_elm_config->engine == ELM_SOFTWARE_16_WINCE))
259 { 265 {
260#ifdef HAVE_ELEMENTARY_X 266#ifdef HAVE_ELEMENTARY_X
diff --git a/src/lib/elm_priv.h b/src/lib/elm_priv.h
index dbbb1d6c5..087fe8092 100644
--- a/src/lib/elm_priv.h
+++ b/src/lib/elm_priv.h
@@ -28,6 +28,7 @@ typedef enum _Elm_Engine
28 ELM_SOFTWARE_16_X11, 28 ELM_SOFTWARE_16_X11,
29 ELM_XRENDER_X11, 29 ELM_XRENDER_X11,
30 ELM_OPENGL_X11, 30 ELM_OPENGL_X11,
31 ELM_SOFTWARE_WIN32,
31 ELM_SOFTWARE_16_WINCE 32 ELM_SOFTWARE_16_WINCE
32} Elm_Engine; 33} Elm_Engine;
33 34
diff --git a/src/lib/elm_win.c b/src/lib/elm_win.c
index d355ec424..469df7248 100644
--- a/src/lib/elm_win.c
+++ b/src/lib/elm_win.c
@@ -124,6 +124,9 @@ _elm_win_xwindow_get(Elm_Win *win)
124 case ELM_OPENGL_X11: 124 case ELM_OPENGL_X11:
125 if (win->ee) win->xwin = ecore_evas_gl_x11_window_get(win->ee); 125 if (win->ee) win->xwin = ecore_evas_gl_x11_window_get(win->ee);
126 break; 126 break;
127 case ELM_SOFTWARE_WIN32:
128 if (win->ee) win->xwin = (int)ecore_evas_win32_window_get(win->ee);
129 break;
127 default: 130 default:
128 break; 131 break;
129 } 132 }
@@ -262,6 +265,9 @@ elm_win_add(Evas_Object *parent, const char *name, Elm_Win_Type type)
262 case ELM_OPENGL_X11: 265 case ELM_OPENGL_X11:
263 win->ee = ecore_evas_gl_x11_new(NULL, 0, 0, 0, 1, 1); 266 win->ee = ecore_evas_gl_x11_new(NULL, 0, 0, 0, 1, 1);
264 break; 267 break;
268 case ELM_SOFTWARE_WIN32:
269 win->ee = ecore_evas_software_ddraw_new(NULL, 0, 0, 1, 1);
270 break;
265 case ELM_SOFTWARE_16_WINCE: 271 case ELM_SOFTWARE_16_WINCE:
266 win->ee = ecore_evas_software_wince_gdi_new(NULL, 0, 0, 1, 1); 272 win->ee = ecore_evas_software_wince_gdi_new(NULL, 0, 0, 1, 1);
267 break; 273 break;
@@ -327,6 +333,7 @@ elm_win_add(Evas_Object *parent, const char *name, Elm_Win_Type type)
327 case ELM_SOFTWARE_16_X11: 333 case ELM_SOFTWARE_16_X11:
328 case ELM_XRENDER_X11: 334 case ELM_XRENDER_X11:
329 case ELM_OPENGL_X11: 335 case ELM_OPENGL_X11:
336 case ELM_SOFTWARE_WIN32:
330 default: 337 default:
331 break; 338 break;
332 } 339 }