elementary: add back C++ generated binding.

This commit is contained in:
Cedric BAIL 2016-03-28 16:16:15 -07:00
parent b9bd922816
commit 5155c2d156
3 changed files with 55 additions and 142 deletions

View File

@ -81,6 +81,7 @@ include Makefile_Efl_Cxx.am
include Makefile_Edje_Cxx.am
include Makefile_Evas_Cxx.am
include Makefile_Eio_Cxx.am
include Makefile_Elementary_Cxx.am
include Makefile_Elua.am

View File

@ -0,0 +1,54 @@
if HAVE_CXX11
### Generated headers
generated_elementary_cxx_bindings = $(elm_eolian_files:%.eo=%.eo.hh)
generated_elementary_cxx_impl_bindings = $(elm_eolian_files:%.eo=%.eo.impl.hh)
lib/elementary/Elementary.hh: $(generated_elementary_cxx_bindings)
@echo @ECHO_E@ "#ifndef EFL_CXX_ELEMENTARY_HH\n#define EFL_CXX_ELEMENTARY_HH\n" > $(top_builddir)/src/lib/elementary/Elementary.hh
@echo @ECHO_E@ "#if defined(ELEMENTARY_H) || defined(ELM_WIDGET_H)" >> $(top_builddir)/src/lib/elementary/Elementary.hh
@echo @ECHO_E@ "#error Do not include Elm C API headers before including Elementary.hh" >> $(top_builddir)/src/lib/elementary/Elementary.hh
@echo @ECHO_E@ "#endif" >> $(top_builddir)/src/lib/elementary/Elementary.hh
@echo @ECHO_E@ "" >> $(top_builddir)/src/lib/elementary/Elementary.hh
@echo @ECHO_E@ "extern \"C\" {" >> $(top_builddir)/src/lib/elementary/Elementary.hh
@echo @ECHO_E@ "#include \"Elementary.h\"" >> $(top_builddir)/src/lib/elementary/Elementary.hh
@echo @ECHO_E@ "#include \"elm_widget.h\"" >> $(top_builddir)/src/lib/elementary/Elementary.hh
@echo @ECHO_E@ "}" >> $(top_builddir)/src/lib/elementary/Elementary.hh
@echo @ECHO_E@ "" >> $(top_builddir)/src/lib/elementary/Elementary.hh
@echo @ECHO_E@ "#ifdef EFL_BETA_API_SUPPORT" >> $(top_builddir)/src/lib/elementary/Elementary.hh
@for i in $(generated_elementary_cxx_bindings); do echo "#include <$$(basename $$i)>" >> $(top_builddir)/src/lib/elementary/Elementary.hh; done
@echo @ECHO_E@ "#endif\n\n#endif\n" >> $(top_builddir)/src/lib/elementary/Elementary.hh
generated_elementary_cxx_all = \
$(generated_elementary_cxx_bindings) \
$(generated_elementary_cxx_impl_bindings) \
lib/elementary/Elementary.hh
CLEANFILES += $(generated_elementary_cxx_all)
installed_elementarycxxmainheadersdir = $(includedir)/elementary-cxx-@VMAJ@/
nodist_installed_elementarycxxmainheaders_DATA = $(generated_elementary_cxx_all)
### Unit tests
### To be reenable in the future when we do have a meaningful tests
if EFL_ENABLE_TESTS
check_PROGRAMS +=
TESTS +=
# tests_elementary_cxx_cxx_compile_test_SOURCES = tests/elementary_cxx/cxx_compile_test.cc
# tests_elementary_cxx_cxx_compile_test_CPPFLAGS = -I$(top_builddir)/src/lib/efl \
# -I$(top_builddir)/src/lib/evas/canvas/ \
# -I$(top_builddir)/src/lib/efl/interfaces/ \
# -DTESTS_SRC_DIR=\"$(top_srcdir)/src/tests/elementary_cxx\" \
# -DTESTS_BUILD_DIR=\"$(top_builddir)/src/tests/elementary_cxx\" \
# @CHECK_CFLAGS@ @ECORE_CXX_CFLAGS@ @EINA_CXX_CFLAGS@ @EVAS_CXX_CFLAGS@ @ELEMENTARY_CXX_CFLAGS@ @EO_CXX_CFLAGS@ \
# @ECORE_CFLAGS@ @EINA_CFLAGS@ @EVAS_CFLAGS@ @ELEMENTARY_CFLAGS@ @EO_CFLAGS@
# tests_elementary_cxx_cxx_compile_test_LDADD = @CHECK_LIBS@ @USE_ELEMENTARY_LIBS@
# tests_elementary_cxx_cxx_compile_test_DEPENDENCIES = @USE_ELEMENTARY_INTERNAL_LIBS@
endif
endif

View File

