<commit_before>##
## Copyright (c) 2016, Alliance for Open Media. All rights reserved
##
## This source code is subject to the terms of the BSD 2 Clause License and
## the Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License
## was not distributed with this source code in the LICENSE file, you can
## obtain it at www.aomedia.org/license/software. If the Alliance for Open
## Media Patent License 1.0 was not distributed with this source code in the
## PATENTS file, you can obtain it at www.aomedia.org/license/patent.
##


LIBYUV_SRCS +=  third_party/libyuv/include/libyuv/basic_types.h  \
                third_party/libyuv/include/libyuv/convert.h \
                third_party/libyuv/include/libyuv/convert_argb.h \
                third_party/libyuv/include/libyuv/convert_from.h \
                third_party/libyuv/include/libyuv/cpu_id.h  \
                third_party/libyuv/include/libyuv/planar_functions.h  \
                third_party/libyuv/include/libyuv/rotate.h  \
                third_party/libyuv/include/libyuv/row.h  \
                third_party/libyuv/include/libyuv/scale.h  \
                third_party/libyuv/include/libyuv/scale_row.h  \
                third_party/libyuv/source/cpu_id.cc \
                third_party/libyuv/source/planar_functions.cc \
                third_party/libyuv/source/row_any.cc \
                third_party/libyuv/source/row_common.cc \
                third_party/libyuv/source/row_gcc.cc \
                third_party/libyuv/source/row_mips.cc \
                third_party/libyuv/source/row_neon.cc \
                third_party/libyuv/source/row_neon64.cc \
                third_party/libyuv/source/row_win.cc \
                third_party/libyuv/source/scale.cc \
                third_party/libyuv/source/scale_any.cc \
                third_party/libyuv/source/scale_common.cc \
                third_party/libyuv/source/scale_gcc.cc \
                third_party/libyuv/source/scale_mips.cc \
                third_party/libyuv/source/scale_neon.cc \
                third_party/libyuv/source/scale_neon64.cc \
                third_party/libyuv/source/scale_win.cc \

LIBWEBM_COMMON_SRCS += third_party/libwebm/webmids.hpp

LIBWEBM_MUXER_SRCS += third_party/libwebm/mkvmuxer.cpp \
                      third_party/libwebm/mkvmuxerutil.cpp \
                      third_party/libwebm/mkvwriter.cpp \
                      third_party/libwebm/mkvmuxer.hpp \
                      third_party/libwebm/mkvmuxertypes.hpp \
                      third_party/libwebm/mkvmuxerutil.hpp \
                      third_party/libwebm/mkvparser.hpp \
                      third_party/libwebm/mkvwriter.hpp

LIBWEBM_PARSER_SRCS = third_party/libwebm/mkvparser.cpp \
                      third_party/libwebm/mkvreader.cpp \
                      third_party/libwebm/mkvparser.hpp \
                      third_party/libwebm/mkvreader.hpp

# List of examples to build. UTILS are tools meant for distribution
# while EXAMPLES demonstrate specific portions of the API.
UTILS-$(CONFIG_DECODERS)    += aomdec.c
aomdec.SRCS                 += md5_utils.c md5_utils.h
aomdec.SRCS                 += aom_ports/mem_ops.h
aomdec.SRCS                 += aom_ports/mem_ops_aligned.h
aomdec.SRCS                 += aom_ports/msvc.h
aomdec.SRCS                 += aom_ports/aom_timer.h
aomdec.SRCS                 += aom/aom_integer.h
aomdec.SRCS                 += args.c args.h
aomdec.SRCS                 += ivfdec.c ivfdec.h
aomdec.SRCS                 += tools_common.c tools_common.h
aomdec.SRCS                 += y4menc.c y4menc.h
ifeq ($(CONFIG_LIBYUV),yes)
  aomdec.SRCS                 += $(LIBYUV_SRCS)
endif
ifeq ($(CONFIG_WEBM_IO),yes)
  aomdec.SRCS                 += $(LIBWEBM_COMMON_SRCS)
  aomdec.SRCS                 += $(LIBWEBM_PARSER_SRCS)
  aomdec.SRCS                 += webmdec.cc webmdec.h
