efl: merge emotion.

this one was quite a huge work, but hopefully it's correct.

NOTES:
 * removed vlc generic module, it should go into a separate package.
 * gstreamer is enabled by default (see --disable-gstreamer)
 * xine is disabled by default (see --enable-gstreamer)
 * generic is always built statically if supported
 * gstreamer and xine can't be configured as static (just lacks command line options, build system supports it)
 * v4l2 is enabled by default on linux if eeze is built (see --disable-v4l2)
 * emotion_test moved to src/tests/emotion and depends on EFL_ENABLE_TESTS (--with-tests), but is still installed if enabled.

TODO (need your help!):
 * fix warnings with gstreamer and xine engine
 * call engine shutdown functions if building as static
 * remove direct usage of PACKAGE_*_DIR and use eina_prefix
 * add eina_prefix checkme file as evas and others
 * add support for $EFL_RUN_IN_TREE
 * create separate package for emotion_generic_modules
 * check docs hierarchy (doxygen is segv'in here)



SVN revision: 82501
parent 532284db
......@@ -242,3 +242,18 @@ EPhysics
Bruno Dilly <bdilly@profusion.mobi>
Leandro Dorileo <dorileo@profusion.mobi>
Ricardo de Almeida Gonzaga <ricardo@profusion.mobi>
Emotion
-------
Carsten Haitzler <raster@rasterman.com>
Vincent Torri <torri@maths.univ-evry.fr>
Nicolas Aguirre <aguirre.nicolas@gmail.com>
Sebastian Dransfeld <sd@tango.flipp.net>
Cedric Bail <cedric.bail@free.fr>
Rafael Antognolli <antognolli@profusion.mobi>
Jérôme Pinot <ngc891@gmail.com>
Pierre Le Magourou <pierre.lemagourou@openwide.fr>
Hugo Camboulive <hugo.camboulive@zodiacaerospace.com>
Sohyun Kim <anna1014.kim@samsung.com>
Leandro Dorileo <dorileo@profusion.mobi>
......@@ -60,6 +60,7 @@ old/ChangeLog.efreet \
old/ChangeLog.eina \
old/ChangeLog.eio \
old/ChangeLog.embryo \
old/ChangeLog.emotion \
old/ChangeLog.escape \
old/ChangeLog.evas \
old/ChangeLog.evil \
......@@ -72,6 +73,7 @@ old/NEWS.efreet \
old/NEWS.eina \
old/NEWS.eio \
old/NEWS.embryo \
old/NEWS.emotion \
old/NEWS.escape \
old/NEWS.evas \
old/NEWS.evil \
......@@ -84,6 +86,7 @@ old/README.efreet \
old/README.eina \
old/README.eio \
old/README.embryo \
old/README.emotion \
old/README.ephysics \
old/README.escape \
old/README.evas \
......@@ -121,7 +124,8 @@ pc/edbus2.pc \
pc/efreet.pc \
pc/efreet-mime.pc \
pc/efreet-trash.pc \
pc/edje.pc
pc/edje.pc \
pc/emotion.pc
if BUILD_ENGINE_SOFTWARE_X11
pkgconfig_DATA += pc/evas-software-x11.pc
......
......@@ -3090,6 +3090,8 @@ EFL_ADD_LIBS([EIO], [-lm])
### Checks for library functions
EFL_LIB_END([Eio])
dnl TODO: remove these ifdefs from code!
AC_DEFINE([HAVE_EIO], [1], [Have eio library])
#### End of Eio
......@@ -3368,6 +3370,88 @@ AC_SUBST([want_physics])
EFL_LIB_END([Edje])
#### End of Edje
#### Emotion
EFL_LIB_START([Emotion])
### Default values
if test "${efl_func_shm_open}" = "yes"; then
want_emotion_generic="static"
else
want_emotion_generic="no"
fi
### Additional options to configure
AC_ARG_ENABLE([xine],
[AC_HELP_STRING([--enable-xine],
[enable xine support. @<:@default=disabled@:>@])],
[
if test "x${withval}" = "xyes" ; then
want_xine="yes"
else
want_xine="no"
fi
],
[want_xine="no"])
AC_ARG_ENABLE([v4l2],
[AC_HELP_STRING([--enable-v4l2], [enable v4l2 support.])],
[
if test "x${withval}" = "xyes" ; then
want_v4l2="yes"
else
want_v4l2="no"
fi
],
[want_v4l2="${efl_lib_optional_eeze}"])
### Checks for programs
### Checks for libraries
EFL_INTERNAL_DEPEND_PKG([EMOTION], [eina])
EFL_INTERNAL_DEPEND_PKG([EMOTION], [eo])
EFL_INTERNAL_DEPEND_PKG([EMOTION], [ecore])
EFL_INTERNAL_DEPEND_PKG([EMOTION], [eet])
EFL_INTERNAL_DEPEND_PKG([EMOTION], [evas])
EFL_INTERNAL_DEPEND_PKG([EMOTION], [eio])
EFL_OPTIONAL_INTERNAL_DEPEND_PKG([EMOTION], [${want_v4l2}], [eeze])
AM_CONDITIONAL([EMOTION_HAVE_V4L2], [test "${want_v4l2}" = "yes"])
## modules
have_gst_xoverlay="no"
EMOTION_MODULE([xine], [${want_xine}])
EMOTION_MODULE([gstreamer], [${want_gstreamer}])
EMOTION_MODULE([generic], [${want_emotion_generic}])
EFL_EVAL_PKGS([EMOTION])
### Checks for header files
### Checks for types
### Checks for structures
### Checks for compiler characteristics
### Checks for linker characteristics
### Checks for library functions
if test "${want_v4l2}" = "yes"; then
AC_CHECK_DECL([V4L2_CAP_VIDEO_CAPTURE],
[AC_DEFINE([HAVE_V4L2], [1], [Define to 1 if you have Video4Linux 2 available])],
[AC_MSG_ERROR([Video4Linux 2 desired but not found. See --disable-v4l2.])],
[#include <linux/videodev2.h>])
fi
### Check availability
EFL_LIB_END([Emotion])
#### End of Emotion
AC_ARG_ENABLE([always-build-examples],
[AC_HELP_STRING([--enable-always-build-examples],
[always build examples. @<:@default=disabled@:>@])],
......@@ -3401,6 +3485,7 @@ src/examples/eio/Makefile
src/examples/edbus/Makefile
src/examples/ephysics/Makefile
src/examples/edje/Makefile
src/examples/emotion/Makefile
src/lib/eina/eina_config.h
src/lib/ecore_x/ecore_x_version.h
spec/efl.spec
......@@ -3449,6 +3534,7 @@ pc/efreet-trash.pc
pc/eeze.pc
pc/ephysics.pc
pc/edje.pc
pc/emotion.pc
dbus-services/org.enlightenment.Efreet.service
$po_makefile_in
])
......@@ -3655,6 +3741,7 @@ echo
echo "Eeze...................: ${efl_lib_optional_eeze} (tizen: ${want_tizen})"
echo "EPhysics...............: ${efl_lib_optional_ephysics}"
echo "Edje...................: yes (physics=${efl_lib_optional_ephysics}, multisense=${want_multisense})"
echo "Emotion................: yes (gstreamer=${have_emotion_module_gstreamer} (xoverlay=${have_gst_xoverlay}), xine=${have_emotion_module_xine}, generic=${have_emotion_module_generic}, v4l2=${want_v4l2})"
echo "Tests..................: ${build_tests}"
echo "Examples...............: make examples"
......
......@@ -604,7 +604,8 @@ INPUT = @top_srcdir@/src/lib \
@srcdir@/edbus_examples.dox \
@srcdir@/ephysics_examples.dox \
@srcdir@/edje_examples.dox \
@top_srcdir@/src/bin/edje/edje_cc_handlers.c
@top_srcdir@/src/bin/edje/edje_cc_handlers.c \
@srcdir@/emotion_examples.dox
# This tag can be used to specify the character encoding of the source files
# that doxygen parses. Internally doxygen uses the UTF-8 encoding, which is
......@@ -813,7 +814,8 @@ edbus_ _edbus_ EDBus_ _EDBus_ EDBUS_ _EDBUS_ \
efreet_ _efreet_ Efreet_ _Efreet_ EFREET_ _EFREET_ \
eeze_ _eeze_ Eeze_ _Eeze_ EEZE_ _EEZE_ \
ephysics_ _ephysics_ EPhysics_ _EPhysics_ EPHYSICS_ _EPHYSICS_ \
edje_ _edje_ Edje_ _Edje_ EDJE_ _EDJE_
edje_ _edje_ Edje_ _Edje_ EDJE_ _EDJE_ \
emotion_ _emotion_ Emotion_ _Emotion_ EMOTION_ _EMOTION_
#---------------------------------------------------------------------------
......
......@@ -44,6 +44,7 @@ edje_examples.dox \
eet_examples.dox \
eina_examples.dox \
eio_examples.dox \
emotion_examples.dox \
eo_tutorial.dox \
ephysics_examples.dox \
evas_examples.dox \
......
/**
* @page Examples Examples
* @page emotion_examples Emotion Examples
*
* Here is a page with some Emotion examples explained:
*
......
This source diff could not be displayed because it is too large. You can view the blob instead.
......@@ -21,6 +21,7 @@
* @li @ref eeze_main hardware device manipulation and notification.
* @li @ref ephysics_main physics simulation integration and visual effects.
* @li @ref edje_main layout and theme library with super powers.
* @li @ref emotion_main to play music and videos.
*
*/
......@@ -42,7 +43,7 @@
* @author Brian Mattern <rephorm@@rephorm.com>
* @author Bruno Dilly <bdilly@@profusion.mobi>
* @author Burra <burra@@colorado.edu>
* @author Carsten Haitzler <raster@@@rasterman.com>
* @author Carsten Haitzler <raster@@rasterman.com>
* @author Cedric BAIL <cedric.bail@@free.fr>
* @author Chidambar Zinnoury <illogict@@online.fr>
* @author Chris Ross <chris@@darkrock.co.uk>
......@@ -70,6 +71,7 @@
* @author Haifeng Deng <haifeng.deng@@samsung.com>
* @author Hisham 'CodeWarrior' Mardam Bey <hisham@@hisham.cc>
* @author Howell Tam <pigeon@@pigeond.net>
* @author Hugo Camboulive <hugo.camboulive@@zodiacaerospace.com>
* @author Hyoyoung Chang <hyoyoung@@gmail.com>
* @author Ibukun Olumuyiwa <ibukun@@computer.org>
* @author Iván Briano <ivan@@profusion.mobi>
......@@ -103,6 +105,7 @@
* @author Nicholas Curran <quasar@@bigblue.net.au>
* @author Nicolas Aguirre <aguirre.nicolas@@gmail.com>
* @author Peter Wehrfritz <peter.wehrfritz@@web.de>
* @author Pierre Le Magourou <pierre.lemagourou@@openwide.fr>
* @author PnB <Poor.NewBie@@gmail.com>
* @author Prince Kumar Dubey <prince.dubey@@samsung.com> <prince.dubey@@gmail.com>
* @author Rafael Antognolli <antognolli@@profusion.mobi>
......@@ -119,6 +122,7 @@
* @author Seungsoo Woo <om101.woo@@samsung.com>
* @author Shilpa Singh <shilpa.singh@@samsung.com> <shilpasingh.o@@gmail.com>
* @author Simon Poole <simon.armlinux@@themalago.net>
* @author Sohyun Kim <anna1014.kim@@samsung.com>
* @author Steve Ireland <sireland@@pobox.com>
* @author Sung W. Park <sungwoo@@gmail.com>
* @author Term <term@@twistedpath.org>
......@@ -222,3 +226,9 @@
*
* @brief Layout and theme library with super-powers.
*/
/**
* @defgroup Emotion
*
* @brief Plays music and videos.
*/
dnl use: EMOTION_MODULE_DEP_CHECK_XINE(want_engine)
dnl where want_engine = yes or static
AC_DEFUN([EMOTION_MODULE_DEP_CHECK_XINE],
[dnl
requirements="libxine >= 1.1.1"
if test "$1" = "static"; then
EFL_DEPEND_PKG([EMOTION], [EMOTION_MODULE_XINE], [${requirements}])
else
PKG_CHECK_MODULES([EMOTION_MODULE_XINE], [${requirements}])
fi
])
dnl use: EMOTION_MODULE_DEP_CHECK_GSTREAMER(want_static)
dnl where want_engine = yes or static
AC_DEFUN([EMOTION_MODULE_DEP_CHECK_GSTREAMER],
[dnl
GST_VER=0.10.2
requirements="gstreamer-0.10 >= ${GST_VER} gstreamer-plugins-base-0.10 >= ${GST_VER} gstreamer-video-0.10 >= ${GST_VER} gstreamer-interfaces-0.10 >= ${GST_VER}"
have_gst_xoverlay="no"
if test "$1" = "static"; then
EFL_DEPEND_PKG([EMOTION], [EMOTION_MODULE_GSTREAMER], [${requirements}])
else
PKG_CHECK_MODULES([EMOTION_MODULE_GSTREAMER], [${requirements}])
fi
if test "${want_x11_any}" = "yes"; then
if test "$1" = "static"; then # we need gstreamer cflags and libs to test xoverlay support
PKG_CHECK_MODULES([EMOTION_MODULE_GSTREAMER], [${requirements}])
fi
CFLAGS_save="${CFLAGS}"
CFLAGS="${CFLAGS} ${EMOTION_MODULE_GSTREAMER_CFLAGS}"
AC_CHECK_HEADER([gst/interfaces/xoverlay.h],
[have_gst_xoverlay="old" # will check for "new" later with AC_CHECK_LIB()
AC_DEFINE(HAVE_XOVERLAY_H, 1, [Build with Gstreamer Xoverlay support])],
[AC_MSG_WARN([Building Gstreamer with X11 but no gst/interfaces/xoverlay.h found])],
[#include <gst/gst.h>])
CFLAGS="${CFLAGS_save}"
LDFLAGS_save=${LDFLAGS}
LDFLAGS="${LDFLAGS} ${EMOTION_MODULE_GSTREAMER_LIBS}"
AC_CHECK_LIB([gstinterfaces-0.10], [gst_x_overlay_set_window_handle],
[have_gst_xoverlay="new"
AC_DEFINE([HAVE_X_OVERLAY_SET], [1], [Use gst_x_overlay_set_window_handle instead of old deprecated gst_x_overlay_set_xwindow_id])])
LDFLAGS="${LDFLAGS_save}"
fi
])
dnl use: EMOTION_MODULE_DEP_CHECK_GENERIC(want_static)
dnl where want_engine = yes or static
AC_DEFUN([EMOTION_MODULE_DEP_CHECK_GENERIC], [])
dnl use: EMOTION_MODULE(name, want_engine)
dnl
dnl defines EMOTION_BUILD_NAME if it should be built
dnl defines EMOTION_STATIC_BUILD_NAME if should be built statically
dnl
AC_DEFUN([EMOTION_MODULE],
[
m4_pushdef([UP], m4_translit([$1], [-a-z], [_A-Z]))dnl
m4_pushdef([DOWN], m4_translit([$1], [-A-Z], [_a-z]))dnl
want_engine="$2"
want_static_engine="no"
have_engine="no"
have_emotion_module_[]DOWN="no"
EMOTION_MODULE_[]m4_defn([UP])[]_CFLAGS=""
EMOTION_MODULE_[]m4_defn([UP])[]_LIBS=""
if test "x${want_engine}" = "xyes" -o "x${want_engine}" = "xstatic"; then
m4_default([EMOTION_MODULE_DEP_CHECK_]m4_defn([UP]))([${want_engine}])
have_engine="yes"
if test "x${want_engine}" = "xstatic" ; then
have_emotion_module_[]DOWN="static"
want_static_engine="yes"
else
have_emotion_module_[]DOWN="yes"
fi
fi
AC_DEFINE_IF(EMOTION_BUILD_[]UP, [test "${have_engine}" = "yes"],
[1], [Build $1 Evas engine])
AM_CONDITIONAL(EMOTION_BUILD_[]UP, [test "${have_engine}" = "yes"])
AC_DEFINE_IF(EMOTION_STATIC_BUILD_[]UP, [test "${want_static_engine}" = "yes"],
[1], [Build $1 Evas engine inside libevas])
AM_CONDITIONAL(EMOTION_STATIC_BUILD_[]UP, [test "${want_static_engine}" = "yes"])
AC_SUBST([EMOTION_MODULE_]m4_defn([UP])[_CFLAGS])
AC_SUBST([EMOTION_MODULE_]m4_defn([UP])[_LIBS])
m4_popdef([UP])
m4_popdef([DOWN])
])
......@@ -5,7 +5,7 @@ includedir=@includedir@
Name: emotion
Description: Emotion evas based multimedia library
@pkgconfig_requires_private@: @requirement_emotion@
Version: @VERSION@
Requires.private: @requirements_pc_emotion@
Libs: -L${libdir} -lemotion
Cflags: -I${includedir}/emotion-@VMAJ@
......@@ -42,6 +42,7 @@ include Makefile_Efreet.am
include Makefile_Eeze.am
include Makefile_EPhysics.am
include Makefile_Edje.am
include Makefile_Emotion.am
.PHONY: benchmark examples
......@@ -80,6 +81,7 @@ clean-local:
rm -rf lib/eeze/*.gcno
rm -rf lib/ephysics/*.gcno
rm -rf lib/edje/*.gcno
rm -rf lib/emotion/*.gcno
rm -rf modules/eina/mp/pass_through/*.gcno
rm -rf modules/eina/mp/one_big/*.gcno
rm -rf modules/eina/mp/chained_pool/*.gcno
......@@ -119,5 +121,8 @@ clean-local:
rm -rf modules/edje/alsa_snd_player/*.gcno
rm -rf modules/edje/eet_snd_reader/*.gcno
rm -rf modules/edje/multisense_factory/*.gcno
rm -rf modules/emotion/xine/*.gcno
rm -rf modules/emotion/gstreamer/*.gcno
rm -rf modules/emotion/generic/*.gcno
rm -rf static_libs/liblinebreak/*.gcno
rm -rf static_libs/lz4/*.gcno
......@@ -257,3 +257,13 @@ $(EDJE_COMMON_USER_LDADD) \
@CHECK_LIBS@
endif
# Useful to other modules that generate EDJ
EDJE_CC = EFL_RUN_IN_TREE=1 $(top_builddir)/src/bin/edje/edje_cc
EDJE_CC_FLAGS_VERBOSE_0 =
EDJE_CC_FLAGS_VERBOSE_1 = -v
EDJE_CC_FLAGS = $(EDJE_CC_FLAGS_VERBOSE_$(V)) -id $(srcdir) -fd $(srcdir)
AM_V_EDJ = $(am__v_EDJ_$(V))
am__v_EDJ_ = $(am__v_EDJ_$(AM_DEFAULT_VERBOSITY))
am__v_EDJ_0 = @echo " EDJ " $@;
### Library
lib_LTLIBRARIES += \
lib/emotion/libemotion.la
EMOTION_COMMON_CPPFLAGS = \
-I$(top_srcdir)/src/lib/eina \
-I$(top_builddir)/src/lib/eina \
-I$(top_srcdir)/src/lib/eo \
-I$(top_builddir)/src/lib/eo \
-I$(top_srcdir)/src/lib/ecore \
-I$(top_builddir)/src/lib/ecore \
-I$(top_srcdir)/src/lib/ecore_x \
-I$(top_builddir)/src/lib/ecore_x \
-I$(top_srcdir)/src/lib/ecore_input \
-I$(top_builddir)/src/lib/ecore_input \
-I$(top_srcdir)/src/lib/ecore_evas \
-I$(top_builddir)/src/lib/ecore_evas \
-I$(top_srcdir)/src/lib/eet \
-I$(top_builddir)/src/lib/eet \
-I$(top_srcdir)/src/lib/evas \
-I$(top_builddir)/src/lib/evas \
-I$(top_srcdir)/src/lib/eio \
-I$(top_builddir)/src/lib/eio \
-I$(top_srcdir)/src/lib/eeze \
-I$(top_builddir)/src/lib/eeze \
-I$(top_srcdir)/src/lib/emotion \
-I$(top_builddir)/src/lib/emotion \
@EFL_COV_CFLAGS@ \
@EMOTION_CFLAGS@
EMOTION_COMMON_LDADD = \
lib/eina/libeina.la \
lib/eo/libeo.la \
lib/ecore/libecore.la \
lib/eet/libeet.la \
lib/evas/libevas.la \
lib/eio/libeio.la \
@EFL_COV_LIBS@
if EMOTION_HAVE_V4L2
EMOTION_COMMON_LDADD += lib/eeze/libeeze.la
endif
installed_emotionmainheadersdir = $(includedir)/emotion-@VMAJ@
dist_installed_emotionmainheaders_DATA = lib/emotion/Emotion.h
# libemotion.la
lib_emotion_libemotion_la_SOURCES = \
lib/emotion/emotion_private.h \
lib/emotion/emotion_smart.c \
lib/emotion/emotion_main.c
EMOTION_COMMON_LIBADD = $(EMOTION_COMMON_LDADD) @EMOTION_LIBS@
EMOTION_COMMON_LDADD += @EMOTION_LDFLAGS@
EMOTION_COMMON_USER_LIBADD = $(EMOTION_COMMON_LIBADD) lib/emotion/libemotion.la
EMOTION_COMMON_USER_LDADD = $(EMOTION_COMMON_LDADD) lib/emotion/libemotion.la
lib_emotion_libemotion_la_CPPFLAGS = \
$(EMOTION_COMMON_CPPFLAGS) \
-DPACKAGE_BIN_DIR=\"$(bindir)\" \
-DPACKAGE_LIB_DIR=\"$(libdir)\" \
-DPACKAGE_DATA_DIR=\"$(datadir)/emotion\" \
-DPACKAGE_BUILD_DIR=\"`pwd`/$(top_builddir)\" \
-DEFL_EMOTION_BUILD
lib_emotion_libemotion_la_LIBADD = $(EMOTION_COMMON_LIBADD)
lib_emotion_libemotion_la_LDFLAGS = @EFL_LTLIBRARY_FLAGS@
## Modules
# Xine
EMOTION_XINE_SOURCES = \
modules/emotion/xine/emotion_xine.h \
modules/emotion/xine/emotion_xine.c \
modules/emotion/xine/emotion_xine_vo_out.c
if EMOTION_STATIC_BUILD_XINE
lib_emotion_libemotion_la_SOURCES += $(EMOTION_XINE_SOURCES)
else
if EMOTION_BUILD_XINE
emotionmodulexinedir = $(libdir)/emotion/modules/xine/$(MODULE_ARCH)
emotionmodulexine_LTLIBRARIES = modules/emotion/xine/module.la
modules_emotion_xine_module_la_SOURCES = $(EMOTION_XINE_SOURCES)
modules_emotion_xine_module_la_CPPFLAGS = \
$(EMOTION_COMMON_CPPFLAGS) \
@EMOTION_MODULE_XINE_CFLAGS@
modules_emotion_xine_module_la_LIBADD = \
$(EMOTION_COMMON_USER_LIBADD) \
@EMOTION_MODULE_XINE_LIBS@
modules_emotion_xine_module_la_LDFLAGS = -module @EFL_LTMODULE_FLAGS@
modules_emotion_xine_module_la_LIBTOOLFLAGS = --tag=disable-static
endif
endif
# Gstreamer
EMOTION_GSTREAMER_SOURCES = \
modules/emotion/gstreamer/emotion_gstreamer.h \
modules/emotion/gstreamer/emotion_gstreamer.c \
modules/emotion/gstreamer/emotion_alloc.c \
modules/emotion/gstreamer/emotion_convert.c \
modules/emotion/gstreamer/emotion_fakeeos.c \
modules/emotion/gstreamer/emotion_sink.c
if EMOTION_STATIC_BUILD_GSTREAMER
lib_emotion_libemotion_la_SOURCES += $(EMOTION_GSTREAMER_SOURCES)
if HAVE_ECORE_X
EMOTION_COMMON_LDADD += \
lib/ecore_evas/libecore_evas.la \
lib/ecore_x/libecore_x.la
endif
else
if EMOTION_BUILD_GSTREAMER
emotionmodulegstreamerdir = $(libdir)/emotion/modules/gstreamer/$(MODULE_ARCH)
emotionmodulegstreamer_LTLIBRARIES = modules/emotion/gstreamer/module.la
modules_emotion_gstreamer_module_la_SOURCES = $(EMOTION_GSTREAMER_SOURCES)
modules_emotion_gstreamer_module_la_CPPFLAGS = \
$(EMOTION_COMMON_CPPFLAGS) \
@EMOTION_MODULE_GSTREAMER_CFLAGS@
modules_emotion_gstreamer_module_la_LIBADD = \
$(EMOTION_COMMON_USER_LIBADD) \
@EMOTION_MODULE_GSTREAMER_LIBS@
modules_emotion_gstreamer_module_la_LDFLAGS = -module @EFL_LTMODULE_FLAGS@
modules_emotion_gstreamer_module_la_LIBTOOLFLAGS = --tag=disable-static
if HAVE_ECORE_X
modules_emotion_gstreamer_module_la_LIBADD += \
lib/ecore_evas/libecore_evas.la \
lib/ecore_x/libecore_x.la
endif
endif
endif
# Generic
EMOTION_GENERIC_SOURCES = \
modules/emotion/generic/emotion_generic.h \
modules/emotion/generic/emotion_generic.c
if EMOTION_STATIC_BUILD_GENERIC
lib_emotion_libemotion_la_SOURCES += $(EMOTION_GENERIC_SOURCES)
else
if EMOTION_BUILD_GENERIC
emotionmodulegenericdir = $(libdir)/emotion/modules/generic/$(MODULE_ARCH)
emotionmodulegeneric_LTLIBRARIES = modules/emotion/generic/module.la
modules_emotion_generic_module_la_SOURCES = $(EMOTION_GENERIC_SOURCES)
modules_emotion_generic_module_la_CPPFLAGS = \
$(EMOTION_COMMON_CPPFLAGS)
modules_emotion_generic_module_la_LIBADD = \
$(EMOTION_COMMON_USER_LIBADD)
modules_emotion_generic_module_la_LDFLAGS = -module @EFL_LTMODULE_FLAGS@
modules_emotion_generic_module_la_LIBTOOLFLAGS = --tag=disable-static
endif
endif
if EMOTION_BUILD_GENERIC
dist_installed_emotionmainheaders_DATA += \
modules/emotion/generic/Emotion_Generic_Plugin.h
endif
# Edje_External
emotionedjeexternaldir = $(libdir)/edje/modules/emotion/$(MODULE_ARCH)
emotionedjeexternal_LTLIBRARIES = edje_external/emotion/module.la
edje_external_emotion_module_la_SOURCES = \
edje_external/emotion/emotion.c
edje_external_emotion_module_la_CPPFLAGS = \
$(EMOTION_COMMON_CPPFLAGS) \
$(EDJE_COMMON_CPPFLAGS)
edje_external_emotion_module_la_LIBADD = \
$(EMOTION_COMMON_USER_LIBADD) \
$(EDJE_COMMON_USER_LIBADD)
edje_external_emotion_module_la_LDFLAGS = -module @EFL_LTMODULE_FLAGS@
edje_external_emotion_module_la_LIBTOOLFLAGS = --tag=disable-static
### Binary
### Unit tests
if EFL_ENABLE_TESTS
bin_PROGRAMS += tests/emotion/emotion_test
tests_emotion_emotion_test_SOURCES = \
tests/emotion/emotion_test_main.c
tests_emotion_emotion_test_CPPFLAGS = \
$(EMOTION_COMMON_CPPFLAGS) \
-I$(top_srcdir)/src/lib/edje \
-I$(top_builddir)/src/lib/edje \
-DPACKAGE_BIN_DIR=\"$(bindir)\" \
-DPACKAGE_LIB_DIR=\"$(libdir)\" \
-DPACKAGE_DATA_DIR=\"$(datadir)/emotion\" \
-DPACKAGE_BUILD_DIR=\"`pwd`/$(top_builddir)\"
tests_emotion_emotion_test_LDADD = \
$(EMOTION_COMMON_USER_LDADD) \
lib/edje/libedje.la
tests/emotion/data/theme.edj: tests/emotion/data/theme.edc
$(AM_V_EDJ)$(EDJE_CC) $(EDJE_CC_FLAGS) -id $(srcdir)/tests/emotion/data $< $@
EMOTION_DATA_FILES = \
tests/emotion/data/bpause.png \
tests/emotion/data/bplay.png \
tests/emotion/data/bstop.png \
tests/emotion/data/e_logo.png \
tests/emotion/data/fr1.png \
tests/emotion/data/fr2.png \
tests/emotion/data/fr3.png \
tests/emotion/data/fr4.png \
tests/emotion/data/fr5.png \
tests/emotion/data/fr6.png \
tests/emotion/data/fr7.png \
tests/emotion/data/h_slider.png \
tests/emotion/data/icon.edc \
tests/emotion/data/knob.png \
tests/emotion/data/orb.png \
tests/emotion/data/pnl.png \
tests/emotion/data/sl.png \
tests/emotion/data/theme.edc \
tests/emotion/data/tiles.png \
tests/emotion/data/video_frame_bottom.png \
tests/emotion/data/video_frame_left.png \
tests/emotion/data/video_frame_right.png \
tests/emotion/data/video_frame_top.png \
tests/emotion/data/whb.png \
tests/emotion/data/window_inner_shadow.png
emotiondatafilesdir = $(datadir)/emotion/data
emotiondatafiles_DATA = tests/emotion/data/theme.edj
endif
EXTRA_DIST += \
$(EMOTION_DATA_FILES) \
modules/emotion/generic/README
......@@ -75,14 +75,14 @@ static const char _external_emotion_engine_def[] =
#endif
static void
_external_emotion_signal_proxy_free_cb(void *data, Evas *e __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
_external_emotion_signal_proxy_free_cb(void *data, Evas *e EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED)
{
External_Emotion_Signals_Proxy_Context *ctxt = data;
free(ctxt);
}
static void
_external_emotion_signal_proxy_cb(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
_external_emotion_signal_proxy_cb(void *data, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED)
{
External_Emotion_Signals_Proxy_Context *ctxt = data;
// TODO: Is it worth to check Evas_Smart_Cb_Description and do something
......@@ -91,7 +91,7 @@ _external_emotion_signal_proxy_cb(void *data, Evas_Object *obj __UNUSED__, void
}
static Evas_Object *
_external_emotion_add(void *data __UNUSED__, Evas *evas, Evas_Object *edje __UNUSED__, const Eina_List *params, const char *part_name)
_external_emotion_add(void *data EINA_UNUSED, Evas *evas, Evas_Object *edje EINA_UNUSED, const Eina_List *params, const char *part_name)
{
const Evas_Smart_Cb_Description **cls_descs, **inst_descs;
unsigned int cls_count, inst_count, total;
......@@ -145,13 +145,13 @@ _external_emotion_add(void *data __UNUSED__, Evas *evas, Evas_Object *edje __UNU
}
static void
_external_emotion_signal(void *data __UNUSED__, Evas_Object *obj __UNUSED__, const char *signal, const char *source)
_external_emotion_signal(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, const char *signal, const char *source)
{
DBG("External Signal received: '%s' '%s'", signal, source);
}
static void
_external_emotion_state_set(void *data __UNUSED__, Evas_Object *obj, const void *from_params, const void *to_params, float pos __UNUSED__)
_external_emotion_state_set(void *data EINA_UNUSED, Evas_Object *obj, const void *from_params, const void *to_params, float pos EINA_UNUSED)
{
const External_Emotion_Params *p;
......@@ -187,7 +187,7 @@ _external_emotion_state_set(void *data __UNUSED__, Evas_Object *obj, const void
}
static Eina_Bool
_external_emotion_param_set(void *data __UNUSED__, Evas_Object *obj, const Edje_External_Param *param)
_external_emotion_param_set(void *data EINA_UNUSED, Evas_Object *obj, const Edje_External_Param *param)
{
if (!strcmp(param->name, "engine"))
{
......@@ -265,7 +265,7 @@ _external_emotion_param_set(void *data __UNUSED__, Evas_Object *obj, const Edje_
}
static Eina_Bool
_external_emotion_param_get(void *data __UNUSED__, const Evas_Object *obj, Edje_External_Param *param)
_external_emotion_param_get(void *data EINA_UNUSED, const Evas_Object *obj, Edje_External_Param *param)
{
#define _STR(M) \
else if (!strcmp(param->name, #M)) \
......@@ -332,7 +332,7 @@ _external_emotion_param_get(void *data __UNUSED__, const Evas_Object *obj, Edje_
}
static void *
_external_emotion_params_parse(void *data __UNUSED__, Evas_Object *obj __UNUSED__, const Eina_List *params)
_external_emotion_params_parse(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, const Eina_List *params)
{
const Edje_External_Param *param;
const Eina_List *l;
......@@ -418,13 +418,13 @@ _external_emotion_params_free(void *params)
}
static const char *
_external_emotion_label_get(void *data __UNUSED__)
_external_emotion_label_get(void *data EINA_UNUSED)
{
return "Emotion";
}
static Evas_Object *
_external_emotion_icon_add(void *data __UNUSED__, Evas *e)
_external_emotion_icon_add(void *data EINA_UNUSED, Evas *e)
{
Evas_Object *ic;
int w = 0, h = 0;
......@@ -441,7 +441,7 @@ _external_emotion_icon_add(void *data __UNUSED__, Evas *e)
}
static const char *
_external_emotion_translate(void *data __UNUSED__, const char *orig)
_external_emotion_translate(void *data EINA_UNUSED, const char *orig)
{
// in future, mark all params as translatable and use dgettext()
// with "emotion" text domain here.
......
MAINTAINERCLEANFILES = Makefile.in
SUBDIRS = eina eo eet evas ecore eio edbus ephysics edje
SUBDIRS = eina eo eet evas ecore eio edbus ephysics edje emotion
.PHONY: examples install-examples
......
MAINTAINERCLEANFILES = Makefile.in
AM_CPPFLAGS = \