X-Git-Url: http://git.pld-linux.org/?p=packages%2Frpm.git;a=blobdiff_plain;f=rpm-find-lang;h=b82c8637951b075b368695aa43eb3f9e1ad479ef;hp=bf84b34ebd3ed9663fcf146672c67d0cc47061ad;hb=b3f4b67879a119ac321ecb558299d287279986b4;hpb=78d02e467a7f23b48722f020e13b65e46be4ceda diff --git a/rpm-find-lang b/rpm-find-lang index bf84b34..b82c863 100644 --- a/rpm-find-lang +++ b/rpm-find-lang @@ -54,6 +54,8 @@ Additional options: --with-omf find OMF files --all-name match all package/domain names --without-mo skip *.mo locale files + -o NAME output will be saved to NAME + -a NAME output will be appended to NAME EOF exit 1 } @@ -78,15 +80,14 @@ else fi shift -echo "$PROG $VERSION: find-lang for '$NAME'" - GNOME='#' KDE='#' OMF='#' MO='' -MO_NAME=$NAME.lang +OUTPUT=$NAME.lang ALL_NAME='#' NO_ALL_NAME='' +APPEND='' while test $# -gt 0 ; do case "$1" in --with-gnome) @@ -115,13 +116,27 @@ while test $# -gt 0 ; do NO_ALL_NAME='#' shift ;; - * ) - MO_NAME=$1 + -o) + shift + OUTPUT=$1 + shift + ;; + -a) + shift + OUTPUT=$1 + APPEND='>' + shift + ;; + *) + OUTPUT=$1 shift ;; esac -done +done + +echo "$PROG/$VERSION: find-lang '$NAME' $APPEND> $OUTPUT" +MO_NAME=.$OUTPUT.tmp~ echo '%defattr(644,root,root,755)' > $MO_NAME if [ ! -f __find.files ] || [ "$TOP_DIR" -nt __find.files ]; then @@ -214,3 +229,10 @@ if [ "$(egrep -v '(^%defattr|^$)' $MO_NAME | wc -l)" -le 0 ]; then echo >&2 "$PROG: Error: international files not found for '$NAME'!" exit 1 fi + +if [ "$APPEND" ]; then + cat $MO_NAME >> $OUTPUT + rm -f $MO_NAME +else + mv -f $MO_NAME $OUTPUT +fi