endif
aomdec.GUID                  = BA5FE66F-38DD-E034-F542-B1578C5FB950
aomdec.DESCRIPTION           = Full featured decoder
UTILS-$(CONFIG_ENCODERS)    += aomenc.c
aomenc.SRCS                 += args.c args.h y4minput.c y4minput.h aomenc.h
aomenc.SRCS                 += ivfdec.c ivfdec.h
aomenc.SRCS                 += ivfenc.c ivfenc.h
aomenc.SRCS                 += rate_hist.c rate_hist.h
aomenc.SRCS                 += tools_common.c tools_common.h
aomenc.SRCS                 += warnings.c warnings.h
aomenc.SRCS                 += aom_ports/mem_ops.h
aomenc.SRCS                 += aom_ports/mem_ops_aligned.h
aomenc.SRCS                 += aom_ports/msvc.h
aomenc.SRCS                 += aom_ports/aom_timer.h
aomenc.SRCS                 += aomstats.c aomstats.h
ifeq ($(CONFIG_LIBYUV),yes)
  aomenc.SRCS                 += $(LIBYUV_SRCS)
endif
ifeq ($(CONFIG_WEBM_IO),yes)
  aomenc.SRCS                 += $(LIBWEBM_COMMON_SRCS)
  aomenc.SRCS                 += $(LIBWEBM_MUXER_SRCS)
  aomenc.SRCS                 += webmenc.cc webmenc.h
endif
aomenc.GUID                  = 548DEC74-7A15-4B2B-AFC3-AA102E7C25C1
aomenc.DESCRIPTION           = Full featured encoder

