summaryrefslogtreecommitdiff
path: root/configure.ac
diff options
context:
space:
mode:
authorCedric BAIL <cedric.bail@samsung.com>2015-03-17 08:49:57 +0100
committerCedric BAIL <cedric@osg.samsung.com>2015-03-17 09:58:17 +0100
commit0b04186a7fd530bc36dccfd27930a18506313ee4 (patch)
tree302dd8d493f7a1b97bdae48b934ded99894c6997 /configure.ac
parent0f13052b6ae3e65c7a9fd99bbdb11d240147adbb (diff)
emile: initial introduction of Emile.
The intent of Emile is to be the common layer for serialisation, compression and ciphering. It will expose the library we currently use internally to an easier use from the outside (like gcrypt and lz4). It should improve portability. Instead of pushing JSON, XML and what's not to Eina, I do think that they will fit better in Emile. As for the naming of Emile, you will need to be French and say : "Un quoi ?" "Un serializer !" Regarding why it is put there in the stack. Right now there is two users of compression (eet and terminology), two users of cipher library (eet and ecore_con) and a few handful of user for serialization (eina, eet, efreet, ecore_con, ...). So the choice was quite simple, it needed to be below Eet. Now it could have been on top of Eo or integrated into Eina. One of the use case I am thinking of, is to compress Eo object when a canvas get hidden/minized. For that it require Eo to use that library and it can't be a higher level object. And with current implementation of Eo it is perfectly possible to implement such idea. So not at Eo level. As for Eina, I am starting to think it is getting to much things in its namespace. I do believe that infact Eina_Simple_XML and Eina_File should after all have landed in their own library. That's why I am putting the current logic in a new library. It is going to expand, I want it to provide an few SAX like parser for JSON, Eet_Data and protobuf with also an API like Eet_Data to directly feed those value into a C structure without using a DOM at all. It would also be the right place to experiment and benchmark for a new Eet_Data format that could be more efficient to use. So at the end, and due to how I see things going and being used, I do think it is better of in its own library.
Diffstat (limited to 'configure.ac')
-rw-r--r--configure.ac58
1 files changed, 55 insertions, 3 deletions
diff --git a/configure.ac b/configure.ac
index c12968b..e4e2ab3 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1034,6 +1034,54 @@ EFL_EVAL_PKGS([EET_CXX])
1034EFL_LIB_END([Eet_Cxx]) 1034EFL_LIB_END([Eet_Cxx])
1035#### End of Eet CXX 1035#### End of Eet CXX
1036 1036
1037#### Emile
1038
1039EFL_LIB_START([Emile])
1040
1041### Default values
1042
1043### Additional options to configure
1044
1045### Checks for programs
1046
1047### Checks for libraries
1048
1049## Compatibility layers
1050EFL_PLATFORM_DEPEND([EMILE], [evil])
1051
1052EFL_ADD_LIBS([EMILE], [-lm])
1053
1054# Cryptography support
1055if test "$build_crypto" != "none" ; then
1056 AC_DEFINE([HAVE_CIPHER], [1], [Have cipher support built in emile])
1057 AC_DEFINE([HAVE_SIGNATURE], [1], [Have signature support in emile])
1058 EFL_CRYPTO_DEPEND([EMILE])
1059fi
1060
1061EFL_CHECK_LIBS([EMILE], [zlib])
1062
1063EFL_INTERNAL_DEPEND_PKG([EMILE], [eina])
1064
1065EFL_EVAL_PKGS([EMILE])
1066
1067### Checks for header files
1068
1069### Checks for types
1070
1071### Checks for structures
1072
1073### Checks for compiler characteristics
1074
1075### Checks for linker characteristics
1076
1077### Checks for library functions
1078
1079### Check availability
1080
1081EFL_LIB_END([Emile])
1082#### End of Emile
1083
1084
1037#### Eet 1085#### Eet
1038 1086
1039EFL_LIB_START([Eet]) 1087EFL_LIB_START([Eet])
@@ -1061,6 +1109,7 @@ fi
1061EFL_CHECK_LIBS([EET], [libjpeg zlib]) 1109EFL_CHECK_LIBS([EET], [libjpeg zlib])
1062 1110
1063EFL_INTERNAL_DEPEND_PKG([EET], [eina]) 1111EFL_INTERNAL_DEPEND_PKG([EET], [eina])
1112EFL_INTERNAL_DEPEND_PKG([EET], [emile])
1064 1113
1065EFL_EVAL_PKGS([EET]) 1114EFL_EVAL_PKGS([EET])
1066 1115
@@ -4413,6 +4462,7 @@ pc/evil.pc
4413pc/escape.pc 4462pc/escape.pc
4414pc/eina.pc 4463pc/eina.pc
4415pc/eina-cxx.pc 4464pc/eina-cxx.pc
4465pc/emile.pc
4416pc/eet.pc 4466pc/eet.pc
4417pc/eet-cxx.pc 4467pc/eet-cxx.pc
4418pc/eo.pc 4468pc/eo.pc
@@ -4591,15 +4641,17 @@ echo " Cryptography..: ${build_crypto}"
4591echo " X11...........: ${with_x11}" 4641echo " X11...........: ${with_x11}"
4592echo " OpenGL........: ${with_opengl}" 4642echo " OpenGL........: ${with_opengl}"
4593echo " C++11.........: ${have_cxx11}" 4643echo " C++11.........: ${have_cxx11}"
4644echo "Eina............: yes (${features_eina})"
4645echo "Eo..............: yes (${features_eo})"
4646echo "Eolian..........: yes (${features_eolian})"
4647echo "Emile...........: yes"
4648echo "Eet.............: yes"
4594echo "Evas............: yes (${features_evas})" 4649echo "Evas............: yes (${features_evas})"
4595echo " Engines.......: ${features_evas_engine}" 4650echo " Engines.......: ${features_evas_engine}"
4596echo " Image Loaders.: ${features_evas_loader}" 4651echo " Image Loaders.: ${features_evas_loader}"
4597if test "x${have_pixman}" = "xyes" ; then 4652if test "x${have_pixman}" = "xyes" ; then
4598echo " Pixman........: ${features_evas_pixman}" 4653echo " Pixman........: ${features_evas_pixman}"
4599fi 4654fi
4600echo "Eo..............: yes (${features_eo})"
4601echo "Eolian..........: yes (${features_eolian})"
4602echo "Eina............: yes (${features_eina})"
4603echo "Ecore...........: yes (${features_ecore})" 4655echo "Ecore...........: yes (${features_ecore})"
4604echo "Ecore_Con.......: yes (${features_ecore_con})" 4656echo "Ecore_Con.......: yes (${features_ecore_con})"
4605echo "Ecore_File......: yes" 4657echo "Ecore_File......: yes"