[Xfce4-commits] <xfce4-appfinder:xfce-4.6> Automate the LINGUAS parsing.

Nick Schermer noreply at xfce.org
Tue May 18 21:30:05 CEST 2010


Updating branch refs/heads/xfce-4.6
         to 3c14a4944b6d33fd816aa8c56fcd13c6fd4a9e60 (commit)
       from a5ad3e1602267d5f6e533e811eb201c9777c69ca (commit)

commit 3c14a4944b6d33fd816aa8c56fcd13c6fd4a9e60
Author: Nick Schermer <nick at xfce.org>
Date:   Tue May 18 21:29:52 2010 +0200

    Automate the LINGUAS parsing.

 autogen.sh |   65 +++++++++++++++++++++++++++++++++++++----------------------
 po/LINGUAS |    2 -
 2 files changed, 41 insertions(+), 26 deletions(-)

diff --git a/autogen.sh b/autogen.sh
index c0ed6ef..ba1a279 100755
--- a/autogen.sh
+++ b/autogen.sh
@@ -1,11 +1,6 @@
 #!/bin/sh
 #
-# $Id$
-#
-# Copyright (c) 2002-2008
-#         The Xfce development team. All rights reserved.
-#
-# Written for Xfce by Benedikt Meurer <benny at xfce.org>.
+# Copyright (c) 2002-2010 Xfce Development Team
 #
 
 (type xdt-autogen) >/dev/null 2>&1 || {
@@ -18,35 +13,57 @@ EOF
   exit 1
 }
 
-# verify that po/LINGUAS is present
-(test -f po/LINGUAS) >/dev/null 2>&1 || {
-  cat >&2 <<EOF
-autogen.sh: The file po/LINGUAS could not be found. Please check your snapshot
-            or try to checkout again.
-EOF
+# portability for awk
+awk_tests="gawk mawk nawk awk"
+if test -z "$AWK"; then
+  for a in $awk_tests; do
+    if type $a >/dev/null 2>&1; then
+      AWK=$a
+      break
+    fi
+  done
+else
+  if ! type $AWK >/dev/null 2>/dev/null; then
+    unset AWK
+  fi
+fi
+if test -z "$AWK"; then
+  echo "autogen.sh: The 'awk' program (one of $awk_tests) is" >&2
+  echo "            required, but cannot be found." >&2
   exit 1
-}
+fi
 
-# substitute revision and linguas
-linguas=`sed -e '/^#/d' po/LINGUAS`
+# substitute revision
 if test -d .git/svn; then
- revision=`git svn find-rev origin/trunk ||
-           git svn find-rev trunk ||
-           git svn find-rev HEAD ||
-           git svn find-rev master`
-else
- revision=`LC_ALL=C svn info $0 | awk '/^Revision: / {printf "%05d\n",
-$2}'`
+    revision=`git svn find-rev trunk 2>/dev/null ||
+              git svn find-rev origin/trunk 2>/dev/null ||
+              git svn find-rev HEAD 2>/dev/null ||
+              git svn find-rev master 2>/dev/null`
+elif test -d .git; then
+    revision=`git rev-parse --short HEAD`
+elif test -d .svn; then
+    revision=`LC_ALL=C svn info $0 | $AWK '/^Revision: / {printf "%05d\n", $2}'`
+fi
+if test "x$revision" = "x"; then
+    revision="UNKNOWN"
 fi
+
+# substitute the linguas
+linguas=`cd "po" 2>/dev/null && ls *.po 2>/dev/null | $AWK 'BEGIN { FS="."; ORS=" " } { print $1 }'`
+if test "x$linguas" = "x"; then
+    echo "autogen.sh: No po files were found, aborting." >&2
+    exit 1
+fi
+
 sed -e "s/@LINGUAS@/${linguas}/g" \
     -e "s/@REVISION@/${revision}/g" \
     < "configure.in.in" > "configure.in"
 
-xdt-autogen $@
+exec xdt-autogen $@
 
 # xdt-autogen clean does not remove all generated files
 (test x"clean" = x"$1") && {
-  rm -f configure.ac
+  rm -f configure.in
   rm -f INSTALL
 } || true
 
diff --git a/po/LINGUAS b/po/LINGUAS
deleted file mode 100644
index e645dc2..0000000
--- a/po/LINGUAS
+++ /dev/null
@@ -1,2 +0,0 @@
-# set of available languages (in alphabetic order)
-am ar ast be bn_IN ca cs da de dz el en_GB eo es es_MX et eu fa fi fr gl gu he hu hy id it ja ka ko ku lt lv mk mr nb nl pa pl pt_BR pt ro ru si sk sq sv tr uk ur ur_PK zh_CN zh_TW



More information about the Xfce4-commits mailing list