// Copyright 2019 The Android Open Source Project
//
// 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.

cc_library_static {
    name: "libgav1",
    vendor_available: true,

    export_include_dirs: [
        ".",
    ],

    cflags: [
        "-DLIBGAV1_MAX_BITDEPTH=10",
        "-O2",
        "-Wall",
        "-Werror",
        "-Wextra",
    ],

    local_include_dirs: [
        "libgav1",
    ],

    // Note: if optimizations are required for x86 the sse4 files should be
    // split to their own target to receive the correct flagging. All files in
    // the library can be built for any target without producing empty object
    // files.
    srcs: [
        "libgav1/src/buffer_pool.cc",
        "libgav1/src/decoder.cc",
        "libgav1/src/decoder_impl.cc",
        "libgav1/src/dsp/arm/average_blend_neon.cc",
        "libgav1/src/dsp/arm/convolve_neon.cc",
        "libgav1/src/dsp/arm/distance_weighted_blend_neon.cc",
        "libgav1/src/dsp/arm/intra_edge_neon.cc",
        "libgav1/src/dsp/arm/intrapred_cfl_neon.cc",
        "libgav1/src/dsp/arm/intrapred_directional_neon.cc",
        "libgav1/src/dsp/arm/intrapred_filter_intra_neon.cc",
        "libgav1/src/dsp/arm/intrapred_neon.cc",
        "libgav1/src/dsp/arm/intrapred_smooth_neon.cc",
        "libgav1/src/dsp/arm/inverse_transform_neon.cc",
        "libgav1/src/dsp/arm/loop_filter_neon.cc",
        "libgav1/src/dsp/arm/loop_restoration_neon.cc",
        "libgav1/src/dsp/arm/mask_blend_neon.cc",
        "libgav1/src/dsp/arm/obmc_neon.cc",
        "libgav1/src/dsp/arm/warp_neon.cc",
        "libgav1/src/dsp/average_blend.cc",
        "libgav1/src/dsp/cdef.cc",
        "libgav1/src/dsp/constants.cc",
        "libgav1/src/dsp/convolve.cc",
        "libgav1/src/dsp/cpu.cc",
        "libgav1/src/dsp/distance_weighted_blend.cc",
        "libgav1/src/dsp/dsp.cc",
        "libgav1/src/dsp/film_grain.cc",
        "libgav1/src/dsp/intra_edge.cc",
        "libgav1/src/dsp/intrapred.cc",
        "libgav1/src/dsp/inverse_transform.cc",
        "libgav1/src/dsp/loop_filter.cc",
        "libgav1/src/dsp/loop_restoration.cc",
        "libgav1/src/dsp/mask_blend.cc",
        "libgav1/src/dsp/obmc.cc",
        "libgav1/src/dsp/warp.cc",
        "libgav1/src/dsp/x86/average_blend_sse4.cc",
        "libgav1/src/dsp/x86/convolve_sse4.cc",
        "libgav1/src/dsp/x86/distance_weighted_blend_sse4.cc",
        "libgav1/src/dsp/x86/intra_edge_sse4.cc",
        "libgav1/src/dsp/x86/intrapred_cfl_sse4.cc",
        "libgav1/src/dsp/x86/intrapred_smooth_sse4.cc",
        "libgav1/src/dsp/x86/intrapred_sse4.cc",
        "libgav1/src/dsp/x86/inverse_transform_sse4.cc",
        "libgav1/src/dsp/x86/loop_filter_sse4.cc",
        "libgav1/src/dsp/x86/loop_restoration_sse4.cc",
        "libgav1/src/dsp/x86/obmc_sse4.cc",
        "libgav1/src/internal_frame_buffer_list.cc",
        "libgav1/src/loop_filter_mask.cc",
        "libgav1/src/loop_restoration_info.cc",
        "libgav1/src/motion_vector.cc",
        "libgav1/src/obu_parser.cc",
        "libgav1/src/post_filter.cc",
        "libgav1/src/prediction_mask.cc",
        "libgav1/src/quantizer.cc",
        "libgav1/src/reconstruction.cc",
        "libgav1/src/residual_buffer_pool.cc",
        "libgav1/src/symbol_decoder_context.cc",
        "libgav1/src/threading_strategy.cc",
        "libgav1/src/tile/bitstream/mode_info.cc",
        "libgav1/src/tile/bitstream/palette.cc",
        "libgav1/src/tile/bitstream/partition.cc",
        "libgav1/src/tile/bitstream/transform_size.cc",
        "libgav1/src/tile/prediction.cc",
        "libgav1/src/tile/tile.cc",
        "libgav1/src/utils/bit_reader.cc",
        "libgav1/src/utils/block_parameters_holder.cc",
        "libgav1/src/utils/constants.cc",
        "libgav1/src/utils/entropy_decoder.cc",
        "libgav1/src/utils/executor.cc",
        "libgav1/src/utils/logging.cc",
        "libgav1/src/utils/parameter_tree.cc",
        "libgav1/src/utils/raw_bit_reader.cc",
        "libgav1/src/utils/segmentation.cc",
        "libgav1/src/utils/segmentation_map.cc",
        "libgav1/src/utils/threadpool.cc",
        "libgav1/src/warp_prediction.cc",
        "libgav1/src/yuv_buffer.cc",
    ],

    arch: {
        arm: {
            instruction_set: "arm",
        },
    },
}
