15f9996aaSopenharmony_ci# 25f9996aaSopenharmony_ci# Copyright (c) 2020 Huawei Device Co., Ltd. 35f9996aaSopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License"); 45f9996aaSopenharmony_ci# you may not use this file except in compliance with the License. 55f9996aaSopenharmony_ci# You may obtain a copy of the License at 65f9996aaSopenharmony_ci# 75f9996aaSopenharmony_ci# http://www.apache.org/licenses/LICENSE-2.0 85f9996aaSopenharmony_ci# 95f9996aaSopenharmony_ci# Unless required by applicable law or agreed to in writing, software 105f9996aaSopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS, 115f9996aaSopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 125f9996aaSopenharmony_ci# See the License for the specific language governing permissions and 135f9996aaSopenharmony_ci# limitations under the License. 145f9996aaSopenharmony_ci# 155f9996aaSopenharmony_ci 165f9996aaSopenharmony_ciimport("//build/lite/config/component/lite_component.gni") 175f9996aaSopenharmony_ciimport("//build/lite/ndk/ndk.gni") 185f9996aaSopenharmony_ci 195f9996aaSopenharmony_ciconfig("cjson_config") { 205f9996aaSopenharmony_ci include_dirs = [ "//third_party/cJSON" ] 215f9996aaSopenharmony_ci ldflags = [ "-lm" ] 225f9996aaSopenharmony_ci defines = [ "CJSON_NESTING_LIMIT=(128)" ] 235f9996aaSopenharmony_ci if (board_toolchain_type == "iccarm") { 245f9996aaSopenharmony_ci cflags = [ 255f9996aaSopenharmony_ci "--diag_suppress", 265f9996aaSopenharmony_ci "Pa084", 275f9996aaSopenharmony_ci ] 285f9996aaSopenharmony_ci } 295f9996aaSopenharmony_ci} 305f9996aaSopenharmony_ci 315f9996aaSopenharmony_cicjson_sources = [ 325f9996aaSopenharmony_ci "//third_party/cJSON/cJSON.c", 335f9996aaSopenharmony_ci "//third_party/cJSON/cJSON_Utils.c", 345f9996aaSopenharmony_ci] 355f9996aaSopenharmony_ci 365f9996aaSopenharmony_cilite_library("cjson_static") { 375f9996aaSopenharmony_ci target_type = "static_library" 385f9996aaSopenharmony_ci sources = cjson_sources 395f9996aaSopenharmony_ci public_configs = [ ":cjson_config" ] 405f9996aaSopenharmony_ci} 415f9996aaSopenharmony_ci 425f9996aaSopenharmony_cilite_library("cjson_shared") { 435f9996aaSopenharmony_ci target_type = "shared_library" 445f9996aaSopenharmony_ci sources = cjson_sources 455f9996aaSopenharmony_ci public_configs = [ ":cjson_config" ] 465f9996aaSopenharmony_ci} 475f9996aaSopenharmony_ci 485f9996aaSopenharmony_cindk_lib("cjson_ndk") { 495f9996aaSopenharmony_ci if (board_name != "hispark_pegasus") { 505f9996aaSopenharmony_ci lib_extension = ".so" 515f9996aaSopenharmony_ci deps = [ ":cjson_shared" ] 525f9996aaSopenharmony_ci } else { 535f9996aaSopenharmony_ci deps = [ ":cjson_static" ] 545f9996aaSopenharmony_ci } 555f9996aaSopenharmony_ci head_files = [ 565f9996aaSopenharmony_ci "//third_party/cJSON/cJSON.h", 575f9996aaSopenharmony_ci "//third_party/cJSON/cJSON_Utils.h", 585f9996aaSopenharmony_ci ] 595f9996aaSopenharmony_ci} 60