Commit Graph

750 Commits

Author SHA1 Message Date
Vincent Torri df8d276b83 better configure output
If nobody is against it, i'll change the configure output
of the EFL so that it is the same


SVN revision: 43687
2009-11-14 08:40:11 +00:00
Cedric BAIL 899b488741 * eina: Now it's possible set a level when eina should abort on log.
SVN revision: 43669
2009-11-13 17:52:43 +00:00
Gustavo Sverzut Barbieri 7df346f50e fix stringshare of small strings.
_eina_stringshare_small_bucket_find() was receiving the plength with
size -1 since the first character is the same, but inside it was not
doing the same, thus it was always failing the first test based on
size.



SVN revision: 43634
2009-11-12 19:41:02 +00:00
Raoul HECKY 279e0dde28 Initialize value for correct counting of # cpu on macosx
SVN revision: 43571
2009-11-09 10:39:49 +00:00
Raoul HECKY 7eb75cbd63 Add __MACH__ and __APPLE__ guards to compile on macosx
SVN revision: 43568
2009-11-09 09:07:10 +00:00
Sebastian Dransfeld a60aeb07a3 function defined as void, don't return a value
SVN revision: 43535
2009-11-08 19:52:31 +00:00
Vincent Torri 12f9e2f515 fix compilation on OpenBSD
SVN revision: 43516
2009-11-07 19:44:39 +00:00
Vincent Torri 2ccaf85b59 fix compilation of eina_amalgamation.c on Windows
SVN revision: 43513
2009-11-07 16:09:58 +00:00
Vincent Torri 7c24994f18 fix dist/distcheck rule
SVN revision: 43474
2009-11-06 01:02:35 +00:00
Vincent Torri c3c217c20f add pthread support on Windows
SVN revision: 43435
2009-11-03 16:53:21 +00:00
Vincent Torri a4d3d53e0d disable amalgamation by default
SVN revision: 43434
2009-11-03 16:52:45 +00:00
Jonathan Atton cbe78d32f2 Eina log : check main thread in eina_log_threads_shutdown
SVN revision: 43415
2009-11-02 10:08:57 +00:00
Vincent Torri 199400bc7d remove useless $(builddir)/ (also confirmed by a autoconf dev),
as anyway, '$(builddir)' is always '.' make distcheck passes.

Thanks to cantona who reported it.


SVN revision: 43401
2009-11-01 21:00:22 +00:00
Jonathan Atton 9191a1dfa3 Eina: renawe _threads_activated for amalgation
SVN revision: 43400
2009-11-01 20:13:12 +00:00
Jonathan Atton 4bfc091f41 Eina : add a prefix to STRINGSHARE_LOCK and LOG_LOCK
SVN revision: 43399
2009-11-01 20:09:26 +00:00
Jonathan Atton 6ea6dc0856 Eina : now eina stringshare is thread safe if eina_threads_init() is called. Eina log which was thread safe is now thread safe only if the previous functions is called
SVN revision: 43398
2009-11-01 19:50:18 +00:00
Christopher Michael e867666096 Add missing lib check for fnmatch.
SVN revision: 43328
2009-10-28 13:04:09 +00:00
Christopher Michael f6da7fc383 Patch configure.ac to check for fnmatch header.
Thanks Vincent :)



SVN revision: 43327
2009-10-28 13:00:59 +00:00
Christopher Michael af793b05d5 Patch to allow a quieter eina when using eina_log in your own libs/apps.
Approved by k-s.

Added some doxy to describe the new env variable. 
(Eina authors may want to reword this...up to you)



SVN revision: 43326
2009-10-28 12:48:04 +00:00
Jonathan Atton cc1863fc96 Eina: add eina_list_split_list()
SVN revision: 43307
2009-10-27 10:26:20 +00:00
Carsten Haitzler b2228247e1 warning--
SVN revision: 43259
2009-10-25 08:57:41 +00:00
Carsten Haitzler f78bded776 warning--
SVN revision: 43258
2009-10-25 08:52:47 +00:00
Carsten Haitzler ca7859168b shh warning
SVN revision: 43257
2009-10-25 08:45:36 +00:00
Iván Briano 044f05ca69 Fix docs for hash_free
SVN revision: 43237
2009-10-24 04:30:52 +00:00
Cedric BAIL 96437266c8 * eina: Fix EINA_LIST_REVERSE_FOREACH_SAFE typo from Gustavo Chaves.
SVN revision: 43186
2009-10-21 19:02:52 +00:00
Vincent Torri 568f723401 Add some more headers at the top of eina_amalgamation.c.
Fix compilation on Windows CE


