# Copyright (c) 2021-2021 Huawei Device Co., Ltd. # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # import("//foundation/multimedia/histreamer/config.gni") group("plugin_http_source") { deps = [ ":histreamer_plugin_HttpSource" ] } config("plugin_http_source_config") { include_dirs = [ "//third_party/curl/include", "//foundation/multimedia/histreamer/engine/include", ] } ohos_source_set("httpsource") { subsystem_name = "multimedia" part_name = "histreamer" sources = [ "download/downloader.cpp", "download/http_curl_client.cpp", "hls/hls_media_downloader.cpp", "hls/hls_playlist_downloader.cpp", "hls/hls_tags.cpp", "hls/m3u8.cpp", "hls/playlist_downloader.cpp", "http/http_media_downloader.cpp", "http_source_plugin.cpp", "monitor/download_monitor.cpp", ] public_deps = [ "//foundation/multimedia/histreamer/engine/foundation:histreamer_foundation", "//foundation/multimedia/histreamer/engine/plugin:histreamer_plugin_base", ] if (!hst_is_lite_sys) { external_deps = [ "graphic_2d:surface" ] } if (hst_is_lite_sys) { if (ohos_kernel_type == "liteos_m") { public_deps += [ "//third_party/curl:libcurl_static" ] } else { public_deps += [ "//third_party/curl:libcurl_shared" ] } } else { public_deps += [ "//third_party/curl:curl_shared" ] } public_configs = [ ":plugin_http_source_config", "//foundation/multimedia/histreamer:histreamer_presets", ] } if (hst_is_lite_sys) { # lite import("//build/lite/config/component/lite_component.gni") lite_library("histreamer_plugin_HttpSource") { if (ohos_kernel_type == "liteos_m") { target_type = "static_library" } else { target_type = "shared_library" } sources = [] deps = [ ":httpsource" ] } } else { # standard import("//build/ohos.gni") ohos_shared_library("histreamer_plugin_HttpSource") { sanitize = { cfi = true cfi_cross_dso = true debug = false integer_overflow = true } deps = [ ":httpsource" ] relative_install_dir = "media/histreamer_plugins" subsystem_name = "multimedia" part_name = "histreamer" } }