@ -1,142 +0,0 @@
/* This is the prmary Elementary header file that includes all other useful
* headers.
*
* Elementary is distributed under the LGPLv2 license. Please see the COPYING
* file that was distributed with this source.
*/
#ifndef ELEMENTARY_CXX_HH
#define ELEMENTARY_CXX_HH
#if defined(ELEMENTARY_H) || defined(ELM_WIDGET_H)
#error Do not include Elm C API headers before including Elementary.hh
#endif
#define EFL_BETA_API_SUPPORT 1
#define EFL_EO_API_SUPPORT 1
#define ELM_INTERNAL_API_ARGESFSDFEFC
#define ELM_WIDGET_ITEM_PROTECTED
extern "C" {
#include "Elementary.h"
#include "elm_widget.h"
}
#ifdef EFL_BETA_API_SUPPORT
#define ELM_ELOCATION
#include <elm_widget_item.eo.hh>
#include <elm_access.eo.hh>
#include <elm_actionslider.eo.hh>
#include <elm_atspi_bridge.eo.hh>
#include <elm_app_client.eo.hh>
#include <elm_app_client_view.eo.hh>
#include <elm_app_server.eo.hh>
#include <elm_app_server_view.eo.hh>
#include <elm_atspi_app_object.eo.hh>
#include <elm_bg.eo.hh>
#include <elm_box.eo.hh>
#include <elm_bubble.eo.hh>
#include <elm_button.eo.hh>
#include <elm_calendar.eo.hh>
#include <elm_check.eo.hh>
#include <elm_clock.eo.hh>
#include <elm_colorselector.eo.hh>
#include <elm_conformant.eo.hh>
#include <elm_container.eo.hh>
#include <elm_ctxpopup.eo.hh>
#include <elm_datetime.eo.hh>
#include <elm_dayselector.eo.hh>
#include <elm_diskselector.eo.hh>
#include <elm_entry.eo.hh>
#include <elm_fileselector.eo.hh>
#include <elm_fileselector_button.eo.hh>
#include <elm_fileselector_entry.eo.hh>
#include <elm_flip.eo.hh>
#include <elm_flipselector.eo.hh>
#include <elm_frame.eo.hh>
#include <elm_gengrid.eo.hh>
#include <elm_gengrid_pan.eo.hh>
#include <elm_genlist.eo.hh>
#include <elm_genlist_pan.eo.hh>
#include <elm_gesture_layer.eo.hh>
#include <elm_glview.eo.hh>
#include <elm_grid.eo.hh>
#include <elm_hover.eo.hh>
#include <elm_hoversel.eo.hh>
#include <elm_icon.eo.hh>
#include <elm_image.eo.hh>
#include <elm_index.eo.hh>
#include <elm_interface_atspi_accessible.eo.hh>
#include <elm_interface_atspi_action.eo.hh>
#include <elm_interface_atspi_component.eo.hh>
#include <elm_interface_atspi_editable_text.eo.hh>
#include <elm_interface_atspi_image.eo.hh>
#include <elm_interface_atspi_selection.eo.hh>
#include <elm_interface_atspi_text.eo.hh>
#include <elm_interface_atspi_value.eo.hh>
#include <elm_interface_atspi_widget_action.eo.hh>
#include <elm_interface_atspi_window.eo.hh>
#include <elm_interface_fileselector.eo.hh>
#include <elm_interface_scrollable.eo.hh>
#include <elm_inwin.eo.hh>
#include <elm_label.eo.hh>
#include <elm_layout.eo.hh>
#include <elm_list.eo.hh>
#include <elm_map.eo.hh>
#include <elm_map_pan.eo.hh>
#include <elm_mapbuf.eo.hh>
#include <elm_menu.eo.hh>
#include <elm_multibuttonentry.eo.hh>
#include <elm_naviframe.eo.hh>
#include <elm_notify.eo.hh>
#include <elm_pan.eo.hh>
#include <elm_panel.eo.hh>
#include <elm_panes.eo.hh>
#include <elm_photo.eo.hh>
#include <elm_photocam.eo.hh>
#include <elm_photocam_pan.eo.hh>
#include <elm_player.eo.hh>
#include <elm_plug.eo.hh>
#include <elm_popup.eo.hh>
#include <elm_prefs.eo.hh>
#include <elm_progressbar.eo.hh>
#include <elm_radio.eo.hh>
#include <elm_route.eo.hh>
#include <elm_scroller.eo.hh>
#include <elm_segment_control.eo.hh>
#include <elm_separator.eo.hh>
#include <elm_slider.eo.hh>
#include <elm_slideshow.eo.hh>
#include <elm_spinner.eo.hh>
#include <elm_systray.eo.hh>
#include <elm_table.eo.hh>
#include <elm_thumb.eo.hh>
#include <elm_toolbar.eo.hh>
#include <elm_video.eo.hh>
#include <elm_view_list.eo.hh>
#include <elm_view_form.eo.hh>
#include <elm_web.eo.hh>
#include <elm_widget.eo.hh>
#include <elm_win.eo.hh>
#include <elm_win_standard.eo.hh>
#include <elm_color_item.eo.hh>
#include <elm_dayselector_item.eo.hh>
#include <elm_hoversel_item.eo.hh>
#include <elm_segment_control_item.eo.hh>
#include <elm_slideshow_item.eo.hh>
#include <elm_flipselector_item.eo.hh>
#include <elm_menu_item.eo.hh>
#include <elm_ctxpopup_item.eo.hh>
#include <elm_index_item.eo.hh>
#include <elm_multibuttonentry_item.eo.hh>
#include <elm_naviframe_item.eo.hh>
#include <elm_genlist_item.eo.hh>
#include <elm_gengrid_item.eo.hh>
#include <elm_list_item.eo.hh>
#include <elm_toolbar_item.eo.hh>
#include <elm_diskselector_item.eo.hh>
#include <elm_popup_item.eo.hh>
#endif
#endif