SVN revision: 43054
2009-10-13 17:14:50 +00:00
Cedric BAIL a9413206ef * eina_hash: First parameter could be NULL.
SVN revision: 43053
2009-10-13 17:11:58 +00:00
Cedric BAIL 17c820aef7 * eina: This initialisation is not needed, but will reduce llvm warning noise.
SVN revision: 42935
2009-10-07 12:06:52 +00:00
Vincent Torri 5bb258d05a * more quoting
* add silent rules (shave feature)
   see the description of AM_SILENT_RULES in: 
   http://www.gnu.org/software/automake/manual/automake.html#Public-Macros



SVN revision: 42905
2009-10-06 16:54:08 +00:00
Vincent Torri aa56214d0b Fix compilation on Windows wrt changes in fixed point code
SVN revision: 42822
2009-09-30 17:29:30 +00:00
Cedric BAIL 7a51d7bf39 * eina: Cleanup Eina fixed point implementation.
SVN revision: 42798
2009-09-29 12:04:50 +00:00
Cedric BAIL 5022bcf21b * eina: Fix doc layout.
SVN revision: 42796
2009-09-29 09:53:41 +00:00
Rafael Antognolli ea4efcb441 Fix eina_tile_grid_slicer_setup when a 0x0 rectangle was given as argument.
In this case slc->first wasn't being set, as well as the info.col and
info.row. This could bring some strange behavior like a call to
eina_tile_grid_slicer_next() not returning false.



SVN revision: 42783
2009-09-28 20:03:56 +00:00
Vincent Torri 70ba1f22fd and AC_SUBST the requirement...
SVN revision: 42703
2009-09-25 15:43:41 +00:00
Vincent Torri 47e25ab257 * really export symbols on Windows (EFL_EINA_BUILD not
correctly defined)
 * add evil in the Requires.private field of eina-0.pc.in

SVN revision: 42702
2009-09-25 15:39:53 +00:00
Cedric BAIL 568acf4705 * eina_atofp: Always return EINA_TRUE on valid input string.
SVN revision: 42700
2009-09-25 12:02:14 +00:00
Vincent Torri 1079703690 return false if fp is NULL, update doc accordingly
SVN revision: 42699
2009-09-25 11:51:52 +00:00
Cedric BAIL 340ac0ee30 * eina: Fix build without amalgamation.
SVN revision: 42698
2009-09-25 11:36:56 +00:00
Vincent Torri b2bda6edb2 * convert string to fp only if fp is not NULL
* add doc of eina_convert_atofp()
 * minor doc cleanup

SVN revision: 42697
2009-09-25 11:23:37 +00:00
Cedric BAIL 6a284f8178 * eina: Add eina_atofp.
SVN revision: 42694
2009-09-25 10:03:19 +00:00
Vincent Torri 7c47dc2c65 * add documentation for eina_convert_fptoa()
* fix typo in doc

SVN revision: 42691
2009-09-25 08:44:04 +00:00
Cedric BAIL a0cf367269 * eina: Improve eina_fptoa test.
SVN revision: 42648
2009-09-23 16:57:59 +00:00
Cedric BAIL 4ddba5724d * eina: Add eina_fptoa.
This is a small piece of code, but a big one for an edje fixed point implementation.


SVN revision: 42646
2009-09-23 16:47:08 +00:00
Vincent Torri 3e74ea2ad3 configure eina with VS according to the used mode (debug or release)
SVN revision: 42625
2009-09-22 22:28:35 +00:00
Vincent Torri a7293d0cda add README.txt and MANIFEST.txt files
SVN revision: 42526
2009-09-16 20:23:11 +00:00
Vincent Torri e2b34b41ee * fix compilation on Windows when using amalgamation
* put alloca declaration at the beginning

SVN revision: 42517
2009-09-16 17:22:01 +00:00
Vincent Torri c1f402b6fc * allow compilation with vc++
* fix a small warning

SVN revision: 42513
2009-09-16 13:38:21 +00:00
Vincent Torri 49ac7ebc95 * update Visual Studio project files:
- link against evil
   - eina mempools are statically linked
 * formatting in start.bat

