summaryrefslogtreecommitdiffstats
path: root/scripts/collect-potfiles
diff options
context:
space:
mode:
authorNalin Dahyabhai <nalin@dahyabhai.net>2010-02-02 12:13:23 -0500
committerNalin Dahyabhai <nalin@dahyabhai.net>2010-02-02 12:13:23 -0500
commit8d36f0832d166f0eb4944515e21770eebec11012 (patch)
tree4c3dfea41fe1ca4aa646b577f7680eb300226b83 /scripts/collect-potfiles
parent827ee5c7c38d07d6543e5776050e1c1f06b3e90b (diff)
downloadpomatic-8d36f0832d166f0eb4944515e21770eebec11012.tar.gz
pomatic-8d36f0832d166f0eb4944515e21770eebec11012.tar.xz
pomatic-8d36f0832d166f0eb4944515e21770eebec11012.zip
- finish the autotooling
Diffstat (limited to 'scripts/collect-potfiles')
-rwxr-xr-xscripts/collect-potfiles54
1 files changed, 54 insertions, 0 deletions
diff --git a/scripts/collect-potfiles b/scripts/collect-potfiles
new file mode 100755
index 0000000..e72786f
--- /dev/null
+++ b/scripts/collect-potfiles
@@ -0,0 +1,54 @@
+#!/bin/bash
+#
+# Collect .pot files from a set of source packages and place them in
+# a specified output directory.
+#
+
+outdir=$1
+shift
+
+if [ -z "$outdir" ] ; then
+ echo usage: `basename $0` output_directory sourcerpm '[...]'
+ exit 1
+fi
+
+tmpdir=`mktemp -d ${TMPDIR:-/tmp}/collect-potfilesXXXXXX`
+if [ -z "$tmpdir" ] ; then
+ echo error creating tmpdir
+ exit 1
+fi
+
+exec < /dev/null
+
+cleanup()
+{
+ rm -fr $tmpdir
+}
+trap cleanup PIPE INT KILL TERM
+
+for sourcepackage in $@ ; do
+ rpm \
+ --define "_topdir $tmpdir" \
+ --define "_sourcedir $tmpdir" \
+ --define "_specdir $tmpdir" \
+ --define "_builddir $tmpdir" \
+ --define "_srpmdir $tmpdir" \
+ --define "_rpmdir $tmpdir" \
+ -U $sourcepackage > /dev/null 2> /dev/null &&
+ rpmbuild \
+ --define "_topdir $tmpdir" \
+ --define "_sourcedir $tmpdir" \
+ --define "_specdir $tmpdir" \
+ --define "_builddir $tmpdir" \
+ --define "_srpmdir $tmpdir" \
+ --define "_rpmdir $tmpdir" \
+ -bp $tmpdir/*.spec > /dev/null 2> /dev/null
+ for potfile in `find $tmpdir -name "*.pot"`; do
+ basename $potfile
+ cp -f $potfile $outdir/
+ done
+ chmod -R u+rw $tmpdir/*
+ rm -fr $tmpdir/*
+done
+
+cleanup