Summary:
Fixes src-on-NFS builds on FreeBSD, especially when the current shell is
not bash.
Test Plan:
Before:
SHADERS modules/evas/engines/gl_common/shader/evas_gl_shaders.x
gmake[4]: modules/evas/engines/gl_common/shader/gen_shaders.sh: Command not found
Makefile:34122: recipe for target 'modules/evas/engines/gl_common/shader/evas_gl_shaders.x' failed
gmake[4]: *** [modules/evas/engines/gl_common/shader/evas_gl_shaders.x] Error 127
Even manually adjusting path doesn't fix it (and the file is clearly `+x`):
$ ls -l src/modules/evas/engines/gl_common/shader/gen_shaders.sh
-rwxrwxrwx 1 1000 1000 1848 Apr 8 17:01 src/modules/evas/engines/gl_common/shader/gen_shaders.sh
$ export PATH="$PATH:$(pwd)/src"
$ modules/evas/engines/gl_common/shader/gen_shaders.sh
zsh: no such file or directory: modules/evas/engines/gl_common/shader/gen_shaders.sh
After patch:
SHADERS modules/evas/engines/gl_common/shader/evas_gl_shaders.x
CC modules/evas/engines/software_x11/modules_evas_engines_software_x11_module_la-evas_x_egl.lo
CC modules/evas/engines/software_x11/modules_evas_engines_software_x11_module_la-evas_xlib_swapbuf.lo
...
Projects: #efl
Differential Revision: https://phab.enlightenment.org/D2314
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary: The Evas Drm engine makes use of Ecore_Drm functions now so
we no longer need private versions of the same code
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Summary: This file is not needed for the software drm engine. This was
added (initially) for combining the drm software & hardware engines
into one. As that is not the case, this file is unused.
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Remove all individual shaders, factorize everything into
one vertex and one fragment shader. All previous functionality
has been kept as is[*]. Some new features have been added
(new shader types).
This is a first step in simplifying and improving the shaders system.
Next: simplify shader selection
[*] Yeah, that's quite a bold statement here. Maybe I broke everything.
Summary: This patch set fixes the issue of Evas wayland shm engine
causing crashes when resizing efl apps in the E wayland compositor. It
refactors the evas engine to wait for release events on buffers, and
hooks into frame callbacks so that release events will get triggered
at the appropriate time.
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Summary: This adds support for native surfaces in xcb. Previously when
the TBM Native Surface support was added, it broke the xcb build.
These commits fix that issue.
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
With this commit I'm finally able to use -j10 for make install on my machine.
During install libtool does some relinking which can result in to broken linking
if the dependencies are not handled correctly. Sadly automake has a problem with
the automatic dependency handling during install with LTLIBRARIES which we use
for all our modules. For the details please see this 4.5 years old bug report:
http://debbugs.gnu.org/cgi/bugreport.cgi?bug=7328
We are now setting the dependency manually to force automake to the right decision
during install relinking.
Speed improvement itself is not that high (make -j 1 compared to -j10):
real 0m21.410s vs. real 0m17.066s
The bigger benefit is the unified use of MAKEOPTS or normal -j X in all our
build targets. I have seen quite some bug reports where -j was used for install
target when it was used in the build target. Last but not least it helps me to
unify some parts of the jenkins jobs and finally allows me to run distcheck
with -j Which uses install internally and failed before. Which goes down from
real 12m50.349s to real 5m52.120s.
Summary:
The new files for the shaders and he header file where not part of
EXTRA_DIST, so they where not found when running make distcheck.
Test Plan: just run make distcheck
Reviewers: cedric, q66
Reviewed By: q66
Subscribers: cedric, herdsman
Differential Revision: https://phab.enlightenment.org/D1998
Summary:
Add class and type Evas_3D_Callback like wrapper under smart object
Incapsulate Evas_3D_Callback in Evas_3D_Object
Add virtual function register and unregister in Evas_3D_Object
Add function evas_3d_callback_call
Add callbacks clicked and collision for Evas_3D_Node
@feature
Reviewers: raster, Hermet, cedric
Reviewed By: cedric
Subscribers: artem.popov, cedric
Differential Revision: https://phab.enlightenment.org/D1914
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
This native surface type is based on the tbm surface used for the tizen platform.
For the software_x11 backend, image data is retrieved from tbm surface
and color format converted appropriately.
This will only work when libtbm.so is present in the system.
@feature
Test Plan: Local tests
Reviewers: raster, cedric, jpeg, Hermet
Subscribers: wonsik, cedric
Signed-off-by: Jean-Philippe Andre <jp.andre@samsung.com>
Summary:
implement native surface set for EVAS_NATIVE_SURFACE_X11 type
on software_x11 backend.
@feature
Test Plan: local tests on PC
Reviewers: jpeg, cedric, raster, Hermet
Subscribers: wonsik, cedric
Signed-off-by: Jean-Philippe Andre <jp.andre@samsung.com>
Summary:
This native surface type is based on the tbm surface used for the tizen platform.
EGL_TIZEN_image_native_surface EGL extension is used to map
tbm surface to an egl image
@feature
Reviewers: raster, cedric, jpeg
Subscribers: cedric, wonsik
Signed-off-by: Jean-Philippe Andre <jp.andre@samsung.com>
Here are only 3 very basic test cases.
One is a dumb set/get to check that image objects can
be passed as clippers.
The other one is a pixel verification test with extremely
basic data (NEAREST scaling and just rectangles). It also
compares text clipping and masking.
The last one performs a very basic verification that masks
of masks work.
This reverts commit df3958bb89.
This is getting reverted because it broke building of Enlightenment. E
requires the Evas_Engine_Buffer header file for drawing mouse cursor
using the buffer engine.
Those really are internals shared between ecore and evas.
Considering ecore & evas are just part of EFL, and expedite
now doesn't even rely on these headers anymore, we can safely
remove them from the dist packages.
This will allow us to break this seemingly internal API/ABI.
Summary:
Until now, it was necessary to set global LDFLAGS and CFLAGS to allow
compiling (and linking) engines using OpenGL.
gl_generic used to complained about missing headers or unkown libraries.
A problem on OSX is that there is CGL (Apple's Core OpenGL) on which the whole system
relies on and GLX, when X11 is installed; and they cohabit together.
When gl_cocoa is enabled, gl_generic is now linked against CGL.
When it is not, gl_generic is compiled with and linked against GLX as a fallback.
@fix
Test Plan:
With --enable-cocoa: software_x11, opengl_x11 and opengl_cocoa are working as expected.
With --disable-cocoa: software_x11 and opengl_x11 are also working as expected.
No compiling nor linking problems have been issued.
Reviewers: cedric, raster, raoulh
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D1723
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
.ply format is important for relation blender and EFl, because in blender exist only two mesh export API: bpy.ops.import_mesh.ply and bpy.ops.import_mesh.stl. One of them is necessary for .edc 3D generator. Which I writing now.
Sorry, it isn't like image loader. Refactoring of import/export will be soon.
Reviewers: Oleksander, artem.popov, Hermet, raster, cedric
Reviewed By: cedric
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D1544
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Some shader files (shd) were not included in EXTRA_DIST. This didn't break
the build because the .x file was correctly generated.
I guess the missing files in previous releases also had no impact because
the .h files would be generated and shipped.
Also generate the enum automagically. New shaders need to be added
to Makefile_Evas.am.
Like the evas drm engine the evas gl_drm engine now depends on eeze for
backlight. Make sure it is setup to find eeze like the drm engine already
does.