SVN revision: 42512
2009-09-16 13:31:23 +00:00
Vincent Torri d14efa7613 * add Visual Studio 2008 project
* use a single start file to launch Visual Studio 2005 or 2008 automatically

SVN revision: 42510
2009-09-16 11:32:24 +00:00
Gustavo Sverzut Barbieri 5b68d0be34 minor fixes.
SVN revision: 42504
2009-09-15 22:32:24 +00:00
Vincent Torri 06cb4ebf40 update Visual Studio project
SVN revision: 42501
2009-09-15 21:20:56 +00:00
Vincent Torri 9b9c496175 move the declaration of variables at the beginning of the block
SVN revision: 42499
2009-09-15 21:20:08 +00:00
Vincent Torri 0ba193bae0 move EINA_DEPRECATED at the beginning of the declaration,
because it's more visible, and vc++ does not like it at
the end.

SVN revision: 42498
2009-09-15 21:19:15 +00:00
Cedric BAIL 8e6a393cf9 * eina_log: Fallback to mutex when spinlock doesn't exist.
SVN revision: 42489
2009-09-14 16:06:18 +00:00
Cedric BAIL d117093a55 * eina: Add explanation around compiler false positiv warning.
SVN revision: 42488
2009-09-14 15:28:55 +00:00
Rafael Antognolli 52de9e33cd Added the Eina_Tile_Grid_Slicer iterator.
This new iterator receives a rectangle as argument and tile_w X tile_h sized
tile, and slices the rectangle iterating over it on each iteration.



SVN revision: 42427
2009-09-11 23:51:47 +00:00
Gustavo Sverzut Barbieri 7d1745e3c1 constness++
SVN revision: 42426
2009-09-11 23:10:57 +00:00
Gustavo Sverzut Barbieri f98cb6e5f5 fix lighblue and add cyan.
SVN revision: 42410
2009-09-11 14:22:24 +00:00
Horms bef3c68926 Add libeina-svn-04.lintian-overrides
Based on libeina-svn-03.lintian-overrides from
the eina 0.0.2.062-2 package on debian.org



SVN revision: 42378
2009-09-10 02:44:05 +00:00
Horms fd13f43a81 Update libeina-svn-01 to libeina-svn-04
SVN revision: 42377
2009-09-10 02:41:40 +00:00
Horms 19afb9e363 Remove bogus mmu debian-version
SVN revision: 42376
2009-09-10 02:32:47 +00:00
Horms 7ac04b3860 Update version in Debian changelog to 0.0.2.62
SVN revision: 42375
2009-09-10 02:31:36 +00:00
Horms 0d0e486d54 Update Debian standards version from 3.8.1 to 3.8.3
SVN revision: 42374
2009-09-10 01:41:41 +00:00
Rafael Antognolli 0e716d559b EINA: Fix compilation when builddir != srcdir.
SVN revision: 42369
2009-09-09 20:37:23 +00:00
Iván Briano bbce7b5e0d Avoid clashes.
SVN revision: 42368
2009-09-09 15:53:50 +00:00
Iván Briano 555de0f914 Support EINA_INLIST to be anywhere in the struct with _FOREACH macros.
Fix pointer arithmetic with EINA_CONTAINER_GET.
Change Inlist test to have the int first and not assume a direct cast works.


SVN revision: 42366
2009-09-09 14:05:31 +00:00
Vincent Torri 2d3021f128 * add amalgation support in configure output
* remove a warning when eina_amalgamation.c is deleted but does not exist
 * delete eina_amalgamation.c when doing 'make clean'


SVN revision: 42363
2009-09-09 07:42:08 +00:00
Gustavo Sverzut Barbieri d909319998 tests: explain some errors messages are expected and check for safety checks.
Many people try "make check" and then complain they have some error
messages, but they are actually expected... but even for the
experienced is hard to know whenever it was expected or not, so
explicitly say that.

Also check if safety checks are enabled or not before doing "break"
tests, otherwise we'll end with segfaults and tests failing. (I have
not tested with them disabled, but should be okay).



SVN revision: 42360
2009-09-09 01:53:40 +00:00
Gustavo Sverzut Barbieri 93b28743c5 remove warnings from tests.
SVN revision: 42359
2009-09-09 01:41:29 +00:00
Gustavo Sverzut Barbieri 2de7c52bd1 remove easy warnings, 2 still left that I need someone else to check
proper fix.