EXAMPLES-$(CONFIG_ENCODERS)          += aom_temporal_svc_encoder.c
aom_temporal_svc_encoder.SRCS        += ivfenc.c ivfenc.h
aom_temporal_svc_encoder.SRCS        += tools_common.c tools_common.h
aom_temporal_svc_encoder.SRCS        += video_common.h
aom_temporal_svc_encoder.SRCS        += video_writer.h video_writer.c
aom_temporal_svc_encoder.SRCS        += aom_ports/msvc.h
aom_temporal_svc_encoder.GUID        = B18C08F2-A439-4502-A78E-849BE3D60947
aom_temporal_svc_encoder.DESCRIPTION = Temporal SVC Encoder
EXAMPLES-$(CONFIG_DECODERS)        += simple_decoder.c
simple_decoder.GUID                 = D3BBF1E9-2427-450D-BBFF-B2843C1D44CC
simple_decoder.SRCS                += ivfdec.h ivfdec.c
simple_decoder.SRCS                += tools_common.h tools_common.c
simple_decoder.SRCS                += video_common.h
simple_decoder.SRCS                += video_reader.h video_reader.c
simple_decoder.SRCS                += aom_ports/mem_ops.h
simple_decoder.SRCS                += aom_ports/mem_ops_aligned.h
simple_decoder.SRCS                += aom_ports/msvc.h
simple_decoder.DESCRIPTION          = Simplified decoder loop
EXAMPLES-$(CONFIG_DECODERS)        += decode_to_md5.c
decode_to_md5.SRCS                 += md5_utils.h md5_utils.c
decode_to_md5.SRCS                 += ivfdec.h ivfdec.c
decode_to_md5.SRCS                 += tools_common.h tools_common.c
decode_to_md5.SRCS                 += video_common.h
decode_to_md5.SRCS                 += video_reader.h video_reader.c
decode_to_md5.SRCS                 += aom_ports/mem_ops.h
decode_to_md5.SRCS                 += aom_ports/mem_ops_aligned.h
decode_to_md5.SRCS                 += aom_ports/msvc.h
decode_to_md5.GUID                  = 59120B9B-2735-4BFE-B022-146CA340FE42
decode_to_md5.DESCRIPTION           = Frame by frame MD5 checksum
EXAMPLES-$(CONFIG_ENCODERS)     += simple_encoder.c
simple_encoder.SRCS             += ivfenc.h ivfenc.c
simple_encoder.SRCS             += tools_common.h tools_common.c
simple_encoder.SRCS             += video_common.h
simple_encoder.SRCS             += video_writer.h video_writer.c
simple_encoder.SRCS             += aom_ports/msvc.h
simple_encoder.GUID              = 4607D299-8A71-4D2C-9B1D-071899B6FBFD
simple_encoder.DESCRIPTION       = Simplified encoder loop
EXAMPLES-$(CONFIG_ENCODERS)     += twopass_encoder.c
twopass_encoder.SRCS            += ivfenc.h ivfenc.c
twopass_encoder.SRCS            += tools_common.h tools_common.c
twopass_encoder.SRCS            += video_common.h
twopass_encoder.SRCS            += video_writer.h video_writer.c
twopass_encoder.SRCS            += aom_ports/msvc.h
twopass_encoder.GUID             = 73494FA6-4AF9-4763-8FBB-265C92402FD8
twopass_encoder.DESCRIPTION      = Two-pass encoder loop
EXAMPLES-$(CONFIG_DECODERS)     += decode_with_drops.c
decode_with_drops.SRCS          += ivfdec.h ivfdec.c
decode_with_drops.SRCS          += tools_common.h tools_common.c
decode_with_drops.SRCS          += video_common.h
decode_with_drops.SRCS          += video_reader.h video_reader.c
decode_with_drops.SRCS          += aom_ports/mem_ops.h
decode_with_drops.SRCS          += aom_ports/mem_ops_aligned.h
decode_with_drops.SRCS          += aom_ports/msvc.h
decode_with_drops.GUID           = CE5C53C4-8DDA-438A-86ED-0DDD3CDB8D26
decode_with_drops.DESCRIPTION    = Drops frames while decoding
EXAMPLES-$(CONFIG_ENCODERS)        += set_maps.c
set_maps.SRCS                      += ivfenc.h ivfenc.c
set_maps.SRCS                      += tools_common.h tools_common.c
set_maps.SRCS                      += video_common.h
set_maps.SRCS                      += video_writer.h video_writer.c
set_maps.SRCS                      += aom_ports/msvc.h
set_maps.GUID                       = ECB2D24D-98B8-4015-A465-A4AF3DCC145F
set_maps.DESCRIPTION                = Set active and ROI maps
ifeq ($(CONFIG_ENCODERS),yes)
ifeq ($(CONFIG_DECODERS),yes)
EXAMPLES-$(CONFIG_ENCODERS)        += aom_cx_set_ref.c
aom_cx_set_ref.SRCS                += ivfenc.h ivfenc.c
aom_cx_set_ref.SRCS                += tools_common.h tools_common.c
aom_cx_set_ref.SRCS                += video_common.h
aom_cx_set_ref.SRCS                += video_writer.h video_writer.c
aom_cx_set_ref.SRCS                += aom_ports/msvc.h
aom_cx_set_ref.GUID                 = C5E31F7F-96F6-48BD-BD3E-10EBF6E8057A
aom_cx_set_ref.DESCRIPTION          = VP8 set encoder reference frame
endif
endif

# Handle extra library flags depending on codec configuration

# We should not link to math library (libm) on RVCT
# when building for bare-metal targets
ifeq ($(CONFIG_OS_SUPPORT), yes)
CODEC_EXTRA_LIBS-$(CONFIG_AV1)            += m
else
    ifeq ($(CONFIG_GCC), yes)
    CODEC_EXTRA_LIBS-$(CONFIG_AV1)        += m
    endif
endif
#
# End of specified files. The rest of the build rules should happen
# automagically from here.
#


# Examples need different flags based on whether we're building
# from an installed tree or a version controlled tree. Determine
# the proper paths.
ifeq ($(HAVE_ALT_TREE_LAYOUT),yes)
    LIB_PATH-yes := $(SRC_PATH_BARE)/../lib
    INC_PATH-yes := $(SRC_PATH_BARE)/../include<commit_msg>examples.mk - Invalid comment fixed.<commit_after>##
