cmake: add ecore.
authorGustavo Sverzut Barbieri <barbieri@profusion.mobi>
Wed, 25 Jan 2017 21:26:02 +0000 (19:26 -0200)
committerGustavo Sverzut Barbieri <barbieri@profusion.mobi>
Wed, 25 Jan 2017 21:29:20 +0000 (19:29 -0200)
no tests or modules (which depend on eldbus).

CMakeLists.txt
cmake/config/ecore.cmake [new file with mode: 0644]
src/lib/ecore/CMakeLists.txt [new file with mode: 0644]
src/modules/ecore/system/tizen/CMakeLists.txt [new file with mode: 0644]

index 8fb13c9..7196aa8 100644 (file)
@@ -35,6 +35,7 @@ EFL_LIB(eina)
 EFL_LIB(eolian)
 EFL_LIB(eo)
 EFL_LIB(efl)
+EFL_LIB(ecore)
 
 EFL_OPTIONS_SUMMARY()
 
diff --git a/cmake/config/ecore.cmake b/cmake/config/ecore.cmake
new file mode 100644 (file)
index 0000000..c0441d2
--- /dev/null
@@ -0,0 +1,43 @@
+pkg_check_modules(GLIB glib-2.0)
+pkg_check_modules(TIZEN vconf)
+
+EFL_OPTION(ENABLE_GLIB "Whenever to integrate with Glib" ${GLIB_FOUND} DEPENDS GLIB_FOUND OFF)
+
+EFL_OPTION(ENABLE_GLIB_ALWAYS "Always integrate with Glib, otheriwse needs explicit call to ecore_main_loop_glib_integrate()" OFF DEPENDS "ENABLE_GLIB" OFF)
+
+EFL_OPTION(ENABLE_G_MAIN_LOOP "Enable ecore_main_loop based on g_main_loop" OFF DEPENDS "ENABLE_GLIB" OFF)
+
+EFL_OPTION(ENABLE_TIZEN "Enable tizen support" OFF DEPENDS "TIZEN_FOUND" OFF)
+
+# TODO: these need eldbus
+set(ECORE_MODULE_TYPE_SYSTEM_SYSTEMD_DEFAULT OFF) # ${ENABLE_SYSTEMD})
+set(ECORE_MODULE_TYPE_SYSTEM_UPOWER_DEFAULT OFF)
+set(ECORE_MODULE_TYPE_SYSTEM_TIZEN_DEFAULT ${ENABLE_TIZEN})
+
+# TODO libuv
+# TODO gstreamer
+# TODO gstreamer1
+
+if("${BUILD_PROFILE}" STREQUAL "dev" AND HAVE_BACKTRACE)
+  CHECK_APPEND_DEFINE(WANT_ECORE_TIMER_DUMP 1)
+else()
+  CHECK_APPEND_DEFINE(WANT_ECORE_TIMER_DUMP "")
+endif()
+
+CHECK_APPEND_DEFINE(GLIB_INTEGRATION_ALWAYS "${ENABLE_GLIB_ALWAYS}")
+CHECK_APPEND_DEFINE(HAVE_GLIB "${ENABLE_GLIB}")
+CHECK_APPEND_DEFINE(HAVE_TIZEN_CONFIGURATION_MANAGER "${ENABLE_TIZEN}")
+CHECK_APPEND_DEFINE(USE_G_MAIN_LOOP "${ENABLE_G_MAIN_LOOP}")
+
+FUNC_CHECK(epoll_create NAME HAVE_EPOLL INCLUDE_FILES sys/epoll.h)
+FUNC_CHECK(execvp INCLUDE_FILES unistd.h)
+FUNC_CHECK(gettimeofday INCLUDE_FILES sys/time.h)
+FUNC_CHECK(isfinite INCLUDE_FILES math.h LIBRARIES m)
+FUNC_CHECK(pause INCLUDE_FILES unistd.h)
+FUNC_CHECK(timerfd_create INCLUDE_FILES sys/timerfd.h)
+
+HEADER_CHECK(ieeefp.h)
+HEADER_CHECK(langinfo.h)
+HEADER_CHECK(sys/epoll.h)
+HEADER_CHECK(sys/timerfd.h)
+HEADER_CHECK(sys/wait.h)
diff --git a/src/lib/ecore/CMakeLists.txt b/src/lib/ecore/CMakeLists.txt
new file mode 100644 (file)
index 0000000..0425ce9
--- /dev/null
@@ -0,0 +1,96 @@
+set(DESCRIPTION "Ecore event abstraction library")
+
+set(PUBLIC_LIBRARIES
+  efl
+  eina
+  eo
+)
+
+set(LIBRARIES
+  m
+)
+
+if(ENABLE_SYSTEMD)
+  list(APPEND PKG_CONFIG_REQUIRES_PRIVATE libsystemd)
+endif()
+
+if(ENABLE_GLIB)
+  list(APPEND PKG_CONFIG_REQUIRES_PRIVATE glib-2.0 gthread-2.0)
+endif()
+
+set(PUBLIC_EO_FILES
+  ecore_exe.eo
+  ecore_poller.eo
+  ecore_types.eot
+  efl_io_buffered_stream.eo
+  efl_io_closer_fd.eo
+  efl_io_copier.eo
+  efl_io_file.eo
+  efl_io_positioner_fd.eo
+  efl_io_reader_fd.eo
+  efl_io_sizer_fd.eo
+  efl_io_stderr.eo
+  efl_io_stdin.eo
+  efl_io_stdout.eo
+  efl_io_writer_fd.eo
+  efl_loop.eo
+  efl_loop_fd.eo
+  efl_loop_timer.eo
+  efl_loop_user.eo
+  efl_promise.eo
+)
+
+set(PUBLIC_HEADERS
+  Ecore.h
+  Ecore_Common.h
+  Ecore_Eo.h
+  Ecore_Getopt.h
+  Ecore_Legacy.h
+)
+
+set(SOURCES
+  ecore.c
+  ecore_alloc.c
+  ecore_anim.c
+  ecore_app.c
+  ecore_events.c
+  ecore_exe.c
+  ecore_exe_private.h
+  ecore_getopt.c
+  ecore_glib.c
+  ecore_idle_enterer.c
+  ecore_idle_exiter.c
+  ecore_idler.c
+  ecore_internal.h
+  ecore_job.c
+  ecore_main.c
+  ecore_pipe.c
+  ecore_poller.c
+  ecore_private.h
+  ecore_thread.c
+  ecore_throttle.c
+  ecore_time.c
+  ecore_timer.c
+  efl_io_buffered_stream.c
+  efl_io_closer_fd.c
+  efl_io_copier.c
+  efl_io_file.c
+  efl_io_positioner_fd.c
+  efl_io_reader_fd.c
+  efl_io_sizer_fd.c
+  efl_io_stderr.c
+  efl_io_stdin.c
+  efl_io_stdout.c
+  efl_io_writer_fd.c
+  efl_loop_fd.c
+  efl_loop_user.c
+  efl_promise.c
+)
+
+# TODO: win32
+# TODO: ps3
+
+list(APPEND SOURCES
+  ecore_exe_posix.c
+  ecore_signal.c
+)
diff --git a/src/modules/ecore/system/tizen/CMakeLists.txt b/src/modules/ecore/system/tizen/CMakeLists.txt
new file mode 100644 (file)
index 0000000..e185f39
--- /dev/null
@@ -0,0 +1,3 @@
+set(PKG_CONFIG_REQUIRES_PRIVATE vconf)
+
+set(SOURCES ecore_system_tizen.c)