SVN revision: 42358
2009-09-09 01:27:30 +00:00
Gustavo Sverzut Barbieri 88730b324d let's have more testing: amalgamation on by default, report problems!
SVN revision: 42356
2009-09-09 00:38:26 +00:00
Gustavo Sverzut Barbieri c98bf92366 replace UNLIKELY() with EINA_UNLIKELY()
SVN revision: 42354
2009-09-08 21:42:17 +00:00
dieb 073dd0542c Fix segv reported by Peter Wehrfritz on eina init/shutdown (specifically on
eina_log init/shutdown as it wasn't resetting domains counters properly).


SVN revision: 42334
2009-09-07 23:23:03 +00:00
Gustavo Sverzut Barbieri 9b3e482ad2 --enable-amalgamation
This will concatenate all source files in the hope compiler will do a
better job. On my test with static/built in mempools it saves me 4k, I
guess some intra module calls can be saved.



SVN revision: 42315
2009-09-07 05:54:42 +00:00
Gustavo Sverzut Barbieri b84e3424fe use quotes to include config.h
SVN revision: 42314
2009-09-07 04:32:49 +00:00
Gustavo Sverzut Barbieri bda2733238 fix message
SVN revision: 42313
2009-09-07 04:29:27 +00:00
Gustavo Sverzut Barbieri 8318f4c1f2 allow amalgamation of files, at least symbols don't clash anymore.
more related to amalgamation later.



SVN revision: 42312
2009-09-07 04:23:05 +00:00
Gustavo Sverzut Barbieri a4bd77905d malloc--: error and magic can take statically defined strings so no
need to strdup them.



SVN revision: 42311
2009-09-07 03:32:22 +00:00
Gustavo Sverzut Barbieri 404e3e09fb API BREAK: eina_magic_string_set() does not change existing strings anymore.
It's pointless to be able to change magic number string after it's
created, so let's avoid walking the existing list and just remove
places where strings were being duplicated (list/array both inited
magic strings for accessor/iterators).

Also an optimization, register using an array and sort it before
searching. Sort will just happen when array was changed, and this is
just done when eina_magic_string_get() is called.




SVN revision: 42310
2009-09-07 02:33:54 +00:00
Gustavo Sverzut Barbieri 4baa70798c eina_inlist.h is not required anymore.
SVN revision: 42305
2009-09-06 22:56:34 +00:00
Gustavo Sverzut Barbieri 777e74ce7d eina_error: improvements to make it faster.
Use a simple array instead of inlist, error get is now much faster
using direct index access.



SVN revision: 42304
2009-09-06 22:54:49 +00:00
Gustavo Sverzut Barbieri f98bf21da7 allocate more buckets on init to save couple of reallocs during startup.
SVN revision: 42303
2009-09-06 22:34:38 +00:00
Gustavo Sverzut Barbieri 205e0fe399 fix macro positioning of '\'
SVN revision: 42302
2009-09-06 22:25:36 +00:00
Gustavo Sverzut Barbieri e4af7c100c EINA API BREAK: no more individual modules init/shutdown.
Being able to indivually initialize individual modules was initially
"good", but at end it's putting complexities on users that would try
to "optimize" by doing just what they used, but in the end most people
would get them wrong, users would have to do lots of code and etc. At
the end it does not worth.

Most module init just register handful errors and log domains, so are
cheap. The exception is mempool users, that would dlopen() stuff, but
people that are concerned (embedded) can just compile those statically
in eina.

Since at the end any real application would use most of modules, we
actually end saving lots of function calls that would do nothing other
than increment a global counter.

I also did the init/shutdown use an array, making it easier to
maintain. The inital dependencies were analysed by a script I wrote, I
hope it's all right.

Please fix any breakages you find!



SVN revision: 42300
2009-09-06 22:21:56 +00:00
Vincent Torri 718873e00c shut down safety checks in the log module
Note : currently, because of a circular calls of
eina_log_init() and eina_safety_checks_init(), eina
is not correctly shut down. Imho, eina_log should not
depend on the safety checks module. That would mean
some fprintf in eina_log_domain_new(), eina_log_domain_free(),
eina_log_domain_register()and eina_log_domain_unregister().


SVN revision: 42292
2009-09-06 15:25:35 +00:00
Vincent Torri e780763aa0 shutdown array module
SVN revision: 42287
2009-09-06 08:39:04 +00:00
Gustavo Sverzut Barbieri 5846195caf eina_log: be able to disable function or line.
write down specialized cases for threads or not, function or file,
color or not. Maybe it's not even an optimization since we add yet
another indirection/function call, but each case is simpler.

 * EINA_LOG_FILE_DISABLE=1: disables show of file:line in
   stderr/stdout messages.
 * EINA_LOG_FUNCTION_DISABLE=1: disables show of function() in
   stderr/stdout messages.

one must not use the two options at the same time, if that's the case
code will ignore EINA_LOG_FILE_DISABLE=1 and use just function
disable.



SVN revision: 42272
2009-09-04 23:45:16 +00:00
Gustavo Sverzut Barbieri 86aa8a433b mark log functions as not_instrument_function.
SVN revision: 42270
2009-09-04 21:55:03 +00:00
Gustavo Sverzut Barbieri b5397eea63 eina_log optimization: allow to compile out some debug messages.
Users may opt to set EINA_LOG_LEVEL_MAXIMUM to some integer and macro
will then evaluate to check for that value before actually call
eina_log_print() macro. By using optimizations compilers will
effectivelly compile out the code if it is never reached, thus saving
the check and function call in possible critical paths.



SVN revision: 42269
2009-09-04 21:28:50 +00:00
Vincent Torri 1d7608daaa fix coverage support configuration
SVN revision: 42250
2009-09-04 16:55:51 +00:00
Vincent Torri 5e05323794 include eina_log.h in eina_error.h as some log macro are used in it
SVN revision: 42249
2009-09-04 16:54:38 +00:00
Vincent Torri d56568b7f9 eina_log uses pthreads now (if enabled), so link libeina against pthread
SVN revision: 42248
2009-09-04 16:25:18 +00:00
Gustavo Sverzut Barbieri eef2d35ea6 eina_matrixsparse: loggify, install header, remove warnings and coding style.
* use eina_log
 * install eina_matrixsparse.h
 * remove unused variable
 * fix coding style issue reported by Vincent



SVN revision: 42246
2009-09-04 14:18:05 +00:00
Gustavo Sverzut Barbieri 643958705b eina_matrixsparse: welcome sparse matrix implementation and tests.
Sparse Matrix was implemented and tested by Rafael Antognolli and
myself in order to implement optimized large sparse matrix walk in
some products, one of them WebKit-EFL optimizations.

We have done extensive tests, with good code coverage. Similar to
lists/inlists, we keep pointer to last known element and similar to
iterators we keep reference to last accessed row and cell inside
rows. This allows fast sequential access (for i... for j... m[i,j]),
that is our most common usage case.

Rows are kept in a list, with cells inside that row as another
list. It's not similar to most book implementations where cells keep
reference to their sibling cells in other rows as well, we opted to
not do that to save some pointers and make algorithms simpler, still
do great for our use case.

This code was developed on behalf of our client, that wants to remain
unnamed so far. Thanks client ;-)