## Copyright (c) 2016, Alliance for Open Media. All rights reserved
##
## This source code is subject to the terms of the BSD 2 Clause License and
## the Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License
## was not distributed with this source code in the LICENSE file, you can
## obtain it at www.aomedia.org/license/software. If the Alliance for Open
## Media Patent License 1.0 was not distributed with this source code in the
## PATENTS file, you can obtain it at www.aomedia.org/license/patent.
##


LIBYUV_SRCS +=  third_party/libyuv/include/libyuv/basic_types.h  \
                third_party/libyuv/include/libyuv/convert.h \
                third_party/libyuv/include/libyuv/convert_argb.h \
                third_party/libyuv/include/libyuv/convert_from.h \
                third_party/libyuv/include/libyuv/cpu_id.h  \
                third_party/libyuv/include/libyuv/planar_functions.h  \
                third_party/libyuv/include/libyuv/rotate.h  \
                third_party/libyuv/include/libyuv/row.h  \
                third_party/libyuv/include/libyuv/scale.h  \
                third_party/libyuv/include/libyuv/scale_row.h  \
                third_party/libyuv/source/cpu_id.cc \
                third_party/libyuv/source/planar_functions.cc \
                third_party/libyuv/source/row_any.cc \
                third_party/libyuv/source/row_common.cc \
                third_party/libyuv/source/row_gcc.cc \
                third_party/libyuv/source/row_mips.cc \
                third_party/libyuv/source/row_neon.cc \
                third_party/libyuv/source/row_neon64.cc \
                third_party/libyuv/source/row_win.cc \
                third_party/libyuv/source/scale.cc \
                third_party/libyuv/source/scale_any.cc \
                third_party/libyuv/source/scale_common.cc \
                third_party/libyuv/source/scale_gcc.cc \
                third_party/libyuv/source/scale_mips.cc \
                third_party/libyuv/source/scale_neon.cc \
                third_party/libyuv/source/scale_neon64.cc \
                third_party/libyuv/source/scale_win.cc \

LIBWEBM_COMMON_SRCS += third_party/libwebm/webmids.hpp

LIBWEBM_MUXER_SRCS += third_party/libwebm/mkvmuxer.cpp \
                      third_party/libwebm/mkvmuxerutil.cpp \
                      third_party/libwebm/mkvwriter.cpp \
                      third_party/libwebm/mkvmuxer.hpp \
                      third_party/libwebm/mkvmuxertypes.hpp \
                      third_party/libwebm/mkvmuxerutil.hpp \
                      third_party/libwebm/mkvparser.hpp \
                      third_party/libwebm/mkvwriter.hpp

LIBWEBM_PARSER_SRCS = third_party/libwebm/mkvparser.cpp \
                      third_party/libwebm/mkvreader.cpp \
                      third_party/libwebm/mkvparser.hpp \
                      third_party/libwebm/mkvreader.hpp

# List of examples to build. UTILS are tools meant for distribution
# while EXAMPLES demonstrate specific portions of the API.
UTILS-$(CONFIG_DECODERS)    += aomdec.c
aomdec.SRCS                 += md5_utils.c md5_utils.h
aomdec.SRCS                 += aom_ports/mem_ops.h
aomdec.SRCS                 += aom_ports/mem_ops_aligned.h
aomdec.SRCS                 += aom_ports/msvc.h
aomdec.SRCS                 += aom_ports/aom_timer.h
aomdec.SRCS                 += aom/aom_integer.h
aomdec.SRCS                 += args.c args.h
aomdec.SRCS                 += ivfdec.c ivfdec.h
aomdec.SRCS                 += tools_common.c tools_common.h
aomdec.SRCS                 += y4menc.c y4menc.h
ifeq ($(CONFIG_LIBYUV),yes)
  aomdec.SRCS                 += $(LIBYUV_SRCS)
endif
ifeq ($(CONFIG_WEBM_IO),yes)
  aomdec.SRCS                 += $(LIBWEBM_COMMON_SRCS)
  aomdec.SRCS                 += $(LIBWEBM_PARSER_SRCS)
  aomdec.SRCS                 += webmdec.cc webmdec.h
