From: Sangchul Lee Date: Mon, 17 Apr 2023 02:44:59 +0000 (+0900) Subject: Apply new TIZEN_FEATURE_SIGNALING definition X-Git-Tag: accepted/tizen/unified/20230417.140305^0 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=2cc7b2f9abbccc12f778f31c63e50bbc82c8e15e;p=platform%2Fcore%2Fapi%2Fwebrtc.git Apply new TIZEN_FEATURE_SIGNALING definition [Version] 0.4.10 [Issue Type] Feature Change-Id: Ic5d5e7be966883af356734cd627be3fabccd23b3 Signed-off-by: Sangchul Lee --- diff --git a/CMakeLists.txt b/CMakeLists.txt index 364aebb0..26710090 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -11,9 +11,8 @@ SET(INC_DIR include) INCLUDE_DIRECTORIES(${INC_DIR}) SET(dependents "dlog glib-2.0 gstreamer-1.0 gstreamer-webrtc-1.0 gstreamer-video-1.0 gstreamer-audio-1.0 \ - gstreamer-allocators-1.0 libpulse json-glib-1.0 iniparser mm-common mm-display-interface capi-media-tool \ - libtbm libwebsockets cynara-client libsmack capi-system-info libsoup-2.4 bundle capi-media-sound-manager \ - mm-fileinfo") + gstreamer-allocators-1.0 libpulse json-glib-1.0 iniparser mm-common mm-display-interface capi-media-tool \ + libtbm cynara-client libsmack capi-system-info bundle capi-media-sound-manager mm-fileinfo") IF(NOT TIZEN_PROFILE_TV) SET(dependents "${dependents} mm-resource-manager") IF(TIZEN_FEATURE_UI) @@ -33,6 +32,10 @@ IF(TIZEN_FEATURE_SNAPSHOT) ADD_DEFINITIONS("-DTIZEN_FEATURE_SNAPSHOT") SET(dependents "${dependents} mmutil-common mmutil-imgp mmutil-jpeg mmutil-magick") ENDIF() +IF(TIZEN_FEATURE_SIGNALING) + ADD_DEFINITIONS("-DTIZEN_FEATURE_SIGNALING") + SET(dependents "${dependents} libwebsockets libsoup-2.4") +ENDIF() SET(pc_dependents "capi-base-common capi-media-sound-manager capi-media-tool bundle" ) @@ -70,6 +73,9 @@ ENDIF() IF(NOT TIZEN_FEATURE_SNAPSHOT) LIST(REMOVE_ITEM SOURCES src/webrtc_sink_snapshot.c) ENDIF() +IF(NOT TIZEN_FEATURE_SIGNALING) + LIST(REMOVE_ITEM SOURCES src/webrtc_websocket.c src/webrtc_signaling_client.c src/webrtc_signaling_server.c) +ENDIF() ADD_LIBRARY(${fw_name} SHARED ${SOURCES}) @@ -101,7 +107,9 @@ CONFIGURE_FILE( ) INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/${fw_name}.pc DESTINATION ${LIB_INSTALL_DIR}/pkgconfig) -ADD_SUBDIRECTORY(test) +IF(TIZEN_FEATURE_SIGNALING) + ADD_SUBDIRECTORY(test) +ENDIF() IF(UNIX) diff --git a/include/webrtc_private.h b/include/webrtc_private.h index 24a2acf3..766fdfc5 100644 --- a/include/webrtc_private.h +++ b/include/webrtc_private.h @@ -30,8 +30,10 @@ #include #endif #include +#ifdef TIZEN_FEATURE_SIGNALING #include #include +#endif #ifdef TIZEN_FEATURE_DNS #include #endif @@ -675,11 +677,12 @@ typedef struct { const char *encoding_name; int clock_rate; } rtp_payload_info_s; - +#ifdef TIZEN_FEATURE_SIGNALING typedef struct _webrtc_websocket_s { GMutex mutex; struct lws_context *context; } webrtc_websocket_s; +#endif /* ini */ void _load_ini(webrtc_s *webrtc); @@ -865,13 +868,14 @@ int _register_dns_service(webrtc_s *webrtc); void _unregister_dns_service(webrtc_s *webrtc); gchar *_replace_ip_with_hostname(webrtc_s *webrtc, const gchar *candidate); +#ifdef TIZEN_FEATURE_SIGNALING /* websocket*/ typedef int (*_websocket_cb)(struct lws *wsi, enum lws_callback_reasons reason, void *user, void *in, size_t len); webrtc_websocket_s *_alloc_websocket(const int port, const char *ssl_cert_path, const char *ssl_private_key_path, const char *ssl_ca_path, _websocket_cb callback, void *user_data); void _release_websocket(webrtc_websocket_s *ws); int _start_websocket(webrtc_websocket_s *ws, int timeout_ms); int _stop_websocket(webrtc_websocket_s *ws); - +#endif /* restriction */ int _check_privilege(const char *privilege); int _check_feature(const char *feature); diff --git a/packaging/capi-media-webrtc.spec b/packaging/capi-media-webrtc.spec index 287d8389..02367f41 100644 --- a/packaging/capi-media-webrtc.spec +++ b/packaging/capi-media-webrtc.spec @@ -1,6 +1,6 @@ Name: capi-media-webrtc Summary: A WebRTC library in Tizen Native API -Version: 0.4.9 +Version: 0.4.10 Release: 0 Group: Multimedia/API License: Apache-2.0 @@ -23,12 +23,14 @@ BuildRequires: pkgconfig(libpulse) BuildRequires: pkgconfig(appcore-efl) BuildRequires: pkgconfig(elementary) BuildRequires: pkgconfig(json-glib-1.0) -BuildRequires: pkgconfig(libsoup-2.4) BuildRequires: pkgconfig(iniparser) BuildRequires: pkgconfig(mm-display-interface) BuildRequires: pkgconfig(mm-common) BuildRequires: pkgconfig(libtbm) +%if "%{without_signaling}" != "1" +BuildRequires: pkgconfig(libsoup-2.4) BuildRequires: pkgconfig(libwebsockets) +%endif BuildRequires: pkgconfig(cynara-client) BuildRequires: pkgconfig(libsmack) BuildRequires: pkgconfig(capi-system-info) @@ -70,9 +72,7 @@ Requires: %{name} = %{version}-%{release} %description test Testsuite of Tizen Native WebRTC API. -%if "%{test_espp_render}" == "1" -#not including webrtc-test-headless with this condition -%else +%if "%{test_espp_render}" != "1" %package test-headless Summary: Testsuite of Tizen Native WebRTC API (For headless target) Group: Multimedia/Development @@ -136,6 +136,11 @@ MAJORVER=`echo %{version} | awk 'BEGIN {FS="."}{print $1}'` %else -DTIZEN_FEATURE_SNAPSHOT=on \ %endif +%if "%{without_signaling}" == "1" +-DTIZEN_FEATURE_SIGNALING=off \ +%else +-DTIZEN_FEATURE_SIGNALING=on \ +%endif make %{?jobs:-j%jobs} @@ -167,14 +172,14 @@ find . -name '*.gcno' -exec cp --parents '{}' "$gcno_obj_dir" ';' %{_libdir}/pkgconfig/*.pc %{_libdir}/lib%{name}.so +%if "%{without_signaling}" != "1" %files test %manifest %{name}-test.manifest %{_bindir}/webrtc_test %license LICENSE.APLv2 +%endif -%if "%{test_espp_render}" == "1" -#not including webrtc_test_headless with this condition -%else +%if "%{test_espp_render}" != "1" && "%{without_signaling}" != "1" %files test-headless %manifest %{name}-test-headless.manifest %{_bindir}/webrtc_test_headless