This is an automated email from the git hooks/post-receive script.
git pushed a commit to branch race
in repository efl.
View the commit online.
commit 5c7182a6f056ffd5230361c09681acca5fcdada3
Author: Bernhard M. Wiedemann <[email protected]>
AuthorDate: Sat Jul 18 11:03:38 2026 +0200
Make edje_cc script compilation order deterministic
See https://reproducible-builds.org/ for why this is good.
Threaded script compilation completes out of order, making .edj output
non-deterministic.
Serializing to 1 in-flight command fixes this at a small build-time
cost, so it is only done for reproducible builds
when SOURCE_DATE_EPOCH is set.
See https://reproducible-builds.org/specs/source-date-epoch/
for the definition of this variable.
Fixes #41
This patch was done while working on reproducible builds for openSUSE.
---
src/bin/edje/edje_cc_out.c | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/src/bin/edje/edje_cc_out.c b/src/bin/edje/edje_cc_out.c
index 08fbf2d517..e87a605e5d 100644
--- a/src/bin/edje/edje_cc_out.c
+++ b/src/bin/edje/edje_cc_out.c
@@ -2245,7 +2245,7 @@ typedef struct
Script_Write *sc;
} Pending_Script_Write;
-#define PENDING_COMMANDS_MAX 8
+static int pending_commands_max = 8;
static int pending_write_commands = 0;
static Eina_List *pending_script_writes = NULL;
@@ -2274,7 +2274,7 @@ data_scripts_exe_del_cb(void *data EINA_UNUSED, int evtype EINA_UNUSED, void *ev
if (!ev->exe) return ECORE_CALLBACK_RENEW;
if (ecore_exe_data_get(ev->exe) != sc) return ECORE_CALLBACK_RENEW;
pending_write_commands--;
- if (pending_write_commands < PENDING_COMMANDS_MAX)
+ if (pending_write_commands < pending_commands_max)
{
if (pending_script_writes)
{
@@ -2308,7 +2308,7 @@ data_scripts_exe_del_cb(void *data EINA_UNUSED, int evtype EINA_UNUSED, void *ev
static void
data_write_script_queue(Script_Write *sc, const char *exeline)
{
- if (pending_write_commands >= PENDING_COMMANDS_MAX)
+ if (pending_write_commands >= pending_commands_max)
{
Pending_Script_Write *pend = malloc(sizeof(Pending_Script_Write));
if (pend)
@@ -2348,6 +2348,8 @@ data_write_scripts(Eet_File *ef)
char inc_path[PATH_MAX] = "";
int i;
+ if (getenv("SOURCE_DATE_EPOCH")) pending_commands_max = 1;
+
#ifdef _WIN32
# define BIN_EXT ".exe"
#else
--
To stop receiving notification emails like this one, please contact
the administrator of this repository.