summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarcel Hollerbach <marcel-hollerbach@t-online.de>2017-01-23 18:52:34 +0100
committerMarcel Hollerbach <marcel-hollerbach@t-online.de>2017-01-23 18:52:34 +0100
commitea83a197beb079256a95e521531b4140a33f6a32 (patch)
tree134656710da045831f253c03e6e66fd0cdc9e69b
parent65ce7abb009c9b71102393d087e7fe906c7d20b2 (diff)
build: add eolian
-rw-r--r--CMakeLists.txt1
-rw-r--r--cmake/config/eolian.cmake1
-rw-r--r--cmake/helpers/EflMacros.cmake1
-rw-r--r--src/bin/eolian/CMakeLists.txt19
-rw-r--r--src/lib/eolian/CMakeLists.txt46
-rw-r--r--src/tests/eolian/CMakeLists.txt19
6 files changed, 87 insertions, 0 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 6604e12880..194ff3c1c2 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -36,6 +36,7 @@ include_directories(
36include(${CMAKE_SOURCE_DIR}/cmake/config/common.cmake) 36include(${CMAKE_SOURCE_DIR}/cmake/config/common.cmake)
37 37
38EFL_LIB(eina) 38EFL_LIB(eina)
39EFL_LIB(eolian)
39 40
40EFL_OPTIONS_SUMMARY() 41EFL_OPTIONS_SUMMARY()
41 42
diff --git a/cmake/config/eolian.cmake b/cmake/config/eolian.cmake
new file mode 100644
index 0000000000..5c9a6ca0a7
--- /dev/null
+++ b/cmake/config/eolian.cmake
@@ -0,0 +1 @@
EFL_OPTION(EOLIAN_BIN "The eolian_gen binary to use" ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/eolian_gen) \ No newline at end of file
diff --git a/cmake/helpers/EflMacros.cmake b/cmake/helpers/EflMacros.cmake
index 8938fa12a4..516658fae6 100644
--- a/cmake/helpers/EflMacros.cmake
+++ b/cmake/helpers/EflMacros.cmake
@@ -750,6 +750,7 @@ function(EFL_TEST _testname)
750 ${CHECK_LIBRARIES}) 750 ${CHECK_LIBRARIES})
751 751
752 target_compile_definitions(${_testtarget} PRIVATE 752 target_compile_definitions(${_testtarget} PRIVATE
753 "-DPACKAGE_DATA_DIR=\"${EFL_TESTS_SOURCE_DIR}\""
753 "-DTESTS_SRC_DIR=\"${_testrcdir}\"" 754 "-DTESTS_SRC_DIR=\"${_testrcdir}\""
754 "-DTESTS_BUILD_DIR=\"${_testbindir}\"" 755 "-DTESTS_BUILD_DIR=\"${_testbindir}\""
755 "-DTESTS_WD=\"${PROJECT_BINARY_DIR}\"" 756 "-DTESTS_WD=\"${PROJECT_BINARY_DIR}\""
diff --git a/src/bin/eolian/CMakeLists.txt b/src/bin/eolian/CMakeLists.txt
new file mode 100644
index 0000000000..05278d7158
--- /dev/null
+++ b/src/bin/eolian/CMakeLists.txt
@@ -0,0 +1,19 @@
1set(OUTPUT_NAME eolian_gen)
2
3set(LIBRARIES
4 eina
5 eolian
6)
7
8set(SOURCES
9 docs.c
10 docs.h
11 headers.c
12 headers.h
13 main.c
14 main.h
15 sources.c
16 sources.h
17 types.c
18 types.h
19) \ No newline at end of file
diff --git a/src/lib/eolian/CMakeLists.txt b/src/lib/eolian/CMakeLists.txt
new file mode 100644
index 0000000000..02258317ae
--- /dev/null
+++ b/src/lib/eolian/CMakeLists.txt
@@ -0,0 +1,46 @@
1set(DESCRIPTION "A library to parse .eo files ")
2
3set(LIBRARIES
4 eina
5)
6
7#if (WINDOWS)
8# set(LIBRARIES ${LIBRARIES} evil)
9#endif (WINDOWS)
10
11set(PUBLIC_HEADERS
12 Eolian.h
13)
14
15set(INCLUDE_DIRECTORIES
16 ./
17)
18
19set(SOURCES
20 database_class.c
21 database_class_api.c
22 database_constructor.c
23 database_constructor_api.c
24 database_event.c
25 database_event_api.c
26 database_expr.c
27 database_expr_api.c
28 database_function.c
29 database_function_api.c
30 database_function_parameter.c
31 database_function_parameter_api.c
32 database_implement.c
33 database_implement_api.c
34 database_type.c
35 database_type_api.c
36 database_validate.c
37 database_var.c
38 database_var_api.c
39 eo_lexer.c
40 eo_lexer.h
41 eo_parser.c
42 eo_parser.h
43 eolian.c
44 eolian_database.c
45 eolian_database.h
46)
diff --git a/src/tests/eolian/CMakeLists.txt b/src/tests/eolian/CMakeLists.txt
new file mode 100644
index 0000000000..c7ea8f1ca2
--- /dev/null
+++ b/src/tests/eolian/CMakeLists.txt
@@ -0,0 +1,19 @@
1set(INCLUDE_DIRECTORIES
2 ${CMAKE_SOURCE_DIR}/src/lib/eo/
3)
4
5set(LIBRARIES
6 eina
7 eolian
8)
9
10set(DEFINITIONS
11 -DEOLIAN_GEN="${EOLIAN_BIN}")
12
13set(SOURCES
14 #for now no test suite
15 eolian_generation.c
16 eolian_parsing.c
17 eolian_suite.c
18 eolian_suite.h
19)