Initial checkin
This commit is contained in:
38
scripts/dbus-codegen
Executable file
38
scripts/dbus-codegen
Executable file
@@ -0,0 +1,38 @@
|
||||
#!/bin/sh
|
||||
|
||||
specs="telepathy-spec/spec"
|
||||
dest="src/telepathy"
|
||||
modfile="$dest.rs"
|
||||
|
||||
#if [ -d "$dest" ]; then
|
||||
# mv "$dest" "$dest.$$"
|
||||
#fi
|
||||
|
||||
rm -f "$dest.rs"
|
||||
rm -rf "$dest"
|
||||
mkdir -p "$dest"
|
||||
|
||||
echo "#![allow(unused)]\n#![allow(clippy::all)]" > "$modfile"
|
||||
|
||||
for file in $(ls -a $specs/*.xml); do
|
||||
sed -i 's/tp:type=/tp:typehint=/g' "$file"
|
||||
|
||||
name=$( \
|
||||
echo $(basename "$file") | \
|
||||
tr '[:upper:]' '[:lower:]' | \
|
||||
tr '-' '_' | \
|
||||
sed --expression 's/\.xml$//' \
|
||||
)
|
||||
out="$dest/$name.rs"
|
||||
|
||||
dbus-codegen-rust \
|
||||
--file "$file" \
|
||||
-i "org.freedesktop.Telepathy" \
|
||||
-o "$out"
|
||||
|
||||
rustfmt $out
|
||||
|
||||
echo "\nmod $name;\npub use self::$name::*;" >> "$modfile"
|
||||
done
|
||||
|
||||
git -C telepathy-spec checkout -- .
|
Reference in New Issue
Block a user