From 209da07e4cdeac696239def7bc9debae594ec64c Mon Sep 17 00:00:00 2001 From: =?utf8?q?Elan=20Ruusam=C3=A4e?= Date: Mon, 29 May 2006 06:47:19 +0000 Subject: [PATCH] - small speedup for find_lang when invoked dozens of times (fe kdemodule-i18n) Changed files: rpm-find_lang.patch -> 1.1 --- rpm-find_lang.patch | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 rpm-find_lang.patch diff --git a/rpm-find_lang.patch b/rpm-find_lang.patch new file mode 100644 index 0000000..66bed7c --- /dev/null +++ b/rpm-find_lang.patch @@ -0,0 +1,36 @@ +--- rpm-4.4.2/scripts/find-lang.sh 2006-05-29 09:45:00.684999558 +0300 ++++ /usr/lib/rpm/find-lang.sh 2006-05-28 21:11:34.132617298 +0300 +@@ -97,7 +97,11 @@ + + echo '%defattr(644,root,root,755)' > $MO_NAME + +-find $TOP_DIR -type f -name \*.mo | xargs -r file | egrep -v ', 1 messages$' |\ ++if [ ! -f find_lang.mo.cache ]; then ++ find $TOP_DIR -type f -name \*.mo > find_lang.mo.cache ++fi ++ ++cat find_lang.mo.cache | xargs -r file | egrep -v ', 1 messages$' |\ + sed ' + s/:.*// + s:'"$TOP_DIR"':: +@@ -107,7 +111,10 @@ + s:%lang(C) :: + s:^\$::' | egrep -v '^$' >> $MO_NAME + +-find $TOP_DIR -type d|sed ' ++if [ ! -f find_lang.dir.cache ]; then ++ find $TOP_DIR -type d > find_lang.dir.cache ++fi ++cat find_lang.dir.cache | sed ' + s:'"$TOP_DIR"':: + '"$NO_ALL_NAME$GNOME"'s:\(.*/gnome/help/'"$NAME"'$\):%dir \1: + '"$NO_ALL_NAME$GNOME"'s:\(.*/gnome/help/'"$NAME"'/[a-zA-Z0-9.\_\-]/.\+\):: +@@ -119,7 +126,7 @@ + s:^\([^%].*\):: + s:%lang(C) ::' | egrep -v '^$' >> $MO_NAME + +-find $TOP_DIR -type d|sed ' ++cat find_lang.dir.cache | sed ' + s:'"$TOP_DIR"':: + '"$NO_ALL_NAME$KDE"'s:\(.*/doc/kde/HTML/\)\([^/_]\+\)\(.*/'"$NAME"'/\):: + '"$NO_ALL_NAME$KDE"'s:\(.*/doc/kde/HTML/\)\([^/_]\+\)\(.*/'"$NAME"'\)$:%lang(\2) \1\2\3: -- 2.44.0