pkg-config names can be encoded with a version requirement, such as
zlib>=1.2.3, thus we need to remove that from the variable.
with autotools we used HAVE_XXX and ENABLED_XXX to instruct such
optional library was present, then define that just for the user
target by adding that to its CFLAGS.
This allows us to remove some defines that matches the name, only
leave those that translate from original pkg-config name, such as
libsystemd->systemd.
- fix doc and state SOURCES shouldn't get any EO_FILES, these should
go to the specific PUBLIC_EO_FILES or EO_FILES.
- generate eolian files in relative directories, required by
efl/interfaces
- .eot files fail if you give -o c:..., they need an explicit "-gh"
followed by "-o i:..."
- .legacy.h are generated automatically, but needs an extra pass (q66
was informed about it)
- if EOLIAN_BIN=on, then use in-tree binary, depending on such target
only if it's the case. This allow cross-compiling and also bypass
regenerate all .eo files if eina/eolian changed (as requested by
Raster), simply reconfigure with EOLIAN_BIN=path, which can be
EOLIAN_BIN=bin/eolian_gen if you wish ;-)
- use COMMENT keyword to change the eolian summary (output)
This is now used by ENABLE_SYSTEMD and ENABLE_VALGRIND, which moves to
"common.cmake" since they are shared among multiple libraries.
With that I found that LINK_FLAGS is indeed a string, not a CMake List
(space separated, not ";"), then fix that so compilation actually works.
Since the macros were moved to EflMacros.cmake, there is no reason to
keep CommonHeaderChecks.cmake anymore, put them all in
config/common.cmake
Keep the checks sorted so they're easy to organize.
Add missing check for prctl() and iconv() (which we were checking
iconv.h, but the code used '#if HAVE_ICONV').
If the window opaque/input regions already match what is being
requested (to be set), then no need for the compositor to create
regions and set them.
@optimize
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
This patch is avoid extra 'change' signals from edje_entry to
elm_entry.
Basically the entry fields does not react to keys pressed with
modificator 'Ctrl'. I was test on Windows 7, MacOS 10.12 and Unity
(GTK+) and they all have similar behavior - keys with 'Ctrl' are
ignored. So this patch make expected beharior for elm_entry
(edje_entry).
Coverity reports that we leak 'msg' here if we fail to append
arguments to the message.
Fixes CID1367499
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Coverity reports a resource leak here as we were not freeing
'sanitized_path' inside the if statement.
Fixes CID1367502
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Coverity reports a resource leak here if we successfully load the evas
module as we were never freeing the eina_module here. Previously we
would just return the evas module without proper cleanup of the
eina_module. This patch fixes the leak by calling eina_module_free if
we successfully load the evas module.
Fixes CID1367503
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
several theme elements uses transitioning border scale by for
animation and this has been broken for quite some time now. the theme
sall looked wrong for ages. i just never junted down exactly why, but
i know... i wrote the themes that made use of scale by animation
interpolating from like 0.1 to 1 and so on to make for example a
shadow go from sharp to blurry... the theme hasnt changed. edje did.
it broke.
this fixes it back to where it was. interpolation now works. i left a
comment so no one tries to "fix it".
@fix
so proxies just rendered nothing when used in terminology. they used
to work for the tab switcher (ctl+shift+home). this now works again.
there is a good chance this may break something else though... what i
can't seem to find...
this fixes T5131
the pan object width can be different with object width,
because of padding and bar area, so we should using pan's width
instead of object width for mirrored calculation.
in elementary_test gengrid sample, you can see, when mirrored on,
the alignment is broken before merge this patch.
Signed-off-by: SangHyeon Lee <sh10233.lee@samsung.com>
make FUNC_CHECK(), TYPE_CHECK() and HEADER_CHECK() more general and
they can be set to a scope, like "eina", then all symbols are prefixed
with that. The scope is created with CHECK_INIT(), and
EFL_HEADER_CHECKS_FINALIZE() will finish that.
This makes it possible for cmake/config/eina.cmake +
cmake/post/eina.cmake to add stuff to the generated file, better than
hand edit the template.
CHECK_APPEND_DEFINE(name val) is now the base to add symbols to the
generated file in the current scope.
Then convert cmake/config/eina.cmake to use that and match the
autotools values (were a bit off).
This exposed enabling valgrind was broken due incorrect pkg-config
usage with cmake (it's not obvious), it was using just the libraries,
while LDFLAGS are needed to get -L/usr/lib/valgrind. Then also convert
to CFLAGS provided by pkg-config and make that automatic for
PKG_CONFIG_REQUIRES and PKG_CONFIG_REQUIRES_PRIVATE.
Also, eina-mempool modules use valgrind and must use that now that's
propagating correctly.
added 2 cmake target properties to collect private and public eo
files, then that is used by EFL_CREATE_EO_RULES() instead of filtering
SOURCES and also EFL_PKG_CONFIG_LIB_WRITE() to know if eolian entries
should be generated.
we can't check the options in config/eina.cmake as they were not
created at that point, instead we must have a "post" file that is
included after everything else is processed, options/targets all
exist and can be modified.
Generate to a temporary location and avoid touching the original file
if it's unchanged. This way we play nicer with build system that
regenerate objects based on file timestamps.