Commit Graph

618 Commits

Author SHA1 Message Date
Marcel Hollerbach 46d464e5bf here comes meson
a new shiny buildtool that currently completes in the total of ~ 4 min..
1 min. conf time
2:30 min. build time
Where autotools takes:
1:50 min. conf time
3:40 min. build time.

meson was taken because it went quite good for enlightenment, and is a traction gaining system that is also used by other mayor projects. Additionally, the DSL that is defined my meson makes the configuration of the builds a lot easier to read.

Further informations can be gathered from the README.meson

Right now, bindings & windows support are missing.

It is highly recommented to use meson 0.48 due to optimizations in meson
that reduced the time the meson call would need.

Co-authored-by: Mike Blumenkrantz <zmike@samsung.com>

Differential Revision: https://phab.enlightenment.org/D7012
Depends on D7011
2018-10-02 17:22:50 +02:00
Mike Blumenkrantz 12f92b4bfb edje_cc: change .mo file write location to be relative to the .edj file
previously this would attempt to write the .mo file to the same directory
that the .po file was found in, which is invalid in cases such as distcheck
where the source directory is not writable

@fix

Differential Revision: https://phab.enlightenment.org/D6636
2018-08-08 14:42:05 +02:00
Mike Blumenkrantz 65b3eb27c2 Revert "edje_cc: temporarily disable aborting compile when namespace validation fails"
Summary:
This reverts commit 0dc492087e.

there are no longer any errors here so this should fail the build any time errors
are introduced

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6525
2018-07-06 11:09:51 -04:00
Mike Blumenkrantz 3309a26a0c edje_cc: disable efreetd connection
edje_cc does not use any of this functionality, and it's problematic
at build time since efreetd is not run in-tree and does not use in-tree
libraries

ref T6713

Differential Revision: https://phab.enlightenment.org/D6514
2018-07-06 15:51:59 +02:00
Mike Blumenkrantz 786210db6f edje_cc: add 'skip_namespace_validation' keyword
this pairs with the newly-added -N option to denote groups in edc files
which should not be checked for correct namespacing

the option is useful for cases such as music_control.edc,
where a group has been shipping for years with API signals like
"btn,clicked" which cannot be changed since they are used in an external
application and compatibility must be maintained

the documentation for this option explicitly states that it must only be used
inside an #ifdef SKIP_NAMESPACE_VALIDATION block, allowing this keyword to
be easily removed at a later point

ref T7072

@feature

Differential Revision: https://phab.enlightenment.org/D6388
2018-07-05 22:59:18 +02:00
Hermet Park 2663dceaf1 Revert "edje: code refactoring for readibility."
This reverts commit 7fb47fc064.

subsequential revert for previous one.

90a89d1ab2b5d23b29ad0f2680b77b5ba7f56b42.
2018-06-21 19:33:41 +09:00
Hermet Park b70c86f1fc Revert "edje: fix a regression error by 7fb47fc064b8f429242b4d5cdf57071475087821."
This reverts commit 475c93fd75.

long time after touch,
forgot that eet data has key-data pairing structure.
this change would break theme compatibility.

Thanks bu5hm4n for pointing out this.
2018-06-21 19:33:41 +09:00
Mike Blumenkrantz 0dc492087e edje_cc: temporarily disable aborting compile when namespace validation fails
Summary:
there are far too many issues here for me to fix them all, the authors of
these failures should be responsible for helping to clean this up

revert this patch once all issues are resolved

ref T6966
Depends on D6042

Reviewers: cedric, Hermet, stephenmhouston, devilhorns

Reviewed By: stephenmhouston

Subscribers: #committers

Tags: #efl

Maniphest Tasks: T6966

Differential Revision: https://phab.enlightenment.org/D6215
2018-06-15 12:27:19 -05:00
Mike Blumenkrantz 5e31eaf4a1 edje_cc: add option for verifying namespace usage
Summary:
when -N is passed, parts and program signals will be checked for
traditional namespacing based on the group name, causing compile failure
if inconsistency is detected

@feature

ref T6911

Reviewers: cedric, devilhorns

Reviewed By: cedric

Subscribers: #committers

Tags: #efl

Maniphest Tasks: T6911

