3 podir=${podir:-$PWD/po}
4 files=`find . -name Messages.sh`
5 dirs=`for i in $files; do echo \`dirname $i\`; done | sort -u`
6 tmpname="$PWD/messages.log"
7 EXTRACTRC=${EXTRACTRC:-extractrc}
8 EXTRACTATTR=${EXTRACTATTR:-extractattr}
9 PREPARETIPS=${PREPARETIPS:-preparetips}
10 REPACKPOT=${REPACKPOT:-repack-pot.pl}
11 export EXTRACTRC EXTRACTATTR PREPARETIPS REPACKPOT
12 IGNORE=${IGNORE:-.svn}
14 for subdir in $dirs; do
15 # skip Messages.sh files of KDevelop's app templates
16 grep '{APPNAMELC}[^ ]*.pot' $subdir/Messages.sh 1>/dev/null && continue
18 test -z "$VERBOSE" || echo "Making messages in $subdir"
20 ls -1 *.rc *.ui *.ui3 *.ui4 *.kcfg 2> /dev/null | xargs --no-run-if-empty $EXTRACTRC > rc.cpp
21 if find . -name \*.c\* -o -name \*.h\* | fgrep -v "$IGNORE" | xargs fgrep -s -q KAboutData ; then
22 echo 'i18nc("NAME OF TRANSLATORS","Your names");' >> rc.cpp
23 echo 'i18nc("EMAIL OF TRANSLATORS","Your emails");' >> rc.cpp
26 # using xgettext 0.15 or later
27 ### TODO what --flags param should be used?
28 XGETTEXT_FLAGS_QT="--from-code=UTF-8 -C --qt -ktr:1,1t -ktr:1,2c,2t -kQT_TRANSLATE_NOOP:1c,2,2t -kQT_TR_NOOP:1,1t -ktranslate:1c,2,2t -ktranslate:2,3c,3t"
29 XGETTEXT_FLAGS="--from-code=UTF-8 -C --kde -ci18n -ki18n:1 -ki18nc:1c,2 -ki18np:1,2 -ki18ncp:1c,2,3 -ktr2i18n:1 -kI18N_NOOP:1 -kI18N_NOOP2:1c,2 -kaliasLocale -kki18n:1 -kki18nc:1c,2 -kki18np:1,2 -kki18ncp:1c,2,3"
31 export XGETTEXT_FLAGS_QT
33 if test -f Messages.sh; then
34 # Note: Messages.sh is supposed to get the translators' placeholder by rc.cpp
35 podir=$podir srcdir=. XGETTEXT_PROGRAM="${XGETTEXT:-xgettext}" XGETTEXT_QT="${XGETTEXT:-xgettext} $XGETTEXT_FLAGS_QT" XGETTEXT="${XGETTEXT:-xgettext} $XGETTEXT_FLAGS" bash Messages.sh
38 if test "$exit_code" -ne 0; then
39 echo "Bash exit code: $exit_code"
44 test -s $tmpname && { echo $subdir ; cat "$tmpname"; }
47 # # Repack extracted templates.
48 # for potfile in $podir/*.pot; do