Files
libphonenumber/tools/scripts/generate_metadata.sh
2025-07-13 17:07:40 +03:00

39 lines
991 B
Bash

#!/bin/bash
filedir="./$(dirname "$0")"
javadir="$filedir/../java"
project_home="$filedir/../.."
generated_dir="$project_home/src/generated/metadata"
echo $generated_dir
resources_dir="$project_home/resources"
rust_build_jar="$javadir/rust-build/target/rust-build-1.0-SNAPSHOT-jar-with-dependencies.jar"
mvn -f "$javadir/pom.xml" install
mkdir -p "$generated_dir"
function generate {
java -jar "$rust_build_jar" \
BuildMetadataRustFromXml \
"$resources_dir/$1" \
"$generated_dir/$2.rs" \
"$3" \
"--const-name=$4"
}
# generate general metadata
generate "PhoneNumberMetadata.xml" "metadata" "metadata" "METADATA"
# generate test metadata
generate "PhoneNumberMetadataForTesting.xml" "test_metadata" "metadata" "TEST_METADATA"
# remove unnecessary nesting with pub use
echo "\
mod metadata;
mod test_metadata;
pub use metadata::METADATA;
// use only in test case
#[cfg(test)]
pub use test_metadata::TEST_METADATA;
" > "$generated_dir/mod.rs"