Differential Revision: https://phab.enlightenment.org/D6036
2018-06-15 12:26:44 -05:00
Hermet Park 475c93fd75 edje: fix a regression error by 7fb47fc064.
That shouldn't be touched, just confused by its name.
2018-06-07 19:38:05 +09:00
Hermet Park 7fb47fc064 edje: code refactoring for readibility.
collection.part is too ambigious, since group has parts as well.
Normally we regard it as "name" (of group) instead of part.
2018-06-07 17:53:12 +09:00
Mike Blumenkrantz 334718a006 edje_cc: fixup edje_collections_lookup hash ids during collection pruning
Summary:
unused groups are pruned during this stage of edje_cc, and it becomes
necessary to update the values in this hash in order to maintain the
key:value pairing between the Edje_Part_Collection_Directory_Entry and
its corresponding Edje_Part_Collection so that lookups return consistent
results after pruning has completed

@fix

Reviewers: cedric, Hermet

Reviewed By: Hermet

Subscribers: Hermet, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6041
2018-06-07 17:34:22 +09:00
Marcel Hollerbach 8c14de8541 edje_cc: do not keep the filedescriptor
we have a limited number of filedescriptors available, a theme can
consist out of a number of groups with scripts, keeping the fd for later
use is going above the maximum number of open files, thus use the path
of the file, not the fd to access the file.

fix  T6922

Differential Revision: https://phab.enlightenment.org/D6159
2018-05-14 17:26:28 +02:00
SubhransuSekhar Mohanty fd24998fa6 edje_cc: Fix coverity issue of accessing invalid memory. 2018-05-11 13:49:23 +09:00
WooHyun Jung 1b15c67c63 edje_cc: resolve possible dereferencing freed pointer 2018-05-11 10:44:55 +09:00
Cedric Bail 9c23ffb675 Revert "edje_cc: fix default color_class colors"
This reverts commit d83ebb6980.

Had to revert this as it break backward compatibility with what theme
expect to be the default value. We could reintroduce this with a version
check if necessary.

T6885
2018-05-02 10:46:34 -07:00
Hermet Park 215b854b54 edje edje_cc: fix memory leak.
This token has temporary alloc'd memory.
We should free it before loosing its ptr address.

@fix
2018-04-20 13:12:22 +09:00
Hermet Park 5ea2f94ffb edje: Don't access a garbage pointer.
set null to avoid multiple access.
At 221 line, it tries to free tmp again.
2018-04-20 11:44:43 +09:00
Hermet Park ecc8b479bd edje: fix potential memory leak.
next_token() requires free() for it's returned value and a string attribute.
Here token usage didn't take care of the memory freeing.

@fix
2018-04-09 11:29:41 +09:00
Hermet Park d5c913c60b edje: fix potential memory leak.
next_token() requires free() for it's returned value and a string attribute
Here logic didn't take care of the memory usage.

@fix
2018-04-09 11:14:07 +09:00
Mike Blumenkrantz 3d9dcbd478 edje: add ability to reference images from other edje files
this uses the just-added "id" property to allow referencing images
by name from that theme. example:

=FILE1=
id: "myfile";
images.image: "someimage.png" COMP;

=FILE2=
requires: "myfile";
images.image: "someimage.png" EXTERNAL "myfile";

FILE2 will now load someimage.png from FILE1 at runtime if FILE1 is
currently opened in edje, and FILE1 will be kept open until FILE2 is
closed

@feature
2018-02-28 16:02:38 -05:00
Mike Blumenkrantz 3a86768f3b edje_cc: add "id" toplevel property
this can be used by edje files to identify themselves
2018-02-28 16:02:37 -05:00
Mike Blumenkrantz 30378f26fa edje: reformat bin/ c files
a lot of this was unreadable due to mixed tabs/spaces or just random
formatting
2018-02-28 16:02:37 -05:00
Mike Blumenkrantz 645c573efb edje: EDJE_IMAGE_SOURCE_TYPE_EXTERNAL -> EDJE_IMAGE_SOURCE_TYPE_USER
no functional changes, just a confusing define rename
2018-02-28 16:02:37 -05:00
Vincent Torri d7170beb76 Windows: remove symlink() usage in edje_decc and evil binaries 2018-01-30 16:52:24 +09:00
Mike Blumenkrantz 18e392b502 edje_cc: check HAVE_SYS_RESOURCE_H presence for rlimit usage
fix T6645
2018-01-27 11:56:31 -05:00
Mike Blumenkrantz 1876151597 edje_cc: simplify thread tracking for exiting on signal 2018-01-26 14:21:02 -05:00
Mike Blumenkrantz 789c2892a3 edje_cc: make -thread option
this option was broken due to immediately triggering EMFILE errors
during thread initialization and then attempting to exit while threads
were still ongoing

some work is still needed to make this an improvement over the current
default of not using threads

