Commit Graph

2257 Commits

Author SHA1 Message Date
Carsten Haitzler 26dea1fee7 dont dirty on loadopt change - cache handles that
SVN revision: 40583
2009-05-10 22:42:09 +00:00
Carsten Haitzler 47f6f036c1 fix load opts to only unload/reload if opts changed for cserve
SVN revision: 40573
2009-05-10 03:06:49 +00:00
Vincent Torri 22969c71ef allow compilation on OS where the cache server can't be built (like Windows...)
SVN revision: 40570
2009-05-09 16:18:31 +00:00
Vincent Torri fb5e325078 remove EINA_WARN_UNUSED_RESULT on functions that return nothing
SVN revision: 40565
2009-05-09 06:59:00 +00:00
Vincent Torri fee240ec62 check for shm_open only if cserve is to be built
SVN revision: 40559
2009-05-08 22:01:43 +00:00
Vincent Torri 7ac68a4283 include time.h header files because time_t is used in Evas.h
SVN revision: 40558
2009-05-08 21:46:01 +00:00
Vincent Torri fa7a3b54a9 Check if we can compile and link programs using shm_open (for cserve)
Useful for platform that does not have them (Windows, some BSD)


SVN revision: 40557
2009-05-08 21:34:38 +00:00
Carsten Haitzler f79b4a4a2f 1. scalecache config env vars an use them
2. more api's related to cserve



SVN revision: 40548
2009-05-08 11:26:25 +00:00
Carsten Haitzler 5f77a25e1b unset cserve in cserve
SVN revision: 40539
2009-05-07 14:02:14 +00:00
Carsten Haitzler 85bff718d6 1. scale cache now allows you to hint at the object if its dynamic, static or
none (ie default) and the engines actually understand it and use it.
2. fixes to scalecache and cserver too. more toto's done and its now been
stress tested by me - and i think cserve is ready to go gold. just enable it
with export EVAS_CSERVE=1 in your env for any eflapps - and run evas_cserve
(cmd-line options avalable plus cmd-line tol to query settings change on the
fly and query statsitics and state)



SVN revision: 40536
2009-05-07 13:29:56 +00:00
Vincent Torri 63f52c10c8 config.h is automatically added as a dependency by automake
SVN revision: 40531
2009-05-07 07:33:30 +00:00
Carsten Haitzler d92a6d99a7 more cserver work for sharede cache- improvements
SVN revision: 40524
2009-05-06 12:36:06 +00:00
Carsten Haitzler 63e4b4e564 fix softwared x11 xlib engine to generate masks when rotated too
SVN revision: 40523
2009-05-06 12:35:38 +00:00
Carsten Haitzler b37f6643cf fix char-wrap min size calc!
SVN revision: 40522
2009-05-06 12:34:54 +00:00
Gustavo Sverzut Barbieri a82baa9e5f do not disable sse on non amd64 machines.
build should detect sse and it should be toggled automatically during
runtime.



SVN revision: 40519
2009-05-06 07:03:31 +00:00
Gustavo Sverzut Barbieri b61f06e913 improve evas packaging.
- don't package directfb, it's for specific systems like embedded
   where it is required to build manually, maybe define some tweaks.

 - don't build with no-dither-mask as it will completely disable
   dithering on 16 and 8bpps, that's wrong! This is supposed to be
   enabled on embedded devices only, like maemo.



SVN revision: 40518
2009-05-06 06:59:53 +00:00
Gustavo Sverzut Barbieri 880ecd5726 fix minor build problems.
SVN revision: 40517
2009-05-06 06:39:59 +00:00
Vincent Torri 48c7e28b20 * add support of CMYK, ICCK and grayscale images
* remove trailing spaces

fix ticket #303


SVN revision: 40515
2009-05-05 21:48:50 +00:00
Carsten Haitzler 892c085276 more todo items knocked off for cserve
SVN revision: 40509
2009-05-05 14:37:18 +00:00
Daniel Kolesa 07ec7509a9 Fixed debian stuff everywhere.
SVN revision: 40505
2009-05-04 17:36:48 +00:00
Rodrigo Cesar Lopes Belem a7c514da2b Added libtool as Build-Depends to everything that uses
DEB_CONFIGURE_SCRIPT := ./autogen.sh

