1fa7767c5Sopenharmony_ci# Copyright (c) 2021-2021 Huawei Device Co., Ltd. 2fa7767c5Sopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License"); 3fa7767c5Sopenharmony_ci# you may not use this file except in compliance with the License. 4fa7767c5Sopenharmony_ci# You may obtain a copy of the License at 5fa7767c5Sopenharmony_ci# 6fa7767c5Sopenharmony_ci# http://www.apache.org/licenses/LICENSE-2.0 7fa7767c5Sopenharmony_ci# 8fa7767c5Sopenharmony_ci# Unless required by applicable law or agreed to in writing, software 9fa7767c5Sopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS, 10fa7767c5Sopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 11fa7767c5Sopenharmony_ci# See the License for the specific language governing permissions and 12fa7767c5Sopenharmony_ci# limitations under the License. 13fa7767c5Sopenharmony_ci# 14fa7767c5Sopenharmony_ciimport("//build/ohos.gni") 15fa7767c5Sopenharmony_ciimport("//foundation/multimedia/media_foundation/config.gni") 16fa7767c5Sopenharmony_ci 17fa7767c5Sopenharmony_cigroup("plugin_minimp3_adapter") { 18fa7767c5Sopenharmony_ci if (hst_is_mini_sys) { 19fa7767c5Sopenharmony_ci deps = [ ":histreamer_plugin_Minimp3_static" ] 20fa7767c5Sopenharmony_ci } else { 21fa7767c5Sopenharmony_ci deps = [ ":histreamer_plugin_Minimp3Demuxer" ] 22fa7767c5Sopenharmony_ci deps += [ ":histreamer_plugin_Minimp3Decoder" ] 23fa7767c5Sopenharmony_ci } 24fa7767c5Sopenharmony_ci} 25fa7767c5Sopenharmony_ci 26fa7767c5Sopenharmony_ciconfig("plugin_minimp3_adapter_config") { 27fa7767c5Sopenharmony_ci include_dirs = [ 28fa7767c5Sopenharmony_ci "minimp3_adapter", 29fa7767c5Sopenharmony_ci "//foundation/multimedia/media_foundation/engine/include", 30fa7767c5Sopenharmony_ci "//third_party/minimp3", 31fa7767c5Sopenharmony_ci ] 32fa7767c5Sopenharmony_ci} 33fa7767c5Sopenharmony_ci 34fa7767c5Sopenharmony_ciif (hst_is_mini_sys) { 35fa7767c5Sopenharmony_ci static_library("histreamer_plugin_Minimp3_static") { 36fa7767c5Sopenharmony_ci sources = [ 37fa7767c5Sopenharmony_ci "minimp3_decoder_plugin.cpp", 38fa7767c5Sopenharmony_ci "minimp3_demuxer_plugin.cpp", 39fa7767c5Sopenharmony_ci "minimp3_wrapper.c", 40fa7767c5Sopenharmony_ci ] 41fa7767c5Sopenharmony_ci public_configs = [ 42fa7767c5Sopenharmony_ci ":plugin_minimp3_adapter_config", 43fa7767c5Sopenharmony_ci "//foundation/multimedia/media_foundation:histreamer_presets", 44fa7767c5Sopenharmony_ci ] 45fa7767c5Sopenharmony_ci public_deps = [ 46fa7767c5Sopenharmony_ci "//foundation/multimedia/media_foundation/engine/foundation:histreamer_foundation", 47fa7767c5Sopenharmony_ci "//foundation/multimedia/media_foundation/engine/plugin:histreamer_plugin_base", 48fa7767c5Sopenharmony_ci ] 49fa7767c5Sopenharmony_ci } 50fa7767c5Sopenharmony_ci} else { 51fa7767c5Sopenharmony_ci ohos_shared_library("histreamer_plugin_Minimp3Demuxer") { 52fa7767c5Sopenharmony_ci subsystem_name = "multimedia" 53fa7767c5Sopenharmony_ci part_name = "media_foundation" 54fa7767c5Sopenharmony_ci sources = [ 55fa7767c5Sopenharmony_ci "minimp3_demuxer_plugin.cpp", 56fa7767c5Sopenharmony_ci "minimp3_wrapper.c", 57fa7767c5Sopenharmony_ci ] 58fa7767c5Sopenharmony_ci public_configs = [ 59fa7767c5Sopenharmony_ci ":plugin_minimp3_adapter_config", 60fa7767c5Sopenharmony_ci "//foundation/multimedia/media_foundation:histreamer_presets", 61fa7767c5Sopenharmony_ci ] 62fa7767c5Sopenharmony_ci public_deps = [ 63fa7767c5Sopenharmony_ci "//foundation/multimedia/media_foundation/engine/foundation:histreamer_foundation", 64fa7767c5Sopenharmony_ci "//foundation/multimedia/media_foundation/engine/plugin:histreamer_plugin_base", 65fa7767c5Sopenharmony_ci ] 66fa7767c5Sopenharmony_ci external_deps = [ "hilog:libhilog" ] 67fa7767c5Sopenharmony_ci sanitize = { 68fa7767c5Sopenharmony_ci cfi = true 69fa7767c5Sopenharmony_ci cfi_cross_dso = true 70fa7767c5Sopenharmony_ci debug = false 71fa7767c5Sopenharmony_ci integer_overflow = true 72fa7767c5Sopenharmony_ci } 73fa7767c5Sopenharmony_ci relative_install_dir = "media/histreamer_plugins" 74fa7767c5Sopenharmony_ci } 75fa7767c5Sopenharmony_ci ohos_shared_library("histreamer_plugin_Minimp3Decoder") { 76fa7767c5Sopenharmony_ci subsystem_name = "multimedia" 77fa7767c5Sopenharmony_ci part_name = "media_foundation" 78fa7767c5Sopenharmony_ci sources = [ 79fa7767c5Sopenharmony_ci "minimp3_decoder_plugin.cpp", 80fa7767c5Sopenharmony_ci "minimp3_wrapper.c", 81fa7767c5Sopenharmony_ci ] 82fa7767c5Sopenharmony_ci public_configs = [ 83fa7767c5Sopenharmony_ci ":plugin_minimp3_adapter_config", 84fa7767c5Sopenharmony_ci "//foundation/multimedia/media_foundation:histreamer_presets", 85fa7767c5Sopenharmony_ci ] 86fa7767c5Sopenharmony_ci external_deps = [ "hilog:libhilog" ] 87fa7767c5Sopenharmony_ci public_deps = [ 88fa7767c5Sopenharmony_ci "//foundation/multimedia/media_foundation/engine/foundation:histreamer_foundation", 89fa7767c5Sopenharmony_ci "//foundation/multimedia/media_foundation/engine/plugin:histreamer_plugin_intf", 90fa7767c5Sopenharmony_ci ] 91fa7767c5Sopenharmony_ci sanitize = { 92fa7767c5Sopenharmony_ci cfi = true 93fa7767c5Sopenharmony_ci cfi_cross_dso = true 94fa7767c5Sopenharmony_ci debug = false 95fa7767c5Sopenharmony_ci integer_overflow = true 96fa7767c5Sopenharmony_ci } 97fa7767c5Sopenharmony_ci relative_install_dir = "media/histreamer_plugins" 98fa7767c5Sopenharmony_ci } 99fa7767c5Sopenharmony_ci} 100