SVN revision: 42243
2009-09-04 13:43:44 +00:00
Gustavo Sverzut Barbieri e88b62b295 oops! thanks Vincent.
SVN revision: 42230
2009-09-04 03:52:05 +00:00
Gustavo Sverzut Barbieri 4d5fbb7742 loggify array.
this is the last eina module to be converted to eina_log! :-)


SVN revision: 42228
2009-09-04 02:35:24 +00:00
Gustavo Sverzut Barbieri 5ea9ceeafc eina_module must initialize eina_array as it is used.
SVN revision: 42227
2009-09-04 02:34:48 +00:00
Gustavo Sverzut Barbieri dfee09d6b0 make it easier to spot wrong users of eina_log_print()
SVN revision: 42226
2009-09-04 02:34:10 +00:00
Gustavo Sverzut Barbieri 9f8dfea129 loggify rectangle.
SVN revision: 42225
2009-09-04 02:11:44 +00:00
Gustavo Sverzut Barbieri 04489ec727 loggify stringshare, with extensive debug.
note that one can turn per module debug, for example:

   EINA_LOG_LEVEL=4 EINA_LOG_LEVELS=eina_stringshare:0 ./bla

will enable level 4 (debug) for all modules except eina_stringshare
that is forced to 0 (just critical messages).



SVN revision: 42224
2009-09-04 02:03:46 +00:00