endif
aomdec.GUID                  = BA5FE66F-38DD-E034-F542-B1578C5FB950
aomdec.DESCRIPTION           = Full featured decoder
UTILS-$(CONFIG_ENCODERS)    += aomenc.c
aomenc.SRCS                 += args.c args.h y4minput.c y4minput.h aomenc.h
aomenc.SRCS                 += ivfdec.c ivfdec.h
aomenc.SRCS                 += ivfenc.c ivfenc.h
aomenc.SRCS                 += rate_hist.c rate_hist.h
aomenc.SRCS                 += tools_common.c tools_common.h
aomenc.SRCS                 += warnings.c warnings.h
aomenc.SRCS                 += aom_ports/mem_ops.h
aomenc.SRCS                 += aom_ports/mem_ops_aligned.h
aomenc.SRCS                 += aom_ports/msvc.h
aomenc.SRCS                 += aom_ports/aom_timer.h
aomenc.SRCS                 += aomstats.c aomstats.h
ifeq ($(CONFIG_LIBYUV),yes)
  aomenc.SRCS                 += $(LIBYUV_SRCS)
endif
ifeq ($(CONFIG_WEBM_IO),yes)
  aomenc.SRCS                 += $(LIBWEBM_COMMON_SRCS)
  aomenc.SRCS                 += $(LIBWEBM_MUXER_SRCS)
  aomenc.SRCS                 += webmenc.cc webmenc.h
endif
aomenc.GUID                  = 548DEC74-7A15-4B2B-AFC3-AA102E7C25C1
aomenc.DESCRIPTION           = Full featured encoder