@fix
2018-01-26 14:10:31 -05:00
Andy Williams d234458dfc Fix and simpligy windows behaviour.
Author: Vincent Torri
2017-12-31 16:08:31 +00:00
Ross Vandegrift 71e5c74eb6 efl: drop deprecated Encoding key from desktop files
Summary:
The Encoding key is no longer required, all desktop files are assumed to
be UTF-8 encoded.  See details at:
https://standards.freedesktop.org/desktop-entry-spec/1.1/apc.html

Fix various typos and misspellings

lintian, Debian's package checker, uses strings to check for common typos
in compiled binaries.  This change fixes the ones it identified in 1.20.6.

Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5584

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2017-12-13 10:27:48 -08:00
Jeeyong Um eeb2809d9e edje_cc: Not reset inherit_script during group inherit
If group inherits after setting "inherit_script: 1;", inherit_script
is overwritten by the value of parent group. However, inherit_script
indicates user wants to inherit script in this context, it should not
be initialized as false.
2017-11-21 23:51:21 +09:00
Jeeyong Um cf24e714ea edje_cc: Fix successive script inheritance 2017-11-21 23:48:28 +09:00
Vyacheslav Reutskiy d498065cb4 edje: add event for inform about circular dependency
This commit add the event "circular,dependency" for edje object. Given
event is called when edje found the circular dependency between parts
in object. This event will be usefull and informative paired with
Edje_Edit API.
2017-11-13 10:57:19 +02:00
Jeeyong Um 7c0f1fdd34 edje_cc: Extract function to build stack ending with wildcard 2017-11-10 12:59:55 +09:00
Jeeyong Um 7811b0e5b7 edje_pick: Fix segfault due to wrong memory free 2017-11-07 00:50:38 +09:00
Sungtaek Hong 70b23b5fc7 edje_cc_script: remove build warning
Summary: initiate pointer var with NULL to remove build warning

Reviewers: conr2d

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5423
2017-11-04 14:41:44 +09:00
Derek Foreman 376be13f46 edje_recc: don't use negative exit code in a /bin/sh script
Apparently this isn't well supported by dash, which will print an
error and return a 2, where zsh and bash will return 255.

Explicitly returning 255 seems least surprising.

see https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=772322

 #IHaveNoIdeaWhatThisScriptDoes
2017-11-03 15:46:11 -05:00
Jean-Philippe Andre daa1547586 edje_cc: Fix shadow warning (global scope) 2017-11-01 11:22:33 +09:00
Andrii Kroitor 130052f275 edje_cc: move offset_scale to correct place and fix doc 2017-10-31 10:34:28 +02:00
Andrii Kroitor b836576d2a edje_cc: fix item.max parsing
It is now possible to set item.max back to default value (-1 -1).

@fix
2017-10-30 16:44:32 +02:00
Andrii Kroitor d582b87ba3 edje_cc: make box/table item.spread minimum 1 1
Minimum value was 0 0, but it has same effect as 1 1.
2017-10-30 16:44:32 +02:00
Andrii Kroitor 2b70897e0f edje_cc: fix program.filter description
@fix
2017-10-30 16:44:32 +02:00
Andrii Kroitor b0761cdfa1 edje_cc: fix text.align description
@fix
2017-10-30 16:44:32 +02:00
Andrii Kroitor 939d16bdbf edje_cc: limit map.zoom to non-negative values
@fix
2017-10-30 16:44:31 +02:00
Andrii Kroitor a7769e806a edje_cc: move box and table properties documentation
Documentation comments for properties should be near parser
implementation.

@fix
2017-10-30 16:44:31 +02:00
Andrii Kroitor 8a23f30291 edje_cc: make color parsing consistent
All colors now accept 4 ints or hex string.

@fix
2017-10-30 16:44:31 +02:00
Andrii Kroitor e379397093 edje_cc: make bool parsing consistent
@fix
2017-10-30 16:44:31 +02:00
Andrii Kroitor c8edb208dd edje_cc: fix spelling
@fix
2017-10-30 16:44:31 +02:00
Andrii Kroitor d83ebb6980 edje_cc: fix default color_class colors
If you have undefined color_class, edje will use solid white for its
colors. If you define color_class name without colors edje_cc now has
same defaults instead of 0 0 0 0.

@fix
2017-10-30 16:44:30 +02:00
Andrii Kroitor 6888645598 edje_cc: move part_remove and program_remove to group
These properties belong to group, but were in part's block in edcref.

@fix
2017-10-30 16:44:30 +02:00