TCP_CORK is Linux only. TCP_NOPUSH is supposed to
do the same thing than TCP_CORK, but on BSD (including
Mac OS X).
We now check for the existance of TCP_CORK or TCP_NOPUSH,
and use the right option. If none exist, cork_{set,get}
will just fail.
Efl.Net.Server defines how to accept new connections, doing the
bind(), listen() and accept() for protocols such as TCP.
Efl.Net.Dialer defines to to reach a server.
Both are based on Efl.Net.Socket as communication interface that is
based on Efl.Io.Reader, Efl.Io.Writer and Efl.Io.Closer, thus being
usable with code such as Efl.Io.Copier.
The Server will emit an event "client,add" with the established
Socket, which is a child and can be closed by both the server or the
user.
The Dialer extends the Socket and allows for creating one given an
address, that will be resolved and connected.
TCP is the initial implementation so we an validate the
interfaces. UDP, Unix-Local and SSL will come later as derivate
classes.
The examples are documented and should cover the basic principles:
- efl_io_copier_example can accept "tcp://IP:PORT" and will work as a
"netcat", can send data from socket, file or stdin to a socket,
file, stdout or stderr.
- efl_net_server_example listens for connections and can either reply
"Hello World!" and take some data or work as an echo-server,
looping back all received data to the user.
More complex interactions that require a "chat" between client and
server will be covered with new classes later, such as a queue that
empties itself once data is read.
So, first, the wrong strerror_r() was detected on
Mac OS X. Instead of using a complex set of macros
to try to detect which strerror_r() to use, when
it is defined, let the autotools handle that clerverness
for us.
We found a some build break problem due to a build system.
In efl configuration, our efl configure enables neon if it's available,
but neon gonna partially turned off on evas compilation if the build system
has a non neon CFLAG option (ie, mfpu=vfpv..). In the end, neon is partially enabled
and it turns out a build break.
It's non-sense but we can't allow this breakage.
There is no way to ignore build system option nor override our neon option perfectly,
so, Let efl package ruled by build system overall.
as per bug. requiring by DEFAULT 2 video back ends is rather
rediculous. pick one and the others are optional. you could argue xine
now is barely worth it, but it's stable and works and has proven to be
not any real pain.
gst1 is a more optimal and far more complete/featured backend that the
vlc generic one anyway. vlc generic has the bonus of out-of-process,
but gst1 is pretty stable (unlike the 0.1 backend), so let's not make
peolpe install 2 video backends (or possibly 3 or more) just to build
efl out of the box.
this fixes T4284
this saves about another 80Kb or so in dirty pages by only loading
ephysics when needed. This removed ephysics and bullet library dirty
pages from the process space. this is another patch to address T4227.
@fix
so libpuls and libsndfile suck in dependencies. they suck in so much
that by the time linking is done we've written to about 230kb of
PRIVATE MEMORY as dirty pages in symbol tablesm global veriables etc.
etc. - this is just horrible. especially if an app never makes any
sound... it's just wasted memory. this stuff is invisible to normal
memory debug tools. so this begins to address things. please see
T4227. my numbers now put me at:
1780Kb total dirty writable mapped from library file pages. down from
2012Kb.
This fixes some memory bloat reported in the above ticket, but there
is more to fix for sure.
@fix
Most of these functions actually shouldn't be used by
standard applications. Some are hidden behind @protected.
flush_all() and reload() have not been implemented, on
purpose (save() should flush, and reload is automatic).
Summary: This fixes compilation on Windows: timeout.c is using SIGALRM which is unavailable on Windows
Test Plan: compilation
Reviewers: cedric, jpeg, stefan_schmidt
Differential Revision: https://phab.enlightenment.org/D4058
On Solaris, this header is necessary for finite(). Instead of including it
if the sun compiler is used, include it if it exists. This fixes a warning
if gcc is used on Solaris
Summary: This ports the loader to the stable cpp api.
Test Plan: Please test this patch and tell me if there are differences
Reviewers: DaveMDS
Subscribers: jayji
Differential Revision: https://phab.enlightenment.org/D4039
This is heavily inspired from Eo_Id infrastructure. Main change
are that the lower bit are always guaranteed to be zero and ignored
by all function. Also it may be a little bit less efficient in some
case, but we will tune it once we have real life usage of it.
Eo won't be migrated for 1.18 to it as Eo_Id is deeply integrated
and it is quite risky to touch it so close from a freeze. This can
wait.
Now configure should abort in case poppler is not found (unless explicitly disabled)
I'm still not sure about the hard "poppler < 0.40" requirement
added by jpeg yesterday, we should fix the issue instead of
tell "we don't support it"
This disables PDF load if poppler >= 0.40 (current is 0.42 on
my machine). Those image loaders definitely should be explicitely
enabled or disabled, not enabled based on the system.
Apparently, libudev is not thread-safe which means we cannot use Eeze
for getting the udev but rather need to actually use libudev, so those
revert needs to be reverted.
This reverts commit 354bc66d0d.
A better fix to not use libudev functions has been pushed previously,
so there is no need to add an extra dependency on libudev as we use
Eeze already.
This reverts commit 9d429a7c1f.
lib/elementary/.libs/lib_elementary_libelementary_la-elm_cnp.o: In function `wl_data_offer_accept':
/usr/include/wayland-client-protocol.h:893: undefined reference to `wl_proxy_marshal'
/usr/include/wayland-client-protocol.h:893: undefined reference to `wl_proxy_marshal'
collect2: error: ld returned 1 exit status
Based on a patch by aerodynamik. Thanks!
Fixes T3398
Elput is using udev directly so we need to amke sure we link against it.
lib/elput/.libs/lib_elput_libelput_la-elput_input.o: In function `_elput_input_init_thread':
/<<PKGBUILDDIR>>/src/lib/elput/elput_input.c:317: undefined reference to `udev_new'
/<<PKGBUILDDIR>>/src/lib/elput/elput_input.c:326: undefined reference to `udev_unref'
Patch by aerodynamik. Thanks!
Fixes T3712
so the theme build can order ok/cancel based on preference for an os,
so make configure have an option for this and build the theme
specifically based on that option. enable the option if you want mac
style cancel, ok or default ok, cancel as is common elsewhere.
--enable-cancel-ok
is the option
@feature