summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLauro Moura <lauromoura@expertisesolutions.com.br>2019-03-11 11:34:45 -0400
committerMike Blumenkrantz <zmike@samsung.com>2019-03-11 11:35:02 -0400
commitee7f843834e1aeb9d27cea8ef92c48758e56fcc9 (patch)
treedb5b236ad814d9e70715f03cac88811f5dd0feca
parent26f46f88c95d88e15302d1c95219d227af4ea6af (diff)
cxx: Fix examples compilation.
Summary: - Changed beta methods guards from CLASS_NAME_GUARD to EFL_BETA_API_SUPPORT to use the same scheme as C. - Removed some includes to Efl_Ui.h from the examples. These were causing C's efl_part_get to not be generated due to EFL_PART_PROTECTED not being yet defined (it is defined in Elementary.hh, included afterwards). This was leading to Efl.Part.impl.hh trying to use a non-existent method. Fixes T7716 partially (missing stringshare issue) Test Plan: make examples Reviewers: stefan_schmidt, felipealmeida, zmike Reviewed By: zmike Subscribers: cedric, #reviewers, #committers Tags: #efl Maniphest Tasks: T7716 Differential Revision: https://phab.enlightenment.org/D8284
-rw-r--r--src/examples/elementary/bg_cxx_example_01.cc1
-rw-r--r--src/examples/elementary/bg_cxx_example_02.cc1
-rw-r--r--src/examples/elementary/button_cxx_example_00.cc1
-rw-r--r--src/examples/elementary/button_cxx_example_01.cc2
-rw-r--r--src/examples/elementary/radio_cxx_example_01.cc2
-rw-r--r--src/examples/elementary/slider_cxx_example.cc3
-rw-r--r--src/examples/elementary/toolbar_cxx_example_01.cc2
-rw-r--r--src/lib/eolian_cxx/grammar/function_declaration.hpp4
-rw-r--r--src/lib/eolian_cxx/grammar/function_definition.hpp4
9 files changed, 11 insertions, 9 deletions
diff --git a/src/examples/elementary/bg_cxx_example_01.cc b/src/examples/elementary/bg_cxx_example_01.cc
index 7e0724c3ca..5919d18531 100644
--- a/src/examples/elementary/bg_cxx_example_01.cc
+++ b/src/examples/elementary/bg_cxx_example_01.cc
@@ -1,4 +1,5 @@
1#define EFL_CXXPERIMENTAL // for background part 1#define EFL_CXXPERIMENTAL // for background part
2#define EFL_BETA_API_SUPPORT
2#include <Elementary.hh> 3#include <Elementary.hh>
3 4
4using efl::eo::instantiate; 5using efl::eo::instantiate;
diff --git a/src/examples/elementary/bg_cxx_example_02.cc b/src/examples/elementary/bg_cxx_example_02.cc
index 94c17e3dcf..f88329d2eb 100644
--- a/src/examples/elementary/bg_cxx_example_02.cc
+++ b/src/examples/elementary/bg_cxx_example_02.cc
@@ -6,6 +6,7 @@
6 */ 6 */
7 7
8#define EFL_CXXPERIMENTAL 8#define EFL_CXXPERIMENTAL
9#define EFL_BETA_API_SUPPORT
9 10
10#include <Elementary.hh> 11#include <Elementary.hh>
11 12
diff --git a/src/examples/elementary/button_cxx_example_00.cc b/src/examples/elementary/button_cxx_example_00.cc
index d44f18a924..a0cdb1c566 100644
--- a/src/examples/elementary/button_cxx_example_00.cc
+++ b/src/examples/elementary/button_cxx_example_00.cc
@@ -1,6 +1,7 @@
1// g++ -g `pkg-config --cflags --libs elementary-cxx efl-cxx eina-cxx eo-cxx ecore-cxx evas-cxx edje-cxx` button_cxx_example_00.cc -o button_cxx_example_00 1// g++ -g `pkg-config --cflags --libs elementary-cxx efl-cxx eina-cxx eo-cxx ecore-cxx evas-cxx edje-cxx` button_cxx_example_00.cc -o button_cxx_example_00
2 2
3#define EFL_CXXPERIMENTAL 3#define EFL_CXXPERIMENTAL
4#define EFL_BETA_API_SUPPORT
4#include <Elementary.hh> 5#include <Elementary.hh>
5#include <iostream> 6#include <iostream>
6 7
diff --git a/src/examples/elementary/button_cxx_example_01.cc b/src/examples/elementary/button_cxx_example_01.cc
index c818897fbb..3136f6ac04 100644
--- a/src/examples/elementary/button_cxx_example_01.cc
+++ b/src/examples/elementary/button_cxx_example_01.cc
@@ -1,7 +1,7 @@
1// g++ -g `pkg-config --cflags --libs elementary-cxx efl-cxx eina-cxx eo-cxx ecore-cxx evas-cxx edje-cxx` button_cxx_example_01.cc -o button_cxx_example_01 1// g++ -g `pkg-config --cflags --libs elementary-cxx efl-cxx eina-cxx eo-cxx ecore-cxx evas-cxx edje-cxx` button_cxx_example_01.cc -o button_cxx_example_01
2 2
3#define EFL_CXXPERIMENTAL 3#define EFL_CXXPERIMENTAL
4#include <Efl_Ui.h> 4#define EFL_BETA_API_SUPPORT
5#include <Elementary.hh> 5#include <Elementary.hh>
6 6
7using efl::eo::instantiate; 7using efl::eo::instantiate;
diff --git a/src/examples/elementary/radio_cxx_example_01.cc b/src/examples/elementary/radio_cxx_example_01.cc
index 2ad30b2097..e72fe9f55e 100644
--- a/src/examples/elementary/radio_cxx_example_01.cc
+++ b/src/examples/elementary/radio_cxx_example_01.cc
@@ -1,7 +1,7 @@
1// g++ -g `pkg-config --cflags --libs elementary-cxx efl-cxx eina-cxx eo-cxx ecore-cxx evas-cxx edje-cxx` radio_cxx_example_01.cc -o radio_cxx_example_01 1// g++ -g `pkg-config --cflags --libs elementary-cxx efl-cxx eina-cxx eo-cxx ecore-cxx evas-cxx edje-cxx` radio_cxx_example_01.cc -o radio_cxx_example_01
2 2
3#define EFL_CXXPERIMENTAL 3#define EFL_CXXPERIMENTAL
4#include <Efl_Ui.h> 4#define EFL_BETA_API_SUPPORT
5#include <Elementary.hh> 5#include <Elementary.hh>
6#include <iostream> 6#include <iostream>
7 7
diff --git a/src/examples/elementary/slider_cxx_example.cc b/src/examples/elementary/slider_cxx_example.cc
index 1df1903bf5..82846257cf 100644
--- a/src/examples/elementary/slider_cxx_example.cc
+++ b/src/examples/elementary/slider_cxx_example.cc
@@ -1,8 +1,7 @@
1// g++ -g `pkg-config --cflags --libs elementary-cxx efl-cxx eina-cxx eo-cxx ecore-cxx evas-cxx edje-cxx` slider_cxx_example.cc -o slider_cxx_example 1// g++ -g `pkg-config --cflags --libs elementary-cxx efl-cxx eina-cxx eo-cxx ecore-cxx evas-cxx edje-cxx` slider_cxx_example.cc -o slider_cxx_example
2 2
3#define EFL_CXXPERIMENTAL 3#define EFL_CXXPERIMENTAL
4 4#define EFL_BETA_API_SUPPORT
5#include <Efl_Ui.h>
6#include <Elementary.hh> 5#include <Elementary.hh>
7 6
8using namespace std::placeholders; 7using namespace std::placeholders;
diff --git a/src/examples/elementary/toolbar_cxx_example_01.cc b/src/examples/elementary/toolbar_cxx_example_01.cc
index 77ad3eb569..6f4e83be89 100644
--- a/src/examples/elementary/toolbar_cxx_example_01.cc
+++ b/src/examples/elementary/toolbar_cxx_example_01.cc
@@ -7,7 +7,7 @@
7 7
8#warning This example requires yet unfinished EO APIs 8#warning This example requires yet unfinished EO APIs
9 9
10#include <Efl_Ui.h> 10#define EFL_BETA_API_SUPPORT
11#include <Elementary.hh> 11#include <Elementary.hh>
12 12
13EAPI int 13EAPI int
diff --git a/src/lib/eolian_cxx/grammar/function_declaration.hpp b/src/lib/eolian_cxx/grammar/function_declaration.hpp
index dc6a969a58..1ae63df857 100644
--- a/src/lib/eolian_cxx/grammar/function_declaration.hpp
+++ b/src/lib/eolian_cxx/grammar/function_declaration.hpp
@@ -44,8 +44,8 @@ struct function_declaration_generator
44 } 44 }
45 45
46 if(f.is_beta && 46 if(f.is_beta &&
47 !as_generator("#ifdef " << *(string << "_") << string << "_BETA\n") 47 !as_generator(lit("#ifdef EFL_BETA_API_SUPPORT\n"))
48 .generate(sink, std::make_tuple(_klass_name.namespaces, _klass_name.eolian_name), add_upper_case_context(ctx))) 48 .generate(sink, attributes::unused, ctx))
49 return false; 49 return false;
50 if(f.is_protected && 50 if(f.is_protected &&
51 !as_generator("#ifdef " << *(string << "_") << string << "_PROTECTED\n") 51 !as_generator("#ifdef " << *(string << "_") << string << "_PROTECTED\n")
diff --git a/src/lib/eolian_cxx/grammar/function_definition.hpp b/src/lib/eolian_cxx/grammar/function_definition.hpp
index 893218155c..c5de8ce531 100644
--- a/src/lib/eolian_cxx/grammar/function_definition.hpp
+++ b/src/lib/eolian_cxx/grammar/function_definition.hpp
@@ -50,8 +50,8 @@ struct function_definition_generator
50 } 50 }
51 51
52 if(f.is_beta && 52 if(f.is_beta &&
53 !as_generator("#ifdef " << *(string << "_") << string << "_BETA\n") 53 !as_generator(lit("#ifdef EFL_BETA_API_SUPPORT\n"))
54 .generate(sink, std::make_tuple(_klass_name.namespaces, _klass_name.eolian_name), add_upper_case_context(ctx))) 54 .generate(sink, attributes::unused, ctx))
55 return false; 55 return false;
56 if(f.is_protected && 56 if(f.is_protected &&
57 !as_generator("#ifdef " << *(string << "_") << string << "_PROTECTED\n") 57 !as_generator("#ifdef " << *(string << "_") << string << "_PROTECTED\n")