SVN revision: 40500
2009-05-03 14:32:23 +00:00
Carsten Haitzler bd6d938956 todo items for cserve for evas done - well some of them. more to come.
SVN revision: 40495
2009-05-03 07:37:31 +00:00
Gustavo Sverzut Barbieri 8ef8b1e15a fix build of cserve with -fvisibility=hidden.
SVN revision: 40486
2009-05-02 15:53:48 +00:00
Carsten Haitzler 46e8aa1b0d shared cache server++
is it ok?

1. it can be --disabled in evas's configure, but i think it works WITHOUT
disabling it (runtime) as it falls back to the old way of loading
2. it may cause build problems on some platforms - without it being enabled
we won't find out, so enable.
3. it needs enabling runtime to make use of it so it should be safe for now
until you enable it.

what is it?

it is a SHARED cache server - that means images loaded are loaded BY the
cache server (not by the actual process using evas). images are shared via
shared memory segments (shm_open + mmap). this means only 1 copy is in all
ram at any time - no matter how many processes need it , and its only loaded
once. also if another app has already loaded the same data - and its in the
cache or active hash, then another process needing the same stuff will avoid
the loads as it will just get instant replies from the cache of "image already
there". as it runs in its own process it can also time-out images from the
cache too.

right now you enable it by doing 2 things

