Summary:
OSX only support named semaphores. Eina_Semaphore was actually broken on OSX.
Since OSX 10.10 sem_init() and sem_destroy() (were not implemented) are also marked as
"deprecated", which adds huge pollution to the output when compiling.
Reviewers: cedric, raster, stefan_schmidt
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D1576
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary: Support of Spinlocks in Eina (Eina_Spinlock) for OSX, which does not implement them in pthread.
@feature
Reviewers: raster, raoulh, naguirre, cedric, stefan_schmidt
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D1151
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
So current order is :
- __builtin_bswap*() for compiler that provide it
- _byteswap_*() for MSVC
- bswap_*() for older Linux and some BSD
- own C code when everything else fall appart.
The reason for this order is that the builtin will always generate
the best assembly possible. On my system bswap_*() are not changing
in all version to the best solution as they are almost equivalent to
the C macro.
it's still not merged into EFL single tree, but once it is we should
use "HAVE_EXOTIC" define to work with it.
Before we had: EINA_HAVE_EXOTIC (not used), HAVE_EXOTIC_H (used by
eina_module.c). Since the other libs are all defined as HAVE_LIBNAME,
we're using HAVE_EXOTIC everywhere now.
SVN revision: 77816