summaryrefslogtreecommitdiff
path: root/src/static_libs
diff options
context:
space:
mode:
authorMarcel Hollerbach <mail@marcel-hollerbach.de>2018-08-12 15:26:29 +0200
committerMarcel Hollerbach <mail@marcel-hollerbach.de>2018-10-02 17:22:50 +0200
commit46d464e5bfc10398461a33a2256c1c58d509dd1a (patch)
tree8c1a9272c05f14033a4430bc122632461bd73608 /src/static_libs
parent70ecf1056bb4be5a68b63044f938ccc2fe0a58c0 (diff)
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
Diffstat (limited to 'src/static_libs')
-rw-r--r--src/static_libs/atspi/meson.build3
-rw-r--r--src/static_libs/buildsystem/buildsystem_meson.c49
-rw-r--r--src/static_libs/buildsystem/meson.build20
-rw-r--r--src/static_libs/draw/meson.build23
-rw-r--r--src/static_libs/freetype/meson.build23
-rw-r--r--src/static_libs/http-parser/meson.build11
-rw-r--r--src/static_libs/libdrm/meson.build3
-rw-r--r--src/static_libs/libunibreak/meson.build32
-rw-r--r--src/static_libs/lz4/meson.build17
-rw-r--r--src/static_libs/rg_etc/meson.build16
-rw-r--r--src/static_libs/triangulator/meson.build21
-rw-r--r--src/static_libs/vg_common/meson.build13
12 files changed, 231 insertions, 0 deletions
diff --git a/src/static_libs/atspi/meson.build b/src/static_libs/atspi/meson.build
new file mode 100644
index 0000000000..5024cc5c97
--- /dev/null
+++ b/src/static_libs/atspi/meson.build
@@ -0,0 +1,3 @@
1atspi = declare_dependency(
2 include_directories: include_directories('..'),
3) \ No newline at end of file
diff --git a/src/static_libs/buildsystem/buildsystem_meson.c b/src/static_libs/buildsystem/buildsystem_meson.c
new file mode 100644
index 0000000000..fd741e0d15
--- /dev/null
+++ b/src/static_libs/buildsystem/buildsystem_meson.c
@@ -0,0 +1,49 @@
1#include "config.h"
2
3#include <stdio.h>
4#include <Eina.h>
5
6Eina_Bool
7bs_mod_get(char *path, size_t maxlen, const char *subsystem, const char *mod_name)
8{
9 if (!getenv("EFL_RUN_IN_TREE")) return EINA_FALSE;
10
11 // there is a name conflict between a ethumb module and the emotion library,
12 // this causes the module to link to itself, instead of the library
13 if (!strcmp(subsystem, "ethumb"))
14 snprintf(path, maxlen, PACKAGE_BUILD_DIR"/src/modules/%s/%s/lib%s_el"MOD_SUFFIX, subsystem, mod_name, mod_name);
15 else
16 snprintf(path, maxlen, PACKAGE_BUILD_DIR"/src/modules/%s/%s/lib%s"MOD_SUFFIX, subsystem, mod_name, mod_name);
17
18 return EINA_TRUE;
19}
20
21Eina_Bool
22bs_mod_dir_get(char *path, size_t maxlen, const char *subsystem, const char *mod_name)
23{
24 if (!getenv("EFL_RUN_IN_TREE")) return EINA_FALSE;
25
26 snprintf(path, maxlen, PACKAGE_BUILD_DIR"/src/modules/%s/%s/", subsystem, mod_name);
27
28 return EINA_TRUE;
29}
30
31Eina_Bool
32bs_binary_get(char *path, size_t maxlen, const char *subsystem, const char *bin_name)
33{
34 if (!getenv("EFL_RUN_IN_TREE")) return EINA_FALSE;
35
36 snprintf(path, maxlen, PACKAGE_BUILD_DIR"/src/bin/%s/%s"EXE_SUFFIX, subsystem, bin_name);
37
38 return EINA_TRUE;
39}
40
41Eina_Bool
42bs_data_path_get(char *path, size_t maxlen, const char *subsystem, const char *file)
43{
44 if (!getenv("EFL_RUN_IN_TREE")) return EINA_FALSE;
45
46 snprintf(path, maxlen, PACKAGE_SRC_DIR"/data/%s/%s", subsystem, file);
47
48 return EINA_TRUE;
49}
diff --git a/src/static_libs/buildsystem/meson.build b/src/static_libs/buildsystem/meson.build
new file mode 100644
index 0000000000..61e7f1e37e
--- /dev/null
+++ b/src/static_libs/buildsystem/meson.build
@@ -0,0 +1,20 @@
1
2buildsystem_src = [
3 'buildsystem.h',
4 'buildsystem_meson.c',
5]
6
7
8buildsystem_lib = static_library('buildsystem',
9 buildsystem_src,
10 dependencies : [eina, efl],
11 include_directories : config_dir + [include_directories(join_paths('..', '..', 'lib'))],
12 install: false,
13 c_args : ['-DPACKAGE_SRC_DIR="'+ meson.source_root() +'"'],
14)
15
16buildsystem = declare_dependency(
17 include_directories: [include_directories('.'), include_directories(join_paths('..', '..', 'lib'))],
18 link_with: buildsystem_lib,
19 dependencies: [eina],
20)
diff --git a/src/static_libs/draw/meson.build b/src/static_libs/draw/meson.build
new file mode 100644
index 0000000000..1fcc6b1ba8
--- /dev/null
+++ b/src/static_libs/draw/meson.build
@@ -0,0 +1,23 @@
1
2draw_src = [
3 'draw_main_sse2.c',
4 'draw_main.c',
5 'draw_main_neon.c',
6 'draw_main.c',
7 'draw_convert.c',
8 'draw_alpha_main.c'
9]
10
11
12draw_lib = static_library('draw',
13 draw_src,
14 dependencies : [eina, efl],
15 include_directories : config_dir + [include_directories(join_paths('..', '..', 'lib'))],
16 install: false,
17)
18
19draw = declare_dependency(
20 include_directories: [include_directories('.'), include_directories(join_paths('..', '..', 'lib'))],
21 link_with: draw_lib,
22 dependencies: [eina],
23)
diff --git a/src/static_libs/freetype/meson.build b/src/static_libs/freetype/meson.build
new file mode 100644
index 0000000000..bfa685b78e
--- /dev/null
+++ b/src/static_libs/freetype/meson.build
@@ -0,0 +1,23 @@
1
2freetype_src = [
3 'sw_ft_math.c',
4 'sw_ft_math.h',
5 'sw_ft_raster.c',
6 'sw_ft_raster.h',
7 'sw_ft_stroker.c',
8 'sw_ft_stroker.h',
9 'sw_ft_types.h',
10]
11
12
13freetype_lib = static_library('freetype',
14 freetype_src,
15 include_directories : config_dir,
16 install: false,
17)
18
19freetype = declare_dependency(
20 include_directories: [include_directories('.')],
21 link_with: freetype_lib,
22 dependencies: [eina],
23)
diff --git a/src/static_libs/http-parser/meson.build b/src/static_libs/http-parser/meson.build
new file mode 100644
index 0000000000..7e1308400e
--- /dev/null
+++ b/src/static_libs/http-parser/meson.build
@@ -0,0 +1,11 @@
1http_parser_lib = [
2 'http_parser.c',
3 'http_parser.h',
4]
5
6http_parser_lib = static_library('http-parser', http_parser_lib)
7
8http_parser = declare_dependency(
9 include_directories: include_directories('.') ,
10 link_with: http_parser_lib,
11) \ No newline at end of file
diff --git a/src/static_libs/libdrm/meson.build b/src/static_libs/libdrm/meson.build
new file mode 100644
index 0000000000..ec0278b243
--- /dev/null
+++ b/src/static_libs/libdrm/meson.build
@@ -0,0 +1,3 @@
1libdrm = declare_dependency(
2 include_directories: include_directories('.')
3) \ No newline at end of file
diff --git a/src/static_libs/libunibreak/meson.build b/src/static_libs/libunibreak/meson.build
new file mode 100644
index 0000000000..77bb2f93ac
--- /dev/null
+++ b/src/static_libs/libunibreak/meson.build
@@ -0,0 +1,32 @@
1
2libunibreak_src = [
3 'unibreakbase.h',
4 'unibreakdef.h',
5 'linebreak.h',
6 'linebreakdef.h',
7 'wordbreakdef.h',
8 'wordbreak.h',
9 'wordbreakdata.c',
10 'unibreakbase.c',
11 'unibreakdef.c',
12 'linebreak.c',
13 'linebreakdata.c',
14 'linebreakdef.c',
15 'wordbreak.c',
16 'graphemebreak.c',
17 'graphemebreak.h',
18 'graphemebreakdata.c',
19 'graphemebreakdef.h',
20]
21
22libunibreak_lib = static_library('libunibreak',
23 libunibreak_src,
24 include_directories : config_dir,
25 install: false,
26)
27
28libunibreak = declare_dependency(
29 include_directories: [include_directories('.')],
30 link_with: libunibreak_lib,
31 dependencies: [eina],
32)
diff --git a/src/static_libs/lz4/meson.build b/src/static_libs/lz4/meson.build
new file mode 100644
index 0000000000..4e3dc02189
--- /dev/null
+++ b/src/static_libs/lz4/meson.build
@@ -0,0 +1,17 @@
1if (get_option('embedded-lz4'))
2 lz4_src = [
3 'lz4.c',
4 'lz4hc.c'
5 ]
6
7 lz4_lib = static_library('lz4', lz4_src,
8 include_directories : config_dir,
9 )
10
11 lz4 = declare_dependency(
12 include_directories: include_directories('.'),
13 link_with: lz4_lib
14 )
15else
16 lz4 = dependency('liblz4')
17endif
diff --git a/src/static_libs/rg_etc/meson.build b/src/static_libs/rg_etc/meson.build
new file mode 100644
index 0000000000..3dad342457
--- /dev/null
+++ b/src/static_libs/rg_etc/meson.build
@@ -0,0 +1,16 @@
1rg_etc_src = [
2'etc2_encoder.c',
3'rg_etc1.c',
4'rg_etc1.h',
5'rg_etc2.c',
6]
7
8rg_etc_lib = static_library('rg_etc', rg_etc_src,
9 dependencies : eina,
10 include_directories : config_dir,
11)
12
13rg_etc = declare_dependency(
14 include_directories: include_directories('.'),
15 link_with: rg_etc_lib
16)
diff --git a/src/static_libs/triangulator/meson.build b/src/static_libs/triangulator/meson.build
new file mode 100644
index 0000000000..1a1af2ac0e
--- /dev/null
+++ b/src/static_libs/triangulator/meson.build
@@ -0,0 +1,21 @@
1
2triangulator_src = [
3 'triangulator_simple.c',
4 'triangulator_simple.h',
5 'triangulator_stroker.c',
6 'triangulator_stroker.h',
7]
8
9
10triangulator_lib = static_library('triangulator',
11 triangulator_src,
12 dependencies : [eina, efl],
13 include_directories : config_dir + [include_directories(join_paths('..', '..', 'lib'))],
14 install: false,
15)
16
17triangulator = declare_dependency(
18 include_directories: [include_directories('.')],
19 link_with: triangulator_lib,
20 dependencies: [eina],
21)
diff --git a/src/static_libs/vg_common/meson.build b/src/static_libs/vg_common/meson.build
new file mode 100644
index 0000000000..eeb72fce52
--- /dev/null
+++ b/src/static_libs/vg_common/meson.build
@@ -0,0 +1,13 @@
1#vg common is not really a static lib, is required by evas and requires evas ... so only collecting src here and compile them into evas ... ...
2
3vg_common_src = files([
4 'vg_common.c',
5 'vg_common.h',
6])
7
8vg_common_inc_dir = include_directories('.')
9
10vg_common = declare_dependency(
11 include_directories: vg_common_inc_dir,
12 sources: vg_common_src,
13)