EXAMPLES-$(CONFIG_ENCODERS)          += aom_temporal_svc_encoder.c
aom_temporal_svc_encoder.SRCS        += ivfenc.c ivfenc.h
aom_temporal_svc_encoder.SRCS        += tools_common.c tools_common.h
aom_temporal_svc_encoder.SRCS        += video_common.h
aom_temporal_svc_encoder.SRCS        += video_writer.h video_writer.c
aom_temporal_svc_encoder.SRCS        += aom_ports/msvc.h
aom_temporal_svc_encoder.GUID        = B18C08F2-A439-4502-A78E-849BE3D60947
aom_temporal_svc_encoder.DESCRIPTION = Temporal SVC Encoder
EXAMPLES-$(CONFIG_DECODERS)        += simple_decoder.c
simple_decoder.GUID                 = D3BBF1E9-2427-450D-BBFF-B2843C1D44CC
simple_decoder.SRCS                += ivfdec.h ivfdec.c
simple_decoder.SRCS                += tools_common.h tools_common.c
simple_decoder.SRCS                += video_common.h
simple_decoder.SRCS                += video_reader.h video_reader.c
simple_decoder.SRCS                += aom_ports/mem_ops.h
simple_decoder.SRCS                += aom_ports/mem_ops_aligned.h
simple_decoder.SRCS                += aom_ports/msvc.h
simple_decoder.DESCRIPTION          = Simplified decoder loop
EXAMPLES-$(CONFIG_DECODERS)        += decode_to_md5.c
decode_to_md5.SRCS                 += md5_utils.h md5_utils.c
decode_to_md5.SRCS                 += ivfdec.h ivfdec.c
decode_to_md5.SRCS                 += tools_common.h tools_common.c
decode_to_md5.SRCS                 += video_common.h
decode_to_md5.SRCS                 += video_reader.h video_reader.c
decode_to_md5.SRCS                 += aom_ports/mem_ops.h
decode_to_md5.SRCS                 += aom_ports/mem_ops_aligned.h
decode_to_md5.SRCS                 += aom_ports/msvc.h
decode_to_md5.GUID                  = 59120B9B-2735-4BFE-B022-146CA340FE42
decode_to_md5.DESCRIPTION           = Frame by frame MD5 checksum
EXAMPLES-$(CONFIG_ENCODERS)     += simple_encoder.c
simple_encoder.SRCS             += ivfenc.h ivfenc.c
simple_encoder.SRCS             += tools_common.h tools_common.c
simple_encoder.SRCS             += video_common.h
simple_encoder.SRCS             += video_writer.h video_writer.c
simple_encoder.SRCS             += aom_ports/msvc.h
simple_encoder.GUID              = 4607D299-8A71-4D2C-9B1D-071899B6FBFD
simple_encoder.DESCRIPTION       = Simplified encoder loop
EXAMPLES-$(CONFIG_ENCODERS)     += twopass_encoder.c
twopass_encoder.SRCS            += ivfenc.h ivfenc.c
twopass_encoder.SRCS            += tools_common.h tools_common.c
twopass_encoder.SRCS            += video_common.h
twopass_encoder.SRCS            += video_writer.h video_writer.c
twopass_encoder.SRCS            += aom_ports/msvc.h
twopass_encoder.GUID             = 73494FA6-4AF9-4763-8FBB-265C92402FD8
twopass_encoder.DESCRIPTION      = Two-pass encoder loop
EXAMPLES-$(CONFIG_DECODERS)     += decode_with_drops.c
decode_with_drops.SRCS          += ivfdec.h ivfdec.c
decode_with_drops.SRCS          += tools_common.h tools_common.c
decode_with_drops.SRCS          += video_common.h
decode_with_drops.SRCS          += video_reader.h video_reader.c
decode_with_drops.SRCS          += aom_ports/mem_ops.h
decode_with_drops.SRCS          += aom_ports/mem_ops_aligned.h
decode_with_drops.SRCS          += aom_ports/msvc.h
decode_with_drops.GUID           = CE5C53C4-8DDA-438A-86ED-0DDD3CDB8D26
decode_with_drops.DESCRIPTION    = Drops frames while decoding
EXAMPLES-$(CONFIG_ENCODERS)        += set_maps.c
set_maps.SRCS                      += ivfenc.h ivfenc.c
set_maps.SRCS                      += tools_common.h tools_common.c
set_maps.SRCS                      += video_common.h
set_maps.SRCS                      += video_writer.h video_writer.c
set_maps.SRCS                      += aom_ports/msvc.h
set_maps.GUID                       = ECB2D24D-98B8-4015-A465-A4AF3DCC145F
set_maps.DESCRIPTION                = Set active and ROI maps
ifeq ($(CONFIG_ENCODERS),yes)
ifeq ($(CONFIG_DECODERS),yes)
EXAMPLES-$(CONFIG_ENCODERS)        += aom_cx_set_ref.c
aom_cx_set_ref.SRCS                += ivfenc.h ivfenc.c
aom_cx_set_ref.SRCS                += tools_common.h tools_common.c
aom_cx_set_ref.SRCS                += video_common.h
aom_cx_set_ref.SRCS                += video_writer.h video_writer.c
aom_cx_set_ref.SRCS                += aom_ports/msvc.h
aom_cx_set_ref.GUID                 = C5E31F7F-96F6-48BD-BD3E-10EBF6E8057A
aom_cx_set_ref.DESCRIPTION          = AV1 set encoder reference frame
endif
endif

# Handle extra library flags depending on codec configuration

# We should not link to math library (libm) on RVCT
# when building for bare-metal targets
ifeq ($(CONFIG_OS_SUPPORT), yes)
CODEC_EXTRA_LIBS-$(CONFIG_AV1)            += m
else
    ifeq ($(CONFIG_GCC), yes)
    CODEC_EXTRA_LIBS-$(CONFIG_AV1)        += m
    endif
endif
#
# End of specified files. The rest of the build rules should happen
# automagically from here.
#


# Examples need different flags based on whether we're building
# from an installed tree or a version controlled tree. Determine
# the proper paths.
ifeq ($(HAVE_ALT_TREE_LAYOUT),yes)
    LIB_PATH-yes := $(SRC_PATH_BARE)/../lib
    INC_PATH-yes := $(SRC_PATH_BARE)/../include
{'fraction_non_alphanumeric': 0.0868135643127055, 'fraction_numerical': 0.022476321342690286, 'mean_word_length': 2.0913228155339807, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 4, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '3334331', 'n_tokens_mistral': 7493, 'n_tokens_neox': 7066, 'n_words': 1050}