# Copyright (c) 2023 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("//build/ohos.gni") config("astc_encoder_config") { include_dirs = [ "//third_party/astc-encoder/Source" ] } ohos_source_set("astc_encoder_static") { public_configs = [ ":astc_encoder_config" ] sources = [ "//third_party/astc-encoder/Source/astcenc_averages_and_directions.cpp", "//third_party/astc-encoder/Source/astcenc_block_sizes.cpp", "//third_party/astc-encoder/Source/astcenc_color_quantize.cpp", "//third_party/astc-encoder/Source/astcenc_color_unquantize.cpp", "//third_party/astc-encoder/Source/astcenc_compress_symbolic.cpp", "//third_party/astc-encoder/Source/astcenc_compute_variance.cpp", "//third_party/astc-encoder/Source/astcenc_decompress_symbolic.cpp", "//third_party/astc-encoder/Source/astcenc_diagnostic_trace.cpp", "//third_party/astc-encoder/Source/astcenc_entry.cpp", "//third_party/astc-encoder/Source/astcenc_find_best_partitioning.cpp", "//third_party/astc-encoder/Source/astcenc_ideal_endpoints_and_weights.cpp", "//third_party/astc-encoder/Source/astcenc_image.cpp", "//third_party/astc-encoder/Source/astcenc_integer_sequence.cpp", "//third_party/astc-encoder/Source/astcenc_mathlib.cpp", "//third_party/astc-encoder/Source/astcenc_mathlib_softfloat.cpp", "//third_party/astc-encoder/Source/astcenc_partition_tables.cpp", "//third_party/astc-encoder/Source/astcenc_percentile_tables.cpp", "//third_party/astc-encoder/Source/astcenc_pick_best_endpoint_format.cpp", "//third_party/astc-encoder/Source/astcenc_quantization.cpp", "//third_party/astc-encoder/Source/astcenc_symbolic_physical.cpp", "//third_party/astc-encoder/Source/astcenc_weight_align.cpp", "//third_party/astc-encoder/Source/astcenc_weight_quant_xfer_tables.cpp", ] if (defined(global_parts_info) && (defined(global_parts_info.graphic_graphic_2d_ext) || defined(global_parts_info.product_hmos_sdk_product_hmos_sdk))) { defines = [ "ASTC_CUSTOMIZED_ENABLE" ] } if (defined(global_parts_info) && defined(global_parts_info.product_hmos_sdk_product_hmos_sdk)) { defines += [ "BUILD_HMOS_SDK" ] } part_name = "astc-encoder" subsystem_name = "thirdparty" } ohos_shared_library("astc_encoder_shared") { public_configs = [ ":astc_encoder_config" ] deps = [ ":astc_encoder_static" ] install_enable = true part_name = "astc-encoder" innerapi_tags = [ "platformsdk" ] subsystem_name = "thirdparty" install_images = [ "system" ] }