1. run evas_cserve (it has cmd-line options to configure cache etc.
2. export EVAS_CSERVE=1 (im the environment of apps that should use the cache
server).

it works (for me) without crashes or problems. except for the following:

1. preloading doesnt work so its disabled if cserve is enabled. thisis
because the load threads interfere withthe unix comms socket causing
problems. this need to really change and have the cserve know about/do
preload and let the select() on the evas async events fd listen for the
unsolicited reply "load done". but it's not broken - simple preloads are
syncronous and forced if cserve is enabled (at build time).
2. if cserve is killed/crashes every app using it will have a bad day. baaad
day. so dont do it. also cserve may be vulnerable to apps crashing on it - it
may also exit with sigpipe. this needs fixing.
3. if the apps load using relative paths - this will break as it doesnt
account for the CWD of the client currently. will be fixed.
4. no way to change cache config runtime (yet)
5. no way to get internal cache state (yet).
6. if cache server exist - it wont clean up the shmem file nodes in /dev/shm
- it will clean on restart (remove the old junk). this needs fixing.

if you fine other issues - let me know.

things for the future:

1. now its a separate server.. the server could do async http etc. loads too
2. as a server it could monitor history of usage of files and images and
auto-pre-load files it knows historically are loaded then whose data is 
immediately accessed.
3. the same infra could be used to share font loads (freetype and/or 
fontconfig data).
4. ultimately being able to share rendered font glyphs will help a lot too.
5. it could, on its own, monitor "free memory" and when free memory runs
load, reduce cache size dynamically. (improving low memory situations).
6. it should get a gui to query cache state/contents and display visually.
this would be awesome to have a list of thumbnails that show whats in the
cache, how many referencesa they have, last active timestamps etc.

blah blah.

please let me know if the build is broken asap though as i will vanish
offline for a bit in about 24hrs...



SVN revision: 40478
2009-05-01 07:11:07 +00:00
Mike Frysinger 0041222bb0 pull in evas_common.h for evas_string_char_len_get() decl
SVN revision: 40428
2009-04-28 05:06:48 +00:00
Gustavo Sverzut Barbieri f783e3900d add missing "changed" flags.
SVN revision: 40409
2009-04-27 02:41:27 +00:00
Rodrigo Cesar Lopes Belem 05a22bce95 Merge branch 'debian-fixes'
SVN revision: 40345
2009-04-24 05:29:12 +00:00
Iván Briano 554dccdb0b some formatting
SVN revision: 40343
2009-04-24 04:35:52 +00:00
Iván Briano 6c7831c3ab Build against newer Fribidi
SVN revision: 40341
2009-04-24 00:21:26 +00:00
Vincent Torri 899b8d13dc * better fix for -no-undefined
* remove test with icl


SVN revision: 40313
2009-04-23 03:47:28 +00:00
Vincent Torri 7f98415206 add GDI engine.
todo: fullscreen and shape support


SVN revision: 40310
2009-04-23 03:20:51 +00:00
booleanlabel b0d7b37388 From: booleanlabel@gmail.com
cygwin fixes.



SVN revision: 40303
2009-04-23 01:15:11 +00:00
Daniel Kolesa 875d89a9fe Updated debian stuff for core EFL. Changed debian stuff of others to work with core EFL updates.
SVN revision: 40292
2009-04-22 16:37:17 +00:00
Carsten Haitzler 9d18df3109 and incriment to next rev.
SVN revision: 40285
2009-04-22 14:08:21 +00:00
Carsten Haitzler 99ccf484f8 snapworth quality - distchecked. sonames bumped. rev's bumped. tarballs
uploaded.



SVN revision: 40284
2009-04-22 14:07:05 +00:00
Daniel Kolesa 7a07300a77 Updated changelogs for packages which will go into repository.
SVN revision: 40270
2009-04-21 17:39:20 +00:00
Carsten Haitzler e39dc41493 1. embryo shoudl have soname
2. yes local.conf slipped in - ignore
3. added soname version release to module arch dirs
4. adapted extra-modules to use the revision in arch
5. made e17 also have a release rev
6. dummy release stuff in eet - wont use it as its already released.



SVN revision: 40267
2009-04-21 14:17:42 +00:00
Carsten Haitzler 5399d14e78 limit init and fini to.. once!
SVN revision: 40261
2009-04-21 06:26:52 +00:00
Gustavo Sverzut Barbieri 3ab5491316 fix distcheck on couple packages, problems with EXTRA_DIST
Do NOT include dirs in EXTRA_DIST (embryo, eet, ecore, evas, edje,
efreet) as it will include .svn directories!

EXTRA_DIST does not take a glob as ETK did, use $(wildcard glob) to
expand it.

And do not forget about adding extra files to EXTRA_DIST (wizard) and
DIST_SUBDIRS (fileman_opinfo).




SVN revision: 40247
2009-04-20 13:38:49 +00:00
Vincent Torri cc2916b58f add evas_intl_utils.h to extra dist (fix make distcheck)
reported by Albin Tonnerre


SVN revision: 40243
2009-04-19 22:06:59 +00:00
Carsten Haitzler 38811d99c5 cleanup on shutdown better
SVN revision: 40242
2009-04-19 20:40:41 +00:00
Daniel Kolesa c06e55cc1b Merged with pkgE
SVN revision: 40226
2009-04-19 16:22:00 +00:00
Daniel Kolesa 5d5d17960d Prepared for merge with pkgE debian stuff
SVN revision: 40225
2009-04-19 16:18:41 +00:00
Carsten Haitzler ce5a59b7e5 lutin... release soname patch. verbose svn soname used right now
SVN revision: 40131
2009-04-17 10:01:45 +00:00
Vincent Torri 1893ae93be fix compilation with c++ compilers (needed for Windows too)
patch by Lars Munch


SVN revision: 40103
2009-04-16 10:41:27 +00:00
Iván Briano 994190d144 Don't leak, and be consistent with return values.
SVN revision: 40101
2009-04-16 04:52:33 +00:00
Carsten Haitzler 06e06c4e34 space--
SVN revision: 40087
2009-04-15 14:42:21 +00:00
Carsten Haitzler 215ee3b77b and save makefile.am
SVN revision: 40085
2009-04-15 13:56:42 +00:00
Cedric BAIL 10a15524cc * evas: Finally remove as much free/malloc from the render path. Will need certainly
need some tunning on the number of Evas_Rectangle allocated in advance.


SVN revision: 40084
2009-04-15 13:40:37 +00:00
Carsten Haitzler ce6094df3f move fribidi link to main lib
SVN revision: 40082
2009-04-15 12:01:05 +00:00