From: Woochan Lee Date: Fri, 10 Jun 2016 00:58:07 +0000 (+0900) Subject: Add definition to divide c, c++. X-Git-Tag: submit/tizen/20160617.075742~18 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=9c7f75d15c90ec7fc05f16fefe9906fa7981036a;p=platform%2Fcore%2Fuifw%2Fui-viewmgr.git Add definition to divide c, c++. Change-Id: Ica09f72e8db1152b33cb733ed74ea009ff0a55a5 --- diff --git a/CMakeLists.txt b/CMakeLists.txt index 6e8c9e7..f9ea537 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -27,6 +27,10 @@ ADD_DEFINITIONS("-DVERSION=\"${VERSION}\"") ADD_DEFINITIONS("-DBINNAME=\"${BINNAME}\"") ADD_DEFINITIONS("-DLOCALE_DIR=\"${LOCALEDIR}\"") +IF("${TARGET_LANGUAGE}" STREQUAL "c") + ADD_DEFINITIONS(-DTARGET_LANG_C) +ENDIF() + INCLUDE(FindPkgConfig) SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} -g -O2 -Wall -fPIE") diff --git a/packaging/ui-viewmgr.spec b/packaging/ui-viewmgr.spec index fc6d935..3c02f45 100644 --- a/packaging/ui-viewmgr.spec +++ b/packaging/ui-viewmgr.spec @@ -39,6 +39,13 @@ UI VIEW MANAGER library providing View management functionality(devel) %setup -q %build + +%if "%{?target_language}" == "c" + cmake . -DTARGET_LANGUAGE="c" +%else + cmake . -DTARGET_LANGUAGE="c++" +%endif + cmake . -DCMAKE_INSTALL_PREFIX=/usr make %{?jobs:-j%jobs} diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 48ed9d5..7824ef4 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -3,5 +3,9 @@ LINK_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR}/lib) ADD_SUBDIRECTORY(include) ADD_SUBDIRECTORY(lib) -ADD_SUBDIRECTORY(examples/efl/cpp) -#ADD_SUBDIRECTORY(examples/efl/c) + +IF("${TARGET_LANGUAGE}" STREQUAL "c") + ADD_SUBDIRECTORY(examples/efl/c) +ELSE() + ADD_SUBDIRECTORY(examples/efl/cpp) +ENDIF() diff --git a/src/examples/efl/c/main.cpp b/src/examples/efl/c/main.cpp index c155c8d..e4e17d0 100644 --- a/src/examples/efl/c/main.cpp +++ b/src/examples/efl/c/main.cpp @@ -1174,7 +1174,7 @@ view1_load_cb(ui_view *view, void *data) Evas_Object *content = create_content(base_layout, "ViewMgr Demo
Basic View", view1_prev_btn_clicked_cb, view1_next_btn_clicked_cb); - ui_standard_view_content_set(view, content, "Page1", NULL, NULL, NULL); + ui_standard_view_content_set(view, content, "Page1 C example", NULL, NULL, NULL); return true; } diff --git a/src/examples/efl/cpp/page1.h b/src/examples/efl/cpp/page1.h index 97c1701..b7b6046 100644 --- a/src/examples/efl/cpp/page1.h +++ b/src/examples/efl/cpp/page1.h @@ -38,7 +38,7 @@ protected: { UI_VIEWMGR->push_view(new page2()); }); - this->set_content(content, "Page1"); + this->set_content(content, "Page1 C++ example"); } public: diff --git a/src/include/ui_viewmanager.h b/src/include/ui_viewmanager.h index e1fbd09..73dbec4 100644 --- a/src/include/ui_viewmanager.h +++ b/src/include/ui_viewmanager.h @@ -14,6 +14,9 @@ * limitations under the License. * */ -//FIXME: C++ app include below. -#include "efl/mobile/ui_mobile_viewmanager.h" -//#include "efl/mobile/c/ui_mobile_viewmanager.h" + +#ifdef TARGET_LANG_C + #include "efl/mobile/c/ui_mobile_viewmanager.h" +#else + #include "efl/mobile/ui_mobile_viewmanager.h" +#endif diff --git a/src/lib/CMakeLists.txt b/src/lib/CMakeLists.txt index 65d8292..c449a2b 100644 --- a/src/lib/CMakeLists.txt +++ b/src/lib/CMakeLists.txt @@ -1,3 +1,4 @@ +IF("${TARGET_LANGUAGE}" STREQUAL "c") SET(SRCS interface/ui_iface_overlay.cpp interface/ui_iface_view.cpp @@ -14,12 +15,31 @@ SET(SRCS efl/mobile/ui_standard_view.cpp efl/mobile/ui_key_listener.cpp efl/mobile/ui_viewmgr.cpp -# efl/mobile/c/ui_app.cpp -# efl/mobile/c/ui_menu.cpp -# efl/mobile/c/ui_popup.cpp -# efl/mobile/c/ui_view.cpp -# efl/mobile/c/ui_viewmgr.cpp + efl/mobile/c/ui_app.cpp + efl/mobile/c/ui_menu.cpp + efl/mobile/c/ui_popup.cpp + efl/mobile/c/ui_view.cpp + efl/mobile/c/ui_viewmgr.cpp ) +ELSE() +SET(SRCS + interface/ui_iface_overlay.cpp + interface/ui_iface_view.cpp + interface/ui_iface_viewmgr.cpp + interface/ui_iface_app.cpp + efl/ui_base_view.cpp + efl/ui_base_viewmgr.cpp + efl/ui_base_key_listener.cpp + efl/ui_base_overlay.cpp + efl/mobile/ui_app.cpp + efl/mobile/ui_menu.cpp + efl/mobile/ui_popup.cpp + efl/mobile/ui_view.cpp + efl/mobile/ui_standard_view.cpp + efl/mobile/ui_key_listener.cpp + efl/mobile/ui_viewmgr.cpp + ) +ENDIF() ADD_LIBRARY(${LIBNAME} SHARED ${SRCS}) ADD_DEFINITIONS("-DEXPORT_API=__attribute__((visibility(\"default\")))")