blob: b83b96679919944aa9fdf6fa84b549719097dace [file] [log] [blame]
#!/bin/bash
# Copyright 2022 The Chromium OS Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
# This script generates CrOS specific files for camera metadata tags with mako
# and specs/scripts from Android. Checkout AOSP system/media/camera/docs folder
# to a desired branch before running this script.
if [[ -z $1 ]]; then
echo "Usage: $0 <path_to_android_system_media_camera_docs>"
exit 1
fi
BASE_DIR="$(dirname $(realpath "$0"))"
CAMERA_DOCS_DIR="$1"
function gen_file_abs() {
local in="$1"
local out="$2"
local hal_version="${3:-3.2}"
local spec_file="${CAMERA_DOCS_DIR}/metadata_definitions.xml"
python3 "${CAMERA_DOCS_DIR}/metadata_parser_xml.py" \
"${spec_file}" "${in}" "${out}" "${hal_version}"
local succ=$?
if [[ ${succ} -eq 0 ]]; then
echo "OK: Generated $(realpath ${out})"
else
echo "FAIL: Errors while generating $(realpath ${out})"
fi
return ${succ}
}
gen_file_abs "${BASE_DIR}/camera_metadata_tags.mojom.mako" \
"${BASE_DIR}/camera_metadata_tags.mojom" || exit 1
gen_file_abs "${BASE_DIR}/CameraMetadataTagsVerifier.mako" \
"${BASE_DIR}/CameraMetadataTagsVerifier.cc" || exit 1