Carsten Haitzler (The Rasterman)
2017-07-18 00:11:37 UTC
On Mon, 17 Jul 2017 05:14:35 -0700 Mike Blumenkrantz
<***@gmail.com> said:
what is the actual value of doing this? you go from a 1 line include to many
lines that can easily break (as already happened a few days back). change
e_config_data.h content to depend on something e.h defines and this breaks
again.
why do this? it's a lot more copy & pasting for sure adding the #define
E_TYPEDEFS and #undef for it - include .h twice for defining types vs the
rest...
what is the value of this? i do see downsides. the only upside i see is
"slightly faster build time". enlightenment_imc is not like it's a binary that
runs often or all the time. it's just a tool like eet or edje_cc etc.
<***@gmail.com> said:
what is the actual value of doing this? you go from a 1 line include to many
lines that can easily break (as already happened a few days back). change
e_config_data.h content to depend on something e.h defines and this breaks
again.
why do this? it's a lot more copy & pasting for sure adding the #define
E_TYPEDEFS and #undef for it - include .h twice for defining types vs the
rest...
what is the value of this? i do see downsides. the only upside i see is
"slightly faster build time". enlightenment_imc is not like it's a binary that
runs often or all the time. it's just a tool like eet or edje_cc etc.
discomfitor pushed a commit to branch master.
http://git.enlightenment.org/core/enlightenment.git/commit/?id=f8de1a3f887f9693a0ff680de62971e0bcfcc0e3
commit f8de1a3f887f9693a0ff680de62971e0bcfcc0e3
Date: Mon Jul 17 08:14:28 2017 -0400
reduce include deps for enlightenment_imc binary
---
src/bin/e_config_data.c | 8 +++++++-
src/bin/e_imc_main.c | 14 ++++++++++++--
src/bin/e_intl_data.c | 17 +++++++++++++++--
3 files changed, 34 insertions(+), 5 deletions(-)
diff --git a/src/bin/e_config_data.c b/src/bin/e_config_data.c
index 8dd90339f..18b13689e 100644
--- a/src/bin/e_config_data.c
+++ b/src/bin/e_config_data.c
@@ -1,4 +1,10 @@
-#include "e.h"
+#include <Eina.h>
+#include <Eet.h>
+#include "e_macros.h"
+#define E_TYPEDEFS
+#include "e_config_data.h"
+#undef E_TYPEDEFS
+#include "e_config_data.h"
static Eina_Hash *config_hash = NULL;
diff --git a/src/bin/e_imc_main.c b/src/bin/e_imc_main.c
index 8c5adc296..cef9253ad 100644
--- a/src/bin/e_imc_main.c
+++ b/src/bin/e_imc_main.c
@@ -1,4 +1,14 @@
-#include "e.h"
+#include <Eina.h>
+#include <Eet.h>
+#include <Ecore_File.h>
+#include "e_macros.h"
+#define E_TYPEDEFS
+#include "e_config_data.h"
+#include "e_intl_data.h"
+#undef E_TYPEDEFS
+#include "e_config_data.h"
+#include "e_intl_data.h"
+
static void _e_help(void);
@@ -181,7 +191,7 @@ main(int argc, char **argv)
}
e_intl_input_method_config_free(read_imc);
- E_FREE(write_imc);
+ free(write_imc);
eet_close(ef);
e_intl_data_shutdown();
eet_shutdown();
diff --git a/src/bin/e_intl_data.c b/src/bin/e_intl_data.c
index bd02c8110..5580a3e22 100644
--- a/src/bin/e_intl_data.c
+++ b/src/bin/e_intl_data.c
@@ -1,4 +1,17 @@
-#include "e.h"
+#include <Eina.h>
+#include <Eet.h>
+#define E_TYPEDEFS
+#include "e_config_data.h"
+#include "e_intl_data.h"
+#undef E_TYPEDEFS
+#ifndef E_API
+# define E_API
+#endif
+#ifndef EINTERN
+# define EINTERN
+#endif
+#include "e_config_data.h"
+#include "e_intl_data.h"
/* This file is the counterpart for data storage of e_intl */
/* This only needs to be separate because the e_imc binary and other third
(E_Input_Method_Config *imc) if (imc->ecore_imf_module) eina_stringshare_del
(imc->ecore_imf_module); if (imc->e_im_exec) eina_stringshare_del
(imc->e_im_exec); if (imc->e_im_setup_exec) eina_stringshare_del
(imc->e_im_setup_exec);
- E_FREE(imc);
+ free(imc);
}
}
--
http://git.enlightenment.org/core/enlightenment.git/commit/?id=f8de1a3f887f9693a0ff680de62971e0bcfcc0e3
commit f8de1a3f887f9693a0ff680de62971e0bcfcc0e3
Date: Mon Jul 17 08:14:28 2017 -0400
reduce include deps for enlightenment_imc binary
---
src/bin/e_config_data.c | 8 +++++++-
src/bin/e_imc_main.c | 14 ++++++++++++--
src/bin/e_intl_data.c | 17 +++++++++++++++--
3 files changed, 34 insertions(+), 5 deletions(-)
diff --git a/src/bin/e_config_data.c b/src/bin/e_config_data.c
index 8dd90339f..18b13689e 100644
--- a/src/bin/e_config_data.c
+++ b/src/bin/e_config_data.c
@@ -1,4 +1,10 @@
-#include "e.h"
+#include <Eina.h>
+#include <Eet.h>
+#include "e_macros.h"
+#define E_TYPEDEFS
+#include "e_config_data.h"
+#undef E_TYPEDEFS
+#include "e_config_data.h"
static Eina_Hash *config_hash = NULL;
diff --git a/src/bin/e_imc_main.c b/src/bin/e_imc_main.c
index 8c5adc296..cef9253ad 100644
--- a/src/bin/e_imc_main.c
+++ b/src/bin/e_imc_main.c
@@ -1,4 +1,14 @@
-#include "e.h"
+#include <Eina.h>
+#include <Eet.h>
+#include <Ecore_File.h>
+#include "e_macros.h"
+#define E_TYPEDEFS
+#include "e_config_data.h"
+#include "e_intl_data.h"
+#undef E_TYPEDEFS
+#include "e_config_data.h"
+#include "e_intl_data.h"
+
static void _e_help(void);
@@ -181,7 +191,7 @@ main(int argc, char **argv)
}
e_intl_input_method_config_free(read_imc);
- E_FREE(write_imc);
+ free(write_imc);
eet_close(ef);
e_intl_data_shutdown();
eet_shutdown();
diff --git a/src/bin/e_intl_data.c b/src/bin/e_intl_data.c
index bd02c8110..5580a3e22 100644
--- a/src/bin/e_intl_data.c
+++ b/src/bin/e_intl_data.c
@@ -1,4 +1,17 @@
-#include "e.h"
+#include <Eina.h>
+#include <Eet.h>
+#define E_TYPEDEFS
+#include "e_config_data.h"
+#include "e_intl_data.h"
+#undef E_TYPEDEFS
+#ifndef E_API
+# define E_API
+#endif
+#ifndef EINTERN
+# define EINTERN
+#endif
+#include "e_config_data.h"
+#include "e_intl_data.h"
/* This file is the counterpart for data storage of e_intl */
/* This only needs to be separate because the e_imc binary and other third
(E_Input_Method_Config *imc) if (imc->ecore_imf_module) eina_stringshare_del
(imc->ecore_imf_module); if (imc->e_im_exec) eina_stringshare_del
(imc->e_im_exec); if (imc->e_im_setup_exec) eina_stringshare_del
(imc->e_im_setup_exec);
- E_FREE(imc);
+ free(imc);
}
}
--
--
------------- Codito, ergo sum - "I code, therefore I am" --------------
The Rasterman (Carsten Haitzler) ***@rasterman.com
------------- Codito, ergo sum - "I code, therefore I am" --------------
The Rasterman (Carsten Haitzler) ***@rasterman.com