Change the module infra and allow one to register using the
description structure itself, saves some work.
Replace module_open and module_close with add() and del(), that are
more descriptive.
Move stuff to init/shutdown where it was a better fit.
Since add() now receives the first parameter being the owning
structure we can create one structure per generic player and they will
merge transparently with other modules, then we can use a simple
algorithm that considers the plugin priority. ALL DYNAMIC!
Future work could be done to load the plugin priority specified by
user from configuration file. But this is not in my plans right now.
SVN revision: 82602
Removed the engine handling out from smart object, later the module
API will change and we'll be able to simplify many things.
My plan is to allow generic players to register along as regular
modules.
SVN revision: 82597
* strings.h: is very useful, very old and very standard. The only place
that checks for that is simple_xml_parser and I have no idea why
SVN revision: 82576
no - not planning a backport of this at this stage. small thing. maybe
backport (and chlog/news) if this doesnt cause any new issues?
SVN revision: 82549
* emotion_init() and emotion_shutdown() now exist, let's do our
initialization from there.
* smart_add/smart_free will call init/shutdown for legacy apps.
* use eina_prefix to determine runtime location.
* use eina_module_arch_list_get()
SVN revision: 82509
we were using "" for locale that made eina_prefix think that we did
not had a common prefix.
take the time and add a magic file "checkme" to be checked at runtime
to validate stuff.
also made the binaries be searched in MODULE_ARCH namespace.
SVN revision: 82507
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
do not include Ecore_Input.h just to get Ecore_Window and Ecore_Getopt
to get handful typedefs.
NOTE: why do we have the #ifdefs around these predefs? At least GCC does not warn if we typedef twice the same thing (if they are identical)
SVN revision: 82499
This made no sense... as HAVE_ECORE_IMF was defined in a local (not
installed) config.h. With single-tree it is defined and will bring in
one useless include in our public header.
SVN revision: 82498