+#
+# val: '0' | '1' ;
+#
+# fuzzyopt: '--display-fuzzy=' val ;
+#
+# untranslatedopt: '--display-untranslated=' val ;
+#
+# option: fuzzyopt
+# | untranslatedopt
+# ;
+# options: | options option
+# ;
+#
+# revspec: revision-tag # e.g. 46c00bab7
+# | 'HEAD' relative-rev # e.g. HEAD~3, HEAD-3
+# | '-' number # -1 == previous commit of the following po-file
+# ;
+#
+# revision: '-r' revspec ;
+#
+# filespecold: revision | filespec ;
+#
+# filespec: # path to existing po-file
+#
+# filespecnew: filespec ;
+#
+# files: filespecold filespecnew ;
+#
+# diff: 'diff_po.pl' ' ' options files
+#
+
+BEGIN {
+ use File::Spec;
+ my $p = File::Spec->rel2abs( __FILE__ );
+ $p =~ s/[\/\\]?[^\/\\]+$//;
+ unshift(@INC, "$p");
+}
+
+# Prototypes
+sub get_env_name($ );
+sub buildParentDir($$);
+sub searchRepo($);
+sub diff_po(@);
+sub check_po_file_readable($$);
+sub printDiff($$$$);
+sub printIfDiff($$$);
+sub printExtraMessages($$$);
+sub getrev($$$);
+#########